summaryrefslogtreecommitdiff
path: root/libavcodec
Commit message (Collapse)AuthorAge
* x86: h264_intrapred: use newly introduced SPLAT* and PSHUFLW macrosDiego Biurrun2012-07-05
|
* x86inc: add SPLATB_LOAD, SPLATB_REG, PSHUFLW macrosLoren Merritt2012-07-05
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* x86: h264_intrapred: port to cpuflag macrosDiego Biurrun2012-07-05
|
* h264: use templates to avoid excessive inliningMans Rullgard2012-07-05
| | | | | | | | | | | | | Instead of inlining everything into ff_h264_hl_decode_mb(), use explicit templating to create versions of the called functions with constant parameters filled in. This greatly speeds up compilation of h264.c and reduces the code size without any measurable impact on performance. Compilation time for h264.c on an i7 goes from 30s to 5.5s. Code size is reduced by 430kB. Signed-off-by: Mans Rullgard <mans@mansr.com>
* mpegvideo: Don't use ff_mspel_motion() for vc1Michael Niedermayer2012-07-05
| | | | | | | | | | Using ff_mspel_motion assumes that s (a MpegEncContext poiinter) really is a Wmv2Context. This fixes crashes in error resilience on vc1/wmv3 videos. CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* vp8: Add ifdef guards around the sse2 loopfilter in the sse2slow branch tooMartin Storsjö2012-07-05
| | | | | | This was missed in the the previous commit in 70a1c800. Signed-off-by: Martin Storsjö <martin@martin.st>
* vp8: loopfilter >=sse2 functions need aligned stack on x86-32.Martin Storsjö2012-07-04
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* amr: remove shift out of the AMR_BIT() macro.Ronald S. Bultje2012-07-04
| | | | | | MSVC doesn't like the offsetof(..) >> 1 construct, it interprets it as a non-literal, thus causing use of this in static tables to fail compilation.
* dsputilenc: group yasm and inline asm function pointer assignment.Ronald S. Bultje2012-07-04
|
* Clarify Doxygen comment for FF_API_* #defines.Diego Biurrun2012-07-04
|
* mpegvideo: remove VLAsRonald S. Bultje2012-07-04
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* flacdec: move lpc filter to flacdspMans Rullgard2012-07-04
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* flacdec: split off channel decorrelation as flacdspMans Rullgard2012-07-04
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* flacdec: factor out code setting avctx->sample_fmtMans Rullgard2012-07-04
|
* flac: make FLAC_CHMODE_* constants consecutiveMans Rullgard2012-07-04
|
* flacdec: allocate sample buffers with av_mallocMans Rullgard2012-07-04
| | | | | | | | | The buffers are only allocated once, although it can happen from any of a few different places, so there is no need to use realloc. Using av_malloc() ensures they are aligned suitably for SIMD optimisations. Signed-off-by: Mans Rullgard <mans@mansr.com>
* flacdec: remove curr_bps from FLACContextMans Rullgard2012-07-04
| | | | This value does not need to be persistent across calls.
* flacenc: add option for forcing stereo decorrelation modeMans Rullgard2012-07-04
| | | | | | This is mainly useful for testing. Signed-off-by: Mans Rullgard <mans@mansr.com>
* anm: fix a few Doxygen commentsDiego Biurrun2012-07-03
|
* misc typo and wording fixesDiego Biurrun2012-07-03
|
* snow: remove a VLA used for edge emulationRonald S. Bultje2012-07-03
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* snow: remove the runs[] VLA.Ronald S. Bultje2012-07-03
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* snow: Check mallocs at initMartin Storsjö2012-07-03
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* flacdec: remove redundant setting of avctx->sample_fmtMans Rullgard2012-07-02
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* snow: remove VLA in mc_block()Mans Rullgard2012-07-02
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* snow: remove a VLA.Ronald S. Bultje2012-07-02
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* MS ATC Screen (aka MSS3) decoderKostya Shishkov2012-07-02
|
* roqvideo: Remove a totally unused dspcontextMartin Storsjö2012-07-01
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* smacker: remove some unused codeMans Rullgard2012-07-01
| | | | | | | This removes some code apparently left over from vlc reader debugging. Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsicin: remove dead assignmentMans Rullgard2012-07-01
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* aacdec: remove dead assignmentMans Rullgard2012-07-01
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* rl2: remove dead assignmentMans Rullgard2012-07-01
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* proresenc: make a variable local to the loop where it is usedMans Rullgard2012-07-01
| | | | | | | This moves the mbs_per_slice declaration inside the only loop where it is used. Fixes a dead assignment. Signed-off-by: Mans Rullgard <mans@mansr.com>
* alsdec: remove dead assignmentsMans Rullgard2012-07-01
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* wma: Lower the maximum number of channels to 2Martin Storsjö2012-07-01
| | | | | | | | | | | ff_wma_init is used only by wmadec and wmaenc, and neither of them can handle more than 2 channels. This fixes crashes with invalid files. Based on patch by Piotr Bandurski and Michael Niedermayer. Signed-off-by: Martin Storsjö <martin@martin.st>
* ARM: generate position independent code to access data symbolsMans Rullgard2012-07-01
| | | | | | | | | | | This creates proper position independent code when accessing data symbols if CONFIG_PIC is set. References to external symbols should now use the movrelx macro. Some additional code changes are required since this macro may need a register to hold the GOT pointer. Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsputilenc_mmx: split assignment of ff_sse16_sse2 to SSE2 section.Ronald S. Bultje2012-06-30
|
* dnxhdenc: add space between function argument type and comment.Ronald S. Bultje2012-06-30
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* x86: fmtconvert: add special asm for float_to_int16_interleave_misc_*Ronald S. Bultje2012-06-30
| | | | | | This gets rid of a variable-length array and a for loop in C code. Signed-off-by: Martin Storsjö <martin@martin.st>
* x86: vc1: fix and enable optimised loop filterMans Rullgard2012-06-30
| | | | | | | | | | | | | | | | | | | | | | The problem is that the ssse3 psign instruction does the wrong thing here. Commit ea60dfe incorrectly removed a macro emulating this instruction for pre-ssse3 code. However, the emulation is incorrect, and the code relies on the behaviour of the macro. Specifically, the psign sets destination elements to zero where the corresponding source element is zero, whereas the emulation only negates destination elements where the source is negative. Furthermore, the PSIGNW_MMX macro in x86util.asm is totally bogus, which is why the original VC-1 code had an additional right shift when using it. Since the psign instruction cannot be used here, skip all the macro hell and use the working instruction sequence directly. None of this was noticed due a stray return statement in ff_vc1dsp_init_mmx() which meant that only the mmx version of the loop filter was ever used (before being removed in ea60dfe). Signed-off-by: Mans Rullgard <mans@mansr.com>
* mss1: validate number of changeable palette entriesKostya Shishkov2012-06-27
|
* mss1: report palette changed when some additional colours were decodedKostya Shishkov2012-06-27
|
* x86: fft: replace call to memcpy by a loopChristophe Gisquet2012-06-27
| | | | | | | | | The function call was a mess to handle, and memcpy cannot make the assumptions we do in the new code. Tested on an IMC sample: 430c -> 370c. Signed-off-by: Mans Rullgard <mans@mansr.com>
* dxva2: include dxva.h if foundRonald S. Bultje2012-06-27
| | | | | | | | Apparently, some build environments require dxva.h even for dxva2, while others lack this header entirely. Including it conditionally allows building in both cases. Signed-off-by: Martin Storsjö <martin@martin.st>
* dxva2_h264: fix signaling of mbaff framesHendrik Leppkes2012-06-26
| | | | | | | The MBAFF flag may only be signaled if we're actually dealing with a full frame, and not singular fields, as it can happen in mixed content. Signed-off-by: Martin Storsjö <martin@martin.st>
* x86: fft: elf64: fix PIC buildMans Rullgard2012-06-25
| | | | | | | In a 64-bit PIC build, external functions must be called through the PLT. Signed-off-by: Mans Rullgard <mans@mansr.com>
* x86: fft: win64: fix stack alignment for memcpy() callMans Rullgard2012-06-25
|
* x86: fft: convert sse inline asm to yasmMans Rullgard2012-06-25
|
* x86: place some inline asm under #if HAVE_INLINE_ASMRonald S. Bultje2012-06-25
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* h264: use asm cabac reader under a generic conditionMans Rullgard2012-06-23
| | | | | | | | This removes a dependency on implementation details from generic code and allows easy addition of the equivalent optimisation for other architectures than x86. Signed-off-by: Mans Rullgard <mans@mansr.com>