summaryrefslogtreecommitdiff
path: root/libavcodec
Commit message (Collapse)AuthorAge
...
* Add SMPTE240M transfer characteristics flag.Hendrik Leppkes2012-05-03
| | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* motionpixels: Clip YUV values after applying a gradient.Alex Converse2012-05-02
| | | | | | Prevents illegal reads on truncated and malformed input. CC: libav-stable@libav.org
* jpeg: handle progressive in second field of interlaced.Ronald S. Bultje2012-05-02
| | | | | | | | Progressive data is allocated later in decode_sof(), not allocating that data leads to NULL dereferences. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* ituh263dec: Implement enough of Annex O (scalability) to fix a FPE.Michael Niedermayer2012-05-02
| | | | | Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* h263: more strictly forbid frame size changes with frame-mt.Ronald S. Bultje2012-05-02
| | | | | | | Prevents crashes because the old check was incomplete. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* h264: additional protection against unsupported size/bitdepth changes.Ronald S. Bultje2012-05-02
| | | | | | | Fixes crashes in codepaths not covered by original checks. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* tta: prevents overflows for 32bit integers in header.Ronald S. Bultje2012-05-02
| | | | | | | | This prevents sample_rate/data_length from going negative, which caused various crashes and undefined behaviour further down. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* vp8: update frame size changes on thread context switches.Ronald S. Bultje2012-05-02
| | | | | | | | | This properly synchronizes frame size changes between threads if subsequent threads abort decoding before frame size is initialized, i.e. it prevents the thread after that from ping-ponging back to the original value. Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
* snowdsp: explicitily state instruction size.Ronald S. Bultje2012-05-02
| | | | Fixes a compile error with clang at -O0.
* wmall: fix reconstructing audio with uncoded channelsKostya Shishkov2012-05-02
|
* WMAL cosmetics: fix indentationMashiat Sarker Shakkhar2012-05-02
| | | | Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
* indeo3: fix motion vector validationHendrik Leppkes2012-05-01
| | | | | | | | The index of the motion vector has to be checked before being multiplied by 2 for the array index. Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* pcm_bluray: set bits_per_raw_sample for > 16-bitHendrik Leppkes2012-05-01
| | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* twinvq: fix out of bounds array accessMans Rullgard2012-05-01
| | | | | | | | | ModeTab.fmode has only 3 elements, so indexing it with ftype in the initialier for 'size' is invalid when ftype == FT_PPC. This fixes crashes with gcc 4.8. Signed-off-by: Mans Rullgard <mans@mansr.com>
* WMAL: do not output last frame again if nothing was decoded in current packetJakub Stachowski2012-05-01
| | | | | | Reviewed-by: Mashiat Sarker Shakkhar <mashiat.sarker@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
* WMAL: do not start decoding if frame does not end in current packetMashiat Sarker Shakkhar2012-05-01
| | | | | | | This fixes decoding of frames which span more than two packets. Tested with recit24.wma. Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
* adpcm-thp: fix invalid array indexingMans Rullgard2012-05-01
| | | | | | Indexing outside array limits is invalid and breaks with gcc 4.8. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ppc: add const where needed in scalarproduct_int16_altivec()Mans Rullgard2012-05-01
| | | | Signed-off-by: Mans Rullgard <mans@mansr.com>
* ppc: remove shift parameter from scalarproduct_int16_altivec()Mans Rullgard2012-05-01
| | | | | | | The shift parameter was removed from this interface in 7e1ce6a. This updates the Altivec implementation to match. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ppc: dsputil: do unaligned block accesses correctlyMans Rullgard2012-05-01
| | | | | | | | | | | | To load unaligned vector data in the usual way, explicit vec_ld() should be used rather than dereferencing a pointer to a vector type. When the VSX extension is enabled, gcc may compile vector pointer dereferences using the VSX lxvw4x instruction instead of the lvx instruction typically used with Altivec/VMX. As the behaviour of these instructions with unaligned addresses differs, it is important that only lvx is used here. Signed-off-by: Mans Rullgard <mans@mansr.com>
* dvenc: do not call dsputil functions with stride not a multiple of 16Mans Rullgard2012-05-01
| | | | | | | | Allowing dsputil functions to assume the stride is a multiple of 16 even for smaller block sizes can simplify their implementation. This appears to be the only place this guarantee is not met. Signed-off-by: Mans Rullgard <mans@mansr.com>
* avcodec: introduce YCoCg colorspaceHendrik Leppkes2012-04-29
| | | | | | | | Non perceptual color model that aims to have an increase effectiveness in compression like the normal YCbCr while having near-lossless/lossless mapping to RGB. Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* avcodec: cosmetic cleanup on headerLuca Barbato2012-04-29
| | | | Apply coding style to the structs.
* aac sbr: align struct member by 32 byte.Ronald S. Bultje2012-04-29
| | | | | | | Required because it's used in a call to imdct_half(), which is an AVX function. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* 4xm: fix invalid array indexingMans Rullgard2012-04-29
| | | | | | Indexing outside arrays is invalid and breaks with gcc 4.8. Signed-off-by: Mans Rullgard <mans@mansr.com>
* rv34dsp: factorize a multiplication in the noround inverse transformChristophe GISQUET2012-04-28
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* rv40: perform bitwise checks in loop filterChristophe Gisquet2012-04-28
| | | | | | Down from 95 kcycles to 93 (including all called functions). Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* rv34: remove inline keyword from rv34_decode_block().Ronald S. Bultje2012-04-28
| | | | Force-inlining increases object size by 8kB and causes a 2% slowdown.
* rv40: change a logical test into a bitwise one.Christophe Gisquet2012-04-28
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* rv34: remove constant parameterChristophe Gisquet2012-04-28
| | | | | | is_block2 was always 0, so just remove it, and change accordingly the code. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* rv40: don't always do the full prev_type searchChristophe Gisquet2012-04-28
| | | | | | 120->100 cycles. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* dsputil x86: revert a test back to its previous valueChristophe GISQUET2012-04-28
| | | | | | Commit 356ee8d caused the initial inversion. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* rv34dsp x86: implement MMX2 inverse transformChristophe Gisquet2012-04-28
| | | | | | 141 cycles down to 51. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* h264: new assembly version of get_cabac for x86_64 with PICRoland Scheidegger2012-04-28
| | | | | | | | | | This adds a hand-optimized assembly version for get_cabac much like the existing one, but it works if the table offsets are RIP-relative. Compared to the non-RIP-relative version this adds 2 lea instructions and it needs one extra register. get_cabac() gets about 40% faster, for an overall speedup of about 5%. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* h264: use one table instead of several for cabac functionsRoland Scheidegger2012-04-28
| | | | | | | | | | | | | The reason is this is easier for PIC code (in particular on darwin...). Keep the old names as pointers (static in cabac_functions.h so gcc knows these are just immediate offsets) so the c code can nicely stay the same (alternatively could use offsets directly in the functions needing the tables). This should produce the same code as before with non-pic and better code (confirmed) with pic. The assembly uses the new table but still won't work for PIC case. Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* h264: (trivial) remove unneeded macro argument in x86/cabac.hRoland Scheidegger2012-04-28
| | | | Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
* libschroedingerdec: check mallocJordi Ortiz2012-04-28
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* dsputil: fix invalid array indexingMans Rullgard2012-04-26
| | | | | | | Indexing outside an array is invalid and causes errors with gcc 4.8. Signed-off-by: Mans Rullgard <mans@mansr.com>
* fft-test: add option to set cpuflag maskMans Rullgard2012-04-25
| | | | | | This can be useful for testing. Signed-off-by: Mans Rullgard <mans@mansr.com>
* vp8: armv6: fix non-armv6t2 buildMans Rullgard2012-04-25
| | | | | | | | The assembler may fail to place literal pools close enough to instructions referencing them. An explicit .ltorg directive fixes this. Signed-off-by: Mans Rullgard <mans@mansr.com>
* vp8: armv6 optimisationsMans Rullgard2012-04-25
| | | | | | | Based on patch by Ronald S. Bultje <rsbultje@gmail.com>, partially ported from libvpx. Signed-off-by: Mans Rullgard <mans@mansr.com>
* vp8: arm: separate ARMv6 functions from NEONMans Rullgard2012-04-25
| | | | | | This is a preparation for complete ARMv6 optimisations. Signed-off-by: Mans Rullgard <mans@mansr.com>
* ARM: add some compatibility macrosMans Rullgard2012-04-25
| | | | | | This adds some macros simplifying Thumb and pre-v6T2 compatibility. Signed-off-by: Mans Rullgard <mans@mansr.com>
* Remove libdirac decoder.Diego Biurrun2012-04-23
| | | | libschroedinger is the preferred way to decode Dirac video.
* ARM: allow runtime masking of CPU featuresMans Rullgard2012-04-22
| | | | | | | This allows masking CPU features with the -cpuflags avconv option which is useful for testing different optimisations without rebuilding. Signed-off-by: Mans Rullgard <mans@mansr.com>
* dsputil: remove unused functionsMans Rullgard2012-04-21
| | | | | | These functions were left unused by the lowres removal. Signed-off-by: Mans Rullgard <mans@mansr.com>
* Remove lowres video decodingMans Rullgard2012-04-21
| | | | | | | This feature is complex, of questionable utility, and slows down normal decoding. Signed-off-by: Mans Rullgard <mans@mansr.com>
* avcodec: remove AVCodecContext.dsp_maskMans Rullgard2012-04-21
| | | | | | | | This removes all references to AVCodecContext.dsp_mask and marks it for eviction at the next version bump. It has been superseded by av_set_cpu_flag_mask() which, unlike this field, works everywhere. Signed-off-by: Mans Rullgard <mans@mansr.com>
* utvideo: general cosmeticsJan Ekström2012-04-20
| | | | | | | | | General cosmetics, such as keeping lines under 80 characters, fixing a couple of typos (predition -> prediction) and a general style fix that was pointed out by Derek when I was having my sliced multithreading patch in review by him. Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
* aac: Handle HE-AACv2 when sniffing a channel order.Alex Converse2012-04-20
|