Freigeben über


Aufzeichnung

Die allgemeine MCI-Spezifikation unterstützt aufzeichnungen mit Digital-Video, MIDI-Sequencer, Videokassettenrekorder (VCR) und Waveform-Audio-Geräten; Allerdings implementieren derzeit nur Waveform-Audio- und VCR-Geräte Aufzeichnungsfunktionen. Sie können aufgezeichnete Informationen in eine vorhandene Datei oder einen Datensatz einfügen oder in eine neue Datei überschreiben. Öffnen Sie zum Aufzeichnen in einer vorhandenen Datei wie gewohnt ein Waveform-Audiogerät und eine Datei. Geben Sie zum Aufzeichnen in einer neuen Datei beim Öffnen des Geräts "new" als Gerätenamen an, wenn Sie die Befehlszeichenfolgenschnittstelle verwenden. Wenn Sie die Befehlsnachrichtenschnittstelle verwenden, geben Sie einen Dateinamen der Länge Null an.

Wenn MCI eine neue Datei für die Aufzeichnung erstellt, wird das Datenformat auf ein vom Gerätetreiber angegebenes Standardformat festgelegt. Um ein anderes Format als das Standardformat zu verwenden, können Sie den Befehl set (MCI_SET) verwenden.

Um mit der Aufzeichnung zu beginnen, verwenden Sie den Datensatzbefehl (oder MCI_RECORD und die MCI_RECORD_PARMS-Struktur ).

Wenn Sie im Einfügemodus in eine vorhandene Datei aufzeichnen, können Sie die Flags "from" (MCI_FROM) und "to" (MCI_TO) des Datensatzbefehls verwenden , um Start- und Endpositionen für die Aufzeichnung anzugeben. Wenn Sie beispielsweise in einer Datei aufzeichnen, die 20 Sekunden lang ist, die Aufzeichnung mit 5 Sekunden beginnt und die Aufzeichnung bei 10 Sekunden beendet, ist die resultierende Datei 25 Sekunden lang. Die Datei enthält ein 5-Sekunden-Segment, das 5 Sekunden in die ursprüngliche Aufzeichnung eingefügt wird.

Wenn Sie mit dem Überschreibungsmodus in eine vorhandene Datei aufzeichnen, können Sie die Flags "from" und "to" verwenden, um die Anfangs- und Endorte des überschriebenen Abschnitts anzugeben. Wenn Sie beispielsweise in einer Datei aufzeichnen, die 20 Sekunden lang ist, die Aufzeichnung mit 5 Sekunden beginnt und die Aufzeichnung bei 10 Sekunden beendet, haben Sie immer noch eine Aufzeichnung mit einer Länge von 20 Sekunden, aber der Abschnitt, der bei 5 Sekunden beginnt und bei 10 Sekunden endet, wurde ersetzt.

Wenn Sie keinen Endspeicherort angeben, wird die Aufzeichnung fortgesetzt, bis Sie einen Befehl zum Beenden (MCI_STOP) senden oder bis der freie Speicherplatz für den Treiber ausgeht. Wenn Sie in eine neue Datei aufzeichnen, können Sie das Flag "from" weglassen oder auf 0 festlegen, um die Aufzeichnung am Anfang einer neuen Datei zu starten. Sie können einen Endspeicherort angeben, an dem die Aufzeichnung bei der Aufzeichnung in einer neuen Datei beendet werden soll.

Der Datensatzbefehl ist manchmal innerhalb von nur 1 Sekunde des Startorts genau, z. B. bei VcR-Geräten. Um genauer aufzuzeichnen, sollten Sie den Befehl cue (MCI_CUE) verwenden. Dieser Befehl wird von Digital-Video-, Video- und Waveform-Audiogeräten erkannt. Weitere Informationen zur Aufzeichnung mit VcR-Geräten finden Sie unter VcR Services.

Speichern einer aufgezeichneten Datei

Wenn die Aufzeichnung abgeschlossen ist, verwenden Sie den Speicherbefehl (oder MCI_SAVE und die MCI_SAVE_PARMS-Struktur ), um die Aufzeichnung zu speichern, bevor Sie das Gerät schließen.

Hinweis

Wenn Sie das Gerät schließen, ohne zu speichern, gehen die aufgezeichneten Daten verloren.

 

Überprüfen von Eingabeebenen (nur PCM)

Verwenden Sie den Befehl status (MCI_STATUS), um die Höhe des Eingangssignals vor der Aufzeichnung auf einem PCM-Waveform-Audio-Eingabegerät (Pulse Code Modulation) abzurufen. Geben Sie das Flag "level" (oder das MCI_STATUS_ITEM-Flag an, und legen Sie den dwItem-Member der MCI_STATUS_PARMS-Struktur auf MCI_WAVE_STATUS_LEVEL fest. Der durchschnittliche Eingangssignalpegel wird zurückgegeben. Der Wert des linken Kanals befindet sich im Wort mit hoher Reihenfolge, und der Wert für den rechten oder einkanaligen Kanal befindet sich im Wort mit niedriger Reihenfolge.

Die Eingabeebene wird als Wert ohne Vorzeichen dargestellt. Bei 8-Bit-Beispielen liegt dieser Wert im Bereich von 0 bis 127 (0x7F). Bei 16-Bit-Beispielen liegt er im Bereich von 0 bis 32.767 (0x7FFF).