Guten Morgen,
ich habe Probleme mit der Erkennung bzw. dem Ansprechen von Audio-Devices.
Es sollen Wav-Dateien abgespielt werden und Ansagen über text to speech ertönen. Das hat bisher (festgelegt über Device 0) auch funktioniert, jetzt soll die Ausgabe wahlweise auch über Bluetooth-Lautsprecher stattfinden. Dazu kann der Anwender die Ausgabemöglichkeit auswählen.
Das Problem dabei ist aber, das irgendwie die Devicenummern für die Ausgabe der Wavedateien und Ansage über text to speech unterschiedlich sind, je nachdem wie die Devices ausgelesen bzw. erkannt werden.
Ich habe ein kleines Testprogramm erstellt und dazu auch mal einige Bilder angefertigt.
Bild AudioDev-1: Neustart
Bild AudioDev-2: Hörer (Jabra DIAL 550) angeschlossen
Bild AudioDev-3: LabVIEW mit angeschlossenem Hörer (Jabra DIAL 550) neu gestartet
Bild AudioDev-4: anderer PC mit optimaler Erkennung. Aber auch da gibt es die oben gezeigten Zustände.
Item Name wird von Get Audio Devices.vi zugewiesen.
Names wird über Get Num Devices.vi und Sound Device Info.vi (Get Audio Devices -V1.vi) zugewiesen.
Je nach Situation führen die beiden Wege zu unterschiedlichen Anzeigen (Bilder).
Ideal wäre es, wenn wie im Bild AudioDev-4 zu sehen, die Arrays identisch wären.
Wenn die Reihenfolge unterschiedlich ist (Bilder AudioDev-1 oder AudioDev-3), stellt das auch kein Problem dar, da ich ein ausgesuchtes Ausgabegerät im zweiten Array suchen kann und die entsprechenden Devicenummern an die Ausgabe-VIs leiten kann (Nicht im Beispiel enthalten).
Das Problem ist aber, wie im Bild AudioDev-2 zu sehen, die Devices nicht richtig über Get Num Devices.vi und Sound Device Info.vi (Names) erkannt werden, wenn ein Audiogerät angeschlossen bzw. entfernt und LabVIEW schon läuft und nicht neu gestartet wird.
Nach viel Erklärung (hoffentlich verständlich und nachvollziehbar) eine kurze Frage:
Wie kann ich die Audiodevices zuverlässig erkennen und den Ausgabe-VIs die passende Dev-Nummer übergeben?
Schon mal vielen Dank für die Hilfe...