ffmpeg.git
5 years agolavc: remove the extended_data workarounds.
Anton Khirnov [Sat, 9 Nov 2013 18:57:14 +0000 (19:57 +0100)]
lavc: remove the extended_data workarounds.

All decoders should now handle it properly.

5 years agopthread_frame: use the AVFrame API properly.
Anton Khirnov [Sat, 9 Nov 2013 09:14:46 +0000 (10:14 +0100)]
pthread_frame: use the AVFrame API properly.

Remove the extended_data workaround, all decoders should now handle this
properly.

5 years agomxpegdec: use the AVFrame API properly.
Anton Khirnov [Sat, 9 Nov 2013 09:14:46 +0000 (10:14 +0100)]
mxpegdec: use the AVFrame API properly.

5 years agop*menc: use the AVFrame API properly.
Anton Khirnov [Sat, 9 Nov 2013 09:14:46 +0000 (10:14 +0100)]
p*menc: use the AVFrame API properly.

5 years agomjpegdec: use the AVFrame API properly.
Anton Khirnov [Sat, 9 Nov 2013 09:14:46 +0000 (10:14 +0100)]
mjpegdec: use the AVFrame API properly.

5 years agoavformat: AviSynth demuxer rewrite
d s [Wed, 27 Nov 2013 02:58:28 +0000 (21:58 -0500)]
avformat: AviSynth demuxer rewrite

Directly loads AviSynth through LoadLibrary instead of relying on
Video for Windows, and supports using AvxSynth (via dlopen) to
open scripts on Linux and OS X.

Error messages from AviSynth/AvxSynth are now reported through
av_log and exit, rather than the traditional behavior of generating
an error video that the user would need to watch to diagnose.

The main rewrite was authored by d s <avxsynth.testing@gmail.com>
from the AvxSynth team, with additional contributions by

Oka Motofumi <chikuzen.mo@gmail.com>
Stephen Hutchinson <qyot27@gmail.com>
Diego Biurrun <diego@biurrun.de>
Anton Khirnov <anton@khirnov.net>

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agoconfigure: Move adding of compat objects out of libc detection
Diego Biurrun [Mon, 2 Dec 2013 04:06:02 +0000 (23:06 -0500)]
configure: Move adding of compat objects out of libc detection

5 years agodsputil: Move apply_window_int16 to ac3dsp
Diego Biurrun [Fri, 6 Dec 2013 12:22:40 +0000 (12:22 +0000)]
dsputil: Move apply_window_int16 to ac3dsp

The (optimized) functions are used nowhere else.

5 years agoconfigure: Separate MinGW32 and MinGW64 libc handling
Diego Biurrun [Mon, 2 Dec 2013 05:12:57 +0000 (00:12 -0500)]
configure: Separate MinGW32 and MinGW64 libc handling

5 years agolibvpx: do not mark VP9 as experimental when using libvpx >= 1.3.0
Guillaume Martres [Fri, 15 Nov 2013 22:28:30 +0000 (23:28 +0100)]
libvpx: do not mark VP9 as experimental when using libvpx >= 1.3.0

Signed-off-by: Diego Biurrun <diego@biurrun.de>
5 years agodcadec: Decode LFE to avoid adding random data when downmixing with LFE
Michael Niedermayer [Thu, 5 Dec 2013 20:06:28 +0000 (21:06 +0100)]
dcadec: Decode LFE to avoid adding random data when downmixing with LFE

Signed-off-by: Tim Walker <tdskywalker@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agowebp: add a special case for a huffman table with only 1 symbol
Justin Ruggles [Wed, 4 Dec 2013 21:53:18 +0000 (16:53 -0500)]
webp: add a special case for a huffman table with only 1 symbol

The vlc reader cannot handle 0-bit huffman codes. For most
situations WebP uses the "simple" huffman coding for this case,
but that will only handle symbols up to 255. For the LZ77 distance
codes, larger symbol values are needed, so it can happen in rare
cases that a normal huffman table is used that only has a single
symbol.

5 years agowebp: do not call av_frame_free() on the user-provided frame
Justin Ruggles [Wed, 4 Dec 2013 21:53:17 +0000 (16:53 -0500)]
webp: do not call av_frame_free() on the user-provided frame

Fixes double-free on error.

5 years agoljpegenc: split yuv encoding into a separate function
Anton Khirnov [Mon, 2 Dec 2013 22:56:51 +0000 (23:56 +0100)]
ljpegenc: split yuv encoding into a separate function

5 years agoljpegenc: split bgr encoding into a separate function
Anton Khirnov [Mon, 2 Dec 2013 22:56:51 +0000 (23:56 +0100)]
ljpegenc: split bgr encoding into a separate function

5 years agoljpegenc: accept bgr24 instead of bgra
Anton Khirnov [Mon, 2 Dec 2013 22:49:11 +0000 (23:49 +0100)]
ljpegenc: accept bgr24 instead of bgra

The alpha plane is not encoded.

5 years agoljpegenc: rename the encoding function.
Anton Khirnov [Mon, 2 Dec 2013 22:34:37 +0000 (23:34 +0100)]
ljpegenc: rename the encoding function.

The new name is more consistent with the rest of Libav.

5 years agoljpeg: remove a commented-out line
Anton Khirnov [Mon, 2 Dec 2013 22:33:56 +0000 (23:33 +0100)]
ljpeg: remove a commented-out line

5 years agoljpegenc: deMpegEncContextize
Anton Khirnov [Mon, 2 Dec 2013 18:22:54 +0000 (19:22 +0100)]
ljpegenc: deMpegEncContextize

The encoder uses almost none of the mpegvideo infrastructure, only some
fields from MpegEncContext.

The FATE results change because now an all-zero quant matrix is written
into the file. Since it is not used for anything for ljpeg, this should
not be a problem.

5 years agomjpegenc: do not pass MpegEncContext to ff_mjpeg_encode_dc()
Anton Khirnov [Sun, 1 Dec 2013 21:05:18 +0000 (22:05 +0100)]
mjpegenc: do not pass MpegEncContext to ff_mjpeg_encode_dc()

This will allow deMpegEncContextizing the LJPEG encoder.

5 years agomjpegenc: do not pass MpegEncContext to ff_mjpeg_encode_picture_trailer()
Anton Khirnov [Sun, 1 Dec 2013 21:05:18 +0000 (22:05 +0100)]
mjpegenc: do not pass MpegEncContext to ff_mjpeg_encode_picture_trailer()

This will allow deMpegEncContextizing the LJPEG encoder.

5 years agomjpegenc: do not pass MpegEncContext to ff_mjpeg_encode_picture_header()
Anton Khirnov [Sun, 1 Dec 2013 21:05:18 +0000 (22:05 +0100)]
mjpegenc: do not pass MpegEncContext to ff_mjpeg_encode_picture_header()

This will allow deMpegEncContextizing the LJPEG encoder.

5 years agomjpegenc: do not pass MpegEncContext to jpeg_table_header()
Anton Khirnov [Sun, 1 Dec 2013 20:45:40 +0000 (21:45 +0100)]
mjpegenc: do not pass MpegEncContext to jpeg_table_header()

Pass the three needed fields from it directly.
This will allow to deMpegEncContextize the LJPEG encoder.

5 years agomjpegenc: remove commented out never-to-be-finished WIP cruft
Anton Khirnov [Sun, 1 Dec 2013 20:40:17 +0000 (21:40 +0100)]
mjpegenc: remove commented out never-to-be-finished WIP cruft

5 years agomjpegenc: do not pass MpegEncContext to put_huffman_table()
Anton Khirnov [Sun, 1 Dec 2013 20:35:02 +0000 (21:35 +0100)]
mjpegenc: do not pass MpegEncContext to put_huffman_table()

It only needs PutBitContext from it, so pass that directly.

5 years agomjpegenc: cosmetics, reformat jpeg_put_comments()
Anton Khirnov [Sun, 1 Dec 2013 20:33:47 +0000 (21:33 +0100)]
mjpegenc: cosmetics, reformat jpeg_put_comments()

5 years agomjpegenc: write the JFIF header if the sample aspect ratio is set
Anton Khirnov [Sun, 1 Dec 2013 20:31:25 +0000 (21:31 +0100)]
mjpegenc: write the JFIF header if the sample aspect ratio is set

MpegEncContext.aspect_ratio_info is never set for mjpeg, so this was
never written before.

5 years agompegvideo: do not set current_picture_ptr in decoders
Anton Khirnov [Sun, 1 Dec 2013 11:57:47 +0000 (12:57 +0100)]
mpegvideo: do not set current_picture_ptr in decoders

This code was originally added in
5f1948111a4920ff74e31b4284ab0200f7938539 to h263 to set decoded frame
pts to some random numbers (removed in
a1c5cc429d99216406170eac7e8352860076d3e8) and then cargo culted to other
decoders.

The code is left in h263dec for now, since some part of the decoder
(apparently OBMC) relies on the specific previous frame to be reused.

5 years agoFATE: drop the last partial frame in the wmv8-drm test
Anton Khirnov [Sun, 1 Dec 2013 08:42:37 +0000 (09:42 +0100)]
FATE: drop the last partial frame in the wmv8-drm test

This has already been done in eb066a4ce9e82cddb8f5af574804aa9889450b34,
but the number of frames produced from that file changed due to
timestamps changes since then.

5 years agovc1dec: move setting repeat_pict after frame_start() has been called.
Anton Khirnov [Sat, 30 Nov 2013 17:36:00 +0000 (18:36 +0100)]
vc1dec: move setting repeat_pict after frame_start() has been called.

This will allow removing the hacks where each decoder sets
current_picture_ptr on its own.

5 years agompegvideo: make ff_release_unused_pictures() static
Anton Khirnov [Sat, 30 Nov 2013 17:07:06 +0000 (18:07 +0100)]
mpegvideo: make ff_release_unused_pictures() static

It is only called from one place in mpegvideo.c now. Also remove the
remove_current parameter, which is always 1.

5 years agompegvideo: make frame_size_alloc() static.
Anton Khirnov [Sat, 30 Nov 2013 10:58:42 +0000 (11:58 +0100)]
mpegvideo: make frame_size_alloc() static.

It is not called from outside of mpegvideo.c anymore.

5 years agompegvideo: move encode-only parts of common_end() to encode_end()
Anton Khirnov [Sat, 30 Nov 2013 10:50:09 +0000 (11:50 +0100)]
mpegvideo: move encode-only parts of common_end() to encode_end()

5 years agompegvideo: remove commented out cruft from ff_MPV_frame_end()
Anton Khirnov [Sat, 30 Nov 2013 10:35:50 +0000 (11:35 +0100)]
mpegvideo: remove commented out cruft from ff_MPV_frame_end()

5 years agompegvideo: split the encoding-only parts of ff_MPV_frame_end() into a separate function
Anton Khirnov [Sat, 30 Nov 2013 10:34:37 +0000 (11:34 +0100)]
mpegvideo: split the encoding-only parts of ff_MPV_frame_end() into a separate function

5 years agompegvideo: do not update last_non_b_pict_type in update_thread_context()
Anton Khirnov [Sat, 30 Nov 2013 10:32:25 +0000 (11:32 +0100)]
mpegvideo: do not update last_non_b_pict_type in update_thread_context()

It is used for encoding only.

5 years agompegvideo: move encoding-only initialization from common_init() to encode_init()
Anton Khirnov [Sat, 30 Nov 2013 10:10:53 +0000 (11:10 +0100)]
mpegvideo: move encoding-only initialization from common_init() to encode_init()

5 years agompegvideo: move setting encoding-only vars from common_defaults() to encode_defaults()
Anton Khirnov [Sat, 30 Nov 2013 09:50:20 +0000 (10:50 +0100)]
mpegvideo: move setting encoding-only vars from common_defaults() to encode_defaults()

5 years agompegvideo: don't copy input_picture_number in update_thread_context()
Anton Khirnov [Sat, 30 Nov 2013 09:47:52 +0000 (10:47 +0100)]
mpegvideo: don't copy input_picture_number in update_thread_context()

It is encoding-only, frame threading is not used for encoding.

5 years agompeg4videodec: move showed_packed_warning from MpegEncContext to Mpeg4DecContext
Anton Khirnov [Fri, 29 Nov 2013 21:26:15 +0000 (22:26 +0100)]
mpeg4videodec: move showed_packed_warning from MpegEncContext to Mpeg4DecContext

5 years agompeg4videodec: move intra_dc_threshold from MpegEncContext to Mpeg4DecContext
Anton Khirnov [Fri, 29 Nov 2013 21:26:15 +0000 (22:26 +0100)]
mpeg4videodec: move intra_dc_threshold from MpegEncContext to Mpeg4DecContext

5 years agompeg12dec: move first_slice from MpegEncContext to Mpeg1Context
Anton Khirnov [Fri, 29 Nov 2013 21:26:15 +0000 (22:26 +0100)]
mpeg12dec: move first_slice from MpegEncContext to Mpeg1Context

5 years agompegvideo: remove an unused variable
Anton Khirnov [Fri, 29 Nov 2013 21:18:15 +0000 (22:18 +0100)]
mpegvideo: remove an unused variable

5 years agompeg4videodec: move use_intra_dc_vlc from MpegEncContext to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 13:34:52 +0000 (14:34 +0100)]
mpeg4videodec: move use_intra_dc_vlc from MpegEncContext to Mpeg4DecContext

5 years agox86: Initialize mmxext after amd3dnow optimizations
Diego Biurrun [Mon, 30 Sep 2013 13:04:44 +0000 (15:04 +0200)]
x86: Initialize mmxext after amd3dnow optimizations

The mmxext optimizations should be at least equally fast if available and
amd3dnow optimizations are being deprecated. Thus the former should
override the latter, not the other way around.

5 years agoconfigure: Detect msvcrt libc with a CPP check instead of a link check
Diego Biurrun [Wed, 4 Dec 2013 15:25:04 +0000 (10:25 -0500)]
configure: Detect msvcrt libc with a CPP check instead of a link check

Simplifies host/target libc detection splitting.

5 years agoconfigure: Add detected C library and host compiler to informative output
Diego Biurrun [Thu, 28 Feb 2013 15:06:39 +0000 (16:06 +0100)]
configure: Add detected C library and host compiler to informative output

5 years agoavconv: initialize hwaccel_pix_fmt
Anton Khirnov [Sat, 23 Nov 2013 13:07:48 +0000 (14:07 +0100)]
avconv: initialize hwaccel_pix_fmt

Fixes an assertion failure in vdpau_get_buffer() when -hwaccel auto is
used, but hwaccel init fails.

5 years agoalsa-audio-dec: explicitly cast the delay to a signed int64
Anton Khirnov [Sun, 1 Dec 2013 08:27:01 +0000 (09:27 +0100)]
alsa-audio-dec: explicitly cast the delay to a signed int64

Otherwise the expression will be evaluated as unsigned, which will break
when the result should be negative.
CC:libav-stable@libav.org

5 years agodv: Split off DV video encoder into its own file
Diego Biurrun [Thu, 5 Apr 2012 14:58:43 +0000 (16:58 +0200)]
dv: Split off DV video encoder into its own file

5 years agodv: Move DV VLC data tables out of header file
Diego Biurrun [Sun, 10 Nov 2013 16:23:31 +0000 (17:23 +0100)]
dv: Move DV VLC data tables out of header file

5 years agobuild: Add rule for building host-specific object files
Diego Biurrun [Sun, 1 Dec 2013 05:01:51 +0000 (06:01 +0100)]
build: Add rule for building host-specific object files

5 years agobuild: Add shorthand for HOSTCC compile macro
Diego Biurrun [Mon, 2 Dec 2013 02:51:48 +0000 (03:51 +0100)]
build: Add shorthand for HOSTCC compile macro

5 years agodsputil: x86: Move ff_inv_zigzag_direct16 table init to mpegvideo
Diego Biurrun [Sun, 1 Dec 2013 04:05:23 +0000 (05:05 +0100)]
dsputil: x86: Move ff_inv_zigzag_direct16 table init to mpegvideo

The table is MMX-specific and used nowhere else.

5 years agodoc: Try to find nonstandard Perl path from the environment
Diego Biurrun [Fri, 29 Nov 2013 18:24:56 +0000 (13:24 -0500)]
doc: Try to find nonstandard Perl path from the environment

5 years agogitignore: Ignore multilibrary example programs
Diego Biurrun [Sun, 1 Dec 2013 03:05:11 +0000 (04:05 +0100)]
gitignore: Ignore multilibrary example programs

5 years agodcadec: Add some logging before returning on error
Tim Walker [Fri, 29 Nov 2013 17:12:26 +0000 (18:12 +0100)]
dcadec: Add some logging before returning on error

Based on a patch by Michael Niedermayer.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agoconfigure: Do not use pthread_create to check for pthread
Luca Barbato [Fri, 29 Nov 2013 17:29:12 +0000 (09:29 -0800)]
configure: Do not use pthread_create to check for pthread

Certain instrumentation addons leads to a false positive in configure
and link failures at the end of the build phase.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
5 years agogo2meeting: disallow tile dimensions that are not multiple of 16
Kostya Shishkov [Fri, 29 Nov 2013 08:15:00 +0000 (09:15 +0100)]
go2meeting: disallow tile dimensions that are not multiple of 16

Original decoder seems to always use 176x128 tiles anyway and this helps
avoiding lots of issues with odd tile sizes in fuzzed files.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agompeg4videodec: move sprite_{shift,traj} from MpegEncContext to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 13:34:52 +0000 (14:34 +0100)]
mpeg4videodec: move sprite_{shift,traj} from MpegEncContext to Mpeg4DecContext

5 years agompeg4videodec: move num_sprite_warping_points from MpegEncContext to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 13:34:52 +0000 (14:34 +0100)]
mpeg4videodec: move num_sprite_warping_points from MpegEncContext to Mpeg4DecContext

5 years agompeg4videodec: move sprite_brightness_change from MpegEncContext to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 13:34:52 +0000 (14:34 +0100)]
mpeg4videodec: move sprite_brightness_change from MpegEncContext to Mpeg4DecContext

5 years agompeg4videodec: move scalability from MpegEncContext to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 13:34:52 +0000 (14:34 +0100)]
mpeg4videodec: move scalability from MpegEncContext to Mpeg4DecContext

5 years agompeg4videodec: move enhancement_type from MpegEncContext to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 13:34:52 +0000 (14:34 +0100)]
mpeg4videodec: move enhancement_type from MpegEncContext to Mpeg4DecContext

5 years agompeg4videodec: remove a write-only variable from MpegEncContext
Anton Khirnov [Tue, 26 Nov 2013 13:45:14 +0000 (14:45 +0100)]
mpeg4videodec: remove a write-only variable from MpegEncContext

5 years agompeg4videodec: move new_pred from MpegEncContext to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 13:34:52 +0000 (14:34 +0100)]
mpeg4videodec: move new_pred from MpegEncContext to Mpeg4DecContext

5 years agompeg4videodec: replace MpegEncContext.reduced_res_vop with a local variable
Anton Khirnov [Tue, 26 Nov 2013 13:34:52 +0000 (14:34 +0100)]
mpeg4videodec: replace MpegEncContext.reduced_res_vop with a local variable

5 years agompeg4videodec: remove a write-only variable from MpegEncContext
Anton Khirnov [Tue, 26 Nov 2013 13:40:21 +0000 (14:40 +0100)]
mpeg4videodec: remove a write-only variable from MpegEncContext

5 years agompeg4videodec: move t_frame from MpegEncContext to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 13:34:52 +0000 (14:34 +0100)]
mpeg4videodec: move t_frame from MpegEncContext to Mpeg4DecContext

5 years agompeg4videodec: move cplx_estimation_* fields from MpegEncContext to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 13:34:52 +0000 (14:34 +0100)]
mpeg4videodec: move cplx_estimation_* fields from MpegEncContext to Mpeg4DecContext

5 years agompeg4videodec: move mpeg4-specific bug workaround variables from MpegEncContext to...
Anton Khirnov [Tue, 26 Nov 2013 13:30:13 +0000 (14:30 +0100)]
mpeg4videodec: move mpeg4-specific bug workaround variables from MpegEncContext to Mpeg4DecContext

5 years agompeg4videodec: move mpeg4-specific post-frame-decode code from h264dec to mpeg4videodec
Anton Khirnov [Tue, 26 Nov 2013 13:22:10 +0000 (14:22 +0100)]
mpeg4videodec: move mpeg4-specific post-frame-decode code from h264dec to mpeg4videodec

5 years agompeg4videodec: move mpeg4-specific bug detection from h263 generic code to mpeg4
Anton Khirnov [Tue, 26 Nov 2013 11:40:13 +0000 (12:40 +0100)]
mpeg4videodec: move mpeg4-specific bug detection from h263 generic code to mpeg4

5 years agompeg4videodec: move MpegEncContext.resync_marker into Mpeg4DecContext.
Anton Khirnov [Tue, 26 Nov 2013 11:18:44 +0000 (12:18 +0100)]
mpeg4videodec: move MpegEncContext.resync_marker into Mpeg4DecContext.

5 years agovc1: move MpegEncContext.resync_marker into VC1Context.
Anton Khirnov [Tue, 26 Nov 2013 11:18:44 +0000 (12:18 +0100)]
vc1: move MpegEncContext.resync_marker into VC1Context.

The field still remains in MpegEncContext because it is used by the
mpeg4 decoder.

5 years agompeg4videoenc: don't set MpegEncContext.resync_marker
Anton Khirnov [Tue, 26 Nov 2013 11:14:13 +0000 (12:14 +0100)]
mpeg4videoenc: don't set MpegEncContext.resync_marker

It is only used in one place immediately after it is set.

5 years agoh263dec: remove commented out cruft
Anton Khirnov [Tue, 26 Nov 2013 10:52:54 +0000 (11:52 +0100)]
h263dec: remove commented out cruft

5 years agompeg4videodec: move MpegEncContext.rvlc to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 10:23:16 +0000 (11:23 +0100)]
mpeg4videodec: move MpegEncContext.rvlc to Mpeg4DecContext

5 years agompeg4videodec: remove write-only sprite variables from MpegEncContext
Anton Khirnov [Tue, 26 Nov 2013 10:48:51 +0000 (11:48 +0100)]
mpeg4videodec: remove write-only sprite variables from MpegEncContext

5 years agompeg4videodec: move MpegEncContext.vol_sprite_usage to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 10:23:16 +0000 (11:23 +0100)]
mpeg4videodec: move MpegEncContext.vol_sprite_usage to Mpeg4DecContext

5 years agompeg4videoenc: write 0 instead of vol_sprite_usage
Anton Khirnov [Tue, 26 Nov 2013 10:37:59 +0000 (11:37 +0100)]
mpeg4videoenc: write 0 instead of vol_sprite_usage

That field is never set for encoding.

5 years agompeg4videodec: move MpegEncContext.time_increment_bits to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 10:23:16 +0000 (11:23 +0100)]
mpeg4videodec: move MpegEncContext.time_increment_bits to Mpeg4DecContext

The field remains in MpegEncContext for use in the encoder.

5 years agompeg4videodec: move MpegEncContext.shape to Mpeg4DecContext
Anton Khirnov [Tue, 26 Nov 2013 10:23:16 +0000 (11:23 +0100)]
mpeg4videodec: move MpegEncContext.shape to Mpeg4DecContext

5 years agompeg4videodec: add a mpeg4-specific private context.
Anton Khirnov [Tue, 26 Nov 2013 09:41:57 +0000 (10:41 +0100)]
mpeg4videodec: add a mpeg4-specific private context.

5 years agomxfdec: set extradata size
Anton Khirnov [Tue, 26 Nov 2013 14:41:12 +0000 (15:41 +0100)]
mxfdec: set extradata size

The line setting it was mistakenly removed in
ecf442a58b09bdb1dc1d2c3904b82ac5f79b2878

5 years agodcadec: add disable_xch private option.
Tim Walker [Sat, 23 Nov 2013 23:15:46 +0000 (00:15 +0100)]
dcadec: add disable_xch private option.

This supplements the deprecated request_channels-based control of XCh decoding.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agodcadec: treat all 2-channel modes as Stereo in dca_downmix.
Tim Walker [Fri, 22 Nov 2013 21:59:54 +0000 (22:59 +0100)]
dcadec: treat all 2-channel modes as Stereo in dca_downmix.

The check for (prim_channels > 2) before calling dca_downmix made these
cases unreachable, but now 2.1 layouts will go through the downmix code.
Having dual mono, Lt/Rt and sum-difference layouts print errors when
regular Stereo doesn't seems pointless.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agodca: support mixing LFE in dca_downmix.
Tim Walker [Fri, 22 Nov 2013 22:47:03 +0000 (23:47 +0100)]
dca: support mixing LFE in dca_downmix.

Embedded downmix coefficients can use this.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agodca: improve default stereo downmix coefficients.
Tim Walker [Fri, 22 Nov 2013 21:11:47 +0000 (22:11 +0100)]
dca: improve default stereo downmix coefficients.

Previous coefficients were producing a non-normalized, incorrect Lt/Rt downmix.

The new coefficients produce a standard Lo/Ro downmix with 3dB attenuation.

This should match the typical default coefficients used by DTS encoders.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agodca: extract core substream's embedded downmix coeffcient codes, if present.
Tim Walker [Fri, 22 Nov 2013 22:42:37 +0000 (23:42 +0100)]
dca: extract core substream's embedded downmix coeffcient codes, if present.

As per ETSI TS 102 114 V1.4.1 specification.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agodca: remove embedded downmix coefficient extraction.
Tim Walker [Fri, 22 Nov 2013 19:25:57 +0000 (20:25 +0100)]
dca: remove embedded downmix coefficient extraction.

It was based on an old, seemingly incorrect specification, so default
coefficients were always used anyway.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agodca: convert dca_default_coeffs to float.
Tim Walker [Fri, 22 Nov 2013 19:19:55 +0000 (20:19 +0100)]
dca: convert dca_default_coeffs to float.

Easier to read, modify, and avoids relying on an outdated table.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agodcadec: store the stereo downmix coefficients as float in the DCAContext.
Tim Walker [Fri, 22 Nov 2013 19:17:57 +0000 (20:17 +0100)]
dcadec: store the stereo downmix coefficients as float in the DCAContext.

The 7-bit codes previously used are absent from the ETSI 102 114 V1.4.1 spec.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agodcadec: implement request_channel_layout.
Tim Walker [Sat, 23 Nov 2013 22:36:21 +0000 (23:36 +0100)]
dcadec: implement request_channel_layout.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
5 years agox86: dsputil: Suppress deprecation warnings for XvMC bits
Diego Biurrun [Mon, 25 Nov 2013 18:57:13 +0000 (18:57 +0000)]
x86: dsputil: Suppress deprecation warnings for XvMC bits

These parts are scheduled for removal on the next version bump.

Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
5 years agodsputil/pngdsp: fix signed/unsigned type in end comparison
Michael Niedermayer [Fri, 30 Aug 2013 21:14:32 +0000 (23:14 +0200)]
dsputil/pngdsp: fix signed/unsigned type in end comparison

Fixes out of array accesses and integer overflows.

5 years agoconfigure: add strip flags checks
Vittorio Giovara [Mon, 25 Nov 2013 08:46:14 +0000 (08:46 +0000)]
configure: add strip flags checks

This will check if -wN '..@*' is available and fall back on -x if not;
when none are available, do not run strip at all to prevent removing
functions that might be actually needed.

5 years agoh263dec: sanitize a condition.
Anton Khirnov [Tue, 26 Nov 2013 10:07:22 +0000 (11:07 +0100)]
h263dec: sanitize a condition.

Call ff_mpeg4_decode_picture_header() only when the decoder has the
MPEG4 codec id, not based on a vaguely related value of h263_pred.

5 years agoh264_refs: make sure not to write over the bounds of the default ref list
Anton Khirnov [Fri, 15 Nov 2013 18:06:23 +0000 (19:06 +0100)]
h264_refs: make sure not to write over the bounds of the default ref list

Fixes invalid writes.
Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org

5 years agodoc/platform: Update to reflect current MSVC build situation
Derek Buitenhuis [Mon, 25 Nov 2013 13:45:35 +0000 (13:45 +0000)]
doc/platform: Update to reflect current MSVC build situation

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>