Aric Stewart : quartz: Have DSoundRenderer use strmbase BasicAudio.
Alexandre Julliard
julliard at winehq.org
Mon Apr 30 14:13:07 CDT 2012
Module: wine
Branch: master
Commit: f58c9661a46e89b9f2e7d8541b7ce8c9f510ca9c
URL: http://source.winehq.org/git/wine.git/?a=commit;h=f58c9661a46e89b9f2e7d8541b7ce8c9f510ca9c
Author: Aric Stewart <aric at codeweavers.com>
Date: Fri Apr 27 13:47:47 2012 -0500
quartz: Have DSoundRenderer use strmbase BasicAudio.
---
dlls/quartz/dsoundrender.c | 69 ++++++--------------------------------------
1 files changed, 9 insertions(+), 60 deletions(-)
diff --git a/dlls/quartz/dsoundrender.c b/dlls/quartz/dsoundrender.c
index 5d6dac2..071d702 100644
--- a/dlls/quartz/dsoundrender.c
+++ b/dlls/quartz/dsoundrender.c
@@ -53,8 +53,8 @@ static const IAMFilterMiscFlagsVtbl IAMFilterMiscFlags_Vtbl;
typedef struct DSoundRenderImpl
{
BaseRenderer renderer;
+ BasicAudio basicAudio;
- IBasicAudio IBasicAudio_iface;
IReferenceClock IReferenceClock_iface;
IAMDirectSound IAMDirectSound_iface;
IAMFilterMiscFlags IAMFilterMiscFlags_iface;
@@ -88,7 +88,7 @@ static inline DSoundRenderImpl *impl_from_IBaseFilter(IBaseFilter *iface)
static inline DSoundRenderImpl *impl_from_IBasicAudio(IBasicAudio *iface)
{
- return CONTAINING_RECORD(iface, DSoundRenderImpl, IBasicAudio_iface);
+ return CONTAINING_RECORD(iface, DSoundRenderImpl, basicAudio.IBasicAudio_iface);
}
static inline DSoundRenderImpl *impl_from_IReferenceClock(IReferenceClock *iface)
@@ -666,7 +666,7 @@ HRESULT DSoundRender_create(IUnknown * pUnkOuter, LPVOID * ppv)
hr = BaseRenderer_Init(&pDSoundRender->renderer, &DSoundRender_Vtbl, (IUnknown*)pDSoundRender, &CLSID_DSoundRender, (DWORD_PTR)(__FILE__ ": DSoundRenderImpl.csFilter"), &BaseFuncTable);
- pDSoundRender->IBasicAudio_iface.lpVtbl = &IBasicAudio_Vtbl;
+ BasicAudio_Init(&pDSoundRender->basicAudio,&IBasicAudio_Vtbl);
pDSoundRender->IReferenceClock_iface.lpVtbl = &IReferenceClock_Vtbl;
pDSoundRender->IAMDirectSound_iface.lpVtbl = &IAMDirectSound_Vtbl;
pDSoundRender->IAMFilterMiscFlags_iface.lpVtbl = &IAMFilterMiscFlags_Vtbl;
@@ -722,7 +722,7 @@ static HRESULT WINAPI DSoundRender_QueryInterface(IBaseFilter * iface, REFIID ri
*ppv = NULL;
if (IsEqualIID(riid, &IID_IBasicAudio))
- *ppv = &This->IBasicAudio_iface;
+ *ppv = &This->basicAudio.IBasicAudio_iface;
else if (IsEqualIID(riid, &IID_IReferenceClock))
*ppv = &This->IReferenceClock_iface;
else if (IsEqualIID(riid, &IID_IAMDirectSound))
@@ -771,8 +771,7 @@ static ULONG WINAPI DSoundRender_Release(IBaseFilter * iface)
IDirectSound_Release(This->dsound);
This->dsound = NULL;
- This->IBasicAudio_iface.lpVtbl = NULL;
-
+ BasicAudio_Destroy(&This->basicAudio);
CloseHandle(This->blocked);
TRACE("Destroying Audio Renderer\n");
@@ -830,56 +829,6 @@ static ULONG WINAPI Basicaudio_Release(IBasicAudio *iface) {
return DSoundRender_Release(&This->renderer.filter.IBaseFilter_iface);
}
-/*** IDispatch methods ***/
-static HRESULT WINAPI Basicaudio_GetTypeInfoCount(IBasicAudio *iface,
- UINT*pctinfo) {
- DSoundRenderImpl *This = impl_from_IBasicAudio(iface);
-
- TRACE("(%p/%p)->(%p): stub !!!\n", This, iface, pctinfo);
-
- return S_OK;
-}
-
-static HRESULT WINAPI Basicaudio_GetTypeInfo(IBasicAudio *iface,
- UINT iTInfo,
- LCID lcid,
- ITypeInfo**ppTInfo) {
- DSoundRenderImpl *This = impl_from_IBasicAudio(iface);
-
- TRACE("(%p/%p)->(%d, %d, %p): stub !!!\n", This, iface, iTInfo, lcid, ppTInfo);
-
- return S_OK;
-}
-
-static HRESULT WINAPI Basicaudio_GetIDsOfNames(IBasicAudio *iface,
- REFIID riid,
- LPOLESTR*rgszNames,
- UINT cNames,
- LCID lcid,
- DISPID*rgDispId) {
- DSoundRenderImpl *This = impl_from_IBasicAudio(iface);
-
- TRACE("(%p/%p)->(%s (%p), %p, %d, %d, %p): stub !!!\n", This, iface, debugstr_guid(riid), riid, rgszNames, cNames, lcid, rgDispId);
-
- return S_OK;
-}
-
-static HRESULT WINAPI Basicaudio_Invoke(IBasicAudio *iface,
- DISPID dispIdMember,
- REFIID riid,
- LCID lcid,
- WORD wFlags,
- DISPPARAMS*pDispParams,
- VARIANT*pVarResult,
- EXCEPINFO*pExepInfo,
- UINT*puArgErr) {
- DSoundRenderImpl *This = impl_from_IBasicAudio(iface);
-
- TRACE("(%p/%p)->(%d, %s (%p), %d, %04x, %p, %p, %p, %p): stub !!!\n", This, iface, dispIdMember, debugstr_guid(riid), riid, lcid, wFlags, pDispParams, pVarResult, pExepInfo, puArgErr);
-
- return S_OK;
-}
-
/*** IBasicAudio methods ***/
static HRESULT WINAPI Basicaudio_put_Volume(IBasicAudio *iface,
LONG lVolume) {
@@ -948,10 +897,10 @@ static const IBasicAudioVtbl IBasicAudio_Vtbl =
Basicaudio_QueryInterface,
Basicaudio_AddRef,
Basicaudio_Release,
- Basicaudio_GetTypeInfoCount,
- Basicaudio_GetTypeInfo,
- Basicaudio_GetIDsOfNames,
- Basicaudio_Invoke,
+ BasicAudioImpl_GetTypeInfoCount,
+ BasicAudioImpl_GetTypeInfo,
+ BasicAudioImpl_GetIDsOfNames,
+ BasicAudioImpl_Invoke,
Basicaudio_put_Volume,
Basicaudio_get_Volume,
Basicaudio_put_Balance,
More information about the wine-cvs
mailing list