Directory Contents Search << >>


DaVinci 4: DaVinci Funktion ipOgg2Wav: Klangdatei aus Ogg Vorbis Format in WAVe-Format konvertieren

Die Funktion ipOgg2Wav konvertiert einen IStream * Datenstrom im Ogg Vorbis-Format in einen IStream * Datenstrom im WAVE Format.

BOOL WINAPI ipOgg2Wav (

IStream *oggstream,

IStream *wavstream,

unsigned reserved);

oggstream

IStream *

Dateihandle einer Eingabedatei im OGG Vorbis Datenformat.

wavstream

IStream *

Dateihandle einer Ausgabedatei, welche die dekomprimierten Daten im WAVE-Format erhalten soll.

reserved

unsigned

Reserviert zur zukünftigen definition. Anwendungen müssen 0 angeben.

Rückgabewert

Der Rückgabewert ist TRUE, wenn kein Fehler auftrat, FALSE wenn ein Fehler auftrat.

Anmerkungen

Ogg Vorbis-Dateien enthalten Klänge mit hoher Kompressionsrate, vergleichbar zu .mp3, aber das Format ist nicht mit Patenten belastet. Dadurch ist die Verwendung von Klängen in hoher Tonqualität möglich, ohne dass viel Speicherplatz belegt wird. Software für die Konvertierung von .wav-Dateien in das OGG Vorbis Format ist kostenlos verfügbar.

Diese Funktion ist die Grundlage der Funktion PlayOggSound.

Die WAV-Datei wird mit einem einzigen data-Subchunk erstellt. Sie hat daher einen Header von 36 Bytes Länge für den RIFF-Chunk, den fmt Subchunk und den Header des data Subchunks. Es werden immer 16 Bit je Abtastwert verwendet, 1 oder 2 Kanäle mit variabler Abtastrate.

Die Implementierung dieser Funktion basiert auf der freien tremor-Bibliothek. Sie ist für Dateigrößen bis 2 GByte geeignet, erreicht aber nicht die höchstmögliche Klangqualität. Die Lizenzbedingungen der tremor-Bibliothek finden Sie in der davinci4_license.html.

Die mitgelieferten Beispiel OGG-Dateien wurden von http://www.mirandea-music.com/ exklusiv für Herd Software lizensiert und sind nicht zur Weiterverteilung bestimmt.

Beispiel

IStream *oggstream;

IStream *wavstream;

if (SUCCEEDED(ipCreateStreamOnFile("gut.ogg", STGM_READ|STGM_SHARE_DENY_WRITE, &oggstream))

{

if (SUCCEEDED(ipCreateStreamOnFile("gut.wav", STGM_WRITE|STGM_CREATE, &wavstream))

{

ipOgg2Wav(oggstream, wavstream, 0);

wavstream->Release();

}

oggstream->Release();

}

Siehe auch

Datenquellen und Datensenken (Streams)

Funktion PlayOggSound

http://xiph.org/vorbis/

-


Valid HTML 4.01!