You've already forked wine-staging
mirror of
https://gitlab.winehq.org/wine/wine-staging.git
synced 2025-09-12 18:50:20 -07:00
Rebase against 908c837b17ac1c285ef32e98f53df730c3770295.
This commit is contained in:
@@ -1,39 +0,0 @@
|
||||
From d62c72b607a0afed782df3b1c0bdba6eec5a538e Mon Sep 17 00:00:00 2001
|
||||
From: Derek Lesho <dlesho@codeweavers.com>
|
||||
Date: Fri, 16 Oct 2020 16:53:29 -0500
|
||||
Subject: [PATCH] mfmediaengine: Provide the partial topology to the media
|
||||
session.
|
||||
|
||||
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
|
||||
---
|
||||
dlls/mfmediaengine/main.c | 6 ++++++
|
||||
1 file changed, 6 insertions(+)
|
||||
|
||||
diff --git a/dlls/mfmediaengine/main.c b/dlls/mfmediaengine/main.c
|
||||
index d93e2b2f38c..d1261e3cd73 100644
|
||||
--- a/dlls/mfmediaengine/main.c
|
||||
+++ b/dlls/mfmediaengine/main.c
|
||||
@@ -418,7 +418,10 @@ static HRESULT media_engine_create_topology(struct media_engine *engine, IMFMedi
|
||||
{
|
||||
sd_video = sd;
|
||||
IMFStreamDescriptor_AddRef(sd_video);
|
||||
+ /* TODO: reintroduce this once we set up video stream nodes */
|
||||
+#if 0
|
||||
IMFPresentationDescriptor_SelectStream(pd, i);
|
||||
+#endif
|
||||
}
|
||||
|
||||
IMFMediaTypeHandler_Release(type_handler);
|
||||
@@ -480,6 +483,9 @@ static HRESULT media_engine_create_topology(struct media_engine *engine, IMFMedi
|
||||
if (audio_src)
|
||||
IMFTopologyNode_Release(audio_src);
|
||||
}
|
||||
+
|
||||
+ if (SUCCEEDED(hr))
|
||||
+ hr = IMFMediaSession_SetTopology(engine->session, MFSESSION_SETTOPOLOGY_IMMEDIATE, topology);
|
||||
}
|
||||
|
||||
if (topology)
|
||||
--
|
||||
2.28.0
|
||||
|
@@ -1,33 +0,0 @@
|
||||
From afcfca53cc7f15bf0f49463d46b865ba254b70d2 Mon Sep 17 00:00:00 2001
|
||||
From: Derek Lesho <dlesho@codeweavers.com>
|
||||
Date: Fri, 16 Oct 2020 16:54:57 -0500
|
||||
Subject: [PATCH] mfmediaengine: Issue MF_MEDIA_ENGINE_EVENT_CANPLAY upon
|
||||
MF_TOPOSTATUS_READY.
|
||||
|
||||
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
|
||||
---
|
||||
dlls/mfmediaengine/main.c | 8 ++++++++
|
||||
1 file changed, 8 insertions(+)
|
||||
|
||||
diff --git a/dlls/mfmediaengine/main.c b/dlls/mfmediaengine/main.c
|
||||
index d1261e3cd73..bc89b2f702a 100644
|
||||
--- a/dlls/mfmediaengine/main.c
|
||||
+++ b/dlls/mfmediaengine/main.c
|
||||
@@ -295,6 +295,14 @@ static HRESULT WINAPI media_engine_session_events_Invoke(IMFAsyncCallback *iface
|
||||
IMFMediaEngineNotify_EventNotify(engine->callback, event_type == MEBufferingStarted ?
|
||||
MF_MEDIA_ENGINE_EVENT_BUFFERINGSTARTED : MF_MEDIA_ENGINE_EVENT_BUFFERINGENDED, 0, 0);
|
||||
break;
|
||||
+ case MESessionTopologyStatus:
|
||||
+ {
|
||||
+ UINT32 topo_status = 0;
|
||||
+ IMFMediaEvent_GetUINT32(event, &MF_EVENT_TOPOLOGY_STATUS, &topo_status);
|
||||
+ if (topo_status == MF_TOPOSTATUS_READY)
|
||||
+ IMFMediaEngineNotify_EventNotify(engine->callback, MF_MEDIA_ENGINE_EVENT_CANPLAY, 0, 0);
|
||||
+ break;
|
||||
+ }
|
||||
}
|
||||
|
||||
failed:
|
||||
--
|
||||
2.28.0
|
||||
|
@@ -1,29 +0,0 @@
|
||||
From 63f092c3ef53718cdeaf1564ac3793cc65891109 Mon Sep 17 00:00:00 2001
|
||||
From: Derek Lesho <dlesho@codeweavers.com>
|
||||
Date: Fri, 16 Oct 2020 16:57:21 -0500
|
||||
Subject: [PATCH] mfmediaengine: Issue MF_MEDIA_ENGINE_EVENT_PLAYING upon
|
||||
MESessionStarted.
|
||||
|
||||
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
|
||||
---
|
||||
dlls/mfmediaengine/main.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/dlls/mfmediaengine/main.c b/dlls/mfmediaengine/main.c
|
||||
index bc89b2f702a..ed57aec7eb1 100644
|
||||
--- a/dlls/mfmediaengine/main.c
|
||||
+++ b/dlls/mfmediaengine/main.c
|
||||
@@ -303,6 +303,10 @@ static HRESULT WINAPI media_engine_session_events_Invoke(IMFAsyncCallback *iface
|
||||
IMFMediaEngineNotify_EventNotify(engine->callback, MF_MEDIA_ENGINE_EVENT_CANPLAY, 0, 0);
|
||||
break;
|
||||
}
|
||||
+ case MESessionStarted:
|
||||
+
|
||||
+ IMFMediaEngineNotify_EventNotify(engine->callback, MF_MEDIA_ENGINE_EVENT_PLAYING, 0, 0);
|
||||
+ break;
|
||||
}
|
||||
|
||||
failed:
|
||||
--
|
||||
2.28.0
|
||||
|
@@ -1,29 +0,0 @@
|
||||
From d2b277c0588a44e56fa260de34d61f1ca0d16a9d Mon Sep 17 00:00:00 2001
|
||||
From: Derek Lesho <dlesho@codeweavers.com>
|
||||
Date: Fri, 16 Oct 2020 16:58:20 -0500
|
||||
Subject: [PATCH] mfmediaengine: Issue MF_MEDIA_ENGINE_EVENT_ENDED upon
|
||||
MESessionEnded.
|
||||
|
||||
Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
|
||||
---
|
||||
dlls/mfmediaengine/main.c | 4 ++++
|
||||
1 file changed, 4 insertions(+)
|
||||
|
||||
diff --git a/dlls/mfmediaengine/main.c b/dlls/mfmediaengine/main.c
|
||||
index ed57aec7eb1..fe9aa81121f 100644
|
||||
--- a/dlls/mfmediaengine/main.c
|
||||
+++ b/dlls/mfmediaengine/main.c
|
||||
@@ -307,6 +307,10 @@ static HRESULT WINAPI media_engine_session_events_Invoke(IMFAsyncCallback *iface
|
||||
|
||||
IMFMediaEngineNotify_EventNotify(engine->callback, MF_MEDIA_ENGINE_EVENT_PLAYING, 0, 0);
|
||||
break;
|
||||
+ case MESessionEnded:
|
||||
+
|
||||
+ IMFMediaEngineNotify_EventNotify(engine->callback, MF_MEDIA_ENGINE_EVENT_ENDED, 0, 0);
|
||||
+ break;
|
||||
}
|
||||
|
||||
failed:
|
||||
--
|
||||
2.28.0
|
||||
|
@@ -1,4 +1,4 @@
|
||||
From 33d71bfb289c8f2273ab2bafbf60e95098e7705f Mon Sep 17 00:00:00 2001
|
||||
From f2c8482489046a0623ef3d011ac7373209eef09a Mon Sep 17 00:00:00 2001
|
||||
From: Derek Lesho <dlesho@codeweavers.com>
|
||||
Date: Fri, 16 Oct 2020 16:59:32 -0500
|
||||
Subject: [PATCH] mfmediaengine: Implement GetNativeVideoSize.
|
||||
@@ -9,10 +9,10 @@ Signed-off-by: Derek Lesho <dlesho@codeweavers.com>
|
||||
1 file changed, 28 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/dlls/mfmediaengine/main.c b/dlls/mfmediaengine/main.c
|
||||
index fe9aa81121f..44e298bf5ef 100644
|
||||
index e126a925b67..974e11296e9 100644
|
||||
--- a/dlls/mfmediaengine/main.c
|
||||
+++ b/dlls/mfmediaengine/main.c
|
||||
@@ -84,6 +84,7 @@ struct media_engine
|
||||
@@ -91,6 +91,7 @@ struct media_engine
|
||||
double default_playback_rate;
|
||||
double volume;
|
||||
double duration;
|
||||
@@ -20,7 +20,7 @@ index fe9aa81121f..44e298bf5ef 100644
|
||||
MF_MEDIA_ENGINE_ERR error_code;
|
||||
HRESULT extended_code;
|
||||
MF_MEDIA_ENGINE_READY ready_state;
|
||||
@@ -432,12 +433,26 @@ static HRESULT media_engine_create_topology(struct media_engine *engine, IMFMedi
|
||||
@@ -496,9 +497,23 @@ static HRESULT media_engine_create_topology(struct media_engine *engine, IMFMedi
|
||||
}
|
||||
else if (IsEqualGUID(&major, &MFMediaType_Video) && !sd_video && !(engine->flags & MF_MEDIA_ENGINE_AUDIOONLY))
|
||||
{
|
||||
@@ -29,10 +29,7 @@ index fe9aa81121f..44e298bf5ef 100644
|
||||
+
|
||||
sd_video = sd;
|
||||
IMFStreamDescriptor_AddRef(sd_video);
|
||||
/* TODO: reintroduce this once we set up video stream nodes */
|
||||
#if 0
|
||||
IMFPresentationDescriptor_SelectStream(pd, i);
|
||||
#endif
|
||||
+
|
||||
+ engine->vid_width = 0;
|
||||
+ engine->vid_height = 0;
|
||||
@@ -47,7 +44,7 @@ index fe9aa81121f..44e298bf5ef 100644
|
||||
}
|
||||
|
||||
IMFMediaTypeHandler_Release(type_handler);
|
||||
@@ -1136,9 +1151,20 @@ static BOOL WINAPI media_engine_HasAudio(IMFMediaEngine *iface)
|
||||
@@ -1230,9 +1245,20 @@ static BOOL WINAPI media_engine_HasAudio(IMFMediaEngine *iface)
|
||||
|
||||
static HRESULT WINAPI media_engine_GetNativeVideoSize(IMFMediaEngine *iface, DWORD *cx, DWORD *cy)
|
||||
{
|
||||
|
Reference in New Issue
Block a user