Aktuelle Zeit: 21.11.2019 02:24

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]




Ein neues Thema erstellen Auf das Thema antworten  [ 36 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3, 4
Autor Nachricht
 Betreff des Beitrags: Re: PB.Ex Speech (Windows)
BeitragVerfasst: 14.02.2019 11:38 
Offline
Benutzeravatar

Registriert: 14.09.2004 21:51
Stimmt, hatte vergessen, dass KillSpeechRecognition nicht ausgeführt wird, wenn ich die Ausführung manuell unterbreche. Was ich mir noch wünschen würde, ist eine Funktion, die alle vorhandenen Wörter aus dem Wörterbuch der Spracherkennung ausliest. Dankeschön für diesen nützlichen Code!

_________________
Repeat
PureBasic
ForEver


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex Speech (Windows)
BeitragVerfasst: 14.02.2019 12:51 
Offline
Admin
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Deutschland::Berlin()
Wenn du kein eigenes Wörterbuch erstellen möchtest, kannst du den Wert 0 übergeben:
Zitat:
Code:
Result = SpeechRecognition(WordArray, WordArraySize, @ErrorOutput)

WordArray: Ein String-Array mit Wörtern, die erkannt werden sollen. Wenn 0 übergeben wird, dann werden beliebige Wörter erkannt.


Dann sollten beliebige Wörter vom Sprachprogramm erkannt werden.

_________________
BildBildBildBild BildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex Speech (Windows) - TextToAudioFile - Datei schließ
BeitragVerfasst: 19.08.2019 20:00 
Offline
Benutzeravatar

Registriert: 24.02.2006 16:09
Wohnort: DE
Hallo,

erstmal vielen Dank an RSBAsic für die hervorragenden Arbeiten, die vielen Bibliotheken, die er hier zur Verfügung stellt. Hochachtung. :allright:

Ich bastel mir eine Sprachausgabe und habe dabei festgestellt, dass nach Ausführen der Prozedur "TextToAudioFile" die wav-Datei nicht geschlossen wird.
Das Programm muss ich erst beenden.

Ist das ein bug oder ein feature? Oder kann ich mit meinen Anfängerkenntnissen einen Workaround erstellen?

Hier ist mein Gerüst zum Ausprobieren:

Code:
Global Window_0

Global Text, Button_0, Button_1, Button_2

Declare speichern(EventType)
Declare Stopp(EventType)
Declare vorlesen(EventType)

Procedure OpenWindow_0(x = 0, y = 0, width = 430, height = 250)
  Window_0 = OpenWindow(#PB_Any, x, y, width, height, "Sprachausgabe", #PB_Window_SystemMenu | #PB_Window_ScreenCentered)
  Text = EditorGadget(#PB_Any, 20, 20, 270, 90)
  Button_0 = ButtonGadget(#PB_Any, 20, 120, 100, 25, "vorlesen")
  Button_1 = ButtonGadget(#PB_Any, 190, 120, 100, 25, "Stopp")
  Button_2 = ButtonGadget(#PB_Any, 20, 160, 100, 25, "speichern")
EndProcedure

Procedure Window_0_Events(event)
  Select event
    Case #PB_Event_CloseWindow
      ProcedureReturn #False

    Case #PB_Event_Menu
      Select EventMenu()
      EndSelect

    Case #PB_Event_Gadget
      Select EventGadget()
        Case Button_0
          vorlesen(EventType())         
        Case Button_1
          Stopp(EventType())         
        Case Button_2
          speichern(EventType())         
      EndSelect
  EndSelect
  ProcedureReturn #True
EndProcedure


Global text$

text$="Hallo. -  - Hier ist Hedda. Dieser Text kann auch gespeichert werden."

; XIncludeFile "Sprachausgabeformular.pbf"

OpenWindow_0()
SetGadgetText(text,text$)

Global PBEx_Speech


PBEx_Speech = OpenLibrary(#PB_Any, "PB.Ex_Speech_x64.dll")



  Prototype TextToSpeaker(Text.p-Unicode, Voice.p-Unicode, Speed, Volume, Asynchronous, ErrorOutput)
  Global TextToSpeaker.TextToSpeaker = GetFunction(PBEx_Speech, "TextToSpeaker")
 
  Prototype TextToAudioFile(Text.p-Unicode, Voice.p-Unicode, Speed, Volume, SaveFilePath.p-Unicode, ErrorOutput)
  Global TextToAudioFile.TextToAudioFile = GetFunction(PBEx_Speech, "TextToAudioFile")
 
  Prototype SpeechRecognition(WordArray, WordArraySize, ErrorOutput)
  Global SpeechRecognition.SpeechRecognition = GetFunction(PBEx_Speech, "SpeechRecognition")
 
  Prototype WaitSpeechRecognition(RecognizedWord)
  Global WaitSpeechRecognition.WaitSpeechRecognition = GetFunction(PBEx_Speech, "WaitSpeechRecognition")
 
  Prototype KillSpeechRecognition()
  Global KillSpeechRecognition.KillSpeechRecognition = GetFunction(PBEx_Speech, "KillSpeechRecognition")
 
 
Define ErrorOutput$ = Space(1024)

Procedure vorlesen(EventType)
  text$= GetGadgetText(text)
  If text$=""
    text$="Kein Text zum vorlesen."
  EndIf
 
  TextToSpeaker(text$,"",0,100,1,@ErrorOutput$)
  EndProcedure
 
  Procedure speichern(EventType)
  text$= GetGadgetText(text)
  If text$=""
    End
  EndIf
 
  TextToAudioFile(text$,"",0,100,"hedda.wav",@ErrorOutput$)
 
  EndProcedure
 
Procedure stopp(eventtype)
  End
EndProcedure


Repeat
    Event = WaitWindowEvent()

    Select EventWindow()
      Case Window_0
          Window_0_Events(event)
      EndSelect
     
   
   
    If Event = #PB_Event_CloseWindow 
      Quit = 1
    EndIf

  Until Quit = 1
 
CloseLibrary(PBEx_Speech) 
 
End
 


Gruss und Danke schon mal

_________________
Paul sagt: "Max lügt."
Max sagt: "Otto lügt."
Otto sagt: "Max und Paul lügen."

Wer lügt hier wirklich und wer sagt die Wahrheit?

_________________________________________

286er Big Tower; 16MHz; 1MB Ram; 40MB Festplatte, 5 1/4" und 3 1/2" Diskettenlaufwerk; VGA Farbmonitor 14"; Windows 3.1; PureBasic 0.5


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex Speech (Windows)
BeitragVerfasst: 19.08.2019 21:26 
Offline
Admin
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Deutschland::Berlin()
stab hat geschrieben:
Ich bastel mir eine Sprachausgabe und habe dabei festgestellt, dass nach Ausführen der Prozedur "TextToAudioFile" die wav-Datei nicht geschlossen wird.
Das Programm muss ich erst beenden.

Ist das ein bug oder ein feature? Oder kann ich mit meinen Anfängerkenntnissen einen Workaround erstellen?

Es fehlt wohl eine von mir bereitgestellte Funktion zum Schließen. Ich werde am Wochenende mal reinschauen und eine Close-Funktion bereitstellen oder dafür sorgen, dass danach das Objekt automatisch freigegeben wird.
Danke für den Hinweis und freut mich, dass es dir gefällt. :)

_________________
BildBildBildBild BildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex Speech (Windows)
BeitragVerfasst: 25.08.2019 14:12 
Offline
Admin
Benutzeravatar

Registriert: 05.10.2006 18:55
Wohnort: Deutschland::Berlin()
PB.Ex Speech 1.0.3.0 wurde veröffentlicht.

Changelog:
  • Bugfix: TextToAudioFile(): Nach dem Erstellen war die Audio-Datei noch vom Programm geöffnet.

@stab
Ist jetzt behoben.

_________________
BildBildBildBild BildBild


Nach oben
 Profil  
Mit Zitat antworten  
 Betreff des Beitrags: Re: PB.Ex Speech (Windows)
BeitragVerfasst: 27.08.2019 19:45 
Offline
Benutzeravatar

Registriert: 24.02.2006 16:09
Wohnort: DE
Hallo RSBasic,

2000 Dank. Die Funktion ist jetzt einwandfrei.
Kann mich nur wiederholen. Hochachtung für die sehr konstruktiven Beiträge hier.
Deswegen liebe ich PB und dieses Forum, auch wenn ich selber nicht so viel dazu beisteuern kann.

Beste Grüße
(stab)

_________________
Paul sagt: "Max lügt."
Max sagt: "Otto lügt."
Otto sagt: "Max und Paul lügen."

Wer lügt hier wirklich und wer sagt die Wahrheit?

_________________________________________

286er Big Tower; 16MHz; 1MB Ram; 40MB Festplatte, 5 1/4" und 3 1/2" Diskettenlaufwerk; VGA Farbmonitor 14"; Windows 3.1; PureBasic 0.5


Nach oben
 Profil  
Mit Zitat antworten  
Beiträge der letzten Zeit anzeigen:  Sortiere nach  
Ein neues Thema erstellen Auf das Thema antworten  [ 36 Beiträge ]  Gehe zu Seite Vorherige  1, 2, 3, 4

Alle Zeiten sind UTC + 1 Stunde [ Sommerzeit ]


Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast


Sie dürfen keine neuen Themen in diesem Forum erstellen.
Sie dürfen keine Antworten zu Themen in diesem Forum erstellen.
Sie dürfen Ihre Beiträge in diesem Forum nicht ändern.
Sie dürfen Ihre Beiträge in diesem Forum nicht löschen.

Suche nach:
Gehe zu:  

 


Powered by phpBB © 2008 phpBB Group | Deutsche Übersetzung durch phpBB.de
subSilver+ theme by Canver Software, sponsor Sanal Modifiye