Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
W
wine-cw
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Registry
Registry
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wine
wine-cw
Commits
18f561a7
Commit
18f561a7
authored
Dec 04, 2019
by
Zebediah Figura
Committed by
Alexandre Julliard
Dec 05, 2019
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
strmbase: Get rid of the "vtbl" parameter to strmbase_filter_init().
Signed-off-by:
Zebediah Figura
<
z.figura12@gmail.com
>
Signed-off-by:
Alexandre Julliard
<
julliard@winehq.org
>
parent
84e55192
Hide whitespace changes
Inline
Side-by-side
Showing
17 changed files
with
60 additions
and
320 deletions
+60
-320
audiorecord.c
dlls/qcap/audiorecord.c
+1
-19
avico.c
dlls/qcap/avico.c
+1
-19
avimux.c
dlls/qcap/avimux.c
+1
-19
smartteefilter.c
dlls/qcap/smartteefilter.c
+1
-19
vfwcapture.c
dlls/qcap/vfwcapture.c
+1
-20
samplegrabber.c
dlls/qedit/samplegrabber.c
+1
-20
dsoundrender.c
dlls/quartz/dsoundrender.c
+6
-6
filesource.c
dlls/quartz/filesource.c
+1
-21
videorenderer.c
dlls/quartz/tests/videorenderer.c
+1
-20
vmr7.c
dlls/quartz/tests/vmr7.c
+1
-20
vmr9.c
dlls/quartz/tests/vmr9.c
+1
-20
filter.c
dlls/strmbase/filter.c
+36
-17
renderer.c
dlls/strmbase/renderer.c
+1
-20
transform.c
dlls/strmbase/transform.c
+1
-21
gstdemux.c
dlls/winegstreamer/gstdemux.c
+4
-23
qtsplitter.c
dlls/wineqtdecoder/qtsplitter.c
+1
-19
strmbase.h
include/wine/strmbase.h
+1
-17
No files found.
dlls/qcap/audiorecord.c
View file @
18f561a7
...
...
@@ -49,24 +49,6 @@ static inline AudioRecord *impl_from_IPersistPropertyBag(IPersistPropertyBag *if
return
CONTAINING_RECORD
(
iface
,
AudioRecord
,
IPersistPropertyBag_iface
);
}
static
const
IBaseFilterVtbl
AudioRecordVtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
};
static
struct
strmbase_pin
*
audio_record_get_pin
(
struct
strmbase_filter
*
iface
,
unsigned
int
index
)
{
FIXME
(
"iface %p, index %u, stub!
\n
"
,
iface
,
index
);
...
...
@@ -186,7 +168,7 @@ IUnknown* WINAPI QCAP_createAudioCaptureFilter(IUnknown *outer, HRESULT *phr)
memset
(
This
,
0
,
sizeof
(
*
This
));
This
->
IPersistPropertyBag_iface
.
lpVtbl
=
&
PersistPropertyBagVtbl
;
strmbase_filter_init
(
&
This
->
filter
,
&
AudioRecordVtbl
,
outer
,
&
CLSID_AudioRecord
,
&
filter_ops
);
strmbase_filter_init
(
&
This
->
filter
,
outer
,
&
CLSID_AudioRecord
,
&
filter_ops
);
*
phr
=
S_OK
;
return
&
This
->
filter
.
IUnknown_inner
;
...
...
dlls/qcap/avico.c
View file @
18f561a7
...
...
@@ -111,24 +111,6 @@ static HRESULT fill_format_info(AVICompressor *This, VIDEOINFOHEADER *src_videoi
return
S_OK
;
}
static
const
IBaseFilterVtbl
AVICompressorVtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
,
};
static
struct
strmbase_pin
*
avi_compressor_get_pin
(
struct
strmbase_filter
*
iface
,
unsigned
int
index
)
{
AVICompressor
*
filter
=
impl_from_strmbase_filter
(
iface
);
...
...
@@ -576,7 +558,7 @@ IUnknown* WINAPI QCAP_createAVICompressor(IUnknown *outer, HRESULT *phr)
return
NULL
;
}
strmbase_filter_init
(
&
compressor
->
filter
,
&
AVICompressorVtbl
,
outer
,
&
CLSID_AVICo
,
&
filter_ops
);
strmbase_filter_init
(
&
compressor
->
filter
,
outer
,
&
CLSID_AVICo
,
&
filter_ops
);
compressor
->
IPersistPropertyBag_iface
.
lpVtbl
=
&
PersistPropertyBagVtbl
;
...
...
dlls/qcap/avimux.c
View file @
18f561a7
...
...
@@ -672,24 +672,6 @@ static const struct strmbase_filter_ops filter_ops =
.
filter_cleanup_stream
=
avi_mux_cleanup_stream
,
};
static
const
IBaseFilterVtbl
AviMuxVtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
};
static
inline
AviMux
*
impl_from_IConfigAviMux
(
IConfigAviMux
*
iface
)
{
return
CONTAINING_RECORD
(
iface
,
AviMux
,
IConfigAviMux_iface
);
...
...
@@ -1964,7 +1946,7 @@ IUnknown * WINAPI QCAP_createAVIMux(IUnknown *outer, HRESULT *phr)
return
NULL
;
}
strmbase_filter_init
(
&
avimux
->
filter
,
&
AviMuxVtbl
,
outer
,
&
CLSID_AviDest
,
&
filter_ops
);
strmbase_filter_init
(
&
avimux
->
filter
,
outer
,
&
CLSID_AviDest
,
&
filter_ops
);
avimux
->
IConfigAviMux_iface
.
lpVtbl
=
&
ConfigAviMuxVtbl
;
avimux
->
IConfigInterleaving_iface
.
lpVtbl
=
&
ConfigInterleavingVtbl
;
avimux
->
IMediaSeeking_iface
.
lpVtbl
=
&
MediaSeekingVtbl
;
...
...
dlls/qcap/smartteefilter.c
View file @
18f561a7
...
...
@@ -51,24 +51,6 @@ static inline SmartTeeFilter *impl_from_strmbase_pin(struct strmbase_pin *pin)
return
impl_from_strmbase_filter
(
pin
->
filter
);
}
static
const
IBaseFilterVtbl
SmartTeeFilterVtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
};
static
struct
strmbase_pin
*
smart_tee_get_pin
(
struct
strmbase_filter
*
iface
,
unsigned
int
index
)
{
SmartTeeFilter
*
filter
=
impl_from_strmbase_filter
(
iface
);
...
...
@@ -417,7 +399,7 @@ IUnknown* WINAPI QCAP_createSmartTeeFilter(IUnknown *outer, HRESULT *phr)
}
memset
(
object
,
0
,
sizeof
(
*
object
));
strmbase_filter_init
(
&
object
->
filter
,
&
SmartTeeFilterVtbl
,
outer
,
&
CLSID_SmartTee
,
&
filter_ops
);
strmbase_filter_init
(
&
object
->
filter
,
outer
,
&
CLSID_SmartTee
,
&
filter_ops
);
strmbase_sink_init
(
&
object
->
sink
,
&
SmartTeeFilterInputVtbl
,
&
object
->
filter
,
inputW
,
&
sink_ops
,
NULL
);
hr
=
CoCreateInstance
(
&
CLSID_MemoryAllocator
,
NULL
,
CLSCTX_INPROC_SERVER
,
&
IID_IMemAllocator
,
(
void
**
)
&
object
->
sink
.
pAllocator
);
...
...
dlls/qcap/vfwcapture.c
View file @
18f561a7
...
...
@@ -167,25 +167,6 @@ static const struct strmbase_filter_ops filter_ops =
.
filter_cleanup_stream
=
vfw_capture_cleanup_stream
,
};
static
const
IBaseFilterVtbl
VfwCapture_Vtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
};
/* AMStreamConfig interface, we only need to implement {G,S}etFormat */
static
HRESULT
WINAPI
AMStreamConfig_QueryInterface
(
IAMStreamConfig
*
iface
,
REFIID
iid
,
void
**
out
)
{
...
...
@@ -615,7 +596,7 @@ IUnknown * WINAPI QCAP_createVFWCaptureFilter(IUnknown *outer, HRESULT *phr)
return
NULL
;
}
strmbase_filter_init
(
&
object
->
filter
,
&
VfwCapture_Vtbl
,
outer
,
&
CLSID_VfwCapture
,
&
filter_ops
);
strmbase_filter_init
(
&
object
->
filter
,
outer
,
&
CLSID_VfwCapture
,
&
filter_ops
);
object
->
IAMStreamConfig_iface
.
lpVtbl
=
&
IAMStreamConfig_VTable
;
object
->
IAMVideoProcAmp_iface
.
lpVtbl
=
&
IAMVideoProcAmp_VTable
;
...
...
dlls/qedit/samplegrabber.c
View file @
18f561a7
...
...
@@ -489,25 +489,6 @@ SampleGrabber_In_IPin_ReceiveConnection(IPin *iface, IPin *connector, const AM_M
return
S_OK
;
}
static
const
IBaseFilterVtbl
IBaseFilter_VTable
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
,
};
static
const
ISampleGrabberVtbl
ISampleGrabber_VTable
=
{
SampleGrabber_ISampleGrabber_QueryInterface
,
...
...
@@ -714,7 +695,7 @@ HRESULT SampleGrabber_create(IUnknown *outer, void **out)
}
ZeroMemory
(
obj
,
sizeof
(
SG_Impl
));
strmbase_filter_init
(
&
obj
->
filter
,
&
IBaseFilter_VTable
,
outer
,
&
CLSID_SampleGrabber
,
&
filter_ops
);
strmbase_filter_init
(
&
obj
->
filter
,
outer
,
&
CLSID_SampleGrabber
,
&
filter_ops
);
obj
->
ISampleGrabber_iface
.
lpVtbl
=
&
ISampleGrabber_VTable
;
obj
->
IMemInputPin_iface
.
lpVtbl
=
&
IMemInputPin_VTable
;
...
...
dlls/quartz/dsoundrender.c
View file @
18f561a7
...
...
@@ -555,7 +555,7 @@ static HRESULT WINAPI Basicaudio_QueryInterface(IBasicAudio *iface,
TRACE
(
"(%p/%p)->(%s, %p)
\n
"
,
This
,
iface
,
debugstr_guid
(
riid
),
ppvObj
);
return
BaseFilterImpl_QueryInterface
(
&
This
->
renderer
.
filter
.
IBaseFilter_iface
,
riid
,
ppvObj
);
return
IUnknown_QueryInterface
(
This
->
renderer
.
filter
.
outer_unk
,
riid
,
ppvObj
);
}
static
ULONG
WINAPI
Basicaudio_AddRef
(
IBasicAudio
*
iface
)
{
...
...
@@ -563,7 +563,7 @@ static ULONG WINAPI Basicaudio_AddRef(IBasicAudio *iface) {
TRACE
(
"(%p/%p)->()
\n
"
,
This
,
iface
);
return
BaseFilterImpl_AddRef
(
&
This
->
renderer
.
filter
.
IBaseFilter_iface
);
return
IUnknown_AddRef
(
This
->
renderer
.
filter
.
outer_unk
);
}
static
ULONG
WINAPI
Basicaudio_Release
(
IBasicAudio
*
iface
)
{
...
...
@@ -571,7 +571,7 @@ static ULONG WINAPI Basicaudio_Release(IBasicAudio *iface) {
TRACE
(
"(%p/%p)->()
\n
"
,
This
,
iface
);
return
BaseFilterImpl_Release
(
&
This
->
renderer
.
filter
.
IBaseFilter_iface
);
return
IUnknown_Release
(
This
->
renderer
.
filter
.
outer_unk
);
}
HRESULT
WINAPI
basic_audio_GetTypeInfoCount
(
IBasicAudio
*
iface
,
UINT
*
count
)
...
...
@@ -708,7 +708,7 @@ static HRESULT WINAPI AMDirectSound_QueryInterface(IAMDirectSound *iface,
TRACE
(
"(%p/%p)->(%s, %p)
\n
"
,
This
,
iface
,
debugstr_guid
(
riid
),
ppvObj
);
return
BaseFilterImpl_QueryInterface
(
&
This
->
renderer
.
filter
.
IBaseFilter_iface
,
riid
,
ppvObj
);
return
IUnknown_QueryInterface
(
This
->
renderer
.
filter
.
outer_unk
,
riid
,
ppvObj
);
}
static
ULONG
WINAPI
AMDirectSound_AddRef
(
IAMDirectSound
*
iface
)
...
...
@@ -717,7 +717,7 @@ static ULONG WINAPI AMDirectSound_AddRef(IAMDirectSound *iface)
TRACE
(
"(%p/%p)->()
\n
"
,
This
,
iface
);
return
BaseFilterImpl_AddRef
(
&
This
->
renderer
.
filter
.
IBaseFilter_iface
);
return
IUnknown_AddRef
(
This
->
renderer
.
filter
.
outer_unk
);
}
static
ULONG
WINAPI
AMDirectSound_Release
(
IAMDirectSound
*
iface
)
...
...
@@ -726,7 +726,7 @@ static ULONG WINAPI AMDirectSound_Release(IAMDirectSound *iface)
TRACE
(
"(%p/%p)->()
\n
"
,
This
,
iface
);
return
BaseFilterImpl_Release
(
&
This
->
renderer
.
filter
.
IBaseFilter_iface
);
return
IUnknown_Release
(
This
->
renderer
.
filter
.
outer_unk
);
}
/*** IAMDirectSound methods ***/
...
...
dlls/quartz/filesource.c
View file @
18f561a7
...
...
@@ -90,7 +90,6 @@ static inline AsyncReader *impl_from_IFileSourceFilter(IFileSourceFilter *iface)
return
CONTAINING_RECORD
(
iface
,
AsyncReader
,
IFileSourceFilter_iface
);
}
static
const
IBaseFilterVtbl
AsyncReader_Vtbl
;
static
const
IFileSourceFilterVtbl
FileSource_Vtbl
;
static
const
IAsyncReaderVtbl
FileAsyncReader_Vtbl
;
...
...
@@ -412,7 +411,7 @@ HRESULT AsyncReader_create(IUnknown *outer, void **out)
if
(
!
pAsyncRead
)
return
E_OUTOFMEMORY
;
strmbase_filter_init
(
&
pAsyncRead
->
filter
,
&
AsyncReader_Vtbl
,
outer
,
&
CLSID_AsyncReader
,
&
filter_ops
);
strmbase_filter_init
(
&
pAsyncRead
->
filter
,
outer
,
&
CLSID_AsyncReader
,
&
filter_ops
);
pAsyncRead
->
IFileSourceFilter_iface
.
lpVtbl
=
&
FileSource_Vtbl
;
...
...
@@ -428,25 +427,6 @@ HRESULT AsyncReader_create(IUnknown *outer, void **out)
return
S_OK
;
}
static
const
IBaseFilterVtbl
AsyncReader_Vtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
};
static
HRESULT
WINAPI
FileSource_QueryInterface
(
IFileSourceFilter
*
iface
,
REFIID
riid
,
LPVOID
*
ppv
)
{
AsyncReader
*
This
=
impl_from_IFileSourceFilter
(
iface
);
...
...
dlls/quartz/tests/videorenderer.c
View file @
18f561a7
...
...
@@ -495,25 +495,6 @@ struct testfilter
struct
strmbase_source
source
;
};
static
const
IBaseFilterVtbl
testfilter_vtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
,
};
static
inline
struct
testfilter
*
impl_from_BaseFilter
(
struct
strmbase_filter
*
iface
)
{
return
CONTAINING_RECORD
(
iface
,
struct
testfilter
,
filter
);
...
...
@@ -597,7 +578,7 @@ static const struct strmbase_source_ops testsource_ops =
static
void
testfilter_init
(
struct
testfilter
*
filter
)
{
static
const
GUID
clsid
=
{
0xabacab
};
strmbase_filter_init
(
&
filter
->
filter
,
&
testfilter_vtbl
,
NULL
,
&
clsid
,
&
testfilter_ops
);
strmbase_filter_init
(
&
filter
->
filter
,
NULL
,
&
clsid
,
&
testfilter_ops
);
strmbase_source_init
(
&
filter
->
source
,
&
testsource_vtbl
,
&
filter
->
filter
,
L""
,
&
testsource_ops
);
}
...
...
dlls/quartz/tests/vmr7.c
View file @
18f561a7
...
...
@@ -855,25 +855,6 @@ struct testfilter
struct
strmbase_source
source
;
};
static
const
IBaseFilterVtbl
testfilter_vtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
,
};
static
inline
struct
testfilter
*
impl_from_strmbase_filter
(
struct
strmbase_filter
*
iface
)
{
return
CONTAINING_RECORD
(
iface
,
struct
testfilter
,
filter
);
...
...
@@ -957,7 +938,7 @@ static const struct strmbase_source_ops testsource_ops =
static
void
testfilter_init
(
struct
testfilter
*
filter
)
{
static
const
GUID
clsid
=
{
0xabacab
};
strmbase_filter_init
(
&
filter
->
filter
,
&
testfilter_vtbl
,
NULL
,
&
clsid
,
&
testfilter_ops
);
strmbase_filter_init
(
&
filter
->
filter
,
NULL
,
&
clsid
,
&
testfilter_ops
);
strmbase_source_init
(
&
filter
->
source
,
&
testsource_vtbl
,
&
filter
->
filter
,
L""
,
&
testsource_ops
);
}
...
...
dlls/quartz/tests/vmr9.c
View file @
18f561a7
...
...
@@ -859,25 +859,6 @@ struct testfilter
struct
strmbase_source
source
;
};
static
const
IBaseFilterVtbl
testfilter_vtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
,
};
static
inline
struct
testfilter
*
impl_from_strmbase_filter
(
struct
strmbase_filter
*
iface
)
{
return
CONTAINING_RECORD
(
iface
,
struct
testfilter
,
filter
);
...
...
@@ -961,7 +942,7 @@ static const struct strmbase_source_ops testsource_ops =
static
void
testfilter_init
(
struct
testfilter
*
filter
)
{
static
const
GUID
clsid
=
{
0xabacab
};
strmbase_filter_init
(
&
filter
->
filter
,
&
testfilter_vtbl
,
NULL
,
&
clsid
,
&
testfilter_ops
);
strmbase_filter_init
(
&
filter
->
filter
,
NULL
,
&
clsid
,
&
testfilter_ops
);
strmbase_source_init
(
&
filter
->
source
,
&
testsource_vtbl
,
&
filter
->
filter
,
L""
,
&
testsource_ops
);
}
...
...
dlls/strmbase/filter.c
View file @
18f561a7
...
...
@@ -95,25 +95,25 @@ static inline struct strmbase_filter *impl_from_IBaseFilter(IBaseFilter *iface)
return
CONTAINING_RECORD
(
iface
,
struct
strmbase_filter
,
IBaseFilter_iface
);
}
HRESULT
WINAPI
BaseFilterImpl
_QueryInterface
(
IBaseFilter
*
iface
,
REFIID
iid
,
void
**
out
)
static
HRESULT
WINAPI
filter
_QueryInterface
(
IBaseFilter
*
iface
,
REFIID
iid
,
void
**
out
)
{
struct
strmbase_filter
*
filter
=
impl_from_IBaseFilter
(
iface
);
return
IUnknown_QueryInterface
(
filter
->
outer_unk
,
iid
,
out
);
}
ULONG
WINAPI
BaseFilterImpl
_AddRef
(
IBaseFilter
*
iface
)
static
ULONG
WINAPI
filter
_AddRef
(
IBaseFilter
*
iface
)
{
struct
strmbase_filter
*
filter
=
impl_from_IBaseFilter
(
iface
);
return
IUnknown_AddRef
(
filter
->
outer_unk
);
}
ULONG
WINAPI
BaseFilterImpl
_Release
(
IBaseFilter
*
iface
)
static
ULONG
WINAPI
filter
_Release
(
IBaseFilter
*
iface
)
{
struct
strmbase_filter
*
filter
=
impl_from_IBaseFilter
(
iface
);
return
IUnknown_Release
(
filter
->
outer_unk
);
}
HRESULT
WINAPI
BaseFilterImpl
_GetClassID
(
IBaseFilter
*
iface
,
CLSID
*
pClsid
)
static
HRESULT
WINAPI
filter
_GetClassID
(
IBaseFilter
*
iface
,
CLSID
*
pClsid
)
{
struct
strmbase_filter
*
This
=
impl_from_IBaseFilter
(
iface
);
TRACE
(
"(%p)->(%p)
\n
"
,
This
,
pClsid
);
...
...
@@ -123,7 +123,7 @@ HRESULT WINAPI BaseFilterImpl_GetClassID(IBaseFilter * iface, CLSID * pClsid)
return
S_OK
;
}
HRESULT
WINAPI
BaseFilterImpl
_Stop
(
IBaseFilter
*
iface
)
static
HRESULT
WINAPI
filter
_Stop
(
IBaseFilter
*
iface
)
{
struct
strmbase_filter
*
filter
=
impl_from_IBaseFilter
(
iface
);
HRESULT
hr
=
S_OK
;
...
...
@@ -144,7 +144,7 @@ HRESULT WINAPI BaseFilterImpl_Stop(IBaseFilter *iface)
return
hr
;
}
HRESULT
WINAPI
BaseFilterImpl
_Pause
(
IBaseFilter
*
iface
)
static
HRESULT
WINAPI
filter
_Pause
(
IBaseFilter
*
iface
)
{
struct
strmbase_filter
*
filter
=
impl_from_IBaseFilter
(
iface
);
HRESULT
hr
=
S_OK
;
...
...
@@ -165,7 +165,7 @@ HRESULT WINAPI BaseFilterImpl_Pause(IBaseFilter *iface)
return
hr
;
}
HRESULT
WINAPI
BaseFilterImpl
_Run
(
IBaseFilter
*
iface
,
REFERENCE_TIME
start
)
static
HRESULT
WINAPI
filter
_Run
(
IBaseFilter
*
iface
,
REFERENCE_TIME
start
)
{
struct
strmbase_filter
*
filter
=
impl_from_IBaseFilter
(
iface
);
HRESULT
hr
=
S_OK
;
...
...
@@ -186,7 +186,7 @@ HRESULT WINAPI BaseFilterImpl_Run(IBaseFilter *iface, REFERENCE_TIME start)
return
hr
;
}
HRESULT
WINAPI
BaseFilterImpl
_GetState
(
IBaseFilter
*
iface
,
DWORD
timeout
,
FILTER_STATE
*
state
)
static
HRESULT
WINAPI
filter
_GetState
(
IBaseFilter
*
iface
,
DWORD
timeout
,
FILTER_STATE
*
state
)
{
struct
strmbase_filter
*
filter
=
impl_from_IBaseFilter
(
iface
);
HRESULT
hr
=
S_OK
;
...
...
@@ -204,7 +204,7 @@ HRESULT WINAPI BaseFilterImpl_GetState(IBaseFilter *iface, DWORD timeout, FILTER
return
hr
;
}
HRESULT
WINAPI
BaseFilterImpl
_SetSyncSource
(
IBaseFilter
*
iface
,
IReferenceClock
*
pClock
)
static
HRESULT
WINAPI
filter
_SetSyncSource
(
IBaseFilter
*
iface
,
IReferenceClock
*
pClock
)
{
struct
strmbase_filter
*
This
=
impl_from_IBaseFilter
(
iface
);
TRACE
(
"(%p)->(%p)
\n
"
,
This
,
pClock
);
...
...
@@ -222,7 +222,7 @@ HRESULT WINAPI BaseFilterImpl_SetSyncSource(IBaseFilter * iface, IReferenceClock
return
S_OK
;
}
HRESULT
WINAPI
BaseFilterImpl_GetSyncSource
(
IBaseFilter
*
iface
,
IReferenceClock
**
ppClock
)
static
HRESULT
WINAPI
filter_GetSyncSource
(
IBaseFilter
*
iface
,
IReferenceClock
**
ppClock
)
{
struct
strmbase_filter
*
This
=
impl_from_IBaseFilter
(
iface
);
TRACE
(
"(%p)->(%p)
\n
"
,
This
,
ppClock
);
...
...
@@ -238,7 +238,7 @@ HRESULT WINAPI BaseFilterImpl_GetSyncSource(IBaseFilter * iface, IReferenceClock
return
S_OK
;
}
HRESULT
WINAPI
BaseFilterImpl
_EnumPins
(
IBaseFilter
*
iface
,
IEnumPins
**
enum_pins
)
static
HRESULT
WINAPI
filter
_EnumPins
(
IBaseFilter
*
iface
,
IEnumPins
**
enum_pins
)
{
struct
strmbase_filter
*
filter
=
impl_from_IBaseFilter
(
iface
);
...
...
@@ -247,7 +247,7 @@ HRESULT WINAPI BaseFilterImpl_EnumPins(IBaseFilter *iface, IEnumPins **enum_pins
return
enum_pins_create
(
filter
,
enum_pins
);
}
HRESULT
WINAPI
BaseFilterImpl
_FindPin
(
IBaseFilter
*
iface
,
const
WCHAR
*
id
,
IPin
**
ret
)
static
HRESULT
WINAPI
filter
_FindPin
(
IBaseFilter
*
iface
,
const
WCHAR
*
id
,
IPin
**
ret
)
{
struct
strmbase_filter
*
This
=
impl_from_IBaseFilter
(
iface
);
struct
strmbase_pin
*
pin
;
...
...
@@ -267,7 +267,7 @@ HRESULT WINAPI BaseFilterImpl_FindPin(IBaseFilter *iface, const WCHAR *id, IPin
return
VFW_E_NOT_FOUND
;
}
HRESULT
WINAPI
BaseFilterImpl_QueryFilterInfo
(
IBaseFilter
*
iface
,
FILTER_INFO
*
pInfo
)
static
HRESULT
WINAPI
filter_QueryFilterInfo
(
IBaseFilter
*
iface
,
FILTER_INFO
*
pInfo
)
{
struct
strmbase_filter
*
This
=
impl_from_IBaseFilter
(
iface
);
TRACE
(
"(%p)->(%p)
\n
"
,
This
,
pInfo
);
...
...
@@ -281,7 +281,7 @@ HRESULT WINAPI BaseFilterImpl_QueryFilterInfo(IBaseFilter * iface, FILTER_INFO *
return
S_OK
;
}
HRESULT
WINAPI
BaseFilterImpl_JoinFilterGraph
(
IBaseFilter
*
iface
,
IFilterGraph
*
pGraph
,
LPCWSTR
pName
)
static
HRESULT
WINAPI
filter_JoinFilterGraph
(
IBaseFilter
*
iface
,
IFilterGraph
*
pGraph
,
const
WCHAR
*
pName
)
{
struct
strmbase_filter
*
This
=
impl_from_IBaseFilter
(
iface
);
...
...
@@ -300,23 +300,42 @@ HRESULT WINAPI BaseFilterImpl_JoinFilterGraph(IBaseFilter * iface, IFilterGraph
return
S_OK
;
}
HRESULT
WINAPI
BaseFilterImpl_QueryVendorInfo
(
IBaseFilter
*
iface
,
LPWSTR
*
pVendorInfo
)
static
HRESULT
WINAPI
filter_QueryVendorInfo
(
IBaseFilter
*
iface
,
WCHAR
*
*
pVendorInfo
)
{
TRACE
(
"(%p)->(%p)
\n
"
,
iface
,
pVendorInfo
);
return
E_NOTIMPL
;
}
static
const
IBaseFilterVtbl
filter_vtbl
=
{
filter_QueryInterface
,
filter_AddRef
,
filter_Release
,
filter_GetClassID
,
filter_Stop
,
filter_Pause
,
filter_Run
,
filter_GetState
,
filter_SetSyncSource
,
filter_GetSyncSource
,
filter_EnumPins
,
filter_FindPin
,
filter_QueryFilterInfo
,
filter_JoinFilterGraph
,
filter_QueryVendorInfo
,
};
VOID
WINAPI
BaseFilterImpl_IncrementPinVersion
(
struct
strmbase_filter
*
filter
)
{
InterlockedIncrement
(
&
filter
->
pin_version
);
}
void
strmbase_filter_init
(
struct
strmbase_filter
*
filter
,
const
IBaseFilterVtbl
*
vtbl
,
IUnknown
*
outer
,
void
strmbase_filter_init
(
struct
strmbase_filter
*
filter
,
IUnknown
*
outer
,
const
CLSID
*
clsid
,
const
struct
strmbase_filter_ops
*
ops
)
{
memset
(
filter
,
0
,
sizeof
(
*
filter
));
filter
->
IBaseFilter_iface
.
lpVtbl
=
vtbl
;
filter
->
IBaseFilter_iface
.
lpVtbl
=
&
filter_
vtbl
;
filter
->
IUnknown_inner
.
lpVtbl
=
&
filter_inner_vtbl
;
filter
->
outer_unk
=
outer
?
outer
:
&
filter
->
IUnknown_inner
;
filter
->
refcount
=
1
;
...
...
dlls/strmbase/renderer.c
View file @
18f561a7
...
...
@@ -448,25 +448,6 @@ HRESULT WINAPI BaseRendererImpl_Receive(struct strmbase_renderer *This, IMediaSa
return
hr
;
}
static
const
IBaseFilterVtbl
strmbase_renderer_vtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
};
HRESULT
WINAPI
BaseRendererImpl_ClearPendingSample
(
struct
strmbase_renderer
*
iface
)
{
if
(
iface
->
pMediaSample
)
...
...
@@ -483,7 +464,7 @@ HRESULT WINAPI strmbase_renderer_init(struct strmbase_renderer *filter, IUnknown
HRESULT
hr
;
memset
(
filter
,
0
,
sizeof
(
*
filter
));
strmbase_filter_init
(
&
filter
->
filter
,
&
strmbase_renderer_vtbl
,
outer
,
clsid
,
&
filter_ops
);
strmbase_filter_init
(
&
filter
->
filter
,
outer
,
clsid
,
&
filter_ops
);
filter
->
pFuncsTable
=
ops
;
...
...
dlls/strmbase/transform.c
View file @
18f561a7
...
...
@@ -246,26 +246,6 @@ static const struct strmbase_source_ops source_ops =
.
pfnDecideAllocator
=
BaseOutputPinImpl_DecideAllocator
,
};
static
const
IBaseFilterVtbl
transform_vtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
};
static
TransformFilter
*
impl_from_source_IQualityControl
(
IQualityControl
*
iface
)
{
return
CONTAINING_RECORD
(
iface
,
TransformFilter
,
source_IQualityControl_iface
);
...
...
@@ -346,7 +326,7 @@ static HRESULT strmbase_transform_init(IUnknown *outer, const CLSID *clsid,
ISeekingPassThru
*
passthru
;
HRESULT
hr
;
strmbase_filter_init
(
&
filter
->
filter
,
&
transform_vtbl
,
outer
,
clsid
,
&
filter_ops
);
strmbase_filter_init
(
&
filter
->
filter
,
outer
,
clsid
,
&
filter_ops
);
InitializeCriticalSection
(
&
filter
->
csReceive
);
filter
->
csReceive
.
DebugInfo
->
Spare
[
0
]
=
(
DWORD_PTR
)(
__FILE__
": TransformFilter.csReceive"
);
...
...
dlls/winegstreamer/gstdemux.c
View file @
18f561a7
...
...
@@ -99,7 +99,6 @@ static const WCHAR wcsInputPinName[] = {'i','n','p','u','t',' ','p','i','n',0};
static
const
IMediaSeekingVtbl
GST_Seeking_Vtbl
;
static
const
IPinVtbl
GST_OutputPin_Vtbl
;
static
const
IPinVtbl
GST_InputPin_Vtbl
;
static
const
IBaseFilterVtbl
GST_Vtbl
;
static
const
IQualityControlVtbl
GSTOutPin_QualityControl_Vtbl
;
static
struct
gstdemux_source
*
create_pin
(
struct
gstdemux
*
filter
,
const
WCHAR
*
name
);
...
...
@@ -1438,7 +1437,7 @@ IUnknown * CALLBACK Gstreamer_Splitter_create(IUnknown *outer, HRESULT *phr)
return
NULL
;
}
strmbase_filter_init
(
&
object
->
filter
,
&
GST_Vtbl
,
outer
,
&
CLSID_Gstreamer_Splitter
,
&
filter_ops
);
strmbase_filter_init
(
&
object
->
filter
,
outer
,
&
CLSID_Gstreamer_Splitter
,
&
filter_ops
);
object
->
no_more_pads_event
=
CreateEventW
(
NULL
,
FALSE
,
FALSE
,
NULL
);
object
->
sink
.
dir
=
PINDIR_INPUT
;
...
...
@@ -1453,24 +1452,6 @@ IUnknown * CALLBACK Gstreamer_Splitter_create(IUnknown *outer, HRESULT *phr)
return
&
object
->
filter
.
IUnknown_inner
;
}
static
const
IBaseFilterVtbl
GST_Vtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
};
static
struct
gstdemux
*
impl_from_IAMStreamSelect
(
IAMStreamSelect
*
iface
)
{
return
CONTAINING_RECORD
(
iface
,
struct
gstdemux
,
IAMStreamSelect_iface
);
...
...
@@ -2383,7 +2364,7 @@ IUnknown * CALLBACK wave_parser_create(IUnknown *outer, HRESULT *phr)
return
NULL
;
}
strmbase_filter_init
(
&
object
->
filter
,
&
GST_Vtbl
,
outer
,
&
CLSID_WAVEParser
,
&
filter_ops
);
strmbase_filter_init
(
&
object
->
filter
,
outer
,
&
CLSID_WAVEParser
,
&
filter_ops
);
object
->
sink
.
dir
=
PINDIR_INPUT
;
object
->
sink
.
filter
=
&
object
->
filter
;
...
...
@@ -2489,7 +2470,7 @@ IUnknown * CALLBACK avi_splitter_create(IUnknown *outer, HRESULT *phr)
return
NULL
;
}
strmbase_filter_init
(
&
object
->
filter
,
&
GST_Vtbl
,
outer
,
&
CLSID_AviSplitter
,
&
filter_ops
);
strmbase_filter_init
(
&
object
->
filter
,
outer
,
&
CLSID_AviSplitter
,
&
filter_ops
);
object
->
no_more_pads_event
=
CreateEventW
(
NULL
,
FALSE
,
FALSE
,
NULL
);
object
->
sink
.
dir
=
PINDIR_INPUT
;
...
...
@@ -2627,7 +2608,7 @@ IUnknown * CALLBACK mpeg_splitter_create(IUnknown *outer, HRESULT *phr)
return
NULL
;
}
strmbase_filter_init
(
&
object
->
filter
,
&
GST_Vtbl
,
outer
,
&
CLSID_MPEG1Splitter
,
&
mpeg_splitter_ops
);
strmbase_filter_init
(
&
object
->
filter
,
outer
,
&
CLSID_MPEG1Splitter
,
&
mpeg_splitter_ops
);
object
->
IAMStreamSelect_iface
.
lpVtbl
=
&
stream_select_vtbl
;
object
->
duration_event
=
CreateEventW
(
NULL
,
FALSE
,
FALSE
,
NULL
);
...
...
dlls/wineqtdecoder/qtsplitter.c
View file @
18f561a7
...
...
@@ -357,7 +357,7 @@ IUnknown * CALLBACK QTSplitter_create(IUnknown *outer, HRESULT *phr)
}
ZeroMemory
(
This
,
sizeof
(
*
This
));
strmbase_filter_init
(
&
This
->
filter
,
&
QT_Vtbl
,
outer
,
&
CLSID_QTSplitter
,
&
filter_ops
);
strmbase_filter_init
(
&
This
->
filter
,
outer
,
&
CLSID_QTSplitter
,
&
filter_ops
);
InitializeCriticalSection
(
&
This
->
csReceive
);
This
->
csReceive
.
DebugInfo
->
Spare
[
0
]
=
(
DWORD_PTR
)(
__FILE__
": QTSplitter.csReceive"
);
...
...
@@ -721,24 +721,6 @@ audio_error:
return
hr
;
}
static
const
IBaseFilterVtbl
QT_Vtbl
=
{
BaseFilterImpl_QueryInterface
,
BaseFilterImpl_AddRef
,
BaseFilterImpl_Release
,
BaseFilterImpl_GetClassID
,
BaseFilterImpl_Stop
,
BaseFilterImpl_Pause
,
BaseFilterImpl_Run
,
BaseFilterImpl_GetState
,
BaseFilterImpl_SetSyncSource
,
BaseFilterImpl_GetSyncSource
,
BaseFilterImpl_EnumPins
,
BaseFilterImpl_FindPin
,
BaseFilterImpl_QueryFilterInfo
,
BaseFilterImpl_JoinFilterGraph
,
BaseFilterImpl_QueryVendorInfo
};
static
void
free_source_pin
(
QTOutPin
*
pin
)
{
if
(
pin
->
pin
.
pin
.
peer
)
...
...
include/wine/strmbase.h
View file @
18f561a7
...
...
@@ -176,25 +176,9 @@ struct strmbase_filter_ops
HRESULT
(
*
filter_wait_state
)(
struct
strmbase_filter
*
iface
,
DWORD
timeout
);
};
HRESULT
WINAPI
BaseFilterImpl_QueryInterface
(
IBaseFilter
*
iface
,
REFIID
riid
,
LPVOID
*
ppv
);
ULONG
WINAPI
BaseFilterImpl_AddRef
(
IBaseFilter
*
iface
);
ULONG
WINAPI
BaseFilterImpl_Release
(
IBaseFilter
*
iface
);
HRESULT
WINAPI
BaseFilterImpl_Stop
(
IBaseFilter
*
iface
);
HRESULT
WINAPI
BaseFilterImpl_Pause
(
IBaseFilter
*
iface
);
HRESULT
WINAPI
BaseFilterImpl_Run
(
IBaseFilter
*
iface
,
REFERENCE_TIME
start
);
HRESULT
WINAPI
BaseFilterImpl_GetClassID
(
IBaseFilter
*
iface
,
CLSID
*
pClsid
);
HRESULT
WINAPI
BaseFilterImpl_GetState
(
IBaseFilter
*
iface
,
DWORD
dwMilliSecsTimeout
,
FILTER_STATE
*
pState
);
HRESULT
WINAPI
BaseFilterImpl_SetSyncSource
(
IBaseFilter
*
iface
,
IReferenceClock
*
pClock
);
HRESULT
WINAPI
BaseFilterImpl_GetSyncSource
(
IBaseFilter
*
iface
,
IReferenceClock
**
ppClock
);
HRESULT
WINAPI
BaseFilterImpl_EnumPins
(
IBaseFilter
*
iface
,
IEnumPins
**
ppEnum
);
HRESULT
WINAPI
BaseFilterImpl_FindPin
(
IBaseFilter
*
iface
,
const
WCHAR
*
id
,
IPin
**
pin
);
HRESULT
WINAPI
BaseFilterImpl_QueryFilterInfo
(
IBaseFilter
*
iface
,
FILTER_INFO
*
pInfo
);
HRESULT
WINAPI
BaseFilterImpl_JoinFilterGraph
(
IBaseFilter
*
iface
,
IFilterGraph
*
pGraph
,
LPCWSTR
pName
);
HRESULT
WINAPI
BaseFilterImpl_QueryVendorInfo
(
IBaseFilter
*
iface
,
LPWSTR
*
pVendorInfo
);
VOID
WINAPI
BaseFilterImpl_IncrementPinVersion
(
struct
strmbase_filter
*
filter
);
void
strmbase_filter_init
(
struct
strmbase_filter
*
filter
,
const
IBaseFilterVtbl
*
vtbl
,
IUnknown
*
outer
,
void
strmbase_filter_init
(
struct
strmbase_filter
*
filter
,
IUnknown
*
outer
,
const
CLSID
*
clsid
,
const
struct
strmbase_filter_ops
*
func_table
);
void
strmbase_filter_cleanup
(
struct
strmbase_filter
*
filter
);
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment