From 6e530ad27cef82f9dbbd74c8f46fd3586a40977a Mon Sep 17 00:00:00 2001 From: Jeongmo Yang Date: Thu, 17 Feb 2022 21:54:17 +0900 Subject: [PATCH] Change buffer push function for dual stream video recording - Previously, gst_app_src_push_buffer() is used and it did not increase reference count of buffer. But, the buffer is also released when gst sample which is parent of buffer is released. So, the reference count of buffer should be increased when it's pushed to appsrc. [Version] 0.10.253 [Issue Type] Bug fix Change-Id: I6dae38fe48162a5451fdb9ec3e17eced5424b990 Signed-off-by: Jeongmo Yang --- packaging/libmm-camcorder.spec | 2 +- src/mm_camcorder_videorec.c | 9 ++------- 2 files changed, 3 insertions(+), 8 deletions(-) diff --git a/packaging/libmm-camcorder.spec b/packaging/libmm-camcorder.spec index 929f9fb..1510ebc 100755 --- a/packaging/libmm-camcorder.spec +++ b/packaging/libmm-camcorder.spec @@ -1,6 +1,6 @@ Name: libmm-camcorder Summary: Camera and recorder library -Version: 0.10.252 +Version: 0.10.253 Release: 0 Group: Multimedia/Libraries License: Apache-2.0 diff --git a/src/mm_camcorder_videorec.c b/src/mm_camcorder_videorec.c index 42c6c45..62f194d 100644 --- a/src/mm_camcorder_videorec.c +++ b/src/mm_camcorder_videorec.c @@ -142,13 +142,8 @@ gboolean _mmcamcorder_video_push_buffer(void *handle, GstSample *sample) MMCAM_LOG_DEBUG("buffer %p, timestamp %"GST_TIME_FORMAT, buffer, GST_TIME_ARGS(GST_BUFFER_PTS(buffer))); - if (info_video->record_dual_stream) { - /* It will NOT INCREASE reference count of buffer */ - ret = gst_app_src_push_buffer((GstAppSrc *)element[_MMCAMCORDER_ENCSINK_SRC].gst, buffer); - } else { - /* It will INCREASE reference count of buffer */ - g_signal_emit_by_name(element[_MMCAMCORDER_ENCSINK_SRC].gst, "push-buffer", buffer, &ret); - } + /* It will INCREASE reference count of buffer */ + g_signal_emit_by_name(element[_MMCAMCORDER_ENCSINK_SRC].gst, "push-buffer", buffer, &ret); MMCAM_LOG_VERBOSE("push buffer result : 0x%x", ret); -- 2.34.1