summaryrefslogtreecommitdiff
path: root/libavcodec
Commit message (Collapse)AuthorAge
...
* | Correct few "ffmpeg" typosPaul B Mahol2014-08-24
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | avcodec/xan: fix style issuePaul B Mahol2014-08-24
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | x86: hevc_mc: split differently callsChristophe Gisquet2014-08-24
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In some cases, 2 or 3 calls are performed to functions for unusual widths. Instead, perform 2 calls for different widths to split the workload. The 8+16 and 4+8 widths for respectively 8 and more than 8 bits can't be processed that way without modifications: some calls use unaligned buffers, and having branches to handle this was resulting in no micro-benchmark benefit. For block_w == 12 (around 1% of the pixels of the sequence): Before: 12758 decicycles in epel_uni, 4093 runs, 3 skips 19389 decicycles in qpel_uni, 8187 runs, 5 skips 22699 decicycles in epel_bi, 32743 runs, 25 skips 34736 decicycles in qpel_bi, 32733 runs, 35 skips After: 11929 decicycles in epel_uni, 4096 runs, 0 skips 18131 decicycles in qpel_uni, 8184 runs, 8 skips 20065 decicycles in epel_bi, 32750 runs, 18 skips 31458 decicycles in qpel_bi, 32753 runs, 15 skips Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | x86: hevc_mc: correct unneeded use of SSE4 codeChristophe Gisquet2014-08-24
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | pnmenc: use bits_per_raw_sampleChristophe Gisquet2014-08-24
| | | | | | | | | | | | This allows writing actual bitdepth in RGB48 when it isn't actually 16. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Add support for H.261 RTP payload format (RFC 4587)ThomasVolkert2014-08-24
| |
* | avcodec/tiff: Make pixel format checks tighterMichael Niedermayer2014-08-24
| | | | | | | | | | | | Fixes assertion failure with imgsrc001-lzma.tiff Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavc/tiff: add support for LZMA compressionJames Almer2014-08-24
| | | | | | | | | | | | | | | | Derived from deflate code. Requires liblzma. Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/h264_slice: More complete cleanup in h264_slice_header_init()Michael Niedermayer2014-08-23
| | | | | | | | | | | | | | Fixes null pointer dereference Fixes Ticket3873 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/h264: do proper cleanup in ff_h264_alloc_tables() in case DPB alloc ↵Michael Niedermayer2014-08-23
| | | | | | | | | | | | fails Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/imc: Fix bitstream buffer paddingMichael Niedermayer2014-08-23
| | | | | | | | | | | | Fixes buffer overread Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | h264: do not return on sidedata allocation failureChristophe Gisquet2014-08-23
| | | | | | | | | | | | | | | | Not having allocated it is not a good reason to leave the object in an undetermined state. Though a particular setting like the AV_EF_* flags could be useful to control that behaviour. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/hevc_ps: fix 1 vs. 0 typoMichael Niedermayer2014-08-22
| | | | | | | | | | Found-by: Timothy Gu <timothygu99@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | wavpackenc: reset trailer info on block encodingChristophe Gisquet2014-08-22
| | | | | | | | | | | | | | | | | | | | | | In some cases, in particular if several blocks are needed because of the channel layout (e.g. 2.1), the information used to write the trailing bits terminating the sample data was not reset. This would cause potential desync on the decoder, although decoded samples were actually mostly fine. Fixes ticket #3879.
* | wavpack: check number of channelsChristophe Gisquet2014-08-22
| | | | | | | | | | This means container and codec disagree. The codec is supposed to know better so this could be an error instead.
* | Merge commit 'dc4b2e7d33903a6b9380e8a84b22b3a20facbb08'Michael Niedermayer2014-08-22
|\| | | | | | | | | | | | | * commit 'dc4b2e7d33903a6b9380e8a84b22b3a20facbb08': rv34: use ff_mpeg_update_thread_context only when decoder is fully initialized Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * rv34: use ff_mpeg_update_thread_context only when decoder is fully initializedJanne Grunau2014-08-22
| | | | | | | | | | | | | | | | | | | | | | | | | | MpegEncContext based decoders are only fully initialized after the first ff_thread_get_buffer() call. The RV30/40 decoders may fail before a frame buffer was requested. ff_mpeg_update_thread_context() fails on half initialized MpegEncContexts. Since this can only happen before a the first frame was decoded there is no need to call ff_mpeg_update_thread_context(). Based on patches by John Stebbins and tested by John Stebbins. CC: libav-stable@libav.org
| * mpeg12enc: Add missing #include for PICT_FRAMEDiego Biurrun2014-08-21
| |
| * error_resilience: Drop asserts from guess_mv()Diego Biurrun2014-08-21
| | | | | | | | | | The asserts check struct members that are not referenced in guess_mv() and one of them fails to compile.
| * pcm: Drop av_unused attribute from variable that is always usedDiego Biurrun2014-08-19
| |
| * pcm: Drop unused variable from DECODE_PLANAR macroDiego Biurrun2014-08-19
| |
| * vc1: Add missing parentheses to conditions in vc1_decode_b_mb_intfr()Diego Biurrun2014-08-19
| |
* | x86: hevcdsp: use compilation-time-fixed constantChristophe Gisquet2014-08-22
| | | | | | | | | | | | | | The stride for some buffers is known. Reviewed-by: Mickaël Raulet <mraulet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevcdsp: remove more instances of compile-time-fixed parametersChristophe Gisquet2014-08-22
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevcdsp: remove compilation-time-fixed parameterChristophe Gisquet2014-08-22
| | | | | | | | | | | | | | The dststride parameter is always MAX_PB_SIZE. Reviewed-by: Mickaël Raulet <mraulet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc: move MAX_PB_SIZE declarationChristophe Gisquet2014-08-22
| | | | | | | | | | Reviewed-by: Mickaël Raulet <mraulet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | x86: hevc_mc: assume 2nd source stride is 64Christophe Gisquet2014-08-22
| | | | | | | | | | Reviewed-by: Mickaël Raulet <mraulet@gmail.com Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | wavpackenc: make assert more thoroughChristophe Gisquet2014-08-22
| | | | | | | | | | | | | | It was only validating that normal data wasn't filling the buffer. However, extra data may be written afterwards. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | wavpackenc: fix number of samples per blockChristophe Gisquet2014-08-22
| | | | | | | | | | | | | | | | | | | | Currently, the encoder will try to reduce it down to 150000, but the decoder will complain starting at 131072 (WV_MAX_SAMPLES). Therefore, change the loop limit. Fixes ticket #3881. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/fic: Check if a frame is available before using itMichael Niedermayer2014-08-22
| | | | | | | | | | | | | | Fixes null pointer dereference Fixes: ficvf.avi Found-by: Piotr Bandurski <ami_stuff@o2.pl> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec: fix aac/ac3 parser bitstream buffer sizeMichael Niedermayer2014-08-22
| | | | | | | | | | | | | | | | | | | | | | Buffers containing copies of the AAC and AC3 header bits were not padded before parsing, violating init_get_bits() buffer padding requirement, leading to potential buffer read overflows. This change adds FF_INPUT_BUFFER_PADDING_SIZE bytes to the bit buffer for parsing the header in each of aac_parser.c and ac3_parser.c. Based on patch by: Matt Wolenetz <wolenetz@chromium.org> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | dpxenc: fix padding in encode_gbrp12Christophe Gisquet2014-08-21
| | | | | | | | | | | | | | It was added per pixel instead of per line. Reviewed-by: James Darnley <james.darnley@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | hevc_ps: check overflow and test alternate syntaxChristophe Gisquet2014-08-21
| | | | | | | | | | | | | | | | | | | | | | Some streams were found to have what appeared to be truncated SPS. Their syntax seem to be valid at least until the end of the VUI, so try that syntax if the parsing would overflow the SPS in the conforming syntax. Fixes ticket #3872. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | x86/hevc_res_add: refactor ff_hevc_transform_add{16,32}_8James Almer2014-08-21
| | | | | | | | | | | | | | | | | | | | | | * Reduced xmm register count to 7 (As such they are now enabled for x86_32). * Removed four movdqa (affects the sse2 version only). * pxor is now used to clear m0 only once. ~5% faster. Reviewed-by: Christophe Gisquet <christophe.gisquet@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* | wavpackenc: assert on too small bufferChristophe Gisquet2014-08-21
| | | | | | | | | | | | | | | | bytestream2_* will not cause buffer overflow, but in that case, this means the allocation would be incorrect and the encoded result invalid. Therefore, assert no overflow occurred. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | imc: reject files with unfathomable sampling ratesChristophe Gisquet2014-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | With huge sampling rates, the table derivation method does not converge fast enough. While fixing it using e.g. Newton-Rhapson-like methods (the curve is nicely convex) is possible, it is much simpler to reject these cases. The value of 96000 was arbitrarily chosen as a realistic value, though 1000000 would still work and converge. Fixes ticket #3868. Suggested-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | huffyuvdec: fix old (v1) rgbaChristophe Gisquet2014-08-21
| | | | | | | | | | | | | | | | Commit deadcf5e misplaced a hunk. Fixes ticket #3877. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | x86/hecv_res_add: add ff_hevc_transform_add{8,16,32}_8_avxJames Almer2014-08-20
| | | | | | | | | | | | | | | | ~15% faster than sse2 Reviewed-by: Mickaël Raulet <mraulet@gmail.com> Reviewed-by: Christophe Gisquet <christophe.gisquet@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* | avcodec/hevc_ps: do cleanup in case of unsupported bit depthMichael Niedermayer2014-08-20
| | | | | | | | | | | | | | | | | | Fixes memleak Fixes CID1231989 Reviewed-by: Timothy Gu <timothygu99@gmail.com> Reviewed-by: Mickaël Raulet <mraulet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | x86/hevc_res_add: fix register count in hevc_transform_add{16,32}_10_avx2James Almer2014-08-19
| | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com>
* | x86: hevc: adding transform_addPierre Edouard Lepere2014-08-20
| | | | | | | | | | | | Reviewed-by: James Almer <jamrial@gmail.com> Approved-by: Ronald S. Bultje Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | lavc/tiff: add support for YUV deflateJames Almer2014-08-19
| | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com>
* | lavc/tiff: move unpack_yuv() above the deflate functionsJames Almer2014-08-19
| | | | | | | | Signed-off-by: James Almer <jamrial@gmail.com>
* | avcodec/adpcm: Fix incorrect AVSampleFormat for sample_fmts_s16pJon Morley2014-08-19
| | | | | | | | | | | | The AVSampleFormat list of sample_fmts_s16p is missing the trailing "P" for planar formats. AV_SAMPLE_FMT_S16 vs AV_SAMPLE_FMT_S16P Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/tiff: Check that pix_fmt is a yuv variant for TIFF_PHOTOMETRIC_YCBCRMichael Niedermayer2014-08-19
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/tiff: do not use photometric to detect pix_fmtMichael Niedermayer2014-08-19
| | | | | | | | | | | | | | | | They should match but they do not always Fixes assertion failure no testcase with unmodified source available Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | wavpackenc: proper buffer allocationChristophe Gisquet2014-08-19
| | | | | | | | | | | | | | | | | | | | | | The allocation didn't account for headers, that can be easily 79 bytes. As a result, buffers allocated for a few samples (e.g. 5 in the original bug) could be undersized. Fixed ticket #2881. Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | wavpack: report if there is no bits leftChristophe Gisquet2014-08-19
| | | | | | | | | | Reviewed-by: Paul B Mahol <onemda@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/pafaudio: use paf.h insteadPaul B Mahol2014-08-19
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>
* | avcodec/pafvideo: remove unused headerPaul B Mahol2014-08-19
| | | | | | | | Signed-off-by: Paul B Mahol <onemda@gmail.com>