ffmpeg.git
6 years agoconfigure: Group all hwaccels together in a separate variable
Diego Biurrun [Tue, 5 Feb 2013 14:32:24 +0000 (15:32 +0100)]
configure: Group all hwaccels together in a separate variable

6 years agoAdd av_cold attributes to arch-specific init functions
Diego Biurrun [Fri, 1 Feb 2013 09:31:59 +0000 (10:31 +0100)]
Add av_cold attributes to arch-specific init functions

6 years agoUse ptrdiff_t instead of int for {avg, put}_pixels line_size parameter.
Diego Biurrun [Tue, 29 Jan 2013 21:13:55 +0000 (22:13 +0100)]
Use ptrdiff_t instead of int for {avg, put}_pixels line_size parameter.

This avoids SIMD-optimized functions having to sign-extend their
line size argument manually to be able to do pointer arithmetic.

6 years agoavfilter: x86: consistent filenames for filter optimizations
Diego Biurrun [Fri, 1 Feb 2013 12:14:31 +0000 (13:14 +0100)]
avfilter: x86: consistent filenames for filter optimizations

6 years agompegvideo: simplify REBASE_PICTURE
Anton Khirnov [Thu, 31 Jan 2013 19:24:06 +0000 (20:24 +0100)]
mpegvideo: simplify REBASE_PICTURE

Always evaluate to NULL when the source Picture is not located in the
MpegEncContext.picture array. That will only happen for
next/last_picture_ptr when updating the thread context during h264 frame
threaded decoding, where they will point to elements of ref_list. Since
ref_list is not copied during updating the context and is invalid until
it is constructed for the current slice, there is no point in doing
anything complicated with next/last_picture_ptr, as they will get
updated when the ref_list is filled.

6 years agovf_hqdn3d: x86: Add proper arch optimization initialization
Diego Biurrun [Tue, 22 Jan 2013 00:39:37 +0000 (01:39 +0100)]
vf_hqdn3d: x86: Add proper arch optimization initialization

6 years agoUse proper "" quotes for local header #includes
Diego Biurrun [Fri, 1 Feb 2013 09:27:45 +0000 (10:27 +0100)]
Use proper "" quotes for local header #includes

6 years agoppc: fmtconvert: Drop two unused variables.
Diego Biurrun [Fri, 1 Feb 2013 00:54:19 +0000 (01:54 +0100)]
ppc: fmtconvert: Drop two unused variables.

6 years agobink demuxer: set framerate.
Anton Khirnov [Thu, 31 Jan 2013 20:07:34 +0000 (21:07 +0100)]
bink demuxer: set framerate.

6 years agobink demuxer: check malloc return value
Anton Khirnov [Thu, 31 Jan 2013 20:02:06 +0000 (21:02 +0100)]
bink demuxer: check malloc return value

6 years agobink: fix a check for the first frame.
Anton Khirnov [Thu, 31 Jan 2013 19:58:27 +0000 (20:58 +0100)]
bink: fix a check for the first frame.

Packet pts is a very unreliable indicator, use
AVCodecContext.frame_number instead.

6 years agodoc/developer: Drop obsolete MPlayer reference
Diego Biurrun [Thu, 31 Jan 2013 18:47:22 +0000 (19:47 +0100)]
doc/developer: Drop obsolete MPlayer reference

6 years agodoc/developer: Add ISC license to list of acceptable licenses
Diego Biurrun [Thu, 31 Jan 2013 18:37:08 +0000 (19:37 +0100)]
doc/developer: Add ISC license to list of acceptable licenses

6 years agodoc/developer: Add web links for all suggested licenses
Diego Biurrun [Thu, 31 Jan 2013 18:34:37 +0000 (19:34 +0100)]
doc/developer: Add web links for all suggested licenses

6 years agox86: hpel: Move {avg,put}_pixels16_sse2 to hpeldsp
Diego Biurrun [Tue, 29 Jan 2013 18:28:07 +0000 (19:28 +0100)]
x86: hpel: Move {avg,put}_pixels16_sse2 to hpeldsp

6 years agoconfigure: Add a comment indicating why uclibc is checked before glibc
Diego Biurrun [Wed, 30 Jan 2013 23:50:51 +0000 (00:50 +0100)]
configure: Add a comment indicating why uclibc is checked before glibc

6 years agoconfigure: Move newlib libc check before mingw libc check
Diego Biurrun [Wed, 30 Jan 2013 23:43:18 +0000 (00:43 +0100)]
configure: Move newlib libc check before mingw libc check

On Cygwin systems MinGW headers can be present if the corresponding
packages have been installed. Since the MinGW libc is checked for
first, this results in newlib getting misdetected as MinGW libc.

6 years agoavisynth: Change demuxer name to avoid conflicts with AVS
Diego Biurrun [Tue, 29 Jan 2013 17:00:34 +0000 (18:00 +0100)]
avisynth: Change demuxer name to avoid conflicts with AVS

6 years agompegvideo: Do REBASE_PICTURE with byte pointers
Martin Storsjö [Thu, 31 Jan 2013 08:19:57 +0000 (10:19 +0200)]
mpegvideo: Do REBASE_PICTURE with byte pointers

REBASE_PICTURE (more specifically, this half of it) takes a Picture
pointer that points into one larger struct, finds the offset of
that Picture within the struct and finds the corresponding field
within another instance of a similar struct.

The pointer difference "pic - (Picture*)old_ctx" is a value given
in sizeof(Picture) units, and when applied back on
(Picture*)new_ctx gets multiplied back with sizeof(Picture). Many
compilers seem to optimize out this division/multiplication, but
not all do.

GCC 4.2 on OS X doesn't seem to remove the division/multiplication,
therefore the new pointer didn't turn out to point to exactly
the right place in the new struct since it only had sizeof(Picture)
granularity (and the Picture is not aligned on a sizeof(Picture)
boundary within the encompassing struct). This bug has been present
before 47318953d as well - with H264, pointers to h->ref_list[0][0]
pointed to 88 bytes before h->ref_list[0][0] after the rebase. After
shrinking Picture, the difference ended up even larger, making
writes via such a Picture pointer overwrite other fields at random
in H264Context, ending up in crashes later.

This fixes H264 multithreaded decoding on OS X with GCC 4.2.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agodsputil: remove unused functions copy_block{2, 4, 8, 16}.
Ronald S. Bultje [Tue, 29 Jan 2013 03:56:55 +0000 (19:56 -0800)]
dsputil: remove unused functions copy_block{2, 4, 8, 16}.

6 years agomovenc: Simplify code by using avio_wb24
Martin Storsjö [Tue, 29 Jan 2013 17:10:04 +0000 (19:10 +0200)]
movenc: Simplify code by using avio_wb24

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agobfin: unbreak compilation
Luca Barbato [Tue, 29 Jan 2013 13:34:30 +0000 (14:34 +0100)]
bfin: unbreak compilation

Added a missing header file.

6 years agovf_delogo: fix copying the input frame.
Anton Khirnov [Mon, 21 Jan 2013 20:48:49 +0000 (21:48 +0100)]
vf_delogo: fix copying the input frame.

CC:libav-stable@libav.org

6 years agovf_delogo: fix an uninitialized read.
Anton Khirnov [Mon, 21 Jan 2013 20:10:54 +0000 (21:10 +0100)]
vf_delogo: fix an uninitialized read.

CC:libav-stable@libav.org

6 years agoh264: remove obsolete comment.
Anton Khirnov [Sat, 19 Jan 2013 08:15:37 +0000 (09:15 +0100)]
h264: remove obsolete comment.

6 years agompegvideo: remove some unused variables from Picture.
Anton Khirnov [Sun, 13 Jan 2013 16:54:50 +0000 (17:54 +0100)]
mpegvideo: remove some unused variables from Picture.

6 years agoutvideoenc/v410enc: do not set AVFrame.reference.
Anton Khirnov [Mon, 7 Jan 2013 10:39:56 +0000 (11:39 +0100)]
utvideoenc/v410enc: do not set AVFrame.reference.

That field will be deprecated.

6 years agopthread: make ff_thread_release_buffer idempotent.
Anton Khirnov [Fri, 28 Dec 2012 08:54:29 +0000 (09:54 +0100)]
pthread: make ff_thread_release_buffer idempotent.

I.e. don't do anything on already released frames.

6 years agomvi: set framerate
Anton Khirnov [Sat, 5 Jan 2013 10:45:51 +0000 (11:45 +0100)]
mvi: set framerate

This container does not store timestamps and thus supports CFR only.

6 years agorawdec: use AVPALETTE_SIZE instead of magic constants.
Anton Khirnov [Thu, 3 Jan 2013 16:19:01 +0000 (17:19 +0100)]
rawdec: use AVPALETTE_SIZE instead of magic constants.

6 years agomimic: remove a pointless cast.
Anton Khirnov [Thu, 27 Dec 2012 08:01:38 +0000 (09:01 +0100)]
mimic: remove a pointless cast.

6 years agomdec: return meaningful error codes.
Anton Khirnov [Sun, 9 Dec 2012 17:55:53 +0000 (18:55 +0100)]
mdec: return meaningful error codes.

6 years agomdec: cosmetics, reformat
Anton Khirnov [Sun, 9 Dec 2012 17:52:55 +0000 (18:52 +0100)]
mdec: cosmetics, reformat

6 years agomdec: merge mdec_common_init() into decode_init().
Anton Khirnov [Sun, 9 Dec 2012 17:44:44 +0000 (18:44 +0100)]
mdec: merge mdec_common_init() into decode_init().

There is no point in keeping those two functions separate.

6 years agoeatgv: use fixed-width types where appropriate.
Anton Khirnov [Wed, 21 Nov 2012 13:55:05 +0000 (14:55 +0100)]
eatgv: use fixed-width types where appropriate.

6 years agox86: Simplify some arch conditionals
Diego Biurrun [Sat, 26 Jan 2013 11:19:34 +0000 (12:19 +0100)]
x86: Simplify some arch conditionals

6 years agobfin: Separate VP3 initialization code
Diego Biurrun [Mon, 28 Jan 2013 19:22:54 +0000 (20:22 +0100)]
bfin: Separate VP3 initialization code

6 years agobfin: update VP3 idct
Luca Barbato [Mon, 28 Jan 2013 19:19:07 +0000 (20:19 +0100)]
bfin: update VP3 idct

The block must be set to 0.

6 years agox86: hpeldsp: Fix a typo, use the right register
Michael Niedermayer [Sun, 27 Jan 2013 14:50:26 +0000 (15:50 +0100)]
x86: hpeldsp: Fix a typo, use the right register

This makes the code actually work.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agoshorten: fix array subscript is below array bounds warning
Luca Barbato [Mon, 28 Jan 2013 06:24:51 +0000 (07:24 +0100)]
shorten: fix array subscript is below array bounds warning

Incidentally fixes alpha builds.

6 years agodsputil: Fix error by not using redzone and register name
Daniel Kang [Sun, 27 Jan 2013 20:28:58 +0000 (20:28 +0000)]
dsputil: Fix error by not using redzone and register name

Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agoswscale: GBRP output support
Michael Niedermayer [Fri, 25 Jan 2013 20:51:25 +0000 (21:51 +0100)]
swscale: GBRP output support

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
6 years agoarm: vp8: Fix the plain-armv6 version of vp8_luma_dc_wht
Martin Storsjö [Fri, 25 Jan 2013 21:16:23 +0000 (23:16 +0200)]
arm: vp8: Fix the plain-armv6 version of vp8_luma_dc_wht

This makes the plain-armv6 version use the same registers as the
armv6t2 version above.

This fixes fate-vp8 on plain-armv6 devices.

Signed-off-by: Martin Storsjö <martin@martin.st>
6 years agodsputil: x86: Correct the number of registers used in put_no_rnd_pixels16_l2
Daniel Kang [Sun, 27 Jan 2013 07:22:54 +0000 (02:22 -0500)]
dsputil: x86: Correct the number of registers used in put_no_rnd_pixels16_l2

put_no_rnd_pixels16_l2 allocated 5 instead of 6 registers.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agodsputil: add missing HAVE_YASM guard
Daniel Kang [Sun, 27 Jan 2013 07:14:53 +0000 (02:14 -0500)]
dsputil: add missing HAVE_YASM guard

Fix compile error under
"--disable-optimizations --disable-yasm --disable-inline-asm"

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agohwaccel: do not offer unsupported pixel formats
Rémi Denis-Courmont [Sat, 26 Jan 2013 20:47:55 +0000 (22:47 +0200)]
hwaccel: do not offer unsupported pixel formats

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agovdpau: add missing pixel format for H.264
Rémi Denis-Courmont [Sat, 26 Jan 2013 20:47:54 +0000 (22:47 +0200)]
vdpau: add missing pixel format for H.264

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agodsputil: x86: Convert mpeg4 qpel and dsputil avg to yasm
Daniel Kang [Sun, 27 Jan 2013 03:45:43 +0000 (03:45 +0000)]
dsputil: x86: Convert mpeg4 qpel and dsputil avg to yasm

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agoMove H264/QPEL specific asm from dsputil.asm to h264_qpel_*.asm.
Ronald S. Bultje [Fri, 25 Jan 2013 06:21:12 +0000 (22:21 -0800)]
Move H264/QPEL specific asm from dsputil.asm to h264_qpel_*.asm.

6 years agodoc: update the reference for the title
Luca Barbato [Wed, 23 Jan 2013 16:11:42 +0000 (17:11 +0100)]
doc: update the reference for the title

The recent texi2html exports the title as 'fulltitle_no_texi'.

6 years agompegvideo_enc: fix indentation in load_input_picture()
Anton Khirnov [Mon, 7 Jan 2013 06:46:01 +0000 (07:46 +0100)]
mpegvideo_enc: fix indentation in load_input_picture()

6 years agompegvideo_enc: do not modify the input frame.
Anton Khirnov [Mon, 7 Jan 2013 06:07:20 +0000 (07:07 +0100)]
mpegvideo_enc: do not modify the input frame.

6 years agomjpegdec: fix indentation
Anton Khirnov [Sun, 6 Jan 2013 15:50:29 +0000 (16:50 +0100)]
mjpegdec: fix indentation

6 years agorawdec: cosmetics, reformat
Anton Khirnov [Thu, 3 Jan 2013 16:02:38 +0000 (17:02 +0100)]
rawdec: cosmetics, reformat

6 years agomimic: return meaningful error codes.
Anton Khirnov [Wed, 26 Dec 2012 09:35:16 +0000 (10:35 +0100)]
mimic: return meaningful error codes.

6 years agomimic: cosmetics, reformat
Anton Khirnov [Wed, 26 Dec 2012 09:11:12 +0000 (10:11 +0100)]
mimic: cosmetics, reformat

6 years agoiff: drop ff_ prefix from a static function.
Anton Khirnov [Sat, 8 Dec 2012 14:20:46 +0000 (15:20 +0100)]
iff: drop ff_ prefix from a static function.

6 years agopngdec: cosmetics, reformat.
Anton Khirnov [Sat, 8 Dec 2012 11:58:46 +0000 (12:58 +0100)]
pngdec: cosmetics, reformat.

Also remove a commented out line.

6 years agodxa: return meaningful error codes.
Anton Khirnov [Fri, 16 Nov 2012 13:02:08 +0000 (14:02 +0100)]
dxa: return meaningful error codes.

6 years agoeatgq: cosmetics, reformat.
Anton Khirnov [Wed, 21 Nov 2012 18:26:41 +0000 (19:26 +0100)]
eatgq: cosmetics, reformat.

6 years agoeatgq: return meaningful error codes.
Anton Khirnov [Wed, 21 Nov 2012 18:20:21 +0000 (19:20 +0100)]
eatgq: return meaningful error codes.

6 years agoeatgv: cosmetics, reformat
Anton Khirnov [Wed, 21 Nov 2012 13:52:54 +0000 (14:52 +0100)]
eatgv: cosmetics, reformat

6 years agoeatgv: return meaningful error codes.
Anton Khirnov [Wed, 21 Nov 2012 09:26:55 +0000 (10:26 +0100)]
eatgv: return meaningful error codes.

6 years agocyuv: return meaningful error codes.
Anton Khirnov [Tue, 20 Nov 2012 11:10:13 +0000 (12:10 +0100)]
cyuv: return meaningful error codes.

6 years agotxd: return meaningful error codes.
Anton Khirnov [Tue, 20 Nov 2012 06:48:01 +0000 (07:48 +0100)]
txd: return meaningful error codes.

6 years agodnxhdenc: fix invalid reads in dnxhd_mb_var_thread().
Anton Khirnov [Tue, 22 Jan 2013 10:55:54 +0000 (11:55 +0100)]
dnxhdenc: fix invalid reads in dnxhd_mb_var_thread().

Do not assume that frame dimensions are mod16 (or that height is mod32
for interlaced).

CC:libav-stable@libav.org

6 years agox86: h264qpel: Move stray comment to the right spot and clarify it
Diego Biurrun [Thu, 24 Jan 2013 16:01:32 +0000 (17:01 +0100)]
x86: h264qpel: Move stray comment to the right spot and clarify it

6 years agoatrac3: use correct loop variable in add_tonal_components()
Michael Karcher [Fri, 25 Jan 2013 20:03:53 +0000 (15:03 -0500)]
atrac3: use correct loop variable in add_tonal_components()

Signed-off-by: Michael Karcher <ffmpeg@mkarcher.dialup.fu-berlin.de>
Signed-off-by: Justin Ruggles <justin.ruggles@gmail.com>
CC:libav-stable@libav.org

6 years agodoc: document libx264 options and mappings
Luca Barbato [Wed, 23 Jan 2013 07:28:47 +0000 (08:28 +0100)]
doc: document libx264 options and mappings

6 years agolibx264: introduce -x264-params private option
Gavriloaie Eugen-Andrei [Wed, 23 Jan 2013 07:21:55 +0000 (08:21 +0100)]
libx264: introduce -x264-params private option

It is a shortcut to set all the params using x264_param_parse,
makes simpler importing settings from other software using x264.

6 years agodict: add av_dict_parse_string()
Justin Ruggles [Wed, 2 Jan 2013 21:04:23 +0000 (21:04 +0000)]
dict: add av_dict_parse_string()

Can be used to set multiple key/value pairs from a string.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agodoc: support multitable in texi2pod
Luca Barbato [Wed, 23 Jan 2013 10:43:37 +0000 (11:43 +0100)]
doc: support multitable in texi2pod

6 years agoavfilter: allow setpts filter to use wallclock time for calculations
Vladimir Pantelic [Wed, 23 Jan 2013 12:54:08 +0000 (13:54 +0100)]
avfilter: allow setpts filter to use wallclock time for calculations

Signed-off-by: Vladimir Pantelic <vladoman@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agolavu: Add av_strnstr()
Vladimir Pantelic [Thu, 24 Jan 2013 14:09:48 +0000 (14:09 +0000)]
lavu: Add av_strnstr()

This is a length limited version of strstr()

Signed-off-by: Vladimir Pantelic <vladoman@gmail.com>
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agoh264: Allow discarding the cropping information from SPS
Vittorio Giovara [Wed, 23 Jan 2013 11:26:59 +0000 (12:26 +0100)]
h264: Allow discarding the cropping information from SPS

Some 3D systems overload the meaning of the field for other purposes.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
6 years agoarm: Add mathops.h to ARCH_HEADERS list
Diego Biurrun [Mon, 21 Jan 2013 09:16:03 +0000 (10:16 +0100)]
arm: Add mathops.h to ARCH_HEADERS list

It is an arch-specific header not suitable for standalone compilation.

6 years agoavstring: K&R formatting cosmetics
Luca Barbato [Thu, 24 Jan 2013 18:00:57 +0000 (19:00 +0100)]
avstring: K&R formatting cosmetics

Signed-off-by: Diego Biurrun <diego@biurrun.de>
6 years agobuild: Make the H.264 parser select h264qpel
Diego Biurrun [Thu, 24 Jan 2013 16:47:03 +0000 (17:47 +0100)]
build: Make the H.264 parser select h264qpel

It is required for building the shared H.264 code.

6 years agox86: h264qpel: add cpu flag checks for init function
Janne Grunau [Thu, 24 Jan 2013 17:39:10 +0000 (18:39 +0100)]
x86: h264qpel: add cpu flag checks for init function

The code was copied from per cpu extension init function so the checks
for supported extensions was overlooked.

6 years agoh264: copy h264qpel dsp context to slice thread copies
Janne Grunau [Thu, 24 Jan 2013 15:56:07 +0000 (16:56 +0100)]
h264: copy h264qpel dsp context to slice thread copies

6 years agoarm: h264qpel: use neon h264 qpel functions only if supported
Janne Grunau [Thu, 24 Jan 2013 15:45:45 +0000 (16:45 +0100)]
arm: h264qpel: use neon h264 qpel functions only if supported

6 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>
6 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.

6 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.

6 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>
6 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>
6 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>
6 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>
6 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>
6 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>
6 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>
6 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>
6 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.

6 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.

6 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.

6 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.

6 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>
6 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.

6 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.

6 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>