Justin Ruggles [Sun, 25 Sep 2011 16:46:54 +0000 (12:46 -0400)]
mp3on4: fix the output channel order
Justin Ruggles [Sun, 25 Sep 2011 16:30:16 +0000 (12:30 -0400)]
mp3on4: allocate temp buffer with av_malloc() instead of on the stack.
Avoids allocating unnecessary memory and ensures proper alignment.
Justin Ruggles [Sun, 25 Sep 2011 16:16:34 +0000 (12:16 -0400)]
mp3on4: copy MPADSPContext from first context to all contexts.
Fixes segfault when decoding multi-channel MP3onMP4 files.
Justin Ruggles [Mon, 10 Oct 2011 04:43:08 +0000 (00:43 -0400)]
fmtconvert: port float_to_int16_interleave() 2-channel x86 inline asm to yasm
Justin Ruggles [Mon, 10 Oct 2011 03:52:03 +0000 (23:52 -0400)]
fmtconvert: port int32_to_float_fmul_scalar() x86 inline asm to yasm
Justin Ruggles [Mon, 10 Oct 2011 00:01:22 +0000 (20:01 -0400)]
fmtconvert: check compile-time x86 instruction set flags
Justin Ruggles [Sun, 9 Oct 2011 23:12:09 +0000 (19:12 -0400)]
fmtconvert: port float_to_int16() x86 inline asm to yasm
Justin Ruggles [Sun, 9 Oct 2011 20:30:11 +0000 (16:30 -0400)]
fmtconvert: fix and extend documentation for float_interleave()
Justin Ruggles [Thu, 20 Oct 2011 19:08:48 +0000 (15:08 -0400)]
flvenc: store delay and last_ts per-stream.
Mans Rullgard [Fri, 21 Oct 2011 11:34:08 +0000 (12:34 +0100)]
h264: fix ppc/altivec build
Signed-off-by: Mans Rullgard <mans@mansr.com>
Jean First [Fri, 30 Sep 2011 07:42:45 +0000 (09:42 +0200)]
Enable multithreding when decoding with libopenjpeg
Enable multithreding when decoding with libopenjpeg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Ronald S. Bultje [Fri, 21 Oct 2011 06:36:23 +0000 (23:36 -0700)]
h264: mark some MC functions with av_always_inline instead of inline.
This actually causes them to be inlined, leading to a significant
speedup (1-1.5% in my measurements).
Ronald S. Bultje [Fri, 21 Oct 2011 07:01:16 +0000 (00:01 -0700)]
H264: have hl_motion() and its callees take a chroma_idc argument.
Ronald S. Bultje [Fri, 21 Oct 2011 07:00:39 +0000 (00:00 -0700)]
H264: change weight/biweight functions to take a height argument.
Neon parts by Mans Rullgard <mans@mansr.com>.
Ronald S. Bultje [Wed, 12 Oct 2011 15:55:37 +0000 (08:55 -0700)]
Support for lossless and inter H264 4:2:2.
Baptiste Coudurier [Tue, 16 Aug 2011 15:05:44 +0000 (17:05 +0200)]
h264: 4:2:2 intra decoding support
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Ronald S. Bultje <rsbultje@gmail.com>
Ronald S. Bultje [Fri, 21 Oct 2011 07:38:04 +0000 (00:38 -0700)]
sws/pixfmt/pixdesc: add support for yuv420p9le/be.
Ronald S. Bultje [Fri, 21 Oct 2011 07:21:31 +0000 (00:21 -0700)]
Revert
d1d421cbc0d13b08535f7fc08d179572ee352072: change to fate-lavfi-crop_scale.
Ronald S. Bultje [Tue, 18 Oct 2011 00:10:16 +0000 (17:10 -0700)]
vp8: fix up handling of segmentation_maps in reference frames.
Associate segmentation_map[] with reference frame, rather than
decoding instance. This fixes cases where the map would be free()'ed
on e.g. a size change in one thread, whereas the other thread was
still accessing it. Also, it fixes cases where threads overwrite data
that is still being referenced by the previous thread, who thinks that
it's part of the frame previously decoded by the next thread.
Ronald S. Bultje [Thu, 20 Oct 2011 02:56:56 +0000 (19:56 -0700)]
swscale: prevent overflow in coefficient calculation.
Anton Khirnov [Mon, 17 Oct 2011 08:13:16 +0000 (10:13 +0200)]
lavc: hide private symbols.
Overhead as reported by rbelf-size goes from 90860 to 20204.
Anton Khirnov [Mon, 17 Oct 2011 18:08:02 +0000 (20:08 +0200)]
lavc: deprecate img_get_alpha_info().
It's never been touched or used in any way since it was added in 2003
and only works for PIX_FMT_PAL8, which makes me conclude that nobody's
ever used it.
Anton Khirnov [Mon, 17 Oct 2011 08:12:51 +0000 (10:12 +0200)]
lavc: use avpriv_ prefix for ff_toupper4.
It's used in lavf.
Anton Khirnov [Mon, 17 Oct 2011 08:10:42 +0000 (10:10 +0200)]
lavc: use avpriv_ prefix for ff_copy_bits and align_put_bits.
They are used in lavf.
Anton Khirnov [Mon, 17 Oct 2011 08:04:12 +0000 (10:04 +0200)]
lavc: use avpriv_ prefix for ff_ac3_parse_header.
It's used in lavf.
Anton Khirnov [Mon, 17 Oct 2011 07:59:31 +0000 (09:59 +0200)]
lavc: use avpriv_ prefix for ff_frame_rate_tab.
It's used in lavf.
Anton Khirnov [Mon, 17 Oct 2011 07:51:55 +0000 (09:51 +0200)]
lavc: rename ff_find_start_code to avpriv_mpv_find_start_code
It's used in lavf.
Anton Khirnov [Mon, 17 Oct 2011 07:45:27 +0000 (09:45 +0200)]
lavc: use avpriv_ prefix for ff_split_xiph_headers.
It's used in lavf.
Anton Khirnov [Mon, 17 Oct 2011 07:45:27 +0000 (09:45 +0200)]
lavc: use avpriv_ prefix for ff_dirac_parse_sequence_header.
It's used in lavf.
Anton Khirnov [Mon, 17 Oct 2011 07:28:53 +0000 (09:28 +0200)]
lavc: use avpriv_ prefix for some dv symbols used in lavf.
Specifically, ff_dv_frame_profile and ff_dv_codec_profile.
Anton Khirnov [Mon, 17 Oct 2011 07:28:53 +0000 (09:28 +0200)]
lavc: use avpriv_ prefix for some flac symbols used in lavf.
Specifically, ff_flac_parse_streaminfo, ff_flac_is_extradata_valid and
ff_flac_parse_block_header
Anton Khirnov [Mon, 17 Oct 2011 07:28:53 +0000 (09:28 +0200)]
lavc: use avpriv_ prefix for some mpeg4audio symbols used in lavf.
Specifically, ff_mpeg4audio_sample_rates, ff_mpeg4audio_get_config and
ff_copy_pce_data
Anton Khirnov [Mon, 17 Oct 2011 07:28:53 +0000 (09:28 +0200)]
lavc: use avpriv_ prefix for some mpegaudio symbols used in lavf.
Specifically, ff_mpa_freq_tab, ff_mpa_bitrate_tab, ff_mpa_decode_header,
ff_mpegaudio_decode_header.
Anton Khirnov [Mon, 17 Oct 2011 07:22:04 +0000 (09:22 +0200)]
lavc: use avpriv_ prefix for ff_aac_parse_header().
It's used in lavf.
Anton Khirnov [Mon, 17 Oct 2011 07:14:04 +0000 (09:14 +0200)]
lavf: hide private symbols.
Overhead as reported by rbelf-size goes from 40147 to 20877.
Anton Khirnov [Mon, 17 Oct 2011 06:58:50 +0000 (08:58 +0200)]
lavf: use avpriv_ prefix for some dv functions.
They are used in libavdevice.
Anton Khirnov [Mon, 17 Oct 2011 06:58:50 +0000 (08:58 +0200)]
lavf: use avpriv_ prefix for ff_new_chapter().
It's used in libavdevice.
Justin Ruggles [Sun, 25 Sep 2011 21:09:57 +0000 (17:09 -0400)]
avcodec: add CODEC_CAP_DELAY note to avcodec_decode_audio3() documentation
Justin Ruggles [Sun, 25 Sep 2011 21:09:03 +0000 (17:09 -0400)]
avcodec: clarify the CODEC_CAP_DELAY note in avcodec_decode_video2()
Justin Ruggles [Sun, 25 Sep 2011 21:05:34 +0000 (17:05 -0400)]
avcodec: clarify documentation of CODEC_CAP_DELAY
Justin Ruggles [Sat, 17 Sep 2011 01:34:42 +0000 (21:34 -0400)]
shorten: fix end-of-stream decoding.
enable CODEC_CAP_DELAY to flush any remaining frames in the buffer.
Stop decoding when the FN_QUIT command is found so that a trailing seek table
isn't decoded as a normal frame.
decode all channels in the same call to avcodec_decode_audio3() so that
decoding will not stop after the first channel of the last frame.
Updated FATE reference. More valid audio is now decoded.
Justin Ruggles [Sat, 17 Sep 2011 00:54:11 +0000 (20:54 -0400)]
shorten: do not use block size to determine whether to read the header.
Justin Ruggles [Fri, 16 Sep 2011 22:01:28 +0000 (18:01 -0400)]
shorten: check output buffer size before decoding
Justin Ruggles [Fri, 16 Sep 2011 21:51:40 +0000 (17:51 -0400)]
shorten: use av_clip_int16() for output sample clipping
Justin Ruggles [Fri, 16 Sep 2011 21:40:44 +0000 (17:40 -0400)]
shorten: use bytestream functions to decode the embedded WAVE header
Justin Ruggles [Fri, 16 Sep 2011 21:31:12 +0000 (17:31 -0400)]
shorten: add some comments
Justin Ruggles [Fri, 16 Sep 2011 19:55:27 +0000 (15:55 -0400)]
shorten: merge decoding of FN_DIFF* subblocks into decode_subframe_lpc()
Justin Ruggles [Fri, 16 Sep 2011 19:39:51 +0000 (15:39 -0400)]
cosmetics: remove some needless commented-out stuff
Justin Ruggles [Fri, 16 Sep 2011 19:31:31 +0000 (15:31 -0400)]
shorten: validate block size
Justin Ruggles [Fri, 16 Sep 2011 15:24:14 +0000 (11:24 -0400)]
shorten: move declaration of 'ret' to top of shorten_decode_frame()
Justin Ruggles [Fri, 16 Sep 2011 15:22:37 +0000 (11:22 -0400)]
shorten: pass on error value from allocate_buffers() instead of returning -1
Justin Ruggles [Thu, 15 Sep 2011 22:08:52 +0000 (18:08 -0400)]
shorten: check for realloc failure
Justin Ruggles [Wed, 14 Sep 2011 23:16:14 +0000 (19:16 -0400)]
shorten: move decoding of prediction order and applying of global offset to
decode_subframe_lpc().
Justin Ruggles [Wed, 14 Sep 2011 22:54:42 +0000 (18:54 -0400)]
shorten: only calculate output size when returning decoded samples, otherwise
just set data_size to zero.
Justin Ruggles [Thu, 15 Sep 2011 04:03:35 +0000 (00:03 -0400)]
cosmetics: reindent
Justin Ruggles [Wed, 14 Sep 2011 22:46:37 +0000 (18:46 -0400)]
shorten: separate processing of audio commands from non-audio commands
Justin Ruggles [Wed, 14 Sep 2011 19:20:22 +0000 (15:20 -0400)]
shorten: skip some fields in the WAV header embedded in the shorten header.
fixes incorrect bitrate reporting and potential misreporting of the number of
channels.
Justin Ruggles [Wed, 14 Sep 2011 19:02:35 +0000 (15:02 -0400)]
shorten: split reading of file header into a separate functions
Justin Ruggles [Wed, 19 Oct 2011 18:00:06 +0000 (14:00 -0400)]
avformat: do not require frame_size for Speex.
Having it there forces decoding of a frame in order to get frame_size, but it
is not really needed for proper demuxing or decoding.
Justin Ruggles [Wed, 19 Oct 2011 17:28:12 +0000 (13:28 -0400)]
ogg/speex: set correct timestamp and duration for the first packet.
The first timestamp should be negative due to delay.
Also, do not set AVCodecContext.frame_size unnecessarily.
Justin Ruggles [Wed, 19 Oct 2011 17:20:15 +0000 (13:20 -0400)]
flvenc: check packet duration in speex using timestamps
Using AVCodecContext.frame_size is not reliable.
Justin Ruggles [Tue, 18 Oct 2011 19:16:27 +0000 (12:16 -0700)]
libspeexenc: add libspeex encoder
Justin Ruggles [Wed, 19 Oct 2011 17:16:01 +0000 (13:16 -0400)]
flvenc: adjust for negative DTS for all codecs, not just H.264
Diego Biurrun [Thu, 20 Oct 2011 13:43:16 +0000 (15:43 +0200)]
x86: Move some variable declarations below the appropriat #ifdef.
This avoids some unused variable warnings with YASM disabled.
Diego Biurrun [Thu, 20 Oct 2011 13:59:22 +0000 (15:59 +0200)]
x86: Fix linking of ProRes DSP ASM with YASM disabled.
Diego Biurrun [Wed, 19 Oct 2011 21:12:56 +0000 (23:12 +0200)]
avcodec.h: Move G.729/G.723 CODEC_IDs to the correct section.
This is done conditional to the libavcodec version to avoid ABI breaks.
Diego Biurrun [Wed, 19 Oct 2011 21:25:01 +0000 (23:25 +0200)]
Only test-compile w32pthreads.h if W32THREADS are available.
This fixes 'make checkheaders' on non-W32THREADS systems.
Janne Grunau [Wed, 19 Oct 2011 06:22:23 +0000 (08:22 +0200)]
presets: rename presets directory
Anton Khirnov [Sat, 8 Oct 2011 06:47:47 +0000 (08:47 +0200)]
lavc: make avcodec_get_context_defaults3 "officially" public
Deprecate avcodec_get_context_defaults/avcodec_get_context_defaults2
Anton Khirnov [Sat, 18 Jun 2011 09:43:24 +0000 (11:43 +0200)]
lavf: replace av_new_stream->avformat_new_stream part II.
Manual replacements are done in this commit.
In many cases, the id is some constant made up number (e.g. 0 for video
and 1 for audio), which is then not used in the demuxer for anything.
Those ids are removed.
Anton Khirnov [Sat, 18 Jun 2011 09:43:24 +0000 (11:43 +0200)]
lavf,lavd: replace av_new_stream->avformat_new_stream part I.
Trivial replacements with sed are done in this commit:
sed 's/av_new_stream(\([^)]*\), 0)/avformat_new_stream(\1, NULL)/'
Anton Khirnov [Sat, 18 Jun 2011 09:19:27 +0000 (11:19 +0200)]
lavf: add avformat_new_stream as a replacement for av_new_stream.
It takes a codec parameter, thus enabling codec-specific defaults.
Mashiat Sarker Shakkhar [Wed, 19 Oct 2011 13:51:20 +0000 (18:51 +0500)]
Use correct scaling table for bwd-pred MVs in second B-field
When scaling backward predicted MVs in second B-field, the scaling table is
opposite of that for P field pictures; i.e. first field P table will be used as
second field B table and second field P table will be used as first field B
table. This is not documented in the spec, but exists in the ref. decoder.
This fixes SA10139.
Signed-off-by: Martin Storsjö <martin@martin.st>
Kostya Shishkov [Sun, 16 Oct 2011 15:20:17 +0000 (17:20 +0200)]
Ut Video decoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Wed, 19 Oct 2011 05:50:12 +0000 (07:50 +0200)]
Makefile: change presets extension to .avpreset
Fixes make install.
Stefano Sabatini [Mon, 11 Jul 2011 14:27:09 +0000 (16:27 +0200)]
lavfi: add rgbtestsrc source, ported from MPlayer libmpcodecs
The licence was changed from GPL to LGPL with explicit approval from
the original author.
See thread:
Subject: [FFmpeg-devel] [PATCH] lavfi: add rgbtestsrc source,
ported from MPlayer libmpcodecs
Date: Mon, 11 Jul 2011 16:32:41 +0200
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Stefano Sabatini [Sat, 18 Jun 2011 01:11:16 +0000 (03:11 +0200)]
lavfi: add testsrc source
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Mon, 5 Sep 2011 16:16:13 +0000 (18:16 +0200)]
AVOptions: add documentation.
Anton Khirnov [Thu, 13 Oct 2011 06:21:45 +0000 (08:21 +0200)]
presets: update libx264 ffpresets
Use the native libx264 options and rename all the preset to use
the avpreset extension.
Laurent Aimar [Tue, 27 Sep 2011 22:15:32 +0000 (22:15 +0000)]
sunrast: Check for out of bounds reads
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Dustin Brody [Mon, 17 Oct 2011 01:22:03 +0000 (21:22 -0400)]
lavc: rename AV_ER_* options to AV_EF_* and rename AGGRESSIVE to BUFFER
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Dustin Brody [Mon, 17 Oct 2011 01:22:02 +0000 (21:22 -0400)]
lavc: replace API-bump-triggered AVCodecContext field change with shorter, non-conflicting name
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Tue, 11 Oct 2011 13:56:40 +0000 (15:56 +0200)]
Add libvpx presets.
Based on a patch by James Zern jzern AT google DOT com
Anton Khirnov [Tue, 11 Oct 2011 13:17:36 +0000 (15:17 +0200)]
doc/avtools: add forgotten part to stream specifiers description
Ronald Bultje [Tue, 18 Oct 2011 01:53:04 +0000 (01:53 +0000)]
swscale: prevent overflow during initialization
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
Martin Storsjö [Thu, 9 Sep 2010 07:02:32 +0000 (10:02 +0300)]
g722: Add a fate test for the encoder
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 17 Oct 2011 20:03:49 +0000 (23:03 +0300)]
fate: Add a target for creating a 16000 Hz mono synthetic audio file
Signed-off-by: Martin Storsjö <martin@martin.st>
Luca Barbato [Mon, 17 Oct 2011 05:31:53 +0000 (22:31 -0700)]
macosx: use the default surface on newer sdl
SDL 1.2.14 works fine with default colorspace on macosx and seems
to have some issues with 24bit surfaces and resize in addition.
Alexandra Khirnova [Mon, 10 Oct 2011 10:52:13 +0000 (11:52 +0100)]
avconv: add presets
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Martin Storsjö [Mon, 17 Oct 2011 17:07:56 +0000 (20:07 +0300)]
rtsp: Expose the flag options via private AVOptions for sdp and rtp, too
This allows setting the filter_src option for these demuxers, too,
which wasn't possible at all before (where the option only was set
via URL parameters for RTSP).
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 17 Oct 2011 17:04:41 +0000 (20:04 +0300)]
rtsp: Make the rtsp flags avoptions set via a define
This helps sharing these options with the sdp and rtp demuxers.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 17 Oct 2011 18:11:07 +0000 (21:11 +0300)]
rtpenc: Set a default video codec
avconv doesn't map video streams to a muxer without specifying a
manual stream mapping if the default video codec is CODEC_ID_NONE.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 17 Oct 2011 17:50:02 +0000 (20:50 +0300)]
avoptions: Fix av_opt_flag_is_set
With the changes in
3b3ea34655db02d9cd9ea1a4122e920a7fdec602,
"Remove all uses of deprecated AVOptions API", av_opt_flag_is_set
was broken, since it now uses av_opt_find, which doesn't return
named constants unless a unit to look for the constant in is given.
This broke enabling LATM encapsulated AAC output in RTP.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 17 Oct 2011 17:24:54 +0000 (20:24 +0300)]
rtp: Fix ff_rtp_get_payload_type
It was broken in
3b3ea34655db02d9cd9ea1a4122e920a7fdec602
"Remove all uses of deprecated AVOptions API", where any
presence of a payload_type AVOption caused its value to
be returned, even if it wasn't set (and thus had the default
-1 value).
This caused the RTP muxer to be broken.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 12 Oct 2011 15:27:18 +0000 (18:27 +0300)]
doc: Update the documentation on setting options for RTSP
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Thu, 23 Jun 2011 22:55:00 +0000 (01:55 +0300)]
rtsp: Remove the separate filter_source variable
Read it as a flag from the flags field instead.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Thu, 23 Jun 2011 22:49:09 +0000 (01:49 +0300)]
rtsp: Accept options via private avoptions instead of URL options
Eventually, the old way of passing options by adding
stuff to the URL can be dropped.
This avoids having to tamper with the user-specified URL to
pass options on the transport mode. This also works better
with redirects, since the options don't need to be parsed out
from the URL.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Thu, 13 Oct 2011 11:00:06 +0000 (14:00 +0300)]
rtsp: Simplify AVOption definitions
Use defines for shortening common parts, omit the .dbl named
initializer (since it's the first element in the union).
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Thu, 23 Jun 2011 23:04:54 +0000 (02:04 +0300)]
rtsp: Merge the AVOption lists
This eases adding options that are common for both. The
AV_OPT_FLAG_EN/DECODING_PARAM still indicates whether they belong
to the muxer or demuxer.
Signed-off-by: Martin Storsjö <martin@martin.st>
Stefano Sabatini [Wed, 10 Aug 2011 16:58:49 +0000 (18:58 +0200)]
lavfi: port libmpcodecs delogo filter
The ported filter supports named option parsing and more YUV formats.
Signed-off-by: Anton Khirnov <anton@khirnov.net>