On Mon, Nov 17, 2025 at 02:01:19PM +0100, Erdinc Kaya via ffmpeg-devel wrote: > - Correctly scale bitrate by bits_per_coded_sample instead of assuming 8 > bits per byte. > - Prevents wrong bitrate reports for 16-bit PCM WAV files. > > Signed-off-by: Erdinc Kaya <[email protected]> > --- > libavformat/riffdec.c | 4 ++++ > 1 file changed, 4 insertions(+) > > diff --git a/libavformat/riffdec.c b/libavformat/riffdec.c > index 30835d5f36..d63edc6377 100644 > --- a/libavformat/riffdec.c > +++ b/libavformat/riffdec.c > @@ -130,6 +130,10 @@ int ff_get_wav_header(AVFormatContext *s, AVIOContext > *pb, > par->bits_per_coded_sample = avio_rb16(pb); > } > } > + > + if (par->bits_per_coded_sample) > + bitrate *= 8.0 / par->bits_per_coded_sample; > + > if (id == 0xFFFE) { > par->codec_tag = 0; > } else {
breaks fate --- ./tests/ref/seek/acodec-adpcm-ms-trellis 2025-11-19 00:07:58.826436074 +0100 +++ tests/data/fate/seek-acodec-adpcm-ms-trellis 2025-11-25 02:24:33.522013997 +0100 @@ -2,52 +2,52 @@ ret: 0 st:-1 flags:0 ts:-1.000000 ret: 0 st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos: 90 size: 4096 ret: 0 st:-1 flags:1 ts: 1.894167 -ret: 0 st: 0 flags:1 dts: 1.856009 pts: 1.856009 pos: 29786 size: 4096 +ret: 0 st: 0 flags:1 dts: 1.888005 pts: 1.888005 pos: 60506 size: 4096 ret: 0 st: 0 flags:0 ts: 0.788345 -ret: 0 st: 0 flags:1 dts: 0.831995 pts: 0.831995 pos: 13402 size: 4096 +ret: 0 st: 0 flags:1 dts: 0.800000 pts: 0.800000 pos: 25690 size: 4096 ret: 0 st: 0 flags:1 ts:-0.317506 ret: 0 st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos: 90 size: 4096 ret: 0 st:-1 flags:0 ts: 2.576668 -ret: 0 st: 0 flags:1 dts: 2.623991 pts: 2.623991 pos: 42074 size: 4096 +ret: 0 st: 0 flags:1 dts: 2.591995 pts: 2.591995 pos: 83034 size: 4096 ret: 0 st:-1 flags:1 ts: 1.470835 -ret: 0 st: 0 flags:1 dts: 1.408005 pts: 1.408005 pos: 22618 size: 4096 +ret: 0 st: 0 flags:1 dts: 1.440000 pts: 1.440000 pos: 46170 size: 4096 ret: 0 st: 0 flags:0 ts: 0.365011 -ret: 0 st: 0 flags:1 dts: 0.383991 pts: 0.383991 pos: 6234 size: 4096 +ret: 0 st: 0 flags:1 dts: 0.383991 pts: 0.383991 pos: 12378 size: 4096 ret: 0 st: 0 flags:1 ts:-0.740839 ret: 0 st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos: 90 size: 4096 ret: 0 st:-1 flags:0 ts: 2.153336 -ret: 0 st: 0 flags:1 dts: 2.176009 pts: 2.176009 pos: 34906 size: 4096 +ret: 0 st: 0 flags:1 dts: 2.176009 pts: 2.176009 pos: 69722 size: 4096 ret: 0 st:-1 flags:1 ts: 1.047503 -ret: 0 st: 0 flags:1 dts: 1.023991 pts: 1.023991 pos: 16474 size: 4096 +ret: 0 st: 0 flags:1 dts: 1.023991 pts: 1.023991 pos: 32858 size: 4096 ret: 0 st: 0 flags:0 ts:-0.058322 ret: 0 st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos: 90 size: 4096 ret: 0 st: 0 flags:1 ts: 2.835828 -ret: 0 st: 0 flags:1 dts: 2.816009 pts: 2.816009 pos: 45146 size: 4096 +ret: 0 st: 0 flags:1 dts: 2.816009 pts: 2.816009 pos: 90202 size: 4096 ret: 0 st:-1 flags:0 ts: 1.730004 -ret: 0 st: 0 flags:1 dts: 1.791995 pts: 1.791995 pos: 28762 size: 4096 +ret: 0 st: 0 flags:1 dts: 1.760000 pts: 1.760000 pos: 56410 size: 4096 ret: 0 st:-1 flags:1 ts: 0.624171 -ret: 0 st: 0 flags:1 dts: 0.576009 pts: 0.576009 pos: 9306 size: 4096 +ret: 0 st: 0 flags:1 dts: 0.608005 pts: 0.608005 pos: 19546 size: 4096 ret: 0 st: 0 flags:0 ts:-0.481655 ret: 0 st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos: 90 size: 4096 ret: 0 st: 0 flags:1 ts: 2.412494 -ret: 0 st: 0 flags:1 dts: 2.368005 pts: 2.368005 pos: 37978 size: 4096 +ret: 0 st: 0 flags:1 dts: 2.400000 pts: 2.400000 pos: 76890 size: 4096 ret: 0 st:-1 flags:0 ts: 1.306672 -ret: 0 st: 0 flags:1 dts: 1.343991 pts: 1.343991 pos: 21594 size: 4096 +ret: 0 st: 0 flags:1 dts: 1.311995 pts: 1.311995 pos: 42074 size: 4096 ret: 0 st:-1 flags:1 ts: 0.200839 -ret: 0 st: 0 flags:1 dts: 0.191995 pts: 0.191995 pos: 3162 size: 4096 +ret: 0 st: 0 flags:1 dts: 0.191995 pts: 0.191995 pos: 6234 size: 4096 ret: 0 st: 0 flags:0 ts:-0.904989 ret: 0 st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos: 90 size: 4096 ret: 0 st: 0 flags:1 ts: 1.989184 -ret: 0 st: 0 flags:1 dts: 1.983991 pts: 1.983991 pos: 31834 size: 4096 +ret: 0 st: 0 flags:1 dts: 1.983991 pts: 1.983991 pos: 63578 size: 4096 ret: 0 st:-1 flags:0 ts: 0.883340 -ret: 0 st: 0 flags:1 dts: 0.896009 pts: 0.896009 pos: 14426 size: 4096 +ret: 0 st: 0 flags:1 dts: 0.896009 pts: 0.896009 pos: 28762 size: 4096 ret: 0 st:-1 flags:1 ts:-0.222493 ret: 0 st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos: 90 size: 4096 ret: 0 st: 0 flags:0 ts: 2.671678 -ret: 0 st: 0 flags:1 dts: 2.688005 pts: 2.688005 pos: 43098 size: 4096 +ret: 0 st: 0 flags:1 dts: 2.688005 pts: 2.688005 pos: 86106 size: 4096 ret: 0 st: 0 flags:1 ts: 1.565850 -ret: 0 st: 0 flags:1 dts: 1.536009 pts: 1.536009 pos: 24666 size: 4096 +ret: 0 st: 0 flags:1 dts: 1.536009 pts: 1.536009 pos: 49242 size: 4096 ret: 0 st:-1 flags:0 ts: 0.460008 -ret: 0 st: 0 flags:1 dts: 0.511995 pts: 0.511995 pos: 8282 size: 4096 +ret: 0 st: 0 flags:1 dts: 0.480000 pts: 0.480000 pos: 15450 size: 4096 ret: 0 st:-1 flags:1 ts:-0.645825 ret: 0 st: 0 flags:1 dts: 0.000000 pts: 0.000000 pos: 90 size: 4096 Test seek-acodec-adpcm-ms-trellis failed. Look at tests/data/fate/seek-acodec-adpcm-ms-trellis.err for details. make: *** [tests/Makefile:321: fate-seek-acodec-adpcm-ms-trellis] Error 1 [...] -- Michael GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB Let us carefully observe those good qualities wherein our enemies excel us and endeavor to excel them, by avoiding what is faulty, and imitating what is excellent in them. -- Plutarch
signature.asc
Description: PGP signature
_______________________________________________ ffmpeg-devel mailing list -- [email protected] To unsubscribe send an email to [email protected]
