summaryrefslogtreecommitdiff
path: root/libavcodec
Commit message (Collapse)AuthorAge
* mpegvideo: Avoid 32-bit wrapping of linesize multiplicationsMartin Storsjö2013-09-04
| | | | | | | | | This makes sure that linesize * start_y doesn't overflow, so that emulated_edge_mc can get back the original value if needed. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* mjpegb: Detect changing number of planes in interlaced videoMichael Niedermayer2013-09-03
| | | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* alac: Check that the channels fit at the given offsetMartin Storsjö2013-09-03
| | | | | | | | | | | | | The code tries to decode a number of channels at the offset given by the ff_alac_channel_layout_offsets table. Even if the number of channels decoded so far doesn't exceed the total number of channels, we need to check that we actually can decode that number of channels at this offset as well. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* alac: Limit max_samples_per_frameMartin Storsjö2013-09-03
| | | | | | | | | | Otherwise buffer size calculations in allocate_buffers could overflow later, making the code think a large enough buffer actually was allocated. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org Signed-off-by: Martin Storsjö <martin@martin.st>
* cosmetics: Fix ATRAC codec name spellingDiego Biurrun2013-09-02
|
* pictordec: pass correct context to avpriv_request_sampleAnton Khirnov2013-09-02
| | | | | | | Fixes invalid reads. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* pictordec: break out of both decoding loops when y drops below 0Anton Khirnov2013-09-02
| | | | | | | | Otherwise picmemset can get called with negative y, resulting in an invalid write. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* vcr1: add sanity checksAnton Khirnov2013-09-02
| | | | | | | Fixes invalid reads with corrupted files. Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* pcm-dvd: Fix build on big endianMartin Storsjö2013-08-31
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* pcm_dvd: consolidate pieces from pcm.c and mpeg.cChristian Schmidt2013-08-31
| | | | | | | | | | | | | | | | | | | | Remove the header decoding for PCM audio from mpeg.c and the 20/24bit parts from pcm.c and merge them into a new decoder in pcm-dvd.c. The decoder has added support for samples that span multiple packets and modified 20/24bit group decoding. Both is needed to decode samples that have been generated with DVD-Lab Pro 2. The decoding of 16bit PCM and two channel 24bit is identical to before. No other samples are known to verify the correctness of the encoding this software does. The complete list of tested formats is 48kHz/16bit/2-8 channels 48kHz/24bit/2-5 channels 96kHz/16bit/2-4 channels 96kHz/24bit/2 channels Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* pcm_bluray: cosmeticsChristian Schmidt2013-08-31
|
* pcm_bluray: rename pcm-mpeg.c to pcm-bluray.cChristian Schmidt2013-08-31
| | | | | | The original idea was to collect PCM codecs that could appear in various MPEG streams in this file. Discussion in IRC lead to the conclusion that one codec per file would be better and stop the need for #ifdefs.
* x86: avcodec: Consistently structure CPU extension initializationDiego Biurrun2013-08-29
|
* x86: avcodec: Use convenience macros to check for CPU flagsDiego Biurrun2013-08-29
|
* ppc: cosmetics: Consistently format CPU flag detection invocationsDiego Biurrun2013-08-29
|
* cosmetics: Place arch initialization calls in alphabetical orderDiego Biurrun2013-08-29
|
* arm: fmtconvert: Split armv6 fmtconvert code off from vfp codeDiego Biurrun2013-08-29
|
* arm: dcadsp: Move synth filter initialization to dcadsp fileDiego Biurrun2013-08-29
|
* ppc: Add missing AltiVec cpuflag detection invocationsDiego Biurrun2013-08-29
|
* ppc: fdct: Remove vim editor settings commentDiego Biurrun2013-08-28
|
* mpegvideo: Replace arch initialization ifdeffery by standard conditionalsDiego Biurrun2013-08-28
|
* x86: rv40dsp: Move inline assembly optimizations out of YASM init sectionDiego Biurrun2013-08-28
|
* dsputil: x86: Hide arch-specific initialization detailsDiego Biurrun2013-08-28
| | | | Also give consistent names to init functions.
* ppc: Add and use convenience macro to check for AltiVec availabilityDiego Biurrun2013-08-28
|
* apedec: do not buffer decoded samples over AVPacketsRafaël Carré2013-08-28
| | | | | | | | | | | | | | | | | | | | | | | Only consume an AVPacket when all the samples have been read. When the rate of samples output is limited (by the default value of max_samples), consuming the first packet immediately will cause timing problems: - The first packet with PTS 0 will output 4608 samples and be consumed entirely - The second packet with PTS 64 will output the remaining samples (typically, a lot, that's why max_samples exist) until the decoded samples of the first packet have been exhausted, at which point the samples of the second packet will be decoded and output when av_decode_frame is called with the next packet). That means there's a PTS jump since the first packet is 'decoded' immediately, which can be seen with avplay or mplayer: the timing jumps immediately to 6.2s (which is the size of a packet). Sample: http://streams.videolan.org/issues/6348/Goldwave-MAClib.ape Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
* ac3: Return proper error codesLuca Barbato2013-08-27
|
* ac3: Clean up the error pathsLuca Barbato2013-08-27
|
* ac3: Do not clash with normal AVERRORLuca Barbato2013-08-27
| | | | | The parsing function return AVERROR and AAC_AC3_PARSE_ERROR values, make sure they are not misunderstood.
* imc: support mode 1Kostya Shishkov2013-08-26
|
* twinvq: set block align for codecs and use it in size checksKostya Shishkov2013-08-26
| | | | | | This both allows factoring out size check for both MetaSound and TwinVQ-VQF decoders and fixes the situation when there are several MetaSound frames stuffed together (that happens in 8kHz @ 8kbps MetaSound in ASF for example).
* h264_cabac: Mark functions calling decode_cabac_residual_internal as noinlineDiego Biurrun2013-08-24
| | | | | This ensures that decode_cabac_residual_internal actually does get inlined, which it otherwise does not, even though it is marked as always_inline.
* arm: h264chroma: Do not compile h264_chroma_mc* dependent on h264 decoderDiego Biurrun2013-08-23
| | | | | The functions are used by all codecs that enable the h264chroma component and the file is already compiled conditional on h264chroma being enabled.
* libfdk-aacdec: formatting cosmeticsDiego Biurrun2013-08-23
|
* vp56: Mark VP6-only optimizations as such.Diego Biurrun2013-08-23
| | | | | Most of our VP56 optimizations are VP6-only and will stay that way. So avoid compiling them for VP5-only builds.
* x86: Split DCT and FFT initialization into separate filesDiego Biurrun2013-08-21
|
* x86: h264_idct: Remove incorrect commentDiego Biurrun2013-08-21
|
* avcodec/utils: Simplify a condition that combines HAVE_NEON and ARCH_ARMDiego Biurrun2013-08-21
|
* h264_ps: Use more meaningful error valuesDiego Biurrun2013-08-20
|
* h264_ps: K&R formatting cosmeticsDiego Biurrun2013-08-20
|
* h264_ps: Drop commented-out cruftDiego Biurrun2013-08-20
|
* h264data: Move some tables to the only place they are usedDiego Biurrun2013-08-20
|
* h264data: Remove unused luma_dc_field_scan tableDiego Biurrun2013-08-20
|
* Add a libfdk-aac decoderMartin Storsjö2013-08-20
| | | | | This can be useful for decoding AAC object types that are not supported by the native AAC decoder, e.g. AAC-LD and AAC-ELD.
* avcodec: Remove some commented-out debug cruftDiego Biurrun2013-08-20
|
* dxa: fix decoding of first I-frame by separating I/P-frame decodingJanne Grunau2013-08-17
| | | | | | | 5ef7c84 broke decoding for the first keyframe due to an unnecessary check for a reference frame. CC: libav-stable@libav.org
* dxa: Make sure the reference frame existsLuca Barbato2013-08-16
| | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* h261: check the mtype indexLuca Barbato2013-08-16
| | | | | Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind CC: libav-stable@libav.org
* altivec: perform an explicit unaligned loadKostya Shishkov2013-08-16
| | | | | | | | Implicit vector loads on POWER7 hardware can use the VSX instruction set instead of classic Altivec/VMX. Let's force a VMX load in this case. Signed-off-by: Martin Storsjö <martin@martin.st>
* vp56data: Move all data tables to the .c fileDiego Biurrun2013-08-15
|
* vp56data: Move all shared enum/struct declarations to common headerDiego Biurrun2013-08-15
|