summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorGilbok Lee <gilbok.lee@samsung.com>2017-01-25 22:13:06 +0900
committerGilbok Lee <gilbok.lee@samsung.com>2017-02-02 20:03:59 +0900
commit72e0e2948d00259a4a0eec826152db3c87bb9d62 (patch)
tree37b7464c285ebd7de214482933ba7880805335fd
parent39f463d5b4946254e4a86402e857357316f64692 (diff)
downloadlibmm-player-72e0e2948d00259a4a0eec826152db3c87bb9d62.tar.gz
libmm-player-72e0e2948d00259a4a0eec826152db3c87bb9d62.tar.bz2
libmm-player-72e0e2948d00259a4a0eec826152db3c87bb9d62.zip
[v0.6.24] Disable webm fileformat (skip autoplugin select)
Change-Id: I21c5a4acc6e7af77eb0131a0cba772191a398e35
-rw-r--r--src/mm_player_priv.c24
1 files changed, 14 insertions, 10 deletions
diff --git a/src/mm_player_priv.c b/src/mm_player_priv.c
index 6e52e0c..2403fdf 100644
--- a/src/mm_player_priv.c
+++ b/src/mm_player_priv.c
@@ -10144,9 +10144,7 @@ GstCaps *caps, gpointer data)
if ((!MMPLAYER_IS_WFD_STREAMING(player)) &&
(!MMPLAYER_IS_RTSP_STREAMING(player)) &&
- (g_strrstr(player->type, "audio/x-raw-int") ||
- g_strrstr(player->type, "audio/webm") ||
- g_strrstr(player->type, "video/webm"))) {
+ (g_strrstr(player->type, "audio/x-raw-int"))) {
LOGE("not support media format\n");
if (player->msg_posted == FALSE) {
@@ -11680,14 +11678,7 @@ GstCaps * caps, gpointer data)
/* set it directly because not sent by TAG */
if (g_strrstr(caps_str, "mobile-xmf"))
mm_attrs_set_string_by_name(player->attrs, "content_audio_codec", "mobile-xmf");
- if (g_strrstr(caps_str, "audio/webm")) {
- LOGD("webm is not supported");
- ret = FALSE;
- }
MMPLAYER_FREEIF(caps_str);
- } else if (g_str_has_prefix(mime, "video/webm")) {
- LOGD("webm is not supported");
- ret = FALSE;
} else if (g_str_has_prefix(mime, "video") && !player->ini.video_playback_supported) {
MMMessageParamType msg_param;
memset(&msg_param, 0, sizeof(MMMessageParamType));
@@ -11754,6 +11745,19 @@ GstCaps* caps, GstElementFactory* factory, gpointer data)
}
}
+ /* exclude webm format */
+ /* NOTE : MSL have to post MM_ERROR_PLAYER_NOT_SUPPORTED_FORMAT
+ * because webm format is not supportable.
+ * If webm is disabled in "autoplug-continue", there is no state change
+ * failure or error because the decodebin will expose the pad directly.
+ * It make MSL invoke _prepare_async_callback.
+ * So, we need to disable webm format in "autoplug-select" */
+ if (strstr(caps_str, "webm")) {
+ LOGW("webm is not supported");
+ result = GST_AUTOPLUG_SELECT_SKIP;
+ goto DONE;
+ }
+
/* check factory class for filtering */
/* NOTE : msl don't need to use image plugins.
* So, those plugins should be skipped for error handling.