Entwickler-Ecke
Multimedia / Grafik - Vorbisfiles per DirectSound ausgeben
Schugge - Fr 14.10.05 08:53
Titel: Vorbisfiles per DirectSound ausgeben
Hallo Leute,
ich nutze IDirectSoundBuffer8-Variablen (DirectSound-Paket), um Wave-Dateien aus dem Speicher abzuspielen. Das eignet sich wunderbar für Soundeffekte, da diese nicht allzu viel Speicherplatz bedürfen. Bei der Hintergrundmusik sieht das leider etwas anders aus. Sie sollte komprimiert vorliegen.
Hierfür will ich das Ogg/Vorbis-Format benutzen. Um meinen bisherigen Code nicht verwerfen zu müssen, will ich das Vorbisfile dekodieren und einer meiner IDirectSoundBuffer8-Variable zuweisen.
Mit Hilfe der libvorbis.dll habe ich leider keinen vernüftigen Ansatz finden können. Und Lösungen wie fmod o.ä. will ich wegen o.g. Gründen umgehen.
Hat hiermit schon jemand Erfahrungen sammeln können?
Schönen Gruß,
Schugge
digi_c - Fr 14.10.05 09:18
Hab nicht so viel Erfahrung damit aber ich schätze die
BASS DLL ermöglicht das relativ einfach.
Schugge - Fr 14.10.05 10:31
Hallo digi_c,
danke für die Antwort. 'fmod' und 'bass' sind Pakete, die ich nicht nutzen wollte. Die bieten komplett-Lösungen an. Ich hätte gerne weitestgehend Eingriff in den Code.
Ist es denn sehr umständlich Vorbisfiles zu dekodieren, bzw ins Wave-Format zu konvertieren, und mittels mmsystem einzubinden?
Ich habe Code gefunden, welche Vorbis zu RAW konvertiert, was mir allerdings nicht wirklich weiterhalf. Oder ist das schon "der" Ansatz?
Ich steh da leider etwas im Wald..
digi_c - Fr 14.10.05 11:39
Hmm also die Seite für OOG ist
http://xiph.org/
Ich denke es gibt eine Möglichkeit mit hilfe dieser/einer DLL einen WaveAutioStream zu erzeugen und den dann auszugeben(ich glaube DirectX ist dafür geeignet). Da habe ich aber keine Details zu wie man das genau macht.
Schugge - Mo 17.10.05 08:45
Schade, genau so eine DLL bzw Funktion suche ich, kann sie aber nicht finden.
Schugge - Di 18.10.05 13:51
gefunden:
http://www.jadds.de/directx/directx.php?directory=directsound
Hier findet man den "Ogg Vorbis File Streamer". Nur noch die richtige vorbisFile.dll korrekt einbinden und loslegen. Eine falsche Version der DLL gab bei mir Programmabstürze.
Und vielen Dank für die Mühe nochmal an digi_c!
Entwickler-Ecke.de based on phpBB
Copyright 2002 - 2011 by Tino Teuber, Copyright 2011 - 2026 by Christian Stelzmann Alle Rechte vorbehalten.
Alle Beiträge stammen von dritten Personen und dürfen geltendes Recht nicht verletzen.
Entwickler-Ecke und die zugehörigen Webseiten distanzieren sich ausdrücklich von Fremdinhalten jeglicher Art!