summaryrefslogtreecommitdiff
path: root/libavcodec
Commit message (Collapse)AuthorAge
...
* h264: prevent two matching fields from being both a short/long ref combinationAnton Khirnov2014-01-18
| | | | | | | Fixes possible access to freed memory. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: do not call field_end if we do not have a current pictureAnton Khirnov2014-01-18
| | | | | | | Fixes invalid reads. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: limit allowed pred modes in ff_h264_check_intra_pred_mode() to 3Anton Khirnov2014-01-18
| | | | | | | | | | Higher modes are not allowed for 16x16/chroma, which is what this function is used for. Otherwise this function would return 0 (vertical prediction) for invalid higher modes, which could result in invalid reads. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: reset first_field if frame_start() fails for missing refsAnton Khirnov2014-01-18
| | | | | | | | | | In this case we may not have a current frame, while first_field being set implies we do. Fixes invalid reads. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* x86: dsputil: Simplify xvmc deprecation conditionalDiego Biurrun2014-01-15
|
* build: Add separate hidden config option for the intrax8 codeDiego Biurrun2014-01-15
| | | | This allows for slightly cleaner dependency specification.
* aarch64: port neon clobber test from armJanne Grunau2014-01-15
|
* aarch64: h264 (bi)weight NEON optimizationsJanne Grunau2014-01-15
| | | | Ported from ARMv7 NEON.
* aarch64: h264 loop filter NEON optimizationsJanne Grunau2014-01-15
| | | | Ported from ARMv7 NEON.
* aarch64: hpeldsp NEON optimizationsJanne Grunau2014-01-15
| | | | Ported from ARMv7 NEON.
* aarch64: h264 qpel NEON optimizationsJanne Grunau2014-01-15
| | | | Ported from ARMv7 NEON.
* aarch64: h264 idct NEON assembler optimizationsJanne Grunau2014-01-15
| | | | Ported from ARMv7 NEON.
* aarch64: h264 chroma motion compensation NEON optimizationsJanne Grunau2014-01-15
| | | | | Since RV40 and VC-1 use almost the same algorithm so optimizations for those two decoders are easy to do and included.
* dct-test: test ff_simple_idct_neon only on ARM for nowJanne Grunau2014-01-15
| | | | Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* cabac: remove leftovers from the cabac encoderJanne Grunau2014-01-14
| | | | | | The cabac encoder was only used by the removed cabac test. Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* x86: Consistently use cpu flag detection macros in places that still miss itDiego Biurrun2014-01-14
|
* arm: Use full filenames as multiple inclusion guardsDiego Biurrun2014-01-14
|
* vc1: Enable the interlaced B-frame codepath.Tim Walker2014-01-13
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* vc1: Add avg_no_rnd_vc1_chroma_mc4_c()Michael Niedermayer2014-01-13
| | | | | | Needed for proper interlaced support. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* vc1: Factorize out chroma MCLuca Barbato2014-01-13
|
* vc1dsp: K&R formatting cosmeticsLuca Barbato2014-01-12
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* arm: Add an option for making sure NEON registers aren't clobberedMartin Storsjö2014-01-11
| | | | | | This is pretty much based on the same test for XMM registers. Signed-off-by: Martin Storsjö <martin@martin.st>
* ATRAC3+ decoderMaxim Polijakowski2014-01-09
| | | | | | Cleanup by Diego Biurrun. Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
* x86: hpeldsp: Add missing av_cold attribute to init functionDiego Biurrun2014-01-09
|
* x86: avcodec: Add a bunch of missing #includes for av_coldDiego Biurrun2014-01-09
|
* ac3tab.h: #include the correct headersDiego Biurrun2014-01-09
|
* mjpegdec: apply flipping after decoding, not beforeAnton Khirnov2014-01-09
| | | | This is simpler and removes a silly restriction on edges being present.
* hevc: fix decoding of one PU wide filesGuillaume Martres2014-01-09
| | | | | | | For those the block size may be larger than the source linesize (if the edges are not allocated). Signed-off-by: Anton Khirnov <anton@khirnov.net>
* vp9: drop support for real (non-emulated) edgesAnton Khirnov2014-01-09
| | | | | | They are not measurably faster on x86, they might be somewhat faster on other platforms due to missing emu edge SIMD, but the gain is not large enough to justify the added complexity.
* vp8: drop support for real (non-emulated) edgesAnton Khirnov2014-01-09
| | | | | | They are not measurably faster on x86, they might be somewhat faster on other platforms due to missing emu edge SIMD, but the gain is not large enough to justify the added complexity.
* mpegvideo: drop support for real (non-emulated) edgesAnton Khirnov2014-01-09
| | | | | | | Several decoders disable those anyway and they are not measurably faster on x86. They might be somewhat faster on other platforms due to missing emu edge SIMD, but the gain is not large enough (and those decoders relevant enough) to justify the added complexity.
* arm: Add a missing # as prefix for an immediate constantMartin Storsjö2014-01-07
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* arm: Allow overriding the alignment set in the function macroMartin Storsjö2014-01-07
| | | | | | | | | | | | | | | The function macro always sets .align 2 before declaring the function label (since 5c5e1ea3) and always sets the section to .text (since 278caa6a). The .align 5 before certain functions, added in fc252eba, were added before .text and .align were added to the function macro and thus became useless/unused when the function macro got them. This restores the original intention, to align the loop entry points. Signed-off-by: Martin Storsjö <martin@martin.st>
* arm: Remove a leftover define for the pld instructionMartin Storsjö2014-01-07
| | | | | | | This file no longer uses the pld instruction at all, all such uses have been split into hpeldsp_arm.S. Signed-off-by: Martin Storsjö <martin@martin.st>
* arm: cosmetics: Reindent the h264dsp neon init functionMartin Storsjö2014-01-07
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* Rename CONFIG_FFT_FLOAT ---> FFT_FLOATDiego Biurrun2014-01-06
| | | | | The define does not originate from configure, so it should not have a name that is CONFIG_-prefixed.
* libopusenc: Change default frame duration to 20 msPaul B Mahol2014-01-06
| | | | | | | 20 ms is the default in the libopus encoder, and gives better quality than 10 ms. Signed-off-by: Martin Storsjö <martin@martin.st>
* pthread_frame: unref decoded frames on failureAnton Khirnov2014-01-06
| | | | | | | This is similar to what the non-threaded code already does. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: do not use 422 functions for monochromeAnton Khirnov2014-01-06
| | | | | | | Fixes invalid memory access. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: check that execute_decode_slices() is not called too many timesAnton Khirnov2014-01-06
| | | | | | | Fixes invalid reads. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: reject mismatching luma/chroma bit depths during sps parsingAnton Khirnov2014-01-06
| | | | | | | | | | There is no point in delaying the check and it avoids bugs with a half-initialized context. Fixes invalid reads. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* h264: rebuild the default ref list if the reference count changesAnton Khirnov2014-01-06
| | | | | | | Fixes possible access to freed memory. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* cavsdec: check ff_get_buffer() return valueAnton Khirnov2014-01-06
| | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC:libav-stable@libav.org
* lavc: do not leak the internal frame if opening the codec failsAnton Khirnov2014-01-06
|
* lavc: add 422/444 YUV with alpha to align_dimensions()Anton Khirnov2014-01-06
| | | | Aligns frame dimensions to 16, which fixes potential invalid writes.
* lagarith: do not call simd functions on unaligned linesKostya Shishkov2014-01-06
| | | | | | | | | | They end up overwriting past the line end. Partially based on a patch by Michael Niedermayer <michaelni@gmx.at> Bug-Id: vlc/9700 Signed-off-by: Luca Barbato <lu_zero@gentoo.org> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* sgidec: fix buffer size check in expand_rle_row()Anton Khirnov2014-01-06
| | | | | | | Right now it will spuriously fail if the linesize is exactly equal to the data width. CC:libav-stable@libav.org
* kgv1dec: replace forcing EMU_EDGE by a copyAnton Khirnov2014-01-06
| | | | | | | | | | | The decoder currently sets CODEC_FLAG_EMU_EDGE and relies on get_buffer2() to always provide buffers with linesize == 2 * width. This is wrong, since we place no such restriction on get_buffer2() implementations. Fix this by decoding into internal buffers and copying them to output frames. Since this is a very obscure decoder, the performance hit should not be an issue.
* 4xm: replace forcing EMU_EDGE by a copyAnton Khirnov2014-01-06
| | | | | | | | | | | The decoder currently sets CODEC_FLAG_EMU_EDGE and relies on get_buffer2() to always provide buffers with linesize == 2 * width. This is wrong, since we place no such restriction on get_buffer2() implementations. Fix this by decoding into internal buffers and copying them to output frames. Since this is a very obscure decoder, the performance hit should not be an issue.
* 4xm: return a proper error code.Anton Khirnov2014-01-06
|