diff options
Diffstat (limited to 'src/mm_player_priv.c')
-rw-r--r-- | src/mm_player_priv.c | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/src/mm_player_priv.c b/src/mm_player_priv.c index 88e135f..74bf567 100644 --- a/src/mm_player_priv.c +++ b/src/mm_player_priv.c @@ -3452,21 +3452,23 @@ __mmplayer_gst_set_videosink_property(mmplayer_t *player, MMDisplaySurfaceType s return MM_ERROR_PLAYER_INTERNAL; } + LOGD("surface type %d, videosink factory name is %s", surface_type, factory_name); if (surface_type == MM_DISPLAY_SURFACE_OVERLAY) { bool use_tbm = (player->set_mode.video_zc || (player->is_360_feature_enabled && player->is_content_spherical)); - - if (strncmp(factory_name, "tizenwlsink", strlen(factory_name)) == 0) { - g_object_set(player->pipeline->videobin[MMPLAYER_V_SINK].gst, - "use-tbm", use_tbm, NULL); + if (!use_tbm) { + /* support shard memory with S/W codec on HawkP */ + if (strncmp(factory_name, "tizenwlsink", strlen(factory_name)) == 0) { + g_object_set(player->pipeline->videobin[MMPLAYER_V_SINK].gst, + "use-tbm", use_tbm, NULL); + } } + if (_mmplayer_update_video_overlay_param(player, "update_all_param") != MM_ERROR_NONE) return MM_ERROR_PLAYER_INTERNAL; - } else { g_object_set(G_OBJECT(player->pipeline->videobin[MMPLAYER_V_SINK].gst), "sync", TRUE, "max-lateness", FAKE_SINK_MAX_LATENESS, NULL); } - LOGD("surface type : %d, videosink factory name is %s use-tbm : %d", surface_type, factory_name, use_tbm); mm_attrs_get_int_by_name(attrs, MM_PLAYER_GAPLESS_MODE, &gapless); if (gapless > 0) { |