Speech Engine

  • Allgemein

Es gibt 3 Antworten in diesem Thema. Der letzte Beitrag () ist von Slayers.

    Speech Engine

    Hallo Leute ...
    Ich habe mal ne Frage ... Ich habe hier ausm Forum einen Code für einen Programm gefunden, welches Sprachbefehle Verarbeitet...

    Jetzt habe ich das Problem, ich habe mir Blue Speak runtergeladen und da wird die Spracherkennung von Windows nicht angezeigt.

    Bei dem Code aus dem Forum den ich gefunden habe schon.

    Ich möchte aber nicht das die Spracherkennung von Windows sich öffnet, also wie bei Blue Speak(Ausm ShowRoom)

    Wie mache ich das jetzt ?

    VB.NET-Quellcode

    1. Imports System.Speech.Synthesis
    2. Imports System.Speech.Recognition
    3. Imports System.Speech
    4. Public Class Form1
    5. 'Stummschaltung deklarieren
    6. Private Const APPCOMMAND_VOLUME_MUTE As Integer = &H80000
    7. Private Const WM_APPCOMMAND As Integer = &H319
    8. Declare Function SendMessageW Lib "user32.dll" (ByVal hWnd As IntPtr, ByVal Msg As Integer, ByVal wParam As IntPtr, ByVal lParam As IntPtr) As IntPtr
    9. '--
    10. Dim WithEvents reconizer As New SpeechRecognizer
    11. Dim grammar As Grammar
    12. Dim speaker As New SpeechSynthesizer
    13. Dim language As New Globalization.CultureInfo("de-DE")
    14. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    15. Threading.Thread.CurrentThread.CurrentCulture = language
    16. Threading.Thread.CurrentThread.CurrentUICulture = language
    17. Dim choi As Choices
    18. choi = New Choices("Google", "Test", "Kino Starten")
    19. Dim grammarb As New GrammarBuilder(choi)
    20. grammar = New Grammar(grammarb)
    21. Dim start As New Threading.Thread(AddressOf lausch)
    22. start.Start()
    23. CheckForIllegalCrossThreadCalls = False
    24. speaker.SelectVoice("ScanSoft Steffi_Dri40_16kHz")
    25. End Sub
    26. Sub lausch()
    27. reconizer.UnloadAllGrammars()
    28. reconizer.LoadGrammar(grammar)
    29. End Sub
    30. Private Sub reconizer_SpeechRecognized(ByVal sender As Object, ByVal e As System.Speech.Recognition.SpeechRecognizedEventArgs) Handles reconizer.SpeechRecognized
    31. If e.Result.Text = "Google" Then
    32. speaker.Speak("Browser Startet jetzt")
    33. System.Diagnostics.Process.Start("http://google.de")
    34. End If
    35. If e.Result.Text = "Test" Then
    36. speaker.Speak("Das ist ein Test")
    37. End If
    38. If e.Result.Text = "Kino Starten" Then
    39. speaker.Speak("Kino wird gestartet")
    40. System.Diagnostics.Process.Start("C:\Program Files (x86)\XBMC\XBMC.exe")
    41. End If
    42. End Sub
    43. End Class
    Gut ... habe ich gemacht.


    Siehe hier :

    VB.NET-Quellcode

    1. Imports System.Speech.Synthesis
    2. Imports System.Speech.Recognition
    3. Imports System.Speech
    4. Public Class Form1
    5. Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
    6. Dim Rec As New SpeechRecognitionEngine
    7. AddHandler Rec.SpeechRecognized, AddressOf Gefunden
    8. Dim Ch As New Choices
    9. Ch.Add("Test", "Eins", "Fünf")
    10. Dim Gr As New GrammarBuilder(Ch)
    11. Dim Gram As New Grammar(Gr)
    12. Rec.UnloadAllGrammars()
    13. Rec.LoadGrammar(Gram)
    14. End Sub
    15. Private Sub btnStart_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnStart.Click
    16. End Sub
    17. Private Sub btnStop_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles btnStop.Click
    18. End Sub
    19. Private Sub Gefunden(ByVal sender As Object, ByVal e As Speech.Recognition.SpeechRecognizedEventArgs)
    20. If e.Result.Text = "Test" Then
    21. MsgBox("Erfolgreich")
    22. End If
    23. End Sub
    24. End Class


    Nur leider funktioniert das irgendwie nicht so wie ich das möchte nämlich garnicht -.-'

    Was mache ich denn falsch ?