Justin Ruggles [Sat, 10 Sep 2011 18:37:09 +0000 (14:37 -0400)]
adpcm: move codec-specific variable declarations to the sections for the corresponding codecs.
Justin Ruggles [Sat, 10 Sep 2011 18:24:00 +0000 (14:24 -0400)]
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.
Justin Ruggles [Sat, 10 Sep 2011 18:21:39 +0000 (14:21 -0400)]
adpcm: simplify reading of Funcom ISS frame header.
Justin Ruggles [Sat, 10 Sep 2011 17:54:02 +0000 (13:54 -0400)]
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.
Justin Ruggles [Sat, 10 Sep 2011 17:52:33 +0000 (13:52 -0400)]
adpcm: simplify reading of IMA DK4 frame header.
Justin Ruggles [Sat, 10 Sep 2011 03:18:03 +0000 (23:18 -0400)]
adpcm_ms: clean up reading of predictor coefficients
Justin Ruggles [Fri, 9 Sep 2011 22:43:19 +0000 (18:43 -0400)]
adpcm_4xm: process planar packets sequentially rather than simultaneously.
Also properly clip the right channel step_index.
Justin Ruggles [Fri, 9 Sep 2011 20:26:11 +0000 (16:26 -0400)]
adpcm_ima_wav: process channel-interleaved blocks sequentially rather than simultaneously.
Speeds up the ADPCM IMA WAV decoder by 15-20% overall.
Justin Ruggles [Fri, 9 Sep 2011 18:57:36 +0000 (14:57 -0400)]
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.
Justin Ruggles [Thu, 8 Sep 2011 22:57:56 +0000 (18:57 -0400)]
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.
Justin Ruggles [Thu, 8 Sep 2011 20:03:44 +0000 (16:03 -0400)]
adpcm: simplify and speed up several ADPCM decoders.
Justin Ruggles [Thu, 8 Sep 2011 03:08:57 +0000 (23:08 -0400)]
adpcm: pretty-print tables
Alex Converse [Thu, 29 Sep 2011 00:50:51 +0000 (17:50 -0700)]
prores: Handle 0 or fewer bits left
show_bits() is undefined when the number of bits is less than or equal to
zero.
Alex Converse [Wed, 28 Sep 2011 22:43:24 +0000 (15:43 -0700)]
mpeg probe: check the 2/4-bit synchronization value found after a pack_start_code.
Mans Rullgard [Wed, 28 Sep 2011 20:00:35 +0000 (21:00 +0100)]
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>
Stefano Sabatini [Sat, 13 Aug 2011 14:30:44 +0000 (16:30 +0200)]
vf_unsharp: set default chroma size value to 5x5
The previous default value 0x0 was not good, since it is not even
valid.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Fri, 12 Aug 2011 06:42:35 +0000 (08:42 +0200)]
vf_unsharp: fix out-of-buffer read
In apply_unsharp(), when y is >= height, prevent out-of-buffer reading
from src, read from the last buffer line in src2 instead.
The check was implemented in the original unsharp libmpcodecs code and
lost in the port.
This also fixes output discrepancy between the two filters.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Alex Converse [Tue, 27 Sep 2011 17:24:28 +0000 (10:24 -0700)]
avconv: Reformat s16 volume adjustment.
Mans Rullgard [Wed, 28 Sep 2011 13:34:54 +0000 (14:34 +0100)]
ARM: NEON optimised vector_fmac_scalar()
Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard [Wed, 28 Sep 2011 13:34:04 +0000 (14:34 +0100)]
dca: use vector_fmac_scalar from dsputil
Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard [Wed, 28 Sep 2011 13:33:21 +0000 (14:33 +0100)]
dsputil: add vector_fmac_scalar()
Signed-off-by: Mans Rullgard <mans@mansr.com>
Kieran Kunhya [Wed, 28 Sep 2011 12:46:10 +0000 (07:46 -0500)]
latmenc: Fix private options
Signed-off-by: Martin Storsjö <martin@martin.st>
Stefano Sabatini [Fri, 12 Aug 2011 07:30:17 +0000 (09:30 +0200)]
vf_unsharp: store hsub/vsub in the filter context
Also drop obfuscating CHROMA_WIDTH/HEIGHT macros.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Fri, 12 Aug 2011 07:22:31 +0000 (09:22 +0200)]
vf_unsharp: adopt a more natural order of params in apply_unsharp()
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Fri, 12 Aug 2011 06:47:09 +0000 (08:47 +0200)]
vf_unsharp: rename method "unsharpen" to "apply_unsharp"
More consistent with the original libmpcodecs code, and the name
"unsharpen" was confusing.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Michael Niedermayer [Fri, 26 Aug 2011 23:49:55 +0000 (01:49 +0200)]
vf_scale: apply the same transform to the aspect during init that is applied per frame
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Mon, 4 Jul 2011 09:15:14 +0000 (11:15 +0200)]
vf_pad: fix "vsub" variable value computation
It was shifting 2 rather than 1, +10l.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Sat, 2 Jul 2011 15:27:31 +0000 (17:27 +0200)]
vf_scale: add a "sar" variable
Also create a "dar" alias for the "a" variable, for avoiding possible
confusion between dar/sar.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Sun, 19 Jun 2011 20:07:18 +0000 (22:07 +0200)]
lavfi: fix realloc size computation in avfilter_add_format()
Replace sizeof((*avff)->formats)
with sizeof(*(*avff)->formats)
as the size of the array element is given by the pointed element
rather than by its pointer.
In particular fix computation with the pending patch when
sizeof(int64_t) != sizeof(int64_t *).
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Fri, 17 Jun 2011 23:52:40 +0000 (01:52 +0200)]
vsrc_color: use internal timebase
Avoid timescale conversion, simplify.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Sat, 11 Jun 2011 09:41:49 +0000 (11:41 +0200)]
lavfi: fix signature for avfilter_graph_parse() and avfilter_graph_config()
Require "void *" rather than "AVClass *" for the log context type.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Sat, 11 Jun 2011 12:33:09 +0000 (14:33 +0200)]
graphparser: prefer void * over AVClass * for log contexts
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Sat, 11 Jun 2011 09:15:40 +0000 (11:15 +0200)]
avfiltergraph: use meaningful error codes
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Alex Converse [Tue, 27 Sep 2011 22:27:18 +0000 (15:27 -0700)]
avconv: Initialize return value for codec copy path.
Mans Rullgard [Wed, 28 Sep 2011 01:13:31 +0000 (02:13 +0100)]
fate: use 'run' helper for seek-test
This is simpler, and the actual seek-test command is printed with V=1.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard [Wed, 28 Sep 2011 01:11:14 +0000 (02:11 +0100)]
fate: remove seek-mpeg2reuse test
The input file for this test is no longer generated.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Michael Niedermayer [Thu, 28 Jul 2011 12:59:54 +0000 (14:59 +0200)]
Fix memory (re)allocation in matroskadec.c, related to MSVR-11-0080.
Whitespace of the patch cleaned up by Aurel
Some of the issues have been reported by Steve Manzuik / Microsoft Vulnerability Research (MSVR)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
(cherry picked from commit
956c901c68eff78288f40e3c8f41ee2fa081d4a8)
Further suggestions from Kostya <kostya.shishkov@gmail.com> have been
implemented by Reinhard Tartler <siretart@tauware.de>
Signed-off-by: Reinhard Tartler <siretart@tauware.de>
Alex Converse [Tue, 27 Sep 2011 17:15:07 +0000 (10:15 -0700)]
avconv: Fix volume adjustment for non-s16 sample formats
Alex Converse [Tue, 27 Sep 2011 17:21:39 +0000 (10:21 -0700)]
avconv: Make samples void*.
Different sample formats are different sizes.
Alex Converse [Tue, 27 Sep 2011 17:20:23 +0000 (10:20 -0700)]
avconv: Use the size of the decode sample format when allocating the audio samples buffer.
Anton Khirnov [Fri, 23 Sep 2011 14:17:42 +0000 (16:17 +0200)]
avconv: use different variables for decoded and filtered frame.
Makes the code less obfuscated and fixes encoding one video stream to
several outputs.
Also use avcodec_alloc_frame() instead of allocating AVFrame on stack.
Breaks me_threshold in avconv, as motion vectors aren't passed through
lavfi. They could be copied manually, but I don't think this misfeature
is useful enough to justify ugly hacks.
Anton Khirnov [Tue, 27 Sep 2011 08:37:22 +0000 (10:37 +0200)]
avconv: add support for copying attachments.
Anton Khirnov [Sat, 30 Jul 2011 11:37:36 +0000 (13:37 +0200)]
matroskaenc: write attachments.
Anton Khirnov [Tue, 27 Sep 2011 08:36:53 +0000 (10:36 +0200)]
matroskadec: export mimetype of attachments as metadata.
Anton Khirnov [Tue, 27 Sep 2011 05:42:29 +0000 (07:42 +0200)]
avconv: factorize common code from new_*_stream()
Anton Khirnov [Mon, 12 Sep 2011 19:03:52 +0000 (21:03 +0200)]
doc/avconv: expand documentation for some options.
Anton Khirnov [Mon, 12 Sep 2011 18:40:29 +0000 (20:40 +0200)]
doc/avconv: document -timelimit.
Mans Rullgard [Sun, 17 Jul 2011 10:55:08 +0000 (11:55 +0100)]
fate: allow testing with libavfilter disabled
This declares dependencies to skip tests using libavfilter
when it is disabled.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Jason Garrett-Glaser [Mon, 26 Sep 2011 21:44:47 +0000 (14:44 -0700)]
x86: XOP/FMA4 CPU detection support
Justin Ruggles [Mon, 12 Sep 2011 14:28:56 +0000 (10:28 -0400)]
ws_snd: misc cosmetic clean-ups
Justin Ruggles [Mon, 12 Sep 2011 14:22:31 +0000 (10:22 -0400)]
ws_snd: remove the 2-bit ADPCM table and just subtract 2 instead.
Justin Ruggles [Mon, 12 Sep 2011 14:04:37 +0000 (10:04 -0400)]
ws_snd: use memcpy() and memset() instead of loops
Justin Ruggles [Mon, 12 Sep 2011 13:59:13 +0000 (09:59 -0400)]
ws_snd: use samples pointer for loop termination instead of a separate
iterator variable.
Justin Ruggles [Mon, 12 Sep 2011 13:44:21 +0000 (09:44 -0400)]
ws_snd: make sure number of channels is 1
Justin Ruggles [Mon, 12 Sep 2011 13:41:06 +0000 (09:41 -0400)]
ws_snd: add some checks to prevent buffer overread or overwrite.
Justin Ruggles [Mon, 12 Sep 2011 12:55:43 +0000 (08:55 -0400)]
ws_snd: decode to AV_SAMPLE_FMT_U8 instead of S16.
8-bit unsigned is the native sample format.
Justin Ruggles [Tue, 13 Sep 2011 19:13:44 +0000 (15:13 -0400)]
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.
Rafaël Carré [Mon, 26 Sep 2011 15:56:49 +0000 (11:56 -0400)]
rtp: Simplify ff_rtp_get_payload_type
Signed-off-by: Martin Storsjö <martin@martin.st>
Rafaël Carré [Mon, 26 Sep 2011 15:56:48 +0000 (11:56 -0400)]
rtpenc: Add a payload type private option
Specifying the payload type is useful when the type number has
already been negotiated before creating the stream, for example
in SIP protocol.
Signed-off-by: Martin Storsjö <martin@martin.st>
Rafaël Carré [Mon, 26 Sep 2011 15:56:47 +0000 (11:56 -0400)]
rtp: Correct ff_rtp_get_payload_type documentation
Since
0c378ea1f, it can't fail anymore.
Signed-off-by: Martin Storsjö <martin@martin.st>
Anton Khirnov [Tue, 13 Sep 2011 05:31:21 +0000 (07:31 +0200)]
avconv: replace all fprintf() by av_log().
Deprecate -v option, now only -loglevel is enough.
Anton Khirnov [Mon, 12 Sep 2011 19:51:02 +0000 (21:51 +0200)]
avconv: change av_log verbosity from ERROR to FATAL for fatal errors.
Anton Khirnov [Mon, 26 Sep 2011 06:39:43 +0000 (08:39 +0200)]
cmdutils: replace fprintf() by av_log()
This way, all messages can be easily disabled with -loglevel.
Behavior change -- configuration is printed with AV_LOG_VERBOSE, so it's
not shown by default.
Anton Khirnov [Mon, 26 Sep 2011 06:15:37 +0000 (08:15 +0200)]
avtools: parse loglevel before all the other options.
This way it can be applied to cmdutils too -- e.g. showing the banner
and printing startup messages.
Nicolas George [Mon, 26 Sep 2011 11:19:05 +0000 (13:19 +0200)]
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>
Justin Ruggles [Sat, 24 Sep 2011 01:43:43 +0000 (21:43 -0400)]
sol: return error if av_get_packet() fails.
This prevents sending a packet with data=NULL size=AVERROR_EOF.
Justin Ruggles [Mon, 12 Sep 2011 16:18:00 +0000 (12:18 -0400)]
cosmetics: reindent and pretty-print
Justin Ruggles [Mon, 12 Sep 2011 16:13:05 +0000 (12:13 -0400)]
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.
Mans Rullgard [Sun, 25 Sep 2011 17:27:47 +0000 (18:27 +0100)]
ppc: fix some pointer to integer casts
Use uintptr_t instead of plain int. Without this change, the
comparisons will come out wrong for pointers in certain ranges.
Fixes random failures on ppc64. Also fixes some compiler warnings.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard [Sun, 25 Sep 2011 11:53:44 +0000 (12:53 +0100)]
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>
Justin Ruggles [Mon, 12 Sep 2011 00:17:54 +0000 (20:17 -0400)]
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/
Mans Rullgard [Sun, 17 Jul 2011 15:02:33 +0000 (16:02 +0100)]
lavf: do not set codec_tag for rawvideo
If the demuxer did not set a codec_tag, there is none and
inventing one makes no sense. This change stops the rawvideo
"decoder" over-writing user-supplied pixfmt with one derived
from the codec_tag. The pixfmt-codec_tag-pixfmt round-trip
is lossy since several pixfmts map to the same codec_tag.
This fixes fate-lavf-pixfmt with avfilter disabled.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Laurent Aimar [Sat, 24 Sep 2011 14:16:39 +0000 (16:16 +0200)]
h264: check for out of bounds reads in ff_h264_decode_extradata().
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Michael Niedermayer [Sat, 24 Sep 2011 15:57:31 +0000 (18:57 +0300)]
flvdec: Check for overflow before allocating arrays
On allocation, the array length is multiplied by sizeof(int64_t),
this prevents the multiplication from overflowing.
Signed-off-by: Martin Storsjö <martin@martin.st>
Anton Khirnov [Fri, 23 Sep 2011 12:40:29 +0000 (14:40 +0200)]
avconv: use correct output stream index when checking max_frames
Anton Khirnov [Fri, 23 Sep 2011 10:46:05 +0000 (12:46 +0200)]
avconv: remove fake coded_frame on streamcopy hack
Back in 2002 when it was added, some muxers used information from
coded_frame. It's not true anymore, so this hack is useless and can be
removed.
Laurent Aimar [Sat, 24 Sep 2011 14:16:38 +0000 (16:16 +0200)]
flvdec: Fix invalid pointer deferences when parsing index
Signed-off-by: Martin Storsjö <martin@martin.st>
Sean McGovern [Sat, 17 Sep 2011 04:36:37 +0000 (00:36 -0400)]
configure: disable hardware capabilities ELF section with suncc on Solaris x86
When using suncc to build, the Solaris linker will mark
an executable with each instruction set encountered by
the Solaris assembler. As our libraries contain their own
guards for processor-specific code, instead suppress
generation of the HWCAPS ELF section on Solaris x86 only.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Diego Biurrun [Fri, 23 Sep 2011 19:11:15 +0000 (21:11 +0200)]
Use explicit struct initializers for AVCodec declarations.
Diego Biurrun [Fri, 23 Sep 2011 18:50:11 +0000 (20:50 +0200)]
Use explicit struct initializers for AVOutputFormat/AVInputFormat declarations.
Justin Ruggles [Thu, 8 Sep 2011 02:52:06 +0000 (22:52 -0400)]
adpcmenc: Set bits_per_coded_sample
Baptiste Coudurier [Thu, 8 Sep 2011 02:27:03 +0000 (22:27 -0400)]
adpcmenc: fix QT IMA ADPCM encoder
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Baptiste Coudurier [Sun, 8 May 2011 11:13:17 +0000 (13:13 +0200)]
adpcmdec: Fix QT IMA ADPCM decoder
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Peter Ross [Sat, 23 Apr 2011 12:08:48 +0000 (22:08 +1000)]
permit decoding of multichannel ADPCM_EA_XAS
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Reimar Döffinger [Thu, 8 Sep 2011 02:14:07 +0000 (22:14 -0400)]
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
701d0eb185192542c4a17f296e39e37cedf7abc6
Sean McGovern [Tue, 20 Sep 2011 01:32:09 +0000 (21:32 -0400)]
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>
Alex Converse [Fri, 23 Sep 2011 23:28:23 +0000 (16:28 -0700)]
mpegps: Handle buffer exhaustion when reading packets.
Rafaël Carré [Fri, 23 Sep 2011 19:47:56 +0000 (15:47 -0400)]
rtp: factorize dynamic payload type fallback
Move the identical code in rtp_write_header() and
ff_sdp_write_media() inside ff_rtp_get_payload_type()
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Martin Storsjö [Wed, 21 Sep 2011 13:51:13 +0000 (16:51 +0300)]
flvdec: Ignore the index if it's from a creator known to be different
Signed-off-by: Martin Storsjö <martin@martin.st>
Janne Grunau [Wed, 21 Sep 2011 12:20:20 +0000 (14:20 +0200)]
cmdutils: move grow_array out of #if CONFIG_AVFILTER
fixes programs linking with --disable-avfilter
Anton Khirnov [Thu, 22 Sep 2011 09:10:00 +0000 (11:10 +0200)]
avconv: actually set InputFile.rate_emu
Luca Barbato [Fri, 16 Sep 2011 18:06:55 +0000 (20:06 +0200)]
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
Kieran Kunhya [Thu, 22 Sep 2011 23:21:05 +0000 (18:21 -0500)]
Fix unnecessary shift with 9/10bit vertical scaling
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Thu, 22 Sep 2011 22:10:29 +0000 (00:10 +0200)]
prores: mark prores as intra-only in libavformat/utils.c:is_intra_only()
Diego Biurrun [Thu, 22 Sep 2011 21:51:07 +0000 (23:51 +0200)]
prores: return more meaningful error values
Diego Biurrun [Thu, 22 Sep 2011 21:51:06 +0000 (23:51 +0200)]
prores: improve error message wording
Diego Biurrun [Thu, 22 Sep 2011 21:51:05 +0000 (23:51 +0200)]
prores: cosmetics: prettyprinting, drop useless parentheses
Diego Biurrun [Thu, 22 Sep 2011 21:51:04 +0000 (23:51 +0200)]
prores: lowercase AVCodec name entry
All other codecs use lowercase names in that field.
Janne Grunau [Tue, 6 Sep 2011 20:08:29 +0000 (22:08 +0200)]
Add LATM demuxer
This is a raw demuxer for the AAC LATM decoder and thus limited to
single stream LOAS.
Justin Ruggles [Wed, 7 Sep 2011 19:29:53 +0000 (15:29 -0400)]
avplay: flush audio decoder with empty packets at EOF if the decoder has
CODEC_CAP_DELAY set.