Commit Graph

37484 Commits

Author SHA1 Message Date
Martin Storsjö 4a27a52a1f fate: Don't use files from SRC_PATH in the actual tests
If building out of tree, make sure the filter scripts are copied
into the build tree before running tests. This makes sure that
SRC_PATH doesn't need to exist on the remote system (or doesn't
need to exist at the same path).

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 17:14:18 +03:00
Kostya Shishkov 2cf5d29110 indeo4: reuse context block VLC for band instead of defaulting
Currently if no custom block VLC is specified for band, a default block VLC
will be used, while the global block VLC stored in the context should be used
instead.

This fixes decoding of one sample I have.
2013-05-28 14:10:58 +02:00
Kostya Shishkov 6647aa0426 indeo4: add missing Haar and slanted transforms
That involves fixing INV_HAAR4() macro and changing it to work with different
input and output like INV_HAAR8() instead of in-place transform.
2013-05-28 14:08:09 +02:00
Kostya Shishkov 3b03d7e251 dxtory v2 support 2013-05-28 13:35:09 +02:00
Michael Niedermayer 728214992e vc1dec: Remove interlaced warning
Also add a note about the feature in the changelog.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 13:56:29 +03:00
Michael Niedermayer d8b9dbe776 vc1dec: Fix mixed field/frame intensity compensation
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 13:56:24 +03:00
Michael Niedermayer 17410faa22 vc1dec: Match addressing between compensation and MC in vc1_mc_4mv_chroma4
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 13:56:20 +03:00
Michael Niedermayer 1be175f929 vc1dec: Handle top and bottom blocks in vc1_mc_4mv_chroma4() differently if needed
Now it can use different references for those blocks and even use
averaging.

This fixes several chroma artifacts in several videos.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 13:56:15 +03:00
Michael Niedermayer c69765a2cc vc1dec: Fix doxy for vc1_mc_4mv_chroma4()
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 13:56:12 +03:00
Michael Niedermayer b412f705b5 vc1dec: Drop old use_ic code from vc1_b_mc
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 13:56:08 +03:00
Michael Niedermayer 5053a9a1ff vc1: Use shuffled use_ic instead of equally shuffled mv_mode
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 13:56:04 +03:00
Michael Niedermayer 3ced06f283 vc1dec: Implement intensity compensation for vc1_interp_mc()
Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 13:55:59 +03:00
Michael Niedermayer 28243b0d35 vc1dec: Redesign the intensity compensation
Use the intensity-compensated reference frame for subsequent
fields/B-frames.

Since we currently don't change the reference frame we have to
maintain lookup tables for intensity compensation in the following
dependent frames.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 13:55:55 +03:00
Michael Niedermayer 93b1281264 vc1dec: Shuffle field MVs after decoding, not before
This simplifies the code since copying MVs to the reference is not needed
anymore (and maybe something about fixing artifacts).

Also remove the unused mv_f_last.

Fixes a small number of artifacts in black_screen_VC-1.mkv
and several more artifacts in other videos.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-28 13:55:46 +03:00
Kostya Shishkov 851bc1d6be smacker: assign video frame PTS 2013-05-28 09:03:41 +02:00
Anton Khirnov 9b6f47c448 matroskadec: export full wavpack blocks.
This allows us to get rid of demuxer-specific hacks in the decoder and
will allow streamcopy from matroska once we have a wavpack muxer.
2013-05-28 08:14:35 +02:00
Anton Khirnov 5074f4545c wavpack demuxer: export full wavpack blocks.
Currently the demuxer shaves the blocks and exports only the
information that is useful to the decoder.

Exporting the blocks just as they are stored is simpler to understand
and will make remuxing wavpack easier.
2013-05-28 08:14:05 +02:00
Anton Khirnov 72dee5f40b wavpack: don't set sample format in init.
We don't know whether it will be float until we look at the data.
2013-05-28 08:04:07 +02:00
Anton Khirnov 35596bd4f4 wavpack: remove a useless parameter from wavpack_decode_block().
The decoder always returns output if an error does not occur.
2013-05-28 08:03:57 +02:00
Anton Khirnov d1bec4be22 wavpack: return an error on 0-sized blocks
Such blocks are not valid.
2013-05-28 08:03:37 +02:00
Anton Khirnov 1d177200ce wavpack: remove a useless check.
Number of samples in the first block is checked to be strictly positive
earlier in wavpack_decode_frame() and number of samples in all the other
blocks is checked to be equal to the first one.
2013-05-28 08:03:24 +02:00
Anton Khirnov 0f3a0b24dd wavpack: add an error message to a failure. 2013-05-28 08:03:13 +02:00
Anton Khirnov 474fb0c9d9 wavpack: return 0 instead of samples count from decoding functions
The caller never cares about the number of decoded samples, so this only
confuses the reader.
2013-05-28 08:03:02 +02:00
Anton Khirnov 528daa3990 wavpack: switch to planar output
This simplifies the code and makes it faster.
2013-05-28 08:01:30 +02:00
Anton Khirnov a7ec3a9a4e wavpack: drop redundant if/else blocks 2013-05-28 08:01:16 +02:00
Anton Khirnov 7b44c99180 wavpack: remove the subframes codec cap
The decoder always consumes full packets.
2013-05-28 08:01:08 +02:00
Anton Khirnov c330eba84c lavf: preserve side data when parsing packets. 2013-05-28 08:00:07 +02:00
Kostya Shishkov 268bb88544 smacker: add a clarification notice about audio decoding 2013-05-28 06:17:08 +02:00
Anton Khirnov a3fc62e89e configure: make jack depend on pthreads 2013-05-27 21:56:14 +02:00
Anton Khirnov 538bf76737 avconv: make -aspect work with streamcopy 2013-05-27 21:26:06 +02:00
Anton Khirnov 564b7e0c00 matroskadec: silently skip CodecState element.
mkvmerge apparrently uses it for mpeg1/2 video, but it contains the same
information as CodecPrivate, so it can be ignored.
2013-05-27 21:25:53 +02:00
Kostya Shishkov c3c08baefb smacker: fix off-by-one error in palette expanding code 2013-05-27 18:19:08 +02:00
Kostya Shishkov 5f30c6c8ed Revert "smackaud: clip output samples"
Smacker audio uses overflows instead of clipping.

This reverts commit 375ca0aca8.
2013-05-27 18:19:01 +02:00
Martin Storsjö be7952b5c3 arm: Only output eabi attributes if building for ELF
This matches the other eabi attribute in the same file. This is
required in order to build for arm/hardfloat with other object
file formats than ELF.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-27 00:55:33 +03:00
Kostya Shishkov 0418cbf081 fix scalarproduct_and_madd_int16_altivec() for orders > 16
the second and third sources were incremented only by half of the needed size
2013-05-26 16:10:47 +02:00
Alex Smith 322e4194dd msvc/icl: Intel Compiler support on Windows
Initial support for the ICL compiler on windows. Requires a new
c99wrap with ICL support (1.0.2+).

Currently not much different speed wise compared to msvc. In the
future with a few changes it can be made to support the inline asm.
This would be the primary reason for using it.

Passed all fate tests, versions tested:
    13.1.1.171 (2013 Update 3) x86 and x64
    12.1.5.344 (2011 Update 11) x86 and x64

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-05-25 17:52:44 +02:00
Laurent 9495cd170b configure: Fix check_exec_crash for ICL support
Change the check_exec_crash test to use a function pointer instead of
simply calling the function. The EBP availability test will crash when
compiled with ICL likely due to compiler optimization shenanigans.

Originally the check_exec_crash code was moved out of main to fix a
problem with gcc's treatment of non-leaf main on x86_32. Libav already
moved the code out of main but the addition of the function pointer will
prevent any inlining which fixes the remaining problem.

A function pointer is used since it is compiler agnostic (as opposed to
say __attribute__ ((noinline)) which would only work with gcc compatible
compilers).

Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2013-05-25 12:07:56 +02:00
Martin Storsjö 597208fde1 cpu: Include common.h for av_popcount64
This fixes build failures on windows since 2a6eaeaa8.

Signed-off-by: Martin Storsjö <martin@martin.st>
2013-05-24 13:34:19 +03:00
Anton Khirnov 8a994b7406 vf_fade: support slice threading 2013-05-24 09:33:05 +02:00
Anton Khirnov cb79881b49 vf_yadif: support slice threading 2013-05-24 09:32:07 +02:00
Anton Khirnov 129bb23843 lavfi: add a slice threading infrastructure
Mostly based on libavcodec's
2013-05-24 09:28:18 +02:00
Anton Khirnov 2a6eaeaa85 Move get_logical_cpus() from lavc/pthread to lavu/cpu.
It will be useful in lavfi, and could conceivably be useful to the user
applications as well.
2013-05-24 09:28:00 +02:00
Anton Khirnov 90f9a5830b w32pthreads: move from lavc to compat/
It will be used in other places than lavc.
2013-05-24 09:26:54 +02:00
Anton Khirnov e69222c507 doxy: enable TYPEDEF_HIDES_STRUCT
This means that typedef struct SomeStruct {...} SomeStruct will only be
documented as SomeStruct in the doxy, without a pointless entry in the
typedefs list.
2013-05-24 09:12:00 +02:00
Kostya Shishkov e9e5a1bdc7 Monkey's Audio old versions FATE tests 2013-05-24 09:04:18 +02:00
Yusuke Nakamura 3f1a7ceb2c h264_parser: Set field_order and picture_structure.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-05-24 08:45:05 +02:00
Yusuke Nakamura b493847df4 avcodec: Add picture structure information to AVCodecParserContext.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2013-05-24 08:43:14 +02:00
Luca Barbato fd06291239 wavpack: check packet size early
Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-22 22:02:57 +02:00
Luca Barbato 3f0b6d7a62 wavpack: use bytestream2 in wavpack_decode_block
Prevent most out of buffer reads.

Reported-by: Mateusz "j00ru" Jurczyk and Gynvael Coldwind
CC: libav-stable@libav.org
2013-05-22 22:02:55 +02:00
Anton Khirnov f36d7831d9 pixdesc: mark gray8 as pseudopal
Many functions treat it as such already.
Fixes Bug 499.

CC:libav-stable@libav.org
2013-05-22 21:18:08 +02:00