[FFmpeg-devel] [PATCH] use bits_per_coded_sample if bits_per_raw_sample equal to 0 in pcmc tag, fix bug #10433

hung kuishing hungkuishing at outlook.com
Wed Jul 26 08:12:49 EEST 2023


> > On Jul 24, 2023, at 10:41, hung kuishing <hungkuishing at outlook.com>
> wrote:
> >
> > Signed-off-by: clarkh <hungkuishing at outlook.com>
> > ---
> > libavformat/movenc.c | 2 +-
> > 1 file changed, 1 insertion(+), 1 deletion(-)
> >
> > diff --git a/libavformat/movenc.c b/libavformat/movenc.c
> > index f1cc80b1b3..d08c056438 100644
> > --- a/libavformat/movenc.c
> > +++ b/libavformat/movenc.c
> > @@ -1237,7 +1237,7 @@ static int
> mov_write_pcmc_tag(AVFormatContext *s, AVIOContext *pb,
> MOVTrack *tra
> >                     track->par->codec_id ==
> AV_CODEC_ID_PCM_S24LE ||
> >                     track->par->codec_id ==
> AV_CODEC_ID_PCM_S32LE);
> >     avio_w8(pb, format_flags);
> > -    avio_w8(pb, track->par->bits_per_raw_sample);
> > +    avio_w8(pb, track->par->bits_per_raw_sample ?
> track->par->bits_per_raw_sample :
> track->par->bits_per_coded_sample);
> 
> Thanks for the bug report. I didn’t notice bits_per_raw_sample isn’t
> available
> when remux raw PCM. It looks like a defect but I’m not sure.
> 
> Since both bits_per_raw_sample and bits_per_coded_sample can be 0
> as the
> comments in codec_par.h says, I decided to fallback to
> av_get_exact_bits_per_sample().
> 
> http://ffmpeg.org/pipermail/ffmpeg-devel/2023-July/312653.html

I'm glad you fixed this bug.

> PS: Please follow the commit message format next time:
> 
> 2.10 Writing a commit message
> https://ffmpeg.org/git-howto.html#Writing-a-commit-message

Thank you for your guidance!


More information about the ffmpeg-devel mailing list