summaryrefslogtreecommitdiffstats
path: root/ffmpeg_files
Commit message (Collapse)AuthorAgeFilesLines
* build: switch to libavutil bswap.h and intreadwrite.hUoti Urpala2012-02-016-555/+0
| | | | | | | | | | | | Remove the private bswap and intreadwrite.h implementations and use libavutil headers instead. Originally these headers weren't publicly installed by libavutil at all. That already changed in 2010, but the pure C bswap version in installed headers was very inefficient. That was recently (2011-12) improved and now using the public bswap version probably shouldn't cause noticeable performance problems, at least if using a new enough compiler.
* demux_lavf: use Libav RIFF tag lists directlyUoti Urpala2012-02-012-374/+0
| | | | | | Change demux_lavf to use CodecID -> RIFF tag mappings that are now available through the public Libav API. Previously it used a copy in ffmpeg_files/taglists.c. That can now be deleted.
* Update Libav API usesUoti Urpala2012-02-011-2/+0
| | | | | | | | | | | | | | | | | | | Change various code to use the latest Libav API. The libavcodec error_recognition setting has been removed and replaced with different semantics. I removed the "--lavdopts=er=<value>" option accordingly, as I don't think it's widely enough used to be worth attempting to emulate the old option semantics using the new API. A new option with the new semantics can be added later if needed. Libav dropped APIs that were necessary with all Libav versions until quite recently (like setting avctx->age), and it would thus not be possible to keep compatibility with previous Libav versions without adding workarounds. The new APIs also had some bugs/limitations in the recent Libav release 0.8, and it would not work fully (at least some avcodec options would not be set correctly). Because of those issues, this commit makes no attempt to maintain compatibility with anything but the latest Libav git head. Hopefully the required fixes and improvements will be included in a following Libav point release.
* configure, build: require at least Libav 0.7Uoti Urpala2011-12-221-8/+0
| | | | | | | | | | | | | | | | Require versions of the Libav libraries corresponding to Libav release 0.7. These are: libavutil 51.7.0 libavcodec 53.5.0 libavformat 53.2.0 libswscale 2.0.0 libpostproc 52.0.0 Also disable the fallback to simple header check if these libraries could not be found with pkg-config; now compiling without pkg-config support for these always requires explicitly setting --enable-libav and any needed compiler/linker flags. The simple check would have let compilation proceed even if a version mismatch was detected.
* ffmpeg_files/intreadwrite.h: fix AV_RL32/AV_RB32 signednessUoti Urpala2011-06-151-2/+2
| | | | | | | | | The output type of the AV_RL32/AV_RB32 macros was signed int. The resulting overflow broke at least some ASF streams with large timestamps (AV_RL32 used in demux_asf.c timestamp parsing code). Fix by adding a cast to uint32_t. This code comes from FFmpeg, and the matching code in Libav/FFmpeg is still broken (but not used there in most common configurations).
* ffmpeg_files/taglists.c: add new FFmpeg valuesUoti Urpala2011-02-051-0/+10
| | | | Updated to last FFmpeg svn version values (r26400).
* ffmpeg_files/taglists.c: update to latest FFmpeg values (r25209)Uoti Urpala2010-11-051-2/+10
|
* ffmpeg_files/taglists.c: update to contain latest FFmpeg CODEC_ID valuesUoti Urpala2010-05-301-1/+19
|
* intreadwrite.h: disable optimizationsUoti Urpala2010-05-082-120/+0
| | | | | | Disable arch/compiler specific optimizations in the MPlayer version of intreadwrite.h. All the uses in MPlayer should be irrelevant for performance.
* taglists.c: update to match current libavformat riff.cUoti Urpala2010-01-081-1/+22
|
* Add copies of needed internal FFmpeg files under ffmpeg_files/Uoti Urpala2009-07-2610-0/+1078
MPlayer used to depend on having an FFmpeg tree available at build time to provide this code, and FFmpeg changes occasionally broke the MPlayer build as a result. Some of the relevant functionality also depends on FFmpeg library symbols that are not part of the FFmpeg API, meaning that library changes could break MPlayer after the build. Add a copy of the relevant functionality to the MPlayer tree and use that instead. The added files are: - The headers bswap.h, intreadwrite.h and x86_cpu.h from libavutil. Some MPlayer code uses the functionality defined as macros and static inline functions in these headers. - Architecture-specific internal files used by the above headers. These are in the subdirectories: x86/, arm/, bfin/, sh4/. - taglists.[ch], which provides the codec tables from libavformat/riff.c and two functions to access them from libavformat/utils.c. Most of the headers are copied from FFmpeg revision 19452 with only the include guard names changed. A "common.h" include in bswap.h was changed to "libavutil/common.h" as it should use the installed header. Taglists.c contains snippets from the relevant files with some changes like renamed identifiers.