Merge remote-tracking branch 'qatar/master'
* qatar/master: (36 commits) adpcmenc: Use correct frame_size for Yamaha ADPCM. avcodec: add ff_samples_to_time_base() convenience function to internal.h adx parser: set duration mlp parser: set duration instead of frame_size gsm parser: set duration mpegaudio parser: set duration instead of frame_size (e)ac3 parser: set duration instead of frame_size flac parser: set duration instead of frame_size avcodec: add duration field to AVCodecParserContext avutil: add av_rescale_q_rnd() to allow different rounding pnmdec: remove useless .pix_fmts libmp3lame: support float and s32 sample formats libmp3lame: renaming, rearrangement, alignment, and comments libmp3lame: use the LAME default bit rate libmp3lame: use avpriv_mpegaudio_decode_header() for output frame parsing libmp3lame: cosmetics: remove some pointless comments libmp3lame: convert some debugging code to av_dlog() libmp3lame: remove outdated comment. libmp3lame: do not set coded_frame->key_frame. libmp3lame: improve error handling in MP3lame_encode_init() ... Conflicts: doc/APIchanges libavcodec/libmp3lame.c libavcodec/pcxenc.c libavcodec/pnmdec.c libavcodec/pnmenc.c libavcodec/sgienc.c libavcodec/utils.c libavformat/hls.c libavutil/avutil.h libswscale/x86/swscale_mmx.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
@@ -993,9 +993,8 @@ int attribute_align_arg avcodec_encode_audio2(AVCodecContext *avctx,
|
||||
if (!ret && *got_packet_ptr) {
|
||||
if (!(avctx->codec->capabilities & CODEC_CAP_DELAY)) {
|
||||
avpkt->pts = frame->pts;
|
||||
avpkt->duration = av_rescale_q(frame->nb_samples,
|
||||
(AVRational){ 1, avctx->sample_rate },
|
||||
avctx->time_base);
|
||||
avpkt->duration = ff_samples_to_time_base(avctx,
|
||||
frame->nb_samples);
|
||||
}
|
||||
avpkt->dts = avpkt->pts;
|
||||
} else {
|
||||
@@ -1053,9 +1052,8 @@ int attribute_align_arg avcodec_encode_audio2(AVCodecContext *avctx,
|
||||
once all encoders supporting CODEC_CAP_SMALL_LAST_FRAME use
|
||||
encode2() */
|
||||
if (fs_tmp) {
|
||||
avpkt->duration = av_rescale_q(avctx->frame_size,
|
||||
(AVRational){ 1, avctx->sample_rate },
|
||||
avctx->time_base);
|
||||
avpkt->duration = ff_samples_to_time_base(avctx,
|
||||
avctx->frame_size);
|
||||
}
|
||||
}
|
||||
avpkt->size = ret;
|
||||
@@ -1128,9 +1126,8 @@ int attribute_align_arg avcodec_encode_audio(AVCodecContext *avctx,
|
||||
this is needed because the avcodec_encode_audio() API does not have
|
||||
a way for the user to provide pts */
|
||||
if(avctx->sample_rate && avctx->time_base.num)
|
||||
frame->pts = av_rescale_q(avctx->internal->sample_count,
|
||||
(AVRational){ 1, avctx->sample_rate },
|
||||
avctx->time_base);
|
||||
frame->pts = ff_samples_to_time_base(avctx,
|
||||
avctx->internal->sample_count);
|
||||
else
|
||||
frame->pts = AV_NOPTS_VALUE;
|
||||
avctx->internal->sample_count += frame->nb_samples;
|
||||
|
Reference in New Issue
Block a user