summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAge
* h264: Fix direct temporal mvs for bottom-field-first poc orderRonald S. Bultje2014-07-20
| | | | | | | | Such files can be created using the --bff x264 option. Sample-Id: h264_direct_temporal_mvs_bff.mkv Signed-off-by: Luca Barbato <lu_zero@gentoo.org> Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* tiff: support reading gray+alpha at 8 bitsCarl Eugen Hoyos2014-07-20
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* idct: Move arm-specific declarations to a header in the arm directoryDiego Biurrun2014-07-20
|
* mpegencconetxt: Move rv10-specific orig_width/orig_height where they belongNidhi Makhijani2014-07-20
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* fdct: Move ppc-specific declarations to a header in the ppc directoryDiego Biurrun2014-07-19
|
* simple_idct: Move x86-specific declarations to a header in the x86 directoryDiego Biurrun2014-07-19
|
* fdct: Move x86-specific declarations to a header in the x86 directoryDiego Biurrun2014-07-19
|
* oss_audio: Split muxer and demuxerNidhi Makhijani2014-07-18
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* dct-test: Reuse enum idct_permutation_type instead of duplicating itDiego Biurrun2014-07-18
|
* dct-test: Skip indirection for MMX IDCT permutationDiego Biurrun2014-07-18
|
* x86: dnxhdenc: Eliminate some unnecessary ifdefsDiego Biurrun2014-07-18
|
* libgsm: Split decoder and encoderNidhi Makhijani2014-07-18
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* idctdsp: prettyprinting cosmeticsDiego Biurrun2014-07-18
|
* idct: Convert IDCT permutation #defines to an enumDiego Biurrun2014-07-18
| | | | Also rename the enum values to be consistent with other DCT permutations.
* avdevice: Give names to anonymously typedeffed structsDiego Biurrun2014-07-18
| | | | | Anonymous structs can cause trouble in header files, so try to avoid them altogether as a matter of good style.
* fft: Convert FFT/MDCT permutation type #defines to enumsDiego Biurrun2014-07-18
|
* dct-test: Improve CPU flags struct member nameDiego Biurrun2014-07-18
|
* dct-test: Move cpu_flags variable out of global scopeDiego Biurrun2014-07-18
|
* arm: cosmetics: Consistently use lowercase for shift operatorsMartin Storsjö2014-07-18
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* arm: cosmetics: Fix a misaligned asm operandMartin Storsjö2014-07-18
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* armv6: Accelerate butterflies_floatBen Avison2014-07-18
| | | | | | | | | | | | | | I benchmarked the result by measuring the number of gperftools samples that hit anywhere in the AAC decoder (starting from aac_decode_frame()) or specifically in butterflies_float_c() / ff_butterflies_float_vfp() for the same sample AAC stream: Before After Mean StdDev Mean StdDev Confidence Change Audio decode 1542.8 43.7 1470.5 41.5 100.0% +4.9% butterflies_float 130.0 11.9 70.2 12.1 100.0% +85.2% Signed-off-by: Martin Storsjö <martin@martin.st>
* armv6: Accelerate vector_fmul_windowBen Avison2014-07-18
| | | | | | | | | | | | | | I benchmarked the result by measuring the number of gperftools samples that hit anywhere in the AAC decoder (starting from aac_decode_frame()) or specifically in vector_fmul_window_c() / ff_vector_fmul_window_vfp() for the same sample AAC stream: Before After Mean StdDev Mean StdDev Confidence Change Audio decode 1598.2 47.4 1529.2 25.4 100.0% +4.5% vector_fmul_window 244.0 22.1 188.9 22.3 100.0% +29.2% Signed-off-by: Martin Storsjö <martin@martin.st>
* armv6: Accelerate ff_fft_calc for general case (nbits != 4)Ben Avison2014-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | The previous implementation targeted DTS Coherent Acoustics, which only requires nbits == 4 (fft16()). This case was (and still is) linked directly rather than being indirected through ff_fft_calc_vfp(), but now the full range from radix-4 up to radix-65536 is available. This benefits other codecs such as AAC and AC3. The implementaion is based upon the C version, with each routine larger than radix-16 calling a hierarchy of smaller FFT functions, then performing a post-processing pass. This pass benefits a lot from loop unrolling to counter the long pipelines in the VFP. A relaxed calling standard also reduces the overhead of the call hierarchy, and avoiding the excessive inlining performed by GCC probably helps with I-cache utilisation too. I benchmarked the result by measuring the number of gperftools samples that hit anywhere in the AAC decoder (starting from aac_decode_frame()) or specifically in the FFT routines (fft4() to fft512() and pass()) for the same sample AAC stream: Before After Mean StdDev Mean StdDev Confidence Change Audio decode 2245.5 53.1 1599.6 43.8 100.0% +40.4% FFT routines 940.6 22.0 348.1 20.8 100.0% +170.2% Signed-off-by: Martin Storsjö <martin@martin.st>
* armv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)Ben Avison2014-07-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | The previous implementation targeted DTS Coherent Acoustics, which only requires mdct_bits == 6. This relatively small size lent itself to unrolling the loops a small number of times, and encoding offsets calculated at assembly time within the load/store instructions of each iteration. In the more general case (codecs such as AAC and AC3) much larger arrays are used - mdct_bits == [8, 9, 11]. The old method does not scale for these cases, so more integer registers are used with non-unrolled versions of the loops (and with some stack spillage). The postrotation filter loop is still unrolled by a factor of 2 to permit the double-buffering of some VFP registers to facilitate overlap of neighbouring iterations. I benchmarked the result by measuring the number of gperftools samples that hit anywhere in the AAC decoder (starting from aac_decode_frame()) or specifically in ff_imdct_half_c / ff_imdct_half_vfp, for the same example AAC stream: Before After Mean StdDev Mean StdDev Confidence Change aac_decode_frame 2368.1 35.8 2117.2 35.3 100.0% +11.8% ff_imdct_half_* 457.5 22.4 251.2 16.2 100.0% +82.1% Signed-off-by: Martin Storsjö <martin@martin.st>
* dsputil: Split motion estimation compare bits off into their own contextDiego Biurrun2014-07-17
|
* configure: Assume runtime cpu detection on arm on --target-os=android as wellMartin Storsjö2014-07-17
| | | | Signed-off-by: Martin Storsjö <martin@martin.st>
* x86: dsputil: Coalesce all init filesDiego Biurrun2014-07-17
| | | | This makes the init files match the structure of the dsputil split.
* avpacket: Check for and return errors in ff_interleave_add_packet()Nidhi Makhijani2014-07-17
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* h264: K&R formatting cosmeticsLuca Barbato2014-07-17
| | | | | Signed-off-by: Diego Biurrun <diego@biurrun.de> Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* h264: Remove some commented-out, broken cruftDiego Biurrun2014-07-16
|
* arm: dsputil: Coalesce all init filesDiego Biurrun2014-07-16
|
* g2meet: allow size changes within original sizesVittorio Giovara2014-07-15
|
* fate: Use the correct, local path to samples for opus reference filesMartin Storsjö2014-07-14
| | | | | | | This fixes running fate in configs where the samples are located in a different path on the target. Signed-off-by: Martin Storsjö <martin@martin.st>
* x86: dsputil: Avoid pointless CONFIG_ENCODERS indirectionDiego Biurrun2014-07-13
| | | | The remaining dsputil bits are encoding-specific anyway.
* ppc: dsputil: Coalesce all init filesDiego Biurrun2014-07-13
|
* examples/output: Remove unused variableDiego Biurrun2014-07-11
| | | | doc/examples/output.c:460:9: warning: unused variable ‘i’
* dsputil: Drop unused bit_depth parameter from all init functionsDiego Biurrun2014-07-11
|
* mov: Clarify tkhd flag settingsLuca Barbato2014-07-11
|
* mov: Do not group tracks if more than one is enabled per typeLuca Barbato2014-07-11
| | | | The specification requires at most 1 track enabled per alternate group.
* hevc: implement pic_output_flag handlingGildas Cocherel2014-07-11
| | | | | | Sample-Id: OPFLAG_B_Qualcomm_1.bit, OPFLAG_C_Qualcomm_1.bit Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* hevc: set the keyframe flag on output framesMickaël Raulet2014-07-11
| | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* hevc: Replace nal type chek with equivalent IS_IRAP macroMickaël Raulet2014-07-11
| | | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com> Signed-off-by: Anton Khirnov <anton@khirnov.net>
* hevc_ps: remove a write-only variableAnton Khirnov2014-07-11
|
* cdg: Forward error from avio_size() in read_header() functionNidhi Makhijani2014-07-10
| | | | Signed-off-by: Diego Biurrun <diego@biurrun.de>
* mpegts: pass MpegTSContext ptr explicitlyAlexander V. Lukyanov2014-07-10
| | | | | | | | | | | | | | AVFormatContext->priv_data is not always a MpegTSContext, it can be RTSPState when decoding a RTP stream. So it is necessary to pass MpegTSContext pointer explicitly. Within libav, the write_section_data function doesn't actually use the MpegTSContext at all, so this doesn't change anything at the moment (no memory was corrupted before), but it reduces the risk of anybody trying to touch the MpegTSContext via AVFormatContext->priv_data in the future. Signed-off-by: Martin Storsjö <martin@martin.st>
* dsputil: Split off pixel block routines into their own contextDiego Biurrun2014-07-09
|
* hevc: parse display orientation SEI messageVittorio Giovara2014-07-09
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* h264: parse display orientation SEI messageVittorio Giovara2014-07-09
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
* display: add matrix flip apiVittorio Giovara2014-07-09
|
* doc: mention option to mix shared/static librariesAndrew Kelley2014-07-09
| | | | Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>