summary |
shortlog |
log |
commit | commitdiff |
tree
raw |
patch |
inline | side by side (from parent 1:
d7a87ab)
- player has blocked when player set audio only
Change-Id: I0cf2b1c51ffc196334b1303cbf23d8803b0c58dc
Name: libmm-player
Summary: Multimedia Framework Player Library
Name: libmm-player
Summary: Multimedia Framework Player Library
Release: 0
Group: Multimedia/Libraries
License: Apache-2.0
Release: 0
Group: Multimedia/Libraries
License: Apache-2.0
MMPLAYER_RETURN_VAL_IF_FAIL(bin && element_name, NULL);
iter = gst_bin_iterate_recurse(bin);
MMPLAYER_RETURN_VAL_IF_FAIL(bin && element_name, NULL);
iter = gst_bin_iterate_recurse(bin);
- if (iter != NULL) {
- while (gst_iterator_next(iter, &item) == GST_ITERATOR_OK) {
- ch_element = g_value_get_object(&item);
- ch_factory = gst_element_get_factory(ch_element);
- LOGD("children factory %s", GST_OBJECT_NAME(ch_factory));
- if (g_strrstr(GST_OBJECT_NAME(ch_factory), element_name)) {
- LOGD("Find %s element", element_name);
- break;
- }
- ch_element = NULL;
- g_value_reset(&item);
+ MMPLAYER_RETURN_VAL_IF_FAIL(iter, NULL);
+
+ while (gst_iterator_next(iter, &item) == GST_ITERATOR_OK) {
+ ch_element = g_value_get_object(&item);
+ ch_factory = gst_element_get_factory(ch_element);
+ LOGD("children factory %s", GST_OBJECT_NAME(ch_factory));
+ if (g_strrstr(GST_OBJECT_NAME(ch_factory), element_name)) {
+ LOGD("Find %s element", element_name);
+ break;
- gst_iterator_free(iter);
+ ch_element = NULL;
+ g_value_reset(&item);
+ gst_iterator_free(iter);
MMPLAYER_FLEAVE();
return ch_element;
MMPLAYER_FLEAVE();
return ch_element;
player->pipeline->videobin[MMPLAYER_V_SINK].gst,
MM_ERROR_PLAYER_NO_OP); /* invalid op */
player->pipeline->videobin[MMPLAYER_V_SINK].gst,
MM_ERROR_PLAYER_NO_OP); /* invalid op */
+ __mmplayer_del_sink(player, player->pipeline->videobin[MMPLAYER_V_SINK].gst);
+
__mmplayer_switch_stream(player, MM_PLAYER_TRACK_TYPE_VIDEO, INVALID_TRACK_INDEX);
/* release decoder resource */
__mmplayer_switch_stream(player, MM_PLAYER_TRACK_TYPE_VIDEO, INVALID_TRACK_INDEX);
/* release decoder resource */
__mmplayer_release_signal_connection(player, MM_PLAYER_SIGNAL_TYPE_VIDEOBIN);
__mmplayer_release_signal_connection(player, MM_PLAYER_SIGNAL_TYPE_VIDEOBIN);
+ __mmplayer_del_sink(player, videobin[MMPLAYER_V_SINK].gst);
+
if (!gst_bin_remove(GST_BIN_CAST(mainbin[MMPLAYER_M_PIPE].gst), videobin[MMPLAYER_V_BIN].gst)) {
LOGE("failed to remove videobin");
gst_object_unref(GST_OBJECT(videobin[MMPLAYER_V_BIN].gst));
if (!gst_bin_remove(GST_BIN_CAST(mainbin[MMPLAYER_M_PIPE].gst), videobin[MMPLAYER_V_BIN].gst)) {
LOGE("failed to remove videobin");
gst_object_unref(GST_OBJECT(videobin[MMPLAYER_V_BIN].gst));