Jun
02
Häufig benötigt man in Spielen die Möglichkeit eine MP3- oder OGG-Datei abzuspielen. Da dabei DirectSound nicht mehr weiterhelfen kann, muss man auf DirectShow zurück greifen. Im Folgenden ein kleiner Codeschnipsel der die Wiedergabe verdeutlicht.
Es wird die amstrmid.lib benötigt.
Header:
#include <dshow.h>
Für eine einfache Wiedergabe muss man nicht viel beachten, da der GraphBuilder das meiste von sich aus macht.
IGraphBuilder* pGraph; IMediaControl* pMediaControl; CoInitialize(NULL); CoCreateInstance(CLSID_FilterGraph, NULL, CLSCTX_INPROC_SERVER, IID_IGraphBuilder, (void**)&pGraph); pGraph->RenderFile(L"test.mp3", NULL); pGraph->QueryInterface(IID_IMediaControl, (void**)(&pMediaControl)); pMediaControl->Run();