summaryrefslogtreecommitdiff
path: root/libavcodec
Commit message (Collapse)AuthorAge
* floatdsp: move scalarproduct_float from dsputil to avfloatdsp.Ronald S. Bultje2013-01-22
| | | | This makes the aac decoder and all voice codecs independent of dsputil.
* floatdsp: move butterflies_float from dsputil to avfloatdsp.Ronald S. Bultje2013-01-22
| | | | | This makes wmadec/enc, twinvq and mpegaudiodec (i.e. mp2/mp3) independent of dsputil.
* floatdsp: move vector_fmul_reverse from dsputil to avfloatdsp.Ronald S. Bultje2013-01-22
| | | | | | Now, nellymoserenc and aacenc no longer depends on dsputil. Independent of this patch, wmaprodec also does not depend on dsputil, so I removed it from there also.
* floatdsp: move vector_fmul_add from dsputil to avfloatdsp.Ronald S. Bultje2013-01-22
|
* proresdec: support mixed interlaced/non-interlaced contentMichael Smith2013-01-22
| | | | | | Set interlaced to false if we don't have an interlaced frame Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* vp3/5: move put_no_rnd_pixels_l2 from dsputil to VP3DSPContext.Ronald S. Bultje2013-01-21
| | | | | The function is only used in VP3 and VP5, so no need to have it in DSPContext.
* x86: ac3: Fix HAVE_MMXEXT condition to only refer to external assemblyDiego Biurrun2013-01-21
| | | | CC: libav-stable@libav.org
* Revert "fate: Use wmv2 IDCT for wmv2 tests"Luca Barbato2013-01-21
| | | | This reverts commit ce378f0dd0c4e5350b3280e6b3e8d6b46fe4b0a3.
* get_bits/put_bits: K&R formatting cosmeticsDiego Biurrun2013-01-21
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* dsputilenc: x86: Convert pixel inline asm to yasmDaniel Kang2013-01-21
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* libgsm: detect libgsm header pathBrad Smith2013-01-21
| | | | | | | Libgsm header can reside either in the base include dir or in the gsm subdir. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* fate: Use wmv2 IDCT for wmv2 testsRonald S. Bultje2013-01-21
|
* vorbisdsp: change block_size type from int to intptr_t.Ronald S. Bultje2013-01-20
| | | | This saves one instruction in the x86-64 assembly.
* lavc: put FF_IDCT_{VP3,H264,CAVS,BINK,EA,WMV2} under FF_API_IDCT.Ronald S. Bultje2013-01-20
| | | | | | This allows us to get rid of them on the next major bump. All of the above are functionally irrelevant, and most of them are unused, except the vp3 one, which is used wrongly in the bfin arch optimizations.
* wmv2: move IDCT to its own DSP context.Ronald S. Bultje2013-01-20
| | | | | | | | | | | This allows us to remove FF_IDCT_WMV2, which serves no practical purpose other than to be able to select the WMV2 IDCT for MPEG (or vice versa) and get corrupt output. Fate tests for all wmv2-related tests change, because (for some obscure reason) they forced use of the MPEG IDCT. You would get the same changes previously by not using -idct simple in the fate test (or replacing it with -idct auto).
* dsputil: remove butterflies_float_interleave.Ronald S. Bultje2013-01-20
| | | | The function is unused.
* ac3dec: fix non-optimal dithering of zero bit mantissasMathias Rauen2013-01-20
| | | | | | Use a noise range of -0.707 to 0.707 instead of -0.5 to 0.5 Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
* ppc: vorbisdsp: Drop some unnecessary #includesDiego Biurrun2013-01-20
| | | | Also fixes compilation with AltiVec disabled.
* ppc: Include string.h for memsetMartin Storsjö2013-01-20
| | | | | | | This fixes build failures on ppc machines with a compiler that supports -Werror=implicit-function-declaration. Signed-off-by: Martin Storsjö <martin@martin.st>
* videodsp_armv5te: remove #if HAVE_ARMV5TE_EXTERNALJanne Grunau2013-01-20
| | | | | | | | | | | libavutil/arm/asm.S sets '.arch' depending on HAVE_ARMV5TE so that assembling armv5te code will always succeed even if the default -march flag does not support it. HAVE_ARMV5TE_EXTERNAL tests assembling code with the default arch. Fixes the missing symbol ff_prefetch_arm with --cpu= not including armv5te. CC: libav-stable@libav.org
* dsputil: drop non-compliant "fast" qpel mc functionsMans Rullgard2013-01-20
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* get_bits: change the failure condition in init_get_bitsLuca Barbato2013-01-20
| | | | | | | Too much code relies in having init_get_bits fed with a valid buffer and set its dimension to 0. Check for NULL buffer instead.
* Remove put_no_rnd_pixels_l2 function pointer for w=16 from dsputil.Ronald S. Bultje2013-01-19
| | | | The function is never used.
* Move vorbis_inverse_coupling from dsputil to vorbisdspcontext.Ronald S. Bultje2013-01-19
| | | | | Conveniently (together with Justin's earlier patches), this makes our vorbis decoder entirely independent of dsputil.
* vp3: integrate clear_blocks with idct of previous block.Ronald S. Bultje2013-01-19
| | | | | | | | | This is identical to what e.g. vp8 does, and prevents the function call overhead (plus dependency on dsputil for this particular function). Arm asm updated by Janne Grunau <janne-libav@jannau.net>. Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* mpegvideo: fix loop condition in draw_line()Xi Wang2013-01-19
| | | | | | | | | | | The loop condition `x = ex' is incorrect. It should be `x <= ex'. This bug was introduced in commit c65dfac4 "mpegvideo.c: K&R formatting and cosmetics." CC:libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* dvdsubdec: parse the size from the extradataClément Bœsch2013-01-19
| | | | | Signed-off-by: Alexandra Khirnova <alexandra.khirnova@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* x86: dsputil: Drop some unused macro definitionsDiego Biurrun2013-01-18
|
* h264: avoid pointless copying of ref listsAnton Khirnov2013-01-18
| | | | | | | | ref_list is constructed from other fields per slice when needed, so do not copy it for both frame and slice threading. default_ref_list is constructed per frame and still needs to be copied to per-slice contexts for slice threading, but a copy is not needed for frame threading.
* rv30: fix masking in rv30_loop_filter()Xi Wang2013-01-17
| | | | | | | | | | | The mask `x && (1 << y)' is incorrect and always yields true. The correct form should be `x & (1 << y)'. CC: libav-stable@libav.org Signed-off-by: Xi Wang <xi.wang@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* lavc: support ZenoXVID custom tagLuca Barbato2013-01-17
| | | | | Looks like this kind of samples are produced by certain Russian equipment.
* theora: Skip zero-sized headersMartin Storsjö2013-01-17
| | | | | | | | | | | | | This fixes a regression since d9cf5f51 with theora over RTP (possibly with other variants of theora as well). In theora over RTP, the second of the 3 headers turns out to be 0 bytes long, which prior to d9cf5f51 worked just fine. After d9cf5f51, reading from the bitstream reader fails (since the reader wasn't initialized but returned an error if initialized with 0 bits). CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* lavc: Move vector_fmul_window to AVFloatDSPContextJustin Ruggles2013-01-16
| | | | Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* h264: add 3 pixels below for subpixel filter wait positionRonald S. Bultje2013-01-15
| | | | | | | | | | | | | | | | | | | If the motion vector is at a subpixel position, we need 3 pixels below the motion vector's wholepel position available, not 2, since the MC filter is a sixtap filter for the hpel position, and then a bilin filter for the qpel position. This patch fixes highly irreproducible (0.1%) fate failures in frame 2 and 4 of h264-conformance-cama2_vtc_b (e.g. first P-frame, first field, last line of MB x=40,y=2 and second field and last lines of MBs x=39-40, y=3). These used pre-loopfilter instead of post-loopfilter data because the await_progress() waited for one line too little in that field, and the motion vector of these particular MBs happened to align exactly to a position where that demonstrates the bug. CC: libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* dvdsubdec: Support palette in mkvJoakim Plate2013-01-15
| | | | | | | Matroska stores palette information as plain text in extradata. Signed-off-by: Alexandra Khirnova <alexandra.khirnova@gmail.com> Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* x86: Add PAVGB macro to abstract pavgb/pavgusb instruction via cpuflagsDiego Biurrun2013-01-15
|
* rv34_parser: Adjust #if for disabling individual parsersDiego Biurrun2013-01-15
| | | | As CONFIG_ values are always defined, they have to be checked via #if.
* libx264: use the library specific default rc_initial_buffer_occupancyLuca Barbato2013-01-15
| | | | | | | | By default libav sets it to 3/4 while x264 sets it to 9/10. CC: libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* lavc: set the default rc_initial_buffer_occupancyLuca Barbato2013-01-15
| | | | | | | | | | | rc_buffer_size is not set before. Solve the initial the rate control underflow issue reported in bug 222. CC: libav-stable@libav.org Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* x86: ABS2: port to cpuflagsDiego Biurrun2013-01-14
|
* vdpau: Remove av_unused attribute from function declarationRémi Denis-Courmont2013-01-14
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* h264: fix ff_generate_sliding_window_mmcos() prototype.Anton Khirnov2013-01-14
| | | | | | | It's been returning an error value since bad446e251405dc250c3cbee199072e083a1e4b9 Also check for the errors it returns.
* libtheoraenc: fix granularity of video qualityMaximilian Seesslen2013-01-14
| | | | | | | | The floating point version of av_clip has to be used when converting the quality level. Signed-off-by: Maximilian Seesslen <mes@seesslen.net> Signed-off-by: Martin Storsjö <martin@martin.st>
* h264: don't clobber mmco opcode tables for non-first slice headers.Ronald S. Bultje2013-01-14
| | | | | | | | | | | | | | | | | | | | | Clobbering these tables will temporarily clobber the template used as a basis for other threads to start decoding from. If the other decoding thread updates from the template right at that moment, subsequent threads will get invalid (or, usually, none at all) mmco tables. This leads to invalid reference lists and subsequent decode failures. Therefore, instead, decode the mmco tables only for the first slice in a field or frame. For other slices, decode the bits and ensure they are identical to the mmco tables in the first slice, but don't ever clobber the context state. This prevents other threads from using a clobbered/invalid template as starting point for decoding, and thus fixes decoding in these cases. This fixes occasional (~1%) failures of h264-conformance-mr1_bt_a with frame-multithreading enabled. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* libvpx: make vp8 and vp9 selectableLuca Barbato2013-01-14
| | | | Support older libvpx versions.
* libvpx: support vp9Luca Barbato2013-01-14
| | | | This feature is experimental use at your risk
* mkv: support vp9 tagTom Finegan2013-01-14
|
* build: Remove stray Makefile entry for non-existent VCR1 encoderDiego Biurrun2013-01-14
|
* svq1enc: Fix assignments in if()Michael Niedermayer2013-01-14
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* lavc: Fix assignments in if() when calling ff_af_queue_addMichael Niedermayer2013-01-14
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>