forked from enlightenment/efl
emotion: correctly close pipeline on file close, plus minor fix.
SVN revision: 61675
This commit is contained in:
parent
c5e396b8ee
commit
619332f0c0
|
@ -601,7 +601,7 @@ em_file_open(const char *file,
|
|||
|
||||
if (!(vis_name = emotion_visualization_element_name_get(ev->vis)))
|
||||
{
|
||||
ERR("pb vis name %d\n", ev->vis);
|
||||
WRN("pb vis name %d", ev->vis);
|
||||
goto finalize;
|
||||
}
|
||||
|
||||
|
@ -673,6 +673,7 @@ em_file_open(const char *file,
|
|||
|
||||
start = ecore_time_get();
|
||||
em_audio_channel_volume_set(ev, ev->volume);
|
||||
em_audio_channel_mute_set(ev, ev->audio_mute);
|
||||
|
||||
_eos_timer_fct(ev);
|
||||
_emotion_open_done(ev->obj);
|
||||
|
@ -699,6 +700,13 @@ em_file_close(void *video)
|
|||
ev->eos_bus = NULL;
|
||||
}
|
||||
|
||||
if (ev->pipeline)
|
||||
{
|
||||
gst_element_set_state(ev->pipeline, GST_STATE_NULL);
|
||||
gst_object_unref(ev->pipeline);
|
||||
ev->pipeline = NULL;
|
||||
}
|
||||
|
||||
/* we clear the stream lists */
|
||||
EINA_LIST_FREE(ev->audio_streams, astream)
|
||||
free(astream);
|
||||
|
@ -911,7 +919,6 @@ em_vis_set(void *video,
|
|||
|
||||
ev = (Emotion_Gstreamer_Video *)video;
|
||||
|
||||
if (ev->vis == vis) return;
|
||||
ev->vis = vis;
|
||||
}
|
||||
|
||||
|
@ -1191,9 +1198,6 @@ em_audio_channel_mute_set(void *video,
|
|||
|
||||
ev = (Emotion_Gstreamer_Video *)video;
|
||||
|
||||
if (ev->audio_mute == mute)
|
||||
return;
|
||||
|
||||
ev->audio_mute = mute;
|
||||
|
||||
g_object_set(G_OBJECT(ev->pipeline), "mute", !!mute, NULL);
|
||||
|
@ -1628,7 +1632,7 @@ _eos_timer_fct(void *data)
|
|||
_emotion_seek_done(ev->obj);
|
||||
break;
|
||||
default:
|
||||
ERR("bus say: %s [%i]\n",
|
||||
ERR("bus say: %s [%i]",
|
||||
GST_MESSAGE_SRC_NAME(msg),
|
||||
GST_MESSAGE_TYPE(msg));
|
||||
break;
|
||||
|
|
Loading…
Reference in New Issue