mirror of
git://source.winehq.org/git/wine.git
synced 2024-10-06 16:45:48 +00:00
mfreadwrite: Add a helper to get stream identifier.
Signed-off-by: Nikolay Sivov <nsivov@codeweavers.com> Signed-off-by: Alexandre Julliard <julliard@winehq.org>
This commit is contained in:
parent
5dfe477618
commit
002010e31a
|
@ -152,6 +152,20 @@ static HRESULT media_event_get_object(IMFMediaEvent *event, REFIID riid, void **
|
|||
return hr;
|
||||
}
|
||||
|
||||
static HRESULT media_stream_get_id(IMFMediaStream *stream, DWORD *id)
|
||||
{
|
||||
IMFStreamDescriptor *sd;
|
||||
HRESULT hr;
|
||||
|
||||
if (SUCCEEDED(hr = IMFMediaStream_GetStreamDescriptor(stream, &sd)))
|
||||
{
|
||||
hr = IMFStreamDescriptor_GetStreamIdentifier(sd, id);
|
||||
IMFStreamDescriptor_Release(sd);
|
||||
}
|
||||
|
||||
return hr;
|
||||
}
|
||||
|
||||
static HRESULT WINAPI source_reader_source_events_callback_QueryInterface(IMFAsyncCallback *iface,
|
||||
REFIID riid, void **obj)
|
||||
{
|
||||
|
@ -190,7 +204,6 @@ static HRESULT WINAPI source_reader_source_events_callback_GetParameters(IMFAsyn
|
|||
|
||||
static HRESULT source_reader_new_stream_handler(struct source_reader *reader, IMFMediaEvent *event)
|
||||
{
|
||||
IMFStreamDescriptor *sd;
|
||||
IMFMediaStream *stream;
|
||||
unsigned int i;
|
||||
DWORD id = 0;
|
||||
|
@ -204,13 +217,7 @@ static HRESULT source_reader_new_stream_handler(struct source_reader *reader, IM
|
|||
|
||||
TRACE("Got new stream %p.\n", stream);
|
||||
|
||||
if (SUCCEEDED(hr = IMFMediaStream_GetStreamDescriptor(stream, &sd)))
|
||||
{
|
||||
hr = IMFStreamDescriptor_GetStreamIdentifier(sd, &id);
|
||||
IMFStreamDescriptor_Release(sd);
|
||||
}
|
||||
|
||||
if (FAILED(hr))
|
||||
if (FAILED(hr = media_stream_get_id(stream, &id)))
|
||||
{
|
||||
WARN("Unidentified stream %p, hr %#x.\n", stream, hr);
|
||||
IMFMediaStream_Release(stream);
|
||||
|
|
Loading…
Reference in a new issue