Module: wine Branch: master Commit: 91cc9ad585534044baa9cc0400122f23c156e723 URL: http://source.winehq.org/git/wine.git/?a=commit;h=91cc9ad585534044baa9cc0400...
Author: Christian Costa titan.costa@gmail.com Date: Mon Mar 26 10:09:18 2012 +0200
amstream: Add support for AMMSF_ADDDEFAULTRENDERER for audio stream.
---
dlls/amstream/amstream.c | 25 +++++++++++++++++++++++++ 1 files changed, 25 insertions(+), 0 deletions(-)
diff --git a/dlls/amstream/amstream.c b/dlls/amstream/amstream.c index afcdb59..54d57fe 100644 --- a/dlls/amstream/amstream.c +++ b/dlls/amstream/amstream.c @@ -339,6 +339,31 @@ static HRESULT WINAPI IAMMultiMediaStreamImpl_AddMediaStream(IAMMultiMediaStream This->pStreams[This->nbStreams] = pStream; This->nbStreams++;
+ if (dwFlags & AMMSF_ADDDEFAULTRENDERER) + { + if (IsEqualGUID(PurposeId, &MSPID_PrimaryAudio)) + { + IBaseFilter* dsoundrender_filter; + + hr = CoCreateInstance(&CLSID_DSoundRender, NULL, CLSCTX_INPROC_SERVER, &IID_IBaseFilter, (LPVOID*)&dsoundrender_filter); + if (SUCCEEDED(hr)) + { + hr = IGraphBuilder_AddFilter(This->pFilterGraph, dsoundrender_filter, NULL); + IBaseFilter_Release(dsoundrender_filter); + } + if (FAILED(hr)) + { + IMediaStream_Release(pStream); + pStream = NULL; + This->nbStreams--; + } + } + else + { + FIXME("Default renderer only supported for audio\n"); + } + } + if (ppNewStream) *ppNewStream = pStream; }