From: Jeongmo Yang Date: Thu, 17 Nov 2016 02:42:49 +0000 (+0900) Subject: Update expected-trailer-size related function X-Git-Tag: accepted/tizen/common/20161122.192854^0 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=c78ce9e3314debd9dadfacf5f48c963df1ce5a7c;p=platform%2Fupstream%2Fgst-plugins-good.git Update expected-trailer-size related function [Version] 1.6.1-14 [Profile] Common [Issue Type] Update [Dependency module] N/A [Test] [M(T) - Boot=(OK), sdb=(OK), Home=(OK), Touch=(OK), Version=tizen-3.0-mobile_20161115.1] Change-Id: Iff0a1633fc636297a12325cf83ab3d9b395b1ab4 Signed-off-by: Jeongmo Yang --- diff --git a/gst/isomp4/gstqtmux.c b/gst/isomp4/gstqtmux.c index e0abbbd..ed766ab 100644 --- a/gst/isomp4/gstqtmux.c +++ b/gst/isomp4/gstqtmux.c @@ -383,6 +383,12 @@ static GstElementClass *parent_class = NULL; --------------- total : 253 + stts = 16 + stsz = 20 + stco = 16 + ------------ + total : 52 + ii. Variation in file format - MP4 udta = 61 @@ -390,19 +396,17 @@ static GstElementClass *parent_class = NULL; udta = 8 iii. Variation in codec - - AAC = 424 + + (8*stts_count) + (8*audio_frame) - stsd = 94 (16, mp4a : 78(36 ,esds : 42)) + - Common stts = 16 + (8*stts_count) stsc = 28 stsz = 20 + (4*frame) stco = 16 + (4*frame) - - AMR = 410 + (4*audio_frame) - stsd = 69 -> different from AAC - stts = 24 -> different from AAC - stsc = 28 - stsz = 20 -> different from AAC - stco = 16 + (4*frame) + - AAC + stsd = 94 (16, mp4a : 78(36 ,esds : 42)) + + - AMR + stsd = 69 (16, samr : 53(36, damr : 17)) */ /* trailer entry size */ @@ -513,20 +517,13 @@ gst_qt_mux_update_expected_trailer_size (GstQTMux *qtmux, GstQTPad *pad) /* Calculate trailer size for audio stream */ if (audio_stream) { - switch (pad->fourcc) { - case FOURCC_samr: - /* AMR_NB codec */ - exp_size += MUX_COMMON_SIZE_AUDIO_HEADER + ENTRY_SIZE_AUDIO_AMR_STSD + - ENTRY_SIZE_AUDIO_ST + (ENTRY_SIZE_AUDIO_STTS * nb_audio_stts_entry) + - (ENTRY_SIZE_STSC) + (ENTRY_SIZE_AUDIO_STCO * nb_audio_frames); - break; - default: - /* AAC codec */ - exp_size += MUX_COMMON_SIZE_AUDIO_HEADER + ENTRY_SIZE_AUDIO_AAC_STSD + - ENTRY_SIZE_AUDIO_ST + (ENTRY_SIZE_AUDIO_STTS * nb_audio_stts_entry) + - (ENTRY_SIZE_STSC) + ((ENTRY_SIZE_AUDIO_STSZ + ENTRY_SIZE_AUDIO_STCO) * nb_audio_frames); - break; - } + exp_size += MUX_COMMON_SIZE_AUDIO_HEADER + ENTRY_SIZE_AUDIO_ST + (ENTRY_SIZE_AUDIO_STTS * nb_audio_stts_entry) + + (ENTRY_SIZE_STSC) + ((ENTRY_SIZE_AUDIO_STSZ + ENTRY_SIZE_AUDIO_STCO) * nb_audio_frames); + + if (pad->fourcc == FOURCC_samr) + exp_size += ENTRY_SIZE_AUDIO_AMR_STSD; + else + exp_size += ENTRY_SIZE_AUDIO_AAC_STSD; qtmux->audio_expected_trailer_size = exp_size; } diff --git a/packaging/gst-plugins-good.spec b/packaging/gst-plugins-good.spec index 8dbabbe..c0802d0 100644 --- a/packaging/gst-plugins-good.spec +++ b/packaging/gst-plugins-good.spec @@ -3,7 +3,7 @@ Name: gst-plugins-good Version: 1.6.1 -Release: 13 +Release: 14 License: LGPL-2.1+ Summary: GStreamer Streaming-Media Framework Plug-Ins Url: http://gstreamer.freedesktop.org/