This is an automated email from the git hooks/post-receive script. Git pushed a commit to branch master in repository ffmpeg.
commit 92f5c7f211b9e7ee70ff172f373219e25e028bcc Author: Hunter Kvalevog <[email protected]> AuthorDate: Wed Sep 23 19:23:14 2026 -0500 Commit: Tobias Rapp <[email protected]> CommitDate: Tue Sep 29 08:55:41 2026 +0200 avformat/wavenc: disallow write_peak=only with RF64 Prior to this commit, the following command would generate an RF64 file with a broken header: $ ffmpeg -i inp.wav -write_peak only -rf64 always out.wav There is no good reason to allow these options together. RF64 requires a ds64 chunk, but write_peak=only omits all chunks except for levl. Since 8eae5de5af, this combination will also write RF64 fmt values over the peak envelope chunk. Rather than adding yet another check for PEAK_ONLY, this commit forbids rf64=always and downgrades rf64=auto to rf64=never. Signed-off-by: Hunter Kvalevog <[email protected]> --- libavformat/wavenc.c | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) diff --git a/libavformat/wavenc.c b/libavformat/wavenc.c index 58579d2449..55d702fb2c 100644 --- a/libavformat/wavenc.c +++ b/libavformat/wavenc.c @@ -145,6 +145,22 @@ static void bwf_write_bext_chunk(AVFormatContext *s) ff_end_tag(s->pb, bext); } +static av_cold int wav_init(AVFormatContext *s) +{ + WAVMuxContext *wav = s->priv_data; + + if (wav->write_peak == PEAK_ONLY) { + if (wav->rf64 == RF64_ALWAYS) { + av_log(s, AV_LOG_ERROR, "write_peak=only is not compatible with RF64\n"); + return AVERROR(EINVAL); + } + if (wav->rf64 == RF64_AUTO) + wav->rf64 = RF64_NEVER; + } + + return 0; +} + static av_cold void wav_deinit(AVFormatContext *s) { WAVMuxContext *wav = s->priv_data; @@ -533,6 +549,7 @@ const FFOutputFormat ff_wav_muxer = { .p.audio_codec = AV_CODEC_ID_PCM_S16LE, .p.video_codec = AV_CODEC_ID_NONE, .p.subtitle_codec = AV_CODEC_ID_NONE, + .init = wav_init, .write_header = wav_write_header, .write_packet = wav_write_packet, .write_trailer = wav_write_trailer, -- To stop receiving notification emails like this one, please contact [email protected]. _______________________________________________ ffmpeg-cvslog mailing list -- [email protected] To unsubscribe send an email to [email protected]
