mirror of
https://github.com/libretro/RetroArch.git
synced 2026-11-12 18:45:33 -10:00
webm_av1_hw_test and preview_av1_hw_test still called make_mp4, which the last change removed, and took the MP4 writer through rav1_webm_fixture.h, which now asks for the byte helpers alone. Both include rav1_mp4_fixture.h first for the whole writer and call make_mp4_clip(1, 0). FFmpeg 7.1 and later take a frame's primaries and transfer into the encoder over the -color_primaries and -color_trc output options, so libaom, libvpx and libx265 without its own colour parameters write untagged streams. mp4_mux's HDR sources lost their transfer and run.py stopped on the missing key; the frames are now tagged with setparams. The same goes for the hand-run generators that tag through those options alone: gen_av1_decode.py's colour stream, the D3D11 HDR AV1 fixtures and mkhdrfixtures.py's VP9 movies. FFmpeg 8's concat also converts every segment to the first one's colour space, so the ffmpeg_live colour-metadata lane could no longer switch from BT.709 to BT.601 inside one lavfi graph: the second half arrived converted and labelled BT.709. The lane now plays one BT.709 segment and its receive_frame wrapper relabels the frames after the third as BT.601, which is the transition the driver has to follow. The webm_player timeline-gap fixtures cut their silent second with aselect before the encoder, and FFmpeg 8 closes that gap: the next frame takes the previous one's end, so the packets ran on unbroken and the seek into the gap found signal. The packets are now dropped after the encoder with the noise bitstream filter, which keeps every timestamp and gives the same packets on FFmpeg 6.1 and 8.