ffmpeg.git
8 years agomovenc: Calculate fps for tmcd without intermediate step.
Michael Niedermayer [Thu, 17 Jan 2013 17:51:49 +0000 (18:51 +0100)]
movenc: Calculate fps for tmcd without intermediate step.

Fixes part of Ticket2045

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoffmpeg: copy tmcd track timebase parameters
Michael Niedermayer [Thu, 17 Jan 2013 17:49:46 +0000 (18:49 +0100)]
ffmpeg: copy tmcd track timebase parameters

Fixes part of Ticket2045

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolavc: include timebase in avcodec string at debug level.
Michael Niedermayer [Thu, 17 Jan 2013 17:51:04 +0000 (18:51 +0100)]
lavc: include timebase in avcodec string at debug level.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agompeg12demux: Fallback to startcode for stream type identification.
Michael Niedermayer [Mon, 21 Jan 2013 03:21:56 +0000 (04:21 +0100)]
mpeg12demux: Fallback to startcode for stream type identification.

Fixes Ticket2147
Fixes SageTV support

Based-on patch by Andrew Gallatin
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoeacdata: do not set sample_fmt
Paul B Mahol [Thu, 24 Jan 2013 12:41:32 +0000 (12:41 +0000)]
eacdata: do not set sample_fmt

It is supposed to be set from lavc only.
Also this one differs from one set in decoder.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agoflic: do not set sample_fmt
Paul B Mahol [Thu, 24 Jan 2013 12:37:29 +0000 (12:37 +0000)]
flic: do not set sample_fmt

It is supposed to be set from lavc only.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Thu, 24 Jan 2013 13:44:34 +0000 (14:44 +0100)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  dsputil: Separate h264 qpel

Conflicts:
libavcodec/dsputil_template.c
libavcodec/h264.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '7a95afe433b2a692f490b98948c082e62ffc1d27'
Michael Niedermayer [Thu, 24 Jan 2013 13:34:35 +0000 (14:34 +0100)]
Merge commit '7a95afe433b2a692f490b98948c082e62ffc1d27'

* commit '7a95afe433b2a692f490b98948c082e62ffc1d27':
  doc: fix dependencies in pod generation

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '528878ee7b377e23a194d7c801571d97793047e0'
Michael Niedermayer [Thu, 24 Jan 2013 13:29:29 +0000 (14:29 +0100)]
Merge commit '528878ee7b377e23a194d7c801571d97793047e0'

* commit '528878ee7b377e23a194d7c801571d97793047e0':
  openbsd: configure: Stop enabling PIC by default

Conflicts:
configure

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '4a4a7e138c92901e04db46a6b05cc6948023e5f5'
Michael Niedermayer [Thu, 24 Jan 2013 13:18:25 +0000 (14:18 +0100)]
Merge commit '4a4a7e138c92901e04db46a6b05cc6948023e5f5'

* commit '4a4a7e138c92901e04db46a6b05cc6948023e5f5':
  rtpenc_chain: Use the original AVFormatContext for getting payload type
  rtp: Make sure the output format pointer is set

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agowmv2enc: drop setting of idct_algo
Michael Niedermayer [Thu, 24 Jan 2013 13:06:48 +0000 (14:06 +0100)]
wmv2enc: drop setting of idct_algo

This should have become redundant

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '57ed8debb9b9cc565cc6e9f98c5b5cbb9f69097c'
Michael Niedermayer [Thu, 24 Jan 2013 13:04:11 +0000 (14:04 +0100)]
Merge commit '57ed8debb9b9cc565cc6e9f98c5b5cbb9f69097c'

* commit '57ed8debb9b9cc565cc6e9f98c5b5cbb9f69097c':
  wmv2: Propagate the wmv2 idct permutation type to the dsputils context
  rtp: Make sure priv_data is set before reading it

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agomatroskadec: export codec bits_per_coded_sample
Paul B Mahol [Thu, 24 Jan 2013 12:13:46 +0000 (12:13 +0000)]
matroskadec: export codec bits_per_coded_sample

Fixes -codec copy with TTA from matroska to matroska.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agomatroskaenc: fix -codec copy with TTA
Paul B Mahol [Thu, 24 Jan 2013 11:58:51 +0000 (11:58 +0000)]
matroskaenc: fix -codec copy with TTA

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agomatroskaenc: support TTA muxing
Paul B Mahol [Thu, 24 Jan 2013 11:50:41 +0000 (11:50 +0000)]
matroskaenc: support TTA muxing

TTA in matroska does not store any private data.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agodoc/eval: fix/review the section about SI prefixes and usage
Stefano Sabatini [Wed, 23 Jan 2013 11:06:41 +0000 (12:06 +0100)]
doc/eval: fix/review the section about SI prefixes and usage

In particular, prefer "prefix" to "postfix" as in the tool manuals, and
specify powers of 2 and 10 explicitly.

This is based on the commit:
commit 2bf794b69820273e2284d69e9b9c98f5b7136add
Author: Marcus Stollsteimer <sto.mar@web.de>
Date:   Mon Nov 19 21:39:20 2012 +0100

8 years agodoc/eval: fix documentation for time() function
Stefano Sabatini [Thu, 24 Jan 2013 00:08:45 +0000 (01:08 +0100)]
doc/eval: fix documentation for time() function

8 years agodoc/eval: substitute if/then/else construct with an example making use of boolean...
Stefano Sabatini [Wed, 23 Jan 2013 18:05:54 +0000 (19:05 +0100)]
doc/eval: substitute if/then/else construct with an example making use of boolean expression composition

Since the if/then/else construct is now supported natively, showing how
to compose such a construct from basic primitives is misleading.

8 years agolavu/eval: extend if/ifnot functions to accept a third parameter
Stefano Sabatini [Tue, 22 Jan 2013 23:02:36 +0000 (00:02 +0100)]
lavu/eval: extend if/ifnot functions to accept a third parameter

Add support to an if/else construct, simplify logic in expressions.

8 years agolavc/tta: remove nonsense s->avctx indirection, use avctx directly
Paul B Mahol [Thu, 24 Jan 2013 10:50:59 +0000 (10:50 +0000)]
lavc/tta: remove nonsense s->avctx indirection, use avctx directly

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agolavfi/earwax: remove config_input()
Paul B Mahol [Wed, 23 Jan 2013 19:21:01 +0000 (19:21 +0000)]
lavfi/earwax: remove config_input()

This is wrong function to check for input parameters.
Function is not needed because query_formats() already
sets supported sample rates.

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agodsputil: Separate h264 qpel
Mans Rullgard [Thu, 24 Jan 2013 04:24:53 +0000 (20:24 -0800)]
dsputil: Separate h264 qpel

The sh4 optimizations are removed, because the code is
100% identical to the C code, so it is unlikely to
provide any real practical benefit.

Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
8 years agodoc: fix dependencies in pod generation
Luca Barbato [Wed, 23 Jan 2013 09:08:57 +0000 (10:08 +0100)]
doc: fix dependencies in pod generation

The script can and will change.

8 years agoopenbsd: configure: Stop enabling PIC by default
Diego Biurrun [Wed, 23 Jan 2013 22:08:40 +0000 (23:08 +0100)]
openbsd: configure: Stop enabling PIC by default

Previously PIC was enabled as a magic workaround for binaries that
built fine, but failed to function at all.  This problem no longer
exists, possibly since the introduction of symbol versioning.

8 years agortpenc_chain: Use the original AVFormatContext for getting payload type
Martin Storsjö [Wed, 23 Jan 2013 21:25:09 +0000 (23:25 +0200)]
rtpenc_chain: Use the original AVFormatContext for getting payload type

In ff_rtp_get_payload_type, the AVFormatContext is used for checking
whether the payload_type or rtpflags options are set. In rtpenc_chain,
the rtpctx struct is a newly initialized struct where no options have
been set yet, so no options can be fetched from there.

All muxers that internally chain rtp muxers have the "rtpflags" field
that allows passing such options on (which is how this worked before
8034130e06), so this works just as intended.

This makes it possible to produce H263 in RFC2190 format with chained
RTP muxers.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agortp: Make sure the output format pointer is set
Martin Storsjö [Wed, 23 Jan 2013 21:21:52 +0000 (23:21 +0200)]
rtp: Make sure the output format pointer is set

Not sure if this actually happens, but we do the same check when
checking payload_type further above in the function, so it might
be needed.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoRefuse to mux tta into matroska, the output file is broken.
Carl Eugen Hoyos [Thu, 24 Jan 2013 09:23:00 +0000 (10:23 +0100)]
Refuse to mux tta into matroska, the output file is broken.

8 years agompeg4videoenc: check w,h to be within the supported range.
Michael Niedermayer [Thu, 24 Jan 2013 03:38:17 +0000 (04:38 +0100)]
mpeg4videoenc: check w,h to be within the supported range.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agogifdec: check that the last keyframe exists and has been successfully parsed.
Michael Niedermayer [Thu, 24 Jan 2013 03:17:58 +0000 (04:17 +0100)]
gifdec: check that the last keyframe exists and has been successfully parsed.

Prevents inconsistent state and null pointer dereference

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolcldec: Check length before unsigned subtraction.
Michael Niedermayer [Thu, 24 Jan 2013 03:02:14 +0000 (04:02 +0100)]
lcldec: Check length before unsigned subtraction.

Fix integer overflow and out of array read

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agompc8: check stream count before accessing stream 1.
Michael Niedermayer [Thu, 24 Jan 2013 01:51:12 +0000 (02:51 +0100)]
mpc8: check stream count before accessing stream 1.

Fixes null pointer dereference

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoff_mss12_decode_init: check dimensions
Michael Niedermayer [Thu, 24 Jan 2013 00:25:02 +0000 (01:25 +0100)]
ff_mss12_decode_init: check dimensions

Fixes assertion failure

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agomatroskaenc: add codec_tag lists back.
Carl Eugen Hoyos [Wed, 23 Jan 2013 23:53:50 +0000 (00:53 +0100)]
matroskaenc: add codec_tag lists back.

This reverts 312645e :
"Do not set codec_tag property for matroska muxers."

Also adds dummy codec_tag lists with codecs
supported in mkv but not in wav / avi.

Fixes ticket #2169.

8 years agoOnly try to auto-detect LATM in mpegts if the LOAS demuxer was configured.
Carl Eugen Hoyos [Wed, 23 Jan 2013 23:47:36 +0000 (00:47 +0100)]
Only try to auto-detect LATM in mpegts if the LOAS demuxer was configured.

This allows to decode LATM-in-mpegts without the LOAS demuxer.

8 years agofloatdsp: restrict->av_restrict
Michael Niedermayer [Wed, 23 Jan 2013 23:49:47 +0000 (00:49 +0100)]
floatdsp: restrict->av_restrict

Fix msvc

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agosanm: Check decoded_size.
Michael Niedermayer [Wed, 23 Jan 2013 23:27:10 +0000 (00:27 +0100)]
sanm: Check decoded_size.

This prevents a buffer overflow in rle_decode()

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agowmv2: Propagate the wmv2 idct permutation type to the dsputils context
Martin Storsjö [Wed, 23 Jan 2013 21:14:27 +0000 (23:14 +0200)]
wmv2: Propagate the wmv2 idct permutation type to the dsputils context

This fixes encoding where the idct setting originally was set to
FF_IDCT_AUTO and dsputil chose a default idct with a non-null
permutation - even if the permutation tables were updated,
dct_quantize in x86/mpegvideoenc_template.c also checked the
value of this type variable.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agortp: Make sure priv_data is set before reading it
Martin Storsjö [Wed, 23 Jan 2013 19:38:41 +0000 (21:38 +0200)]
rtp: Make sure priv_data is set before reading it

This fixes crashes with muxing H263 into RTSP.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoeval: add function to access the current "wallclock" time.
Michael Niedermayer [Sun, 20 Jan 2013 18:08:43 +0000 (19:08 +0100)]
eval: add function to access the current "wallclock" time.

Reviewed-by: Stefano Sabatini <stefasab@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agohls: add missing checks for accessing avoption fields
Michael Niedermayer [Wed, 23 Jan 2013 21:21:51 +0000 (22:21 +0100)]
hls: add missing checks for accessing avoption fields

Fixes null pointer exception and probably other things

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agomlpdec: move ch_assign setup code down to after ch layout is set.
Michael Niedermayer [Wed, 23 Jan 2013 18:28:43 +0000 (19:28 +0100)]
mlpdec: move ch_assign setup code down to after ch layout is set.

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agomlp: fix channel order.
Michael Niedermayer [Wed, 23 Jan 2013 18:26:22 +0000 (19:26 +0100)]
mlp: fix channel order.

This fixes a regression introduced with todays merge

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolavf/hls: broker HTTP options
Micah Galizia [Wed, 23 Jan 2013 02:09:57 +0000 (21:09 -0500)]
lavf/hls: broker HTTP options

Signed-off-by: Stefano Sabatini <stefasab@gmail.com>
8 years agolavf/segment: exit immediately in case of invalid stream specifier
Stefano Sabatini [Wed, 23 Jan 2013 17:50:21 +0000 (18:50 +0100)]
lavf/segment: exit immediately in case of invalid stream specifier

Avoid duplicated confusing error message, and propagate error code from
the failing avformat_match_stream_specifier() call.

8 years agolavf/segment: avoid failure in case -flags +live and -segment_times/frames are specified
Stefano Sabatini [Wed, 23 Jan 2013 17:36:57 +0000 (18:36 +0100)]
lavf/segment: avoid failure in case -flags +live and -segment_times/frames are specified

The conflict does not apply any longer, since the M3U8 segment target
duration is re-computed every time a new segment is added to the list.

8 years agolavf/segment: drop now pointless segment_list_close() function
Stefano Sabatini [Wed, 23 Jan 2013 17:19:42 +0000 (18:19 +0100)]
lavf/segment: drop now pointless segment_list_close() function

8 years agolavf/segment: mark #EXT-X-ENDLIST in M3U8 only at the end of stream
Stefano Sabatini [Tue, 22 Jan 2013 23:23:47 +0000 (00:23 +0100)]
lavf/segment: mark #EXT-X-ENDLIST in M3U8 only at the end of stream

Should fix immediate playback termination.

In particular, should fix trac ticket #2172.

8 years agoMerge remote-tracking branch 'qatar/master'
Michael Niedermayer [Wed, 23 Jan 2013 17:25:53 +0000 (18:25 +0100)]
Merge remote-tracking branch 'qatar/master'

* qatar/master:
  rtpenc: fix overflow checking in avc_mp4_find_startcode()
  rtmp: fix buffer overflows in ff_amf_tag_contents()
  rtmp: fix multiple broken overflow checks
  float_dsp: Include config.h for redefining restrict

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit 'baf35bb4bc4fe7a2a4113c50989d11dd9ef81e76'
Michael Niedermayer [Wed, 23 Jan 2013 17:15:29 +0000 (18:15 +0100)]
Merge commit 'baf35bb4bc4fe7a2a4113c50989d11dd9ef81e76'

* commit 'baf35bb4bc4fe7a2a4113c50989d11dd9ef81e76':
  dsputil: remove one array dimension from avg_no_rnd_pixels_tab.

Conflicts:
libavcodec/x86/dsputil_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '2612c4dc78e1750c4653bf5a9f2cbe95f7b4ed6e'
Michael Niedermayer [Wed, 23 Jan 2013 17:06:50 +0000 (18:06 +0100)]
Merge commit '2612c4dc78e1750c4653bf5a9f2cbe95f7b4ed6e'

* commit '2612c4dc78e1750c4653bf5a9f2cbe95f7b4ed6e':
  dsputil: remove 9/10 bits hpel functions.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '2bef1a83d7a3ca60b161ab90bf4d4338e5def5e7'
Michael Niedermayer [Wed, 23 Jan 2013 16:58:39 +0000 (17:58 +0100)]
Merge commit '2bef1a83d7a3ca60b161ab90bf4d4338e5def5e7'

* commit '2bef1a83d7a3ca60b161ab90bf4d4338e5def5e7':
  dsputil: remove some never-assigned function pointers from the struct.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '32ff6432284f713e9f837ee5b36fc8e9f1902836'
Michael Niedermayer [Wed, 23 Jan 2013 16:52:21 +0000 (17:52 +0100)]
Merge commit '32ff6432284f713e9f837ee5b36fc8e9f1902836'

* commit '32ff6432284f713e9f837ee5b36fc8e9f1902836':
  dsputil: remove avg_no_rnd_pixels8.

Conflicts:
libavcodec/x86/dsputil_mmx.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '88bd7fdc821aaa0cbcf44cf075c62aaa42121e3f'
Michael Niedermayer [Wed, 23 Jan 2013 16:44:56 +0000 (17:44 +0100)]
Merge commit '88bd7fdc821aaa0cbcf44cf075c62aaa42121e3f'

* commit '88bd7fdc821aaa0cbcf44cf075c62aaa42121e3f':
  Drop DCTELEM typedef

Conflicts:
libavcodec/alpha/dsputil_alpha.h
libavcodec/alpha/motion_est_alpha.c
libavcodec/arm/dsputil_init_armv6.c
libavcodec/bfin/dsputil_bfin.h
libavcodec/bfin/pixels_bfin.S
libavcodec/cavs.c
libavcodec/cavsdec.c
libavcodec/dct-test.c
libavcodec/dnxhdenc.c
libavcodec/dsputil.c
libavcodec/dsputil.h
libavcodec/dsputil_template.c
libavcodec/eamad.c
libavcodec/h264_cavlc.c
libavcodec/h264idct_template.c
libavcodec/mpeg12.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo.h
libavcodec/mpegvideo_enc.c
libavcodec/ppc/dsputil_altivec.c
libavcodec/proresdsp.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agolavfi/swapuv: support all planar yuv pixel formats
Paul B Mahol [Sat, 22 Dec 2012 01:48:17 +0000 (01:48 +0000)]
lavfi/swapuv: support all planar yuv pixel formats

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agoMerge commit '2e4bb99f4df7052b3e147ee898fcb4013a34d904'
Michael Niedermayer [Wed, 23 Jan 2013 15:59:33 +0000 (16:59 +0100)]
Merge commit '2e4bb99f4df7052b3e147ee898fcb4013a34d904'

* commit '2e4bb99f4df7052b3e147ee898fcb4013a34d904':
  vorbisdsp: convert x86 simd functions from inline asm to yasm.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '0ee8293a77a6afad161e91ce1d43c4a57ce33a6a'
Michael Niedermayer [Wed, 23 Jan 2013 15:52:05 +0000 (16:52 +0100)]
Merge commit '0ee8293a77a6afad161e91ce1d43c4a57ce33a6a'

* commit '0ee8293a77a6afad161e91ce1d43c4a57ce33a6a':
  vp3dsp: don't do aligned reads on input.
  mlp_parser: cosmetics: re-indent.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agomlpdec: remove disabled code, leftover from merge
Michael Niedermayer [Wed, 23 Jan 2013 15:50:52 +0000 (16:50 +0100)]
mlpdec: remove disabled code, leftover from merge

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit 'ed1b01131e662c9086b27aaaea69684d8575fbea'
Michael Niedermayer [Wed, 23 Jan 2013 15:44:30 +0000 (16:44 +0100)]
Merge commit 'ed1b01131e662c9086b27aaaea69684d8575fbea'

* commit 'ed1b01131e662c9086b27aaaea69684d8575fbea':
  mlp: implement support for AVCodecContext.request_channel_layout.

Conflicts:
libavcodec/mlpdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit 'b0c7e3ffd09f68022429920da483ad7abed84aa1'
Michael Niedermayer [Wed, 23 Jan 2013 15:34:34 +0000 (16:34 +0100)]
Merge commit 'b0c7e3ffd09f68022429920da483ad7abed84aa1'

* commit 'b0c7e3ffd09f68022429920da483ad7abed84aa1':
  mlp_parser: account for AVCodecContext.request_channels when setting the channel layout.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '1fd2deedcc6400e08b31566a547a5fac3b38cefb'
Michael Niedermayer [Wed, 23 Jan 2013 15:12:05 +0000 (16:12 +0100)]
Merge commit '1fd2deedcc6400e08b31566a547a5fac3b38cefb'

* commit '1fd2deedcc6400e08b31566a547a5fac3b38cefb':
  mlpdec: set the channel layout.

Conflicts:
libavcodec/mlpdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '3ffcccb4fbaae4d5ad775506f1f2761f2029affa'
Michael Niedermayer [Wed, 23 Jan 2013 14:59:45 +0000 (15:59 +0100)]
Merge commit '3ffcccb4fbaae4d5ad775506f1f2761f2029affa'

* commit '3ffcccb4fbaae4d5ad775506f1f2761f2029affa':
  mlpdec: TrueHD: use Libav channel order.

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '99ccd2ba10eac2b282c272ad9e75f082123c765a'
Michael Niedermayer [Wed, 23 Jan 2013 13:54:40 +0000 (14:54 +0100)]
Merge commit '99ccd2ba10eac2b282c272ad9e75f082123c765a'

* commit '99ccd2ba10eac2b282c272ad9e75f082123c765a':
  mlp: store the channel layout for each substream.

Conflicts:
libavcodec/mlp_parser.c
libavcodec/mlpdec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '73b704ac609d83e0be124589f24efd9b94947cf9'
Michael Niedermayer [Wed, 23 Jan 2013 13:31:55 +0000 (14:31 +0100)]
Merge commit '73b704ac609d83e0be124589f24efd9b94947cf9'

* commit '73b704ac609d83e0be124589f24efd9b94947cf9':
  arm: Add some missing header #includes
  floatdsp: move scalarproduct_float from dsputil to avfloatdsp.

Conflicts:
libavcodec/acelp_pitch_delay.c
libavcodec/amrnbdec.c
libavcodec/amrwbdec.c
libavcodec/ra288.c
libavcodec/x86/dsputil_mmx.c
libavutil/x86/float_dsp.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '5959bfaca396ecaf63a8123055f499688b79cae3'
Michael Niedermayer [Wed, 23 Jan 2013 13:13:54 +0000 (14:13 +0100)]
Merge commit '5959bfaca396ecaf63a8123055f499688b79cae3'

* commit '5959bfaca396ecaf63a8123055f499688b79cae3':
  floatdsp: move butterflies_float from dsputil to avfloatdsp.

Conflicts:
libavcodec/dsputil.c
libavcodec/dsputil.h
libavcodec/imc.c
libavcodec/mpegaudiodec.c

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '42d324694883cdf1fff1612ac70fa403692a1ad4'
Michael Niedermayer [Wed, 23 Jan 2013 13:04:50 +0000 (14:04 +0100)]
Merge commit '42d324694883cdf1fff1612ac70fa403692a1ad4'

* commit '42d324694883cdf1fff1612ac70fa403692a1ad4':
  floatdsp: move vector_fmul_reverse from dsputil to avfloatdsp.

Conflicts:
libavcodec/arm/dsputil_init_vfp.c
libavcodec/arm/dsputil_vfp.S
libavcodec/dsputil.c
libavcodec/ppc/float_altivec.c
libavcodec/x86/dsputil.asm
libavutil/x86/float_dsp.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoMerge commit '55aa03b9f8f11ebb7535424cc0e5635558590f49'
Michael Niedermayer [Wed, 23 Jan 2013 12:54:34 +0000 (13:54 +0100)]
Merge commit '55aa03b9f8f11ebb7535424cc0e5635558590f49'

* commit '55aa03b9f8f11ebb7535424cc0e5635558590f49':
  floatdsp: move vector_fmul_add from dsputil to avfloatdsp.

Conflicts:
libavcodec/dsputil.c
libavcodec/x86/dsputil.asm

Merged-by: Michael Niedermayer <michaelni@gmx.at>
8 years agortpenc: fix overflow checking in avc_mp4_find_startcode()
Xi Wang [Wed, 23 Jan 2013 01:58:07 +0000 (20:58 -0500)]
rtpenc: fix overflow checking in avc_mp4_find_startcode()

The check `start + res < start' is broken since pointer overflow is
undefined behavior in C.  Many compilers such as gcc/clang optimize
away this check.

Use `res > end - start' instead.  Also change `res' to unsigned int
to avoid signed left-shift overflow.

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agortmp: fix buffer overflows in ff_amf_tag_contents()
Xi Wang [Wed, 23 Jan 2013 02:40:05 +0000 (21:40 -0500)]
rtmp: fix buffer overflows in ff_amf_tag_contents()

A negative `size' will bypass FFMIN().  In the subsequent memcpy() call,
`size' will be considered as a large positive value, leading to a buffer
overflow.

Change the type of `size' to unsigned int to avoid buffer overflow, and
simplify overflow checks accordingly. Also change a literal buffer
size to use sizeof, and limit the amount of data copied in another
memcpy call as well.

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agortmp: fix multiple broken overflow checks
Xi Wang [Tue, 22 Jan 2013 22:49:29 +0000 (17:49 -0500)]
rtmp: fix multiple broken overflow checks

Sanity checks like `data + size >= data_end || data + size < data' are
broken, because `data + size < data' assumes pointer overflow, which is
undefined behavior in C.  Many compilers such as gcc/clang optimize such
checks away.

Use `size < 0 || size >= data_end - data' instead.

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoadcpmenc: remove unused header
Paul B Mahol [Tue, 22 Jan 2013 20:37:42 +0000 (20:37 +0000)]
adcpmenc: remove unused header

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agojpeglsenc: add missing put_bits.h header
Paul B Mahol [Tue, 22 Jan 2013 20:35:04 +0000 (20:35 +0000)]
jpeglsenc: add missing put_bits.h header

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agoffv1enc: include correct header
Paul B Mahol [Tue, 22 Jan 2013 20:32:44 +0000 (20:32 +0000)]
ffv1enc: include correct header

Encoder needs put_bits.h, not get_bits.h

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agodcaenc: remove unused header
Paul B Mahol [Tue, 22 Jan 2013 20:31:14 +0000 (20:31 +0000)]
dcaenc: remove unused header

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agoflacenc: include correct header
Paul B Mahol [Tue, 22 Jan 2013 20:27:01 +0000 (20:27 +0000)]
flacenc: include correct header

Encoder needs put_bits.h, not get_bits.h

Signed-off-by: Paul B Mahol <onemda@gmail.com>
8 years agofloat_dsp: Include config.h for redefining restrict
Martin Storsjö [Wed, 23 Jan 2013 09:03:49 +0000 (11:03 +0200)]
float_dsp: Include config.h for redefining restrict

This makes sure that the restrict keyword is mapped to whatever
keyword the compiler prefers/supports. This fixes building on MSVC
(and possibly on GCC 2.x as well).

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agortmp: fix buffer overflows in ff_amf_tag_contents()
Xi Wang [Wed, 23 Jan 2013 02:40:05 +0000 (21:40 -0500)]
rtmp: fix buffer overflows in ff_amf_tag_contents()

A negative `size' will bypass FFMIN().  In the subsequent memcpy() call,
`size' will be considered as a large positive value, leading to a buffer
overflow.

Change the type of `size' to unsigned int to avoid buffer overflow, and
simplify overflow checks accordingly.

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agortmp: fix multiple broken overflow checks
Xi Wang [Tue, 22 Jan 2013 22:49:29 +0000 (17:49 -0500)]
rtmp: fix multiple broken overflow checks

Sanity checks like `data + size >= data_end || data + size < data' are
broken, because `data + size < data' assumes pointer overflow, which is
undefined behavior in C.  Many compilers such as gcc/clang optimize such
checks away.

Use `size < 0 || size >= data_end - data' instead.

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agortpenc: fix overflow checking in avc_mp4_find_startcode()
Xi Wang [Wed, 23 Jan 2013 01:58:07 +0000 (20:58 -0500)]
rtpenc: fix overflow checking in avc_mp4_find_startcode()

The check `start + res < start' is broken since pointer overflow is
undefined behavior in C.  Many compilers such as gcc/clang optimize
away this check.

Use `res > end - start' instead.  Also change `res' to unsigned int
to avoid signed left-shift overflow.

Signed-off-by: Xi Wang <xi.wang@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agotruemotion2: use av_mallocz()
Michael Niedermayer [Wed, 23 Jan 2013 04:09:43 +0000 (05:09 +0100)]
truemotion2: use av_mallocz()

Fixes use of uninitialized values.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agotruemotion2: clear the token array if its initialization fails.
Michael Niedermayer [Wed, 23 Jan 2013 03:41:41 +0000 (04:41 +0100)]
truemotion2: clear the token array if its initialization fails.

Fixes use of uninitialized and half initialized values, which
can occur on several error pathes

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agodsputil: remove one array dimension from avg_no_rnd_pixels_tab.
Ronald S. Bultje [Tue, 22 Jan 2013 19:27:57 +0000 (11:27 -0800)]
dsputil: remove one array dimension from avg_no_rnd_pixels_tab.

8 years agodsputil: remove 9/10 bits hpel functions.
Ronald S. Bultje [Tue, 22 Jan 2013 19:00:35 +0000 (11:00 -0800)]
dsputil: remove 9/10 bits hpel functions.

These are never used.

8 years agodsputil: remove some never-assigned function pointers from the struct.
Ronald S. Bultje [Tue, 22 Jan 2013 02:51:52 +0000 (18:51 -0800)]
dsputil: remove some never-assigned function pointers from the struct.

8 years agodsputil: remove avg_no_rnd_pixels8.
Ronald S. Bultje [Tue, 22 Jan 2013 02:02:30 +0000 (18:02 -0800)]
dsputil: remove avg_no_rnd_pixels8.

This is never used.

8 years agoDrop DCTELEM typedef
Diego Biurrun [Sun, 20 Jan 2013 00:02:29 +0000 (01:02 +0100)]
Drop DCTELEM typedef

It does not help as an abstraction and adds dsputil dependencies.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
8 years agovorbisdsp: convert x86 simd functions from inline asm to yasm.
Ronald S. Bultje [Wed, 16 Jan 2013 01:00:41 +0000 (17:00 -0800)]
vorbisdsp: convert x86 simd functions from inline asm to yasm.

8 years agovp3dsp: don't do aligned reads on input.
Ronald S. Bultje [Tue, 22 Jan 2013 20:45:35 +0000 (12:45 -0800)]
vp3dsp: don't do aligned reads on input.

The input is not guaranteed to be aligned.

8 years agomvdec: check channel count.
Michael Niedermayer [Tue, 22 Jan 2013 22:05:53 +0000 (23:05 +0100)]
mvdec: check channel count.

Fixes division by 0

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agomvdec: minor simplification, remove av_inv_q()
Michael Niedermayer [Tue, 22 Jan 2013 21:52:23 +0000 (22:52 +0100)]
mvdec: minor simplification, remove av_inv_q()

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agomvdec: use avpriv_set_pts_info() instead of directly setting tb.
Michael Niedermayer [Tue, 22 Jan 2013 21:40:38 +0000 (22:40 +0100)]
mvdec: use avpriv_set_pts_info() instead of directly setting tb.

Fixes division by 0

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agosanm: remove "duplicate" for loop.
Michael Niedermayer [Tue, 22 Jan 2013 21:28:41 +0000 (22:28 +0100)]
sanm: remove "duplicate" for loop.

Fixes input buffer overread

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agomlp: implement support for AVCodecContext.request_channel_layout.
Tim Walker [Mon, 31 Dec 2012 14:33:27 +0000 (15:33 +0100)]
mlp: implement support for AVCodecContext.request_channel_layout.

Also wrap usage of AVCodecContext.request_channels in FF_API_REQUEST_CHANNELS directives.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
8 years agomlp_parser: account for AVCodecContext.request_channels when setting the channel...
Tim Walker [Mon, 31 Dec 2012 14:33:26 +0000 (15:33 +0100)]
mlp_parser: account for AVCodecContext.request_channels when setting the channel layout.

Allows users to configure the output based on what's actually decoded, rather than the full native layout.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
8 years agomlpdec: set the channel layout.
Tim Walker [Mon, 31 Dec 2012 14:33:25 +0000 (15:33 +0100)]
mlpdec: set the channel layout.

Fixes bug 401.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
CC:libav-stable@libav.org

8 years agomlpdec: TrueHD: use Libav channel order.
Tim Walker [Mon, 31 Dec 2012 14:33:24 +0000 (15:33 +0100)]
mlpdec: TrueHD: use Libav channel order.

Fixes bug 208.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
CC:libav-stable@libav.org

8 years agomlp: store the channel layout for each substream.
Tim Walker [Mon, 31 Dec 2012 14:33:23 +0000 (15:33 +0100)]
mlp: store the channel layout for each substream.

Also stop storing the channel arrangement in the header info, as it's unused outside of ff_mlp_read_major_sync.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
CC:libav-stable@libav.org

8 years agomlp_parser: cosmetics: re-indent.
Tim Walker [Mon, 31 Dec 2012 14:33:28 +0000 (15:33 +0100)]
mlp_parser: cosmetics: re-indent.

Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
8 years agosanm: check image dimensions before using them
Michael Niedermayer [Tue, 22 Jan 2013 20:30:20 +0000 (21:30 +0100)]
sanm: check image dimensions before using them

Avoids integer overflows and out of array accesses.

Found-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
8 years agoarm: Add some missing header #includes
Diego Biurrun [Mon, 21 Jan 2013 09:16:02 +0000 (10:16 +0100)]
arm: Add some missing header #includes

8 years agofloatdsp: move butterflies_float from dsputil to avfloatdsp.
Ronald S. Bultje [Sun, 20 Jan 2013 23:41:14 +0000 (15:41 -0800)]
floatdsp: move butterflies_float from dsputil to avfloatdsp.

This makes wmadec/enc, twinvq and mpegaudiodec (i.e. mp2/mp3)
independent of dsputil.