[M94 Migration][DA] Use SW codec for audio element. 39/293639/5
authorJihwan Kim <jh_marc.kim@samsung.com>
Thu, 29 Dec 2022 04:51:09 +0000 (13:51 +0900)
committerAditya Jha <aditya.jha@samsung.com>
Fri, 9 Jun 2023 06:26:01 +0000 (11:56 +0530)
Some webpage requests player from landing page.
for example, youtube request 4 players on main page.
because of this, youtube video cannot request HW codec in any way.
to prevent this, assign SW codec for audio element event if it is the
first player.

Ref: https://github.sec.samsung.net/Tizen-DA/chromium-efl/pull/223

Change-Id: I3f37f9441a3d86965120a7f3747fc199891c14b3
Signed-off-by: Aditya Jha <aditya.jha@samsung.com>
tizen_src/chromium_impl/media/base/tizen/media_player_bridge_capi.cc
tizen_src/chromium_impl/media/base/tizen/media_player_bridge_capi.h

index fafbec864dea4d2d259f8a39dd5307d6b7674e41..30da82ee8422c091e100e2ace8d525893a6d54bc 100644 (file)
@@ -317,6 +317,9 @@ MediaPlayerBridgeCapi::MediaPlayerBridgeCapi(int player_id,
       user_agent_(user_agent),
       audio_latency_mode_(
           static_cast<audio_latency_mode_e>(audio_latency_mode)),
+#if defined(OS_TIZEN_TV_PRODUCT) || defined(OS_TIZEN_DA_PRODUCT)
+      is_audio_element_(is_audio),
+#endif
       weak_factory_(this) {
 #if defined(TIZEN_SOUND_FOCUS)
   // According to the API guide, below calling sequence should be kept.
@@ -853,7 +856,10 @@ void MediaPlayerBridgeCapi::DoPrepare(const std::string& fs_path) {
     SetDisplayAtPausedState();
 #endif
 #if defined(OS_TIZEN_DA_PRODUCT)
-    if (RequestAvailableCodecType(GetPlayerId()) == PlayerCodecType::HW_CODEC) {
+    if (is_audio_element_) {
+      // DA use SW codec for audio element.
+      ret = player_set_video_codec_type_ex(player_, PLAYER_VIDEO_CODEC_TYPE_EX_SW);
+    } else if (RequestAvailableCodecType(GetPlayerId()) == PlayerCodecType::HW_CODEC) {
       // this is first player. use (DEFAULT)HW codec.
       ret = player_set_video_codec_type_ex(player_, PLAYER_VIDEO_CODEC_TYPE_EX_DEFAULT);
     } else {
index 7fa367951b3400419813026ae087c67b25372e0b..4db056405a57162d75b2f7789ab6856ed51ede37 100644 (file)
@@ -427,6 +427,10 @@ class MEDIA_EXPORT MediaPlayerBridgeCapi : public MediaPlayerEfl {
   int current_progress_{0};
   bool is_live_stream_{false};
 
+#if defined(OS_TIZEN_DA_PRODUCT) || defined(OS_TIZEN_TV_PRODUCT)
+  bool is_audio_element_{false};
+#endif
+
 #if defined(OS_TIZEN_TV_PRODUCT)
   StreamType stream_type_{OTHER_STREAM};
   base::RepeatingTimer seekable_time_update_timer_;
@@ -434,7 +438,6 @@ class MEDIA_EXPORT MediaPlayerBridgeCapi : public MediaPlayerEfl {
   base::TimeDelta max_seekable_time_;
   bool is_player_seek_available_{true};
   bool player_started_;
-  bool is_audio_element_{false};
   bool player_preparing_{false};
   bool delayed_player_set_volume_{false};
   bool is_inband_text_track_{false};