none
Microsoft.Speech.Recognition RRS feed

  • Pergunta

  • Estive trabalhando em um projeto envolvendo comandos de voz e pegando um exemplo da própria Microsoft. Parece simples, tirando o fato de que não consigo setar o Audio Device Padrão.

    recognizer.SetInputToDefaultAudioDevice()

    Sempre me apresenta um erro: Additional information: Cannot find the requested data item, such as a data key or value.

    O problema é que tenho um dispositivo definido como padrão na máquina, tanto de saída como de entrada.

    Imports Microsoft.Speech.Recognition
    Imports System.Runtime.Remoting.Contexts
    
    Public Class TesteVC
    
        ' Handle the SpeechRecognized event.
        Private Shared Sub recognizer_SpeechRecognized(sender As Object, e As SpeechRecognizedEventArgs)
            MsgBox("Texto: " + e.Result.Text)
        End Sub
    
        Private Sub TesteVC_Load(sender As Object, e As EventArgs) Handles Me.Load
            Using recognizer As New SpeechRecognitionEngine(New System.Globalization.CultureInfo("pt-BR"))
                Dim services As New Choices(New String() {"Oi Jarvis", "Olá Jarvis", "Jarvis"})
                Dim cities As New Choices(New String() {"Verde", "Vermelho", "Azul"})
                Dim findServices As New GrammarBuilder("Find")
                findServices.Append(services)
                findServices.Append("near")
                findServices.Append(cities)
                Dim servicesGrammar As New Grammar(findServices)
                recognizer.LoadGrammarAsync(servicesGrammar)
                AddHandler recognizer.SpeechRecognized, New EventHandler(Of SpeechRecognizedEventArgs)(AddressOf recognizer_SpeechRecognized)
                recognizer.SetInputToDefaultAudioDevice()
                recognizer.RecognizeAsync(RecognizeMode.Multiple)
                While True
                    Console.ReadLine()
                End While
            End Using
        End Sub
    End Class

    Agradeceria se pudessem me ajudar, obrigado desde já.


    • Editado Marcos SJ quinta-feira, 30 de julho de 2015 14:45 Ortografia
    quinta-feira, 30 de julho de 2015 14:38

Respostas

  • Olá Diego,

    Ainda não há uma previsão específica para o lançamento deste pack. Assim que for lançado haverá um meio para o fazer.

    Atenciossamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.




    • Marcado como Resposta Marcos SJ quinta-feira, 30 de julho de 2015 18:06
    • Editado Marcos SJ quinta-feira, 30 de julho de 2015 18:12
    quinta-feira, 30 de julho de 2015 18:06

Todas as Respostas

  • Olá Diego,

    tudo bem?

    Peçoq eu por gentileza verifique os seguintes links com iformações a respeito:

    Link 01

    Link 02

    Link 03

    Espero ter ajudado.

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    quinta-feira, 30 de julho de 2015 14:51
  • Boa tarde Marcos, obrigado pelos links, fazer com System.Speech ok, eu até tenho um projeto que funciona com ele, mas o problema é que preciso utilizar pt-BR e então tem que ser com o Microsoft Speech Platform SDK (Micrososft.Speech), já baixei todos os componentes, pack de linguagem, montei o código abaixo seguindo o próprio exemplo da Microsoft mas me apresenta o seguinte erro: The language for the grammar does not match the language of the speech recognizer.

    Imports System.Collections.Generic
    Imports System.ComponentModel
    Imports System.Data
    Imports System.Drawing
    Imports System.Linq
    Imports System.Text
    Imports System.Windows.Forms
    Imports Microsoft.Speech.Recognition
    
    Private Sub TesteVC_Load(sender As Object, e As EventArgs) Handles Me.Load
    Dim sre As New SpeechRecognitionEngine(New System.Globalization.CultureInfo("pt-BR"))
            ' Configure the input to the recognizer.
            'sre.SetInputToWaveFile(Application.StartupPath & "\Colors.wav")
            ' Create a simple grammar that recognizes "red", "green", or "blue".
            Dim colors As New Choices()
            colors.Add(New String() {"Oi", "Olá"})
            Dim gb As New GrammarBuilder()
            gb.Append(colors)
            Dim g As New Grammar(gb)
            sre.LoadGrammar(g)
            AddHandler sre.SpeechRecognized, New EventHandler(Of SpeechRecognizedEventArgs)(AddressOf sre_SpeechRecognized)
            sre.Recognize()
        End Sub
    
    Private Sub sre_SpeechRecognized(sender As Object, e As SpeechRecognizedEventArgs)
            MessageBox.Show("Speech recognized: " + e.Result.Text)
        End Sub

    No caso é o reconhecimento de voz do próprio Windows? Mesmo eu tendo instalado os pack de linguagem? Obrigado desde já pela força.


    quinta-feira, 30 de julho de 2015 16:30
  • Olá Diego,

    Peço que verifique se as informações destas outras threads podem te ajudar a resolver seu problema.

    Link 01

    Link 02

    Atenciosamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.


    • Editado Marcos SJ quinta-feira, 30 de julho de 2015 17:05
    quinta-feira, 30 de julho de 2015 17:04
  • Olá Diego,

    Encontrei uma situação parecida com a sua:

    How can i fix language for the gramar does not match the language of the speech recognizer error in vb

    Espero ter ajudado.


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    quinta-feira, 30 de julho de 2015 17:19
  • Olá Diego,

    Encontrei uma situação parecida com a sua:

    How can i fix language for the gramar does not match the language of the speech recognizer error in vb

    Espero ter ajudado.


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.

    Perfeito Marcos, ele executa a aplicação sem erro, mas acho que agora é a parte do windows speech mesmo, pois ele não reconhece os comandos que são listados, pior que não tem um pack em pt-BR para o reconhecimento de voz do Windows, será que tem alguma maneira de utilizar em pt-BR que eu não conheça?
    quinta-feira, 30 de julho de 2015 17:41
  • Olá Diego,

    Ainda não há uma previsão específica para o lançamento deste pack. Assim que for lançado haverá um meio para o fazer.

    Atenciossamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.




    • Marcado como Resposta Marcos SJ quinta-feira, 30 de julho de 2015 18:06
    • Editado Marcos SJ quinta-feira, 30 de julho de 2015 18:12
    quinta-feira, 30 de julho de 2015 18:06
  • Olá Diego,

    Ainda não há uma previsão específica para o lançamento deste pack. Assim que for lançado haverá um meio para o fazer.

    Atenciossamente


    Marcos Roberto de Souza Junior

    Esse conteúdo e fornecido sem garantias de qualquer tipo, seja expressa ou implícita

    MSDN Community Support

    Por favor, lembre-se de Marcar como Resposta as respostas que resolveram o seu problema. Essa e uma maneira comum de reconhecer aqueles que o ajudaram e fazer com que seja mais fácil para os outros visitantes encontrarem a resolução mais tarde.




    Pois é, mas obrigado pela sua grande ajuda parceiro, um abraço!
    quinta-feira, 30 de julho de 2015 18:35