Justin Ruggles
6326afd5e9
avcodec: reject audio packets with NULL data and non-zero size
...
There is no valid reason the user should ever send such packets in the
first place, but the documentation for CODEC_CAP_DELAY states that the
codec is guaranteed not to get a NULL packet unless that capability is
set. That isn't true without preventing this case.
2011-09-30 11:02:50 -04:00
Joakim Plate
dcce09d64b
dxva: Add ability to enable workaround for older ATI cards
...
The workaround needs to be enabled per PCI ID which cannot be detected inside
libavcodec. So add a flag to manually enable the alternate behavior.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-09-30 11:17:53 +02:00
Justin Ruggles
e562fbd003
adpcm: move codec-specific variable declarations to the sections for the corresponding codecs.
2011-09-29 16:54:01 -04:00
Justin Ruggles
9662539c10
adpcm: check buffer size in Funcom ISS decoder before reading header.
...
Also use the post-header data size to control termination of the main
decoding loop.
2011-09-29 16:54:01 -04:00
Justin Ruggles
ba5d2890d7
adpcm: simplify reading of Funcom ISS frame header.
2011-09-29 16:54:01 -04:00
Justin Ruggles
5c9eb4fabb
adpcm: check buffer size in IMA DK4 decoder before reading header.
...
Also use the post-header data size to control termination of the main
decoding loop.
2011-09-29 16:54:01 -04:00
Justin Ruggles
a57ea1a87e
adpcm: simplify reading of IMA DK4 frame header.
2011-09-29 16:54:01 -04:00
Justin Ruggles
8114f94ac9
adpcm_ms: clean up reading of predictor coefficients
2011-09-29 16:54:01 -04:00
Justin Ruggles
943f4db552
adpcm_4xm: process planar packets sequentially rather than simultaneously.
...
Also properly clip the right channel step_index.
2011-09-29 16:54:00 -04:00
Justin Ruggles
119974b164
adpcm_ima_wav: process channel-interleaved blocks sequentially rather than simultaneously.
...
Speeds up the ADPCM IMA WAV decoder by 15-20% overall.
2011-09-29 16:54:00 -04:00
Justin Ruggles
7c287b18a0
adpcm: update reference links
...
Add Multimedia Wiki link.
Mark dead links with [dead]. Some can still be accessed through archive.org.
Update URLs for pages which have moved.
Replace duplicated links in adpcmenc.c with a note to see the ADPCM decoder
reference documents.
2011-09-29 16:54:00 -04:00
Justin Ruggles
ac94b8bcc6
adpcm: simplify packet size bounds checking in the ADPCM IMA QT decoder.
...
This is easier to understand. It also avoids returning existing samples mixed
with new samples when the packet is too small.
2011-09-29 16:54:00 -04:00
Justin Ruggles
de0b586a87
adpcm: simplify and speed up several ADPCM decoders.
2011-09-29 16:54:00 -04:00
Justin Ruggles
5a9ed7c110
adpcm: pretty-print tables
2011-09-29 16:54:00 -04:00
Alex Converse
fcbe421cee
prores: Handle 0 or fewer bits left
...
show_bits() is undefined when the number of bits is less than or equal to
zero.
2011-09-29 09:45:57 -07:00
Mans Rullgard
bf00a73ace
dca: clear inactive subbands only once in qmf_32_subbands()
...
Writing zeros to the high entries in the array need only be
done once as the cutoff position is constant throughout the
loop.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-09-29 12:34:17 +01:00
Mans Rullgard
baf6b738f2
ARM: NEON optimised vector_fmac_scalar()
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-09-28 15:56:09 +01:00
Mans Rullgard
a92a1b93b4
dca: use vector_fmac_scalar from dsputil
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-09-28 15:56:09 +01:00
Mans Rullgard
fcca826a63
dsputil: add vector_fmac_scalar()
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-09-28 15:56:08 +01:00
Justin Ruggles
3d371f417e
ws_snd: misc cosmetic clean-ups
2011-09-26 16:23:58 -04:00
Justin Ruggles
659c719bc7
ws_snd: remove the 2-bit ADPCM table and just subtract 2 instead.
2011-09-26 16:23:15 -04:00
Justin Ruggles
618b067d21
ws_snd: use memcpy() and memset() instead of loops
2011-09-26 16:23:14 -04:00
Justin Ruggles
6896aa7a38
ws_snd: use samples pointer for loop termination instead of a separate
...
iterator variable.
2011-09-26 16:23:14 -04:00
Justin Ruggles
6a818cb3ff
ws_snd: make sure number of channels is 1
2011-09-26 16:23:10 -04:00
Justin Ruggles
417364ce1f
ws_snd: add some checks to prevent buffer overread or overwrite.
2011-09-26 15:49:50 -04:00
Justin Ruggles
2322ced8da
ws_snd: decode to AV_SAMPLE_FMT_U8 instead of S16.
...
8-bit unsigned is the native sample format.
2011-09-26 15:49:50 -04:00
Justin Ruggles
4c5e7b27d5
flacdec: fix buffer size checking in get_metadata_size()
...
Adds an additional check before reading the next block header and avoids a
potential integer overflow when checking the metadata size against the
remaining buffer size.
2011-09-26 15:29:45 -04:00
Nicolas George
4ca59d1948
oggdec: add support for Xiph's CELT codec
...
This patch also introduces CODEC_ID_CELT.
Signed-off-by: Nicolas George <nicolas.george@normalesup.org>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-09-26 13:51:29 +02:00
Justin Ruggles
88f908fbdc
cosmetics: reindent and pretty-print
2011-09-25 14:38:08 -04:00
Justin Ruggles
8febd6afbc
libgsm: split init and close fuctions for encoder and decoder.
...
The decoder shouldn't be allocating coded_frame. It's also cleaner to split
them than to check avctx->codec->encode and avctx->codec->decode.
2011-09-25 14:38:08 -04:00
Mans Rullgard
6e4a35ced9
ppc: fix 32-bit PIC build
...
On 32-bit ppc, the GOT pointer must be loaded manually.
This adds a "get_got" assembler macro to compute the
GOT address. The "movrel" macro is updated to take an
additional parameter containing the GOT address since
no register is reserved for this purpose on ppc32.
These changes have no effect on ppc64 builds.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-09-25 17:27:48 +01:00
Justin Ruggles
4568c2bf97
vmdaudio: fix decoding of 16-bit audio format.
...
The initial sample of each block is raw 16-bit PCM, not DPCM.
Fixes decoding of all samples in:
http://streams.videolan.org/samples/game-formats/sierra-vmd/Lighthouse/
2011-09-25 10:39:00 -04:00
Laurent Aimar
d1186ff72d
h264: check for out of bounds reads in ff_h264_decode_extradata().
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-25 15:04:58 +02:00
Diego Biurrun
8671488799
Use explicit struct initializers for AVCodec declarations.
2011-09-24 12:11:19 +02:00
Justin Ruggles
9ff6d0791b
adpcmenc: Set bits_per_coded_sample
2011-09-23 20:54:29 -04:00
Baptiste Coudurier
b304244b54
adpcmenc: fix QT IMA ADPCM encoder
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-23 20:54:29 -04:00
Baptiste Coudurier
bf334535b4
adpcmdec: Fix QT IMA ADPCM decoder
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-23 20:54:28 -04:00
Peter Ross
3a549eb82b
permit decoding of multichannel ADPCM_EA_XAS
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2011-09-23 20:54:28 -04:00
Reimar Döffinger
ffe92ff9f0
Fix input buffer size check in adpcm_ea decoder.
...
Unfortunately the output buffer size check assumes that the
input buffer is never over-consumed, thus this actually
also allowed to write outside the output buffer if "lucky".
Based on:
git.videolan.org/ffmpeg.git
commit 701d0eb185
2011-09-23 20:54:28 -04:00
Sean McGovern
c2d3f56107
fft: avoid a signed overflow
...
As a signed integer, 1<<31 overflows, so force it to unsigned.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2011-09-23 17:02:58 -07:00
Luca Barbato
d554b33efe
ratecontrol: update last_qscale_for sooner
...
In order to make ratecontrol converge properly update the
last_qscale_for values when populating the qscale array.
It fixes the issue reported on
http://lists.libav.org/pipermail/libav-tools/2011-September/000050.html
2011-09-22 17:25:48 -07:00
Diego Biurrun
167d3b1673
prores: return more meaningful error values
2011-09-23 01:42:13 +02:00
Diego Biurrun
2161282439
prores: improve error message wording
2011-09-23 01:42:12 +02:00
Diego Biurrun
27ba121e90
prores: cosmetics: prettyprinting, drop useless parentheses
2011-09-23 01:42:12 +02:00
Diego Biurrun
2983f1f3be
prores: lowercase AVCodec name entry
...
All other codecs use lowercase names in that field.
2011-09-23 01:42:11 +02:00
Justin Ruggles
1993c6849c
8svx/iff: fix decoding of compressed stereo 8svx files.
...
Make the iff demuxer send the whole audio chunk to the decoder as a
single packet and move stereo interleaving from the iff demuxer to the
decoder.
Based on a patch by Stefano Sabatini.
git.videolan.org/ffmpeg.git
commit e280a4da2a
2011-09-22 14:11:34 -04:00
Justin Ruggles
fda459cee7
8svx: log an error message if output buffer is too small
...
Based on a patch by Stefano Sabatini.
git.videolan.org/ffmpeg.git
commit e280a4da2a
2011-09-22 14:11:34 -04:00
Justin Ruggles
0ac3b8fc4a
8svx: check packet size before reading the initial sample value.
2011-09-22 14:11:34 -04:00
Justin Ruggles
e371878416
8svx: output 8-bit samples instead of 16-bit.
...
Based on a patch by Stefano Sabatini.
git.videolan.org/ffmpeg.git
commit e280a4da2a
2011-09-22 14:11:34 -04:00
Justin Ruggles
ac68607bfe
8svx: split delta decoding into a separate function.
...
Based on a patch by Stefano Sabatini.
git.videolan.org/ffmpeg.git
commit e280a4da2a
2011-09-22 14:11:34 -04:00
Maxim Poliakovski
be64629a13
Apple ProRes decoder
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-22 14:54:46 +03:00
Laurent Aimar
fe476e5a9b
rv34: Check for invalid slices offsets
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-22 10:35:06 +03:00
Mans Rullgard
ae2e89717b
dct-test: factor out some common code and do whas was likely intended
...
This fixes some nonsensical code by moving some should-be-shared
code to separate functions and using these.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-09-21 15:43:59 +01:00
Anton Khirnov
609a2fa1fa
Remove some forgotten AVCodecContext.palctrl usage.
2011-09-21 13:51:53 +02:00
Anton Khirnov
9ecfbb3e57
lavc/utils: move avcodec_init() higher in the file.
...
Fixes build on next major bump.
2011-09-21 13:51:53 +02:00
Anton Khirnov
e5b29c1f6b
lavc: replace some deprecated FF_*_TYPE with AV_PICTURE_TYPE_*
2011-09-21 13:51:53 +02:00
Anton Khirnov
feedc0754b
ac3dec: actually use drc_scale private option
2011-09-21 13:51:53 +02:00
Anton Khirnov
63e4c8a653
lavc: undeprecate AVPALETTE_SIZE and AVPALETTE_COUNT macros
...
They are still being used and shouldn't be removed.
2011-09-21 13:51:53 +02:00
Diego Biurrun
a3e0135dbb
msmpeg4: remove leftover unused debug variable declaration
2011-09-21 09:57:33 +02:00
Diego Biurrun
95a06eb4d5
Fix assert() calls that need updates after FF_COMMON_FRAME macro elimination.
...
This fixes build failures with -DDEBUG in CPPFLAGS.
2011-09-21 09:57:32 +02:00
Diego Biurrun
35a6855868
Fix av_dlog invocations with wrong or missing logging context.
...
This fixes build failures with -DDEBUG in CPPFLAGS.
2011-09-21 09:57:32 +02:00
Laurent Aimar
4cc7732386
rv34: Check for invalid slice offsets
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-20 10:29:55 +03:00
Laurent Aimar
b4ed3d78cb
rv34: Fix potential overreads
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-19 15:44:22 +03:00
Laurent Aimar
d2213b6493
rv34: Fix buffer size used for MC of B frames after a resolution change
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-19 15:44:22 +03:00
Laurent Aimar
d0f6ab0298
rv34: Avoid NULL dereference on corrupted bitstream
...
rv34_decode_slice() can return without allocating any pictures.
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-19 15:44:22 +03:00
Laurent Aimar
4a29b47186
rv10: Reject slices that does not have the same type as the first one
...
This prevents crashes with some corrupted bitstreams.
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-19 14:58:33 +03:00
Luca Barbato
3a78fb57de
libx264: introduce slice-max-size option
...
Yet another option useful for low latency streaming.
2011-09-16 07:56:17 -07:00
Laurent Aimar
b59efc9434
Fixed size given to init_get_bits().
...
init_get_bits() takes a number of bits and not a number of bytes as
its size argument.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2011-09-15 13:23:04 -07:00
Michael Niedermayer
5166376f24
smacker: fix a few off by 1 errors
...
stereo & 16bit is untested due to lack of samples
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-14 11:13:54 +03:00
Laurent Aimar
6489455495
Check for invalid VLC value in smacker decoder.
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-14 10:40:31 +03:00
Laurent Aimar
9676ffba83
Check and propagate errors when VLC trees cannot be built in smacker decoder.
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-14 10:38:49 +03:00
Justin Ruggles
3ed7860943
include stdint.h in adpcm_data.h
...
fixes make checkheaders
2011-09-13 10:59:47 -04:00
Diego Biurrun
a05ea77c9f
mpeg12: reorder functions to avoid ugly forward declarations
2011-09-13 15:53:05 +02:00
Alex Converse
0872bb23b4
xan: Add some buffer checks
2011-09-12 11:18:57 -07:00
Alex Converse
350f57bd7b
xan: Remove extra trailing newline
2011-09-12 11:18:57 -07:00
Laurent Aimar
393d5031c6
Fixed size given to init_get_bits() in xan decoder.
2011-09-12 11:18:57 -07:00
Justin Ruggles
826c56d16e
adpcm: split ADPCM encoders and decoders into separate files.
...
Move shared tables to a separate file as well.
2011-09-12 11:26:11 -04:00
Kostya Shishkov
23a1f0c592
rv34: check that subsequent slices have the same type as first one.
...
This prevents some crashes when corrupted bitstream reports e.g. P-type
slice in I-frame. Official RealVideo decoder demands all slices to be
of the same type too.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-12 15:51:30 +02:00
Anton Khirnov
af1e247038
libxavs: add private options corresponding to deprecated global options
...
Code mostly copied from libx264 wrapper.
2011-09-12 08:45:55 +02:00
Anton Khirnov
d242d80e36
avconv: remove me_threshold option.
...
It's only shadowing the AVOption with the same name.
2011-09-11 17:30:04 +02:00
Laurent Aimar
8bfea4ab4e
Fixed segfault with wavpack decoder on corrupted decorrelation terms sub-blocks.
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-10 18:58:57 +03:00
Alex Converse
0c1f5b93d9
cljr: init_get_bits size in bits instead of bytes
2011-09-09 15:01:00 -07:00
Alex Converse
b7ce4f1d1c
indeo2: fail if input buffer too small
2011-09-09 15:01:00 -07:00
Alex Converse
68ca330cbd
indeo2: init_get_bits size in bits instead of bytes
2011-09-09 15:01:00 -07:00
Laurent Aimar
46b004959b
ffv1: Fixed size given to init_get_bits() in decoder.
...
init_get_bits() takes a number of bits and not a number of bytes as
its size argument.
Signed-off-by: Alex Converse <alex.converse@gmail.com>
2011-09-09 15:00:28 -07:00
Alex Converse
dba2b63a98
wavpack: Check error codes rather than working around error conditions.
2011-09-08 11:02:43 -07:00
Laurent Aimar
55354b7de2
Fixed invalid access in wavpack decoder on corrupted bitstream.
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-08 12:04:06 +03:00
Laurent Aimar
0aedab0340
Fixed invalid writes in wavpack decoder on corrupted bitstreams.
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-08 12:00:13 +03:00
Laurent Aimar
beefafda63
Fixed invalid access in wavpack decoder on corrupted extra bits sub-blocks.
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-09-08 11:57:13 +03:00
Kieran Kunhya
0ca36b4de7
Add LATM muxer
...
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2011-09-07 12:57:55 +02:00
Baptiste Coudurier
635bbecfc3
v210enc: clip values according to specifications
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-07 12:50:11 +02:00
Baptiste Coudurier
d239b83e2e
v210enc: switch to PIX_FMT_422P10
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-07 12:16:21 +02:00
Baptiste Coudurier
08fa23d6c2
v210dec: switch to PIX_FMT_422P10
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-07 12:16:15 +02:00
Anton Khirnov
79eff91325
AVOptions: deprecate av_opt_set_defaults2
...
It's a hack which was created to allow for multiple options with
different defaults to refer to same field (e.g. 'b' vs 'ab'). There is
no need for it anymore.
2011-09-07 11:19:43 +02:00
Anton Khirnov
0962f23b35
libx264: fix setting some more parameters
...
Specifically, trellis, nr, me_range, me_method, subq, b_strategy,
keyint_min, chroma_me and coder.
Change their defaults to -1 and apply them after
x264_param_default_preset() if the user explicitly set them.
2011-09-07 10:36:15 +02:00
Andrej Peterka
2bb5d637fc
libx264: fix setting the H.264 level
...
Move setting it after x264_param_default_preset()
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-07 09:16:06 +02:00
Anton Khirnov
9c684feadc
libx264: add 'direct-pred' private option
...
Deprecate AVCodecContext.directpred
2011-09-07 07:27:55 +02:00
Anton Khirnov
0635a8aa21
libx264: add 'partitions' private option
...
Deprecate AVCodecContext.partitions.
2011-09-07 07:27:18 +02:00
Anton Khirnov
7042337673
libx264: add 'cplxblur' private option
...
Deprecate AVCodecContext.complexityblur
2011-09-06 21:03:41 +02:00
Anton Khirnov
71b5f4427b
libx264: add 'deblock' private option
...
Deprecate AVCodecContext.deblockalpha/deblockbeta
2011-09-06 21:02:45 +02:00
Anton Khirnov
f83c45183e
libx264: add 'b-bias' private option
...
Deprecate AVCodecContext.bframebias.
2011-09-06 20:14:35 +02:00
Anton Khirnov
bb73cda2f6
libx264: fix setting some options.
...
Specifically: gop_size, max_b_frames, scenechange_threshold, qmin, qmax,
max_qdiff, qblur, qcompress and refs.
Change their default values to -1 and only use them if the user
explicitly set them. Otherwise x264 defaults are used.
Move setting those options after x264_param_default_preset(), so they
don't get overwritten by it.
2011-09-06 20:13:28 +02:00
Anton Khirnov
d8dee0e7bd
libx264: remove useless assignment
...
priv_data is memset to 0.
2011-09-06 20:13:11 +02:00
Reimar Döffinger
459fe331e9
ac3dec: avoid pointless alloc and indirection for input_buffer
...
Since we now always allocate it, it can simply be made part of the context
instead.
2011-09-06 12:43:16 -04:00
Diego Biurrun
6192b6f3e7
mpeg12: cosmetics: reformat as K&R
2011-09-06 11:46:57 +02:00
Justin Ruggles
ae264bb29b
ac3enc: Add channel coupling support for the fixed-point AC-3 encoder.
...
Update FATE references accordingly.
2011-09-05 10:09:44 -04:00
Justin Ruggles
a0d17b6d45
ac3enc: scale floating-point coupling channel coefficients in
...
scale_coefficients() rather than in apply_channel_coupling()
2011-09-05 10:07:43 -04:00
Justin Ruggles
3e5722a8ca
ac3enc: fix encoding of stereo ac3 files when rematrixing is disabled.
...
The number of rematrixing bands still needs to be calculated.
2011-09-05 09:24:59 -04:00
Kostya Shishkov
bcd4aa8bec
wavpack: fix wrong return value in wavpack_decode_block()
...
This function should return number of samples decoded, not number of bytes
decoded.
Spotted by Uoti Urpala.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-09-05 12:44:26 +02:00
Dustin Brody
ff17fc6353
mpeg12: propagate more real return values through chunk decode error return and fix some indentation
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-05 11:19:14 +02:00
Kostya Shishkov
9bc4e21a9b
wavpack: use context reset in appropriate places
...
This fixes improper flushing in the cases when the same frame is decoded in
several iterations (for being too large to fit into output buffer) and flush is
called mid-decoding and it also resets context in case of decoding errors.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-09-05 11:18:27 +02:00
Anton Khirnov
fb47997edb
lavc: fix type for thread_type option
...
It should be flags, not int.
2011-09-04 13:15:36 +02:00
Anton Khirnov
fb4ca26bdb
lavf,lavc,sws: add {avcodec,avformat,sws}_get_class() functions.
2011-09-03 20:53:35 +02:00
Anton Khirnov
c11fb8288d
AVOptions: add AV_OPT_SEARCH_FAKE_OBJ flag for av_opt_find().
...
It allows to search for options only with AVClass, without allocating
the corresponding context.
2011-09-03 20:52:21 +02:00
Anton Khirnov
9bc9188e58
libmp3lame: fix typo
...
FF_API_LAME_GLOBAL_OPTIONS => FF_API_LAME_GLOBAL_OPTS
Thanks to Clément Bœsch for spotting.
2011-09-01 10:37:19 +02:00
Anton Khirnov
1440037411
libx264: use X264_THREADS_AUTO constant instead of 0.
2011-09-01 10:12:30 +02:00
Anton Khirnov
5d06f15235
libx264: set default thread count to 0 (auto)
2011-08-31 17:39:13 +02:00
Anton Khirnov
f013cb8118
lavc: cosmetics, group deprecated codec flags
2011-08-31 13:28:54 +02:00
Anton Khirnov
aed7900704
mpeg12: add 'scan_offset' private option.
...
Deprecate CODEC_FLAG_SVCD_SCAN_OFFSET
2011-08-31 13:28:41 +02:00
Anton Khirnov
4bcee8e7f8
h263/p encoder: add 'structured_slices' private option.
...
Deprecate CODEC_FLAG_H263P_SLICE_STRUCT
2011-08-31 13:28:26 +02:00
Anton Khirnov
0d904de89d
h263/p encoder: add 'obmc' private option.
...
Deprecate CODEC_FLAG_OBMC
2011-08-31 13:28:11 +02:00
Anton Khirnov
e3922d1110
h263p encoder: add 'aiv' private option.
...
Deprecate CODEC_FLAG_H263P_AIV
2011-08-31 13:27:59 +02:00
Anton Khirnov
9bb2d1a3f0
h263p encoder: add 'umv' private option.
...
Deprecate CODEC_FLAG_H263P_UMV
2011-08-31 13:27:36 +02:00
Anton Khirnov
0e5d37309f
mpeg12enc/mpeg4videoenc: add 'alternate_scan' private option.
...
Deprecate CODEC_FLAG_ALT_SCAN
2011-08-31 13:26:26 +02:00
Anton Khirnov
1f0c7020a1
mjpegdec: add 'extern_huff' private option.
...
Deprecate CODEC_FLAG_EXTERN_HUFF
2011-08-31 13:25:54 +02:00
Anton Khirnov
4623420d84
mpeg4enc: add 'data_partitioning' private option.
...
Deprecate CODEC_FLAG_PART
2011-08-31 13:25:18 +02:00
Anton Khirnov
0cc06b9e23
snow: add 'memc_only' private option.
...
Deprecate CODEC_FLAG2_MEMC_ONLY
2011-08-31 13:24:16 +02:00
Anton Khirnov
0dc5e12f1e
libx264: add 'mbtree' private option.
...
Deprecate CODEC_FLAG2_MBTREE
2011-08-31 13:24:02 +02:00
Anton Khirnov
38934f19fe
libx264: add 'psy' private option.
...
Deprecate CODEC_FLAG2_PSY
2011-08-31 13:23:37 +02:00
Anton Khirnov
a7cec3a094
libmp3lame: add 'reservoir' private option.
...
Deprecate CODEC_FLAG2_BIT_RESERVOIR
2011-08-31 13:22:53 +02:00
Anton Khirnov
88262ca87d
mpeg2enc: add 'non_linear_quant' private option
...
Deprecate CODEC_FLAG2_NON_LINEAR_QUANT
2011-08-31 13:21:59 +02:00
Anton Khirnov
2c5e1efc09
mpeg12enc: add drop_frame_timecode private option.
...
Deprecate CODEC_FLAG2_DROP_FRAME_TIMECODE
2011-08-31 13:21:05 +02:00
Anton Khirnov
297d9cb3dc
mpeg12enc: add intra_vlc private option.
...
Deprecate CODEC_FLAG2_INTRA_VLC.
2011-08-31 13:19:14 +02:00
Alberto Delmás
d2f119a1f2
VC1: Support dynamic dimension changes
...
Fixes SA00072, SA00073, SA10150, SA10151, Issue2076
Improves SA10153
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-31 13:11:23 +02:00
Dustin Brody
a18e04bcf9
mjpeg: treat external huffman table setup failure as codec init failure if external huffman table use requested
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-31 10:28:29 +02:00
Anton Khirnov
7485e54708
lavc: deprecate CODEC_FLAG2_BRDO
...
It's been unused for the last 3 years.
2011-08-31 10:26:21 +02:00
Anton Khirnov
cf90c5d0e0
libx264: add 'aud' private option.
...
Deprecate CODEC_FLAG2_AUD.
2011-08-31 10:26:11 +02:00
Anton Khirnov
3b82aeeec0
libx264: add 'fast-pskip' private option.
...
Deprecate CODEC_FLAG2_FASTPSKIP.
2011-08-31 10:25:54 +02:00
Anton Khirnov
373257fa79
libx264: add '8x8dct' private option.
...
Deprecate CODEC_FLAG2_8X8DCT.
2011-08-31 10:25:34 +02:00
Anton Khirnov
eab21c32e3
libx264: add 'mixed-refs' private option.
...
Deprecate CODEC_FLAG2_MIXED_REFS.
2011-08-31 10:25:06 +02:00
Anton Khirnov
0f29699db7
libx264: add 'weightb' private option.
...
Deprecate CODEC_FLAG2_BPYRAMID.
2011-08-31 10:24:56 +02:00
Anton Khirnov
34dda1251d
libx264: add 'b-pyramid' private option.
...
Deprecate CODEC_FLAG2_BPYRAMID.
2011-08-31 10:24:17 +02:00
Anton Khirnov
5d4a1048ee
libx264: add 'intra-refresh' private option.
...
Deprecate CODEC_FLAG2_INTRA_REFRESH.
2011-08-31 10:23:26 +02:00
Anton Khirnov
faaecd4708
libx264: add 'ssim' private option.
...
Deprecate CODEC_FLAG2_SSIM.
2011-08-31 10:23:03 +02:00
Anton Khirnov
3b81636f33
libx264: make options compatible with x264
...
Replace '_' with '-', merge psy-trellis into psy-rd and rename cqp->qp
Also fix typo pdy-rd -> psy-rd
2011-08-31 10:21:36 +02:00
Luca Barbato
dde372934a
avcodec: remove misleading comment
...
coded_width is the width before lowres scaling,
coded_height is the height before lowres scaling.
2011-08-31 09:57:46 +02:00
Kostya Shishkov
a80852316e
RV40: reuse some H.264 motion compensation functions in RV40.
...
Since RV40 is based on H.264, it uses the same interpolation filters and
functions for halfpel interpolation in one direction can be reused.
Unfortunately other cases are implemented differently and produce slightly
different output because of rounding.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-08-30 12:04:46 +01:00
Luca Barbato
22141917a9
Revert "h264: Properly set coded_{width, height} when parsing H.264."
...
This reverts commit b47904d158
.
coded_{width, height} overwrites width and height in avcodec_open and
it currently just report the non-lowres size.
2011-08-29 18:32:31 +02:00
Diego Biurrun
0249478756
doxygen: fix wrong comment syntax, //< vs. ///<
2011-08-26 18:34:28 +02:00
Diego Biurrun
0138a8dead
doxygen: drop pointless star from pointer variable names
2011-08-26 18:08:38 +02:00
Dustin Brody
f913eeea43
vp6: partially propagate huffman tree building errors during coeff model parsing and fix misspelling
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-25 15:49:56 -07:00
Dustin Brody
09c274e067
mpeg12: propagate chunk decode errors and fix conditional indentation
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-25 15:49:28 -07:00
John Stebbins
0d802ac54e
vc1: fix VC-1 Pulldown handling.
...
Pulldown flags are being set incorrectly and AVFrame->repeat_pict is not
being set. Also, skipped frames exit header parsing too early and do not
set pulldown flags appropriately. Ticks_per_frame needs to be set and
time_base adjusted so player can extend frame duration by a field time.
This fixes problems encountered when attempting to transcode HD-DVD EVOB
files with HandBrake. Also makes these files play smoothly in avplay.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-25 12:41:45 -07:00
Alberto Delmás
1cf82cab08
VC1: Fix first/last row checks with slices
...
In some places 0/mb_height were used in place of start_mb_y/end_mb_y.
Fixes SA00049, SA00058, SA10091, SA10097, SA10131, SA20021, SA30030
Improves PSNR in SA00054, SA00059, SA00060, SA10096, SA10098, SA20022,
SA30031, SA30032, SA40012, SA40013
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-25 12:33:58 -07:00
Ronald S. Bultje
d4b9974465
vc1: properly zero coded_block[] edges on new slice entry.
...
Previously, we would leave the left edge uninitialized, which led to
CBP prediction errors on slice edges, e.g. in SA10098.vc1.
2011-08-24 22:06:06 -07:00
Anton Khirnov
4ae30cac22
libx264: add 'crf_max' private option.
...
Deprecate corresponding global option.
2011-08-24 14:33:40 +02:00
Anton Khirnov
c5dd0bc4ca
libx264: add 'weightp' private option.
...
Deprecate corresponding global option.
2011-08-24 14:32:24 +02:00
Anton Khirnov
d4b9671318
libx264: add 'rc_lookahead' private option.
...
Deprecate corresponding global option.
2011-08-24 14:31:55 +02:00
Anton Khirnov
2a44a8f609
libx264: add 'psy_trellis' private option.
...
Deprecate corresponding global option.
2011-08-24 14:31:07 +02:00
Anton Khirnov
93e623c642
libx264: add 'psy_rd' private option.
...
Deprecate corresponding global option.
2011-08-24 14:30:25 +02:00
Anton Khirnov
5c75b2a0b7
libx264: add 'aq_strength' private option.
...
Deprecate corresponding global option.
2011-08-24 14:30:00 +02:00
Anton Khirnov
85254fcb46
libx264: add 'aq_mode' private option.
...
Deprecate corresponding global option.
2011-08-24 14:28:40 +02:00
Anton Khirnov
9d508e4914
libx264: add 'cqp' private option.
...
Deprecate corresponding global option.
2011-08-24 14:28:07 +02:00
Anton Khirnov
d5dc8cc297
libx264: add 'crf' private option.
...
Deprecate corresponding global option.
Ideally all x264 private options should be generated automatically, but
x264 doesn't provide the API for this yet.
2011-08-24 14:26:12 +02:00
Anton Khirnov
8ee18b4bee
lavc: remove vbv_delay option
...
It's broken and serves no purpose as it's a read-only field.
2011-08-24 14:07:39 +02:00
Alberto Delmás
45ecda8554
Windows Media Image decoder (WMVP/WVP2)
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-23 11:18:35 +02:00
Justin Ruggles
3be5a94351
ac3enc: remove outdated TODO comment for apply_channel_coupling()
2011-08-22 12:14:57 -04:00
Anton Khirnov
ae60927aef
libx264: only use ABR mode when the user explicitly set bitrate.
2011-08-22 07:17:39 +02:00
Anton Khirnov
03eff2bf43
libx264: use medium preset by default.
2011-08-22 07:17:38 +02:00
Anton Khirnov
0a593de38a
mp2 encoder: make 128k the default bitrate.
2011-08-22 07:17:38 +02:00
Stefano Sabatini
143d6a3fa7
lavc: add A|E|D flags to "ac" and "ar" options
...
Fix setting of the corresponding AVCodecContext fields via
cmdutils.c:filter_codec_opts().
In particular, fix ffplay -ac and -ar options.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-21 16:06:16 +02:00
Kostya Shishkov
4ba8c521b1
WavPack decoder: implement flush function
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-21 12:54:34 +02:00
Jeff Downs
6581e161c5
h264: fix PCM intra-coded blocks in monochrome case
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-19 16:02:33 +02:00
Jeff Downs
87cf70eb23
h264: correct implicit weight table computation for long ref pics
...
Correct computation of implicit weight tables when referencing pictures
that are marked for long reference.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-19 14:36:52 +02:00
Jeff Downs
29a09eae9a
h264: correct the check for invalid long term frame index in MMCO decode
...
The current check on MMCO parameters prohibits a "max long term frame index
plus 1" of 16 (frame idx of 15) for the "set max long term frame index" MMCO.
Fix this off-by-one error to allow the full range of legal values.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-19 14:36:40 +02:00
Alex Converse
44920d04ba
aac: Only set sample rate and object type from ADTS if output hasn't been configured.
...
Long term it would be nice to support error resilient reconfiguration
but right now setting this every frame does more harm than help.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-18 22:29:41 +02:00
Alex Converse
06d37fede4
aac: Set SBR and PS to unsignalled during headerless and ADTS initialization.
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-18 22:29:41 +02:00
Alex Converse
d8425ed4af
aac: Only output configure if audio was found.
...
Audio found is not triggered on a CCE because a CCE alone has no output.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2011-08-18 22:29:41 +02:00
Dustin Brody
b490f0c2bc
h264: hide reference frame errors unless requested
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-17 20:56:54 -07:00
Ronald S. Bultje
38e06c2969
Move clipd macros to x86util.asm.
...
This allows sharing them between multiple .asm files.
2011-08-17 20:56:06 -07:00
Kostya Shishkov
91e209d720
RV3/4 parser: remove unused variable 'off'
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-17 15:31:40 +02:00
Kostya Shishkov
48ce8b8da7
Use parsers for RealVideo 3/4 to determine correct PTS
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-17 15:00:42 +02:00
Kostya Shishkov
331971116d
rv10/20: tell decoder to use edge emulation
...
This removes out-of-edge motion compensation artifacts (easily spotted green
blocks in avplay, gray blocks in transcoding), for example here:
http://samples.libav.org/samples/real/tv_watching_t1.rm
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-17 14:53:34 +02:00
Anton Khirnov
bca06e77e1
lavc: add avcodec_get_type() for mapping codec_id -> type.
2011-08-16 20:24:20 +02:00
Anton Khirnov
64db1a82d6
lavc: add audio flag to the 'b' option, deprecate 'ab'.
...
Its only reason for its existence was ffmpeg's inability to properly assign
AVOptions to streams. Now this is not a problem anymore, so 'ab' should
go.
2011-08-16 06:20:43 +02:00
Dustin Brody
a3e215cdc9
svq3: propagate codec memory allocation failure in context init
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-15 21:26:34 +02:00
Dave Yeo
cc73511e8e
Fix NASM include directive
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-15 11:24:35 -07:00
Alex Converse
48f7163f13
dsputil_mmx: Honor HAVE_AMD3DNOW
2011-08-15 11:20:08 -07:00
Reimar Döffinger
0e86965514
VC-1: fix reading of custom PAR.
...
Custom PAR num/denum are in 1-256 range.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-15 16:36:58 +02:00
Dustin Brody
2bfdb34c8a
mpeg12: remove repeat-field code disabled since May 2002
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-15 13:03:20 +02:00
Nathan Caldwell
24efdea7fd
aacenc: Fix number of coefficients used in a LFE channel.
...
The spec states:
* Only the lowest 12 spectral coefficients of any LFE may be non-zero
We were using the 12 lowest *bands*.
2011-08-13 19:40:33 -07:00
Nathan Caldwell
51a1d4d94a
aacenc: Fix a segfault with grouped psymodel.
...
10l: Forgot about TYPE_LFE being after TYPE_CPE. Which causes a
segfault when encoding 5.1
2011-08-13 19:37:38 -07:00
Kostya Shishkov
78622ef362
rv34: free+allocate buffer instead of reallocating it to preserve alignment
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-12 13:49:25 -07:00
Ronald S. Bultje
28ca701e0b
h264: add missing brackets.
...
This caused failure of a few fate tests.
2011-08-12 12:32:31 -07:00
Ronald S. Bultje
b2c087871d
Move x86util.asm from libavcodec/ to libavutil/.
...
This allows using it in swscale also.
2011-08-12 11:43:03 -07:00
Ronald S. Bultje
3a39195b1d
Move x86inc.asm to libavutil/.
...
This allows using it in libswscale/ also.
2011-08-12 11:43:02 -07:00
Reinhard Tartler
69c4bee8fa
libx264: Include hint for possible values for configuring libx264
...
The output of the x264 commandline tool contains the most uptodate
description of the possible values for the -preset, -tune and -profile
options.
2011-08-12 14:09:59 +02:00
Kostya Shishkov
b86ab38137
Add weighted motion compensation for RV40 B-frames
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-11 16:07:58 -07:00
Kostya Shishkov
e5ec68699e
RV3/4: calculate B-frame motion weights once per frame
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-11 16:07:23 -07:00
Kostya Shishkov
d241f51e0f
Move RV3/4-specific DSP functions into their own context
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-11 16:07:15 -07:00
Dustin Brody
21d7037234
mjpeg: propagate decode errors from ff_mjpeg_decode_sos and ff_mjpeg_decode_dqt
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-11 16:02:18 -07:00
Dustin Brody
bac3ab13ea
h264: notice memory allocation failure
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-11 15:59:07 -07:00
Justin Ruggles
c766eb1ce1
ac3enc: add macros for option names to make them more understandable.
2011-08-11 11:33:32 -04:00
Justin Ruggles
9542ca9fb7
ac3enc: fix 'channel_coupling' option to actually allow 'auto'.
...
Use 'auto' as the default value.
2011-08-11 11:33:32 -04:00
Mans Rullgard
4a71da0f3a
cavs: fix some crashes with invalid bitstreams
...
This removes all valgrind-reported invalid writes with one
specific test file.
Fixes http://www.ocert.org/advisories/ocert-2011-002.html
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-08-10 22:35:20 +01:00
Justin Ruggles
069083a419
ac3enc: clip coupling coordinates during calculation
...
This is faster than using the clip_coefficients() function. Also,
clipping the coordinates before determining reuse is better since it
will compare coordinates that are closer to their final encoded values.
2011-08-10 17:09:24 -04:00
Justin Ruggles
d271d5b215
Remove incorrect info in documentation of AVCodecContext.bits_per_raw_sample.
...
bits_per_raw_sample is used in video as well, where sample_fmt is not used.
2011-08-10 15:40:52 -04:00
Baptiste Coudurier
1d36fb13b0
lavc: fix parentheses placement in avcodec_open2().
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-10 16:57:33 +02:00
Anton Khirnov
7221139ba0
lavc: make avcodec_init() static on next bump.
...
It's called from avcodec_register() anyway, so there's no reason for it
to be public.
2011-08-10 12:49:57 +02:00
Justin Ruggles
d1d33e0763
ac3enc: remove unneeded #include
2011-08-09 16:44:34 -04:00
Justin Ruggles
fce33f9ead
ac3enc: restructure coupling coordinate reuse calculation
2011-08-09 16:44:34 -04:00
Justin Ruggles
c3d63262fe
ac3enc: allow new coupling coordinates to be sent independently for each
...
channel.
2011-08-09 16:44:34 -04:00
Justin Ruggles
d55ad59a8a
ac3enc: separate exponent bit counting from exponent grouping.
...
Move bit counting to the bit allocation function. Move exponent grouping to
after bit allocation. This will allow for adjustment of bandwidth parameters
during bit allocation without having to do exponent grouping multiple times.
2011-08-09 16:28:18 -04:00
Dustin Brody
12fe759423
h264: propagate error return values for AV_LOG_ERROR-triggering events
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-09 12:29:13 -07:00
Alex Converse
94d47382e0
aac: Don't attempt to output configure an invalid channel configuration.
2011-08-09 12:16:40 -07:00
Kostya Shishkov
7351eb1415
Pretty-print RV3/4 decoder source
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-09 12:06:38 +02:00
Kostya Shishkov
9791c02733
Saner RV1/2 initialisation and RV2 header parsing.
...
Old version was based on lots of guesswork which had different hacks based on
32-bit version field instead of splitting it into major/minor/micro version.
RV2 picture header parser also had a few places where it deviated from binary
decoder.
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-08 17:23:07 -07:00
Baptiste Coudurier
5caa2de19e
libx264: do not set pic quality if no frame is output
...
Avoids uninitialized reads.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-08 14:33:09 +02:00
Baptiste Coudurier
07a227b432
libx264: add preset, tune, profile and fastfirstpass private options
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-08-08 14:33:09 +02:00
Dustin Brody
b2700a5c7c
lavc: fix misspelling in comment
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-05 18:18:38 -07:00
Dustin Brody
680b1852ab
aac: propagate error return values for AV_LOG_ERROR-triggering events
2011-08-05 12:35:49 -07:00
Alex Converse
ad62507f32
h263dec: Fix asserts broken by the elimination of FF_COMMON_FRAME.
2011-08-03 17:56:47 -07:00
Diego Biurrun
fed6c90b68
cosmetics: remove some stray comments from AVCodec declarations
2011-08-03 23:31:45 +02:00
Diego Biurrun
933a6fd5a1
cosmetics: fix indentation/alignment in AVCodec declarations
2011-08-03 23:31:45 +02:00
Måns Rullgård
9a83adaf34
arm: Avoid using the movw instruction needlessly
...
This fixes building for ARM11 without Thumb2.
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-08-03 11:56:58 +03:00
Martin Storsjö
d0a2f0af9d
Move an int64_t down in MpegEncContext
...
This allows using the same arm assembler offsets for both EABI
and the mach-o ABI.
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-08-03 11:56:56 +03:00
Vitor Sessak
18b131de04
dct32: Add SSE2 ASM optimizations
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-02 10:17:29 -07:00
Kostya Shishkov
6f7fe4723b
Correct chroma vector calculation for RealVideo 3.
...
Old version divided it wrong, which resulted in chroma drift (visible on FATE
sample too as dirty trails left by clouds).
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-08-02 08:23:47 -07:00
Luca Barbato
9d39cbf6cf
avpacket: signal possibly corrupted packets
...
Use AV_PKT_FLAG_CORRUPT flag to mark packets that might be incomplete
or have errors. Formats that have a mean to validate their packets
should use this flag to deliver such information instead of silently
dropping the packets.
2011-08-02 02:19:31 +02:00
Dustin Brody
4326f6f525
mpeg4videodec: remove dead code that would have detected erroneous encoding
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-08-01 21:06:48 +02:00
Alex Converse
a6c49f18ab
aac: Remove some suspicious illegal memcpy()s from LTP.
2011-08-01 09:39:33 -07:00
Alex Converse
e11a5fccb2
bink: Eliminate unnecessary shadow declaration.
2011-08-01 09:39:33 -07:00
Dustin Brody
18cb40f074
lavc: Deprecate unused FF_ER_VERY_AGGRESSIVE
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-31 14:53:38 -07:00
Jason Garrett-Glaser
a3bf7b864a
H.264: tweak some other x86 asm for Atom
2011-07-29 12:24:15 -07:00
Dustin Brody
8f9d3f6d9a
s302m: use nondeprecated audio sample format API
...
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2011-07-29 08:47:34 +02:00
Anton Khirnov
ec6402b7c5
lavc: use designated initialisers for all codecs.
...
It's more readable and less prone to breakage.
2011-07-29 08:42:34 +02:00
Mans Rullgard
3ad1684126
x86: cabac: add operand size suffixes missing from 6c32576
...
This fixes build with clang.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-28 18:59:23 -07:00
Dustin Brody
2a11952f45
h263dec: Propagate AV_LOG_ERRORs from slice decoding through frame decoding with sufficient error recognition
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-28 15:23:07 -07:00
Mans Rullgard
f5f004bc5a
x86: cabac: don't load/store context values in asm
...
Inspection of compiled code shows gcc handles these fine on its own.
Benchmarking also shows no measurable speed difference.
Removing the remaining cases in get_cabac_bypass_sign_x86() does
cause more substantial changes to the compiled code with uncertain
impact.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-28 22:25:21 +01:00
Jason Garrett-Glaser
6c32576548
H.264: optimize CABAC x86 asm for Atom
2011-07-28 13:06:13 -07:00
Ronald S. Bultje
8dcf518430
vp3/theora: flush after seek.
2011-07-28 12:17:26 -07:00
Mans Rullgard
ca6a904656
ppc: remove redundant setting of Altivec IDCT
...
This is already set by dsputil_init_ppc() and is best done in only
one place.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 20:14:12 +01:00
Mans Rullgard
c3027b4d2f
mpegvideo: initialise DSPContext in ff_dct_common_init()
...
The functions and tables initialised in this function rely on an
initialised DSPContext. Make sure they always have one.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 20:14:12 +01:00
Justin Ruggles
093ee8e199
cosmetics: reindent
2011-07-27 11:51:46 -04:00
Justin Ruggles
1bca72e1bd
eac3enc: support writing of basic mixing and info metadata
2011-07-27 11:51:46 -04:00
Mans Rullgard
e72f3d10f6
dnxhdenc: fix declarations in for loops
...
Apparently the gcc warning doesn't trigger on these.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 16:36:02 +01:00
Mans Rullgard
c358a0364e
dsputil: remove stale bink prototypes and comments
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 16:05:49 +01:00
Mans Rullgard
1b3539d453
dsputil: move a bink-only function to binkdsp
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 16:05:49 +01:00
Mans Rullgard
cbd58a872d
dsputil: remove some unused functions
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 16:05:49 +01:00
Kostya Shishkov
2968bedf12
bink: make IDCT take 32-bit input
...
Since IDCT transforming 32-bit input to 8-bit output is unusual and unpractical
for most codecs, move Bink IDCT into separate context. Get rid of an additional
permutation table while at it since SIMD support for Bink IDCT is unlikely to
be implemented in foreseeable future.
Quantisation tables also have to change type to signed for proper
dequantisation of DCT coefficients.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-27 14:39:56 +01:00
Diego Biurrun
9b3139ebca
dctref: make sure function declarations match between .c and .h file
2011-07-27 00:26:13 +02:00
Mans Rullgard
da4c7cce21
x86: fix build with gcc 4.7
...
The upcoming gcc 4.7 has more advanced constant propagation
resulting some inline asm operands becoming constants and thus
emitted as literals, sometimes in contexts where this results
in invalid instructions.
This patch changes the constraints of the relevant operands
to "rm" thus forcing a valid type. While obviously suboptimal,
this is what older gcc versions already did, and there is no
change to the code generated with these.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-26 22:17:43 +01:00
Michael Niedermayer
8c0fa61a97
jpegdec: actually search for and parse RSTn
...
Fixes decoding of MJPEG files produced by some UVC Logitec web cameras,
such as "Notebook Pro" and "HD C910".
References:
http://trac.videolan.org/vlc/ticket/4215
http://ffmpeg.org/trac/ffmpeg/ticket/267
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Reviewed-by: Kostya <kostya.shishkov@gmail.com>
(cherry picked from commit 7b8ed831eb
)
2011-07-23 19:19:13 +02:00
Mans Rullgard
b4cfb8254e
dnxhddec: avoid a branch in 10-bit decode_dct_block()
...
The minimum weight value is 32 so this test can be skipped for the
10-bit case. Overall speedup 3-4%.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-22 23:39:31 +01:00
Daniel Kang
406fbd24dc
H.264: Add optimizations to predict x86 assembly.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-22 14:54:33 -07:00
Kostya Shishkov
c2d23309ef
add Flash Screen Video 2 decoder
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-22 09:12:30 -07:00
Mans Rullgard
bb32fded36
dnxhddec: optimise dnxhd_decode_dct_block()
...
Template the function for 8/10-bit and use lowlevel bitstream
macros.
6% faster overall on i7 gcc 4.5.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 23:14:37 +01:00
Justin Ruggles
be7bd626c4
eac3enc: use different numbers of blocks per frame to allow higher bitrates
2011-07-21 14:57:10 -04:00
Joseph Artsimovich
5ab21439fd
dnxhd: 10-bit support
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 18:44:40 +01:00
Mans Rullgard
a617c6aaa3
dsputil: update per-arch init funcs for non-h264 high bit depth
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 18:10:58 +01:00
Mans Rullgard
874f1a901d
dsputil: template get_pixels() for different bit depths
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 18:10:58 +01:00
Mans Rullgard
5cc2600964
dsputil: create 16/32-bit dctcoef versions of some functions
...
High bitdepth H.264 needs 32-bit transform coefficients, whereas
dnxhd does not. This creates a conflict with the templated
functions operating on DCTELEM data. This patch adds a field
allowing the caller to choose the element size in dsputil_init()
and adds the required functions.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 18:10:58 +01:00
Mans Rullgard
0a72533e98
jfdctint: add 10-bit version
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 18:10:58 +01:00
Thierry Foucu
c4ab43ff3c
mpeg4: add Mpeg4 Profiles names.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-21 09:34:11 -07:00
Thierry Foucu
0637e50579
mpeg4: decode Level Profile for MPEG4 Part 2.
...
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
2011-07-21 09:33:34 -07:00
Stefano Sabatini
09e8163625
imgconvert: remove unused glue and xglue macros
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2011-07-21 17:55:27 +02:00
Diego Biurrun
e5985185d2
rv30: return AVERROR(EINVAL) instead of EINVAL
...
On some platforms EINVAL could be positive, ensure we return negative values.
2011-07-21 14:26:06 +02:00
Mans Rullgard
2cc4f3b21f
simple_idct: whitespace cosmetics
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 12:49:51 +01:00
Mans Rullgard
a402f10959
simple_idct: make repeated code a macro
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 12:49:51 +01:00
Mans Rullgard
7df701a192
dsputil: remove huge #if 0 block
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 11:04:56 +01:00
Mans Rullgard
e7bcc5baf7
simple_idct: change 10-bit add/put stride from pixels to bytes
...
This matches other dsputil functions and simplifies calls.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 09:26:37 +01:00
Mans Rullgard
a82beafd64
dsputil: allow 9/10-bit functions for non-h264 codecs
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 09:26:26 +01:00
Joseph Artsimovich
42c27f2eca
dnxhd: rename some data tables
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 03:30:29 +01:00
Mans Rullgard
b049978397
dnxhdenc: remove inline from function only called through pointer
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 02:13:03 +01:00
Mans Rullgard
1073823984
dnxhdenc: whitespace cosmetics
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-21 02:12:47 +01:00
Diego Biurrun
79a9aab56f
Remove unused and non-compiling vestigial g729 decoder
2011-07-20 20:47:07 +02:00
Diego Biurrun
a005174b25
Remove unused code under G729_BITEXACT #ifdef.
...
G729_BITEXACT is never set, so the code is all dead code.
2011-07-20 20:47:07 +02:00
Ronald S. Bultje
80469eafb7
mpegvideo: fix invalid picture unreferencing.
...
Mpegvideo would free frames as soon as they're not the next or prev
picture. This is fine for a single-threading model, but fails miserably
in a system where pictures can be referenced (as e.g. last/prev pic)
in other threads. Keeping track of ownership of pictures keeps image
references (e.g. motion vectors, or the reference of a motion vector)
alive as long as the picture data itself is alive.
This also happens to fix make THREADS=[3-16] fate-vsynth[12]-error.
2011-07-20 10:26:49 -07:00
Alex Converse
e4b50572b7
dsputil: Remove extra blank line at end.
2011-07-20 10:15:57 -07:00
Alex Converse
d9a9f50a36
dsputil: Replace a LONG_MAX check with HAVE_FAST_64BIT.
2011-07-20 10:15:57 -07:00
Mans Rullgard
e7a972e113
simple_idct: add 10-bit version
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-20 17:49:48 +01:00
Mans Rullgard
7b4ee3a21d
Remove h264_lowres_idct_put/add functions
...
Use of these has been broken ever since the h264 idct was changed
to always use transposed inputs. Furthermore, they were only
ever used if some *other* non-default idct was requested.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-20 16:13:04 +01:00
Mans Rullgard
89cc8a316d
Remove snow/dwt test program
...
This test program so full of programming errors it is impossible
to make sense of it.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-20 14:54:24 +01:00
Diego Biurrun
1b4a17094e
h264: remove some disabled code
2011-07-20 15:04:51 +02:00
Mans Rullgard
e23a05ab06
Fix incorrect max_lowres values
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-20 10:19:36 +01:00
Justin Ruggles
953302656a
cosmetics: indentation
2011-07-19 14:15:00 -04:00
Justin Ruggles
08a747afb9
eac3enc: use frame exponent strategy when applicable.
...
This checks if the set of selected exponent strategies for all blocks in a
channel are in the frame exponent strategy table, and if so, writes the
table index instead of each strategy. This saves up to 7 bits per channel per
frame, so the overall effect on quality is small.
2011-07-19 14:15:00 -04:00
Justin Ruggles
31b69928e5
cosmetics: rename eac3dec_data.c/h to eac3_data.c/h since the tables will also
...
be used in the E-AC-3 encoder.
2011-07-19 14:15:00 -04:00
Mans Rullgard
29b42c66f7
dsputil: fix ff_check_alignment()
...
The change to LOCAL_ALIGNED means the declared object must be an
array and the subsequent test should not use the & operator.
Noticed by Uoti Urpala.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-19 17:44:35 +01:00
Mans Rullgard
3e9409b1d0
simple_idct: simplify some ifdeffery
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-18 20:57:27 +01:00
Mans Rullgard
dbb5ee8ea7
simple_idct: remove code for DCTELEM != int16
...
DCTELEM can never be changed to anything else, too much code
depends on it.
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-18 20:57:22 +01:00
Mans Rullgard
3f5dcde7e6
Remove VLAs in ff_amrwb_lsp2lpc()
...
Signed-off-by: Mans Rullgard <mans@mansr.com>
2011-07-18 18:48:13 +01:00
Diego Biurrun
e463f0e979
dsputil: restore mistakenly removed hunk of disabled code
...
This particular part serves to document the optimized code variant.
2011-07-18 18:04:56 +02:00
Diego Biurrun
65083b4911
dsputil: remove disabled code
2011-07-18 11:48:35 +02:00
Diego Biurrun
c99c0e2625
tta: remove disabled code
2011-07-18 01:47:50 +02:00
Martin Storsjö
8f62ef0f95
x86: Use LOCAL_ALIGNED in mpegvideo_mmx_template
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2011-07-18 00:10:45 +03:00
Diego Biurrun
e0ae2174db
simple_idct: remove disabled code
2011-07-17 17:32:37 +02:00
Diego Biurrun
473e547e80
motion_est: remove disabled code
2011-07-17 17:32:37 +02:00
Diego Biurrun
9cab9421ce
vc1: remove disabled code
2011-07-17 17:32:37 +02:00
Diego Biurrun
fd065d3e79
cabac: Move code only used in the cabac test program to cabac.c.
2011-07-17 12:56:42 +02:00