Audio-VIs
- Aktualisiert2025-08-27
- 6 Minute(n) Lesezeit
Um Audiodateien und -funktionen in Ihre VIs einzubeziehen, gibt es in LabVIEW Audio-VIs. Die VIs eignen sich für folgende Aufgaben:
- Erstellen von VIs, die Audiodateien wiedergeben, wie beispielsweise eine aufgezeichnete Warnung, wenn Anwender bestimmte Aktionen ausführen.
- Erstellen eines VIs, das zu Beginn, am Ende oder einer sonstigen Stelle des VIs eine Audiodatei wiedergibt.
- Konfigurieren eines Geräts zur Erfassung von Audiodaten. Mit Hilfe der VIs zur Audioaufnahme können Audiodaten aufgenommen werden. Sie können auch beliebige Audiodaten lesen, die über ein Gerät weitergeleitet werden.
- Konfigurieren Sie ein Audioausgabegerät, um Audiodaten von anderen Audio-VIs zum verarbeiten. Neben Funktionen wie Abspielen, Anhalten oder Löschen von Audiodateien ist auch eine Lautstärkeregelung möglich.
(Windows) Für die Audio-VIs muss DirectX ab 8.0 installiert sein. (Linux) Für die Audio-VIs muss der Treiber für Open Sound System (OSS) installiert sein.
Tasks zur Audioausgabe
Mit den Audioausgabe-VIs können Sie die Audiodaten eines Ausgabegeräts (z. B. Lautsprecher und Kopfhörer) erzeugen und steuern. Verwenden Sie für einfache Operationen das Express-VI "Audioausgabe", um Audiodaten mit Hilfe des Ausgabegeräts wiederzugeben.
Für komplexe Operationen eignet sich das VI Audioausgabe konfigurieren. Erstellen und Konfigurieren Sie mit diesem VI eine neue Task-ID für die Audioausgabe. Nach Erstellung der Task-ID können Sie mit dem VI Audioausgabe starten steuern, wann die Wiedergabe der Audiodaten beginnen soll. Mit dem VI Audioausgabe beenden können Sie die Wiedergabe stoppen, mit dem VI "Audioausgabe - Lautstärke einstellen" die Lautstärke regeln, mit dem VI Audioausgabe schreiben Audiodaten an ein Ausgabegerät senden und mit dem VI Info zur Audioausgabe Informationen über die Task-ID von dem Ausgabegerät abfragen. Das VI Audioaufnahme löschen gibt alle von der Task-ID verwendeten Ressourcen frei.
Tasks zur Audioaufnahme
Mit den Audioaufnahme-VIs können Sie Audiodaten von einen Aufnahmegerät (z. B. Mikrofon) erfassen. Verwenden Sie das Express-VI "Audioaufnahme" für einfache Aufnahmeoperationen von einem Aufnahmegerät. Für komplexe Operationen eignet sich das VI Audioaufnahme konfigurieren. Erstellen und Konfigurieren Sie mit diesem VI eine neue Task-ID für die Audioaufnahme.
Nach Erstellung der Task-ID kann der Status der Audiodaten mit Hilfe der VIs Audioaufnahme beginnen und Audioaufnahme anhalten festgelegt werden. Mit dem VI "Audioaufnahme lesen" werden Daten von einem Aufnahmegerät erfasst. Das VI Audioaufnahme löschen gibt alle von der Task-ID verwendeten Ressourcen frei.
Audiodaten
LabVIEW speichert Audiodaten als Array aus Signalverläufen. Jeder Signalverlauf im Array stellt einen Kanal dar. Ein Array mit zwei Signalverlaufselementen beispielsweise enthält Stereo- bzw. 2-Kanal-Daten. Da die Kanäle simultan abgespielt werden, müssen t0 und dt sowie die Anzahl der Elemente im Y-Array jedes Signalverlaufs übereinstimmen.
Das Y-Array des Signalverlaufs enthält pulscodemodulierte Daten (PCM-Daten). Bei PCM-Daten ist jedes Element im Y-Array proportional zur Amplitude des Signals. Wenn der Datentyp des Y-Arrays ein vorzeichenbehafteter 16- oder 32-Bit-Integer ist, liegen die Werte zwischen dem Minimum und dem Maximum dieses Datentyps. Der Mittelpunkt liegt bei null. Ein Puffer aus Elementen mit dem Wert null stellt Stille dar. Wenn der Datentyp des Y-Arrays ein vorzeichenloser 8-Bit Integer ist, liegen die Werte im Bereich von 0 bis 255 und der Mittelpunkt ist 127. Hier definiert ein Puffer aus Elementen mit dem Wert 127 Stille. Dadurch kann bei vorzeichenlosen 8-Bit-Integern anfangs ein Klickgeräusch zu hören sein. Bei Fließkommazahlen reichen die Werte von -1,0 bis 1,0 (einschließlich). Die Daten werden an den Bereich angepasst. Es gibt keine Skalierung.
Task-IDs
Die VIs Audioausgabe konfigurieren, Audioaufnahme konfigurieren und Audiodatei abspielen geben Task-IDs aus. Dabei handelt es sich um von den VIs erzeugte Nummern für den Verweis auf den vorliegenden Audio-Task. Im Blockdiagramm aufeinander folgende Audio-VIs verwenden die Task-ID für die Bearbeitung von Daten in einer bestimmten Audiooperation. Sie müssen die Task-ID aus dem Speicher löschen, bevor das erstellte VI erneut ausgeführt werden kann. Mit dem VI Audioausgabe löschen können Sie die Task-ID für eine Audioausgabeoperation löschen. Mit dem VI Audioaufnahme löschen können Sie die Task-ID für eine Audioaufnahmeoperation löschen.
Audiogeräte
Audiogeräte sind Soundkarten oder andere im Rechner integrierte Hardware-Komponenten. Der Wert des Eingangs Geräte-ID der VIs Audioausgabe konfigurieren, Audioaufnahme konfigurieren und Audiodaten abspielen gibt das zu verwendende Audiogerät an. Geben Sie 0 in Geräte-ID ein, um das Standardgerät Ihres Computers zu verwenden. Geben Sie 1, 2, 3 usw. für andere Geräte ein.
Puffer für Audiodaten
Audioaufnahme und Audioausgabeoperationen verwenden einen Puffer zwischen LabVIEW und dem Audiogerät. Dadurch ist eine gleichmäßige Übertragung der Audiodaten möglich. Mit den Audio-VIs zum Lesen, Schreiben und Konfigurieren von Audiodaten können Sie den Puffer für die Daten bearbeiten. Mit den von diesen VIs erstellten Tasks werden Audiodaten zwischen Puffer und Audiogerät übertragen. Der Task wird so lange ausgeführt, bis Sie ihn anhalten oder ein Fehler auftritt.
Mit Eingabeoperationen werden Audiodaten von dem Aufnahmegerät in den Puffer und anschließend in das Blockdiagramm übertragen. Mit dem VI "Audioaufnahme lesen" werden die Daten vom Aufnahmegerät erfasst. Wenn sich im Puffer genügend Daten für das Lesen aller erforderlichen Samples befinden, werden diese von LabVIEW unmittelbar gelesen. Wenn nicht alle erforderlichen Samples zur Verfügung stehen, unterbricht das VI seine Ausführung, bis alle Daten vorliegen.
Mit Ausgabeoperationen werden Audiodaten von dem Blockdiagramm in den Puffer und anschließend in das Ausgabegerät übertragen. Mit dem VI Audioausgabe schreiben werden Daten in den Puffer einer Audioausgabeoperation übertragen. Ist der Puffer groß genug, so kopiert LabVIEW die Daten in den Puffer. Wenn der Puffer zu klein und für die kontinuierliche Ausführung konfiguriert ist, hält das VI die Ausführung an, bis alle Daten in den Puffer kopiert wurden.
Mit der Konfiguration der Audiodaten wird das Format der gepufferten Daten festgelegt. Das Format der LabVIEW-Daten wird automatisch entsprechend dem Format der Pufferdaten konvertiert. Wenn Sie beispielsweise einen Ausgabe-Task für Stereo-Daten konfigurieren, aber nur Daten an einem Kanal vorliegen, sendet LabVIEW die Daten an beide Stereo-Kanäle.
Abspielen einer Audiodatei
Mit dem VI Audiodaten abspielen und einer While-Schleife kann eine Audiodatei kontinuierlich wiedergegeben werden, siehe nachfolgendes Blockdiagramm. Das VI "Audiodatei abspielen" liest die im Eingang Audiodateipfad angegebene Datei und gibt sie mit Hilfe des durch die Geräte-ID definierten Audiogeräts wieder. Das VI gibt eine Task-ID aus, welche von der While-Schleife kontinuierlich weitergegeben wird, bis alle Audiodaten abgespielt wurden, ein Fehler auftritt oder der Benutzer die Stopp-Schaltfläche auf dem Frontpanel betätigt. Das VI Audioausgabe löschen entfernt die Task-ID aus dem Speicher des Computers.
Konfigurieren Sie mit den Audio-VIs die Wiedergabe von Audiodateien, z. B. durch Angabe der Bitrate der Datei und der Kanäle, über welche die Daten ausgegeben werden (Mono, Stereo usw.) Die Datei kann auch während der Ausführung angehalten, beendet und wiedergegeben werden.
Ein Beispiel für das Erzeugen von Audiodaten finden Sie im VI "Sound File to Sound Output.vi" im Verzeichnis labview\examples\Graphics and Sound\Sound.
Erzeugen und Wiedergeben von Audiodaten
Mit den VIs Signalverlaufserzeugung und dem Express-VI "Signal simulieren" können Audiodaten erzeugt werden, siehe nachfolgendes Blockdiagramm. Das Express-VI "Signal simulieren" erzeugt eine Sinusschwingung und das Express-VI "Audioausgabe" gibt die erzeugten Audiodaten über das im Eingang Gerät angegebene Gerät wieder.
Die Audioausgabe-VIs dienen der Steuerung der erzeugten Audiodaten. Mit dem VI Audioausgabe konfigurieren können Sie beispielsweise Bit-Rate, Sample-Rate oder Anzahl der Kanäle und mit dem VI "Audioausgabe - Lautstärke einstellen" die Lautstärke festlegen (vgl. das folgende Blockdiagramm).
Ein Beispiel für die Erzeugung von Audiodaten finden Sie im VI "Generate Sound.vi" im Verzeichnis labview\examples\Graphics and Sound\Sound.
Schreiben von Daten in eine Audiodatei
Schreiben Sie mit den VIs Audiodatei schreiben (einfach) und "Audiodatei schreiben" die erfassten oder erzeugten Daten in eine Audiodatei. Das folgende VI speichert mit Hilfe des VIs "Audiodatei schreiben (einfach)" einen Stereo-Ton, der aus einer Sinus- und einer Dreieckschwingung von 50 000 Samples besteht, in der am Eingang Pfad angegebenen Datei.
Das VI "Audiodatei schreiben" bietet detaillierte Konfigurationsmöglichkeiten für das Erstellen einer Audiodatei. Das VI "Audiodatei schreiben" erfordert eine geöffnete Referenz auf eine bestehende Audiodatei oder die Erstellung einer neuen Audiodatei mit Hilfe des VIs "Audiodatei öffnen" und anschließendem Schließen der Referenz auf die Audiodatei mit Hilfe des VIs Audiodatei schließen. Wenn die Audiodatei nicht geschlossen wird, bleibt sie im Arbeitsspeicher und kann von anderen Anwendungen oder Benutzern nicht geöffnet werden.
Ein Beispiel für die Erfassung von Audiodaten und Speichern der Daten in einer Audiodatei finden Sie im VI "Sound Input to File.vi" im Verzeichnis labview\examples\Graphics and Sound\Sound.