O documento discute o reconhecimento de voz no Windows Phone, incluindo como usar comandos de voz, reconhecimento de voz e text-to-speech em aplicativos. Ele também fornece links para recursos adicionais e demonstra essas funcionalidades.
1. Reconhecimento de voz no Windows
Phone
• Cleiton Felipe de Moraes – Microsoft Student Partner
• Twitter: @Cleiton_felipe
• Facebook: facebook.com/cleitonfelipemoraes
• E-mail: Cleiton.Moraes@studentpartner.com
2. Quem vos fala?
Cleiton Felipe de Moraes
• Desenvolvedor desde 2009,
• Entusiasta Microsoft desde 2010,
• Graduando em Análise e
Desenvolvimento de Sistemas,
• Pai de dois gatos (Nina e Flash),
• Microsoft Student Partner desde 2012,
• Software Developer na GFT Brasil.
3. Para que serve o reconhecimento de voz no Windows Phone?
• Abrir aplicações instaladas no seu Windows Phone;
• Realizar chamadas, rediscagem;
• Enviar SMS;
• Pesquisa na Web;
• Passar comando de voz para a sua aplicação.
4. Agenda
• Apresentar o que o Windows Phone tem para nos ajudar com reconhecimento de voz;
• Comando de voz;
• Reconhecimento de voz;
• Text-to-speech (TTS)
• Pontos importantes
• Demo
• Utilizando comando de voz;
• Reconhecimento de voz;
• Utilizando Text-to-speech (TTS)
• Dúvidas
7. • Para ter a funcionalidade de comando de voz na sua aplicação é preciso:
1. Crie um arquivo VCD (Voice command definition).
2. Adicionar código para inicializar o arquivo VCD
com recurso de voz.
1. Adicionar código para manipular a navegação e
para executar comandos.
Comando de voz
11. • Para ter a funcionalidade de reconhecimento de voz na sua aplicação é preciso:
–API´s de reconhecimento;
–Gramáticas prontas;
–Pesquisa na web.
Reconhecimento de voz
Comandos de vozQuando um usuário instala o aplicativo, eles podem usar automaticamente os comandos de voz para acessá-lo por falar "abrir" ou "start", seguido de seu nome do aplicativo. Como um desenvolvedor, você também pode aproveitar comandos de voz para permitir que os usuários ligação profunda em sua aplicação, a partir de fora do seu aplicativo, falando uma frase como "Start Contoso Search" ou "Contoso Show Me Meus Favoritos". Você pode configurar o aplicativo para que a frase links para uma página específica em seu aplicativo, executa uma tarefa, ou inicia uma ação.Descoberta também é um aspecto-chave de comandos de voz. Quando você estender e personalizar os comandos de voz, os usuários finais podem descobrir as frases de seu aplicativo está escutando através da ajuda do sistema em o que eu posso dizer exibindo na tela.
Crie um arquivo VCD (Voice command definition). Este é um documento XML que define todos os comandos de voz que os usuários podem dizer para iniciar ações ao lançar seu aplicativo.Adicionar código para inicializar o arquivo VCD com recurso de voz do telefone.Adicionar código para manipular a navegação e para executar comandos.
Telas GUI para comandos de vozA voz comandos apresentam inclui telas GUI que ajudam os usuários a descobrir quais aplicativos sobre os comandos de voz de suporte por telefone, e que os comandos de voz pode ser usado para lançar um app.Um usuário seleciona um aplicativo da lista App do telefone.Um usuário fala um comando de voz, a partir do qual o aplicativo, mas não a ação solicitada, é reconhecido. A tela de desambiguação que aparece contém um botão de ponto de interrogação que liga ao Você sabia? tela.A tela O que posso dizerO que eu posso dizer tela lista os nomes de aplicativos que suportam comandos de voz e um exemplo de um comando que pode ser usado para lançar cada aplicativo e iniciar uma ação. O comando de exemplo é o conteúdo de um elemento de exemplo que é o filho do elemento Conjunto de comandos no arquivo de VCD. Esta tela aparece quando o usuário pressiona o Iniciar botão e fala "o que eu posso dizer?", ou pressiona o botão de ponto de interrogação sobre o mundial Listeningtela.
VoiceCommandsElemento raiz necessários do manifesto comando de voz. O valor de sua xmlnsatributo deve ser http://schemas.microsoft.com/voicecommands/1.0 (sem caracteres maiúsculos). Contém um ou mais elementos Conjunto de comandos, cada um dos quais representa os comandos de voz para uma única língua.CommandSetElemento filho obrigatório do elemento VoiceCommands. Um recipiente para todos os comandos de voz que um aplicativo irá aceitar na língua única especificada pelo requerido xml: lang atributo. O valor do xml: lang atributo deve ser único no documento VoiceCommand. O nome do atributo é opcional e pode ser qualquer seqüência arbitrária; no entanto, o nome atributo é necessário, a fim de fazer referência e atualizar PhraseList um elemento Conjunto de comandos de programação. O elemento Conjunto de comandos inclui os seguintes elementos: criança CommandPrefix (0 ou 1), (Exemplo 1), apenas de comando (1 a 100), e os elementos PhraseList (zero ou mais). Estes elementos filhos devem ocorrer na ordem listada.CommandPrefixOpcional elemento filho do elemento VoiceCommands. Se estiver presente, deve ser o primeiro elemento filho do elemento Conjunto de comandos. Especifica um nome amigável para um aplicativo que o usuário pode falar ao dar um comando de voz. Isso é útil para aplicativos com nomes que são longos ou difíceis de pronunciar.CommandElemento filho obrigatório do elemento Conjunto de comandos. Toma o nomede atributo. Define uma ação aplicativo que os usuários podem iniciar falando e que os usuários podem dizer para iniciar a ação. Cada elemento de comando está associado a uma página específica em seu aplicativo. Contém os seguintes elementos necessários criança: exemplo (1 apenas), ListenFor (até 10), feedback (1 apenas), e navegar (1 apenas). Estes elementos filhos devem ocorrer na ordem listada.ExempleElemento filho obrigatório do elemento de comando, filho opcional do elemento Conjunto de comandos. Dá um exemplo ideal do que um usuário pode dizer para um comando.Como um filho do elemento Conjunto de comandos, o texto do exemplo é exibido nas seguintes telas:Abaixo do nome do aplicativo na aplicativos página do O que posso dizer tela. A página lista todos os aplicativos que têm comandos de voz avançados.Na abertura da página do que eu posso dizer de tela, haverá dois outros exemplos de nome app + exemplo de texto, ligando para oaplicativos página.Em algumas telas de erro.Em Ouvir telas.Por Você sabia? tela de ajuda que lista os comandos para o aplicativo.ListenForElemento filho obrigatório do elemento de comando. Contém uma palavra ou frase que seu aplicativo irá reconhecer para este comando. Isso pode incluir ou ser uma referência a um elemento PhraseList Etiqueta atributo, que aparece no elemento ListenFor entre chaves, por exemplo: {} myList. Um elemento de comando pode conter até dez elementos ListenFor, e o conteúdo de qualquer um pode ser reconhecido para activar o comando.Use parênteses em torno de uma palavra ou palavras que são opcionais. Ou seja, a palavra ou as palavras podem ser ditas, mas não são necessários para uma partida. Você pode configurar a funcionalidade de curinga, incluindo um asterisco dentro de um par de chaves, como <ListenFor> Encontre {*} </ ListenFor> . Neste exemplo, o comando de voz irá coincidir com o tempo que o usuário fala "Procurar", seguido por qualquer outra palavra ou frase. Se o comando de voz para um elemento ListenFor habilitado curinga é correspondido, o reco -chave irá conter a string "...".FeedbackElemento filho obrigatório do elemento de comando. Especifica o texto que será apresentado e lido de volta para o usuário quando o comando é reconhecido. Se o elemento de feedback inclui uma referência a um elemento PhraseList, então cada elemento ListenFor no elemento de comando contendo também deve fazer referência a mesma PhraseList.NavegateElemento filho obrigatório do elemento de comando.Você pode especificar um opcional Alvo atributo que especifica a página que deve ser carregado quando o aplicativo inicia. Se você especificar o alvo atributo, você também pode adicionar seus próprios parâmetros de consulta. Se você não especificar o alvo atributo, o aplicativo lança em sua página principal.O seguinte código XML mostra um exemplo de como definir o elemento Navegar com um alvo parâmetro atributo e consulta personalizada:XAML< Navegate target= " Page2.xaml? myParam = someValue " />
O reconhecimento de falaDe dentro de seu aplicativo, os usuários podem falar para dar entrada ou para realizar tarefas usando o reconhecimento de voz . O reconhecimento de fala conceptualmente parece muito semelhante à característica de comando de voz, mas é desenvolvido de um modo diferente, utilizando uma API diferente. O fundamental é que o reconhecimento de voz ocorre quando você está no aplicativo, e os comandos de voz ocorrer a partir de fora do app.Windows Phone 8 inclui suporte para gramáticas pré-definidos para ditado de texto livre e pesquisa na web, e também suporta gramáticas personalizados que são criados usando o padrão da indústria Speech Recognition Grammar Specification (SRGS) Versão 1.0 . Você pode criar sua própria interface gráfica, ou usar um reconhecimento embutido GUI para o discurso que suporta disambiguation e fornece feedback visual para os usuários.
Text-to-speech (TTS)Além disso, enquanto no interior do seu aplicativo, você pode usar text-to-speech (TTS) , também conhecida como síntese de fala, para falar de texto para o usuário por meio de alto-falante do telefone. Seu aplicativo pode falar de uma simples sequência de texto, ou uma string formatada definido pelo padrão da indústria Speech Synthesis Markup Language (SSML) Versão 1.0 .