DOM
SWT
HTML
Integração
Registro de logs
Chromium features
Reconhecimento de voz
Este tutorial demonstra como ativar o reconhecimento de voz no JxBrowser.
Ativar a API Speech
O reconhecimento de voz é uma funcionalidade proprietária do Chromium que requer uma chave da API do Google para funcionar corretamente. Antes de adquirir essa chave, é necessário ativar primeiro a API Speech privada:
- Esta API é visível apenas para as pessoas inscritas no Grupo Google chromium-dev. Ao aderir, certifique-se de que a opção Link para o perfil da minha conta Google está selecionada.
- Acesse o console do Google Cloud. Certifique-se de que tem sessão iniciada com a conta Google associada ao endereço de e-mail que você utilizou para se inscrever no grupo “chromium-dev”.
- Na barra superior, crie um novo projeto para a sua aplicação ou selecione um já existente.
- Acesse APIs e serviços > Biblioteca no menu hambúrguer.
- Localize e ative a “API de voz”, NÃO a “API de voz para texto na nuvem”. Se não for encontrada nenhuma API, volte à página Library e escolha Private na seção Visibility à esquerda. Todas as APIs privadas estarão visíveis para você.
O aparecimento de APIs privadas após a subscrição do grupo pode demorar algum tempo (até 15 minutos).
Aquisição de credenciais
Agora você está pronto para adquirir as credenciais que devem ser passadas para EngineOptions
:
var options = EngineOptions.newBuilder(HARDWARE_ACCELERATED)
.googleApiKey("key")
.googleDefaultClientId("client-id")
.googleDefaultClientSecret("secret")
.build();
var engine = Engine.newInstance(options);
val engine = Engine(HARDWARE_ACCELERATED) {
google {
apiKey = "key"
defaultClientId = "client-id"
defaultClientSecret = "secret"
}
}
- Acesse APIs e serviços > Credenciais no menu hambúrguer.
- Clique no botão CRIAR CREDENCIAIS e selecione o item OAuth client ID na lista. Na seção Tipo de aplicação, selecione a Aplicação desktop e digite um nome na caixa de texto Nome, e clique em Criar.
- Na janela de pop-up, você verá um ID de cliente e uma string secreta de cliente. Essas devem ser passadas para os
métodos
googleDefaultClientId
egoogleDefaultClientSecret
, respectivamente. - Clique novamente no botão CRIAR CREDENCIAIS na mesma página. Selecione o item chave API. Deve aparecer um
pop-over com a string de chaves da API. Ela deve ser passada para o método
googleApiKey
.
Tenha em mente que a ativação da API e a aquisição de credenciais não é uma ação imediata. No Google Cloud, demora algum tempo a aplicar essas definições para que você possa utilizá-las. A plataforma até mesmo avisa isso quando você cria as credenciais.
Concessão de permissões
Para permitir que o Chromium reconheça a sua voz, é necessário conceder acesso para gravar áudio:
engine.permissions().set(RequestPermissionCallback.class,
(params, tell) -> {
if (params.permissionType() == AUDIO_CAPTURE) {
tell.grant();
} else {
tell.deny();
}
});
engine.permissions().set(RequestPermissionCallback::class.java) { params, tell ->
if (params.permissionType() === AUDIO_CAPTURE) {
tell.grant()
} else {
tell.deny()
}
}
Consulte o código completo snippet.