mirror of
https://github.com/storytold/filmcraft.git
synced 2026-10-31 05:27:36 -06:00
* codecs: walk open-GOP leading pictures back in a loop, not by recursion MxfVideo::sync_before and MpegVideo::sync_before recursed one GOP back per leading picture, so a crafted index whose every GOP leads its key frame recursed once per GOP: tens of thousands of frames for a small file, a plausible stack overflow in dev builds. Both now use gop::open_gop_sync, a loop over the same steps. It stops when the index's sync sample lies past the picture instead of looping, and reads pts and keys with get(). Fixes #2803 * gop: keep decode_start's doc comment on decode_start Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: Brandon Thomas <brandon@storyteller.ai> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>