Janne Grunau [Sat, 26 Jul 2014 21:29:46 +0000 (23:29 +0200)]
fate: support testing of release branches
Adding 'branch=release/10' to the fate config file will check the
release/10 branch instead of master. If no branch is specified it will
use 'master' so that existing config are still valid.
The server side changes are already deployed, see
https://fate.libav.org/v10/ for an example. The server supports only the
release/* branches.
The server enforces that a single slot tests always the same branch.
Please append "-v$RELEASE" to the slot of release branch configs or make
the slot otherwise unique.
A different fate samples dir is needed for each release branch. make
fate-rsync has the correct URL in each branch.
Anton Khirnov [Sun, 20 Jul 2014 12:06:47 +0000 (12:06 +0000)]
eamad: use the bytestream2 API instead of AV_RL
This is safer and possibly fixes invalid reads on truncated data.
CC:libav-stable@libav.org
Diego Biurrun [Sat, 26 Jul 2014 09:50:59 +0000 (02:50 -0700)]
avformat: Mark AVOutputFormat argument in avformat_query_codec as const
Diego Biurrun [Sat, 26 Jul 2014 09:47:41 +0000 (02:47 -0700)]
avformat: Mark argument in av_{i|o}format_next/ffurl_protocol_next as const
Diego Biurrun [Sat, 26 Jul 2014 09:46:40 +0000 (02:46 -0700)]
avcodec: Mark argument in av_{parser|hwaccel|bitstream_filter}_next as const
Pierre Edouard Lepere [Wed, 18 Jun 2014 03:57:16 +0000 (05:57 +0200)]
hevc: SSE2 and SSSE3 loop filters
Additional contributions by James Almer <jamrial@gmail.com>,
Carl Eugen Hoyos <cehoyos@ag.or.at>, Fiona Glaser <fiona@x264.com> and
Anton Khirnov <anton@khirnov.net>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Sat, 12 Jul 2014 08:36:03 +0000 (08:36 +0000)]
hevcdsp: remove an unneeded variable in the loop filter
beta0 and beta1 will always be the same
Anton Khirnov [Thu, 24 Jul 2014 17:47:26 +0000 (17:47 +0000)]
output example: convert audio to the format supported by the encoder
Anton Khirnov [Wed, 23 Jul 2014 11:09:16 +0000 (11:09 +0000)]
output example: set the stream timebase
This is required by the new API.
Diego Biurrun [Wed, 23 Jul 2014 20:53:54 +0000 (13:53 -0700)]
mpegvideo: Move QMAT_SHIFT* defines to the only place they are used
Diego Biurrun [Wed, 23 Jul 2014 20:50:35 +0000 (13:50 -0700)]
mpegvideo: Move ME_MAP_* defines to the only place they are used
Diego Biurrun [Wed, 23 Jul 2014 20:49:16 +0000 (13:49 -0700)]
mpegvideo: Drop unused MPEG_BUF_SIZE and CHROMA_444 defines
Diego Biurrun [Wed, 23 Jul 2014 20:38:35 +0000 (13:38 -0700)]
fft-test: Pass the right struct members instead of casting
Diego Biurrun [Thu, 24 Jul 2014 23:22:44 +0000 (16:22 -0700)]
vc1dsp: Add wrappers for {avg|put}_vc1_mspel_mc00_c
This avoids invoking the wrapped functions with too many arguments.
Diego Biurrun [Thu, 24 Jul 2014 23:19:45 +0000 (16:19 -0700)]
qpeldsp: Mark source pointer in qpel_mc_func function pointer const
Diego Biurrun [Wed, 23 Jul 2014 14:36:19 +0000 (07:36 -0700)]
dct/rdft: Remove duplicate typedefs for context structs
The typedefs also exist in the avfft.h header and since typedefs cannot be
legally redefined in C, the code fails to compile with some compilers.
This reverts commits
11c7155cce and
57f1b1dcc7.
Nidhi Makhijani [Thu, 24 Jul 2014 14:52:43 +0000 (20:22 +0530)]
mpegenccontext: Remove unused opaque pointer
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Tue, 22 Jul 2014 18:42:03 +0000 (11:42 -0700)]
http: K&R formatting cosmetics
Also comment some #endifs and reshuffle headers into canonical order.
Diego Biurrun [Wed, 23 Jul 2014 14:33:28 +0000 (07:33 -0700)]
fft-test: Pass correct struct members to (i)dct functions
This fixes a number of incompatible pointer type warnings.
Diego Biurrun [Fri, 18 Jul 2014 12:37:11 +0000 (05:37 -0700)]
fft-test: K&R formatting cosmetics
Also rearrange #includes into canonical order.
Diego Biurrun [Mon, 21 Jul 2014 09:12:32 +0000 (02:12 -0700)]
fft-test: Check memory allocations
Diego Biurrun [Thu, 26 Jun 2014 23:14:30 +0000 (16:14 -0700)]
fft-test: Drop unnecessary pointer indirection for context structs
Diego Biurrun [Thu, 26 Jun 2014 00:35:03 +0000 (17:35 -0700)]
fft-test: Reduce variable scope where sensibly possible
Also merge variable declaration and initialization.
Nidhi Makhijani [Wed, 23 Jul 2014 11:57:01 +0000 (17:27 +0530)]
mpegenccontext: Remove unused dct_unquantize_h261 function pointers
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Mon, 21 Jul 2014 08:53:16 +0000 (01:53 -0700)]
fft-test: Make global exptab variable static
Diego Biurrun [Tue, 22 Jul 2014 18:10:13 +0000 (11:10 -0700)]
mpegvideo: Move QUANT_BIAS_SHIFT define to the only place it is used
Martin Storsjö [Tue, 22 Jul 2014 12:09:43 +0000 (15:09 +0300)]
configure: Extend the neon intrinsics check
Check for an instruction that causes the (very old) Apple GCC 4.2
to error out ("unrecognizable insn").
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Fri, 18 Jul 2014 12:07:30 +0000 (05:07 -0700)]
fft-test: Comment some #endifs
Diego Biurrun [Fri, 18 Jul 2014 12:06:32 +0000 (05:06 -0700)]
fft-test: Drop unnecessary #ifdefs around header includes
Diego Biurrun [Fri, 18 Jul 2014 13:07:26 +0000 (06:07 -0700)]
dct/rdft: Add missing typedefs for context structs
Without the typedefs there can be trouble depending on #include order.
Diego Biurrun [Mon, 21 Jul 2014 20:58:55 +0000 (13:58 -0700)]
build: Add define for SIMD extensions requiring 16-byte aligned buffers
Diego Biurrun [Mon, 21 Jul 2014 20:11:40 +0000 (13:11 -0700)]
libxvid: Drop PPC-specific CPU detection hack
It is doubtful if the hack (still) works and Xvid had ten years to fix it.
Luca Barbato [Tue, 22 Jul 2014 14:37:09 +0000 (16:37 +0200)]
http: Use a constant for the supported header size
Diego Biurrun [Mon, 21 Jul 2014 20:10:53 +0000 (13:10 -0700)]
imgconvert: cosmetics: Reshuffle defines to reduce ifdeffery
Ben Avison [Mon, 21 Jul 2014 13:53:06 +0000 (14:53 +0100)]
arm: Macroize the test for 'setend' CPU instruction support
Signed-off-by: Diego Biurrun <diego@biurrun.de>
James Yu [Sat, 17 May 2014 04:21:10 +0000 (12:21 +0800)]
aarch64: NEON intrinsics dct_unquantize_h263.
Intrinsics only used on aarch64 since the existing ARMv7 NEON asm
is slightly faster (Cortex-A9, gcc-4.8, micro-benchmarks and full
decoding time).
Signed-off-by: James Yu <james.yu@linaro.org>
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Janne Grunau [Tue, 13 May 2014 21:03:28 +0000 (23:03 +0200)]
configure: add support for neon intrinsics
Luca Barbato [Thu, 17 Jul 2014 22:55:05 +0000 (00:55 +0200)]
http: Do move the class instantiation in the conditional block
Remove a warning if https support is disabled.
Luca Barbato [Thu, 17 Jul 2014 22:39:43 +0000 (00:39 +0200)]
http: Provide an option to override the HTTP method
Certain servers accept only PUT as valid method.
Luca Barbato [Wed, 16 Jul 2014 15:00:11 +0000 (17:00 +0200)]
build: Support executable only ldflags
The options is useful to build position-independent executables on
hardened systems (e.g. Android L and Gentoo Hardened).
Luca Barbato [Wed, 16 Jul 2014 14:33:13 +0000 (16:33 +0200)]
configure: Do not add extralibs to avresample .pc file
The library does not have external dependencies.
Jan Gerber [Mon, 21 Jul 2014 19:39:02 +0000 (19:39 +0000)]
mpegts: do not export empty language tags
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Katerina Barone-Adesi [Sun, 13 Jul 2014 21:47:05 +0000 (23:47 +0200)]
fate: Split audio- and video-related RealMedia targets
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Mon, 21 Jul 2014 12:28:26 +0000 (05:28 -0700)]
build: Conditionally compile all avcodec test programs
Diego Biurrun [Mon, 21 Jul 2014 12:27:45 +0000 (05:27 -0700)]
build: Conditionally build and run DCT test program
Diego Biurrun [Mon, 21 Jul 2014 12:26:00 +0000 (05:26 -0700)]
build: Conditionally build and test iirfilter
Nidhi Makhijani [Mon, 21 Jul 2014 07:11:46 +0000 (12:41 +0530)]
mjpeg: return proper error code
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Tue, 18 Feb 2014 13:15:55 +0000 (14:15 +0100)]
dct-test: Move arch-specific bits into arch-specific subdirectories
Janne Grunau [Mon, 21 Jul 2014 06:35:32 +0000 (08:35 +0200)]
Revert "tiff: support reading gray+alpha at 8 bits"
This reverts commit
b31d76e45fc3c6529dd7109e721676f3ec376d00 as it
uses an unkown pixel format.
Vittorio Giovara [Fri, 18 Jul 2014 13:54:46 +0000 (09:54 -0400)]
fate: add h264-direct-bff test
Ronald S. Bultje [Thu, 17 Jul 2014 23:49:54 +0000 (01:49 +0200)]
h264: Fix direct temporal mvs for bottom-field-first poc order
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>
Carl Eugen Hoyos [Sun, 20 Jul 2014 06:34:19 +0000 (02:34 -0400)]
tiff: support reading gray+alpha at 8 bits
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Diego Biurrun [Tue, 18 Feb 2014 12:46:32 +0000 (13:46 +0100)]
idct: Move arm-specific declarations to a header in the arm directory
Nidhi Makhijani [Sun, 20 Jul 2014 09:21:38 +0000 (14:51 +0530)]
mpegencconetxt: Move rv10-specific orig_width/orig_height where they belong
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Tue, 18 Feb 2014 13:09:35 +0000 (14:09 +0100)]
fdct: Move ppc-specific declarations to a header in the ppc directory
Diego Biurrun [Tue, 18 Feb 2014 12:20:01 +0000 (13:20 +0100)]
simple_idct: Move x86-specific declarations to a header in the x86 directory
Diego Biurrun [Tue, 18 Feb 2014 12:16:11 +0000 (13:16 +0100)]
fdct: Move x86-specific declarations to a header in the x86 directory
Nidhi Makhijani [Fri, 18 Jul 2014 10:43:15 +0000 (16:13 +0530)]
oss_audio: Split muxer and demuxer
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Tue, 18 Feb 2014 11:11:41 +0000 (12:11 +0100)]
dct-test: Reuse enum idct_permutation_type instead of duplicating it
Diego Biurrun [Tue, 18 Feb 2014 11:02:34 +0000 (12:02 +0100)]
dct-test: Skip indirection for MMX IDCT permutation
Diego Biurrun [Sun, 13 Jul 2014 11:03:35 +0000 (04:03 -0700)]
x86: dnxhdenc: Eliminate some unnecessary ifdefs
Nidhi Makhijani [Tue, 8 Jul 2014 03:33:35 +0000 (09:03 +0530)]
libgsm: Split decoder and encoder
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Fri, 18 Jul 2014 14:37:35 +0000 (07:37 -0700)]
idctdsp: prettyprinting cosmetics
Diego Biurrun [Tue, 18 Feb 2014 10:30:55 +0000 (11:30 +0100)]
idct: Convert IDCT permutation #defines to an enum
Also rename the enum values to be consistent with other DCT permutations.
Diego Biurrun [Thu, 17 Jul 2014 15:51:27 +0000 (08:51 -0700)]
avdevice: Give names to anonymously typedeffed structs
Anonymous structs can cause trouble in header files, so try to
avoid them altogether as a matter of good style.
Diego Biurrun [Tue, 18 Feb 2014 10:52:42 +0000 (11:52 +0100)]
fft: Convert FFT/MDCT permutation type #defines to enums
Diego Biurrun [Tue, 18 Feb 2014 10:58:57 +0000 (11:58 +0100)]
dct-test: Improve CPU flags struct member name
Diego Biurrun [Tue, 18 Feb 2014 10:57:48 +0000 (11:57 +0100)]
dct-test: Move cpu_flags variable out of global scope
Martin Storsjö [Thu, 17 Jul 2014 22:39:49 +0000 (01:39 +0300)]
arm: cosmetics: Consistently use lowercase for shift operators
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Sat, 12 Jul 2014 19:41:51 +0000 (22:41 +0300)]
arm: cosmetics: Fix a misaligned asm operand
Signed-off-by: Martin Storsjö <martin@martin.st>
Ben Avison [Thu, 10 Jul 2014 23:12:34 +0000 (00:12 +0100)]
armv6: Accelerate butterflies_float
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>
Ben Avison [Thu, 10 Jul 2014 23:12:33 +0000 (00:12 +0100)]
armv6: Accelerate vector_fmul_window
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>
Ben Avison [Wed, 16 Jul 2014 15:02:01 +0000 (16:02 +0100)]
armv6: Accelerate ff_fft_calc for general case (nbits != 4)
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>
Ben Avison [Thu, 10 Jul 2014 23:12:31 +0000 (00:12 +0100)]
armv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)
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>
Diego Biurrun [Sat, 8 Feb 2014 01:59:58 +0000 (02:59 +0100)]
dsputil: Split motion estimation compare bits off into their own context
Martin Storsjö [Wed, 16 Jul 2014 16:43:12 +0000 (19:43 +0300)]
configure: Assume runtime cpu detection on arm on --target-os=android as well
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Sat, 4 Jan 2014 14:23:15 +0000 (15:23 +0100)]
x86: dsputil: Coalesce all init files
This makes the init files match the structure of the dsputil split.
Nidhi Makhijani [Mon, 14 Jul 2014 06:22:44 +0000 (11:52 +0530)]
avpacket: Check for and return errors in ff_interleave_add_packet()
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Luca Barbato [Wed, 16 Jul 2014 22:31:06 +0000 (18:31 -0400)]
h264: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Diego Biurrun [Wed, 16 Jul 2014 19:26:34 +0000 (12:26 -0700)]
h264: Remove some commented-out, broken cruft
Diego Biurrun [Tue, 8 Jul 2014 15:47:52 +0000 (08:47 -0700)]
arm: dsputil: Coalesce all init files
Vittorio Giovara [Tue, 15 Jul 2014 19:22:11 +0000 (15:22 -0400)]
g2meet: allow size changes within original sizes
Martin Storsjö [Sat, 12 Jul 2014 18:29:17 +0000 (21:29 +0300)]
fate: Use the correct, local path to samples for opus reference files
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>
Diego Biurrun [Tue, 8 Jul 2014 15:59:31 +0000 (08:59 -0700)]
x86: dsputil: Avoid pointless CONFIG_ENCODERS indirection
The remaining dsputil bits are encoding-specific anyway.
Diego Biurrun [Tue, 8 Jul 2014 15:36:32 +0000 (08:36 -0700)]
ppc: dsputil: Coalesce all init files
Diego Biurrun [Fri, 11 Jul 2014 13:49:16 +0000 (06:49 -0700)]
examples/output: Remove unused variable
doc/examples/output.c:460:9: warning: unused variable ‘i’
Diego Biurrun [Tue, 8 Jul 2014 15:31:15 +0000 (08:31 -0700)]
dsputil: Drop unused bit_depth parameter from all init functions
Luca Barbato [Fri, 4 Jul 2014 14:53:31 +0000 (16:53 +0200)]
mov: Clarify tkhd flag settings
Luca Barbato [Fri, 4 Jul 2014 14:26:06 +0000 (16:26 +0200)]
mov: Do not group tracks if more than one is enabled per type
The specification requires at most 1 track enabled per alternate group.
Gildas Cocherel [Fri, 4 Jul 2014 15:21:56 +0000 (11:21 -0400)]
hevc: implement pic_output_flag handling
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>
Mickaël Raulet [Fri, 4 Jul 2014 15:21:55 +0000 (11:21 -0400)]
hevc: set the keyframe flag on output frames
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Mickaël Raulet [Fri, 4 Jul 2014 15:21:54 +0000 (11:21 -0400)]
hevc: Replace nal type chek with equivalent IS_IRAP macro
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Fri, 11 Jul 2014 08:38:51 +0000 (08:38 +0000)]
hevc_ps: remove a write-only variable
Nidhi Makhijani [Thu, 10 Jul 2014 08:14:51 +0000 (13:44 +0530)]
cdg: Forward error from avio_size() in read_header() function
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Alexander V. Lukyanov [Tue, 8 Jul 2014 07:54:15 +0000 (11:54 +0400)]
mpegts: pass MpegTSContext ptr explicitly
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>
Diego Biurrun [Mon, 3 Feb 2014 22:29:09 +0000 (14:29 -0800)]
dsputil: Split off pixel block routines into their own context
Vittorio Giovara [Wed, 2 Jul 2014 16:02:15 +0000 (12:02 -0400)]
hevc: parse display orientation SEI message
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Vittorio Giovara [Wed, 2 Jul 2014 15:58:19 +0000 (11:58 -0400)]
h264: parse display orientation SEI message
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Vittorio Giovara [Wed, 18 Jun 2014 22:08:20 +0000 (18:08 -0400)]
display: add matrix flip api
Andrew Kelley [Thu, 3 Jul 2014 20:22:33 +0000 (16:22 -0400)]
doc: mention option to mix shared/static libraries
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>