Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel
 help / color / mirror / Atom feed
From: Michael Niedermayer via ffmpeg-devel <ffmpeg-devel@ffmpeg.org>
To: FFmpeg development discussions and patches <ffmpeg-devel@ffmpeg.org>
Cc: Michael Niedermayer <michael@niedermayer.cc>
Subject: [FFmpeg-devel] Re: [PATCH v2] avformat/wavenc: use RF64 when needed
Date: Sat, 3 Jan 2026 01:11:12 +0100
Message-ID: <aVheoGswc_yqU7xq@neo> (raw)
In-Reply-To: <20251231130812.100653-1-Jason@zx2c4.com>


[-- Attachment #1.1: Type: text/plain, Size: 2584 bytes --]

Hi Jason

On Wed, Dec 31, 2025 at 02:08:12PM +0100, Jason A. Donenfeld via ffmpeg-devel wrote:
> Currently if you encode a large wav, ffmpeg will hint after the fact
> that the resultant file is corrupted, because traditional wav cannot
> handle lengths greater than 32-bits. This isn't very useful; nobody
> benefits from getting garbage files.
> 
> You can manually work around this by adding `-rf64 always`, which most
> players have support for. Most people don't remember to do this until
> after the fact when their file is corrupted, or they don't figure it out
> at all and wind up using the w64 container instead.
> 
> And so that's what `-rf64 auto` is for. It uses the larger format when
> needed, and if not, uses the traditional wav that is probably more
> compatible. The result of using `-rf64 auto` is that you can add it to
> every command line -- and should add it to every command line -- to get
> either a normal small file, or a non-corrupt large file.
> 
> This is a very sensible default to have on, rather than just producing
> corrupt files and having users scrambling for solutions, and then having
> to do a potentially expensive reencode after. With `-rf64 auto` on by
> default, the user always gets a readable good file. And for users who
> sometimes want corrupt files, there still exists `-rf64 never` that can
> be enabled.
> 
> The fate changes needed to be regenerated, though, because this does
> change the size of the normal non 64-bit RIFF header, because the `-rf64
> auto` code path still makes room for it, even if it doesn't wind up
> being used. Though some old buggy players relied on having fixed 44-byte
> RIFF headers, those old buggy players actually haven't worked with
> ffmpeg's wav files for a long time anyway, even in `-rf64 no` mode,
> because ffmpeg adds the ISFT filed for the libavformat version. So this
> patch shouldn't make any difference in terms of current compatibility.

still breaks some fate tests:

make  fate-fifo-muxer-wav
TEST    fifo-muxer-wav
--- -	2026-01-03 01:08:49.377174061 +0100
+++ tests/data/fate/fifo-muxer-wav	2026-01-03 01:08:49.371683543 +0100
@@ -1 +1 @@
-4dda5dcc7ecdc2218b0739a152ada802
+c9a1921dfda2531b52b48f268936e0d7
Test fifo-muxer-wav failed. Look at tests/data/fate/fifo-muxer-wav.err for details.
make: *** [tests/Makefile:323: fate-fifo-muxer-wav] Error 1

[...]
-- 
Michael     GnuPG fingerprint: 9FF2128B147EF6730BADF133611EC787040B0FAB

Republics decline into democracies and democracies degenerate into
despotisms. -- Aristotle

[-- Attachment #1.2: signature.asc --]
[-- Type: application/pgp-signature, Size: 195 bytes --]

[-- Attachment #2: Type: text/plain, Size: 163 bytes --]

_______________________________________________
ffmpeg-devel mailing list -- ffmpeg-devel@ffmpeg.org
To unsubscribe send an email to ffmpeg-devel-leave@ffmpeg.org

      reply	other threads:[~2026-01-03  0:12 UTC|newest]

Thread overview: 2+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2025-12-31 13:08 [FFmpeg-devel] " Jason A. Donenfeld via ffmpeg-devel
2026-01-03  0:11 ` Michael Niedermayer via ffmpeg-devel [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=aVheoGswc_yqU7xq@neo \
    --to=ffmpeg-devel@ffmpeg.org \
    --cc=michael@niedermayer.cc \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link

Git Inbox Mirror of the ffmpeg-devel mailing list - see https://ffmpeg.org/mailman/listinfo/ffmpeg-devel

This inbox may be cloned and mirrored by anyone:

	git clone --mirror https://master.gitmailbox.com/ffmpegdev/0 ffmpegdev/git/0.git

	# If you have public-inbox 1.1+ installed, you may
	# initialize and index your mirror using the following commands:
	public-inbox-init -V2 ffmpegdev ffmpegdev/ https://master.gitmailbox.com/ffmpegdev \
		ffmpegdev@gitmailbox.com
	public-inbox-index ffmpegdev

Example config snippet for mirrors.


AGPL code for this site: git clone https://public-inbox.org/public-inbox.git