Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/FFmpeg/FFmpeg.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMichael Niedermayer <michael@niedermayer.cc>2016-01-01 18:26:24 +0300
committerMichael Niedermayer <michael@niedermayer.cc>2016-01-01 19:05:46 +0300
commit0b1e94c50a6e69ba5d01c1c2371a29358e6ca3c0 (patch)
tree28c1e87c141a868df47de39ff4c1c13715a4f365 /libavformat
parent92fe2adc1b2ba618dac5adf38557e09b534b2086 (diff)
Revert "Merge commit '9f1eccb97bf8894cb18b14f642500686505ef186'"
This unbreaks muxing-encoding Example: ffmpeg -i matrixbench_mpeg2.mpg new.avi -rw-r----- 1 michael michael 226035354 Jan 1 16:27 new.avi -rw-r----- 1 michael michael 10016802 Jan 1 16:28 ref.avi Also av_get_audio_frame_duration() itself uses frame_size This reverts commit 29e6606e9b42aa811be995e2fcdea4806911bc9f, reversing changes made to 53448461a7720afab0d1f1234af79573fd2e020d.
Diffstat (limited to 'libavformat')
-rw-r--r--libavformat/riffenc.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/libavformat/riffenc.c b/libavformat/riffenc.c
index 250cf41ae7..ceb27f272c 100644
--- a/libavformat/riffenc.c
+++ b/libavformat/riffenc.c
@@ -242,7 +242,12 @@ void ff_parse_specific_params(AVStream *st, int *au_rate,
int gcd;
int audio_frame_size;
+ /* We use the known constant frame size for the codec if known, otherwise
+ * fall back on using AVCodecContext.frame_size, which is not as reliable
+ * for indicating packet duration. */
audio_frame_size = av_get_audio_frame_duration(codec, 0);
+ if (!audio_frame_size)
+ audio_frame_size = codec->frame_size;
*au_ssize = codec->block_align;
if (audio_frame_size && codec->sample_rate) {