Vittorio Giovara [Thu, 27 Feb 2014 12:41:57 +0000 (13:41 +0100)]
vf_frei0r: adjust error messages
Patrice Clement [Fri, 28 Feb 2014 17:31:29 +0000 (18:31 +0100)]
ass: K&R formatting cosmetics
Keiji Costantini [Sat, 1 Mar 2014 18:17:04 +0000 (18:17 +0000)]
ituh263: reject b-frame with pp_time = 0
Avoid a division by 0 in ff_mpeg4_set_one_direct_mv.
Sample-Id:
00000168-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Lou Logan [Tue, 7 Jan 2014 19:59:04 +0000 (10:59 -0900)]
qt-faststart: Add a note about the -movflags +faststart feature
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Fri, 28 Feb 2014 10:19:49 +0000 (12:19 +0200)]
qt-faststart: Avoid unintentionally sign extending BE_32
Without this cast, the BE_32() expression is sign extended when
assigned to an uint64_t, since the uint8_t|uint8_t expression
is promoted to an int.
Also avoid undefined behaviour when left shifting an uint8_t
by 24 by casting it to an uint32_t explicitly before shifting.
Based on a patch by Michael Niedermayer.
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Thu, 13 Dec 2012 14:07:20 +0000 (15:07 +0100)]
qt-faststart: Check offset_count before reading from the moov_atom buffer
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Wed, 24 Oct 2012 22:39:33 +0000 (00:39 +0200)]
qt-faststart: Check the ftello() return codes
This silences a warning in the coverity static analyzer.
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Mon, 29 Oct 2012 21:05:33 +0000 (22:05 +0100)]
qt-faststart: Fix the signedness of variables keeping the ftello return values
These variables are assigned the return values of ftello, which
returns an off_t, which is a signed type. On errors, ftello returns
-1, thus make sure this error return value can be stored properly.
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Mon, 22 Oct 2012 20:42:51 +0000 (22:42 +0200)]
qt-faststart: Check fseeko() return codes
Signed-off-by: Martin Storsjö <martin@martin.st>
Michael Niedermayer [Sun, 30 Sep 2012 19:53:26 +0000 (21:53 +0200)]
qt-faststart: Simplify code by using a MIN() macro
qt-faststart doesn't use the normal libav headers at all since
it's supposed to be a completely standalone tool, so we implement
the macro locally in this file.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Fri, 28 Feb 2014 09:41:55 +0000 (11:41 +0200)]
qt-faststart: Increase the copy buffer size to 64 KB
Copying data in chunks of 1 KB is a little wasteful.
64 KB should still easily fit on the stack, so there's no need
to allocate it dynamically.
Signed-off-by: Martin Storsjö <martin@martin.st>
Anton Khirnov [Thu, 27 Feb 2014 20:36:33 +0000 (21:36 +0100)]
pthread_frame: flush all threads on flush, not just the first one
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
Anton Khirnov [Wed, 26 Feb 2014 21:37:06 +0000 (22:37 +0100)]
af_compand: replace strtok_r() with av_get_token()
Diego Biurrun [Mon, 23 Dec 2013 03:24:53 +0000 (04:24 +0100)]
configure: Set the thread type after resolving dependencies
A threading type might be detected originally, but later disabled
if one of its dependencies is unavailable.
This makes sure that the threading support item in the configure
output is right for setups where w32threads are available but
native atomics aren't.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Thu, 27 Feb 2014 23:02:25 +0000 (15:02 -0800)]
build: Let the ffvhuff decoder/encoder depend on the huffyuv decoder/encoder
Almost all of the code is shared so there is little point in
enabling one decoder/encoder without the other.
Diego Biurrun [Thu, 27 Feb 2014 23:02:24 +0000 (15:02 -0800)]
build: Let the iac decoder depend on the imc decoder
Almost all of the code is shared so there is little point in
enabling one decoder without the other.
Diego Biurrun [Thu, 27 Feb 2014 23:02:23 +0000 (15:02 -0800)]
build: Let all MJPEG-related decoders depend on the MJPEG decoder
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.
Diego Biurrun [Thu, 27 Feb 2014 23:02:22 +0000 (15:02 -0800)]
build: Let AMV decoder depend on the SP5X decoder
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.
Vittorio Giovara [Fri, 28 Feb 2014 12:16:37 +0000 (13:16 +0100)]
h264: fix clang warning about uninitialized variable
Vittorio Giovara [Wed, 19 Feb 2014 02:23:17 +0000 (03:23 +0100)]
h264: update flag name in ff_h264_decode_ref_pic_list_reordering()
This is the name used in the specifications.
Vittorio Giovara [Wed, 19 Feb 2014 02:19:23 +0000 (03:19 +0100)]
h264: parse two additional constraint flags
Vittorio Giovara [Mon, 17 Feb 2014 12:55:15 +0000 (13:55 +0100)]
h264: add MVCD to the list of High profiles in SPS
Also comment all previous profiles.
Hendrik Leppkes [Thu, 22 Dec 2011 23:14:32 +0000 (00:14 +0100)]
latm: Always reconfigure if no extradata was set previously
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>
Janne Grunau [Sat, 22 Feb 2014 17:27:10 +0000 (18:27 +0100)]
arm: dcadsp: implement decode_hf as external NEON asm
Christophe Gisquet [Fri, 14 Feb 2014 15:03:13 +0000 (15:03 +0000)]
dcadec: simplify decoding of VQ high frequencies
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.
Janne Grunau [Fri, 21 Feb 2014 12:13:36 +0000 (13:13 +0100)]
dca: factorize scaling in inverse ADPCM
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.
Christophe Gisquet [Fri, 14 Feb 2014 15:03:09 +0000 (15:03 +0000)]
x86: synth filter float: implement SSE2 version
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>
Christophe Gisquet [Fri, 14 Feb 2014 15:03:08 +0000 (15:03 +0000)]
dcadsp: scan coefficients linearly in dca_lfe_fir
This change is inspired by x86 asm where it frees a register.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Christophe Gisquet [Fri, 14 Feb 2014 15:03:07 +0000 (15:03 +0000)]
x86: dcadsp: implement SSE lfe_dir
Results for Arrandale/Windows:
32: 1670 -> 316
64: 728 -> 298
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Christophe Gisquet [Fri, 14 Feb 2014 15:03:06 +0000 (15:03 +0000)]
dcadec: remove scaling in lfe_interpolation_fir
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>
Diego Biurrun [Thu, 27 Feb 2014 22:49:55 +0000 (14:49 -0800)]
proresenc: Reuse proper dsputil infrastructure for FDCT
Diego Biurrun [Thu, 27 Feb 2014 22:49:54 +0000 (14:49 -0800)]
prores: Drop DSP infrastructure for prores encoder bits
None of the encoder bits are arch-optimized.
Diego Biurrun [Thu, 27 Feb 2014 22:49:53 +0000 (14:49 -0800)]
proresenc: Drop unnecessary DCT permutation bits
No permutation is necessary for the FDCT.
Diego Biurrun [Thu, 27 Feb 2014 22:49:52 +0000 (14:49 -0800)]
prores: Use consistent names for DSP arch initialization functions
Diego Biurrun [Tue, 18 Feb 2014 17:57:45 +0000 (09:57 -0800)]
Give IDCT matrix transpose macro a more descriptive name
This also avoids a macro name clash and related warning on ARM.
Anton Khirnov [Wed, 26 Feb 2014 12:44:53 +0000 (13:44 +0100)]
af_compand: add a dependency on strtok_r
Diego Biurrun [Wed, 19 Feb 2014 19:33:29 +0000 (20:33 +0100)]
build: Do not redundantly specifiy H.263-related object files for MSMPEG4v*
These are already covered through dependencies specified in configure.
Andrew Kelley [Wed, 26 Feb 2014 06:47:40 +0000 (01:47 -0500)]
lavfi: add compand audio filter
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diego Biurrun [Tue, 25 Feb 2014 11:21:15 +0000 (12:21 +0100)]
parser: cosmetics: Drop some unnecessary parentheses
Anton Khirnov [Thu, 13 Feb 2014 07:50:16 +0000 (08:50 +0100)]
libavfilter: example audio filtering program
Based on a patch by Andrew Kelley <superjoe30@gmail.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Luca Barbato [Sun, 23 Feb 2014 22:59:25 +0000 (23:59 +0100)]
parser: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Tue, 25 Feb 2014 10:59:05 +0000 (11:59 +0100)]
parser: Remove commented-out cruft
Janne Grunau [Mon, 24 Feb 2014 19:22:13 +0000 (20:22 +0100)]
texi2pod: always declare the pod file as UTF-8 encoded
Vittorio Giovara [Mon, 24 Feb 2014 16:03:03 +0000 (17:03 +0100)]
doc: fix one accented word
Vittorio Giovara [Mon, 24 Feb 2014 15:59:40 +0000 (16:59 +0100)]
doc: name correct header
Anton Khirnov [Wed, 19 Feb 2014 19:55:27 +0000 (20:55 +0100)]
af_volume: preserve frame properties
Anton Khirnov [Wed, 19 Feb 2014 19:42:39 +0000 (20:42 +0100)]
af_resample: preserve frame properties
Anton Khirnov [Wed, 19 Feb 2014 15:16:43 +0000 (16:16 +0100)]
avconv: remove a write-only variable
Derek Buitenhuis [Fri, 21 Feb 2014 17:11:00 +0000 (12:11 -0500)]
libx265: Properly handled dynamic linking with MSVC
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Derek Buitenhuis [Fri, 21 Feb 2014 17:05:50 +0000 (12:05 -0500)]
libx265: Support SAR
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Derek Buitenhuis [Fri, 21 Feb 2014 16:59:13 +0000 (11:59 -0500)]
libx265: Support 4:4:4
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Derek Buitenhuis [Fri, 21 Feb 2014 16:26:40 +0000 (11:26 -0500)]
libx265: Update API usage
Framerate is now a sane rational instead of an integer, and
inputDepth is changed to what it actually is.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Anton Khirnov [Tue, 11 Feb 2014 14:08:12 +0000 (15:08 +0100)]
Use av_frame_copy() to simplify code where appropriate.
Anton Khirnov [Tue, 11 Feb 2014 13:59:00 +0000 (14:59 +0100)]
lavc: use AVFrame API properly in ff_reget_buffer()
Anton Khirnov [Tue, 11 Feb 2014 13:15:20 +0000 (14:15 +0100)]
frame: add a convenience function for copying AVFrame data
Anton Khirnov [Sun, 23 Feb 2014 07:05:52 +0000 (08:05 +0100)]
avconv: support forcing codec tags for input streams
James Almer [Sat, 22 Feb 2014 04:54:02 +0000 (04:54 +0000)]
x86: add detection for Bit Manipulation Instruction sets
Based on x264 code
Signed-off-by: James Almer <jamrial@gmail.com>
James Almer [Sat, 22 Feb 2014 04:54:01 +0000 (04:54 +0000)]
x86: add detection for FMA3 instruction set
Based on x264 code
Signed-off-by: James Almer <jamrial@gmail.com>
James Almer [Sat, 22 Feb 2014 04:54:00 +0000 (04:54 +0000)]
x86: add missing XOP checks and macros
Signed-off-by: James Almer <jamrial@gmail.com>
Janne Grunau [Sun, 23 Feb 2014 13:09:06 +0000 (14:09 +0100)]
configure: disable cpunop if the check fails
Moving cpunop from the HAVE_LIST to the ARCH_EXT_LIST_X86 has the side
effect of enabling it. The semantics of the check have to be changed
from enable if successful to disable if unsuccessful. This was missing
in
2b0bb69997c2416e74f41aa1400ce983bf8775c0 causing build errors with
nasm.
Luca Barbato [Wed, 19 Feb 2014 20:56:35 +0000 (21:56 +0100)]
hevc: Do not left shift a negative value in hevc_loop_filter_chroma
Luca Barbato [Wed, 19 Feb 2014 21:21:43 +0000 (22:21 +0100)]
hevc: Do not right shift a negative value in get_pcm
Luca Barbato [Wed, 19 Feb 2014 19:38:53 +0000 (20:38 +0100)]
hevc: Drop unnecessary shifts in deblocking_filter_CTB
beta_offset is pre-multiplied by 2.
Anton Khirnov [Thu, 25 Apr 2013 18:12:47 +0000 (20:12 +0200)]
lavr: return an error if a avresample_open() is called on an open context
Anton Khirnov [Thu, 25 Apr 2013 18:08:49 +0000 (20:08 +0200)]
lavr: add a function for checking whether AVAudioResampleContext is open
Luca Barbato [Sat, 22 Feb 2014 10:19:03 +0000 (11:19 +0100)]
h264: Fix a typo from the previous commit
f777504f640260337974848c7d5d7a3f064bbb45 changed a - in +
CC: libav-stable@libav.org
Tomas Härdin [Sat, 10 Mar 2012 16:03:00 +0000 (17:03 +0100)]
mxf: Add DNxHD UL
Note that the old DNxHD UL is actually JPEG 2000 according to RP224.
Leaving it as-is for now.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Philip de Nier [Tue, 28 Feb 2012 14:16:37 +0000 (14:16 +0000)]
mxf: Add uncompressed 422 8-bit rawvideo UL
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Diego Biurrun [Fri, 21 Feb 2014 10:08:09 +0000 (11:08 +0100)]
libvorbis: Give consistent names to all functions, structs, and defines
Vittorio Giovara [Thu, 20 Feb 2014 01:38:32 +0000 (02:38 +0100)]
h264: Lower bound check for slice offsets
And use the value from the specification.
Sample-Id:
00000451-google
Found-by: Mateusz j00ru Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Luca Barbato [Wed, 19 Feb 2014 20:41:12 +0000 (21:41 +0100)]
avconv: Do not divide by zero
Luca Barbato [Wed, 19 Feb 2014 19:20:39 +0000 (20:20 +0100)]
configure: Add usan to the toolchain presets
clang-3.4 and gcc-4.9 have it.
Diego Biurrun [Sat, 2 Nov 2013 16:21:52 +0000 (17:21 +0100)]
configure: Move cpunop into ARCH_EXT_LIST_X86
It is a processor feature, so it belongs there.
Diego Biurrun [Sat, 2 Nov 2013 16:21:50 +0000 (17:21 +0100)]
configure: Move inet_aton check into network function check block
Janne Grunau [Fri, 7 Feb 2014 15:05:50 +0000 (16:05 +0100)]
aarch64: use EXTERN_ASM consistently for exported symbols
Based on
e3fec3f095ab5ea08ee662942d98526aaf5e3635 for arm.
Christophe Gisquet [Fri, 14 Feb 2014 15:03:12 +0000 (15:03 +0000)]
x86: float dsp: unroll SSE versions
vector_fmul and vector_fmac_scalar are guaranteed that they can process in
batch of 16 elements, but their SSE versions only does 8 at a time.
Therefore, unroll them a bit.
299 to 261c for 256 elements in vector_fmac_scalar on Arrandale/Win64.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Christophe Gisquet [Fri, 14 Feb 2014 15:03:10 +0000 (15:03 +0000)]
dca: replace some memcpy by AV_COPY128
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Janne Grunau [Fri, 14 Feb 2014 16:00:06 +0000 (17:00 +0100)]
h264: avoid undefined behavior in chroma motion compensation
Makes fate-h264 pass under valgrind --undef-value-errors=yes with
-cpuflags none. {avg,put}_h264_chroma_mc8_8 approximately 5% faster,
{avg,put}_h264_chroma_mc4_8 2% faster both on x86 and arm.
Diego Biurrun [Thu, 20 Feb 2014 10:27:21 +0000 (02:27 -0800)]
mpeg4video_parser: Drop pointless av_-prefix from static function
Diego Biurrun [Thu, 6 Feb 2014 17:29:51 +0000 (18:29 +0100)]
avcodec: Consistently name encoder init functions foo_encode_init
Diego Biurrun [Mon, 23 Dec 2013 15:39:36 +0000 (16:39 +0100)]
x86: dsputil: Use correct file name as multiple inclusion guard
Diego Biurrun [Sun, 22 Dec 2013 13:19:28 +0000 (14:19 +0100)]
bit_depth_template: Use file name as multiple inclusion guard
Diego Biurrun [Tue, 28 Jan 2014 07:23:02 +0000 (08:23 +0100)]
svq3: Adjust #endif comment
Diego Biurrun [Wed, 19 Feb 2014 19:33:28 +0000 (20:33 +0100)]
build: The MPEG-4 video parser depends on h263dsp
The dependency is indirect through the h263/mpegvideo code.
CC: libav-stable@libav.org
Leandro Dorileo [Fri, 31 Jan 2014 16:48:11 +0000 (14:48 -0200)]
libavformat/mpegts: expose raw packet size
We cannot easily determine if an mpeg TS's packet size is DVHS, FEC
or so on, for that we need to expose the internal raw_packet_size
field.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Sat, 15 Feb 2014 07:24:23 +0000 (08:24 +0100)]
AVOptions: add flags for read/read-only options
Anton Khirnov [Sat, 15 Feb 2014 07:14:03 +0000 (08:14 +0100)]
AVOptions: deprecate unused AV_OPT_FLAG_METADATA
It was never used since it was added and the things it was intended for
are now exported differently.
Luca Barbato [Tue, 18 Feb 2014 22:58:59 +0000 (23:58 +0100)]
hevc: Always consider VLC NALU type mismatch fatal
Sample-Id:
00001667-google
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
Luca Barbato [Tue, 18 Feb 2014 22:55:29 +0000 (23:55 +0100)]
hevc: Mention the missing SPS in the error message
Luca Barbato [Tue, 18 Feb 2014 20:57:12 +0000 (21:57 +0100)]
doc: Name the MOV muxer as it should be called
The section name is the muxer, not the format.
Luca Barbato [Tue, 18 Feb 2014 16:12:30 +0000 (17:12 +0100)]
doc: Sort the muxer documentation
Keep the sections alphabetically sorted.
Diego Biurrun [Wed, 18 Dec 2013 21:29:25 +0000 (22:29 +0100)]
threads: Check w32threads dependencies at the configure stage
Also add warning comment about threading implementations without matching
atomics implementation to the atomics fallback implementation.
Vittorio Giovara [Fri, 14 Feb 2014 04:57:47 +0000 (05:57 +0100)]
vf_interlace: deprecate lowpass option
Diego Biurrun [Tue, 18 Feb 2014 13:30:04 +0000 (14:30 +0100)]
x86: dca: Add missing multiple inclusion guards
Diego Biurrun [Tue, 18 Feb 2014 17:37:48 +0000 (18:37 +0100)]
gitignore: Add all examples below doc/examples
Martin Storsjö [Tue, 18 Feb 2014 14:11:59 +0000 (16:11 +0200)]
movenc: Add a fallback fragmentation method for plain mp4 as well
Previously the default fragmentation method was only enabled
if writing an ISM file.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Fri, 7 Feb 2014 14:22:54 +0000 (16:22 +0200)]
arm: Mark the stack as non-executable
If linking in an object file without this attribute set, the
linker will assume that an executable stack might be needed.
Signed-off-by: Martin Storsjö <martin@martin.st>
Luca Barbato [Tue, 18 Feb 2014 22:47:55 +0000 (23:47 +0100)]
h264: informative error reporting in decode_slice_header()
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Luca Barbato [Tue, 18 Feb 2014 22:47:32 +0000 (23:47 +0100)]
h264: fix slice_type value reported in decode_slice_header()
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Diego Biurrun [Sun, 16 Feb 2014 21:09:30 +0000 (22:09 +0100)]
doxygen: Replace @parblock syntax with manual linebreaks
@parblock is only supported in very recent Doxygen versions.