avcodec/h264_direct: keep the colocated type interlaced in the field branch A colocated field picture always takes the field branch, but macroblocks that were never decoded in a broken field picture keep a stale mb_type without MB_TYPE_INTERLACED. The later IS_INTERLACED(mb_type_col[0]) check then picked the frame to frame path with the field remapping, which reads the colocated motion vectors past the end of the picture. Set the flag on the colocated type whenever the field branch is taken, decoded macroblocks have it already. Fixes: heap-buffer-overflow (read) Fixes: 553213954/clusterfuzz-testcase-minimized-fuzzer_loadfile_mkv-6112026834042880 Found-by: https://github.com/google/oss-fuzz/tree/master/projects/mpv Signed-off-by: Kacper Michajłow <kasper93@gmail.com>
FFmpeg is a collection of libraries and tools to process multimedia content such as audio, video, subtitles and related metadata.
libavcodec provides implementation of a wider range of codecs.libavformat implements streaming protocols, container formats and basic I/O access.libavutil includes hashers, decompressors and miscellaneous utility functions.libavfilter provides means to alter decoded audio and video through a directed graph of connected filters.libavdevice provides an abstraction to access capture and playback devices.libswresample implements audio mixing and resampling routines.libswscale implements color conversion and scaling routines.aviocat, ismindex and qt-faststart.The offline documentation is available in the doc/ directory.
The online documentation is available in the main website and in the wiki.
Coding examples are available in the doc/examples directory.
FFmpeg codebase is mainly LGPL-licensed with optional components licensed under GPL. Please refer to the LICENSE file for detailed information.
Patches should be submitted to Forgejo or the ffmpeg-devel mailing list using git format-patch or git send-email. Github pull requests should be avoided because they are not part of our review process and will be ignored.
See https://ffmpeg.org/developer.html for more information.