9 years agoavconv: pass the actually selected decoder to filter_codec_opts().
Anton Khirnov [Sat, 15 Dec 2012 10:45:59 +0000 (11:45 +0100)]
avconv: pass the actually selected decoder to filter_codec_opts().

9 years agoavconv: use new options parser.
Anton Khirnov [Fri, 8 Jun 2012 19:35:16 +0000 (21:35 +0200)]
avconv: use new options parser.

9 years agocmdutils: don't log an error in opt_default().
Anton Khirnov [Mon, 11 Jun 2012 08:18:51 +0000 (10:18 +0200)]
cmdutils: don't log an error in opt_default().

It results in spurious errors when using the new preparser.

9 years agocmdutils: add a commandline pre-parser.
Anton Khirnov [Sun, 10 Jun 2012 18:46:30 +0000 (20:46 +0200)]
cmdutils: add a commandline pre-parser.

It splits the commandline into a more convenient internal representation
for further parsing.

This will allow e.g.
- processing global options first independently of their location on the
  commandline, eliminating ugly hacks for processing e.g. cpuflags
- better options validation and error reporting. It is now possible for
  the parser to know that it's applying an input option to an output
  file or vice versa and act accordingly.

9 years agocmdutils: split parse_option().
Anton Khirnov [Sun, 10 Jun 2012 15:57:52 +0000 (17:57 +0200)]
cmdutils: split parse_option().

Separate the code that searches for the option to use and the code that
actually writes it. The writing code will be reused by the new options

9 years agocmdutils: add a macro to simplify grow_array() calls.
Anton Khirnov [Thu, 7 Jun 2012 19:52:07 +0000 (21:52 +0200)]
cmdutils: add a macro to simplify grow_array() calls.

9 years agoh264: support frame parameter changes during frame-mt
Janne Grunau [Thu, 6 Sep 2012 11:30:08 +0000 (13:30 +0200)]
h264: support frame parameter changes during frame-mt

Fixes CVE-2012-2782.

9 years agompegvideo: allocate scratch buffers after linesize is known
Janne Grunau [Sun, 25 Nov 2012 21:42:07 +0000 (22:42 +0100)]
mpegvideo: allocate scratch buffers after linesize is known

Since we can't know which stride a custom get_buffer() implementation is
going to use we have to allocate this scratch buffers after the linesize
is known. It was pretty safe for 8 bit per pixel pixel formats since we
always allocated memory for up to 16 bits per pixel. It broke hoever
with cmdutis.c's alloc_buffer() and high pixel bit depth since it
allocated larger edges than mpegvideo expected.

Fixes fuzzed sample nasa-8s2.ts_s244342.

9 years agoff_h264_direct_ref_list_init: fix B slice check.
Michael Niedermayer [Sun, 18 Nov 2012 17:46:05 +0000 (18:46 +0100)]
ff_h264_direct_ref_list_init: fix B slice check.

Fixes null pointer dereference.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
9 years agoh264: increase dist_scale_factor for up to 32 references
Janne Grunau [Mon, 17 Dec 2012 20:36:05 +0000 (21:36 +0100)]
h264: increase dist_scale_factor for up to 32 references

Compute dist_scale_factor_field only for MBAFF since that is the only
case in which it is used.

9 years agomisc typo, style and wording fixes
Diego Biurrun [Fri, 7 Dec 2012 15:07:51 +0000 (16:07 +0100)]
misc typo, style and wording fixes

9 years agoconfigure: formatting cosmetics
Diego Biurrun [Sun, 2 Dec 2012 22:32:41 +0000 (23:32 +0100)]
configure: formatting cosmetics

9 years agoh264: use mbaff ref indices in fill_colmap() only for mbaff references
Michael Niedermayer [Thu, 6 Oct 2011 20:54:00 +0000 (22:54 +0200)]
h264: use mbaff ref indices in fill_colmap() only for mbaff references

Prevents writing beyond array bounds.

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
9 years agoh264: prevent decoding of slice NALs in extradata
Janne Grunau [Sat, 15 Dec 2012 21:21:23 +0000 (22:21 +0100)]
h264: prevent decoding of slice NALs in extradata

It is not posible to call get_buffer during frame-mt codec
initialization. Libavformat might pass huge amounts of data as
extradata after parsing broken files. The 'extradata' for the fuzzed
sample sample_varPAR_s5374_r001-02.avi is 2.8M large and contains
multiple slices.

9 years agodoxy: Clarify what avpriv_set_pts_info does
Derek Buitenhuis [Sun, 16 Dec 2012 20:29:12 +0000 (15:29 -0500)]
doxy: Clarify what avpriv_set_pts_info does

The "pts for a given stream" was nonsensical.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
9 years agoau: Reorder code so that both muxer and demuxer are under #ifdefs
Diego Biurrun [Wed, 12 Dec 2012 15:55:35 +0000 (16:55 +0100)]
au: Reorder code so that both muxer and demuxer are under #ifdefs

This reduces code size when either piece has been disabled.

9 years agofate: Move RALF test into lossless audio group
Diego Biurrun [Sun, 16 Dec 2012 22:19:39 +0000 (23:19 +0100)]
fate: Move RALF test into lossless audio group

9 years agocosmetics: Use consistent names for multiple inclusion guards.
Diego Biurrun [Sun, 9 Dec 2012 12:35:21 +0000 (13:35 +0100)]
cosmetics: Use consistent names for multiple inclusion guards.

9 years agoavresample: use valid log context in mixing functions
Hendrik Leppkes [Sun, 16 Dec 2012 08:52:35 +0000 (09:52 +0100)]
avresample: use valid log context in mixing functions

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
9 years agolavr: remove automatic context close/open for resampling compensation
Justin Ruggles [Fri, 30 Nov 2012 01:58:05 +0000 (20:58 -0500)]
lavr: remove automatic context close/open for resampling compensation

It adds unnecessary complication for insignificant usability improvement.
The user really should know if they'll need resampling compensation before
opening the context.

Note that only the documentation has changed. The current functionality will
still work until the next major bump.

9 years agolavr: only save/restore the mixing matrix if mixing is being done
Justin Ruggles [Fri, 30 Nov 2012 01:49:36 +0000 (20:49 -0500)]
lavr: only save/restore the mixing matrix if mixing is being done

9 years agortpdec_vp8: Cosmetics: Fix bad alignment/indentation
Martin Storsjö [Wed, 12 Dec 2012 14:59:45 +0000 (16:59 +0200)]
rtpdec_vp8: Cosmetics: Fix bad alignment/indentation

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortpenc: Allow including a SDES/CNAME block in RTCP SR packets
Martin Storsjö [Fri, 3 Apr 2009 15:08:07 +0000 (18:08 +0300)]
rtpenc: Allow including a SDES/CNAME block in RTCP SR packets

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortpenc_vp8: Include the picture number in VP8 packets
Martin Storsjö [Sun, 9 Dec 2012 23:10:42 +0000 (01:10 +0200)]
rtpenc_vp8: Include the picture number in VP8 packets

This makes it easier for receivers to decide what to do if data
is lost.

Refactor calculating the max payload size, to avoid hardcoding the
header size in too many places, reducing the number of lines that
have to be touched if the header is adjusted further.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoh264: fix memleak on error during SPS parsing
Janne Grunau [Fri, 14 Dec 2012 20:08:24 +0000 (21:08 +0100)]
h264: fix memleak on error during SPS parsing

Introduced in d7d6efe42b0d.

9 years agoh264-mt: handle NAL_DPAs before calling ff_thread_finish_setup
Janne Grunau [Fri, 14 Dec 2012 22:22:55 +0000 (23:22 +0100)]
h264-mt: handle NAL_DPAs before calling ff_thread_finish_setup

Since a NAL_DPA can start a new frame it has to be handled before
ff_thread_finish_setup is called.

9 years agolavr: move AudioMix struct definition to audio_mix.c
Justin Ruggles [Fri, 14 Dec 2012 02:18:15 +0000 (21:18 -0500)]
lavr: move AudioMix struct definition to audio_mix.c

9 years agovp56: release frames on error
Luca Barbato [Fri, 14 Dec 2012 08:55:04 +0000 (09:55 +0100)]
vp56: release frames on error

Fixes CVE-2012-2783

CC: libav-stable@libav.org
9 years agovp56: make parse_header return standard error codes
Luca Barbato [Fri, 14 Dec 2012 07:22:06 +0000 (08:22 +0100)]
vp56: make parse_header return standard error codes

Returning 0 for failure is misleading.

CC: libav-stable@libav.org
9 years agoivi_common: check that scan pattern is set before using it.
Anton Khirnov [Thu, 13 Dec 2012 18:38:20 +0000 (19:38 +0100)]
ivi_common: check that scan pattern is set before using it.

Fixes CVE-2012-2791.

CC: libav-stable@libav.org
9 years agoivi_common: use proper logging context in ivi_decode_blocks().
Anton Khirnov [Thu, 13 Dec 2012 18:31:42 +0000 (19:31 +0100)]
ivi_common: use proper logging context in ivi_decode_blocks().

9 years agoivi_common: make some functions and tables static.
Anton Khirnov [Thu, 13 Dec 2012 18:25:52 +0000 (19:25 +0100)]
ivi_common: make some functions and tables static.

9 years agoasyncts: ignore min_delta only if first_pts is set
Justin Ruggles [Thu, 13 Dec 2012 23:30:20 +0000 (18:30 -0500)]
asyncts: ignore min_delta only if first_pts is set

9 years agoasyncts: merge two conditions
Justin Ruggles [Thu, 13 Dec 2012 18:20:51 +0000 (13:20 -0500)]
asyncts: merge two conditions

9 years agox86inc: fully concatenate tokens to fix macro expansion for nasm
Janne Grunau [Thu, 13 Dec 2012 21:42:11 +0000 (22:42 +0100)]
x86inc: fully concatenate tokens to fix macro expansion for nasm

Fixes build errors with nasm introduced in 6f40e9f070f7 for stack
memory alignment. Noticed by BugMaster.

9 years agoh264: initialize frame-mt context copies properly
Janne Grunau [Sun, 9 Dec 2012 18:19:51 +0000 (19:19 +0100)]
h264: initialize frame-mt context copies properly

9 years agompegvideo: treat delayed pictures as used
Janne Grunau [Wed, 12 Dec 2012 15:42:05 +0000 (16:42 +0100)]
mpegvideo: treat delayed pictures as used

This requires to move the avcodec_default_free_buffers() call to
ff_MPV_common_end() since otherwise delayed pictures would get freed
during a size change.

9 years agolavc: set frame parameters after decoding only if necessary
Janne Grunau [Wed, 12 Dec 2012 15:36:20 +0000 (16:36 +0100)]
lavc: set frame parameters after decoding only if necessary

Direct rendering capable decoders call get_buffer() which will set the
frame parameters.

Prevents frames with wrong parameters when a decoder outputs delayed
frames after a resolution or pixel format change.

9 years agoh264: set parameters from SPS whenever it changes
Janne Grunau [Fri, 16 Nov 2012 00:12:40 +0000 (01:12 +0100)]
h264: set parameters from SPS whenever it changes

Fixes a crash in the fuzzed sample sample_varPAR.avi_s26638 with
alternating bit depths.

9 years agoasyncts: cosmetics: reindent
Justin Ruggles [Thu, 13 Dec 2012 16:55:40 +0000 (11:55 -0500)]
asyncts: cosmetics: reindent

9 years agodoc: improve documentation for the asyncts filter first_pts option
Justin Ruggles [Wed, 12 Dec 2012 18:19:16 +0000 (13:19 -0500)]
doc: improve documentation for the asyncts filter first_pts option

Note the time base for the option. Add an additional example description.

9 years agoasyncts: fix the asyncts behavior when using the first_pts option
Justin Ruggles [Tue, 11 Dec 2012 22:36:09 +0000 (17:36 -0500)]
asyncts: fix the asyncts behavior when using the first_pts option

Currently it will do padding, but it does not properly handle
start-of-stream trimming as documented.

9 years agoasyncts: use clipped delta value when setting resample compensation
Justin Ruggles [Wed, 12 Dec 2012 18:26:57 +0000 (13:26 -0500)]
asyncts: use clipped delta value when setting resample compensation

The max_comp option is supposed to limit maximum compensation, but
currently the clipped value is not actually used.

9 years agoasyncts: fix flushing of final samples at EOF
Justin Ruggles [Wed, 12 Dec 2012 18:10:13 +0000 (13:10 -0500)]
asyncts: fix flushing of final samples at EOF

9 years agovp6: properly fail on unsupported feature
Luca Barbato [Thu, 13 Dec 2012 15:20:19 +0000 (16:20 +0100)]
vp6: properly fail on unsupported feature

Interlacing is not supported at all and mismanaged down the normal
codepaths causing possible buffer management issues.

CC: libav-stable@libav.org
9 years agoaacdec: Fix an off-by-one overwrite when switching to LTP profile from MAIN.
Alex Converse [Wed, 12 Dec 2012 01:26:10 +0000 (17:26 -0800)]
aacdec: Fix an off-by-one overwrite when switching to LTP profile from MAIN.

Found-by: pawlkt
CC: libav-stable@libav.org
9 years agox86inc: fix stack alignment on win64
Ronald S. Bultje [Wed, 12 Dec 2012 19:00:22 +0000 (20:00 +0100)]
x86inc: fix stack alignment on win64

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortpproto: Remove unused defines
Martin Storsjö [Tue, 11 Dec 2012 22:01:29 +0000 (00:01 +0200)]
rtpproto: Remove unused defines

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortpdec_mpeg4: Cosmetic cleanup
Martin Storsjö [Tue, 11 Dec 2012 19:42:32 +0000 (21:42 +0200)]
rtpdec_mpeg4: Cosmetic cleanup

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortpdec: Cosmetic cleanup of the header
Martin Storsjö [Tue, 11 Dec 2012 18:23:50 +0000 (20:23 +0200)]
rtpdec: Cosmetic cleanup of the header

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortpdec: Get rid of a useless _s suffix on a struct name
Martin Storsjö [Tue, 11 Dec 2012 16:24:46 +0000 (18:24 +0200)]
rtpdec: Get rid of a useless _s suffix on a struct name

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortpdec/enc: Remove outdated/useless/misleading comments
Martin Storsjö [Tue, 11 Dec 2012 16:50:10 +0000 (18:50 +0200)]
rtpdec/enc: Remove outdated/useless/misleading comments

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortpdec: Improve some comments
Martin Storsjö [Tue, 11 Dec 2012 17:57:18 +0000 (19:57 +0200)]
rtpdec: Improve some comments

The previous comment about the buffer was wildly inaccurate and

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortpdec: Remove unused context variables
Martin Storsjö [Tue, 11 Dec 2012 17:35:03 +0000 (19:35 +0200)]
rtpdec: Remove unused context variables

These stem from back when both the rtp muxer and rtp depacketizing
shared the same struct.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortpdec: Limit writing to the buffer size
Martin Storsjö [Tue, 11 Dec 2012 16:58:59 +0000 (18:58 +0200)]
rtpdec: Limit writing to the buffer size

This fixes potential buffer overwrites.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agosvq1: Fix building with -DDEBUG
Martin Storsjö [Wed, 12 Dec 2012 09:27:03 +0000 (11:27 +0200)]
svq1: Fix building with -DDEBUG

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agosvq1: return meaningful error codes.
Anton Khirnov [Sat, 8 Dec 2012 09:11:13 +0000 (10:11 +0100)]
svq1: return meaningful error codes.

9 years agolavc: replace some forgotten instances of PixelFormat with AVPixelFormat
Anton Khirnov [Sat, 8 Dec 2012 09:04:56 +0000 (10:04 +0100)]
lavc: replace some forgotten instances of PixelFormat with AVPixelFormat

9 years agosvq1: unmacroify macros used only once.
Anton Khirnov [Fri, 7 Dec 2012 18:58:20 +0000 (19:58 +0100)]
svq1: unmacroify macros used only once.

9 years agosvq1: deMpegEncContextize
Anton Khirnov [Fri, 7 Dec 2012 16:10:01 +0000 (17:10 +0100)]
svq1: deMpegEncContextize

This decoder is quite simple and none of the MpegEncContext complexity
is actually needed.

9 years agolavr: fix segfault due to overlooked change needed in 14758e3
Justin Ruggles [Tue, 11 Dec 2012 20:56:17 +0000 (15:56 -0500)]
lavr: fix segfault due to overlooked change needed in 14758e3

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agox86inc: support stack mem allocation and re-alignment in PROLOGUE
Ronald S. Bultje [Sun, 9 Dec 2012 00:12:38 +0000 (16:12 -0800)]
x86inc: support stack mem allocation and re-alignment in PROLOGUE

Use this in VP8/H264-8bit loopfilter functions so they can be used if
there is no aligned stack (e.g. MSVC 32bit or ICC 10.x).

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agolavr: temporarily store custom matrix in AVAudioResampleContext
Justin Ruggles [Thu, 29 Nov 2012 19:53:04 +0000 (14:53 -0500)]
lavr: temporarily store custom matrix in AVAudioResampleContext

This allows AudioMix to be treated the same way as other conversion contexts
and removes the requirement to allocate it at the same time as the

The current matrix get/set functions are split between the public interface
and AudioMix private functions.

9 years agolavr: clarify documentation for avresample_get/set_matrix()
Justin Ruggles [Thu, 29 Nov 2012 19:59:19 +0000 (14:59 -0500)]
lavr: clarify documentation for avresample_get/set_matrix()

9 years agoswfdec: cosmetics: fix indentation
Justin Ruggles [Mon, 10 Dec 2012 17:48:18 +0000 (12:48 -0500)]
swfdec: cosmetics: fix indentation

9 years agoswfdec: do better validation of tag length
Justin Ruggles [Mon, 10 Dec 2012 17:44:09 +0000 (12:44 -0500)]
swfdec: do better validation of tag length

Avoids trying to read a packet with 0 or negative size.
Avoids a potential infinite loop due to seeking backwards.

Partially based on a patch by Michael Niedermayer.

9 years agoMake LOCAL_ALIGNED syntactically similar on all systems
Mans Rullgard [Fri, 7 Dec 2012 23:03:01 +0000 (23:03 +0000)]
Make LOCAL_ALIGNED syntactically similar on all systems

This changes the LOCAL_ALIGNED definition on systems where
DECLARE_ALIGNED is used so it matches the manual alignment
case, ensuring invalid use will not compile on x86 only to
fail on everything else.

Signed-off-by: Mans Rullgard <mans@mansr.com>
9 years agobuild: fix 'clean' target
Mans Rullgard [Mon, 10 Dec 2012 14:55:28 +0000 (14:55 +0000)]
build: fix 'clean' target

This fixes removal of TOOLS as well as HOSTPROGS declared in the
top-level Makefile.  The clean target in common.mak needs to be
eval'd since the variables used within are reset for each library.

Signed-off-by: Mans Rullgard <mans@mansr.com>
9 years agoZeroCodec: Flip output
Carl Eugen Hoyos [Sun, 9 Dec 2012 09:24:16 +0000 (10:24 +0100)]
ZeroCodec: Flip output

The initial testing of the VFW binary codec was flawed,
likely due to an AviSynth bug.

Re-testing using VirtualDub and various professional editing
applications has revealed it should have been flipped.

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
9 years agortpdec: Remove an outdated todo comment
Martin Storsjö [Sun, 9 Dec 2012 19:00:12 +0000 (21:00 +0200)]
rtpdec: Remove an outdated todo comment

This comment was added in e309128f, in 2002, and has been brought
along since then more or less unmodified.

The first point of the todo was implemented in dbf30963 in 2006,
the second one is not relevant to rtpdec.c (brought along from
rtp.c in 8eb793c4 in 2008) but would be more relevant to the
rtp muxer, although it isn't a good idea anyway.

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agortpdec: Rename a static variable to normal naming conventions
Martin Storsjö [Sun, 9 Dec 2012 18:45:27 +0000 (20:45 +0200)]
rtpdec: Rename a static variable to normal naming conventions

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agosh4: dsputil: remove duplicate of ff_gmc_c()
Mans Rullgard [Sun, 9 Dec 2012 20:39:42 +0000 (20:39 +0000)]
sh4: dsputil: remove duplicate of ff_gmc_c()

This function is an exact duplicate of the generic one.

Signed-off-by: Mans Rullgard <mans@mansr.com>
9 years agodsputil: remove unused macro WRAPPER8_16
Mans Rullgard [Sun, 9 Dec 2012 13:28:44 +0000 (13:28 +0000)]
dsputil: remove unused macro WRAPPER8_16

This macro has never been used.

Signed-off-by: Mans Rullgard <mans@mansr.com>
9 years agoconfigure: fix automatic processing of _extralibs in check_deps
Mans Rullgard [Sun, 9 Dec 2012 17:34:14 +0000 (17:34 +0000)]
configure: fix automatic processing of _extralibs in check_deps

This fixes the automatic use of $foo_extralibs when feature foo
is enabled indirectly through a _select or _suggest.

Signed-off-by: Mans Rullgard <mans@mansr.com>
9 years agolibvpxenc: Support forcing keyframes
Martin Storsjö [Wed, 5 Dec 2012 15:17:20 +0000 (17:17 +0200)]
libvpxenc: Support forcing keyframes

Signed-off-by: Martin Storsjö <martin@martin.st>
9 years agoac3dec: decode directly into output buffers
Mans Rullgard [Thu, 13 Sep 2012 18:40:03 +0000 (19:40 +0100)]
ac3dec: decode directly into output buffers

Signed-off-by: Mans Rullgard <mans@mansr.com>
9 years agoac3dec: make downmix() take array of pointers to channel data
Mans Rullgard [Thu, 13 Sep 2012 18:35:18 +0000 (19:35 +0100)]
ac3dec: make downmix() take array of pointers to channel data

9 years agoac3dec: output planar float only
Mans Rullgard [Tue, 11 Sep 2012 16:25:05 +0000 (17:25 +0100)]
ac3dec: output planar float only

Signed-off-by: Mans Rullgard <mans@mansr.com>
9 years agosvq3: make slice type value unsigned to match svq3_get_ue_golomb return type
Janne Grunau [Sat, 8 Dec 2012 12:36:28 +0000 (13:36 +0100)]
svq3: make slice type value unsigned to match svq3_get_ue_golomb return type

9 years agoconfigure: Have protocols select network code instead of depending on it
Diego Biurrun [Fri, 7 Dec 2012 14:03:40 +0000 (15:03 +0100)]
configure: Have protocols select network code instead of depending on it

9 years agortpdec: K&R formatting and spelling cosmetics
Martin Storsjö [Fri, 7 Dec 2012 13:50:17 +0000 (15:50 +0200)]
rtpdec: K&R formatting and spelling cosmetics

Signed-off-by: Diego Biurrun <diego@biurrun.de>
9 years agocosmetics: Fix dropable --> droppable typo
Diego Biurrun [Fri, 7 Dec 2012 09:25:27 +0000 (10:25 +0100)]
cosmetics: Fix dropable --> droppable typo

9 years agoavio: K&R cosmetic formatting
Luca Barbato [Sun, 9 Dec 2012 03:15:45 +0000 (04:15 +0100)]
avio: K&R cosmetic formatting

9 years agolavf: fix arithmetic overflows in avformat_seek_file()
Mans Rullgard [Fri, 7 Dec 2012 13:53:56 +0000 (13:53 +0000)]
lavf: fix arithmetic overflows in avformat_seek_file()

The values compared here can be more than INT64_MAX apart.  Since the
difference is always positive, converting to uint64_t before subtracting
gives the correct result without overflows.

Signed-off-by: Mans Rullgard <mans@mansr.com>
9 years agomjpeg: initialize input padding after unescaped buffer to zero
Janne Grunau [Sat, 8 Dec 2012 15:20:18 +0000 (16:20 +0100)]
mjpeg: initialize input padding after unescaped buffer to zero

Fixes valgrind --undef-value-errors=yes warnings caused by valid
overreads in the fate vsynth jpegls, cover-art-ape and cover-art-wv

9 years agoimg2: document the options available
Luca Barbato [Sat, 8 Dec 2012 04:49:37 +0000 (05:49 +0100)]
img2: document the options available

9 years agohls: improve options description
Luca Barbato [Sat, 8 Dec 2012 05:14:41 +0000 (06:14 +0100)]
hls: improve options description

9 years agohls: use a meaningful long name
Luca Barbato [Sat, 8 Dec 2012 05:00:46 +0000 (06:00 +0100)]
hls: use a meaningful long name

9 years agohls: add start_number option
Luca Barbato [Sat, 8 Dec 2012 04:32:00 +0000 (05:32 +0100)]
hls: add start_number option

9 years agoh264: check for invalid zeros_left before writing
Ronald S. Bultje [Fri, 7 Dec 2012 21:09:20 +0000 (13:09 -0800)]
h264: check for invalid zeros_left before writing

Prevent an invalid write into coeffs[scantable[-1]] if zeros_left
itself was an invalid VLC code (and thus -1).

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
9 years agogolomb: use unsigned arithmetics in svq3_get_ue_golomb()
Janne Grunau [Fri, 30 Nov 2012 14:00:47 +0000 (15:00 +0100)]
golomb: use unsigned arithmetics in svq3_get_ue_golomb()

This prevents undefined behaviour of signed left shift if the coded
value is larger than 2^31. Large values are most likely invalid and
caused errors or by feeding random.

Validate every use of svq3_get_ue_golomb() and changed the place there
the return value was compared with negative numbers. dirac.c was clean,
fixed rv30 and svq3.

9 years agox86: float_dsp: fix loading of the len parameter on x86-32
Justin Ruggles [Wed, 5 Dec 2012 17:51:34 +0000 (12:51 -0500)]
x86: float_dsp: fix loading of the len parameter on x86-32

9 years agotakdec: fix initialisation of LOCAL_ALIGNED array
Josh Allmann [Fri, 7 Dec 2012 23:00:30 +0000 (00:00 +0100)]
takdec: fix initialisation of LOCAL_ALIGNED array

When LOCAL_ALIGNED uses manual alignment initialisation is not

Signed-off-by: Janne Grunau <janne-libav@jannau.net>
9 years agotakdec: fix initialisation of LOCAL_ALIGNED array
Mans Rullgard [Fri, 7 Dec 2012 22:13:57 +0000 (22:13 +0000)]
takdec: fix initialisation of LOCAL_ALIGNED array

When LOCAL_ALIGNED uses manual alignment initialisation is not

Signed-off-by: Mans Rullgard <mans@mansr.com>
9 years agotak: demuxer, parser, and decoder
Paul B Mahol [Tue, 2 Oct 2012 13:43:19 +0000 (13:43 +0000)]
tak: demuxer, parser, and decoder

Signed-off-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
9 years agoparser: fix large overreads
Michael Niedermayer [Wed, 3 Oct 2012 14:06:23 +0000 (16:06 +0200)]
parser: fix large overreads

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
9 years agobitstream: add get_bits64() to support reading more than 32 bits at once
Michael Niedermayer [Sun, 30 Sep 2012 00:39:55 +0000 (02:39 +0200)]
bitstream: add get_bits64() to support reading more than 32 bits at once

Also remove a duplicate function in the MPEG-TS demuxer.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
9 years agoarm: detect cpu features at runtime on Linux
Mans Rullgard [Wed, 5 Dec 2012 02:11:22 +0000 (02:11 +0000)]
arm: detect cpu features at runtime on Linux

This allows compiling optimised functions for features not enabled
in the core build and selecting these at runtime if the system has
the necessary support.

Signed-off-by: Mans Rullgard <mans@mansr.com>
9 years agoarm: rename ARMVFP config symbol to VFP
Mans Rullgard [Tue, 4 Dec 2012 23:29:34 +0000 (23:29 +0000)]
arm: rename ARMVFP config symbol to VFP

This is consistent with usual ARM nomenclature as well as with the
VFPV3 and NEON symbols which both lack the ARM prefix.

Signed-off-by: Mans Rullgard <mans@mansr.com>
9 years agoconfigure: arm: make _inline arch ext symbols depend on inline_asm
Mans Rullgard [Mon, 3 Dec 2012 01:36:49 +0000 (01:36 +0000)]
configure: arm: make _inline arch ext symbols depend on inline_asm

This makes --disable-inline-asm work as expected.

Signed-off-by: Mans Rullgard <mans@mansr.com>