Justin Ruggles [Wed, 2 May 2012 19:36:43 +0000 (15:36 -0400)]
lavr: x86: optimized 6-channel s16p to s16 conversion
Justin Ruggles [Wed, 2 May 2012 19:32:08 +0000 (15:32 -0400)]
lavr: x86: optimized 2-channel s16p to s16 conversion
Anton Khirnov [Wed, 22 Aug 2012 08:37:35 +0000 (10:37 +0200)]
doc/APIchanges: add an entry for codec descriptors.
Also fill in missing dates and hashes.
Justin Ruggles [Mon, 20 Aug 2012 17:35:48 +0000 (13:35 -0400)]
vorbisenc: set AVCodecContext.bit_rate to 0
The Vorbis encoder is always VBR.
Justin Ruggles [Mon, 20 Aug 2012 17:30:44 +0000 (13:30 -0400)]
vorbisenc: fix quality parameter
This generates output with bitrates similar to libvorbis for a given quality
value.
Justin Ruggles [Tue, 21 Aug 2012 16:48:23 +0000 (12:48 -0400)]
FATE: add ALAC encoding tests
Justin Ruggles [Tue, 21 Aug 2012 16:29:11 +0000 (12:29 -0400)]
lpc: fix alignment of windowed samples for odd maximum LPC order
Fixes crash on x86 due to alignment requirements for w_data in
lpc_apply_welch_window_sse2().
Justin Ruggles [Tue, 21 Aug 2012 13:21:56 +0000 (09:21 -0400)]
alacenc: use s16p sample format as input
Justin Ruggles [Tue, 21 Aug 2012 15:27:34 +0000 (11:27 -0400)]
alacenc: remove unneeded sample_fmt check
Justin Ruggles [Tue, 21 Aug 2012 15:29:37 +0000 (11:29 -0400)]
alacenc: fix max_frame_size calculation for the final frame
Justin Ruggles [Mon, 20 Aug 2012 16:18:58 +0000 (12:18 -0400)]
adpcm_swf: Use correct sample offsets when using trellis.
Fixes invalid reads when encoding mono streams when trellis is used.
Samuel Pitoiset [Sun, 19 Aug 2012 11:02:23 +0000 (13:02 +0200)]
rtmp: support strict rtmp servers
In order to send or receive a stream FCPublish, FCSubscribe and _checkbw
are completely optional and often not implemented. releaseStream over a
non-existen stream might report an error instead of being silent.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Michael Niedermayer [Fri, 10 Aug 2012 13:47:07 +0000 (15:47 +0200)]
mjpegdec: support AVRn interlaced
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Mans Rullgard [Sat, 18 Aug 2012 19:22:10 +0000 (20:22 +0100)]
x86: remove FASTDIV inline asm
GCC 4.3 and later do the right thing with the plain C code. Earlier
versions in 32-bit mode generate one extra instruction, needlessly
zeroing what would be the high half of the shifted value. At least
two gcc configurations miscompile the inline asm in some situations.
In 64-bit mode, all gcc versions generate imul r64, r64 followed by
shr. On Intel i7 and later, this imul is faster 32-bit mul. On
older Intel and all AMD, it is slightly slower. On Atom it is much
slower.
Considering where the FASTDIV macro is used, any overall negative
performance impact of this change should be negligible. If anyone
cares, they should file a bug against gcc and get the instruction
selection fixed.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Diego Biurrun [Mon, 13 Aug 2012 11:02:38 +0000 (13:02 +0200)]
build: x86: Only compile mpegvideo optimizations when necessary
Diego Biurrun [Mon, 20 Aug 2012 22:36:16 +0000 (00:36 +0200)]
configure: Drop fastdiv option
There is no point in having the user disable any fastdiv macros.
Besides the condition implementation was broken and only disabled
the C implementation, but no platform specific assembly versions.
Diego Biurrun [Sun, 19 Aug 2012 21:19:38 +0000 (23:19 +0200)]
build: Make the E-AC-3 encoder select the AC-3 encoder
The E-AC-3 encoder depends on almost all of the code of the AC-3
encoder, so it makes no sense to enable one without the other.
Diego Biurrun [Tue, 21 Aug 2012 22:45:28 +0000 (00:45 +0200)]
fate: flac: Only run tests requiring samples when samples are available
Jordi Ortiz [Tue, 21 Aug 2012 13:09:40 +0000 (15:09 +0200)]
dirac: use meaningful return values
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Mans Rullgard [Mon, 2 Jul 2012 00:59:04 +0000 (01:59 +0100)]
flacdec: simplify sample buffer handling
Pass pointer to sample buffer instead of channel number to various
functions called from decode_subframe(). Also simplify a few
expressions within this function.
Mans Rullgard [Mon, 2 Jul 2012 21:39:34 +0000 (22:39 +0100)]
flacdec: simplify loop in decode_residuals()
Jan Ekström [Mon, 20 Aug 2012 18:16:42 +0000 (21:16 +0300)]
fate: make Ut Video encoder tests use bitexact swscale flags
The failures on various architectures and compilers on the RGB(A)
tests seem to have been because of one-off YCbCr->RGB conversion
results. This should make the conversion results match on most if
not all code paths.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Diego Biurrun [Mon, 13 Aug 2012 23:51:15 +0000 (01:51 +0200)]
build: amrwb: Drop redundant lsp dependency declaration
Mans Rullgard [Mon, 20 Aug 2012 13:58:02 +0000 (14:58 +0100)]
fate: fix utvideoenc tests
For some reason, the prerequisites have to be specified like this.
Make works in mysterious ways.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Jan Ekström [Sun, 19 Aug 2012 17:07:13 +0000 (20:07 +0300)]
fate: Add FATE tests for the Ut Video encoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Jan Ekström [Mon, 20 Aug 2012 09:15:34 +0000 (12:15 +0300)]
lavc: add Ut Video encoder
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Anton Khirnov [Sun, 19 Aug 2012 17:28:52 +0000 (19:28 +0200)]
mpegvideo_enc: remove stray duplicate line from 7f9aaa4
Giorgio Vazzana [Thu, 16 Aug 2012 12:35:41 +0000 (14:35 +0200)]
swscale: x86: fix #endif comments in rgb2rgb template file
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Anton Khirnov [Wed, 15 Aug 2012 08:33:36 +0000 (10:33 +0200)]
avconv: mark more options as expert.
Anton Khirnov [Wed, 15 Aug 2012 08:31:46 +0000 (10:31 +0200)]
avconv: split printing "main options" into global and per-file.
Anton Khirnov [Tue, 14 Aug 2012 06:56:32 +0000 (08:56 +0200)]
avconv: refactor help printing.
By default don't dump every single option on the user, but print only
the basic options.
Add -h long/full to print more options.
Anton Khirnov [Tue, 14 Aug 2012 06:21:42 +0000 (08:21 +0200)]
avconv: print info/capabilities options in a separate help group.
Anton Khirnov [Tue, 14 Aug 2012 05:57:56 +0000 (07:57 +0200)]
avtools: add -h demuxer/muxer
Anton Khirnov [Mon, 13 Aug 2012 18:06:25 +0000 (20:06 +0200)]
cmdutils: extend -h to allow printing codec details.
Anton Khirnov [Sat, 11 Aug 2012 17:45:30 +0000 (19:45 +0200)]
cmdutils: change semantics of show_help_options() and document it.
Currently it takes a mask and value, such that options for which
(flags & mask) == value.
Change it to take required flags and forbidden flags instead. This is
shorter and simpler to understand.
Anton Khirnov [Sat, 11 Aug 2012 17:33:27 +0000 (19:33 +0200)]
avtools: move some newlines to show_help_options().
Don't require every caller to supply them.
Anton Khirnov [Sat, 11 Aug 2012 17:19:53 +0000 (19:19 +0200)]
avconv: deprecate -isync.
This option does not do anything.
Also remove OPT_GRAB, since -isync is the last option using it.
Anton Khirnov [Sat, 11 Aug 2012 15:00:30 +0000 (17:00 +0200)]
avconv: reformat the options table.
Anton Khirnov [Sat, 11 Aug 2012 14:30:26 +0000 (16:30 +0200)]
avconv: get rid of ugly casts in the options table.
Anton Khirnov [Sat, 11 Aug 2012 13:40:12 +0000 (15:40 +0200)]
avconv: try to match codecs by codec descriptor name as a last resort.
This allows e.g. -c:v h264 to select the libx264 encoder.
Anton Khirnov [Sat, 11 Aug 2012 14:13:54 +0000 (16:13 +0200)]
avtools: fix show_foo() signatures.
show_foo() functions are declared as void show_foo(void), but called as
int show_foo(const char*, const char*).
Mans Rullgard [Sat, 18 Aug 2012 13:30:11 +0000 (14:30 +0100)]
vorbisdec: remove some pointless comments
Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard [Sat, 18 Aug 2012 12:22:57 +0000 (13:22 +0100)]
avprobe: add const to AVCodec pointer
Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard [Sat, 18 Aug 2012 12:22:38 +0000 (13:22 +0100)]
libavformat: add const to AVCodec pointers
Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard [Sat, 18 Aug 2012 12:20:09 +0000 (13:20 +0100)]
pthread: add const to AVCodec pointers
Signed-off-by: Mans Rullgard <mans@mansr.com>
Anton Khirnov [Wed, 15 Aug 2012 07:35:18 +0000 (09:35 +0200)]
mpegvideo_enc: don't use deprecated avcodec_encode_video().
Anton Khirnov [Sat, 11 Aug 2012 13:23:22 +0000 (15:23 +0200)]
cmdutils: refactor -codecs option.
Make it print a list of AVCodecDescriptors.
Add new -decoders and -encoders options that print lists of decoders and
encoders respectively.
Anton Khirnov [Sat, 11 Aug 2012 09:50:32 +0000 (11:50 +0200)]
avconv: make -shortest a per-output file option.
Anton Khirnov [Sat, 11 Aug 2012 13:32:27 +0000 (15:32 +0200)]
lavc: add avcodec_descriptor_get_by_name().
Anton Khirnov [Sat, 11 Aug 2012 12:50:36 +0000 (14:50 +0200)]
lavc: add const to AVCodec* function parameters.
Anton Khirnov [Wed, 15 Aug 2012 07:14:35 +0000 (09:14 +0200)]
swf(dec): replace CODEC_ID with AV_CODEC_ID
Anton Khirnov [Wed, 15 Aug 2012 07:11:31 +0000 (09:11 +0200)]
dvenc: don't use deprecated AVCODEC_MAX_AUDIO_FRAME_SIZE
Samuel Pitoiset [Thu, 16 Aug 2012 20:27:15 +0000 (22:27 +0200)]
rtmpdh: Do not generate the same private key every time when using libnettle
Replace mpz_random by mpz_urandomb with a random state initialization in
order to improve the randomness.
Signed-off-by: Martin Storsjö <martin@martin.st>
Jordi Ortiz [Fri, 17 Aug 2012 16:41:26 +0000 (18:41 +0200)]
rtp: remove ff_rtp_get_rtcp_file_handle().
Signed-off-by: Martin Storsjö <martin@martin.st>
Jordi Ortiz [Fri, 17 Aug 2012 18:06:27 +0000 (20:06 +0200)]
rtsp.c: use ffurl_get_multi_file_handle() instead of ff_rtp_get_rtcp_file_handle()
Signed-off-by: Martin Storsjö <martin@martin.st>
Jordi Ortiz [Fri, 17 Aug 2012 16:38:59 +0000 (18:38 +0200)]
avio: add (ff)url_get_multi_file_handle() for getting more than one fd
Signed-off-by: Martin Storsjö <martin@martin.st>
Uoti Urpala [Tue, 7 Aug 2012 11:48:06 +0000 (14:48 +0300)]
h264: vdpau: fix crash with unsupported colorspace
The h264_vdpau decoder crashed if output colorspace was not 8-bit 420.
Add a check to error out instead (current hardware does not support
other colorspaces, so successful decoding is not possible).
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Fri, 17 Aug 2012 11:53:52 +0000 (14:53 +0300)]
amrwbdec: Decode the fr_quality bit properly
The way this bit is decoded was accidentally flipped in
b70feb405,
leading to warnings "Encountered a bad or corrupted frame" for each
decoded frame.
Signed-off-by: Martin Storsjö <martin@martin.st>
Luca Barbato [Thu, 16 Aug 2012 18:00:53 +0000 (20:00 +0200)]
libvpxenc: use the default bitrate if not set
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Jan Ekström [Fri, 17 Aug 2012 10:33:52 +0000 (13:33 +0300)]
utvideo: Rename utvideo.c to utvideodec.c
Signed-off-by: Kostya Shishkov <kostya.shishkov@gmail.com>
Jordi Ortiz [Wed, 15 Aug 2012 15:58:01 +0000 (17:58 +0200)]
doc: Fix syntax errors in sample Emacs config
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Luca Barbato [Thu, 16 Aug 2012 21:24:15 +0000 (23:24 +0200)]
mjpegdec: more meaningful return values
Mans Rullgard [Wed, 15 Aug 2012 23:10:33 +0000 (00:10 +0100)]
configure: clean up Altivec detection
There used to be one test for Altivec intrinsics support and a
separate test to determine which of two possible syntaxes to use
for vector literals. Since 2008, we only support the more common
of these so the split test no longer makes sense.
This combines the tests into one and also changes the hard error on
failure to a warning. The test can reasonably fail if no --cpu flag
is provided (or is provided with an unknown CPU) and the compiler
default target does not support Altivec. Aborting in this case is
probably over-reacting.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Martin Storsjö [Thu, 16 Aug 2012 19:14:52 +0000 (22:14 +0300)]
getopt: Remove an unnecessary define
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Thu, 16 Aug 2012 19:11:13 +0000 (22:11 +0300)]
rtmp: Use int instead of ssize_t
Not all compilers support ssize_t (MSVC doesn't), and none of these
variables need to be larger than 32 bit.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Thu, 16 Aug 2012 12:04:27 +0000 (15:04 +0300)]
getopt: Add missing includes
Signed-off-by: Martin Storsjö <martin@martin.st>
Jordi Ortiz [Thu, 16 Aug 2012 14:04:48 +0000 (16:04 +0200)]
rtmp: Add support for receiving incoming streams
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Thu, 16 Aug 2012 11:24:26 +0000 (14:24 +0300)]
Add missing includes for code relying on external libraries
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Thu, 16 Aug 2012 11:02:24 +0000 (14:02 +0300)]
Fix even more missing includes after the common.h removal
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Mon, 13 Aug 2012 17:16:06 +0000 (19:16 +0200)]
build: Factor out rangecoder dependencies to CONFIG_RANGECODER
A new hidden config variable is added for the codecs that depend on
the rangecoder parts.
Diego Biurrun [Mon, 13 Aug 2012 17:13:32 +0000 (19:13 +0200)]
build: Factor out error resilience dependencies to CONFIG_ERROR_RESILIENCE
A new hidden config variable is added for the codecs that depend on
the error resilience parts.
Diego Biurrun [Sat, 11 Aug 2012 21:07:27 +0000 (23:07 +0200)]
x86: avcodec: Consistently name all init files
Martin Storsjö [Thu, 16 Aug 2012 07:22:31 +0000 (10:22 +0300)]
Add more missing includes after removing the implicit common.h
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 15 Aug 2012 20:27:52 +0000 (23:27 +0300)]
Add some more missing includes after removing the implicit common.h
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 6 Aug 2012 13:49:32 +0000 (16:49 +0300)]
Don't include common.h from avutil.h
Signed-off-by: Martin Storsjö <martin@martin.st>
Samuel Pitoiset [Wed, 15 Aug 2012 14:11:50 +0000 (16:11 +0200)]
rtmp: Automatically compute the hash for SWFVerification
Signed-off-by: Martin Storsjö <martin@martin.st>
Samuel Pitoiset [Mon, 13 Aug 2012 15:05:00 +0000 (17:05 +0200)]
rtmp: Add support for SWFVerification
Specifies how the server verifies client SWF files before allowing the
files to connect to an application. Verifying SWF files is a security
measure that prevents someone from creating their own SWF files that can
attempt to stream your resources.
Signed-off-by: Martin Storsjö <martin@martin.st>
Anton Khirnov [Tue, 31 Jul 2012 14:35:18 +0000 (16:35 +0200)]
api-example: use new video encoding API.
Diego Biurrun [Sat, 11 Aug 2012 20:45:53 +0000 (22:45 +0200)]
x86: avcodec: Appropriately name files containing only init functions
Diego Biurrun [Mon, 13 Aug 2012 10:28:59 +0000 (12:28 +0200)]
mpegvideo_mmx_template: drop some commented-out cruft
John Stebbins [Thu, 2 Aug 2012 18:23:06 +0000 (11:23 -0700)]
libavresample: add mix level normalization option
Provides an option to disable mix level normalization
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Tue, 14 Aug 2012 21:17:20 +0000 (23:17 +0200)]
w32pthreads: Add missing #includes to make header compile standalone
Samuel Pitoiset [Sat, 11 Aug 2012 10:42:17 +0000 (12:42 +0200)]
rtmp: Gracefully ignore _checkbw errors by tracking them
Signed-off-by: Martin Storsjö <martin@martin.st>
Samuel Pitoiset [Sat, 11 Aug 2012 10:41:33 +0000 (12:41 +0200)]
rtmp: Do not send _checkbw calls as notifications
The _checkbw calls were changed to use transactionId 0 in commit
82613564 so that servers would not return _result/_error about it.
While this is the strict interpretation of the spec, there are
servers that return _error about it, even if transactionId was 0.
The latest version of EvoStream Media Server (the commercial version
of crtmpserver) behaves properly as described, i.e. returning an
_error normally but not returning anything when using transactionId
0. The latest version of crtmpserver (right now at least) doesn't
behave like this though, it returns an error even if transactionId
was 0.
There are also other servers that return errors even if transactionId
is set to 0. Therefore set a proper transaction id so that the invoke
can be tracked and the error properly ignored instead.
Signed-off-by: Martin Storsjö <martin@martin.st>
Maksalov Boris [Fri, 3 Aug 2012 17:50:05 +0000 (19:50 +0200)]
prores: interlaced ProRes encoding
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Mans Rullgard [Mon, 13 Aug 2012 22:50:10 +0000 (23:50 +0100)]
g723.1: simplify scale_vector()
It is impossible for bits to be 15 here so the special case is
not needed.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard [Mon, 13 Aug 2012 22:03:37 +0000 (23:03 +0100)]
g723.1: simplify normalize_bits()
This function is always called with a non-negative argument, so
those special cases are not needed. In the places the argument
might be zero, the return value for a zero argument does not matter
since it would then be used to scale an array full of zeros.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Sebastien Zwickert [Tue, 14 Aug 2012 09:48:17 +0000 (11:48 +0200)]
vda: cosmetics: fix Doxygen comment formatting
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Sebastien Zwickert [Tue, 14 Aug 2012 09:47:39 +0000 (11:47 +0200)]
vda: better frame allocation
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Sebastien Zwickert [Tue, 14 Aug 2012 08:42:52 +0000 (10:42 +0200)]
vda: Merge implementation into one file
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Sebastien Zwickert [Tue, 14 Aug 2012 09:45:29 +0000 (11:45 +0200)]
vda: support synchronous decoding
Note that the symbols used to run the hardware decoder in asynchronous mode
have been marked deprecated and will be dropped at a future version bump.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Sebastien Zwickert [Mon, 13 Aug 2012 18:17:45 +0000 (20:17 +0200)]
vda: Reuse the bitstream buffer and reallocate it only if needed
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Mon, 13 Aug 2012 11:00:24 +0000 (13:00 +0200)]
build: Factor out mpegvideo encoding dependencies to CONFIG_MPEGVIDEOENC
A new hidden config variable is added for the codecs that depend on
the mpegvideo encoding parts.
Martin Storsjö [Mon, 13 Aug 2012 22:29:15 +0000 (01:29 +0300)]
avprobe: Include libm.h for the log2 fallback
Signed-off-by: Martin Storsjö <martin@martin.st>
Boris Maksalov [Fri, 10 Aug 2012 08:50:35 +0000 (09:50 +0100)]
proresenc: use the edge emulation buffer
Prevents reading past the end of frame buffer.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Luca Barbato [Mon, 13 Aug 2012 17:46:04 +0000 (19:46 +0200)]
rtmp: handle bytes read reports
0x03 (bytes read report) is a known type and should be safely ignored
beside in debug situations.
Diego Biurrun [Mon, 13 Aug 2012 17:01:19 +0000 (19:01 +0200)]
configure: Fix typo in mpeg2video/svq1 decoder dependency declaration
Mans Rullgard [Sun, 5 Aug 2012 21:22:10 +0000 (22:22 +0100)]
Use log2(x) instead of log(x) / log(2)
Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard [Sun, 12 Aug 2012 23:53:05 +0000 (00:53 +0100)]
x86: swscale: fix fragile memory accesses
To access data at multiple fixed offsets from a base address, this
code uses a single "m" operand and code of the form "32%0", relying on
the memory operand instantiation having no displacement, giving a final
result of the form "32(%rax)". If the compiler uses a register and
displacement, e.g. "64(%rax)", the end result becomes "3264(%rax)",
which obviously does not work.
Replacing the "m" operands with "r" operands allows safe addition of a
displacement. In theory, multiple memory operands could use a shared
base register with different index registers, "(%rax,%rbx)", potentially
making more efficient use of registers. In the cases at hand, no such
sharing is possible since the addresses involved are entirely unrelated.
After this change, the code somewhat rudely accesses memory without
using a corresponding memory operand, which in some cases can lead to
unwanted "optimisations" of surrounding code. However, the original
code also accesses memory not covered by a memory operand, so this is
not adding any defect not already present. It is also hightly unlikely
that any such optimisations could be performed here since the memory
locations in questions are not accessed elsewhere in the same functions.
This fixes crashes with suncc.
Signed-off-by: Mans Rullgard <mans@mansr.com>
Mans Rullgard [Sun, 12 Aug 2012 22:38:51 +0000 (23:38 +0100)]
x86: swscale: remove disabled code
This code has been disabled since 2003. Nobody will ever look at
it again.
Signed-off-by: Mans Rullgard <mans@mansr.com>