Diego Biurrun [Tue, 7 May 2013 22:50:17 +0000 (00:50 +0200)]
x86: dsputil: Move constant declarations into separate header
Diego Biurrun [Mon, 6 May 2013 23:49:02 +0000 (01:49 +0200)]
x86: dsputil: Group all assembly constants together in constants.c
Diego Biurrun [Mon, 6 May 2013 23:42:08 +0000 (01:42 +0200)]
x86: dsputil: Move ff_pd assembly constants to the only place they are used
Martin Storsjö [Mon, 6 May 2013 20:08:41 +0000 (23:08 +0300)]
msvc: Move linker pragma from config.h to libavutil/internal.h
This makes linking succeed for tools that include config.h but
don't link to libavutil.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Mon, 6 May 2013 16:35:34 +0000 (18:35 +0200)]
fate-run: Drop unnecessary regtest() indirection
The indirection was used to abstract from the different -regression.sh
scripts. Now that only one remains, this indirection is pointless.
Diego Biurrun [Mon, 6 May 2013 23:37:03 +0000 (01:37 +0200)]
x86: dsputil: Remove unused ff_pb_3F constant
Diego Biurrun [Mon, 6 May 2013 23:34:53 +0000 (01:34 +0200)]
x86: dsputil: Remove unused MOVQ_BONE macro
Diego Biurrun [Sat, 27 Apr 2013 19:30:06 +0000 (21:30 +0200)]
x86: dsputil: Move rv40-specific functions where they belong
Diego Biurrun [Mon, 6 May 2013 22:42:22 +0000 (00:42 +0200)]
x86: dsputil hpeldsp: Move shared template functions into separate object
Diego Biurrun [Mon, 6 May 2013 22:15:41 +0000 (00:15 +0200)]
x86: rnd_template: Eliminate pointless OP_AVG macro indirection
Luca Barbato [Tue, 7 May 2013 07:39:10 +0000 (09:39 +0200)]
oma: properly forward errors in oma_read_packet
Prevent spurios EIO on EOF.
CC:libav-stable@libav.org
Luca Barbato [Wed, 17 Apr 2013 09:41:54 +0000 (11:41 +0200)]
oma: return meaningful errors
Luca Barbato [Tue, 7 May 2013 00:02:51 +0000 (02:02 +0200)]
lavc: do not leak frames in avcodec_decode_audio4
Notwithstanding the return value the frame should be freed if
is not going to be used.
Reported-by: Matthew Wolenetz <wolenetz@chromium.org>
Luca Barbato [Mon, 6 May 2013 09:39:30 +0000 (11:39 +0200)]
nut: use meaningful error values
Fix the mispresented EINVAL for EOF on partial files, among the other.
Anton Khirnov [Sun, 5 May 2013 05:59:46 +0000 (07:59 +0200)]
FATE: use a less ambiguous end time for filter-trim-time test
0.1 seconds at 25 fps is exactly 2.5 frames, which may be rounded either
to 2 or 3 on different platforms.
Anton Khirnov [Sun, 5 May 2013 05:51:58 +0000 (07:51 +0200)]
configure: add dependencies to lavfi .pc file
The scale filter depends on sws, resample on lavr, and movie on lavf and
lavc.
Fixes Bug 502.
Anton Khirnov [Sun, 5 May 2013 05:25:22 +0000 (07:25 +0200)]
configure: make avconv select (a)trim filters
They are now used for -ss/-t
Anton Khirnov [Sat, 4 May 2013 12:15:06 +0000 (14:15 +0200)]
avconv: remove -deinterlace
It is incompatible with refcounted frames and since it's been deprecated
for a long time now, fixing it is not worth the effort.
Anton Khirnov [Sat, 4 May 2013 07:51:17 +0000 (09:51 +0200)]
indeo3: use unaligned reads on reference blocks.
They are not guaranteed to be aligned.
Fixes Bug 503.
CC:libav-stable@libav.org
Janne Grunau [Mon, 6 May 2013 20:42:27 +0000 (22:42 +0200)]
jpeg2000dec: initialize static data just once
Janne Grunau [Mon, 6 May 2013 20:27:33 +0000 (22:27 +0200)]
jpeg2000dec: cleanup properly after decoding errors
Fixes memory leak in fate-redcode-demux.
Janne Grunau [Mon, 22 Apr 2013 14:19:37 +0000 (16:19 +0200)]
fate-jpeg2000-dcinema: force output to xyz12le
Fixes Fate tests on big-endian configs.
Janne Grunau [Fri, 26 Apr 2013 12:49:43 +0000 (14:49 +0200)]
vf_scale: add endianness conversion pixel format in query_formats
Janne Grunau [Fri, 26 Apr 2013 12:47:50 +0000 (14:47 +0200)]
swscale: support endianness conversion for AV_PIX_FMT_XYZ12
Janne Grunau [Fri, 26 Apr 2013 12:47:08 +0000 (14:47 +0200)]
swscale: add support for endianness only conversion
Use bitfields in FormatEntry array to avoid wasting an int for each flag.
Janne Grunau [Fri, 26 Apr 2013 12:43:02 +0000 (14:43 +0200)]
pixdesc: add function to return pixel format with swapped endiannes
Martin Storsjö [Mon, 6 May 2013 11:48:25 +0000 (14:48 +0300)]
swscale: Use alpha from the right row in yuva2rgba_c
Every other pixel had the alpha channel taken from the wrong
row.
This fixes bug 504.
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Mon, 6 May 2013 11:48:02 +0000 (14:48 +0300)]
swscale: Remove unnecessary backslashes
Signed-off-by: Martin Storsjö <martin@martin.st>
Nicolas Bertrand [Tue, 30 Apr 2013 09:09:55 +0000 (11:09 +0200)]
jpeg2000: Fix uninitialized data errors pointed out by valgrind/memcheck
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Tue, 23 Apr 2013 16:36:25 +0000 (18:36 +0200)]
x86: hpeldsp: Move avg_pixels8_x2_mmx() out of hpeldsp_rnd_template.c
The function is only instantiated once, so there is no point
in keeping it in a template file.
Diego Biurrun [Sun, 5 May 2013 23:01:05 +0000 (01:01 +0200)]
x86: hpeldsp: Only compile MMX hpeldsp code if MMX is enabled
Diego Biurrun [Sun, 5 May 2013 22:58:07 +0000 (00:58 +0200)]
x86: More specific ifdefs for dsputil/hpeldsp init functions
Luca Barbato [Sat, 4 May 2013 10:18:57 +0000 (12:18 +0200)]
wav: Always seek to an even offset
RIFF chunks are aligned to 16bit according to the specification.
Bug-Id:500
CC:libav-stable@libav.org
Luca Barbato [Sat, 4 May 2013 10:47:15 +0000 (12:47 +0200)]
nut: use a define for the nut version
Ease switching version in the future and make evident why that value.
Diego Biurrun [Sun, 5 May 2013 18:51:52 +0000 (20:51 +0200)]
bgmc: Do not mark ff_bgmc_decode_init() as av_cold
The function is possibly called once per block.
Diego Biurrun [Thu, 2 May 2013 08:20:12 +0000 (10:20 +0200)]
avcodec: Add av_cold attributes to end functions missing them
Diego Biurrun [Thu, 18 Apr 2013 13:54:26 +0000 (15:54 +0200)]
avformat: Add av_cold attributes to init functions missing them
Martin Storsjö [Fri, 30 Nov 2012 09:16:58 +0000 (11:16 +0200)]
configure: Check for getenv
When targeting the "windows store application" (metro) API subset
(or the windows phone API subset), the getenv function isn't
available. If it is unavailable, just define getenv to NULL.
The check uses check_func_headers, since the function actually
might exist in the libraries, but is hidden in the headers.
The fallback is in config.h since msvc can't do -D defines with
parameters on the command line, and it's used both within the
libraries and the frontend applications (so a libavutil internal
header wouldn't be enough).
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Thu, 18 Apr 2013 13:54:45 +0000 (15:54 +0200)]
swscale: Add av_cold attributes to init functions missing them
Diego Biurrun [Tue, 30 Apr 2013 16:31:25 +0000 (18:31 +0200)]
avutil: Add av_cold attributes to init functions missing them
Hendrik Leppkes [Fri, 15 Mar 2013 19:44:57 +0000 (20:44 +0100)]
lavfi: let gcc realign the stack on public graph driving functions
The functions which actually drive the filter graph by pushing
frames through it need to ensure an aligned stack for SIMD functions.
This fixes a crash in YADIF filter when using a mingw build in a MSVC
application.
Signed-off-by: Martin Storsjö <martin@martin.st>
Diego Biurrun [Mon, 22 Apr 2013 17:03:13 +0000 (19:03 +0200)]
sctp: Add a note on why sctp_recvmsg and sctp_sendmsg have ff_-prefixes
Diego Biurrun [Mon, 25 Mar 2013 15:14:55 +0000 (16:14 +0100)]
avs: Increase magic value score above file extension score
This should fix misdetection of AVS files as AviSynth scripts
when AviSynth support is enabled (Bugzilla #357).
Diego Biurrun [Mon, 25 Mar 2013 15:12:51 +0000 (16:12 +0100)]
avformat: Add AVPROBE_SCORE_EXTENSION define and use where appropriate
Diego Biurrun [Sat, 27 Apr 2013 12:51:27 +0000 (14:51 +0200)]
build: output-example: Add avutil to ELIBS in link command
output-example links against swscale, which depends on avutil. In standard
configurations, by pure good luck, the libs before swscale pull in all of
swscale's dependencies and linking succeeds. However, in some configurations
like --disable-asm this is not the case and linking fails.
Hardcode the dependency to avoid a more general Makefile refactoring.
Diego Biurrun [Tue, 30 Apr 2013 16:30:48 +0000 (18:30 +0200)]
avresample: Add av_cold attributes to init functions missing them
Diego Biurrun [Tue, 30 Apr 2013 16:30:02 +0000 (18:30 +0200)]
avfilter: Add av_cold attributes to init/uninit functions
Diego Biurrun [Fri, 1 Feb 2013 09:31:59 +0000 (10:31 +0100)]
avcodec: Add av_cold attributes to init functions missing them
Luca Barbato [Sat, 4 May 2013 09:10:14 +0000 (11:10 +0200)]
nut: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Reinhard Tartler [Sat, 4 May 2013 08:25:41 +0000 (10:25 +0200)]
configure: Add basic valgrind-memcheck support
With the parameter --valgrind-memcheck, the configure script sets
reasonable defaults that can be overridden as explained in the
documentation.
The idea of using set_defaults is from Luca Barbato.
Reinhard Tartler [Sun, 21 Apr 2013 17:10:26 +0000 (19:10 +0200)]
build: normalize coverage.info
Without this, lcov sometimes misses to normalize paths that contain "/./".
Also, ignore uninteresting hits in system headers.
Reinhard Tartler [Sun, 21 Apr 2013 17:08:59 +0000 (19:08 +0200)]
build: tune down the output of lcov/gcov
In the default settings, both tools produce a lot of unhelpful noise.
Luca Barbato [Thu, 2 May 2013 20:40:25 +0000 (22:40 +0200)]
wav: return meaningful errors
Diego Biurrun [Mon, 20 Aug 2012 23:02:13 +0000 (01:02 +0200)]
silly typo fixes
Christophe Gisquet [Tue, 9 Apr 2013 21:57:10 +0000 (21:57 +0000)]
sbrdsp: Unroll and use integer operations
This patch can be controversial, by assuming floats are IEEE-754 and
particular behaviour of the FPU will get in the way.
Timing on Arrandale and Win32 (thus, x87 FPU is used in the reference).
sbr_qmf_pre_shuffle_c: 115 to 76
sbr_neg_odd_64_c: 84 to 55
sbr_qmf_post_shuffle_c: 112 to 83
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Christophe Gisquet [Tue, 9 Apr 2013 21:57:09 +0000 (21:57 +0000)]
sbrdsp: Unroll sbr_autocorrelate_c
1410 cycles to 1148 on Arrandale/Win64
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Christophe Gisquet [Tue, 9 Apr 2013 21:57:07 +0000 (21:57 +0000)]
x86: sbrdsp: Implement SSE2 qmf_deint_bfly
Sandybridge: 47 cycles
Having a loop counter is a 7 cycle gain.
Unrolling is another 7 cycle gain.
Working in reverse scan is another 6 cycles.
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Martin Storsjö [Thu, 2 May 2013 08:01:43 +0000 (11:01 +0300)]
compat: msvc: Make sure the object files are included when linking statically
If building libav with -MD in the cflags (for making the MSVC compiler
generate code for using a dynamically linked libc), the system headers
that declare strtod, snprintf and vsnprintf declare the functions as
imported from a DLL. To hook up wrappers of our own for these functions,
the function names are defined to avpriv_*, so that the calling code
within libav calls the wrappers instead. Since these functions
are declared to be imported from DLLs, the calling code expects to
load them from DLL import function pointers (creating references to
_imp__avpriv_strtod instead of directly to avpriv_strtod). If the
libav libraries are not built as DLLs, no such function pointers (as
the calling code expects) are created.
The linker can fix this up automatically in some cases (producing
warnings LNK4217 and LNK4049), if the object files are already
included. By telling the linker to try to include those symbols
(without the _imp prefix as the calling code ends up using),
we get the object files included, so that the linker can do the
automatic fixup. This is done via config.h, so that all (or at least
most) of the object files in our libraries force including the compat
files, to make sure they are included regardless of what files from our
static libraries actually are included.
Signed-off-by: Martin Storsjö <martin@martin.st>
Luca Barbato [Wed, 1 May 2013 17:01:11 +0000 (19:01 +0200)]
id3v2: check for end of file while unescaping tags
Prevent a serious out of buffer bound write.
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC:libav-stable@libav.org
Anton Khirnov [Wed, 24 Apr 2013 06:34:44 +0000 (08:34 +0200)]
avconv: do not send non-monotonous DTS to the muxers.
Hack partially based on a commit by Michael Niedermayer <michaelni@gmx.at>
Should fix (or work around) bug 458.
Anton Khirnov [Tue, 23 Apr 2013 18:34:59 +0000 (20:34 +0200)]
avconv: improve -re implementation
Integrate the code in the packet reading function, instead of inserting
sleeps in many places.
This is simpler to follow and should work better.
Anton Khirnov [Tue, 30 Apr 2013 06:36:20 +0000 (08:36 +0200)]
matroskaenc: add an option to put the index at the start of the file
Anton Khirnov [Tue, 30 Apr 2013 05:52:50 +0000 (07:52 +0200)]
matroskaenc: cosmetics, reorder the #includes
Masaki Tanaka [Tue, 9 Apr 2013 07:44:40 +0000 (16:44 +0900)]
vc1_parser: Set field_order.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Masaki Tanaka [Tue, 9 Apr 2013 07:43:08 +0000 (16:43 +0900)]
mpegvideo_parser: Set field_order.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Masaki Tanaka [Tue, 9 Apr 2013 07:39:34 +0000 (16:39 +0900)]
avcodec: Add field order information to AVCodecParserContext.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
Christophe Gisquet [Fri, 12 Apr 2013 19:07:01 +0000 (21:07 +0200)]
x86: float dsp: butterflies_float SSE
97c -> 49c
Some codecs could benefit from more unrolling, but AAC doesn't.
Anton Khirnov [Thu, 2 May 2013 07:39:18 +0000 (09:39 +0200)]
lavf-regression: use -frames instead of -t for image tests
-t 0.5 is 12.5 frames at 25 fps, which may round to either 12 or 13 on
different platforms.
Anton Khirnov [Tue, 30 Apr 2013 10:17:33 +0000 (12:17 +0200)]
lavc: schedule AVCodecContext.lowres for removal on next bump.
It has been deprecated some time ago, but was forgotten during the last
bump.
Martin Storsjö [Wed, 3 Apr 2013 12:55:14 +0000 (15:55 +0300)]
configure: Don't do enable_deep_weak on disabled variables
This avoids cases where configure tries to weakly enable an item
which actually is disabled, ending up still enabling dependencies
of the item which itself is only enabled weakly.
More concretely, the h264 decoder suggests error resilience, which
is then enabled weakly (unless manually disabled). Previously,
dsputil, which is a dependency of error resilience, was enabled
even if error resilience wasn't enabled in the end.
Signed-off-by: Martin Storsjö <martin@martin.st>
Martin Storsjö [Wed, 3 Apr 2013 12:52:45 +0000 (15:52 +0300)]
configure: Use a different variable name in push/popvar
The variable name 'var' is commonly used to iterate through arguments
in other functions. When the pushvar function internally uses the
variable 'var', it makes pushing/popping the variable 'var' not
work as intended.
Signed-off-by: Martin Storsjö <martin@martin.st>
Luca Barbato [Thu, 2 May 2013 09:42:09 +0000 (11:42 +0200)]
wav: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Thu, 2 May 2013 14:55:59 +0000 (16:55 +0200)]
aac: Remove aacpsy.h header, unused since
78e65cd7726
Diego Biurrun [Thu, 2 May 2013 14:46:51 +0000 (16:46 +0200)]
cavs: Remove cavsdata.h header, unused since
88386feefd
Diego Biurrun [Sat, 27 Apr 2013 20:54:57 +0000 (22:54 +0200)]
x86: dsputil: Move cavs and vc1-specific functions where they belong
Diego Biurrun [Sat, 27 Apr 2013 20:52:26 +0000 (22:52 +0200)]
x86: dsputil: Move avg_pixels16_mmx() out of rnd_template.c
The function does not do any rounding, so there is no point in
keeping it in a round template file.
Diego Biurrun [Sat, 27 Apr 2013 20:01:07 +0000 (22:01 +0200)]
x86: dsputil: Move avg_pixels8_mmx() out of rnd_template.c
The function is only instantiated once, so there is no point
in keeping it in a template file.
Diego Biurrun [Tue, 23 Apr 2013 15:10:59 +0000 (17:10 +0200)]
x86: Move duplicated put_pixels{8|16}_mmx functions into their own file
Luca Barbato [Wed, 1 May 2013 17:11:54 +0000 (19:11 +0200)]
id3v2: K&R formatting cosmetics
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Diego Biurrun [Tue, 30 Apr 2013 16:02:48 +0000 (18:02 +0200)]
ppc: Only compile AltiVec FFT assembly when AltiVec is enabled
Derek Buitenhuis [Mon, 29 Apr 2013 02:23:45 +0000 (22:23 -0400)]
avutil: doxy: Small clarification for av_buffer_create()
Explicitly saying it can't hurt.
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Derek Buitenhuis [Mon, 29 Apr 2013 02:15:34 +0000 (22:15 -0400)]
avcodec: doxy: Clarify how to use buf[] when implementing get_buffer2()
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Derek Buitenhuis [Mon, 29 Apr 2013 02:13:21 +0000 (22:13 -0400)]
avcodec: doxy: Clarify what get_buffer2 must fill in buf[]
Signed-off-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Diego Biurrun [Sat, 20 Apr 2013 19:47:15 +0000 (21:47 +0200)]
avformat: Drop unnecessary ff_ name prefixes from static functions
Diego Biurrun [Sat, 20 Apr 2013 19:48:29 +0000 (21:48 +0200)]
ppc: Drop unnecessary ff_ name prefixes from static functions
Diego Biurrun [Sat, 20 Apr 2013 20:15:22 +0000 (22:15 +0200)]
x86: Drop unnecessary ff_ name prefixes from static functions
Diego Biurrun [Sat, 20 Apr 2013 19:49:09 +0000 (21:49 +0200)]
arm: Drop unnecessary ff_ name prefixes from static functions
Diego Biurrun [Sat, 20 Apr 2013 19:51:11 +0000 (21:51 +0200)]
avcodec: Drop unnecessary ff_ name prefixes from static functions
Diego Biurrun [Sun, 14 Apr 2013 12:47:30 +0000 (14:47 +0200)]
ppc: More consistent arch initialization
Diego Biurrun [Fri, 26 Apr 2013 10:43:11 +0000 (12:43 +0200)]
fft: Remove pointless #ifdefs around function declarations
Diego Biurrun [Fri, 26 Apr 2013 22:37:32 +0000 (00:37 +0200)]
ppc: Move AltiVec utility headers out of AltiVec ifdefs
Now that the headers themselves have ifdef protection this is no
longer necessary and more consistent with normal include handling.
Diego Biurrun [Fri, 26 Apr 2013 22:35:08 +0000 (00:35 +0200)]
ppc: util_altivec: Surround AltiVec-related code by appropriate ifdefs
This prevents non-AltiVec-enabled compilers from choking.
Diego Biurrun [Sun, 14 Apr 2013 12:42:24 +0000 (14:42 +0200)]
ppc: More consistent names for H.264 optimizations files
Diego Biurrun [Fri, 26 Apr 2013 23:03:37 +0000 (01:03 +0200)]
mpegaudiosp: More consistent names for ppc/x86 optimization files
Anton Khirnov [Wed, 10 Apr 2013 13:02:01 +0000 (15:02 +0200)]
avconv: make output -ss insert trim/atrim filters.
This makes output -ss sample-accurate for audio and will allow further
simplication in the future.
Anton Khirnov [Wed, 10 Apr 2013 13:02:01 +0000 (15:02 +0200)]
avconv: make -t insert trim/atrim filters.
This makes -t sample-accurate for audio and will allow further
simplication in the future.
Most of the FATE changes are due to audio now being sample accurate. In
some cases a video frame was incorrectly passed with the old code, while
its was over the limit.
Anton Khirnov [Wed, 10 Apr 2013 12:46:20 +0000 (14:46 +0200)]
avconv_opt: allocate an OutputFile before the streams.
This way OutputFile variables like recording time can be used when
creating the streams.
Anton Khirnov [Tue, 2 Apr 2013 17:30:11 +0000 (19:30 +0200)]
lavfi: add trim and atrim filters.
Anton Khirnov [Wed, 10 Apr 2013 14:28:38 +0000 (16:28 +0200)]
lavfi: add an asetpts filter
Anton Khirnov [Wed, 10 Apr 2013 14:13:50 +0000 (16:13 +0200)]
vf_setpts: cosmetics, reformat