diff options
author | Gilbok Lee <gilbok.lee@samsung.com> | 2023-04-11 11:33:50 +0900 |
---|---|---|
committer | Gilbok Lee <gilbok.lee@samsung.com> | 2023-04-11 11:33:51 +0900 |
commit | fa040b6d070cee5d8e3eed1cb185a1429fe62119 (patch) | |
tree | aa578e2a271f0bb1324d2b4070b2d4d9cd867b51 | |
parent | ec70078c44b1d34be1099d274e3e8e66260b9a5c (diff) | |
download | mediatransporter-fa040b6d070cee5d8e3eed1cb185a1429fe62119.tar.gz mediatransporter-fa040b6d070cee5d8e3eed1cb185a1429fe62119.tar.bz2 mediatransporter-fa040b6d070cee5d8e3eed1cb185a1429fe62119.zip |
[1.0.20] Fix bug for push media packet
- missing media_packet_ref() when media packet has tbm_surface
- Add layout field for audio format
Change-Id: I26183abbcfaadadd5888ffe6c351cb2416cea5ac
-rw-r--r-- | packaging/capi-media-transporter.spec | 2 | ||||
-rw-r--r-- | src/MediaSourceBinMediaPacket.cpp | 9 | ||||
-rw-r--r-- | test/mtpr_test_with_camera.c | 1 |
3 files changed, 7 insertions, 5 deletions
diff --git a/packaging/capi-media-transporter.spec b/packaging/capi-media-transporter.spec index 0011371..c9e9a30 100644 --- a/packaging/capi-media-transporter.spec +++ b/packaging/capi-media-transporter.spec @@ -1,6 +1,6 @@ Name: capi-media-transporter Summary: A Media Transporter library in Tizen Native API -Version: 1.0.19 +Version: 1.0.20 Release: 0 Group: Multimedia/API License: Apache-2.0 diff --git a/src/MediaSourceBinMediaPacket.cpp b/src/MediaSourceBinMediaPacket.cpp index 91b5f0c..cf78af5 100644 --- a/src/MediaSourceBinMediaPacket.cpp +++ b/src/MediaSourceBinMediaPacket.cpp @@ -194,9 +194,7 @@ void MediaSourceBinMediaPacket::_makeCapsFromMediaFormat(media_format_h format) static void memoryFinalizeCallback(media_packet_h packet) { - LOG_DEBUG("packet[%p] about to release", packet); - - media_packet_destroy(packet); + media_packet_unref(packet); } GstBuffer* MediaSourceBinMediaPacket::_tbmSurfaceMediaPacketToGstBuffer(media_packet_h packet) @@ -234,6 +232,8 @@ GstBuffer* MediaSourceBinMediaPacket::_tbmSurfaceMediaPacketToGstBuffer(media_pa throw MediaTransporterException(MTPR_ERROR_INVALID_OPERATION, "failed to gst_tizen_allocator_alloc_surface()"); } + media_packet_ref(packet); + if (pts != CLOCK_TIME_NONE) GST_BUFFER_PTS(gstBuffer) = static_cast<GstClockTime>(pts); @@ -388,7 +388,8 @@ void MediaSourceBinMediaPacket::_makeAudioCapsFromMediaFormat(media_format_h for caps = gst_caps_new_empty_simple(mime.c_str()); if (!audioFormat.empty()) { - gst_caps_set_simple(caps, "format", G_TYPE_STRING, audioFormat.c_str(), nullptr); + gst_caps_set_simple(caps, "format", G_TYPE_STRING, audioFormat.c_str(), + "layout", G_TYPE_STRING, "interleaved", nullptr); _audioInfo.format = audioFormat; } diff --git a/test/mtpr_test_with_camera.c b/test/mtpr_test_with_camera.c index 2655e04..7aba90b 100644 --- a/test/mtpr_test_with_camera.c +++ b/test/mtpr_test_with_camera.c @@ -108,6 +108,7 @@ void _mtpr_test_camera_packet_src_start() void _mtrp_test_camera_packet_src_stop() { + g_camera_src->push_packet = false; camera_stop_preview(g_camera_src->camera); } |