8 years agopixdesc: rename PIX_FMT_* flags to AV_PIX_FMT_FLAG_*
Anton Khirnov [Sun, 12 May 2013 13:41:49 +0000 (15:41 +0200)]
pixdesc: rename PIX_FMT_* flags to AV_PIX_FMT_FLAG_*

8 years agojpeg2000dec: don't use deprecated PIX_FMT values
Anton Khirnov [Sun, 12 May 2013 13:38:17 +0000 (15:38 +0200)]
jpeg2000dec: don't use deprecated PIX_FMT values

8 years agolavfi: fix compatibility code for old vf_scale options syntax
Anton Khirnov [Tue, 14 May 2013 06:14:21 +0000 (08:14 +0200)]
lavfi: fix compatibility code for old vf_scale options syntax

Currently it would incorrectly trigger on a string that contains a '='
but does not contain a ':', e.g. flags=<flags>.

8 years agoavfiltergraph: simplify inserting conversion filters.
Anton Khirnov [Tue, 14 May 2013 06:16:37 +0000 (08:16 +0200)]
avfiltergraph: simplify inserting conversion filters.

There is now no need to explicitly pass 0:0 as width/height to scale,
those are the defaults.

8 years agoClarify output of av_get_bits_per_pixel
Kieran Kunhya [Tue, 14 May 2013 19:23:40 +0000 (14:23 -0500)]
Clarify output of av_get_bits_per_pixel

Signed-off-by: Anton Khirnov <anton@khirnov.net>
8 years agofate: update the mmf reference
Luca Barbato [Tue, 14 May 2013 16:03:43 +0000 (18:03 +0200)]
fate: update the mmf reference

Using Optional Data chunk introduced changes the hash.

8 years agommf: Write metadata into an Optional Data chunk
Yoshihisa Uchida [Sat, 5 Jan 2013 22:11:09 +0000 (23:11 +0100)]
mmf: Write metadata into an Optional Data chunk

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
8 years agojpeg2000dec: Use correct printf length modifier for pointer differences
Diego Biurrun [Mon, 13 May 2013 19:40:53 +0000 (21:40 +0200)]
jpeg2000dec: Use correct printf length modifier for pointer differences

Also eliminate an unnecessary cast. Fixes the following warning:
jpeg2000dec.c:1200:20: warning: format ‘%lX’ expects argument of type ‘long unsigned int’, but argument 5 has type ‘long long unsigned int’

8 years agovc1dec: Don't apply the loop filter on fields
Martin Storsjö [Tue, 14 May 2013 11:36:00 +0000 (14:36 +0300)]
vc1dec: Don't apply the loop filter on fields

Fixes read of uninitialized memory.

Based on a patch by Michael Niedermayer.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agovc1: implement frame interlaced b-frame header parsing
Hendrik Leppkes [Mon, 23 Jan 2012 21:17:46 +0000 (22:17 +0100)]
vc1: implement frame interlaced b-frame header parsing

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agovc1dec: Don't attempt error concealment on field pictures
Michael Niedermayer [Tue, 24 Jul 2012 02:05:18 +0000 (04:05 +0200)]
vc1dec: Don't attempt error concealment on field pictures

This is not implemented and doesn't work.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agovc1dec: fieldtx is only valid for interlaced frame pictures
Sebastian Sandberg [Thu, 31 Jan 2013 17:04:21 +0000 (18:04 +0100)]
vc1dec: fieldtx is only valid for interlaced frame pictures

The fieldtx_plane is not cleared for interlaced fields.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoaacenc: Fix erasure of surround channels
Claudio Freire [Sun, 12 May 2013 07:38:40 +0000 (09:38 +0200)]
aacenc: Fix erasure of surround channels

This was due to a miscomputation of s->cur_channel, which led to
psy-based encoders using the psy coefficients for the wrong channel.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoaacenc: Fix target bitrate for twoloop quantiser search
Claudio Freire [Sat, 4 May 2013 21:36:37 +0000 (18:36 -0300)]
aacenc: Fix target bitrate for twoloop quantiser search

This fixes a case where multichannel bitrate isn't accurately
targetted by psy model alone, never achieving the target bitrate.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoaacenc: Fix a rounding bug in aacpsy channel bitrate computation
Claudio Freire [Sat, 4 May 2013 21:35:49 +0000 (18:35 -0300)]
aacenc: Fix a rounding bug in aacpsy channel bitrate computation

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoyadif: correct strides in filter_edges_16bit
James Darnley [Fri, 15 Mar 2013 15:37:33 +0000 (16:37 +0100)]
yadif: correct strides in filter_edges_16bit

The C code treats the data as arrays of uint16_t so strides must not
be in bytes but in pixels.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
8 years agoyadif: restore speed of the C filtering code
James Darnley [Sun, 10 Mar 2013 14:08:50 +0000 (15:08 +0100)]
yadif: restore speed of the C filtering code

Always use the special filter for the first and last 3 columns (only).

Changes made in 64ed397 slowed the filter to just under 3/4 of what it
was.  This commit restores the speed while maintaining identical output.

For reference, on my Athlon64:
1733222 decicycles in old
2358563 decicycles in new
1727558 decicycles in this

Signed-off-by: Anton Khirnov <anton@khirnov.net>
8 years agolavc: Fix msvc compilation of utils.c with -WX (warnings treated as errors)
Matt Wolenetz [Tue, 14 May 2013 02:29:26 +0000 (19:29 -0700)]
lavc: Fix msvc compilation of utils.c with -WX (warnings treated as errors)

This fixes https://bugzilla.libav.org/show_bug.cgi?id=514.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoconfigure: Disable PIC for cygwin just as for win32/mingw
Martin Storsjö [Mon, 13 May 2013 09:06:40 +0000 (12:06 +0300)]
configure: Disable PIC for cygwin just as for win32/mingw

If this is explicitly disabled for win32/mingw, it should also
be disabled for cygwin, for consistency and for the same reasons
as for win32/mingw.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agox86: dsputil: Rename dsputil_mmx.h --> dsputil_x86.h
Diego Biurrun [Tue, 7 May 2013 23:52:57 +0000 (01:52 +0200)]
x86: dsputil: Rename dsputil_mmx.h --> dsputil_x86.h

The header is not (anymore) MMX-specific.

8 years agox86: dsputil: Split inline assembly from init code
Diego Biurrun [Tue, 7 May 2013 23:45:39 +0000 (01:45 +0200)]
x86: dsputil: Split inline assembly from init code

Also remove some pointless comments.

8 years agox86: dsputil: Refactor pixels16 wrapper functions with a macro
Diego Biurrun [Sat, 20 Apr 2013 18:28:28 +0000 (20:28 +0200)]
x86: dsputil: Refactor pixels16 wrapper functions with a macro

8 years agoconfigure: x86: Only enable cpunop on i686
Diego Biurrun [Fri, 26 Apr 2013 14:49:03 +0000 (16:49 +0200)]
configure: x86: Only enable cpunop on i686

The assembler may insert nopl instructions for cpunop, which are not
(universally) supported on i586 CPUs.

8 years agoconfigure: Rename cmov processor capability to i686
Diego Biurrun [Fri, 26 Apr 2013 14:49:02 +0000 (16:49 +0200)]
configure: Rename cmov processor capability to i686

The goal is to make the capapility slightly more general and have it
cover the availability of the nopl instruction in addition to cmov.

8 years agoconfigure: Explicitly disable PIC when targeting win32/mingw
Martin Storsjö [Tue, 7 May 2013 16:25:03 +0000 (19:25 +0300)]
configure: Explicitly disable PIC when targeting win32/mingw

These platforms do not have any notion of PIC. On some compilers,
enabling pic produces a number of warnings.

This avoids trying to produce PIC loads in the ARM assembly - there
are no relocation types in PE/COFF that correspond to

As a side-effect, this avoids enabling PIC on mingw64, getting rid
of the warnings about PIC not having any effect on that platform.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoconfigure: Use enable_weak when enabling pic
Martin Storsjö [Thu, 9 May 2013 12:39:25 +0000 (15:39 +0300)]
configure: Use enable_weak when enabling pic

This allows it to be overridden, either by the user on the command
line, or by other sections of the configure script.

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoindeo3: avoid writes without necessary alignment in copy_cell()
Janne Grunau [Thu, 9 May 2013 12:53:03 +0000 (14:53 +0200)]
indeo3: avoid writes without necessary alignment in copy_cell()

Cells starting at a position aligned to 8 pixels but wider than
4 blocks are copied with 3 blocks per loop. This creates problems on the
next loop iterations since the routine copying 2 blocks requires the
same alignment on some architectures like ARM NEON.

8 years agox86: sbrdsp: implement SSE2 qmf_pre_shuffle
Christophe Gisquet [Sun, 25 Nov 2012 08:10:36 +0000 (09:10 +0100)]
x86: sbrdsp: implement SSE2 qmf_pre_shuffle

From 253 to 51 cycles on Arrandale and Win64.
44 cycles on SandyBridge.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
8 years agoaf_asyncts: fix offset calculation
Anton Khirnov [Wed, 8 May 2013 19:44:20 +0000 (21:44 +0200)]
af_asyncts: fix offset calculation

delta is in samples, not bytes. Also the sample format is not guaranteed
to be planar.


8 years agoavconv: use current syntax for the scale filter
Luca Barbato [Fri, 10 May 2013 00:37:14 +0000 (02:37 +0200)]
avconv: use current syntax for the scale filter

8 years agommf: K&R formatting cosmetics
Luca Barbato [Thu, 9 May 2013 08:37:31 +0000 (10:37 +0200)]
mmf: K&R formatting cosmetics

Signed-off-by: Diego Biurrun <diego@biurrun.de>
8 years agox86: dsputil: Remove unused argument from QPEL_OP macro
Diego Biurrun [Tue, 7 May 2013 23:55:21 +0000 (01:55 +0200)]
x86: dsputil: Remove unused argument from QPEL_OP macro

8 years agox86: vf_yadif: Remove stray dsputil_mmx #include
Diego Biurrun [Tue, 7 May 2013 23:51:31 +0000 (01:51 +0200)]
x86: vf_yadif: Remove stray dsputil_mmx #include

8 years agox86: dsputil: Move TRANSPOSE4 macro to the only place it is used
Diego Biurrun [Tue, 7 May 2013 22:57:57 +0000 (00:57 +0200)]
x86: dsputil: Move TRANSPOSE4 macro to the only place it is used

8 years agox86: dsputil: Move constant declarations into separate header
Diego Biurrun [Tue, 7 May 2013 22:50:17 +0000 (00:50 +0200)]
x86: dsputil: Move constant declarations into separate header

8 years agox86: dsputil: Group all assembly constants together in constants.c
Diego Biurrun [Mon, 6 May 2013 23:49:02 +0000 (01:49 +0200)]
x86: dsputil: Group all assembly constants together in constants.c

8 years agox86: dsputil: Move ff_pd assembly constants to the only place they are used
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

8 years agomsvc: Move linker pragma from config.h to libavutil/internal.h
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>
8 years agofate-run: Drop unnecessary regtest() indirection
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.

8 years agox86: dsputil: Remove unused ff_pb_3F constant
Diego Biurrun [Mon, 6 May 2013 23:37:03 +0000 (01:37 +0200)]
x86: dsputil: Remove unused ff_pb_3F constant

8 years agox86: dsputil: Remove unused MOVQ_BONE macro
Diego Biurrun [Mon, 6 May 2013 23:34:53 +0000 (01:34 +0200)]
x86: dsputil: Remove unused MOVQ_BONE macro

8 years agox86: dsputil: Move rv40-specific functions where they belong
Diego Biurrun [Sat, 27 Apr 2013 19:30:06 +0000 (21:30 +0200)]
x86: dsputil: Move rv40-specific functions where they belong

8 years agox86: dsputil hpeldsp: Move shared template functions into separate object
Diego Biurrun [Mon, 6 May 2013 22:42:22 +0000 (00:42 +0200)]
x86: dsputil hpeldsp: Move shared template functions into separate object

8 years agox86: rnd_template: Eliminate pointless OP_AVG macro indirection
Diego Biurrun [Mon, 6 May 2013 22:15:41 +0000 (00:15 +0200)]
x86: rnd_template: Eliminate pointless OP_AVG macro indirection

8 years agooma: properly forward errors in oma_read_packet
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.


8 years agooma: return meaningful errors
Luca Barbato [Wed, 17 Apr 2013 09:41:54 +0000 (11:41 +0200)]
oma: return meaningful errors

8 years agolavc: do not leak frames in avcodec_decode_audio4
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>
8 years agonut: use meaningful error values
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.

8 years agoFATE: use a less ambiguous end time for filter-trim-time test
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.

8 years agoconfigure: add dependencies to lavfi .pc file
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

Fixes Bug 502.

8 years agoconfigure: make avconv select (a)trim filters
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

8 years agoavconv: remove -deinterlace
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.

8 years agoindeo3: use unaligned reads on reference blocks.
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.


8 years agojpeg2000dec: initialize static data just once
Janne Grunau [Mon, 6 May 2013 20:42:27 +0000 (22:42 +0200)]
jpeg2000dec: initialize static data just once

8 years agojpeg2000dec: cleanup properly after decoding errors
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.

8 years agofate-jpeg2000-dcinema: force output to xyz12le
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.

8 years agovf_scale: add endianness conversion pixel format in query_formats
Janne Grunau [Fri, 26 Apr 2013 12:49:43 +0000 (14:49 +0200)]
vf_scale: add endianness conversion pixel format in query_formats

8 years agoswscale: support endianness conversion for AV_PIX_FMT_XYZ12
Janne Grunau [Fri, 26 Apr 2013 12:47:50 +0000 (14:47 +0200)]
swscale: support endianness conversion for AV_PIX_FMT_XYZ12

8 years agoswscale: add support for endianness only conversion
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.

8 years agopixdesc: add function to return pixel format with swapped endiannes
Janne Grunau [Fri, 26 Apr 2013 12:43:02 +0000 (14:43 +0200)]
pixdesc: add function to return pixel format with swapped endiannes

8 years agoswscale: Use alpha from the right row in yuva2rgba_c
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

This fixes bug 504.

CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agoswscale: Remove unnecessary backslashes
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>
8 years agojpeg2000: Fix uninitialized data errors pointed out by valgrind/memcheck
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>
8 years agox86: hpeldsp: Move avg_pixels8_x2_mmx() out of hpeldsp_rnd_template.c
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.

8 years agox86: hpeldsp: Only compile MMX hpeldsp code if MMX is enabled
Diego Biurrun [Sun, 5 May 2013 23:01:05 +0000 (01:01 +0200)]
x86: hpeldsp: Only compile MMX hpeldsp code if MMX is enabled

8 years agox86: More specific ifdefs for dsputil/hpeldsp init functions
Diego Biurrun [Sun, 5 May 2013 22:58:07 +0000 (00:58 +0200)]
x86: More specific ifdefs for dsputil/hpeldsp init functions

8 years agowav: Always seek to an even offset
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.


8 years agonut: use a define for the nut version
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.

8 years agobgmc: Do not mark ff_bgmc_decode_init() as av_cold
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.

8 years agoavcodec: Add av_cold attributes to end functions missing them
Diego Biurrun [Thu, 2 May 2013 08:20:12 +0000 (10:20 +0200)]
avcodec: Add av_cold attributes to end functions missing them

8 years agoavformat: Add av_cold attributes to init 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

8 years agoconfigure: Check for getenv
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>
8 years agoswscale: Add av_cold attributes to init functions missing them
Diego Biurrun [Thu, 18 Apr 2013 13:54:45 +0000 (15:54 +0200)]
swscale: Add av_cold attributes to init functions missing them

8 years agoavutil: 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

8 years agolavfi: let gcc realign the stack on public graph driving functions
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

Signed-off-by: Martin Storsjö <martin@martin.st>
8 years agosctp: Add a note on why sctp_recvmsg and sctp_sendmsg have ff_-prefixes
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

8 years agoavs: Increase magic value score above file extension score
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).

8 years agoavformat: Add AVPROBE_SCORE_EXTENSION define and use where appropriate
Diego Biurrun [Mon, 25 Mar 2013 15:12:51 +0000 (16:12 +0100)]
avformat: Add AVPROBE_SCORE_EXTENSION define and use where appropriate

8 years agobuild: output-example: Add avutil to ELIBS in link command
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.

8 years agoavresample: Add av_cold attributes to init functions missing them
Diego Biurrun [Tue, 30 Apr 2013 16:30:48 +0000 (18:30 +0200)]
avresample: Add av_cold attributes to init functions missing them

8 years agoavfilter: Add av_cold attributes to init/uninit functions
Diego Biurrun [Tue, 30 Apr 2013 16:30:02 +0000 (18:30 +0200)]
avfilter: Add av_cold attributes to init/uninit functions

8 years agoavcodec: Add av_cold attributes to init functions missing them
Diego Biurrun [Fri, 1 Feb 2013 09:31:59 +0000 (10:31 +0100)]
avcodec: Add av_cold attributes to init functions missing them

8 years agonut: K&R formatting cosmetics
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>
8 years agoconfigure: Add basic valgrind-memcheck support
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

The idea of using set_defaults is from Luca Barbato.

8 years agobuild: normalize coverage.info
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.

8 years agobuild: tune down the output of lcov/gcov
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.

8 years agowav: return meaningful errors
Luca Barbato [Thu, 2 May 2013 20:40:25 +0000 (22:40 +0200)]
wav: return meaningful errors

8 years agosilly typo fixes
Diego Biurrun [Mon, 20 Aug 2012 23:02:13 +0000 (01:02 +0200)]
silly typo fixes

8 years agosbrdsp: Unroll and use integer operations
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>
8 years agosbrdsp: Unroll sbr_autocorrelate_c
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>
8 years agox86: sbrdsp: Implement SSE2 qmf_deint_bfly
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>
8 years agocompat: msvc: Make sure the object files are included when linking statically
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>
8 years agoid3v2: check for end of file while unescaping tags
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

8 years agoavconv: do not send non-monotonous DTS to the muxers.
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.

8 years agoavconv: improve -re implementation
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.

8 years agomatroskaenc: add an option to put the index at the start of the file
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

8 years agomatroskaenc: cosmetics, reorder the #includes
Anton Khirnov [Tue, 30 Apr 2013 05:52:50 +0000 (07:52 +0200)]
matroskaenc: cosmetics, reorder the #includes

8 years agovc1_parser: Set field_order.
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>
8 years agompegvideo_parser: Set field_order.
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>
8 years agoavcodec: Add field order information to AVCodecParserContext.
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>