Commit Graph

13487 Commits

Author SHA1 Message Date
Oskar Arvidsson
42239ced65 Add pixel formats for 9- and 10-bit yuv420p.
Also add support for these formats in libswscale.

Needed for high bit depth h264 decoding.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-10 07:24:19 -04:00
Oskar Arvidsson
e39e3abad4 Choose h264 chroma dc dequant function dynamically.
Needed for high bit depth h264 decoding.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-05-10 07:24:17 -04:00
Ronald S. Bultje
dd561441b1 h264: DSP'ize MBAFF loopfilter. 2011-05-10 07:24:08 -04:00
Anton Khirnov
188dea1dbf lavc: move some flac-specific options to its private context. 2011-05-10 07:42:33 +02:00
Mans Rullgard
a88ef93b4a mpegaudiodec: group #includes more sanely
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-09 22:27:16 +01:00
Mans Rullgard
0d849074a4 mpegaudio: remove #if 0 blocks
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-09 22:22:12 +01:00
Mans Rullgard
6bb6fb05ba mpegaudio: remove CONFIG_MPEGAUDIO_HP option
The low quality mode is off by default and never tested.  The high
quality mode is also plenty fast enough.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-09 17:30:12 +01:00
Mans Rullgard
3a2e80ecbc mpegaudio: remove CONFIG_AUDIO_NONSHORT
This fake option cannot be enabled by normal means, and the
floating-point decoder should provide the higher quality this
option presumably was intended for.

Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-05-09 10:12:47 +01:00
Nathan Caldwell
b58e298572 psymodel: Remove wrapper functions.
Instead use the function pointers directly.
2011-05-08 12:43:04 -07:00
Nathan Caldwell
5b29af624f aacenc: Replace loop counters in aac_encode_frame() with more descriptive 'ch' and 'w'. 2011-05-08 12:42:34 -07:00
Alex Converse
869303bebd wmavoice: Use proper size in memeset().
sizeof(array_functrion_argument) gives the size of the pointer type not
the size of the array to which it points.
2011-05-05 21:25:48 -07:00
Diego Biurrun
61165a1bba Fix standalone compilation of WTV demuxer. 2011-05-04 21:12:40 +02:00
Diego Biurrun
091018e0dd Fix standalone compilation of MXPEG decoder. 2011-05-04 21:12:40 +02:00
Diego Biurrun
35e376b0d2 flashsv: K&R cosmetics 2011-05-04 21:12:39 +02:00
Ronald S. Bultje
7d2e03afc8 vc1: make overlap filter for I-frames bit-exact. 2011-05-04 07:40:53 -04:00
Ronald S. Bultje
5c9f147e05 vc1dec: use s->start/end_mb_y instead of passing them as function args. 2011-05-04 07:40:02 -04:00
Ronald S. Bultje
18b6a69ce9 Revert "VC1: merge idct8x8, coeff adjustments and put_pixels."
This reverts commit f8bed30d8b. The reason
for this is that the overlap filter, which runs after IDCT, should run
on unclamped values, and thus IDCT and put_pixels() cannot be merged if
we want to attempt to be bitexact.
2011-05-04 07:40:01 -04:00
Alex Converse
1a5e4fd8c5 Replace strncpy() with av_strlcpy(). 2011-05-03 21:20:13 -07:00
Alex Converse
aab6374bbe indeo3: Eliminate use of long. 2011-05-03 21:20:05 -07:00
Alex Converse
47bc52f821 get_bits: make cache unsigned to eliminate undefined signed overflow. 2011-05-03 21:14:39 -07:00
Ronald S. Bultje
d969e93a72 mpegvideo: reindent. 2011-05-03 22:35:19 -04:00
Ronald S. Bultje
fb22c23715 mpegvideo: don't av_malloc(0). 2011-05-03 22:29:00 -04:00
Ronald S. Bultje
4773d90421 vp8: frame-multithreading.
Tested on a Mac Pro, 2 CPUs, 2 cores each, OSX 10.6.6:

time ./ffmpeg -v 0 -vsync 0 -threads [1234] -i \
  ~/Downloads/sintel_trailer_1080p_vp8_vorbis.webm \
  -f null -vcodec rawvideo -an -
1: 0m14.630s (89.9 fps)
2: 0m8.056s (163.2 fps)
3: 0m5.882s (223.6 fps)
4: 0m4.952s (265.6 fps)

time ./ffmpeg -v 0 -vsync 0 -threads [1234] -i \
  ~/Downloads/Elephants_Dream-720p-Stereo.webm \
  -f null -vcodec rawvideo -an -
1: 1m12.962s (215.1 fps)
2: 0m44.682s (351.2 fps)
3: 0m31.183s (503.2 fps)
4: 0m25.284s (620.6 fps)

Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-05-02 17:03:31 +02:00
Stefano Sabatini
975a1447f7 Replace deprecated FF_*_TYPE symbols with AV_PICTURE_TYPE_*.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-02 12:18:44 +02:00
Stefano Sabatini
6209669de4 Replace deprecated av_get_pict_type_char() with av_get_picture_type_char().
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-05-02 11:24:45 +02:00
Kostya Shishkov
b178cd76b2 dpx: Do not use DPX encoder for decoding.
10l to the one who hasn't checked this.
2011-05-02 11:04:20 +02:00
Diego Biurrun
ad1862d64a ALPHA: Replace sized int_fast integer types with plain int/unsigned.
int/unsigned is the natural memory access type for CPUs, using sized types
for temporary variables, counters and similar just increases code size and
can possibly cause a slowdown.
2011-05-01 20:50:12 +02:00
Peter Ross
e27ce0eea3 DPX image encoder 2011-05-01 19:35:55 +02:00
Peter Ross
406629150c DPX decoder: read sample aspect ratio
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-05-01 19:35:55 +02:00
Reimar Döffinger
3777ea13fb DPX decoder: add buffer size checks. 2011-05-01 19:35:55 +02:00
Justin Ruggles
63b1866ae1 ac3enc: clip large coefficient values and negative exponents rather than using
av_assert2().
2011-05-01 13:32:04 -04:00
Justin Ruggles
177fed4e9b ac3enc: do not store a bandwidth code for each channel.
Although AC-3 allows it, it's not very useful. The encoder uses the same code
for all full-bandwidth channels.
2011-05-01 13:32:04 -04:00
Justin Ruggles
a1d0f511fc ac3enc: remove bandwidth reduction as fallback for bit allocation failure.
It was only needed at low bitrates, which now already use a low bandwidth, so
the bandwidth reduction is no longer needed.
2011-05-01 13:32:04 -04:00
Justin Ruggles
ba6bce5140 ac3enc: merge compute_exp_strategy_ch() into compute_exp_strategy() 2011-05-01 13:32:04 -04:00
Justin Ruggles
4142487d1c ac3enc: return error if frame+exponent bits are too large instead of using
av_assert2().

This can occur in some very rare cases with low bitrates.
2011-05-01 13:32:03 -04:00
Justin Ruggles
987fe2dc55 ac3enc: differentiate between current block and reference block in bit_alloc() 2011-05-01 13:32:03 -04:00
Justin Ruggles
6b2636bba6 ac3enc: simplify exponent_init() by calculating exponent_group_tab[] based
on exponent group sizes.
2011-05-01 13:32:03 -04:00
Justin Ruggles
e0b33d479c ac3enc: simplify stereo rematrixing decision options 2011-05-01 13:32:03 -04:00
Michael Niedermayer
7089265756 AMV: disable DR1 and don't override EMU_EDGE
This works around a possibly exploitable crash.
Appearently, vlc can be exploited with a malicous file. This should get
reverted as soon as a proper fix is found.

Reported-at: Thu, 21 Apr 2011 14:38:25 +0000
Reported-by: Dominic Chell <Dominic.Chell@ngssecure.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit 89f903b3d5)
(cherry picked from commit 9b919571e5)
2011-04-29 22:46:13 +02:00
Diego Biurrun
cf3ac54339 vorbis: Replace sized int_fast integer types with plain int/unsigned.
int/unsigned is the natural memory access type for CPUs, using sized types
for temporary variables, counters and similar just increases code size and
can possibly cause a slowdown.
2011-04-29 20:28:40 +02:00
Diego Biurrun
a734fa575f Remove disabled non-optimized code variants. 2011-04-29 20:01:13 +02:00
Diego Biurrun
2e15305b70 Remove some disabled printf debug cruft. 2011-04-29 20:00:53 +02:00
Diego Biurrun
09cbf60f8e Replace more disabled printf() calls by av_dlog(). 2011-04-29 20:00:41 +02:00
Diego Biurrun
045dd4b928 Replace some commented-out debug printf() / av_log() messages with av_dlog(). 2011-04-29 17:27:01 +02:00
Diego Biurrun
d1be646e90 vorbisdec: Replace some sizeof(type) by sizeof(*variable). 2011-04-29 15:37:06 +02:00
Stefano Sabatini
62d33dbc17 mpeg12: terminate mpeg2_video_profiles arrays
Make av_get_profile_name() return NULL if no profile is detected.

Fix trac issue #130, fix crash reading file tek3.m2v.
(cherry picked from commit e5d80c7b2d)

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-28 11:07:31 +02:00
Peter Ross
87e45ae13d rawvideo codec: support PIX_FMT_BGR48LE and PIX_FMT_BGR48BE
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-28 07:25:28 +02:00
Diego Biurrun
b239526873 vorbisdec: Rename silly "class_" variable to plain "class". 2011-04-27 19:54:55 +02:00
Diego Biurrun
81afa5a274 simple_idct_alpha: Drop some useless casts. 2011-04-27 19:52:48 +02:00
Diego Biurrun
3fd3632ffe Simplify av_log_missing_feature().
Do not print the results of the conditional call to av_log_ask_for_sample()
into the same line as the main output, separate the already long text.
2011-04-27 19:48:58 +02:00
Justin Ruggles
8745e9c458 ac3enc: remove check for mismatching channels and channel_layout 2011-04-27 12:57:43 -04:00
Justin Ruggles
688b09fa59 If AVCodecContext.channels is 0 and AVCodecContext.channel_layout is
non-zero, set channels based on channel_layout.

This allows the user to set only channel_layout and not channels.
2011-04-27 12:57:43 -04:00
Justin Ruggles
168f9e8c40 If AVCodecContext.channel_layout and AVCodecContext.channels are both
non-zero, check to make sure they do not contradict eachother.
2011-04-27 12:57:43 -04:00
Justin Ruggles
3dfc3e70c0 cosmetics: indentation 2011-04-27 12:57:43 -04:00
Justin Ruggles
8b00ab0113 Check AVCodec.supported_samplerates and AVCodec.channel_layouts in
avcodec_open().

If the encoder has a channel_layouts list and AVCodecContext.channel_layout
is 0, then only print a warning and let the encoder decide how to handle it.
2011-04-27 12:57:42 -04:00
Alex Converse
767848d761 aacdec: remove sf_scale and sf_offset.
Instead, scalefactors are adjusted by the offset amount, removing the need
for sf_scale, and the MDCT scales are adjusted to compensate for the higher
scalefactors. Floating-point output will be handled by modifying the MDCT
scales.
2011-04-27 12:39:37 -04:00
Justin Ruggles
6271794041 aacdec: use a scale of 2 in the LTP MDCT rather than doubling the coefficient
table values from the spec.
2011-04-27 12:39:37 -04:00
Alex Converse
d70fa4c423 Define POW_SF2_ZERO in aac.h and use for ff_aac_pow2sf_tabp[] offsets instead
of hardcoding 200 everywhere.
2011-04-27 12:39:37 -04:00
Alex Converse
e4744b59aa Large intensity stereo and PNS indices are legal. Clip them instead of
erroring out. A magnitude of 100 corresponds to 2^25 so the will most
likely result in clipped output anyway.

None of the conformance streams fall in the range that need to be clipped.
2011-04-27 12:39:37 -04:00
Stefano Sabatini
f4e043ff63 qpeg: use reget_buffer() in decode_frame()
Decoder relies on previous frame data, so use reget_buffer().

This also set frame->reference to 3, as the frame will be requested
unmodified later so it shouldn't be modified by the application.

Fix playback of file Clock.avi.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-27 07:44:40 -07:00
Stefano Sabatini
4f0b80599a ultimotion: use reget_buffer() in ulti_decode_frame()
Decoder relies on previous frame data, so use reget_buffer().

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-27 07:42:42 -07:00
Stefano Sabatini
4f2954e232 smacker: remove unnecessary call to avctx->release_buffer in decode_frame()
The release_buffer was cleaning the provided frame, thus causing the
successive call to avctx->reget_buffer() to allocate a new frame.  In
case the returned frame was not the same one previously returned but a
new one with different data, it resulted in artifacts.

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-27 07:41:59 -07:00
Ronald S. Bultje
5eef4afb9a avparser: don't av_malloc(0).
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-26 22:07:17 -07:00
Justin Ruggles
79ee8977c2 ac3enc: correct the flipped sign in the ac3_fixed encoder 2011-04-26 17:19:37 -04:00
Diego Biurrun
e6ff064845 Eliminate pointless '#if 1' statements without matching '#else'. 2011-04-26 20:18:27 +02:00
Vitor Sessak
9d35fa520e Add AVX FFT implementation.
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-04-26 18:25:24 +02:00
Vitor Sessak
33cbfa6fa3 Update x86inc.asm from x264 to allow AVX emulation using SSE and MMX.
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-04-26 18:18:22 +02:00
Michael Niedermayer
76cd98b445 mjpeg: Detect overreads in mjpeg_decode_scan() and error out.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Ronald S. Bultje <rbultje@google.com>
2011-04-26 09:29:08 +02:00
Stefano Sabatini
bebe72f4a0 lavc: deprecate FF_*_TYPE macros in favor of AV_PICTURE_TYPE_* enums
Also deprecate av_get_pict_type_char() in favor of
av_get_picture_type_char().

The new enum and av_get_picture_type_char() are defined in libavutil.
This allows the use in libavfilter without the need to link against
libavcodec.

Signed-off-by: Stefano Sabatini <stefano.sabatini-lala@poste.it>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 08:38:57 +02:00
Michael Niedermayer
30fe971934 aac: add headers needed for log2f()
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-26 08:33:21 +02:00
Anton Khirnov
6deae83e55 lavc: remove FF_API_MB_Q cruft 2011-04-26 08:16:06 +02:00
Anton Khirnov
694c142434 lavc: remove FF_API_RATE_EMU cruft 2011-04-26 08:16:05 +02:00
Anton Khirnov
e7021c0ed5 lavc: remove FF_API_HURRY_UP cruft 2011-04-26 08:16:05 +02:00
Janne Grunau
6ad2bafcfd ac3: fix memleak in fixed-point encoder
caused by typo in mdct_end
2011-04-25 20:27:05 +02:00
Diego Biurrun
a14c08247d flashsv: Return more meaningful error values. 2011-04-25 16:01:58 +02:00
Diego Biurrun
46cb2da1f0 flashsv: Employ explicit AVCodec struct initializers. 2011-04-25 15:41:10 +02:00
Diego Biurrun
293fe6da01 cosmetics: K&R coding style and more whitespace for Flash Screen Video 2011-04-25 01:50:07 +02:00
Diego Biurrun
2441003d3f vorbisdec: Employ proper printf format specifiers for uint_fast32_t.
libavcodec/vorbisdec.c:543: warning: format ‘%d’ expects type ‘int’, but argument 4 has type ‘uint_fast32_t’
libavcodec/vorbisdec.c:543: warning: format ‘%d’ expects type ‘int’, but argument 5 has type ‘uint_fast32_t’
2011-04-25 01:39:55 +02:00
Diego Biurrun
43fb279f56 Replace more FFmpeg instances by Libav or ffmpeg. 2011-04-23 19:12:23 +02:00
Diego Biurrun
046f3cb789 vorbis: Rename decoder/encoder files to follow general file naming scheme. 2011-04-23 14:23:20 +02:00
Nathan Caldwell
f50d937725 aacenc: Fix whitespace after last commit.
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-23 15:02:34 +03:00
Diego Biurrun
62582a696b cook: Fix small typo in av_log_ask_for_sample message. 2011-04-23 12:05:32 +02:00
Nathan Caldwell
230c1a9075 aacenc: Finish 3GPP psymodel analysis for non mid/side cases.
There is still are still a few sections missing relating to TNS (not present)
and mid/side (contains other bugs).

Overall this improves quality, and vastly improves rate-control.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-23 12:30:05 +03:00
Alex Converse
785c441828 Add some debug log messages to AAC extradata
On Wed, Apr 20, 2011 at 11:39 AM, Justin Ruggles
<justin.ruggles@gmail.com> wrote:
> On 04/20/2011 02:26 PM, Alex Converse wrote:
>
>> ---
>>  libavcodec/aacdec.c |   10 +++++++++-
>>  1 files changed, 9 insertions(+), 1 deletions(-)
>>
>>
>>
>> 0002-Add-some-Debug-log-messages-to-AAC-extradata.patch
>>
>>
>> diff --git a/libavcodec/aacdec.c b/libavcodec/aacdec.c
>> index c9761a1..3ec274f 100644
>> --- a/libavcodec/aacdec.c
>> +++ b/libavcodec/aacdec.c
>> @@ -79,7 +79,6 @@
>>             Parametric Stereo.
>>   */
>>
>> -
>>  #include "avcodec.h"
>>  #include "internal.h"
>>  #include "get_bits.h"
>
>
> stray whitespace change
>

oops, fixed

>From 94e8d0eea77480630f84368c97646cabc0f50628 Mon Sep 17 00:00:00 2001
From: Alex Converse <aconverse@google.com>
Date: Wed, 20 Apr 2011 11:23:34 -0700
Subject: [PATCH] Add some debug log messages to AAC extradata
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="------------1"

This is a multi-part message in MIME format.
--------------1
Content-Type: text/plain; charset=UTF-8; format=fixed
Content-Transfer-Encoding: 8bit
2011-04-22 20:36:57 -07:00
Diego Biurrun
d9dee728b8 Use av_log_ask_for_sample() to request samples from users. 2011-04-22 20:12:39 +02:00
Diego Biurrun
44f566b79a Make av_log_ask_for_sample() accept a variable number of arguments. 2011-04-22 20:12:27 +02:00
Diego Biurrun
b2832c3904 vqavideo: We no longer need to ask for version 1 samples. 2011-04-22 20:02:24 +02:00
Young Han Lee
9978ed7d6c aacdec: indentation cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-04-22 14:47:47 +02:00
Ronald S. Bultje
94f7451a3a Introduce slice threads flag.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-21 19:42:19 -04:00
Diego Biurrun
70fb031ce2 Use av_log_ask_for_sample() where appropriate. 2011-04-21 19:58:54 +02:00
Anton Khirnov
65af48b559 lavc: provide deprecated avcodec_thread_init until next major version
It was deprecated only recently.
2011-04-21 07:22:23 +02:00
Anton Khirnov
095290f9a4 lavc: provide the opt.h header until the next bump
AVOptions were moved to libavutil only recently.
2011-04-21 07:14:51 +02:00
Justin Ruggles
31d76ec288 In avcodec_open(), set return code to an error value only when an error occurs
instead of unconditionally at the start of the function.

This fixes a bug where a successful call to ff_thread_init() masks errors that
occur after that point in the function.  It also makes future bugs like this
less likely since the error code is now set near to the point in the code
where the error is found.
2011-04-19 14:10:03 -04:00
Anton Khirnov
cda7aa9eba lavc: remove reference to opt.h from Makefile.
Fixes make install after 3453a231a6.
2011-04-19 19:50:23 +02:00
Anton Khirnov
3453a231a6 lavc: remove misc disabled cruft. 2011-04-19 19:01:22 +02:00
Anton Khirnov
251cf997cf lavc: remove the FF_API_INOFFICIAL cruft. 2011-04-19 18:41:32 +02:00
Anton Khirnov
41d0eb1c81 lavc: remove the FF_API_SET_STRING_OLD cruft. 2011-04-19 18:41:00 +02:00
Anton Khirnov
01a4259b8d lavc: remove the FF_API_USE_LPC cruft. 2011-04-19 18:40:35 +02:00
Anton Khirnov
db4d3a7421 lavc: remove the FF_API_SUBTITLE_OLD cruft. 2011-04-19 18:39:40 +02:00
Anton Khirnov
e89e5afdd0 lavc: remove the FF_API_VIDEO_OLD cruft. 2011-04-19 18:37:21 +02:00
Anton Khirnov
9b4f1cdb6a lavc: remove the FF_API_AUDIO_OLD cruft. 2011-04-19 18:37:03 +02:00
Anton Khirnov
20d33ee8b1 lavc: remove the FF_API_OPT_SHOW cruft. 2011-04-19 18:36:15 +02:00
Anton Khirnov
42420e7b94 lavc: remove the FF_API_MM_FLAGS cruft. 2011-04-19 18:35:56 +02:00
Diego Biurrun
151cd4f982 pcm: Add const to cast in ENCODE macro.
This fixes a lot of warnings of the sort:
libavcodec/pcm.c:105: warning: cast discards qualifiers from pointer target type
2011-04-19 16:18:59 +02:00
Luca Barbato
facc48f157 libvo-aacenc,libvo-amrwbenc}: fix api usage
Use the correct error codes and format identifier.
2011-04-18 22:21:13 +02:00
Anton Khirnov
139f3ac42d Bump major versions of all libraries.
They've accumulated enough new APIs and corresponding deprecated cruft.

This breaks API and ABI.
2011-04-18 20:19:47 +02:00
Diego Biurrun
f0a41afd8a Replace mplayerhq.hu URLs by libav.org. 2011-04-18 18:23:16 +02:00
Diego Biurrun
259a3e70ed ptx: Use av_log_ask_for_sample() where appropriate. 2011-04-18 09:41:02 +02:00
Diego Biurrun
6001dad6e2 Replace more FFmpeg references by Libav. 2011-04-17 19:31:49 +02:00
Justin Ruggles
4c64c8e95a ac3dec: fix processing of delta bit allocation information.
The number of dba segments is the coded value + 1.
The coupling dba offset starts at the first coupling band, not at zero.
2011-04-17 12:33:41 -04:00
Ronald S. Bultje
0b05864eef vc1: fix fate-vc1 after previous commit.
PROFILE_ADVANCED doesn't set res_fasttx, so make that a special case
in the condition that decides which IDCT to use (and whether to read
coefficients transposed or not).

Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
2011-04-17 08:45:10 +02:00
Ronald S. Bultje
58bb6b7d93 wmv3dec: fix playback of complex WMV3 files using simple_idct.
IDCT coefficients are read transposed, but simple_idct does not expect
this. Therefore, only do tranposed coefficient reading if we're not
using simple_idct.

Fixes http://forum.videolan.org/viewtopic.php?f=14&t=89651
2011-04-16 15:19:53 -04:00
Kostya Shishkov
c0eee89337 make av_dup_packet() more cautious on allocation failures
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-15 18:02:05 +02:00
Kostya Shishkov
2d8591c27e make containers pass palette change in AVPacket
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-15 18:02:05 +02:00
Kostya Shishkov
4de339e219 introduce side information for AVPacket
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-04-15 18:01:53 +02:00
Martin Storsjö
302152d40b libavcodec: Bump micro after adding the dtx AVOptions
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-14 09:34:26 +03:00
Martin Storsjö
651b276ef7 libopencore-amr, libvo-amrwbenc: Allow enabling DTX via private AVOptions
DTX, discontinuous transmission, allows emitting frames with
comfort noise when no voice is detected in the input audio.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-14 00:31:39 +03:00
Martin Storsjö
3dd82afc74 libopencore-amr, libvo-amrwbenc: Only check the bitrate when changed
Also rename the incorrectly named enc_bitrate to enc_mode, use the
enc_bitrate variable for storing the last chosen bitrate.

This avoids continuous warning log messages if not using an
exactly matching bitrate, while still allowing changing bitrate
at any point.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-14 00:31:34 +03:00
Martin Storsjö
7073938121 libopencore-amr, libvo-amrwbenc: Find the closest matching bitrate
Dynamically print the supported bitrates from the local table,
instead of using a hardcoded log message.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-14 00:31:33 +03:00
Martin Storsjö
957635ba14 libvo-*: Fix up the long codec names
Include VisualOn to clarify the codec name, but remove the
actual library name from the user-friendly description.
Also mention Android, to clarify which VisualOn implementation
this refers to, since they do sell other variants of the same
code, too.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 22:38:18 +03:00
Martin Storsjö
567ad0e31d libavcodec: Mark AVCodec->priv_class const
This avoids warnings of this kind, everywhere priv_class
is initialized:

warning: initialization discards qualifiers from pointer target type

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 22:14:33 +03:00
Martin Storsjö
2d3267936a libvo-aacenc: Only produce extradata if the global header flag is set
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 15:43:46 +03:00
Anton Khirnov
c776732712 lavc: postpone removal of request_channels
No decoder uses the supposed replacement, request_channel_layout, yet.
2011-04-13 13:50:17 +02:00
Anton Khirnov
d6ead39ee7 lavc: postpone removal of audioconvert and sample_fmt wrappers
Those were moved to libavutil only recently.
2011-04-13 13:50:17 +02:00
Martin Storsjö
882221afde libopencore-amr: Cosmetics: Rewrap and align
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 13:00:21 +03:00
Martin Storsjö
02c63a109f libopencore-amr, libvo-amrbwenc: Rename variables and functions
Avoid camelCase names for functions and variables.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 13:00:14 +03:00
Martin Storsjö
9b9c6405fd libopencore-amr: Convert commented out debug logging into av_dlog
Also add the avctx as logging context.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 13:00:07 +03:00
Martin Storsjö
89e7e640f7 libopencore-amr: Remove an unused state variable
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 12:59:58 +03:00
Martin Storsjö
5d211e034e libvo-amrwbenc: Don't explicitly store bitrate modes in the bitrate table
The bitrate modes are equal to the array indices.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 11:30:38 +03:00
Martin Storsjö
0e03f94d61 libopencore-amr: Remove a useless local variable
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 11:30:38 +03:00
Martin Storsjö
c48ce4eb50 libopencore-amr, libvo-amrwbenc: Make the bitrate/mode mapping array static const
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 11:30:38 +03:00
Martin Storsjö
900a129f4f libopencore-amr, libvo-amrwbenc: Return proper error codes in most places
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 11:30:38 +03:00
Martin Storsjö
a8ec07c933 libopencore-amr: Don't print carriage returns in log messages
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 11:30:38 +03:00
Martin Storsjö
587331414b libopencore-amr: Remove an old workaround for libamr header weirdness
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 11:30:38 +03:00
Martin Storsjö
57ddffe843 libopencore-amr: Make the opaque encoder pointer a void*
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 11:30:38 +03:00
Martin Storsjö
dbff4da914 libopencore-amr: Remove unused code fragments
This parts are heritage from the encoder part from the old
libamr code removed in SVN rev 19365.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-13 11:30:38 +03:00
Alberto Delmas
d294015510 Check for successful h263 init in msmpeg4 init
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-12 19:46:44 -04:00
Martin Storsjö
c5e03cebd3 libvo-*: Don't use deprecated sample format names and enum names
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-12 12:52:47 +03:00
Martin Storsjö
c41eb2ade4 libavcodec: Use "const enum AVSampleFormat[]" in AVCodec initialization
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-12 12:38:37 +03:00
Alex Converse
2f072b55a4 Fix the conversion of AV_SAMPLE_FMT_FLT and _DBL to AV_SAMPLE_FMT_S32.
(1<<31) is undefined and seems to be evaluated by gcc to -2^31 when
these formulae require 2^31.

These conversions still need fate tests.
2011-04-11 21:47:53 -07:00
Alex Converse
187a537904 Convert some undefined 1<<31 shifts into 1U<<31.
According to ISO 9899:1999 S 6.5.7/4:

The result of E1 << E2 is E1 left-shifted E2 bit positions; vacated bits
are filled with zeros. If E1 has an unsigned type, the value of the
result is E1× 2^E2, reduced modulo one more than the maximum value
representable in the result type. If E1 has a signed type and
nonnegative value, and E1× 2^E2 is representable in the result type, then
that is the resulting value; otherwise, the behavior is undefined.
2011-04-11 21:47:42 -07:00
Martin Storsjö
f502ff3f61 Add support for AMR-WB encoding via libvo-amrwbenc
The wrapper code is based on the libamr wrapper removed in SVN rev 19365.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-11 14:55:53 +03:00
Martin Storsjö
d89e738a0c Add an AAC encoder by using the libvo-aacenc library
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-11 14:55:51 +03:00
Martin Storsjö
029f966c3a g722: Return 8 bits per sample for g722 in av_get_bits_per_sample
This fixes a failing assert in ff_raw_read_header (in
fate-g722dec-1), where bits_per_coded_sample is set using this
function and is required to have a positive value.

Signed-off-by: Martin Storsjö <martin@martin.st>
2011-04-11 11:35:43 +03:00
Alberto Delmás
768c525114 Parse sprite data for WMVP and WVP2, and decode sprites for the latter
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-04-10 10:07:49 +02:00
Alexander Strange
cf39b461d3 pthread: validate_thread_parameters() ignored slice-threading being intentionally off
The thread_type API allows you to request only FF_THREAD_FRAME (instead of
FRAME | SLICE), but it was being ignored.
We don't implement both of them at the same time, so there isn't an effect
on current codecs, except that you can request no kinds of threading now
(a bit useless).

Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-09 08:23:22 -04:00
Reimar Döffinger
f82163cf1c Use consistent condition for whether to run slice-threading execute function.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-04-09 08:23:22 -04:00
Gwenole Beauchesne
da21440d46 vaapi: cope with VA-API 0.32, i.e. fix VC-1 decoding on Sandy Bridge.
(cherry picked from commit a18e7b4fb7)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-04-09 12:02:04 +02:00
Gwenole Beauchesne
09ce846206 vaapi: filter out DELAYED_PIC_REF flag to determine field.
This fixes ticket #23.

(cherry picked from commit 621f4c98df)

Signed-off-by: Reinhard Tartler <siretart@tauware.de>
2011-04-09 12:00:57 +02:00
Anton Khirnov
9f5ddd1e46 lavc: add a FF_API_REQUEST_CHANNELS deprecation macro
And hide request_channels AVOption under it.
2011-04-07 18:11:24 +02:00