ffmpeg.git
6 years agomp3dec: read Xing frame TOC index
Anton Khirnov [Sun, 2 Sep 2012 13:36:18 +0000 (15:36 +0200)]
mp3dec: read Xing frame TOC index

6 years agomp3dec: use named constants for Xing header flags
Anton Khirnov [Sat, 1 Sep 2012 22:30:41 +0000 (00:30 +0200)]
mp3dec: use named constants for Xing header flags

6 years agolibx264: add support for nal-hrd, required for Blu-ray streams.
John Van Sickle [Wed, 19 Sep 2012 17:51:29 +0000 (13:51 -0400)]
libx264: add support for nal-hrd, required for Blu-ray streams.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
6 years agomov: support random access point grouping
Yusuke Nakamura [Mon, 23 Apr 2012 23:51:29 +0000 (08:51 +0900)]
mov: support random access point grouping

Frames described by this grouping are the starter of a closed or
an open GOP.
This is useful for open GOP of H.264 stream which is not described
by sync sample atom.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agomatroskadec: properly support BlockDuration
Luca Barbato [Mon, 17 Sep 2012 00:48:02 +0000 (02:48 +0200)]
matroskadec: properly support BlockDuration

6 years agomatroskadec: split frame parsing
Luca Barbato [Sun, 16 Sep 2012 23:28:13 +0000 (01:28 +0200)]
matroskadec: split frame parsing

6 years agomatroskadec: split laces parsing
Luca Barbato [Sun, 16 Sep 2012 23:58:32 +0000 (01:58 +0200)]
matroskadec: split laces parsing

6 years agomatroska: implement support for ProRes
Luca Barbato [Fri, 14 Sep 2012 22:59:05 +0000 (00:59 +0200)]
matroska: implement support for ProRes

Support Matroska native formatting.

On demuxing prepend a Frame container atom (32bit big endian encoded
frame size and 'icpf' string).
On muxing remove it.

6 years agomatroska: implement support for ALAC
Moritz Bunkus [Fri, 14 Sep 2012 20:26:14 +0000 (22:26 +0200)]
matroska: implement support for ALAC

Support Matroska native formatting.

On demuxing reconstruct the 36-bytes QuickTime atom that the ALAC
decoder expects by prepending the "atom size", "tag" and
"tag version" fields missing from the Matroska's CodecPrivate
element.

On muxing remove the initial 12 bytes

Sample files are available:
http://www.bunkus.org/videotools/mkvtoolnix/samples/alac/alac-in-matroska.mka
and the CoreAudio file it was created from with today's mkvmerge:
http://www.bunkus.org/videotools/mkvtoolnix/samples/alac/alac-in-matroska-source.caf

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agomatroskadec: validate lace_size when parsed
Luca Barbato [Fri, 14 Sep 2012 19:24:23 +0000 (21:24 +0200)]
matroskadec: validate lace_size when parsed

Stricter validation, explicitly exit on misparsing and some error
forwarding from the ebml parsing functions used.

6 years agomatroskadec: return meaningful errors in matroska_decode_buffer
Luca Barbato [Fri, 14 Sep 2012 18:03:37 +0000 (20:03 +0200)]
matroskadec: return meaningful errors in matroska_decode_buffer

6 years agomatroskadec: fix incorrect unsigned->signed conversion
Dale Curtis [Thu, 14 Jun 2012 22:22:25 +0000 (15:22 -0700)]
matroskadec: fix incorrect unsigned->signed conversion

6 years agomatroskadec: refactor matroska_decode_buffer
Luca Barbato [Fri, 14 Sep 2012 16:51:49 +0000 (18:51 +0200)]
matroskadec: refactor matroska_decode_buffer

Make MATROSKA_TRACK_ENCODING_COMP_HEADERSTRIP behave like
the other encodings and spare few lines of boilerplate code.

6 years agomatroskadec: check realloc in lzo encoding
Luca Barbato [Fri, 14 Sep 2012 16:39:58 +0000 (18:39 +0200)]
matroskadec: check realloc in lzo encoding

Make all the compression encodings behave the same way.

6 years agomatroska: honor error_recognition on unknown doctypes
Luca Barbato [Thu, 12 Jul 2012 11:38:50 +0000 (13:38 +0200)]
matroska: honor error_recognition on unknown doctypes

6 years agotiffdec: Add support for GRAY16LE.
Alex Converse [Wed, 19 Sep 2012 00:46:48 +0000 (17:46 -0700)]
tiffdec: Add support for GRAY16LE.

Tested with the GraphicsMagick TIFF archive and Libav generated files.

6 years agotiffenc: Add support for little endian RGB48 and GRAY16
Alex Converse [Tue, 18 Sep 2012 23:45:09 +0000 (16:45 -0700)]
tiffenc: Add support for little endian RGB48 and GRAY16

6 years agompeg4: support frame parameter changes with frame-mt
Janne Grunau [Tue, 18 Sep 2012 13:48:14 +0000 (15:48 +0200)]
mpeg4: support frame parameter changes with frame-mt

Adds a flag context_reinit to MpegEncContext to relieable keep track
of frame parameter changes which require a context reinitialization.
This is required for broken inputs which change the frame size but
error out before the context can be reinitialized.

6 years agompegvideo: check ff_find_unused_picture() return value for errors
Janne Grunau [Sat, 8 Sep 2012 13:56:52 +0000 (15:56 +0200)]
mpegvideo: check ff_find_unused_picture() return value for errors

6 years agompegvideo: release frame buffers before freeing them
Janne Grunau [Wed, 19 Sep 2012 17:39:52 +0000 (19:39 +0200)]
mpegvideo: release frame buffers before freeing them

Fixes triggering an assert in avcodec_default_release_buffer()
introduced in 1b3439b30.

6 years agoconfigure: msvc: default to 'lib' as 'ar' tool
Mans Rullgard [Mon, 17 Sep 2012 23:10:29 +0000 (00:10 +0100)]
configure: msvc: default to 'lib' as 'ar' tool

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agobuild: support some non-standard ar variants
Mans Rullgard [Mon, 17 Sep 2012 22:56:32 +0000 (23:56 +0100)]
build: support some non-standard ar variants

This adds support for the TI and Microsoft (lib.exe) variants of
the ar utility.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agorv34: use ff_MPV_common_frame_size_change()
Janne Grunau [Wed, 5 Sep 2012 18:49:18 +0000 (20:49 +0200)]
rv34: use ff_MPV_common_frame_size_change()

Specialised functionality for size changes with the advantage of
supporting frame size changes during frame-based multithreading.

6 years agompegvideo: add reinit function for frame parameter changes
Janne Grunau [Wed, 5 Sep 2012 18:40:12 +0000 (20:40 +0200)]
mpegvideo: add reinit function for frame parameter changes

This is mainly required for frame parameter changes during frame based
multithreading but single threaded usage profits too from avoiding
ff_MPV_common_end()/ff_MPV_common_init() cycles.

6 years agompegvideo: move frame size dependent memory management to separate functions
Janne Grunau [Wed, 5 Sep 2012 14:34:05 +0000 (16:34 +0200)]
mpegvideo: move frame size dependent memory management to separate functions

This is a preparation for supporting frame size changes during
frame-based multithreading.

6 years agoconfigure: add --toolchain option
Mans Rullgard [Sun, 16 Sep 2012 21:06:53 +0000 (22:06 +0100)]
configure: add --toolchain option

This allows creating canned shorthands for common combinations
of cc, ld etc.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoconfigure: Make the smoothstreaming muxer enable the ismv muxer
Martin Storsjö [Tue, 18 Sep 2012 08:34:16 +0000 (11:34 +0300)]
configure: Make the smoothstreaming muxer enable the ismv muxer

This doesn't fix any build failure, but the smoothstreaming muxer
opens a chained ismv muxer.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agosmoothstreaming: Export the mp4 codec tags
Martin Storsjö [Tue, 18 Sep 2012 08:31:44 +0000 (11:31 +0300)]
smoothstreaming: Export the mp4 codec tags

This fixes stream copy from a format that already has incompatible
codec tags set. The chained ismv muxer exports this same codec tag
list, so set it on this one as well, to allow the caller (and
lavf common code) to set them correctly.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agomov: check for EOF in long lasting loops
Luca Barbato [Sun, 16 Sep 2012 18:32:12 +0000 (20:32 +0200)]
mov: check for EOF in long lasting loops

A quite widespread pattern in the demuxer is read a 32bit unsigned
integer and then loop till this value is reached.

Checking for EOF prevents pathological situations.

6 years agoavcodec: cleanup utils.c
Luca Barbato [Fri, 14 Sep 2012 17:18:17 +0000 (19:18 +0200)]
avcodec: cleanup utils.c

6 years agobinkaudio: remove unneeded GET_BITS_SAFE macro
Justin Ruggles [Mon, 17 Sep 2012 20:20:36 +0000 (16:20 -0400)]
binkaudio: remove unneeded GET_BITS_SAFE macro

Normal get_bits() already has overread protection.

6 years agobinkaudio: use float sample format
Justin Ruggles [Mon, 27 Aug 2012 00:41:45 +0000 (20:41 -0400)]
binkaudio: use float sample format

Use planar for DCT codec, interleaved for RDFT codec.

6 years agobinkaudio: use a different value for the coefficient scale for the DCT codec
Justin Ruggles [Mon, 17 Sep 2012 20:13:24 +0000 (16:13 -0400)]
binkaudio: use a different value for the coefficient scale for the DCT codec

Eliminates the need for vector_fmul_scalar() in each frame.

6 years agoflvenc: silence bogus warning
Benjamin Larsson [Mon, 17 Sep 2012 19:14:58 +0000 (21:14 +0200)]
flvenc: silence bogus warning

The compiler fails to figure out that enc->codec_type can only
have 3 different values.
Thus when an if/else is encountered it triggers on the possibility
of the else case has not initialized the flags variable.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agoconfigure: include flags in nm variable
Mans Rullgard [Sun, 16 Sep 2012 20:47:16 +0000 (21:47 +0100)]
configure: include flags in nm variable

This simplifies ensuring proper flags are used when the default
is overridden by the system or on the command line.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoalsdec: fix misplaced parentheses.
Clément Bœsch [Tue, 4 Sep 2012 18:30:14 +0000 (14:30 -0400)]
alsdec: fix misplaced parentheses.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
6 years agoalsdec: check return values.
Thilo Borgmann [Tue, 27 Mar 2012 16:06:54 +0000 (18:06 +0200)]
alsdec: check return values.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
6 years agoalsdec: fix number of decoded samples in first sub-block in BGMC mode.
Thilo Borgmann [Sun, 15 Apr 2012 16:07:12 +0000 (18:07 +0200)]
alsdec: fix number of decoded samples in first sub-block in BGMC mode.

Fixes CVE-2012-2790

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
6 years agoalsdec: Fix out of ltp_gain_values read.
Thilo Borgmann [Sun, 11 Mar 2012 15:56:23 +0000 (16:56 +0100)]
alsdec: Fix out of ltp_gain_values read.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
6 years agoalsdec: Check that quantized parcor coeffs are within range.
Michael Niedermayer [Wed, 29 Feb 2012 05:10:17 +0000 (06:10 +0100)]
alsdec: Check that quantized parcor coeffs are within range.

ALS spec:
11.6.3.1.1 Quantization and encoding of parcor coefficients
...
In all cases the resulting quantized values ak are restricted to the range [-64,63].

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
6 years agoalsdec: check opt_order.
Michael Niedermayer [Sat, 24 Mar 2012 00:39:13 +0000 (01:39 +0100)]
alsdec: check opt_order.

Fixes out of array write in quant_cof.
Also make sure no invalid opt_order stays in the context.

Fixes CVE-2012-2775

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
6 years agoalsdec: Check k used for rice decoder.
Michael Niedermayer [Sat, 7 Apr 2012 15:25:47 +0000 (17:25 +0200)]
alsdec: Check k used for rice decoder.

Values that fail this check will cause failure of decode_rice()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
6 years agoavfiltergraph: silence an uninitialized variable warning
Anton Khirnov [Sat, 18 Aug 2012 14:51:32 +0000 (16:51 +0200)]
avfiltergraph: silence an uninitialized variable warning

The warning is:
libavfilter/avfiltergraph.c: In function ‘avfilter_graph_config’:
libavfilter/avfiltergraph.c:528:9: warning: ‘best_idx’ may be used uninitialized in this function [-Wuninitialized]
libavfilter/avfiltergraph.c:479:13: note: ‘best_idx’ was declared here

Initialize it to an invalid value and add an assert that it's properly
set later.

6 years agoxsubenc: reindent
Anton Khirnov [Sat, 18 Aug 2012 14:42:50 +0000 (16:42 +0200)]
xsubenc: reindent

6 years agolavc: replace AVCodecContext.encode with subtitle-specific callback
Anton Khirnov [Sat, 18 Aug 2012 14:41:24 +0000 (16:41 +0200)]
lavc: replace AVCodecContext.encode with subtitle-specific callback

AVCodecContext.encode is currently used only for subtitles, encode2 is
used for audio and video.

6 years agolavc: add const to private codec class initialization.
Anton Khirnov [Sat, 18 Aug 2012 14:21:00 +0000 (16:21 +0200)]
lavc: add const to private codec class initialization.

Silences a warning about discarding const.

6 years agoavconv: don't pass a bogus parameter to avfilter_graph_create_filter().
Anton Khirnov [Sat, 18 Aug 2012 14:15:42 +0000 (16:15 +0200)]
avconv: don't pass a bogus parameter to avfilter_graph_create_filter().

The buffer sink does not take any parameters.

Fixes an uninitialized variable warning.

6 years agoid3v2: strdup the genre name explicitly.
Clément Bœsch [Sat, 12 May 2012 20:39:30 +0000 (22:39 +0200)]
id3v2: strdup the genre name explicitly.

It would have been done anyway in the av_dict_set() call.

This simplifies the code and avoid a warning because of assigning a
const string from ff_id3v1_genre_str to a non-const variable.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
6 years agolavf/id3v2: do not export empty fields.
Clément Bœsch [Sat, 12 May 2012 20:31:11 +0000 (22:31 +0200)]
lavf/id3v2: do not export empty fields.

This also avoids a memleak.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
6 years agobuffersrc: add const to the AVFrame* argument of av_buffersrc_write_frame()
Anton Khirnov [Sat, 18 Aug 2012 06:58:09 +0000 (08:58 +0200)]
buffersrc: add const to the AVFrame* argument of av_buffersrc_write_frame()

6 years agolavfi: replace empty input/output lists with null pointers
Mans Rullgard [Sun, 16 Sep 2012 11:58:49 +0000 (12:58 +0100)]
lavfi: replace empty input/output lists with null pointers

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoavconv: flush filtered frames before reconfiguring filters
Janne Grunau [Thu, 6 Sep 2012 19:51:31 +0000 (21:51 +0200)]
avconv: flush filtered frames before reconfiguring filters

This prevents lost frames after a resolution change.

6 years agomov: stsd entries must be at least 16 byte
Michael Niedermayer [Thu, 15 Dec 2011 19:51:00 +0000 (20:51 +0100)]
mov: stsd entries must be at least 16 byte

Fix near infinite loop in stsd parsing.
Bug found by: Diana Elena Muscalu

The size is unsigned according the specification.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agomov: detect EOF in mov_read_dref()
Michael Niedermayer [Sun, 18 Dec 2011 20:37:54 +0000 (21:37 +0100)]
mov: detect EOF in mov_read_dref()

Avoid a near infinite loop.
Issue discovered by cosminamironesei.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agofile: return proper error on seek failures
Luca Barbato [Fri, 14 Sep 2012 15:01:35 +0000 (17:01 +0200)]
file: return proper error on seek failures

6 years agompegvideo: drop unnecessary arguments to hpel_motion()
Mans Rullgard [Sat, 4 Aug 2012 01:51:27 +0000 (02:51 +0100)]
mpegvideo: drop unnecessary arguments to hpel_motion()

These arguments are either constants or copies of MpegEncContext
fields just as easily accessed within the function.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agompegvideo: drop 'inline' from some functions
Mans Rullgard [Sat, 4 Aug 2012 01:22:43 +0000 (02:22 +0100)]
mpegvideo: drop 'inline' from some functions

These functions do not benefit from being inlined.  They are large,
and there are no opportunities for constant propagation.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agonellymoserdec: drop support for s16 output.
Anton Khirnov [Sun, 22 Jul 2012 09:19:01 +0000 (11:19 +0200)]
nellymoserdec: drop support for s16 output.

It internally decodes as float and then converts to s16 by a call to
float_to_int16(). The caller can do this just as well by using lavr.

6 years agobmpdec: only initialize palette for pal8.
Anton Khirnov [Sun, 16 Sep 2012 06:33:09 +0000 (08:33 +0200)]
bmpdec: only initialize palette for pal8.

Gray8 is not considered to be paletted, so this would cause an invalid
write.

Fixes bug 367.

CC: libav-stable@libav.org
6 years agobuild: Properly remove object files while cleaning
Mans Rullgard [Sat, 15 Sep 2012 18:33:56 +0000 (18:33 +0000)]
build: Properly remove object files while cleaning

Previously, object files in, for example, compat/ were left
after a clean or distclean was run.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
6 years agoflacdsp: arm optimised lpc filter
Mans Rullgard [Thu, 5 Jul 2012 21:47:41 +0000 (22:47 +0100)]
flacdsp: arm optimised lpc filter

6 years agocompat/vsnprintf: return number of bytes required on truncation.
Ronald S. Bultje [Fri, 14 Sep 2012 18:56:46 +0000 (18:56 +0000)]
compat/vsnprintf: return number of bytes required on truncation.

This conforms to C99, but requires Windows >= XP.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
6 years agoavformat: fix typo in avformat_close_input
Luca Barbato [Sat, 15 Sep 2012 18:16:32 +0000 (20:16 +0200)]
avformat: fix typo in avformat_close_input

The condition should not be &&.

6 years agomp3enc: write Xing TOC
Anton Khirnov [Mon, 10 Sep 2012 12:44:32 +0000 (14:44 +0200)]
mp3enc: write Xing TOC

Based on the code by:
Peter Belkner <pbelkner@snafu.de>,
Michael Niedermayer <michaelni@gmx.at>,
Clément Bœsch <clement.boesch@smartjog.com>,
Reimar Döffinger <Reimar.Doeffinger@gmx.de>, and
Tobias Rapp <t.rapp@noa-audio.com>
Alex Converse <alex.converse@gmail.com>

Signed-off-by: Anton Khirnov <anton@khirnov.net>
6 years agomp3enc: support MPEG-2 and MPEG-2.5 in Xing header.
Clément Bœsch [Wed, 9 May 2012 20:39:40 +0000 (22:39 +0200)]
mp3enc: support MPEG-2 and MPEG-2.5 in Xing header.

6 years agomp3enc: downgrade some errors in writing Xing frame to warnings
Reimar Döffinger [Sun, 9 Sep 2012 18:39:40 +0000 (20:39 +0200)]
mp3enc: downgrade some errors in writing Xing frame to warnings

Also clarify the meaning of the log message.

6 years agolavf: flush the output AVIOContext in av_write_trailer().
Anton Khirnov [Sun, 9 Sep 2012 19:35:23 +0000 (21:35 +0200)]
lavf: flush the output AVIOContext in av_write_trailer().

This is consistent with stdio and is what we want to do in all cases.

Fixes a bug in the voc muxer which didn't flush in write_trailer()
previously. This is the cause of the change in the test results.

6 years agolavf: cosmetics, reformat av_write_trailer().
Anton Khirnov [Sun, 9 Sep 2012 18:47:38 +0000 (20:47 +0200)]
lavf: cosmetics, reformat av_write_trailer().

6 years agoavio: flush the internal buffer in avio_close()
Stefano Sabatini [Wed, 15 Aug 2012 23:25:05 +0000 (01:25 +0200)]
avio: flush the internal buffer in avio_close()

This is consistent with stdio, and thus what people would naturally
expect.

6 years agoEnhance doc on asyncts audiofilter
Andrey Utkin [Fri, 14 Sep 2012 08:27:19 +0000 (11:27 +0300)]
Enhance doc on asyncts audiofilter

Signed-off-by: Anton Khirnov <anton@khirnov.net>
6 years agocmdutils: avoid setting data pointers to invalid values in alloc_buffer()
Anton Khirnov [Tue, 11 Sep 2012 09:03:52 +0000 (11:03 +0200)]
cmdutils: avoid setting data pointers to invalid values in alloc_buffer()

Fixes bug 352.

6 years agolibavcodec: remove av_destruct_packet_nofree()
Mans Rullgard [Sat, 25 Aug 2012 10:51:57 +0000 (11:51 +0100)]
libavcodec: remove av_destruct_packet_nofree()

This function was deprecated two major versions ago (2009).

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoriff: Add SVQ3 fourcc
Derek Buitenhuis [Fri, 14 Sep 2012 14:10:50 +0000 (14:10 +0000)]
riff: Add SVQ3 fourcc

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
6 years agofate: ac3: add 4.0 and downmix tests
Mans Rullgard [Wed, 12 Sep 2012 22:24:50 +0000 (23:24 +0100)]
fate: ac3: add 4.0 and downmix tests

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoconfigure: x86: improve ebp availability check
Mans Rullgard [Thu, 13 Sep 2012 19:17:54 +0000 (20:17 +0100)]
configure: x86: improve ebp availability check

Some compilers are extra strict about register usage in main(),
disallowing ebp in inline asm there while allowing it elsewhere.
This change makes the test better reflect actual usage.

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agovorbisdec: ensure FASTDIV denominator is never 1
Luca Barbato [Thu, 13 Sep 2012 17:45:21 +0000 (19:45 +0200)]
vorbisdec: ensure FASTDIV denominator is never 1

In both usages of FASTDIV the denominator might be 1.

Using a branch could make the function slower than using a normal
division.

Both denominator and numerator can be multiplied by 2 safely and
using shifts is faster than using a branch.

6 years agoavformat: refactor avformat_close_input
Luca Barbato [Tue, 4 Sep 2012 14:05:28 +0000 (16:05 +0200)]
avformat: refactor avformat_close_input

Do not crash if the input format is not allocated yet.

6 years agoavformat: simplify avformat_close_input
Luca Barbato [Mon, 10 Sep 2012 05:07:56 +0000 (07:07 +0200)]
avformat: simplify avformat_close_input

avio_close checks by itself for NULL condition.

6 years agox86: dsputil: Move Xvid IDCT put/add functions to a more suitable place
Diego Biurrun [Thu, 13 Sep 2012 22:59:03 +0000 (00:59 +0200)]
x86: dsputil: Move Xvid IDCT put/add functions to a more suitable place

6 years agotrasher: Include all the necessary headers
Martin Storsjö [Thu, 13 Sep 2012 09:55:44 +0000 (12:55 +0300)]
trasher: Include all the necessary headers

The missing headers are required for errno and for strerror.
This fixes building of this tool on mingw32ce.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agox86: Remove some leftover declarations for non-existent functions
Diego Biurrun [Thu, 13 Sep 2012 10:45:33 +0000 (12:45 +0200)]
x86: Remove some leftover declarations for non-existent functions

6 years agoARM: libavresample: NEON optimised generic fltp to s16 conversion
Mans Rullgard [Mon, 10 Sep 2012 14:47:00 +0000 (15:47 +0100)]
ARM: libavresample: NEON optimised generic fltp to s16 conversion

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoARM: libavresample: NEON optimised stereo fltp to s16 conversion
Mans Rullgard [Mon, 10 Sep 2012 14:47:00 +0000 (15:47 +0100)]
ARM: libavresample: NEON optimised stereo fltp to s16 conversion

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoARM: libavresample: NEON optimised flat float to s16 conversion
Mans Rullgard [Sun, 9 Sep 2012 18:25:43 +0000 (19:25 +0100)]
ARM: libavresample: NEON optimised flat float to s16 conversion

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agoos_support: Choose between direct.h and io.h using a configure check
Martin Storsjö [Thu, 13 Sep 2012 11:26:10 +0000 (14:26 +0300)]
os_support: Choose between direct.h and io.h using a configure check

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoos_support: Include io.h instead of direct.h on mingw32ce
Martin Storsjö [Thu, 13 Sep 2012 09:34:17 +0000 (12:34 +0300)]
os_support: Include io.h instead of direct.h on mingw32ce

Windows CE doesn't have neither mkdir nor _mkdir officially (only
CreateDirectoryW), but mingw32ce has compat wrappers with these names
(declared in io.h since direct.h is unavailable).

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agox86: ac3dsp: Only refer to the ac3_downmix_sse symbol if it has been declared
Martin Storsjö [Thu, 13 Sep 2012 08:18:25 +0000 (11:18 +0300)]
x86: ac3dsp: Only refer to the ac3_downmix_sse symbol if it has been declared

This fixes building without inline assembly.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoswscale: Remove two bogus asserts
Diego Biurrun [Tue, 11 Sep 2012 20:11:25 +0000 (22:11 +0200)]
swscale: Remove two bogus asserts

6 years agoac3: move ac3_downmix() from dsputil to ac3dsp
Mans Rullgard [Tue, 11 Sep 2012 16:55:11 +0000 (17:55 +0100)]
ac3: move ac3_downmix() from dsputil to ac3dsp

Signed-off-by: Mans Rullgard <mans@mansr.com>
6 years agolavr/audio_mix_matrix: acknowledge the existence of LFE2.
Tim Walker [Wed, 12 Sep 2012 15:09:33 +0000 (17:09 +0200)]
lavr/audio_mix_matrix: acknowledge the existence of LFE2.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
6 years agomlp_parser: avoid mapping multiple disctinct TrueHD channels to the same Libav channel.
Tim Walker [Wed, 12 Sep 2012 15:09:32 +0000 (17:09 +0200)]
mlp_parser: avoid mapping multiple disctinct TrueHD channels to the same Libav channel.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
6 years agolavu/audioconvert: add a second low frequency channel.
Tim Walker [Wed, 12 Sep 2012 15:09:31 +0000 (17:09 +0200)]
lavu/audioconvert: add a second low frequency channel.

Can be used by DTS-HD, TrueHD and E-AC-3, among others.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
6 years agompegts: check substreams before discarding
Christian Schmidt [Thu, 6 Sep 2012 14:43:24 +0000 (16:43 +0200)]
mpegts: check substreams before discarding

Allow to extract the AC3 core from TrueHD with the "copy" codec.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agoAdd a smooth streaming segmenter muxer
Martin Storsjö [Mon, 19 Mar 2012 21:12:54 +0000 (23:12 +0200)]
Add a smooth streaming segmenter muxer

This muxer splits the output from the ismv muxer into individual
files, in realtime.

The same can also be done by the standalone tool ismindex, but this
muxer is needed for doing it in realtime (especially for live
streams that need extra handling for updating the lookahead fields
in the fragment headers).

Using this muxer, one can deliver live smooth streaming from a
normal static file web server. (Using ismindex, one can deliver
premade smooth streaming files from a static file web server,
or prepare files for serving with IIS.)

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agofile: Add an avoption for disabling truncating existing files on open
Martin Storsjö [Sun, 9 Sep 2012 19:42:56 +0000 (22:42 +0300)]
file: Add an avoption for disabling truncating existing files on open

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoimg2dec: always close AVIOContexts
Tomas Härdin [Fri, 7 Sep 2012 11:28:48 +0000 (13:28 +0200)]
img2dec: always close AVIOContexts

Zero sized files would cause the contexts to leak away.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agortpdec_jpeg: Error out on other unsupported type values as well
Martin Storsjö [Tue, 11 Sep 2012 11:42:22 +0000 (14:42 +0300)]
rtpdec_jpeg: Error out on other unsupported type values as well

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agortpdec_jpeg: Disallow using the reserved q values
Martin Storsjö [Tue, 11 Sep 2012 11:41:42 +0000 (14:41 +0300)]
rtpdec_jpeg: Disallow using the reserved q values

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agortpdec_jpeg: Fold the default qtables case into an existing if statement
Martin Storsjö [Tue, 11 Sep 2012 11:39:58 +0000 (14:39 +0300)]
rtpdec_jpeg: Fold the default qtables case into an existing if statement

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agortpdec_jpeg: Store and reuse old qtables for q values 128-254
Martin Storsjö [Tue, 11 Sep 2012 11:29:54 +0000 (14:29 +0300)]
rtpdec_jpeg: Store and reuse old qtables for q values 128-254

Signed-off-by: Martin Storsjö <martin@martin.st>