Oana Stratulat [Wed, 4 Jan 2012 23:08:05 +0000 (01:08 +0200)]
Report an error if pitch_lag is zero in AMR-NB decoder.
This fixes an infinite loop in the decoder on specially
crafted files, and fixes bug 151.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Ronald S. Bultje [Thu, 5 Jan 2012 05:27:31 +0000 (21:27 -0800)]
Revert "4xm: Prevent buffer overreads."
This reverts commit
295a7c0238e84b0ffa8f21ed938d45f51f54a4cd. The
patch breaks decoding of regular files (e.g. fate-4xm-2).
Aneesh Dogra [Wed, 4 Jan 2012 19:58:21 +0000 (01:28 +0530)]
4xm: Prevent buffer overreads.
4xm decoder while decoding i2 frames can overread the buffer if proper checks
are not made.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Aneesh Dogra [Wed, 4 Jan 2012 18:40:01 +0000 (00:10 +0530)]
4xm: pass the correct remaining buffer size to decode_i2_frame().
frame_size is the number of bytes left in the packet, so if we are passing
buf-4 we can safely read frame_size+4 bytes.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Aneesh Dogra [Wed, 4 Jan 2012 19:12:26 +0000 (00:42 +0530)]
4xm: fix calculation of the next output line position in decode_i2_frame().
The current code doesn't work unless width is an exact multiple of 16.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Shitiz Garg [Thu, 15 Dec 2011 19:06:27 +0000 (00:36 +0530)]
mtv: Make sure audio_subsegments is not 0
audio_subsegments would be 0 and cause floating point exceptions
Fixes bugzilla #144
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Janne Grunau [Wed, 4 Jan 2012 19:29:57 +0000 (20:29 +0100)]
v4l2: use V4L2_FMT_FLAG_EMULATED only if it is defined
V4L2_FMT_FLAG_EMULATED was added in 2.6.32.
Anton Khirnov [Sat, 26 Nov 2011 10:01:33 +0000 (11:01 +0100)]
avconv: add symbolic names for -vsync parameters
Jean First [Fri, 30 Dec 2011 20:08:02 +0000 (21:08 +0100)]
flvdec: Fix compiler warning for uninitialized variables
These can't be used uninitialized in practice, but the
compiler doesn't realize it.
Signed-off-by: Martin Storsjö <martin@martin.st>
Jean First [Tue, 3 Jan 2012 22:01:28 +0000 (23:01 +0100)]
rtsp: Fix compiler warning for uninitialized variable
This one won't ever be used uninitialized in practice, but
the compiler doesn't realize it.
Signed-off-by: Martin Storsjö <martin@martin.st>
Ronald S. Bultje [Wed, 4 Jan 2012 04:41:18 +0000 (20:41 -0800)]
ulti: convert to new bytestream API.
Diego Biurrun [Tue, 3 Jan 2012 09:29:19 +0000 (10:29 +0100)]
swscale: Use standard multiple inclusion guards in ppc/ header files.
Diego Biurrun [Tue, 3 Jan 2012 12:25:25 +0000 (13:25 +0100)]
Place some START_TIMER invocations in separate blocks.
This fixes compilation failures related to START_TIMER/STOP_TIMER macros and
-Werror=declaration-after-statement. START_TIMER declares variables and thus
may not be placed after statements outside of a new block.
Luca Barbato [Tue, 27 Dec 2011 05:31:41 +0000 (06:31 +0100)]
v4l2: list available formats
Make use of the experimental framesize enumeration ioctl if available.
Luca Barbato [Tue, 27 Dec 2011 06:41:01 +0000 (07:41 +0100)]
v4l2: set the proper codec_tag
Unbreak direct streamcopy.
Luca Barbato [Tue, 27 Dec 2011 05:27:41 +0000 (06:27 +0100)]
v4l2: refactor device_open
Check capabilities directly in the function, further simplify the code.
Luca Barbato [Tue, 27 Dec 2011 04:52:02 +0000 (05:52 +0100)]
v4l2: simplify away io_method
Only mmap is supported.
Luca Barbato [Tue, 27 Dec 2011 04:37:58 +0000 (05:37 +0100)]
v4l2: cosmetics
Luca Barbato [Tue, 27 Dec 2011 02:38:13 +0000 (03:38 +0100)]
v4l2: uniform and format options
Luca Barbato [Mon, 21 Nov 2011 16:03:46 +0000 (17:03 +0100)]
v4l2: do not force interlaced mode
Video4linux2 supports both interlaced and non-interlaced mode, do not
ask for interlaced if not necessary.
Janne Grunau [Tue, 3 Jan 2012 17:11:36 +0000 (18:11 +0100)]
avio: exit early in fill_buffer without read_packet
Fixes an invalid free() with ass in avi. The sample in bug 98 passes
parts of AVPacket.data as buffer for the AVIOContext. Since the packet
is quite large fill_buffer tries to reallocate the buffer before doing
nothing. Fixes bug 98.
John Brooks [Sun, 11 Dec 2011 09:37:21 +0000 (02:37 -0700)]
vc1dec: fix invalid memory access for small video dimensions
For small video dimensions, these calculations of the upper bound
for pixel access may have a negative result. Using an unsigned
comparison to bound a potentially negative value only works if
the greater operand is non-negative. Fixed by doing edge emulation
when the upper bound is probably negative, everywhere that this
pattern appears.
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
John Brooks [Wed, 4 Jan 2012 06:27:35 +0000 (23:27 -0700)]
rv34: fix invalid memory access for small video dimensions
For small video dimensions calculations of the upper bound for pixel
access may result in negative value. Using an unsigned comparison
works only if the greater operand is non-negative. This is fixed by
doing edge emulation explicitly for such conditions.
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
Christophe GISQUET [Sun, 1 Jan 2012 14:28:47 +0000 (15:28 +0100)]
rv34: joint coefficient decoding and dequantization
Perform dequantization while decoding coefficients instead of performing it
on the entire coefficients buffer.
Since quantized coefficients are very sparse, this usually causes a small
speedup. Speedup of around 1% on Panda board compared to the removed here
neon code. Global speedup is probably around 3%.
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
Martin Storsjö [Fri, 30 Dec 2011 10:39:03 +0000 (12:39 +0200)]
avplay: Don't call avio_set_interrupt_cb(NULL)
Since we don't use avio_set_interrupt_cb for interrupt callbacks,
we don't need to call it to reset the interrupt cb either.
This avoids a warning about use of deprecated functions.
Signed-off-by: Martin Storsjö <martin@martin.st>
Ronald S. Bultje [Mon, 2 Jan 2012 20:46:40 +0000 (12:46 -0800)]
swscale: remove obsolete comment.
Ronald S. Bultje [Mon, 2 Jan 2012 20:31:38 +0000 (12:31 -0800)]
swscale: split scale.asm.
scale.asm keeps horizontal scaling functions, whereas output.asm gets
the vertical scaling/output functions.
Ronald S. Bultje [Mon, 2 Jan 2012 20:03:02 +0000 (12:03 -0800)]
swscale: don't show full-chroma-int warning for non-RGB output.
Non-RGB output always uses full chroma interpolation.
Ronald S. Bultje [Tue, 3 Jan 2012 21:05:37 +0000 (13:05 -0800)]
swscale: add MMX files to MMX-OBJS instead of OBJS.
Ronald S. Bultje [Sat, 31 Dec 2011 17:12:53 +0000 (09:12 -0800)]
h264: return index in buffer on end-of-sequence.
Fixes hangs if the last packet contains an end-of-sequence NAL unit,
bug 158.
Diego Biurrun [Tue, 3 Jan 2012 12:18:49 +0000 (13:18 +0100)]
Merge some declarations and initializations.
This fixes compilation failures related to START_TIMER/STOP_TIMER macros and
-Werror=declaration-after-statement. START_TIMER declares variables and thus
may not be placed after statements outside of a new block.
Diego Biurrun [Tue, 27 Dec 2011 10:51:28 +0000 (11:51 +0100)]
cabac: drop unused and disabled get_cabac_u() / get_cabac_ueg() functions
Diego Biurrun [Tue, 27 Dec 2011 11:25:18 +0000 (12:25 +0100)]
cabac: drop unused STRICT_LIMITS code branch
Justin Ruggles [Fri, 30 Dec 2011 22:56:04 +0000 (17:56 -0500)]
libspeexenc: fix pts calculations for more than 1 frame per packet
Justin Ruggles [Tue, 3 Jan 2012 22:32:15 +0000 (17:32 -0500)]
adxdec: clear eof flag and channel states when seeking
Justin Ruggles [Mon, 19 Dec 2011 16:31:14 +0000 (11:31 -0500)]
fate: add ADX encoding/decoding test
Justin Ruggles [Mon, 19 Dec 2011 16:10:34 +0000 (11:10 -0500)]
adx: add an adx muxer
Justin Ruggles [Mon, 19 Dec 2011 15:56:18 +0000 (10:56 -0500)]
adxenc: check output buffer size before writing
Justin Ruggles [Mon, 19 Dec 2011 15:51:03 +0000 (10:51 -0500)]
adxenc: use bytestream functions for header writing.
also add more documentation about the header structure
Justin Ruggles [Mon, 19 Dec 2011 15:23:21 +0000 (10:23 -0500)]
adxenc: use BLOCK_SIZE and BLOCK_SAMPLES macros
Justin Ruggles [Mon, 19 Dec 2011 15:18:09 +0000 (10:18 -0500)]
adxenc: use a loop to encode each channel
Justin Ruggles [Mon, 19 Dec 2011 15:14:35 +0000 (10:14 -0500)]
adxenc: remove unneeded loops
avctx->frame_size is 32, so that is how many samples we process per call.
Justin Ruggles [Mon, 19 Dec 2011 15:12:29 +0000 (10:12 -0500)]
adx: add AVFMT_GENERIC_INDEX to demuxer flags.
fixes seeking
Justin Ruggles [Mon, 19 Dec 2011 14:52:32 +0000 (09:52 -0500)]
adxenc: avoid stereo deinterleaving
Justin Ruggles [Mon, 19 Dec 2011 14:45:50 +0000 (09:45 -0500)]
adxenc: remove unnecessary setting of coded_frame->key_frame.
It is already set by avcodec_alloc_frame().
Justin Ruggles [Mon, 19 Dec 2011 14:45:17 +0000 (09:45 -0500)]
adxenc: log an error message and return AVERROR(EINVAL) for invalid channels
Justin Ruggles [Mon, 19 Dec 2011 14:39:05 +0000 (09:39 -0500)]
adxenc: cosmetics: pretty-printing
Justin Ruggles [Mon, 19 Dec 2011 14:29:11 +0000 (09:29 -0500)]
adxenc: change some data types
Justin Ruggles [Mon, 19 Dec 2011 14:28:15 +0000 (09:28 -0500)]
adxenc: remove unneeded log message
Justin Ruggles [Mon, 19 Dec 2011 14:28:02 +0000 (09:28 -0500)]
adxenc: remove unneeded comments
Jonathan Nieder [Tue, 3 Jan 2012 06:40:08 +0000 (00:40 -0600)]
APIchanges: mention cleaned up header includes
Fixes bug 188.
Signed-off-by: Jonathan Nieder <jrnieder@gmail.com>
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Oana Stratulat [Sun, 1 Jan 2012 18:55:21 +0000 (20:55 +0200)]
fate: add dxtory test
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Michael Niedermayer [Sun, 18 Dec 2011 17:57:56 +0000 (18:57 +0100)]
adx_parser: rewrite.
The previous code ended in multiple different infinite
loops. See stl_ten_1_big.sfd as example with and without zzuf
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Justin Ruggles [Mon, 19 Dec 2011 13:43:10 +0000 (08:43 -0500)]
adxdec: Validate channel count to fix a division by zero.
Michael Niedermayer [Sun, 18 Dec 2011 19:10:30 +0000 (20:10 +0100)]
adxdec: Do not require extradata.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Aneesh Dogra [Sat, 31 Dec 2011 12:31:54 +0000 (18:01 +0530)]
cmdutils: K&R reformatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Justin Ruggles [Wed, 7 Dec 2011 16:56:57 +0000 (11:56 -0500)]
alacdec: implement the 2-pass prediction type.
The reference encoder does not generate any streams using this, but the
reference decoder can handle it, so we should as well.
Justin Ruggles [Wed, 7 Dec 2011 18:01:01 +0000 (13:01 -0500)]
alacenc: implement the 2-pass prediction type.
This isn't used by the reference encoder, but it is supported by the decoder.
Justin Ruggles [Wed, 7 Dec 2011 17:04:21 +0000 (12:04 -0500)]
alacenc: do not generate invalid multi-channel ALAC files
Justin Ruggles [Wed, 7 Dec 2011 16:55:24 +0000 (11:55 -0500)]
alacdec: fill in missing or guessed info about the extradata format.
Now that there is official documentation from Apple about this, we don't have
to guess anymore.
Kostya Shishkov [Sun, 1 Jan 2012 16:44:08 +0000 (17:44 +0100)]
utvideo: proper median prediction for interlaced videos
Janne Grunau [Tue, 3 Jan 2012 14:30:30 +0000 (15:30 +0100)]
lavu: bump lavu minor for av_popcount64
Add it to doc/APIchanges and update and correct other entries.
Shitiz Garg [Tue, 3 Jan 2012 10:49:28 +0000 (16:19 +0530)]
dca: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Aneesh Dogra [Sun, 1 Jan 2012 16:46:37 +0000 (22:16 +0530)]
dct: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Anton Khirnov [Mon, 2 Jan 2012 08:01:02 +0000 (09:01 +0100)]
lavf: flush decoders in avformat_find_stream_info().
This means that avformat_find_stream_info() now works properly with
multiple threads, so there's no need to force thread count to 1.
Daniel Verkamp [Sun, 1 Jan 2012 23:54:40 +0000 (23:54 +0000)]
win32: detect number of CPUs using affinity
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Daniel Verkamp [Tue, 3 Jan 2012 01:23:48 +0000 (01:23 +0000)]
Add av_popcount64
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Diego Biurrun [Mon, 2 Jan 2012 16:29:10 +0000 (17:29 +0100)]
snow: Restore three mistakenly removed casts.
Janne Grunau [Sun, 1 Jan 2012 19:24:24 +0000 (20:24 +0100)]
mpegenc: use avctx->slices as number of slices
Adds a new member to MpegEncContext to hold the number of used slice
contexts. Fixes segfaults with '-threads 17 -thread_type slice' and
fate-vsynth{1,2}-mpeg{2,4}thread{,_ilace} with --disable-pthreads.
Janne Grunau [Mon, 2 Jan 2012 14:47:26 +0000 (15:47 +0100)]
v410enc: fix undefined signed left shift caused by integer promotion
Reinhard Tartler [Mon, 2 Jan 2012 16:01:56 +0000 (17:01 +0100)]
Release notes: mention cleaned up header includes
A rebuild in debian revealed that this broke compilation of a number packages:
http://bugs.debian.org/cgi-bin/pkgreport.cgi?users=siretart@tauware.de;tag=ftbfs-libav0.8
Reinhard Tartler [Mon, 2 Jan 2012 15:58:16 +0000 (16:58 +0100)]
fix Changelog file
Both the Indeo 4 decoder and the SMJPEG demuxer were included in the
0.8_beta1 release.
Diego Biurrun [Tue, 20 Dec 2011 14:39:22 +0000 (15:39 +0100)]
Fix a bunch of typos.
Diego Biurrun [Sat, 31 Dec 2011 15:30:59 +0000 (16:30 +0100)]
Drop some pointless void* return value casts from av_malloc() invocations.
Justin Ruggles [Mon, 2 Jan 2012 13:54:30 +0000 (08:54 -0500)]
wavpack: fix typos in previous cosmetic clean-up commit
Justin Ruggles [Mon, 2 Jan 2012 05:14:16 +0000 (00:14 -0500)]
wavpack: cosmetics: K&R pretty-printing
Anton Khirnov [Sat, 24 Dec 2011 14:08:07 +0000 (15:08 +0100)]
avconv: remove the 'codec framerate is different from stream' warning
Codec timebase is not framerate and the situation when it's different
from AVStream.r_frame_rate is quite common, nothing to warn about.
Hendrik Leppkes [Fri, 16 Dec 2011 21:41:29 +0000 (22:41 +0100)]
wavpack: determine sample_fmt before requesting a buffer
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Justin Ruggles [Sat, 31 Dec 2011 20:47:30 +0000 (15:47 -0500)]
bmv audio: implement new audio decoding API
Justin Ruggles [Sun, 1 Jan 2012 00:24:30 +0000 (19:24 -0500)]
mpegaudiodec: skip all channels when skipping granules
Also fix calculation of new position when switching buffers.
This fixes "overread" error messages when seeking.
Janne Grunau [Sun, 1 Jan 2012 22:32:15 +0000 (23:32 +0100)]
mpegenc: simplify muxrate calculation
The fate-h264-bsf-mp4toannexb failures were caused by an integer
overflow of the unneeded multiplication.
Inspired by patch by: Michael Niedermayer <michaelni@gmx.at>
Anton Khirnov [Sun, 1 Jan 2012 20:51:26 +0000 (21:51 +0100)]
avconv: make -frames work for all types of streams, not just video.
Aneesh Dogra [Sun, 1 Jan 2012 16:37:54 +0000 (22:07 +0530)]
bfi: K&R cosmetics
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Aneesh Dogra [Sat, 31 Dec 2011 12:30:22 +0000 (18:00 +0530)]
bgmc: K&R cleanup
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Reimar Döffinger [Wed, 28 Dec 2011 05:50:32 +0000 (00:50 -0500)]
rawdec: Set start_time to 0 for raw audio files.
None of the raw audio files have timestamps, thus setting
start_time to 0 should be reasonable.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Carl Eugen Hoyos [Wed, 28 Dec 2011 05:50:31 +0000 (00:50 -0500)]
Detect 'yuv2' as rawvideo also in avi.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Wed, 28 Dec 2011 05:50:28 +0000 (00:50 -0500)]
rawdec: propagate pict_type information to the output frame
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Piotr Bandurski [Wed, 28 Dec 2011 05:50:25 +0000 (00:50 -0500)]
rawdec: Support more QT 1bpp rawvideo files.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Janne Grunau [Sun, 1 Jan 2012 16:56:28 +0000 (17:56 +0100)]
avconv: free bitstream filters
Janne Grunau [Sun, 1 Jan 2012 16:35:16 +0000 (17:35 +0100)]
threads: limit the number of automatic threads to MAX_AUTO_THREADS
The extra thread added in {frame_}*thread_init was not taken into
account. Explicitly sets thread_count to 1 if only one CPU core was
detected. Also fixes two typos in comments.
Aneesh Dogra [Sun, 1 Jan 2012 12:21:26 +0000 (17:51 +0530)]
avplay: K&R cleanup
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Janne Grunau [Sun, 1 Jan 2012 15:32:25 +0000 (16:32 +0100)]
fate: use rgb24 as output format for dfa tests
Palette is as supposed in native endianness. Converting the pal8 output
to rgb24 is thus necessary for identical CRCs on big and little endian
systems.
Janne Grunau [Sun, 1 Jan 2012 13:17:32 +0000 (14:17 +0100)]
threads: set thread_count to 1 when thread support is disabled
Janne Grunau [Sun, 1 Jan 2012 13:21:50 +0000 (14:21 +0100)]
threads: introduce CODEC_CAP_AUTO_THREADS and add it to libx264
Some external codecs have their own code to determine the best number
of threads. This number is not necessary the number of cpu cores.
Thread_count will be only 0 if the codec has CODEC_CAP_AUTO_THREADS.
Oana Stratulat [Thu, 29 Dec 2011 20:47:59 +0000 (22:47 +0200)]
FATE: add tests for dfa
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Ronald S. Bultje [Fri, 30 Dec 2011 21:08:21 +0000 (13:08 -0800)]
mpegaudiodec: fix seeking.
The safe bitstream reader does not allow using skip_bits_long() to seek to a
point before the start of the buffer, which was needed by the mp3 decoder.
This change instead calculates the start point of the first valid granule and
skips to that position.
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
Justin Ruggles [Sat, 31 Dec 2011 18:36:48 +0000 (13:36 -0500)]
mpegaudiodec: fix compilation when testing the unchecked bitstream reader
Janne Grunau [Fri, 23 Dec 2011 23:27:12 +0000 (00:27 +0100)]
threads: add sysconf based number of CPUs detection
Can act as fallback and should work on a couple of Unix systems.
Janne Grunau [Fri, 23 Dec 2011 23:04:16 +0000 (00:04 +0100)]
threads: always include necessary headers for number of CPUs detection
Since the conditions for the actual usage are more specific a less
preferred method can be used. This would cause compilation errors
because necessary headers are not included.
Janne Grunau [Sun, 25 Dec 2011 10:45:05 +0000 (11:45 +0100)]
threads: default to automatic thread count detection