Name: capi-mediademuxer
Summary: A Media Demuxer library in Tizen Native API
-Version: 0.1.17
+Version: 0.1.18
Release: 1
Group: Multimedia/API
License: Apache-2.0
%ifarch %{arm}
export CFLAGS="$CFLAGS -DENABLE_FFMPEG_CODEC"
%endif
-export CFLAGS="$CFLAGS -DSYSCONFDIR=\\\"%{_sysconfdir}\\\" "
+export CFLAGS="$CFLAGS -DSYSCONFDIR=\\\"%{_sysconfdir}\\\" -DTIZEN_FEATURE_GST_UPSTREAM"
MAJORVER=`echo %{version} | awk 'BEGIN {FS="."}{print $1}'`
%cmake . -DCMAKE_INSTALL_PREFIX=%{_prefix} -DFULLVER=%{version} -DMAJORVER=${MAJORVER}
MD_E("factory not able to make appsink");
goto ERROR;
}
+ g_object_set(G_OBJECT(temp->appsink), "wait-on-eos", TRUE, NULL);
if (!gst_bin_add(GST_BIN(pipeline), temp->appsink)) {
gst_object_unref(temp->appsink);
}
gst_app_sink_set_max_buffers((GstAppSink *)(temp->appsink), (guint) MAX_APP_BUFFER);
gst_app_sink_set_drop((GstAppSink *)(temp->appsink), false);
+ gst_app_sink_set_wait_on_eos((GstAppSink *)(temp->appsink), true);
MEDIADEMUXER_FLEAVE();
return ret;
}
}
gst_app_sink_set_max_buffers((GstAppSink *)(temp->appsink), (guint)0);
gst_app_sink_set_drop((GstAppSink *)(temp->appsink), true);
+ gst_app_sink_set_wait_on_eos((GstAppSink *)(temp->appsink), false);
MEDIADEMUXER_FLEAVE();
return ret;
}
MEDIADEMUXER_CHECK_NULL(pHandle);
mdgst_handle_t *gst_handle = (mdgst_handle_t *)pHandle;
+ /*Modification : Fix pipeline state change was block by appsink When EOS received and appsink also has many datas*/
+ int indx = 0;
+ track *atrack = gst_handle->info.head;
+ while (atrack) {
+ if ((gst_handle->selected_tracks)[indx] == false) {
+ MD_I("Track [%d] Not selected\n", indx);
+ } else {
+ MD_I("Track [%d] to unset appsink...\n", indx);
+ gst_demuxer_unset_track(pHandle, indx);
+ }
+ if (atrack->next) {
+ track *next = atrack->next;
+ atrack = next;
+ } else {
+ break;
+ }
+ indx++;
+ }
+
_gst_clear_struct(gst_handle);
if (gst_handle->bus_watch_id) {
GSource *source = NULL;