#44386: New version of FFmpeg (specifically, avcodec.h in libavcodec) building of mplayer2 ---------------------------------------+-------------------------------- Reporter: zmwangx@… | Owner: macports-tickets@… Type: defect | Status: new Priority: High | Milestone: Component: ports | Version: 2.3.1 Keywords: ffmpeg, libav, libavcodec | Port: mplayer2 ---------------------------------------+-------------------------------- `mplayer2` requires the Libav.org version of `libavcodec` to function. Previously the VideoLan.org (I mean, FFmpeg.org) version of `libavcodec` also works, and the `mplayer2` port depends on that. However, a recent change to FFmpeg breaks it. Specifically, in the 2.3 release, due to [http://git.videolan.org/?p=ffmpeg.git;a=commit;h=67d29da4bd23057a1f646568442... commit 67d29da], which says, {{{ avcodec: increase FF_INPUT_BUFFER_PADDING_SIZE to 32 Sometimes the input buffers get directly used as raw images and SIMD optimized video/image filters can sometimes read more than 16 bytes over the end. a specific example is the AVX 24bpp to yuv code This also fixes fate-vsynth3-rgb }}} The requirement {{{ #include "libavcodec/avcodec.h" #if MP_INPUT_BUFFER_PADDING_SIZE < FF_INPUT_BUFFER_PADDING_SIZE #error MP_INPUT_BUFFER_PADDING_SIZE is too small! #endif }}} in [http://git.mplayer2.org/mplayer2/tree/libmpdemux/demuxer.c mplayer2.git/libmpdemux/demuxer.c] is broken, since `MP_INPUT_BUFFER_PADDING_SIZE` is `16` as defined in [http://git.mplayer2.org/mplayer2/tree/libmpdemux/demuxer.h mplayer2.git/libmpdemux/demuxer.h]. This is clearly reflected in the following error when running `port install -v mplayer2`: {{{ libmpdemux/demuxer.c:48:2: error: MP_INPUT_BUFFER_PADDING_SIZE is too small! #error MP_INPUT_BUFFER_PADDING_SIZE is too small! }}} -- Ticket URL: <https://trac.macports.org/ticket/44386> MacPorts <http://www.macports.org/> Ports system for OS X