[FFmpeg-devel] [PATCH 4/4] lavf/mp3dec: read encoder delay/padding from Info tag

wm4 nfxjfg at googlemail.com
Mon Sep 26 21:30:47 EEST 2016


On Mon, 26 Sep 2016 10:13:39 -0700
Jon Toohill <jtoohill-at-google.com at ffmpeg.org> wrote:

> ---
>  libavformat/mp3dec.c | 2 ++
>  1 file changed, 2 insertions(+)
> 
> diff --git a/libavformat/mp3dec.c b/libavformat/mp3dec.c
> index 56c7f8c..9cc85a3 100644
> --- a/libavformat/mp3dec.c
> +++ b/libavformat/mp3dec.c
> @@ -239,6 +239,8 @@ static void mp3_parse_info_tag(AVFormatContext *s, AVStream *st,
>  
>          mp3->start_pad = v>>12;
>          mp3->  end_pad = v&4095;
> +        st->codecpar->initial_padding = mp3->start_pad + 528 + 1;
> +        st->codecpar->trailing_padding = mp3->end_pad;
>          st->start_skip_samples = mp3->start_pad + 528 + 1;
>          if (mp3->frames) {
>              st->first_discard_sample = -mp3->end_pad + 528 + 1 + mp3->frames * (int64_t)spf;

I'm somewhat suspicious about this, because mp3dec.c uses
AV_PKT_DATA_SKIP_SAMPLES to communicate delay/padding
(libavformat/utils.c turns the start_skip_samples field into side
data). So I'm not quite convinced is this mess of FFmpeg and Libav API
mixture is healthy. Opinions welcome.


More information about the ffmpeg-devel mailing list