Janne Grunau [Wed, 5 Dec 2012 19:08:01 +0000 (20:08 +0100)]
h264: slice-mt: check master context for valid current_picture_ptr
Fixes errors in slice based multithreading introduced in
0b300daad2f5.
CC: libav-stable@libav.org
Janne Grunau [Wed, 5 Dec 2012 18:56:36 +0000 (19:56 +0100)]
h264: slice-mt: get last_pic_dropable from master context
Fixes fate-h264-conformance-cvnlfi2_sony_h and smllwebdl.mkv from
https://github.com/OpenELEC/OpenELEC.tv/issues/1557 .
CC: libav-stable@libav.org
Justin Ruggles [Tue, 4 Dec 2012 18:46:20 +0000 (13:46 -0500)]
alacenc: add support for multi-channel encoding
Paul B Mahol [Wed, 5 Dec 2012 00:38:09 +0000 (00:38 +0000)]
pixdesc: fix yuva 10bit bit depth
It was wrongly set as the yuva 16bit one.
Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Justin Ruggles [Tue, 2 Oct 2012 20:08:20 +0000 (16:08 -0400)]
avconv: deprecate the -vol option
Remove the code for volume scaling in avconv.c and instead auto-insert a
volume filter into the beginning of the filter chain.
Justin Ruggles [Tue, 25 Sep 2012 12:41:39 +0000 (08:41 -0400)]
x86: af_volume: add SSE2/SSSE3/AVX-optimized s32 volume scaling
Justin Ruggles [Sun, 23 Sep 2012 18:49:26 +0000 (14:49 -0400)]
x86: af_volume: add SSE2-optimized s16 volume scaling
Justin Ruggles [Sat, 29 Sep 2012 04:38:13 +0000 (00:38 -0400)]
lavfi: add volume filter
Based on the volume filter in FFmpeg written by Stefano Sabatini
<stefasab@gmail.com>.
Justin Ruggles [Sat, 29 Sep 2012 04:34:28 +0000 (00:34 -0400)]
lavu/opt: do not filter out the initial sign character except for flags
This allows parsing of special-case negative numbers like decibels.
Justin Ruggles [Fri, 28 Sep 2012 20:36:58 +0000 (16:36 -0400)]
eval: treat dB as decibels instead of decibytes
Justin Ruggles [Mon, 24 Sep 2012 19:00:53 +0000 (15:00 -0400)]
float_dsp: add vector_dmul_scalar() to multiply a vector of doubles
Include x86-optimized versions for SSE2 and AVX.
Mans Rullgard [Tue, 4 Dec 2012 15:53:01 +0000 (15:53 +0000)]
fate: workaround for slighly broken 'test' shell builtin
Some shells, e.g. minix3, have a broken 'test' builtin which fails
if the first operand of a binary operator looks like a unary operator.
Prefixing the values with 'x' prevents this from happening.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Janne Grunau [Sun, 2 Dec 2012 21:15:42 +0000 (22:15 +0100)]
mimic: initialize padding of swap_buf through av_fast_padded_malloc
Janne Grunau [Sun, 2 Dec 2012 21:09:36 +0000 (22:09 +0100)]
eamad: initialize padding of bitstream_buf through av_fast_padded_malloc()
Janne Grunau [Sat, 1 Dec 2012 22:42:11 +0000 (23:42 +0100)]
raw demuxer: initialize end of partial packets
Anton Khirnov [Tue, 13 Nov 2012 18:35:22 +0000 (19:35 +0100)]
lavc: fix decode_frame() third parameter semantics for video decoders
It's got_frame, not data size
Anton Khirnov [Mon, 12 Nov 2012 19:01:32 +0000 (20:01 +0100)]
lavc: factorise setting buffer type in avcodec_default_get_buffer().
Anton Khirnov [Mon, 12 Nov 2012 18:56:55 +0000 (19:56 +0100)]
lavc: don't reuse audio buffers
Any performance gain from this is negligible and not worth the extra
code.
Anton Khirnov [Sun, 11 Nov 2012 08:14:07 +0000 (09:14 +0100)]
lavc: set frame properties in ff_get_buffer().
There is no point in duplicating this code in every get_buffer()
implementation.
Anton Khirnov [Sat, 10 Nov 2012 12:22:56 +0000 (13:22 +0100)]
lavc: add a wrapper for AVCodecContext.get_buffer().
It will be useful in the upcoming transition to refcounted AVFrames.
Anton Khirnov [Sat, 20 Oct 2012 13:22:41 +0000 (15:22 +0200)]
Remove pointless #undefs of previously forbidden functions.
Diego Biurrun [Wed, 28 Nov 2012 16:06:04 +0000 (17:06 +0100)]
fate: Add dependencies for bmp, cdxl, dfa, mp3
Luca Barbato [Mon, 3 Dec 2012 21:53:30 +0000 (22:53 +0100)]
ppc: always use pic for shared libraries
CC: libav-stable@libav.org
Diego Biurrun [Thu, 29 Nov 2012 18:20:56 +0000 (19:20 +0100)]
build: cosmetics: Move CONFIG_RTPDEC entry to a more suitable place
Diego Biurrun [Wed, 28 Nov 2012 16:54:07 +0000 (17:54 +0100)]
fate: ea, h264: prettyprinting and ordering cosmetics
Martin Storsjö [Sat, 17 Nov 2012 14:34:54 +0000 (16:34 +0200)]
configure: Strip ordinals from mingw generated def files
The def files are used for generating import libraries for
other toolchains (in particular, for generating import libraries
for MSVC for DLLs built with mingw).
The def files produced by mingw/gcc contains ordinals for each
exported function. When MSVC tools generate import libraries
from such a def file, MSVC links to the DLL by the ordinals
instead of linking by name.
Since the def files aren't maintained by hand, the ordinal
numbers are assigned (more or less) randomly and any caller
linking to the libs by ordinals will break as soon as the libraries
export more/fewer functions.
Therefore, strip out the ordinals from the generated def files,
to make users link to the libraries by name.
Callers linking to the DLLs using the gcc provided import library
link by name as they should.
Signed-off-by: Martin Storsjö <martin@martin.st>
Mans Rullgard [Fri, 30 Nov 2012 21:58:42 +0000 (21:58 +0000)]
configure: arm: detect default thumb state of compiler
This makes configure honour the compiler default if thumb is not
explicitly enabled or disabled.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Diego Biurrun [Wed, 28 Nov 2012 23:22:25 +0000 (00:22 +0100)]
fate: fft: Fix libavcodec dependency
Diego Biurrun [Sat, 1 Dec 2012 16:56:00 +0000 (17:56 +0100)]
build: Make the ISMV muxer select the MOV muxer
They share the same code, so building one w/o the other makes no sense.
Mans Rullgard [Sat, 1 Dec 2012 12:26:12 +0000 (12:26 +0000)]
configure: move arm arch extensions to a separate variable
Signed-off-by: Mans Rullgard <mans@mansr.com>
Janne Grunau [Sun, 2 Dec 2012 23:37:07 +0000 (00:37 +0100)]
fate-seek: remove use of gnu make 3.82 only private modifier
Janne Grunau [Sun, 2 Dec 2012 23:36:10 +0000 (00:36 +0100)]
fate: move vsynth reference files to their own directory
Janne Grunau [Sun, 2 Dec 2012 23:29:35 +0000 (00:29 +0100)]
fate: move fate-acodec reference files to their own dir
Diego Biurrun [Wed, 28 Nov 2012 23:14:23 +0000 (00:14 +0100)]
configure: avplay now depends on avresample
Janne Grunau [Sun, 2 Dec 2012 19:31:20 +0000 (20:31 +0100)]
fate: split dependencies for fate-seek tests
Each fate-seek test depends now only on the corresponding fate-acodec,
fate-vsynth2 or fate-lavf test which creates the file seek-tests
operates on. The tests and references are renamed to match the test they
depend on.
Janne Grunau [Wed, 21 Nov 2012 18:41:59 +0000 (19:41 +0100)]
h264: error out on unset current_picture_ptr for h->current_slice > 0
Fixes a segfault with fuzzed sample sample_varPAR_s11622_r001-02.avi.
CC: libav-stable@libav.org
Janne Grunau [Fri, 30 Nov 2012 14:44:19 +0000 (15:44 +0100)]
avprobe: report per stream bit rate if set by the decoder
Christophe Gisquet [Wed, 28 Nov 2012 21:47:25 +0000 (22:47 +0100)]
aac: avoid a memcpy in sbr_qmf_analysis
Swapping buffer indices allows saving one memcpy that accounts for 1% of the
runtime, according to oprofile.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Mans Rullgard [Thu, 29 Nov 2012 18:03:50 +0000 (18:03 +0000)]
configure: fix indentation in option parsing loop
Signed-off-by: Mans Rullgard <mans@mansr.com>
Martin Storsjö [Fri, 30 Nov 2012 14:57:02 +0000 (16:57 +0200)]
configure: Use headers in the check for _beginthreadex for w32threads
When targeting the metro API subset, this function still exists in
the link libraries, but is excluded from the headers. This makes
sure w32threads is automatically disabled when targeting this API
subset (since not all the necessary functions for it are available).
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Fri, 30 Nov 2012 14:56:57 +0000 (16:56 +0200)]
avutil: Use a configure check to enable windows console functions
Not all versions or API subsets of windows have these functions.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Fri, 30 Nov 2012 14:56:54 +0000 (16:56 +0200)]
avutil: Include io.h with a separate condition from windows console functions
Not all versions of windows have the console color functions,
while io.h might be needed for isatty (which can be found in
unistd.h or io.h).
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Thu, 29 Nov 2012 15:02:42 +0000 (17:02 +0200)]
avutil: Include io.h with a separate condition from MapViewOfFile
The existence of MapViewOfFile isn't linked to the existence of
io.h.
Not all versions of windows have MapViewOfFile (in particular,
Windows Phone 8 and the "metro" windows 8 API subset don't),
while they still have io.h (and need it for open/read/close).
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Thu, 29 Nov 2012 15:02:24 +0000 (17:02 +0200)]
cmdutils: Use a configure check for enabling CommandLineToArgvW
This simplifies the condition to avoid hardcoding the systems
where the function exists. This also simplifies support for
newer Windows API subsets where this function doesn't exist,
such as Windows Phone 8 and the "metro" API subset of Windows 8.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Thu, 29 Nov 2012 09:34:05 +0000 (10:34 +0100)]
build: The FLAC encoder also depends on the flacdsp code
Fixes linking with only the FLAC encoder enabled.
Diego Biurrun [Thu, 29 Nov 2012 03:56:40 +0000 (04:56 +0100)]
img2: K&R formatting cosmetics
Also introduce local img_ namespace to simplify debugging.
Janne Grunau [Wed, 28 Nov 2012 21:17:14 +0000 (22:17 +0100)]
h264: check context state before decoding slice data partitions
Fixes mov_h264_aac__Demo_FlagOfOurFathers.mov.SIGSEGV.4e9.656.
Found-by: Mateusz "j00ru" Jurczyk
CC: libav-stable@libav.org
Janne Grunau [Wed, 28 Nov 2012 16:31:35 +0000 (17:31 +0100)]
flashsv: make sure data for zlib priming is available
Fixes a segfault in the fuzzed sample resolutionchange.flv_s314809.
CC: libav-stable@libav.org
Anton Khirnov [Wed, 28 Nov 2012 20:23:57 +0000 (21:23 +0100)]
avplay: Do not use removed av_get_int()
Fixes build with lavfi disabled.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Justin Ruggles [Tue, 2 Oct 2012 18:12:27 +0000 (14:12 -0400)]
avconv: fix variable shadowing in configure_input_audio_filter()
Diego Biurrun [Wed, 28 Nov 2012 16:53:47 +0000 (17:53 +0100)]
fate: h264: Add dependencies
Diego Biurrun [Wed, 28 Nov 2012 16:16:34 +0000 (17:16 +0100)]
fate: ea: Add dependencies
Diego Biurrun [Wed, 28 Nov 2012 15:59:13 +0000 (16:59 +0100)]
fate: Do not unconditionally run libavutil tests
Now that libavutil can be disabled, this should be conditional.
Diego Biurrun [Wed, 28 Nov 2012 15:23:23 +0000 (16:23 +0100)]
rtpenc_chain: Remove unused variable
Justin Ruggles [Tue, 27 Nov 2012 22:47:19 +0000 (17:47 -0500)]
nuv: check for malloc failure when allocating extradata
Also make sure extradata is freed in the case where multiple
NUV_EXTRADATA frame types are found. This may not happen in practice,
but it could happen in a malformed stream, which would lead to a memleak
if not handled.
Justin Ruggles [Tue, 27 Nov 2012 21:41:11 +0000 (16:41 -0500)]
nuv: use the stream indices generated by avformat_new_stream()
Justin Ruggles [Tue, 27 Nov 2012 20:19:00 +0000 (15:19 -0500)]
nuv: cosmetics: pretty-printing
Justin Ruggles [Tue, 27 Nov 2012 04:36:13 +0000 (23:36 -0500)]
lavf: move nuv fourcc audio tags from riff to nuv
Justin Ruggles [Tue, 27 Nov 2012 19:52:38 +0000 (14:52 -0500)]
lavf: add a common function for selecting a pcm codec from parameters
Justin Ruggles [Tue, 27 Nov 2012 16:52:28 +0000 (11:52 -0500)]
lavf: move ff_codec_get_tag() and ff_codec_get_id() definitions to internal.h
Justin Ruggles [Tue, 27 Nov 2012 04:23:01 +0000 (23:23 -0500)]
lavf: move "MP3 " fourcc from riff to nut
Original commit, 7b24f9b, says it was added because it is used in libnut.
Diego Biurrun [Wed, 28 Nov 2012 10:27:59 +0000 (11:27 +0100)]
fate: vpx: Add dependencies
Diego Biurrun [Wed, 28 Nov 2012 10:14:22 +0000 (11:14 +0100)]
fate: Fix wavpack-matroskamode test dependencies
Diego Biurrun [Mon, 16 Jul 2012 00:05:16 +0000 (02:05 +0200)]
x86: dsputilenc: port to cpuflags
Diego Biurrun [Wed, 28 Nov 2012 10:45:17 +0000 (11:45 +0100)]
fate: Add dependencies for Vorbis, ProRes, QTRLE, utvideo tests
Diego Biurrun [Wed, 28 Nov 2012 10:44:56 +0000 (11:44 +0100)]
fate: real: Add dependencies
Diego Biurrun [Wed, 28 Nov 2012 10:44:24 +0000 (11:44 +0100)]
fate: lossless-audio: Add dependencies
Diego Biurrun [Tue, 27 Nov 2012 19:35:27 +0000 (20:35 +0100)]
x86: h264dsp: Fix linking with yasm and optimizations disabled
Some optimized functions reference optimized symbols, so the functions
must be explicitly disabled when those symbols are unavailable.
Anton Khirnov [Tue, 27 Nov 2012 07:59:55 +0000 (08:59 +0100)]
vf_fieldorder: require write permissions
This filter modifies the input frame.
Anton Khirnov [Tue, 27 Nov 2012 07:59:22 +0000 (08:59 +0100)]
vf_fieldorder: reindent
Anton Khirnov [Tue, 27 Nov 2012 06:49:45 +0000 (07:49 +0100)]
lavfi: merge start_frame/draw_slice/end_frame
Any alleged performance benefits gained from the split are purely
mythological and do not justify added code complexity.
Anton Khirnov [Tue, 27 Nov 2012 09:41:22 +0000 (10:41 +0100)]
lavfi: remove vf_slicify
The following commit will make it useless.
The crop_scale_vflip FATE test changes because of off-by-one differences
in output when vflipped slices are passed to sws.
Anton Khirnov [Tue, 27 Nov 2012 10:35:55 +0000 (11:35 +0100)]
asink_nullsink: plug a memory leak.
Diego Biurrun [Sun, 15 Jul 2012 13:43:47 +0000 (15:43 +0200)]
x86: h264_idct: port to cpuflags
Diego Biurrun [Tue, 27 Nov 2012 18:47:34 +0000 (19:47 +0100)]
x86: cpu: Drop unused HAVE_RWEFLAGS condition
The test for rweflags was dropped in a previous commit.
Piotr Bandurski [Tue, 27 Nov 2012 14:05:46 +0000 (14:05 +0000)]
vble: Do not abort decoding when version is not 1
Some combinations of OS, VirtualDub, and VBLE can accidentally
set the version to a value other than 1. Since no other version
of VBLE was ever released, simply warn about it.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Justin Ruggles [Thu, 1 Nov 2012 15:08:08 +0000 (11:08 -0400)]
lavr: do not pass consumed samples as a parameter to ff_audio_resample()
Since the resampler handles buffering of unconsumed samples internally, the
caller does not need this information.
Justin Ruggles [Thu, 1 Nov 2012 05:10:37 +0000 (01:10 -0400)]
lavr: correct the documentation for the ff_audio_resample() return value
Justin Ruggles [Thu, 1 Nov 2012 04:44:11 +0000 (00:44 -0400)]
lavr: do not pass sample count as a parameter to ff_audio_convert()
It will always be the number of samples in the input buffer, so just use that
directly instead of passing it as a separate parameter.
Diego Biurrun [Sun, 29 Jul 2012 13:54:55 +0000 (15:54 +0200)]
x86: h264_weight: port to cpuflags
Martin Storsjö [Fri, 9 Nov 2012 12:32:38 +0000 (14:32 +0200)]
configure: Enable avconv filter dependencies automatically
This makes sure minimal configurations such as
"--disable-everything --enable-avconv" will enable the filters
necessary for running avconv, instead of just keeping avconv
disabled (even if the user specified "--enable-avconv").
Signed-off-by: Martin Storsjö <martin@martin.st>
Janne Grunau [Sun, 25 Nov 2012 18:42:16 +0000 (19:42 +0100)]
h264: set Picture.owner2 to the current thread
This does not seem to have an effect currently. Fate-h264 passes with
THREADS=1..16 and both threading types as before. It fixes however a
segfault during error resilience with my adaptive-frame-mt patchset.
A picture in use during error resilience gets realloced in another
thread in the fuzzed sample sample_varPAR.avi_s226019.
Janne Grunau [Sun, 25 Nov 2012 15:02:02 +0000 (16:02 +0100)]
h264: check ref_count validity for num_ref_idx_active_override_flag
Fixes segfault in the fuzzed sample bipbop234.ts_s226407.
CC: libav-stable@libav.org
Janne Grunau [Wed, 21 Nov 2012 19:13:15 +0000 (20:13 +0100)]
h264: add missing new line to log message
Michael Niedermayer [Mon, 29 Oct 2012 04:21:47 +0000 (05:21 +0100)]
dcadec: skip QMF on unused channels
When the extra rear channel is present but unused, the
s->channel_order_tab[] value for that channel is -1. The QMF can be
skipped for the extra channel, and doing so avoids an out-of-array read
on s->samples_chanptr[].
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Michael Niedermayer [Tue, 30 Oct 2012 20:48:39 +0000 (21:48 +0100)]
wavenc: write fact chunk sample count at the correct file position
Fixes curruption of metadata in the INFO chunk.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Justin Ruggles [Sun, 25 Nov 2012 17:40:54 +0000 (12:40 -0500)]
riff: do not add empty metadata tags in INFO chunk
Justin Ruggles [Sun, 25 Nov 2012 17:38:58 +0000 (12:38 -0500)]
riff: only warn on a bad INFO chunk code size instead of failing
fixes Bug 392
Diego Biurrun [Sun, 11 Nov 2012 12:37:40 +0000 (13:37 +0100)]
configure: Add separate list for libraries and use where appropriate
Justin Ruggles [Sat, 22 Sep 2012 22:41:25 +0000 (18:41 -0400)]
x86: float_dsp: add SSE version of vector_fmul_scalar()
Justin Ruggles [Sat, 22 Sep 2012 22:13:57 +0000 (18:13 -0400)]
dsputil: move vector_fmul_scalar() to AVFloatDSPContext in libavutil
Michael Niedermayer [Mon, 26 Nov 2012 15:30:51 +0000 (10:30 -0500)]
aacenc: use the correct output buffer
This fixes segfault caused by
3d3cf6745e2a5dc9c377244454c3186d75b177fa
when SingleChannelElement.ret was renamed to SingleChannelElement.ret_buf.
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Mans Rullgard [Sat, 24 Nov 2012 13:12:47 +0000 (13:12 +0000)]
aacdec: fix signed overflows in lcg_random()
Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard [Sat, 24 Nov 2012 13:03:53 +0000 (13:03 +0000)]
base64: fix signed overflow in shift
Signed-off-by: Mans Rullgard <mans@mansr.com>
Janne Grunau [Fri, 23 Nov 2012 13:05:36 +0000 (14:05 +0100)]
lavf: avoid integer overflow in ff_compute_frame_duration()
Scaling the denominator instead of the numerator if it is too large
loses precision. Fixes an assert caused by a negative frame duration in
the fuzzed sample nasa-8s2.ts_s202310.
CC: libav-stable@libav.org
Janne Grunau [Sat, 24 Nov 2012 14:50:03 +0000 (15:50 +0100)]
flashsv: check for keyframe before using differential coding
Fixes a segfault in te fuzzed sample resolutionchange.flv_s211713.
CC: libav-stable@libav.org
Janne Grunau [Fri, 16 Nov 2012 13:31:09 +0000 (14:31 +0100)]
h264: enable low delay only if no delayed frames were seen
Dropping frames is undesirable but that is the only way by which the
decoder could return to low delay mode. Instead emit a warning and
continue with delayed frames.
Fixes a crash in fuzzed sample nasa-8s2.ts_s20033 caused by a larger
than expected has_b_frames value. Low delay keeps getting re-enabled
from a presumely broken SPS.
CC: libav-stable@libav.org
Diego Biurrun [Mon, 26 Nov 2012 00:44:29 +0000 (01:44 +0100)]
x86: fix build without inline asm
The qpel functions referenced here are not related to h264 and should
thus never have been under CONFIG_H264QPEL.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Justin Ruggles [Sun, 14 Oct 2012 04:12:55 +0000 (00:12 -0400)]
aacdec: use float planar sample format for output
Justin Ruggles [Sun, 25 Nov 2012 16:37:14 +0000 (11:37 -0500)]
lavc: clarify get_buffer() documentation
This is needed for the AAC decoder, which may need to call get_buffer()
more than once if the channel configuration changes.