From ebd1a7930734cbb4628f89f601436f3dbfbffe44 Mon Sep 17 00:00:00 2001 From: Ji Yong Min Date: Wed, 9 Dec 2015 15:01:39 +0900 Subject: [PATCH] Replace position to set caps for appsrc/appsink before push buffers - Because gstappsrc merges buffer & caps management by queueing, so the order of caps & buffer is important Change-Id: I73a2ab0e1e70b7d9f0ed6b5e652629155cbb5068 Signed-off-by: Jiyong Min --- gstcs/mm_util_gstcs.c | 5 +++-- packaging/libmm-imgp-gstcs.spec | 2 +- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/gstcs/mm_util_gstcs.c b/gstcs/mm_util_gstcs.c index 3ff6411..c24dd44 100755 --- a/gstcs/mm_util_gstcs.c +++ b/gstcs/mm_util_gstcs.c @@ -170,8 +170,6 @@ static void _mm_link_pipeline(gstreamer_s* pGstreamer_s, image_format_s* input_format, image_format_s* output_format, int value) { /* set property */ - gst_app_src_set_caps(GST_APP_SRC(pGstreamer_s->appsrc), input_format->caps); /*g_object_set(pGstreamer_s->appsrc, "caps", input_format->caps, NULL);*/ - gst_app_sink_set_caps(GST_APP_SINK(pGstreamer_s->appsink), output_format->caps); /*g_object_set(pGstreamer_s->appsink, "caps", output_format->caps, NULL); */ gst_bin_add_many(GST_BIN(pGstreamer_s->pipeline), pGstreamer_s->appsrc, pGstreamer_s->colorspace, pGstreamer_s->videoscale, pGstreamer_s->videoflip, pGstreamer_s->appsink, NULL); if(!gst_element_link_many(pGstreamer_s->appsrc, pGstreamer_s->colorspace, pGstreamer_s->videoscale, pGstreamer_s->videoflip, pGstreamer_s->appsink, NULL)) { gstcs_error("Fail to link pipeline"); @@ -623,6 +621,9 @@ _mm_imgp_gstcs_processing( gstreamer_s* pGstreamer_s, unsigned char *src, unsign gst_bus_add_watch (bus, (GstBusFunc) _mm_on_src_message, pGstreamer_s); gst_object_unref(bus); + gst_app_src_set_caps(GST_APP_SRC(pGstreamer_s->appsrc), input_format->caps); + gst_app_sink_set_caps(GST_APP_SINK(pGstreamer_s->appsink), output_format->caps); + if (((input_format->width != input_format->stride) || (input_format->height != input_format->elevation)) && ((strcmp(input_format->colorspace, "RGB") == 0) || (strcmp(input_format->colorspace, "RGBA") == 0))) { gstcs_debug("Start _mm_push_buffer_into_pipeline_new"); diff --git a/packaging/libmm-imgp-gstcs.spec b/packaging/libmm-imgp-gstcs.spec index dcd664d..049182a 100755 --- a/packaging/libmm-imgp-gstcs.spec +++ b/packaging/libmm-imgp-gstcs.spec @@ -1,7 +1,7 @@ #sbs-git:slp/pkgs/l/libmm-imgp-gstcs libmm-imgp-gstcs 0.1 62b62e6d483557fc5750d1b4986e9a98323f1194 Name: libmm-imgp-gstcs Summary: Multimedia Framework Utility Library -Version: 0.8 +Version: 0.9 Release: 16 Group: System/Libraries License: Apache-2.0 -- 2.7.4