Package: libavformat57 Version: 7:3.1.2-1 Severity: important Control: affects -1 mpv
Hi, Currently if mpv is installed with an old (3.0) version of libavformat57, it segfaults. This appears to be due to mpv using the new AVStream.codecpar field. In relation to the recent ffmpeg ABI issues the timeline is: 3.1.0: codecpar was added in the public API section of AVStream 3.1.1: codecpar was moved to the end of AVStream as a workaround to fix (other) applications using various private fields from AVStream. Adding the field to the middle of the struct broke applications here. Since it was originally added to the public API section, it seems like it should be treated as such. Any application which uses the new codecpar field should therefore get tighter dependencies (>= 3.1.1). On a related note, two other fields were moved to fix ABI issues, but since these fields are not public, I don't think anything needs updating in the ffmpeg package to handle them. AVFilterLink.hw_frames_ctx in 1eb43af1a0e542ad83dcbf327197785d815fc42d AVFrame.hw_frames_ctx in 77473002898f1dce18761c8a9bca48a8fe888d2e On implementing this, maybe you could bump these symbols to 3.1.1, which seem to be the only legal ways of obtaining an AVStream? This does seem a little fragile though - symbol files aren't very convenient for handling changes to structs. avformat_alloc_context avformat_alloc_output_context2 avformat_new_stream avformat_open_input After this is done, mpv will need binNMUing. Upstream MPV bug where this issue was originally reported: https://github.com/mpv-player/mpv/issues/3463 FFmpeg 3.1.1 ABI bug for reference: https://trac.ffmpeg.org/ticket/5676 Thanks, James
signature.asc
Description: OpenPGP digital signature