summaryrefslogtreecommitdiff
path: root/libavcodec
Commit message (Collapse)AuthorAge
* libutvideoenc: Add support for the new BT.709 FourCCs for YCbCrJan Ekström2014-03-03
| | | | | | | | | | | | With cli usage the decoder might have not set the colorspace during encoder init, manual colorspace override might be needed in such cases. Signed-off-by: Anton Khirnov <anton@khirnov.net> This applies commit 5de64bb3 (the source of the above commit message) to libutvideoenc as well. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/hevcpred_template: also initialize top[-1] for constrained intra ↵Michael Niedermayer2014-03-02
| | | | | | | | | prediction Fixes out of array read Fixes: 387713a12dc5cfa27fcb4178084ce1ea-asan_stack-oob_131176a_1182_cov_3861068719_CAINIT_C_SHARP_3.bit Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/g2meet: also reset local got_header when reseting the context got_headerMichael Niedermayer2014-03-02
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/g2meet: fix error returnsMichael Niedermayer2014-03-02
| | | | | | | | | | Fixes out of array accesses This should not affect any release Fixes: 8ab69af9e5a7a7e20fe04cdd25c0d6e7-asan_heap-oob_e72b82_5505_cov_2278389485_g2m4.wmv Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* x86/synth_filter: Revert the switch to float ops with SSE2James Almer2014-03-02
| | | | | | | | | This reverts the changes 64672098361361cd15d37e36f747ab44de5b80ca and 68c3ed936a76c3ff7738f602fa90237ac7e3ce08 did to the SSE2 version, which generated a hit of about 5 cycles. Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* x86/synth_filter: add synth_filter_avxJames Almer2014-03-02
| | | | | | | | | Sandy Bridge Win64: 180 cycles on ff_synth_filter_inner_sse2 150 cycles on ff_synth_filter_inner_avx Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* x86/synth_filter: add synth_filter_sseJames Almer2014-03-01
| | | | | | | Build only on x86_32 targets. Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* Merge commit 'd1f9563d502037239185c11578cc614bdf0c5870'Michael Niedermayer2014-03-01
|\ | | | | | | | | | | | | * commit 'd1f9563d502037239185c11578cc614bdf0c5870': pthread_frame: flush all threads on flush, not just the first one Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * pthread_frame: flush all threads on flush, not just the first oneAnton Khirnov2014-02-28
| | | | | | | | | | | | | | | | | | avcodec_flush_buffers() must release all internally held references according to its documentation, for which all the threads need to be flushed. CC:libav-stable@libav.org Bug-Id: vlc/9665
* | Merge commit '2f02bbcca050936686482453078e83dc25493da0'Michael Niedermayer2014-03-01
|\| | | | | | | | | | | | | | | | | | | | | * commit '2f02bbcca050936686482453078e83dc25493da0': build: Let the ffvhuff decoder/encoder depend on the huffyuv decoder/encoder Conflicts: configure libavcodec/Makefile Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * build: Let the ffvhuff decoder/encoder depend on the huffyuv decoder/encoderDiego Biurrun2014-02-28
| | | | | | | | | | Almost all of the code is shared so there is little point in enabling one decoder/encoder without the other.
* | Merge commit '34150be515cd9c43b0b679806b8d01774960af78'Michael Niedermayer2014-03-01
|\| | | | | | | | | | | | | | | | | | | * commit '34150be515cd9c43b0b679806b8d01774960af78': build: Let the iac decoder depend on the imc decoder Conflicts: configure Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * build: Let the iac decoder depend on the imc decoderDiego Biurrun2014-02-28
| | | | | | | | | | Almost all of the code is shared so there is little point in enabling one decoder without the other.
* | Merge commit '8e0cf39faf02536dca08f4fe628a66d1ae022fde'Michael Niedermayer2014-03-01
|\| | | | | | | | | | | | | | | | | | | | | * commit '8e0cf39faf02536dca08f4fe628a66d1ae022fde': build: Let all MJPEG-related decoders depend on the MJPEG decoder Conflicts: configure libavcodec/Makefile Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * build: Let all MJPEG-related decoders depend on the MJPEG decoderDiego Biurrun2014-02-28
| | | | | | | | | | | | These codecs compile all of the MJPEG code anyway, so there is little point in not enabling the MJPEG decoder directly. This also simplifies the dependency declarations for the MJPEG codec family.
* | Merge commit '0a36988e48dd581d29e77f768f987738bdf365f0'Michael Niedermayer2014-03-01
|\| | | | | | | | | | | | | | | | | | | | | * commit '0a36988e48dd581d29e77f768f987738bdf365f0': build: Let AMV decoder depend on the SP5X decoder Conflicts: configure libavcodec/Makefile Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * build: Let AMV decoder depend on the SP5X decoderDiego Biurrun2014-02-28
| | | | | | | | | | | | This codec compiles all of the SP5X code anyway, so there is little point in not enabling the decoder directly. This also simplifies the dependency declaration for the AMV decoder.
* | Merge commit 'f4bd9fe326ad1315a74206939ae56df93b940a09'Michael Niedermayer2014-03-01
|\| | | | | | | | | | | | | * commit 'f4bd9fe326ad1315a74206939ae56df93b940a09': h264: fix clang warning about uninitialized variable Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: fix clang warning about uninitialized variableVittorio Giovara2014-02-28
| |
* | Merge commit '17a63ff0cd187b9e50e4a47862750295976853b1'Michael Niedermayer2014-03-01
|\| | | | | | | | | | | | | * commit '17a63ff0cd187b9e50e4a47862750295976853b1': h264: update flag name in ff_h264_decode_ref_pic_list_reordering() Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: update flag name in ff_h264_decode_ref_pic_list_reordering()Vittorio Giovara2014-02-28
| | | | | | | | This is the name used in the specifications.
* | Merge commit 'ee6280ca12696a67535ce2245c77190edc513794'Michael Niedermayer2014-03-01
|\| | | | | | | | | | | | | | | | | | | | | * commit 'ee6280ca12696a67535ce2245c77190edc513794': h264: parse two additional constraint flags Conflicts: libavcodec/h264_ps.c See: 9091ba9dfa0901bdce8305cf282c747b0f4c942e Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: parse two additional constraint flagsVittorio Giovara2014-02-28
| |
* | Merge commit 'e70ab7c1f5005041bba0e4efc1165410f83495b2'Michael Niedermayer2014-03-01
|\| | | | | | | | | | | | | * commit 'e70ab7c1f5005041bba0e4efc1165410f83495b2': h264: add MVCD to the list of High profiles in SPS Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * h264: add MVCD to the list of High profiles in SPSVittorio Giovara2014-02-28
| | | | | | | | Also comment all previous profiles.
| * latm: Always reconfigure if no extradata was set previouslyHendrik Leppkes2014-02-28
| | | | | | | | | | | | | | | | | | | | AAC LOAS can have new audio config objects in the stream itself. Make sure the decoder reconfigures itself when the first one arrives midstream. Bug-Id: 644 Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
* | avcodec/utvideoenc: fix slice_bits sizeMichael Niedermayer2014-03-01
| | | | | | | | | | | | Fixes assertion failure Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/ac3_parser: add avpriv_ac3_parse_header2() and use it in libavcodecMichael Niedermayer2014-03-01
| | | | | | | | | | | | | | The new function has the ability to allocate the structure, allowing it to grow without needing major bumps Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | avcodec/ac3: move new field to the end of AC3HeaderInfoMichael Niedermayer2014-03-01
| | | | | | | | | | | | | | This structure is used in the interface between libs and thus cannot have fields added in the middle without major bump Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '6e4009d4cdf5927bdaedf58fcfc5e813b14c366b'Michael Niedermayer2014-02-28
|\| | | | | | | | | | | | | * commit '6e4009d4cdf5927bdaedf58fcfc5e813b14c366b': arm: dcadsp: implement decode_hf as external NEON asm Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * arm: dcadsp: implement decode_hf as external NEON asmJanne Grunau2014-02-28
| |
* | Merge commit '4cb6964244fd6c099383d8b7e99731e72cc844b9'Michael Niedermayer2014-02-28
|\| | | | | | | | | | | | | | | | | | | | | * commit '4cb6964244fd6c099383d8b7e99731e72cc844b9': dcadec: simplify decoding of VQ high frequencies Conflicts: configure libavcodec/dcadec.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * dcadec: simplify decoding of VQ high frequenciesChristophe Gisquet2014-02-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The vector dequantization has a test in a loop preventing effective SIMD implementation. By moving it out of the loop, this loop can be DSPized. Therefore, modify the current DSP implementation. In particular, the DSP implementation no longer has to handle null loop sizes. The decode_hf implementations have following timings: For x86 Arrandale: C SSE SSE2 SSE4 win32: 260 162 119 104 win64: 242 N/A 89 72 The arm NEON optimizations follow in a later patch as external asm. The now unused check for the y modifier in arm inline asm is removed from configure.
* | avcodec/dcadec: use brackets to ensure that no slow division is usedMichael Niedermayer2014-02-28
| | | | | | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '7686afd049be98d18663682b92d983340fa2c305'Michael Niedermayer2014-02-28
|\| | | | | | | | | | | | | * commit '7686afd049be98d18663682b92d983340fa2c305': dca: factorize scaling in inverse ADPCM Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * dca: factorize scaling in inverse ADPCMJanne Grunau2014-02-28
| | | | | | | | | | | | | | | | | | Based on a patch from Christophe Gisquet. Unrolling of the m == 0 case avoids a possible use of the uninitilized value sum when s->predictor_history is not set. I failed to find a sample for it. It also reduced the cycle count from 220 to 150 on sandy bridge, x86_64 linux, gcc 4.8.2 compared to his patch.
* | Merge commit '08e3ea60ff4059341b74be04a428a38f7c3630b0'Michael Niedermayer2014-02-28
|\| | | | | | | | | | | | | | | | | | | | | | | * commit '08e3ea60ff4059341b74be04a428a38f7c3630b0': x86: synth filter float: implement SSE2 version Conflicts: libavcodec/x86/dcadsp.asm libavcodec/x86/dcadsp_init.c See: 2cdbcc004837ce092a14f326f24d97a29512a2c3 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: synth filter float: implement SSE2 versionChristophe Gisquet2014-02-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Timings for Arrandale: C SSE win32: 2108 334 win64: 1152 322 Factorizing the inner loop with a call/jmp is a >15 cycles cost, even with the jmp destination being aligned. Unrolling for ARCH_X86_64 is a 20 cycles gain. Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* | x86: synth filter float: implement SSE2 versionChristophe Gisquet2014-02-28
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Timings for Arrandale: C SSE win32: 2108 334 win64: 1152 322 Factorizing the inner loop with a call/jmp is a >15 cycles cost, even with the jmp destination being aligned. Unrolling for ARCH_X86_64 is a 20 cycles gain. Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '57b1eb9f75b04571063ddec316e290c216c114ac'Michael Niedermayer2014-02-28
|\| | | | | | | | | | | | | | | | | | | | | * commit '57b1eb9f75b04571063ddec316e290c216c114ac': dcadsp: scan coefficients linearly in dca_lfe_fir Conflicts: libavcodec/dcadsp.c See: 9ae8e23188fc2e533eea74757c9060557941d3d9 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * dcadsp: scan coefficients linearly in dca_lfe_firChristophe Gisquet2014-02-28
| | | | | | | | | | | | This change is inspired by x86 asm where it frees a register. Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* | Merge commit 'ad507d7907457e678900bac132122ba7be4644cb'Michael Niedermayer2014-02-28
|\| | | | | | | | | | | | | | | | | | | | | * commit 'ad507d7907457e678900bac132122ba7be4644cb': x86: dcadsp: implement SSE lfe_dir Conflicts: libavcodec/x86/dcadsp.asm See: 169243112c1e310d90c030fb258092f6d2e46117 Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * x86: dcadsp: implement SSE lfe_dirChristophe Gisquet2014-02-28
| | | | | | | | | | | | | | | | Results for Arrandale/Windows: 32: 1670 -> 316 64: 728 -> 298 Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* | x86: dcadsp: implement SSE lfe_dirChristophe Gisquet2014-02-28
| | | | | | | | | | | | | | | | Results for Arrandale/Windows: 32: 1670 -> 316 64: 728 -> 298 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* | Merge commit '87ec849fe9acba075c843e67bcd01f256f481a18'Michael Niedermayer2014-02-28
|\| | | | | | | | | | | | | | | | | | | | | * commit '87ec849fe9acba075c843e67bcd01f256f481a18': dcadec: remove scaling in lfe_interpolation_fir Conflicts: libavcodec/dcadec.c libavcodec/dcadsp.c Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * dcadec: remove scaling in lfe_interpolation_firChristophe Gisquet2014-02-28
| | | | | | | | | | | | | | The scaling factor is constant so it is faster to scale the FIR coefficients in the tables during compilation. Signed-off-by: Janne Grunau <janne-libav@jannau.net>
* | Merge commit 'a55546f48d55e3d1155840541b2be5f4f8cf18ab'Michael Niedermayer2014-02-28
|\| | | | | | | | | | | | | * commit 'a55546f48d55e3d1155840541b2be5f4f8cf18ab': proresenc: Reuse proper dsputil infrastructure for FDCT Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * proresenc: Reuse proper dsputil infrastructure for FDCTDiego Biurrun2014-02-28
| |
* | Merge commit '92e598a57a7ce4b8ac9ea56274af39f5fd888311'Michael Niedermayer2014-02-28
|\| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * commit '92e598a57a7ce4b8ac9ea56274af39f5fd888311': prores: Drop DSP infrastructure for prores encoder bits Conflicts: libavcodec/Makefile libavcodec/proresdsp.c libavcodec/proresenc_kostya.c Note, these changes only affect one of the 2 prores encoders we have If someone wants to add optimizations to the affected encoder, or needs/wants this infrastructure, then iam happy to revert this Merged-by: Michael Niedermayer <michaelni@gmx.at>
| * prores: Drop DSP infrastructure for prores encoder bitsDiego Biurrun2014-02-28
| | | | | | | | None of the encoder bits are arch-optimized.