fixup! [M130 Migration][EMSS] Support playing clear content without `use.upstream... 80/325580/5 tizen
authorPiotr Bałut <p.balut@samsung.com>
Fri, 6 Jun 2025 07:17:40 +0000 (09:17 +0200)
committerBot Blink <blinkbot@samsung.com>
Fri, 13 Jun 2025 13:59:03 +0000 (13:59 +0000)
[PROBLEM]
When upstream architecture is not enabled a demuxer override is applied
to WASM Player, preventing EMSS demuxer from being used. This fails
entire pipeline.

[SOLUTION]
Disable demuxer override when player is EMSS-based.

Signed-off-by: Piotr Bałut <p.balut@samsung.com>
Bug: https://jira-eu.sec.samsung.net/browse/VDWASM-2372
Change-Id: I60305999ce768d2efab18f5bbf343cabb12fa7b6

content/renderer/media/media_factory.cc

index daf7311505454c452d4c73d53b5dbd0c7e0e11e8..6f9554e12f32362cb1e915b74fde52c0ecda5073 100644 (file)
@@ -529,13 +529,20 @@ std::unique_ptr<blink::WebMediaPlayer> MediaFactory::CreateMediaPlayer(
   auto vfc = std::make_unique<blink::VideoFrameCompositor>(
       video_frame_compositor_task_runner, std::move(submitter));
 
-  std::unique_ptr<media::Demuxer> demuxer_override =
-      GetContentClient()->renderer()->OverrideDemuxerForUrl(
-          render_frame_, url,
+  std::unique_ptr<media::Demuxer> demuxer_override = [&]() {
+#if defined(SAMSUNG_ELEMENTARY_MEDIA_STREAM_SOURCE)
+    if (is_elementary_media_stream_source) {
+      return std::unique_ptr<media::Demuxer>{};
+    }
+#endif  // defined(SAMSUNG_ELEMENTARY_MEDIA_STREAM_SOURCE)
+
+    return GetContentClient()->renderer()->OverrideDemuxerForUrl(
+        render_frame_, url,
 #if BUILDFLAG(IS_TIZEN_TV)
-          source.IsMediaSource(),
+        source.IsMediaSource(),
 #endif
-          media_task_runner);
+        media_task_runner);
+  }();
 
 #if BUILDFLAG(ENABLE_CAST_RECEIVER)
   if (!demuxer_override && cast_streaming_resource_provider_) {