platform/upstream/libav.git
13 years agoh264_mp3toannexb_bsg: don't crash, but warn, if PPS/SPS not found.
Sean McGovern [Fri, 4 Mar 2011 03:22:43 +0000 (22:22 -0500)]
h264_mp3toannexb_bsg: don't crash, but warn, if PPS/SPS not found.

Should an AVC-1 in MP4 stream not contain SPS or PPS NAL units,
this BSF is then unable to allocate an output buffer for the
modified stream. Warn that the resulting stream may be unplayable.

Fix roundup issue #2386.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoAdd Apple HTTP Live Streaming protocol handler
Martin Storsjö [Thu, 22 Jul 2010 07:30:15 +0000 (10:30 +0300)]
Add Apple HTTP Live Streaming protocol handler

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years agoURLProtocol: Add URL_PROTOCOL_FLAG_NESTED_SCHEME
Martin Storsjö [Mon, 28 Feb 2011 13:39:36 +0000 (15:39 +0200)]
URLProtocol: Add URL_PROTOCOL_FLAG_NESTED_SCHEME

If this flag is set, the protocol can handle URLs where the
scheme is a nested scheme such as applehttp+file: - the protocol
can handle any URL where the first segment of the nested scheme
belongs to this protocol.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years agoURLProtocol: Add a flags field
Martin Storsjö [Mon, 28 Feb 2011 13:39:17 +0000 (15:39 +0200)]
URLProtocol: Add a flags field

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years agoyadif: add parens around macro parameters
Mans Rullgard [Thu, 24 Feb 2011 21:25:53 +0000 (21:25 +0000)]
yadif: add parens around macro parameters

This fixes compilation with preprocessors which do not add whitespace
around replaced tokens, resulting in invalid expressions like 1--1.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoac3enc: add num_rematrixing_bands to AC3EncodeContext and use it instead of the hardc...
Justin Ruggles [Fri, 4 Mar 2011 21:41:49 +0000 (16:41 -0500)]
ac3enc: add num_rematrixing_bands to AC3EncodeContext and use it instead of the hardcoded value.

Currently it is always 4, but this change will allow it to be adjusted when
bandwidth-related features are added such as channel coupling, enhanced
channel coupling, and spectral extension.

13 years agoac3: define AC3_MAX_CPL_BANDS and use it in ac3dec.h
Justin Ruggles [Fri, 4 Mar 2011 21:25:17 +0000 (16:25 -0500)]
ac3: define AC3_MAX_CPL_BANDS and use it in ac3dec.h

13 years agoavio: add avio_tell macro as a replacement for url_ftell
Anton Khirnov [Thu, 3 Mar 2011 19:11:45 +0000 (20:11 +0100)]
avio: add avio_tell macro as a replacement for url_ftell

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agolavf: deprecate get_strz() in favor of avio_get_str
Anton Khirnov [Wed, 2 Mar 2011 16:48:45 +0000 (17:48 +0100)]
lavf: deprecate get_strz() in favor of avio_get_str

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoavio: add avio_get_str()
Reimar Döffinger [Thu, 3 Mar 2011 12:51:55 +0000 (13:51 +0100)]
avio: add avio_get_str()

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoavio: fix fourcc if any character is >=0x80.
Ronald S. Bultje [Fri, 4 Mar 2011 13:33:49 +0000 (08:33 -0500)]
avio: fix fourcc if any character is >=0x80.

Fixes issue 2638.

13 years agovp3-mt: fix deadlock when first frame is not a keyframe.
Ronald S. Bultje [Wed, 2 Mar 2011 17:15:07 +0000 (12:15 -0500)]
vp3-mt: fix deadlock when first frame is not a keyframe.

13 years agothreads: allow thread count of zero
Mans Rullgard [Wed, 2 Mar 2011 13:08:15 +0000 (13:08 +0000)]
threads: allow thread count of zero

This moves setting the thread count to a minimum of 1 to
frame_thread_init(), allowing a value of zero to propagate
through to the codec if frame threading is not used.  This
makes auto-threads work in libx264.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agovc1: fix decoding when end sequence is present
Baptiste Coudurier [Wed, 2 Mar 2011 11:17:33 +0000 (11:17 +0000)]
vc1: fix decoding when end sequence is present

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoffmpeg: Use av_pkt_dump_log2
Martin Storsjö [Thu, 24 Feb 2011 08:08:07 +0000 (10:08 +0200)]
ffmpeg: Use av_pkt_dump_log2

This makes dumped packet timestamps proper for streams with
timebases other than AV_TIME_BASE.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years agolibavformat: Add av_pkt_dump{, _log}2, taking an AVStream parameter
Martin Storsjö [Thu, 24 Feb 2011 08:08:06 +0000 (10:08 +0200)]
libavformat: Add av_pkt_dump{, _log}2, taking an AVStream parameter

This removes a fixme issue, by allowing the av_pkt_dump functions
to use the correct time base.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years agoaviobuf: Write new data at s->buf_end in fill_buffer
Martin Storsjö [Sat, 26 Feb 2011 23:02:32 +0000 (01:02 +0200)]
aviobuf: Write new data at s->buf_end in fill_buffer

In most cases, s->buf_ptr will be equal to s->buf_end when
fill_buffer is called, but this may not always be the case, if
we're seeking forward by reading (permitted by the short seek
threshold).

If fill_buffer is writing to s->buf_ptr instead of s->buf_end (when
they aren't equal and s->buf_ptr is ahead of s->buffer), the data
between s->buf_ptr and s->buf_end is overwritten, leading to
inconsistent buffer content. This could return incorrect data if
later seeking back into the area before the current s->buf_ptr.

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years agomovenc: use correct tag for dvcpro hd
Baptiste Coudurier [Tue, 1 Mar 2011 23:54:29 +0000 (23:54 +0000)]
movenc: use correct tag for dvcpro hd

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agodnxhd: allow encoding with Avid Nitris compatibility.
Baptiste Coudurier [Tue, 1 Mar 2011 23:50:25 +0000 (23:50 +0000)]
dnxhd: allow encoding with Avid Nitris compatibility.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agomovenc: fix tkhd height for imx
Baptiste Coudurier [Tue, 1 Mar 2011 23:36:48 +0000 (23:36 +0000)]
movenc: fix tkhd height for imx

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoavio: deprecate url_fskip
Anton Khirnov [Mon, 28 Feb 2011 13:57:56 +0000 (14:57 +0100)]
avio: deprecate url_fskip

avio_seek should be used instead

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agolavf: replace all uses of url_fskip with avio_seek
Anton Khirnov [Mon, 28 Feb 2011 13:57:55 +0000 (14:57 +0100)]
lavf: replace all uses of url_fskip with avio_seek

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoavio: avio_ prefix for url_fseek
Anton Khirnov [Mon, 28 Feb 2011 13:57:54 +0000 (14:57 +0100)]
avio: avio_ prefix for url_fseek

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agohuffyuv: Add multithreading support
Alexander Strange [Thu, 17 Feb 2011 08:44:25 +0000 (03:44 -0500)]
huffyuv: Add multithreading support

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agopthreads: Fix bug introduced with thread_safe_callbacks
Alexander Strange [Thu, 17 Feb 2011 08:25:00 +0000 (03:25 -0500)]
pthreads: Fix bug introduced with thread_safe_callbacks

For intra codecs, ff_thread_finish_setup() is called before decoding starts
automatically. However, get_buffer can only be used before it's called, so
adding this requirement broke frame threading for them. Fixed by moving the
call until after get_buffer is finished.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoUse --sysroot flag for clang
Mans Rullgard [Sun, 27 Feb 2011 23:34:38 +0000 (23:34 +0000)]
Use --sysroot flag for clang

Although not documented, clang does support the --sysroot flag, and it
does the right thing.  Use this flag intead of -isysroot which only
applies to header file searches, not the linker.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoARM: VP8: fix build on systems with global symbol prefix
Mans Rullgard [Sat, 26 Feb 2011 18:05:53 +0000 (18:05 +0000)]
ARM: VP8: fix build on systems with global symbol prefix

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoARM: fix vp8 neon with pic enabled
Mans Rullgard [Sat, 26 Feb 2011 18:04:53 +0000 (18:04 +0000)]
ARM: fix vp8 neon with pic enabled

The assembler emits literal pools too far from the load instructions,
so we must do it explicitly at a suitable location.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoconfigure: document FATE_SAMPLES env var in --help text
Reimar Döffinger [Sat, 26 Feb 2011 11:50:35 +0000 (11:50 +0000)]
configure: document FATE_SAMPLES env var in --help text

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agofate: get samples location from env var if not explicitly set
Mans Rullgard [Sat, 26 Feb 2011 11:51:18 +0000 (11:51 +0000)]
fate: get samples location from env var if not explicitly set

Use the FATE_SAMPLES environment variable if samples location
is not set with the --samples configure option or on the make
command line.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agomovenc: remove uses of deprecated API.
Ronald S. Bultje [Fri, 25 Feb 2011 22:41:00 +0000 (17:41 -0500)]
movenc: remove uses of deprecated API.

Replace put_tag() with ffio_wfourcc() and ByteIOContext with AVIOContext.

13 years agostore pasp atom for all types of quicktime movie
Maksym Veremeyenko [Tue, 15 Feb 2011 10:44:08 +0000 (12:44 +0200)]
store pasp atom for all types of quicktime movie

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years agoreindent after tapt patch
Maksym Veremeyenko [Fri, 25 Feb 2011 15:42:56 +0000 (17:42 +0200)]
reindent after tapt patch

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years agouse tapt atom for sample aspect ratio
Maksym Veremeyenko [Fri, 25 Feb 2011 15:41:55 +0000 (17:41 +0200)]
use tapt atom for sample aspect ratio

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
13 years agobink: prevent overflows within binkidct by using int-sized intermediate array
Peter Ross [Sun, 13 Feb 2011 03:37:20 +0000 (14:37 +1100)]
bink: prevent overflows within binkidct by using int-sized intermediate array

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agobink: decode audio track identifiers into AVStream.id
Peter Ross [Sun, 20 Feb 2011 02:15:38 +0000 (13:15 +1100)]
bink: decode audio track identifiers into AVStream.id

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoBink version 'b' audio decoder
Peter Ross [Sun, 20 Feb 2011 01:25:05 +0000 (12:25 +1100)]
Bink version 'b' audio decoder

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agobinkaudio: simplify frame_len_bits and frame_len calculation
Peter Ross [Sun, 20 Feb 2011 01:24:48 +0000 (12:24 +1100)]
binkaudio: simplify frame_len_bits and frame_len calculation

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agobinkaudio: remove unnecessary loop
Peter Ross [Sun, 20 Feb 2011 01:24:38 +0000 (12:24 +1100)]
binkaudio: remove unnecessary loop

decode_init sets bands[0] == 2, so this loop always sets the band table
index (k) to zero.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agobinkaudio: perform band table scaling in decode_init
Peter Ross [Sun, 20 Feb 2011 01:24:25 +0000 (12:24 +1100)]
binkaudio: perform band table scaling in decode_init

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agobink: set audio stream codec_tag such that binkaudio decoder can identify bitstream...
Peter Ross [Sun, 20 Feb 2011 01:24:09 +0000 (12:24 +1100)]
bink: set audio stream codec_tag such that binkaudio decoder can identify bitstream version

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agobink: use LOCAL_ALIGNED for aligned stack data
Mans Rullgard [Fri, 25 Feb 2011 14:52:23 +0000 (14:52 +0000)]
bink: use LOCAL_ALIGNED for aligned stack data

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agodxva2: define required feature selection macros
Kyle [Sat, 19 Feb 2011 00:42:11 +0000 (00:42 +0000)]
dxva2: define required feature selection macros

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoOS/2: lxlite should use stdout
Dave Yeo [Fri, 25 Feb 2011 04:19:32 +0000 (04:19 +0000)]
OS/2: lxlite should use stdout

This causes lxlite to use stdout instead of vioXXX
functions. This improves fate and build logs readability.
Affects OS/2 only.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoavio: deprecate put_tag
Anton Khirnov [Thu, 24 Feb 2011 06:36:05 +0000 (07:36 +0100)]
avio: deprecate put_tag

it's not used internally anymore and shouldn't be public.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agolavf: replace remaining uses of put_tag with avio_write
Anton Khirnov [Thu, 24 Feb 2011 06:36:04 +0000 (07:36 +0100)]
lavf: replace remaining uses of put_tag with avio_write

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoavienc: replace &tag[0] with tag.
Anton Khirnov [Thu, 24 Feb 2011 06:36:03 +0000 (07:36 +0100)]
avienc: replace &tag[0] with tag.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agolavf: use a new ffio_wfourcc macro instead of put_tag() where possible
Anton Khirnov [Thu, 24 Feb 2011 06:36:02 +0000 (07:36 +0100)]
lavf: use a new ffio_wfourcc macro instead of put_tag() where possible

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agodca: use EXT_AUDIO_ID field to determine core extensions
Anssi Hannula [Fri, 18 Feb 2011 19:49:44 +0000 (19:49 +0000)]
dca: use EXT_AUDIO_ID field to determine core extensions

This avoids the core substream extensions scan when the EXT_AUDIO_ID
field indicates no extensions or only unsupported extensions. The scan
is done only if the value of EXT_AUDIO_ID is unknown or indicates a
present XCh extension which we can decode.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agovmdaudio: output 8-bit audio as AV_SAMPLE_FMT_U8.
Justin Ruggles [Wed, 23 Feb 2011 18:11:13 +0000 (13:11 -0500)]
vmdaudio: output 8-bit audio as AV_SAMPLE_FMT_U8.

There is no need to expand to 16-bits. Just use memcpy() to copy the raw data.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: remove unnecessary fields from VmdAudioContext and use the corresponding...
Justin Ruggles [Wed, 23 Feb 2011 18:11:12 +0000 (13:11 -0500)]
vmdaudio: remove unnecessary fields from VmdAudioContext and use the corresponding AVCodecContext fields instead.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: add out_bps to VmdAudioContext and use it to replace hard-coded sample...
Justin Ruggles [Wed, 23 Feb 2011 18:11:11 +0000 (13:11 -0500)]
vmdaudio: add out_bps to VmdAudioContext and use it to replace hard-coded sample size.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: simplify vmdaudio_decode_frame() by handling block_type first, then making...
Justin Ruggles [Wed, 23 Feb 2011 18:11:10 +0000 (13:11 -0500)]
vmdaudio: simplify vmdaudio_decode_frame() by handling block_type first, then making a single call to vmdaudio_loadsound().

This also adds output buffer size checks for AUDIO and SILENCE block types.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agocosmetics: reindent after previous commit
Justin Ruggles [Wed, 23 Feb 2011 18:11:09 +0000 (13:11 -0500)]
cosmetics: reindent after previous commit

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: move all silence chunk handling to vmdaudio_loadsound().
Justin Ruggles [Wed, 23 Feb 2011 18:11:08 +0000 (13:11 -0500)]
vmdaudio: move all silence chunk handling to vmdaudio_loadsound().

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agocosmetics: remove debugging cruft
Justin Ruggles [Wed, 23 Feb 2011 18:11:01 +0000 (13:11 -0500)]
cosmetics: remove debugging cruft

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agocosmetics: reindent after previous commit
Justin Ruggles [Wed, 23 Feb 2011 18:11:00 +0000 (13:11 -0500)]
cosmetics: reindent after previous commit

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: simplify buffer pointer and header size handling.
Justin Ruggles [Wed, 23 Feb 2011 18:11:07 +0000 (13:11 -0500)]
vmdaudio: simplify buffer pointer and header size handling.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: set *data_size to zero when skipping small packets and add a warning log...
Justin Ruggles [Wed, 23 Feb 2011 18:11:06 +0000 (13:11 -0500)]
vmdaudio: set *data_size to zero when skipping small packets and add a warning log message.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: validate block type
Justin Ruggles [Wed, 23 Feb 2011 18:11:05 +0000 (13:11 -0500)]
vmdaudio: validate block type

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: use macros and a local variable for block type.
Justin Ruggles [Wed, 23 Feb 2011 18:11:04 +0000 (13:11 -0500)]
vmdaudio: use macros and a local variable for block type.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: correct the silent chunk count in the first block.
Justin Ruggles [Wed, 23 Feb 2011 18:11:03 +0000 (13:11 -0500)]
vmdaudio: correct the silent chunk count in the first block.

This fixes A/V sync with several samples, notably:
http://samples.mplayerhq.hu/game-formats/sierra-vmd/swat_*.vmd

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: output audio samples for standalone silent blocks.
Justin Ruggles [Wed, 23 Feb 2011 18:11:02 +0000 (13:11 -0500)]
vmdaudio: output audio samples for standalone silent blocks.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: remove duplicated code by merging mono and stereo decoding.
Justin Ruggles [Wed, 23 Feb 2011 18:10:59 +0000 (13:10 -0500)]
vmdaudio: remove duplicated code by merging mono and stereo decoding.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agovmdaudio: fix raw_block_size calculation.
Justin Ruggles [Wed, 23 Feb 2011 18:10:58 +0000 (13:10 -0500)]
vmdaudio: fix raw_block_size calculation.

The size should depend on the output sample size, not the internal bit depth.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoavienc: fix AVI stream index for files with >10 streams
longstone [Wed, 23 Feb 2011 15:43:21 +0000 (10:43 -0500)]
avienc: fix AVI stream index for files with >10 streams

Fixes issue 2563.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoavio: rename url_fopen/fclose -> avio_open/close.
Anton Khirnov [Mon, 21 Feb 2011 21:45:20 +0000 (22:45 +0100)]
avio: rename url_fopen/fclose -> avio_open/close.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agolibavformat: Remove FF_NETERRNO()
Martin Storsjö [Sat, 19 Feb 2011 18:14:11 +0000 (19:14 +0100)]
libavformat: Remove FF_NETERRNO()

Map EAGAIN and EINTR from ff_neterrno to the normal AVERROR()
error codes. Provide fallback definitions of other errno.h network
errors, mapping them to the corresponding winsock errors.

This eases catching these error codes in common code, without having
to distinguish between FF_NETERRNO(EAGAIN) and AVERROR(EAGAIN).

This fixes roundup issue 2614, unbreaking blocking network IO on
windows.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoAdd more AVC Intra FOURCCs
Benjamin Larsson [Tue, 8 Feb 2011 10:05:05 +0000 (11:05 +0100)]
Add more AVC Intra FOURCCs

Also change the comments a bit since the FOURCCs aren't specific to Flip4Mac
and different ones are used for 720 versus 1080 lines.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoaacdec: Reduce the size of buf_mdct.
Young Han Lee [Wed, 16 Feb 2011 01:04:07 +0000 (10:04 +0900)]
aacdec: Reduce the size of buf_mdct.

It was doubled in size for the LTP implementation. This brings it back
down to its original size.

13 years agoRemove old VCSs from version.sh
Alex Converse [Mon, 21 Feb 2011 08:01:09 +0000 (00:01 -0800)]
Remove old VCSs from version.sh

13 years agompegtsenc: use correct PES stream_id for AAC
Tony Strauss [Mon, 21 Feb 2011 23:46:54 +0000 (23:46 +0000)]
mpegtsenc: use correct PES stream_id for AAC

This adds the AAC codec to the list of audio codecs that results
in a PES stream_id of 0xc0 (audio stream).

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agospdifenc.c: fix compile because of missing include avio_internal.h.
Ronald S. Bultje [Mon, 21 Feb 2011 20:46:45 +0000 (15:46 -0500)]
spdifenc.c: fix compile because of missing include avio_internal.h.

13 years agovp8: ppc: fix invalid reads in altivec epel mc
Mans Rullgard [Mon, 21 Feb 2011 15:47:27 +0000 (15:47 +0000)]
vp8: ppc: fix invalid reads in altivec epel mc

The 4-tap filters should only access one row/column before the
reference block.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoppc: fix vc1 inverse transform, unbreak build
Mans Rullgard [Mon, 21 Feb 2011 19:15:38 +0000 (19:15 +0000)]
ppc: fix vc1 inverse transform, unbreak build

GCC 4.3 and later are more particular about signedness matching
in vector operations.  The operations under if(rangered) were
missing assignments and thus had no effect.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoavio: make put_nbyte internal.
Anton Khirnov [Mon, 21 Feb 2011 19:02:20 +0000 (20:02 +0100)]
avio: make put_nbyte internal.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoavio: avio: avio_ prefixes for put_* functions
Anton Khirnov [Mon, 21 Feb 2011 18:28:17 +0000 (19:28 +0100)]
avio: avio: avio_ prefixes for put_* functions

In the name of consistency:
put_byte           -> avio_w8
put_<type>         -> avio_w<type>
put_buffer         -> avio_write

put_nbyte will be made private
put_tag will be merged with avio_put_str

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agotarga: prevent integer overflow in bufsize check.
Ronald S. Bultje [Mon, 21 Feb 2011 18:44:37 +0000 (13:44 -0500)]
targa: prevent integer overflow in bufsize check.

13 years agoavio: make get_partial_buffer internal.
Anton Khirnov [Mon, 21 Feb 2011 18:28:16 +0000 (19:28 +0100)]
avio: make get_partial_buffer internal.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoavio: avio_ prefixes for get_* functions
Anton Khirnov [Mon, 21 Feb 2011 15:43:01 +0000 (16:43 +0100)]
avio: avio_ prefixes for get_* functions

In the name of consistency:
get_byte           -> avio_r8
get_<type>         -> avio_r<type>
get_buffer         -> avio_read

get_partial_buffer will be made private later

get_strz is left out becase I want to change it later to return
something useful.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoVC1: merge idct8x8, coeff adjustments and put_pixels.
Ronald S. Bultje [Mon, 21 Feb 2011 14:07:13 +0000 (09:07 -0500)]
VC1: merge idct8x8, coeff adjustments and put_pixels.

Merging these functions allows merging some loops, which makes the
results (particularly after SIMD optimizations) much faster.

13 years agoavio: rename av_alloc_put_byte -> avio_alloc_context for consistency
Anton Khirnov [Sun, 20 Feb 2011 14:03:29 +0000 (15:03 +0100)]
avio: rename av_alloc_put_byte -> avio_alloc_context for consistency

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agodsputil: make {add/put/put_signed}_pixels_clamped() non-static.
Ronald S. Bultje [Sun, 20 Feb 2011 22:31:33 +0000 (17:31 -0500)]
dsputil: make {add/put/put_signed}_pixels_clamped() non-static.

13 years agoVC1: inline vc1_put_block() in vc1_decode_i_blocks().
Ronald S. Bultje [Sun, 20 Feb 2011 15:46:55 +0000 (10:46 -0500)]
VC1: inline vc1_put_block() in vc1_decode_i_blocks().

Advantage is that it allows us to combine several loops into a single
one, and these can eventually be merged into the IDCT itself. Also, it
allows us to remove vc1_put_block(), and makes CODEC_FLAG_GRAY faster.

13 years agolavfi: put color source in a dedicated file
Stefano Sabatini [Sun, 20 Feb 2011 22:42:24 +0000 (22:42 +0000)]
lavfi: put color source in a dedicated file

Move the color source code from vf_pad.c to vsrc_color.c.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agolavfi: add drawutils
Stefano Sabatini [Sun, 20 Feb 2011 22:42:17 +0000 (22:42 +0000)]
lavfi: add drawutils

Add drawutils.h and drawutils.c, and use them in the pad filter.
The new functions are going to be shared by other filters.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoMakefile: include deps from tools directory
Mans Rullgard [Sun, 20 Feb 2011 17:16:42 +0000 (17:16 +0000)]
Makefile: include deps from tools directory

This ensures the tools are rebuilt when necessary.  Specifically,
lavfi-showfiltfmts was sometimes not rebuilt causing spurious test
failures.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoamrnb: use correct size when copying lsf_r array
Mans Rullgard [Sun, 20 Feb 2011 16:47:19 +0000 (16:47 +0000)]
amrnb: use correct size when copying lsf_r array

lsf_r is an array of int16_t, not float.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agox86: use raw opcode for xgetbv instruction
Mans Rullgard [Sun, 20 Feb 2011 14:38:32 +0000 (14:38 +0000)]
x86: use raw opcode for xgetbv instruction

This allows the CPU detection to work with assemblers not supporting
the xgetbv mnemonic.  These include clang and some BSD versions.

All AVX code will be written for yasm, where the main assembler
is not involved.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoUpdate version and APIchanges.
Ronald S. Bultje [Sun, 20 Feb 2011 13:46:22 +0000 (08:46 -0500)]
Update version and APIchanges.

Update libavformat/version.h and doc/APIChanges after renaming
init_put_byte() and ByteIOContext to ffio_init_context() (private)
and AVIOContext, (public), and deprecating the originals.

13 years agoavio: move init_put_byte() to a new private header and rename it
Anton Khirnov [Sun, 20 Feb 2011 10:04:13 +0000 (11:04 +0100)]
avio: move init_put_byte() to a new private header and rename it

init_put_byte should never be used outside of lavf, since
sizeof(AVIOContext) isn't part of public ABI.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoavio: rename ByteIOContext to AVIOContext.
Anton Khirnov [Sun, 20 Feb 2011 10:04:12 +0000 (11:04 +0100)]
avio: rename ByteIOContext to AVIOContext.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agoVC1: don't use vc1_put_block() in vc1_decode_i_blocks_adv().
Ronald S. Bultje [Sun, 20 Feb 2011 00:07:29 +0000 (19:07 -0500)]
VC1: don't use vc1_put_block() in vc1_decode_i_blocks_adv().

Advanced profile never uses "range reduction", so vc1_put_block() quite
literally just calls put_pixels_clamped() from vc1_decode_i_blocks_adv().
By inlining the function, we can prevent calling IDCT8x8 if
CODEC_FLAG_GRAY is set, and we don't have to scale the coeffs in the
[0,256] range, but can instead use put_signed_pixels_clamped().

13 years agox86: check for AVX support
Mans Rullgard [Wed, 16 Feb 2011 02:39:42 +0000 (02:39 +0000)]
x86: check for AVX support

This adds configure and runtime checks for AVX support on x86 CPUs.

Signed-off-by: Mans Rullgard <mans@mansr.com>
13 years agoMMS: also discover streams in extended stream properties object
Marton Balint [Sat, 19 Feb 2011 16:33:15 +0000 (17:33 +0100)]
MMS: also discover streams in extended stream properties object

Allows playback of nonprimary audio streams in multiple bitrate sources,
such as mmsh://wmscr1.dr.dk/e02ch03m

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
13 years agodsputil_mmx.c: remove ff_vector128.
Ronald S. Bultje [Sat, 19 Feb 2011 13:50:37 +0000 (08:50 -0500)]
dsputil_mmx.c: remove ff_vector128.

Remove ff_vector128, it is identical to ff_pb_80.

13 years agoFix invalid reads in VC1 decoder
Reimar Döffinger [Sat, 19 Feb 2011 10:33:01 +0000 (11:33 +0100)]
Fix invalid reads in VC1 decoder

Patch discussed and taken from https://roundup.ffmpeg.org/issue2584

13 years agoFix VP3 edge emulation
David Conrad [Sat, 19 Feb 2011 09:41:51 +0000 (01:41 -0800)]
Fix VP3 edge emulation

With negative stride, the start of the edge_emu buffer should be pointing to
the last line, not the end of the buffer.
With positive stride, pointing to the end of the buffer was completely wrong.

13 years agoaacdec: dsputilize the scalar multiplication in intensity stereo
Young Han Lee [Sat, 19 Feb 2011 00:32:24 +0000 (09:32 +0900)]
aacdec: dsputilize the scalar multiplication in intensity stereo

13 years agoVP3: fix decoding of videos with stride > 2048
Jason Garrett-Glaser [Fri, 18 Feb 2011 04:24:05 +0000 (20:24 -0800)]
VP3: fix decoding of videos with stride > 2048

Also remove qscale_table code; this didn't make sense anyways as VP3 doesn't
use an MPEG-like quantizer scale.