Christophe Gisquet
ca081217cd
hevcdsp: change types of SAO parameters
...
From openhevc
Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 20:54:03 +02:00
Michael Niedermayer
088875b6b8
Merge commit '7288b345850792430302a8f85a4b29140b770497'
...
* commit '7288b345850792430302a8f85a4b29140b770497':
fft-test: Drop unnecessary pointer indirection for context structs
Conflicts:
libavcodec/fft-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 20:48:05 +02:00
Michael Niedermayer
09f5b3750f
Merge commit 'd445c865f87e7f13230e4dac3f77f5af21da95cb'
...
* commit 'd445c865f87e7f13230e4dac3f77f5af21da95cb':
fft-test: Reduce variable scope where sensibly possible
Conflicts:
libavcodec/fft-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 20:40:41 +02:00
Michael Niedermayer
97d2b8d6f5
Merge commit 'eac77fcd56fc2a3391f0d86faf54302afb368ff7'
...
* commit 'eac77fcd56fc2a3391f0d86faf54302afb368ff7':
mpegenccontext: Remove unused dct_unquantize_h261 function pointers
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 20:20:08 +02:00
Michael Niedermayer
601c238854
avcodec/h264: support AV_PKT_DATA_NEW_EXTRADATA
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 17:40:21 +02:00
Michael Niedermayer
1bf371b24e
avcodec/h264: factor is_extra() out
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 17:40:21 +02:00
Diego Biurrun
c3c96deb5f
fft-test: Check memory allocations
2014-07-23 06:05:02 -07:00
Diego Biurrun
7288b34585
fft-test: Drop unnecessary pointer indirection for context structs
2014-07-23 06:05:02 -07:00
Diego Biurrun
d445c865f8
fft-test: Reduce variable scope where sensibly possible
...
Also merge variable declaration and initialization.
2014-07-23 06:05:02 -07:00
Michael Niedermayer
54256482cb
Merge commit '20ec0daaa1cdd3996ac6ed0198de961129474044'
...
* commit '20ec0daaa1cdd3996ac6ed0198de961129474044':
fft-test: Make global exptab variable static
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 14:27:10 +02:00
Michael Niedermayer
d0cb6caf69
Merge commit '2b6ab3a2bd7e7cee5e7a55dd2e48b8feb4a826bb'
...
* commit '2b6ab3a2bd7e7cee5e7a55dd2e48b8feb4a826bb':
mpegvideo: Move QUANT_BIAS_SHIFT define to the only place it is used
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 14:15:48 +02:00
Nidhi Makhijani
eac77fcd56
mpegenccontext: Remove unused dct_unquantize_h261 function pointers
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-23 05:07:21 -07:00
Diego Biurrun
20ec0daaa1
fft-test: Make global exptab variable static
2014-07-23 03:45:33 -07:00
Diego Biurrun
2b6ab3a2bd
mpegvideo: Move QUANT_BIAS_SHIFT define to the only place it is used
2014-07-23 03:16:55 -07:00
Carl Eugen Hoyos
c75fdee747
avcodec/x86/hevc_deblock: Fix compilation with nasm.
2014-07-23 10:32:27 +02:00
Michael Niedermayer
9515d7c629
Merge commit '5be7d8597d02bcaba2de2503c0e59cf865c746dc'
...
* commit '5be7d8597d02bcaba2de2503c0e59cf865c746dc':
fft-test: Comment some #endifs
Conflicts:
libavcodec/fft-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 00:29:06 +02:00
Michael Niedermayer
9eeedf8769
Merge commit '57f1b1dcc77a93c2a5c503d4e47fe2f567cf9db5'
...
* commit '57f1b1dcc77a93c2a5c503d4e47fe2f567cf9db5':
fft-test: Drop unnecessary #ifdefs around header includes
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-23 00:23:28 +02:00
Michael Niedermayer
77304cf352
avcodec: dct/rdft only support float mode, skip their contents for fixed point
2014-07-23 00:18:24 +02:00
Michael Niedermayer
1df2f7b6a8
Merge commit 'eba2233b58c2c4b468c58287d6537b2f1188a8cd'
...
* commit 'eba2233b58c2c4b468c58287d6537b2f1188a8cd':
build: Add define for SIMD extensions requiring 16-byte aligned buffers
Conflicts:
configure
libavcodec/utils.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 22:32:40 +02:00
Michael Niedermayer
013172ae9f
Merge commit '67bc1ba5d75953d136bfa02ce6c0a27e9fd9dac3'
...
* commit '67bc1ba5d75953d136bfa02ce6c0a27e9fd9dac3':
libxvid: Drop PPC-specific CPU detection hack
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 22:23:26 +02:00
Diego Biurrun
5be7d8597d
fft-test: Comment some #endifs
2014-07-22 11:55:40 -07:00
Diego Biurrun
57f1b1dcc7
fft-test: Drop unnecessary #ifdefs around header includes
2014-07-22 11:55:40 -07:00
Diego Biurrun
11c7155cce
dct/rdft: Add missing typedefs for context structs
...
Without the typedefs there can be trouble depending on #include order.
2014-07-22 11:55:40 -07:00
Diego Biurrun
eba2233b58
build: Add define for SIMD extensions requiring 16-byte aligned buffers
2014-07-22 11:46:35 -07:00
Diego Biurrun
67bc1ba5d7
libxvid: Drop PPC-specific CPU detection hack
...
It is doubtful if the hack (still) works and Xvid had ten years to fix it.
2014-07-22 11:45:07 -07:00
Christophe Gisquet
ed248e7f70
hevc: wait proper position for tmvp
...
The position is either rounded or not checked, so delay the wait to
check the proper value.
Reviewed-by: Mickaël Raulet <mraulet@insa-rennes.fr>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 18:11:50 +02:00
Przemysław Sobala
c68098ba4a
avcodec/mjpegdec: add pix_fmt: 0x14121200
...
Fixes: _15801_F.jpg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 18:07:44 +02:00
Michael Niedermayer
ca6b33b8bd
avcodec/x86/hevcdsp_init: Fix "warning: assignment from incompatible pointer type"
2014-07-22 16:36:12 +02:00
Anton Khirnov
d7e162d46b
hevcdsp: remove an unneeded variable in the loop filter
...
beta0 and beta1 will always be the same within a CU
Signed-off-by: Mickaël Raulet <mraulet@insa-rennes.fr>
cherry picked from commit 4a23d824741a289c7d2d2f2871d1e2621b63fa1b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:27:26 +02:00
Anton Khirnov
ae2f048fd7
avcodec/x86/hevc_deblock: cosmetics
...
cherry picked from commit f7843356253459e6010320292dbbc1e888a5249b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:18:05 +02:00
Anton Khirnov
b435043abb
hevc: cleanups in SSE2 and SSSE3 loop filters, use fewer instructions
...
cherry picked from commit f7843356253459e6010320292dbbc1e888a5249b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:17:29 +02:00
Anton Khirnov
e8581b17a8
avcodec/x86/hevc_deblock: use test instead of cmp 0
...
cherry picked from commit f7843356253459e6010320292dbbc1e888a5249b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:16:05 +02:00
Anton Khirnov
dc69247de4
avcodec/x86/hevc_deblock: use of paddw instead of psllw
...
cherry picked from commit f7843356253459e6010320292dbbc1e888a5249b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:14:53 +02:00
Anton Khirnov
500a0394d5
avcodec/x86/hevc_deblock: add %ifs to avoid "do nothing instructions"
...
cherry picked from commit f7843356253459e6010320292dbbc1e888a5249b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:13:28 +02:00
Anton Khirnov
7a4cf67117
hevc: cleaning up SSE2 and SSSE3 deblocking filters
...
Signed-off-by: Mickaël Raulet <mraulet@insa-rennes.fr>
cherry picked from commit b432041d7d1eca38831590f13b4e5baffff8186f
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 16:00:48 +02:00
Mickaël Raulet
5f08b417b4
hevc/mvs: cosmetics
...
cherry picked from commit 9053cd92700e939cde49ab0ea3c6917be453cab7
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 15:19:19 +02:00
Mickaël Raulet
cd714afe81
hevc/mvs: more cleanups
...
cherry picked from commit c4e467e79f59453783c97bc6044082edb7a6468b
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 15:13:09 +02:00
Mickaël Raulet
3ad0460831
hevc/mvs: code cleaning
...
cherry picked from commit 74f10da013ea71a3f6b77cdff989c4574c8a5ea2
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 15:05:00 +02:00
Mickaël Raulet
c4d63cd230
hevc/mvs: simplifying derive_spatial_merge_candidates function
...
cherry picked from commit 99be11cf08a5628d0bb6ac7f4958bf9dd35cda62
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 14:17:19 +02:00
Mickaël Raulet
e9bb45ba79
hevc/mvs: remove same prediction block
...
cherry picked from commit 1206262ba1ef810328cadce99d5cdc0bf9285e4d
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 14:12:00 +02:00
Mickaël Raulet
560b0253ff
hevc/mvs: simplify derive_temporal_colocated_mvs
...
cherry picked from commit def7db60966765f4687250d766b40dbcf0f7e503
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 14:11:43 +02:00
Mickaël Raulet
37822a566f
hevc/rext: remove warning for cross component prediction
...
cherry picked from commit fb595102593c94179502bb1967f978a1d99cc7cb
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 13:59:00 +02:00
Mickaël Raulet
627c044f50
hevc/rext: fixing rdpcm and scaling list for Range Extension
...
-new rext bitstreams:
PERSIST_RPARAM_A_RExt_Sony_1.bit ok =
QMATRIX_A_RExt_Sony_1.bit ok =
SAO_A_RExt_MediaTek_1.bit ok =
(cherry picked from commit cdea029d452c521f8e5bcbe589f44b13a4011604)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 13:07:54 +02:00
Mickaël Raulet
fa0506e413
hevc/rext: update boundary strength for chroma deblocking filter
...
cherry picked from commit 7d05c95ac5a63d7675bf645e74b4cf1fffff4796
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 13:00:14 +02:00
Michael Niedermayer
4ec1cb2497
Merge commit '78670fbf07bd03479073d4218440de4914304680'
...
* commit '78670fbf07bd03479073d4218440de4914304680':
imgconvert: cosmetics: Reshuffle defines to reduce ifdeffery
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 12:55:11 +02:00
Michael Niedermayer
7cdb3b2b79
Merge commit '6869612f5c7d4d2f20f69a5658328a761deadb1c'
...
* commit '6869612f5c7d4d2f20f69a5658328a761deadb1c':
arm: Macroize the test for 'setend' CPU instruction support
Conflicts:
libavcodec/arm/h264dsp_init_arm.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 12:46:13 +02:00
Michael Niedermayer
c933f2c4cc
Merge commit '16e6652286213014c28a9c3af70435e767d28638'
...
* commit '16e6652286213014c28a9c3af70435e767d28638':
aarch64: NEON intrinsics dct_unquantize_h263.
Conflicts:
libavcodec/mpegvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-22 03:35:29 +02:00
Diego Biurrun
78670fbf07
imgconvert: cosmetics: Reshuffle defines to reduce ifdeffery
2014-07-21 15:08:01 -07:00
Ben Avison
6869612f5c
arm: Macroize the test for 'setend' CPU instruction support
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-21 15:08:01 -07:00
James Yu
16e6652286
aarch64: NEON intrinsics dct_unquantize_h263.
...
Intrinsics only used on aarch64 since the existing ARMv7 NEON asm
is slightly faster (Cortex-A9, gcc-4.8, micro-benchmarks and full
decoding time).
Signed-off-by: James Yu <james.yu@linaro.org>
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2014-07-21 23:18:29 +02:00
Michael Niedermayer
16c66f3151
Merge commit '2ce53880bfeb431decdd2fc82298c0aff823ab47'
...
* commit '2ce53880bfeb431decdd2fc82298c0aff823ab47':
build: Conditionally compile all avcodec test programs
Conflicts:
libavcodec/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 22:29:15 +02:00
Michael Niedermayer
9a436ae30f
Merge commit '16b7328058fa600d5158c84d9cc621a134eb88bc'
...
* commit '16b7328058fa600d5158c84d9cc621a134eb88bc':
build: Conditionally build and run DCT test program
Conflicts:
libavcodec/Makefile
libavcodec/dct-test.c
tests/fate/libavcodec.mak
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 22:02:23 +02:00
Michael Niedermayer
79df91bfc4
Merge commit 'bd499d9af668aef979ec9f3f3215b8dd508c7ec1'
...
* commit 'bd499d9af668aef979ec9f3f3215b8dd508c7ec1':
build: Conditionally build and test iirfilter
Conflicts:
libavcodec/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 21:35:02 +02:00
Diego Biurrun
2ce53880bf
build: Conditionally compile all avcodec test programs
2014-07-21 05:33:03 -07:00
Diego Biurrun
16b7328058
build: Conditionally build and run DCT test program
2014-07-21 05:32:35 -07:00
Diego Biurrun
bd499d9af6
build: Conditionally build and test iirfilter
2014-07-21 05:32:07 -07:00
Michael Niedermayer
4054171666
avcodec/dct-test: remove fixed array sizes
...
They are unneeded and make adding elements slightly harder as they
would need to be constantly updated
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 14:00:48 +02:00
Michael Niedermayer
d986c414de
Merge commit '81b9bf319226fe03436c80aaa8a2c91767cab7ce'
...
* commit '81b9bf319226fe03436c80aaa8a2c91767cab7ce':
dct-test: Move arch-specific bits into arch-specific subdirectories
Conflicts:
libavcodec/dct-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 13:33:51 +02:00
Nidhi Makhijani
c3ec963d0d
mjpeg: return proper error code
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-21 01:25:33 -07:00
Diego Biurrun
81b9bf3192
dct-test: Move arch-specific bits into arch-specific subdirectories
2014-07-21 01:10:11 -07:00
Janne Grunau
a9f3f5fadb
Revert "tiff: support reading gray+alpha at 8 bits"
...
This reverts commit b31d76e45f
as it
uses an unkown pixel format.
2014-07-21 08:35:32 +02:00
Michael Niedermayer
dc021a0218
Merge commit 'c39059bea3adebcd888571d1181db215eee54495'
...
* commit 'c39059bea3adebcd888571d1181db215eee54495':
h264: Fix direct temporal mvs for bottom-field-first poc order
Conflicts:
libavcodec/h264_direct.c
See: ebd1c505d2
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 02:16:13 +02:00
Michael Niedermayer
110420aac0
Merge commit '4de8b60684ce13dff3e3d372dae4f49b9e53f755'
...
* commit '4de8b60684ce13dff3e3d372dae4f49b9e53f755':
idct: Move arm-specific declarations to a header in the arm directory
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-21 01:56:22 +02:00
Ronald S. Bultje
c39059bea3
h264: Fix direct temporal mvs for bottom-field-first poc order
...
Such files can be created using the --bff x264 option.
Sample-Id: h264_direct_temporal_mvs_bff.mkv
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-07-20 23:32:13 +01:00
Carl Eugen Hoyos
b31d76e45f
tiff: support reading gray+alpha at 8 bits
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-07-20 23:32:13 +01:00
Diego Biurrun
4de8b60684
idct: Move arm-specific declarations to a header in the arm directory
2014-07-20 13:02:17 -07:00
Michael Niedermayer
02e3e3ea51
Merge commit '9f99a5f1d078721a30a76aec27c58805b7b87e58'
...
* commit '9f99a5f1d078721a30a76aec27c58805b7b87e58':
mpegencconetxt: Move rv10-specific orig_width/orig_height where they belong
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-20 20:32:24 +02:00
Nidhi Makhijani
9f99a5f1d0
mpegencconetxt: Move rv10-specific orig_width/orig_height where they belong
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-20 05:13:01 -07:00
Mickaël Raulet
950a4f8326
hevc: fix offset for sao temporary frame
...
fixes fate on alpha
cherry picked from commit 0a8ce1cbdaff7cd026bcf95ee3787bc7b4c063ee
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-20 02:48:53 +02:00
Michael Niedermayer
d13a731fc1
avcodec/hevc_ps: Check abs_delta_rps
...
Fixes integer overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 17:30:44 +02:00
Michael Niedermayer
ba80b8d29b
avcodec/hevc: check nb_cpb
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 16:51:05 +02:00
Christophe Gisquet
7a4a5515b0
hevc: use intreadwrite
...
When dealing with MVs, both components may be processed at a time.
On Win64, 560 to 539 cycles for derive_spatial_merge_candidates.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 15:27:08 +02:00
Christophe Gisquet
5e55c7e1bc
hevc: report more precise progress
...
There's a lag of one CTB line for SAO behind deblocking filter, except for
last line. However, once SAO has been completed on a line, all its pixels,
i.e. up to y+ctb_size are filtered and ready to be used as reference.
Without SAO, when deblocking filter finishes a CTB line, only the bottom
bottom 4 pixels may be filtered when next CTB is process by the deblocing.
The await_progess for hevc then checks whether the bottom pixels of a PU
requires access beyond that point, so the reporting should effectively
report up to the the above limits.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 14:20:10 +02:00
Michael Niedermayer
7bdbd2653f
Merge commit '1a583c0c60240adb8fa6620c6df33f1a0a0fe5d9'
...
* commit '1a583c0c60240adb8fa6620c6df33f1a0a0fe5d9':
fdct: Move ppc-specific declarations to a header in the ppc directory
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 14:10:25 +02:00
Michael Niedermayer
776647360d
Merge commit '5dcc201505f71b1e73e9eef12ce89d4eed252ad0'
...
* commit '5dcc201505f71b1e73e9eef12ce89d4eed252ad0':
simple_idct: Move x86-specific declarations to a header in the x86 directory
Conflicts:
libavcodec/x86/simple_idct.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 13:56:29 +02:00
Michael Niedermayer
6da96a9fc9
Merge commit '85cabb8d002f2cd100ced5cc17d87bfc9460d314'
...
* commit '85cabb8d002f2cd100ced5cc17d87bfc9460d314':
fdct: Move x86-specific declarations to a header in the x86 directory
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 13:45:59 +02:00
Diego Biurrun
1a583c0c60
fdct: Move ppc-specific declarations to a header in the ppc directory
2014-07-19 02:38:22 -07:00
Diego Biurrun
5dcc201505
simple_idct: Move x86-specific declarations to a header in the x86 directory
2014-07-19 02:33:36 -07:00
Diego Biurrun
85cabb8d00
fdct: Move x86-specific declarations to a header in the x86 directory
2014-07-19 02:25:59 -07:00
Michael Niedermayer
a86d527c8b
Merge commit 'e0a2e60c0a6cbcceef08e94af5081d2aa8e6a52f'
...
* commit 'e0a2e60c0a6cbcceef08e94af5081d2aa8e6a52f':
dct-test: Reuse enum idct_permutation_type instead of duplicating it
Conflicts:
libavcodec/dct-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 04:15:38 +02:00
Mickaël Raulet
e1e3ec9b02
hevc: fix transquant_bypass
...
cherry picked from commit 4a16cb2c70728a55d2fd723aff01b13ea259c4df
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-19 00:11:05 +02:00
Mickaël Raulet
fdb20db642
hevc/rext: put a warning log message instead of an error log message
...
cherry picked from commit 243cb99cff727d6a14c32cdff2748f6c255dbaf4
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 23:47:06 +02:00
Michael Niedermayer
ffa0b510cd
avcodec/hevc: fix pict_type
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:59:03 +02:00
Mickaël Raulet
d249e6828e
hevc/sao: optimze sao implementation
...
- adding one extra pixel all around the frame
- do not copy when SAO is not applied
5% improvement
cherry picked from commit 10fc29fc19a12c4d8168fbe1a954b76386db12d0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:46:50 +02:00
Michael Niedermayer
2897447ddf
Merge commit '913fa85a2c1fcd71802f7decdef5f355e0d9c757'
...
* commit '913fa85a2c1fcd71802f7decdef5f355e0d9c757':
dct-test: Skip indirection for MMX IDCT permutation
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:45:32 +02:00
Michael Niedermayer
097bf834ba
Merge commit '9e0b29911f1f167381a7dbdfca68bf417b8c767b'
...
* commit '9e0b29911f1f167381a7dbdfca68bf417b8c767b':
x86: dnxhdenc: Eliminate some unnecessary ifdefs
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:33:24 +02:00
Michael Niedermayer
4b0fa45b84
Merge commit 'b4edbe9a0eb48423fbf249b0ca7fb62838bdb7f5'
...
* commit 'b4edbe9a0eb48423fbf249b0ca7fb62838bdb7f5':
libgsm: Split decoder and encoder
Conflicts:
libavcodec/libgsmenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:28:34 +02:00
Michael Niedermayer
521f569734
Merge commit '8b0dd4942aac320d1ca3c40fa7ea1be342c71273'
...
* commit '8b0dd4942aac320d1ca3c40fa7ea1be342c71273':
idctdsp: prettyprinting cosmetics
Conflicts:
libavcodec/idctdsp.c
libavcodec/ppc/idctdsp.c
libavcodec/x86/idctdsp_init.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:16:04 +02:00
Diego Biurrun
e0a2e60c0a
dct-test: Reuse enum idct_permutation_type instead of duplicating it
2014-07-18 13:04:39 -07:00
Michael Niedermayer
42d326353c
Merge commit 'b4987f72197e0c62cf2633bf835a9c32d2a445ae'
...
* commit 'b4987f72197e0c62cf2633bf835a9c32d2a445ae':
idct: Convert IDCT permutation #defines to an enum
Conflicts:
libavcodec/idctdsp.c
libavcodec/x86/cavsdsp.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 22:01:17 +02:00
Michael Niedermayer
cff61d595e
Merge commit '24af1aa0f70362a66cda04c9d7cd012e019f5572'
...
* commit '24af1aa0f70362a66cda04c9d7cd012e019f5572':
fft: Convert FFT/MDCT permutation type #defines to enums
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 21:43:50 +02:00
Michael Niedermayer
29119aff6c
Merge commit '746ad4e0df7faf93329804e412ec53c1d929a75b'
...
* commit '746ad4e0df7faf93329804e412ec53c1d929a75b':
dct-test: Improve CPU flags struct member name
Conflicts:
libavcodec/dct-test.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 21:36:46 +02:00
Michael Niedermayer
2dbda9378c
Merge commit 'cb44b21da1f59923be577f08c267ec270529be97'
...
* commit 'cb44b21da1f59923be577f08c267ec270529be97':
dct-test: Move cpu_flags variable out of global scope
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 21:30:25 +02:00
Carl Eugen Hoyos
5dcd43cd86
Fix make checkheaders for libavcodec/proresdsp.h.
2014-07-18 19:05:07 +02:00
Diego Biurrun
913fa85a2c
dct-test: Skip indirection for MMX IDCT permutation
2014-07-18 09:58:17 -07:00
Diego Biurrun
9e0b29911f
x86: dnxhdenc: Eliminate some unnecessary ifdefs
2014-07-18 09:58:17 -07:00
Nidhi Makhijani
b4edbe9a0e
libgsm: Split decoder and encoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-18 17:27:54 +02:00
Diego Biurrun
8b0dd4942a
idctdsp: prettyprinting cosmetics
2014-07-18 07:51:03 -07:00
Diego Biurrun
b4987f7219
idct: Convert IDCT permutation #defines to an enum
...
Also rename the enum values to be consistent with other DCT permutations.
2014-07-18 07:51:03 -07:00
Diego Biurrun
24af1aa0f7
fft: Convert FFT/MDCT permutation type #defines to enums
2014-07-18 07:29:13 -07:00
Diego Biurrun
746ad4e0df
dct-test: Improve CPU flags struct member name
2014-07-18 06:14:43 -07:00
Diego Biurrun
cb44b21da1
dct-test: Move cpu_flags variable out of global scope
2014-07-18 06:14:42 -07:00
Timothy Gu
0035783488
smacker: remove dead code
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Reviewed-by: Paul B Mahol <onemda@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 13:31:19 +02:00
Michael Niedermayer
d13effb0b4
Merge commit '7e18a727d2c2a19f22fcf68875d1b05fd2eafcef'
...
* commit '7e18a727d2c2a19f22fcf68875d1b05fd2eafcef':
arm: cosmetics: Consistently use lowercase for shift operators
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 13:17:29 +02:00
Michael Niedermayer
cd4497d8c5
Merge commit 'fe67f3fbb5f9f6a6b60f837f6bc5e087ac11f3bf'
...
* commit 'fe67f3fbb5f9f6a6b60f837f6bc5e087ac11f3bf':
arm: cosmetics: Fix a misaligned asm operand
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 12:44:03 +02:00
Martin Storsjö
7e18a727d2
arm: cosmetics: Consistently use lowercase for shift operators
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-18 11:17:40 +03:00
Martin Storsjö
fe67f3fbb5
arm: cosmetics: Fix a misaligned asm operand
...
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-18 11:17:35 +03:00
James Almer
277e5ca617
alpha/me_cmp: move code out of dsputil
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 05:15:17 +02:00
James Almer
95a2d705cd
alpha/idctdsp: move disabled cruft out of dsputil
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 05:15:05 +02:00
Michael Niedermayer
d5ba19e611
avcodec/a64multienc use av_freep()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 04:57:00 +02:00
Timothy Gu
cd3c85ac5c
a64multienc: remove dead assignment
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 04:56:18 +02:00
Michael Niedermayer
c27adb37ef
Merge commit '87552d54d3337c3241e8a9e1a05df16eaa821496'
...
* commit '87552d54d3337c3241e8a9e1a05df16eaa821496':
armv6: Accelerate ff_fft_calc for general case (nbits != 4)
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 03:12:02 +02:00
Michael Niedermayer
c527c14d63
avcodec/dvenc: clear all dsp contexts
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-18 00:48:34 +02:00
Ben Avison
87552d54d3
armv6: Accelerate ff_fft_calc for general case (nbits != 4)
...
The previous implementation targeted DTS Coherent Acoustics, which only
requires nbits == 4 (fft16()). This case was (and still is) linked directly
rather than being indirected through ff_fft_calc_vfp(), but now the full
range from radix-4 up to radix-65536 is available. This benefits other codecs
such as AAC and AC3.
The implementaion is based upon the C version, with each routine larger than
radix-16 calling a hierarchy of smaller FFT functions, then performing a
post-processing pass. This pass benefits a lot from loop unrolling to
counter the long pipelines in the VFP. A relaxed calling standard also
reduces the overhead of the call hierarchy, and avoiding the excessive
inlining performed by GCC probably helps with I-cache utilisation too.
I benchmarked the result by measuring the number of gperftools samples that
hit anywhere in the AAC decoder (starting from aac_decode_frame()) or
specifically in the FFT routines (fft4() to fft512() and pass()) for the
same sample AAC stream:
Before After
Mean StdDev Mean StdDev Confidence Change
Audio decode 2245.5 53.1 1599.6 43.8 100.0% +40.4%
FFT routines 940.6 22.0 348.1 20.8 100.0% +170.2%
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-18 01:34:23 +03:00
Ben Avison
5c22e8e4ad
armv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)
...
The previous implementation targeted DTS Coherent Acoustics, which only
requires mdct_bits == 6. This relatively small size lent itself to
unrolling the loops a small number of times, and encoding offsets
calculated at assembly time within the load/store instructions of each
iteration.
In the more general case (codecs such as AAC and AC3) much larger arrays
are used - mdct_bits == [8, 9, 11]. The old method does not scale for
these cases, so more integer registers are used with non-unrolled versions
of the loops (and with some stack spillage). The postrotation filter loop
is still unrolled by a factor of 2 to permit the double-buffering of some
VFP registers to facilitate overlap of neighbouring iterations.
I benchmarked the result by measuring the number of gperftools samples
that hit anywhere in the AAC decoder (starting from aac_decode_frame())
or specifically in ff_imdct_half_c / ff_imdct_half_vfp, for the same
example AAC stream:
Before After
Mean StdDev Mean StdDev Confidence Change
aac_decode_frame 2368.1 35.8 2117.2 35.3 100.0% +11.8%
ff_imdct_half_* 457.5 22.4 251.2 16.2 100.0% +82.1%
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-18 01:34:08 +03:00
Michael Niedermayer
162cffca80
avcodec/me_cmp: restore author attribution and copyrights
...
These where removed by libav in
See: git show -C 2d60444331
diff --git a/libavcodec/dsputil.c b/libavcodec/me_cmp.c
similarity index 98%
rename from libavcodec/dsputil.c
rename to libavcodec/me_cmp.c
index ba71a99..9fcc937 100644
--- a/libavcodec/dsputil.c
+++ b/libavcodec/me_cmp.c
@@ -1,8 +1,4 @@
/*
- * DSP utils
- * Copyright (c) 2000, 2001 Fabrice Bellard
- * Copyright (c) 2002-2004 Michael Niedermayer <michaelni@gmx.at>
- *
* This file is part of Libav.
*
* Libav is free software; you can redistribute it and/or
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 23:59:28 +02:00
Michael Niedermayer
3a2d1465c8
Merge commit '2d60444331fca1910510038dd3817bea885c2367'
...
* commit '2d60444331fca1910510038dd3817bea885c2367':
dsputil: Split motion estimation compare bits off into their own context
Conflicts:
configure
libavcodec/Makefile
libavcodec/arm/Makefile
libavcodec/dvenc.c
libavcodec/error_resilience.c
libavcodec/h264.h
libavcodec/h264_slice.c
libavcodec/me_cmp.c
libavcodec/me_cmp.h
libavcodec/motion_est.c
libavcodec/motion_est_template.c
libavcodec/mpeg4videoenc.c
libavcodec/mpegvideo.c
libavcodec/mpegvideo_enc.c
libavcodec/x86/Makefile
libavcodec/x86/me_cmp_init.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 23:27:40 +02:00
Michael Niedermayer
d6676a1605
Merge commit 'c23ce454b3e33634a188d6facfd2b7182af5af93'
...
* commit 'c23ce454b3e33634a188d6facfd2b7182af5af93':
x86: dsputil: Coalesce all init files
Conflicts:
libavcodec/x86/dsputil_init.c
libavcodec/x86/dsputil_x86.h
libavcodec/x86/motion_est.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 22:07:52 +02:00
Diego Biurrun
2d60444331
dsputil: Split motion estimation compare bits off into their own context
2014-07-17 09:07:10 -07:00
Michael Niedermayer
dca22ab055
avcodec/resample: Use av_m/realloc_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 18:00:25 +02:00
Michael Niedermayer
ad516dd271
avcodec/resample2: Use av_malloc(z)_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 18:00:25 +02:00
Michael Niedermayer
5fce29ef29
Merge commit '2db953f84671997e936f91140ffb5143c1537844'
...
* commit '2db953f84671997e936f91140ffb5143c1537844':
h264: K&R formatting cosmetics
Conflicts:
libavcodec/h264.c
libavcodec/h264_direct.c
libavcodec/h264_slice.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 14:00:01 +02:00
Michael Niedermayer
b884599f6a
Merge commit 'a11ef610eec5241e226efbd1c5bb5eb45c88d2c2'
...
* commit 'a11ef610eec5241e226efbd1c5bb5eb45c88d2c2':
h264: Remove some commented-out, broken cruft
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-17 13:50:31 +02:00
Diego Biurrun
c23ce454b3
x86: dsputil: Coalesce all init files
...
This makes the init files match the structure of the dsputil split.
2014-07-17 03:32:56 -07:00
Luca Barbato
2db953f846
h264: K&R formatting cosmetics
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-07-17 03:05:24 -07:00
Diego Biurrun
a11ef610ee
h264: Remove some commented-out, broken cruft
2014-07-16 12:26:34 -07:00
Michael Niedermayer
a3f752bcee
avcodec/snow: remove unused variables
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 21:24:11 +02:00
Timothy Gu
1b03448385
aaccoder: remove unused assignment
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 20:55:24 +02:00
Michael Niedermayer
21dfabfa64
Merge commit 'adff0a8166345bb9513f0f658043fb6387e90122'
...
* commit 'adff0a8166345bb9513f0f658043fb6387e90122':
arm: dsputil: Coalesce all init files
Conflicts:
libavcodec/arm/Makefile
libavcodec/arm/dsputil_arm.h
libavcodec/arm/dsputil_init_arm.c
libavcodec/arm/dsputil_init_armv6.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 20:09:25 +02:00
Diego Biurrun
adff0a8166
arm: dsputil: Coalesce all init files
2014-07-16 06:18:23 -07:00
Timothy Gu
9bc0410e4f
vp9: remove unused assignment
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Reviewed-by: BBB
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 14:38:42 +02:00
Timothy Gu
ea6178fff8
get_bits: remove unused assignment
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 14:27:45 +02:00
Michael Niedermayer
aa1d096d02
avcodec/snow: only allocate space for edges when encoding
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 04:57:42 +02:00
Michael Niedermayer
8156e036e5
avcodec/snowdec: remove mpegvideoencdsp dependency
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 04:20:59 +02:00
James Almer
b67a0e99ee
diracdec: don't call ff_emulated_edge_mc_8 directly
...
Use the videodsp function pointer instead.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 03:53:49 +02:00
Michael Niedermayer
f00bb086cb
Merge commit '14b4e64eabc84c5a5e57c8ccc56bbeb95380823b'
...
* commit '14b4e64eabc84c5a5e57c8ccc56bbeb95380823b':
g2meet: allow size changes within original sizes
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 03:40:51 +02:00
Vittorio Giovara
14b4e64eab
g2meet: allow size changes within original sizes
2014-07-15 20:08:16 -04:00
Michael Niedermayer
cf92cc8751
avcodec/hevc: clear HEVClcList[i] on allocation
...
Fixes fate failure with --enable-memory-poisoning && make THREAD_TYPE=slice THREADS=7 fate-hevc-conformance-ENTP_C_Qualcomm_1
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 01:34:57 +02:00
James Almer
ad24256e7e
diracdec: remove unused dsputil context
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-16 00:11:18 +02:00
Michael Niedermayer
880dbe43ca
avcodec/hevc: treat current_sps like sps_list
...
This simplifies the management of current_sps
Fixes Ticket3458
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 21:49:56 +02:00
Michael Niedermayer
0fc2045d5f
avcodec/hevc_ps: prevent stale pointer in malloc failure case
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 21:49:56 +02:00
Michael Niedermayer
5bda0467d2
avcodec/mpegvideo_enc: make edge for interlaced mpeg2 encoding smaller
...
Fixes segfault
the size can probably be reduced further for the mpeg2 case
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 19:56:24 +02:00
Michael Niedermayer
339d8fb353
avcodec/mpegvideo_enc: check intra dc precission
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 19:56:23 +02:00
Michael Niedermayer
97f86cd976
avcodec/mpegvideo_enc: workaround applications specifying intra dc level based on 8 and othes based on 0bit
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 19:56:22 +02:00
Michael Niedermayer
8a91cf857b
avcodec/options_table: add liberal limits to intra dc precission
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 19:56:21 +02:00
Michael Niedermayer
19e5114eaa
avcodec/mpegvideo_enc: return proper error instead of failing assertion when max rate is not set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 19:56:19 +02:00
Mickaël Raulet
453f8eaee2
hevc/rext: add support for Range extension tools
...
SPS features/flags:
- transform_skip_rotation_enabled_flag
- transform_skip_context_enabled_flag
- implicit_rdpcm_enabled_flag
- explicit_rdpcm_enabled_flag
- intra_smoothing_disabled_flag
- persistent_rice_adaptation_enabled_flag
PPS features/flags:
- log2_max_transform_skip_block_size
- cross_component_prediction_enabled_flag
- chroma_qp_offset_list_enabled_flag
- diff_cu_chroma_qp_offset_depth
- chroma_qp_offset_list_len_minus1
- cb_qp_offset_list
- cr_qp_offset_list
- log2_sao_offset_scale_luma
- log2_sao_offset_scale_chroma
(cherry picked from commit 005294c5b939a23099871c6130c8a7cc331f73ee)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 14:08:20 +02:00
Mickaël Raulet
5a41999d81
hevc/rext: basic infrastructure for supporting range extension
...
- support for 4:2:2 and 4:4:4 up to 12 bits
- add a new profile for range extension
(cherry picked from commit d3c067fa65bbc871758d28aa07f54123430ca346)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 13:47:35 +02:00
Mickaël Raulet
250430bf28
hevc: separate residu and prediction (needed for Range Extension)
...
(cherry picked from commit 6b3856ef57d66f2e59ee61fd2eb5f83b6d0d7d4a)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 13:37:27 +02:00
Mickaël Raulet
255086a7e0
hevc: use local variable for split_cu_flag
...
(cherry picked from commit ee71e9e9c12fc47856c452efb278f9f593a923ee)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 13:31:40 +02:00
Mickaël Raulet
f5beda3bfd
hevc: move restore_tqb where it should be.
...
(cherry picked from commit 8fafc96a9805d11bfe32537c8f78a294a5844065)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 13:25:55 +02:00
Mickaël Raulet
1241eb8870
hevc: simplify SAO computation, delay from one row its computation
...
(cherry picked from commit f2c5f647cec786df26f442a85e6d685a131a50c9)
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 13:11:33 +02:00
Mickaël Raulet
c4058b7288
hevc/cabac: add new context for new syntax elements related to Rext(cherry picked from commit 6d71e2394f52679cfc8b86fb5880f89e6bd311d4)
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-15 00:00:45 +02:00
Mickaël Raulet
07b91b8d62
hevc: cleaning up, remove unused constants(cherry picked from commit 7eed32d076c57aa03011d65a64903e8bdb633978)
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-14 23:46:36 +02:00
Michael Niedermayer
cc3e7a4c3d
Merge commit 'acf91215c74a91eb3b86af01dcb1d3c78d0e2310'
...
* commit 'acf91215c74a91eb3b86af01dcb1d3c78d0e2310':
x86: dsputil: Avoid pointless CONFIG_ENCODERS indirection
Conflicts:
libavcodec/x86/dsputil_init.c
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-13 21:51:20 +02:00
Michael Niedermayer
98227ba5fa
Merge commit 'a8552ee3eb335d2fd2d6c99363367a6090298f78'
...
* commit 'a8552ee3eb335d2fd2d6c99363367a6090298f78':
ppc: dsputil: Coalesce all init files
Conflicts:
libavcodec/ppc/dsputil_altivec.h
libavcodec/ppc/dsputil_ppc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-13 21:08:28 +02:00
Diego Biurrun
acf91215c7
x86: dsputil: Avoid pointless CONFIG_ENCODERS indirection
...
The remaining dsputil bits are encoding-specific anyway.
2014-07-13 07:01:05 -07:00
Ben Avison
42c1cc35b7
armv6: Accelerate ff_imdct_half for general case (mdct_bits != 6)
...
The previous implementation targeted DTS Coherent Acoustics, which only
requires mdct_bits == 6. This relatively small size lent itself to
unrolling the loops a small number of times, and encoding offsets
calculated at assembly time within the load/store instructions of each
iteration.
In the more general case (codecs such as AAC and AC3) much larger arrays
are used - mdct_bits == [8, 9, 11]. The old method does not scale for
these cases, so more integer registers are used with non-unrolled versions
of the loops (and with some stack spillage). The postrotation filter loop
is still unrolled by a factor of 2 to permit the double-buffering of some
VFP registers to facilitate overlap of neighbouring iterations.
I benchmarked the result by measuring the number of gperftools samples
that hit anywhere in the AAC decoder (starting from aac_decode_frame())
or specifically in ff_imdct_half_c / ff_imdct_half_vfp, for the same
example AAC stream:
Before After
Mean StdDev Mean StdDev Confidence Change
aac_decode_frame 2368.1 35.8 2117.2 35.3 100.0% +11.8%
ff_imdct_half_* 457.5 22.4 251.2 16.2 100.0% +82.1%
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-13 15:17:04 +02:00
James Almer
276bef5340
x86/hevc_deblock: add ff_hevc_[hv]_loop_filter_luma_{8, 10}_sse2
...
Signed-off-by: James Almer <jamrial@gmail.com>
Reviewed-by: Kieran Kunhya <kierank@obe.tv>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-13 13:48:31 +02:00
Ronald S. Bultje
ebd1c505d2
h264: fix direct temporal mvs for bottom-field-first poc order.
...
Fixes http://forum.doom9.org/showthread.php?t=170867 .
Fixes: corrupt-1677.mkv
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-13 13:26:19 +02:00
Diego Biurrun
a8552ee3eb
ppc: dsputil: Coalesce all init files
2014-07-13 04:10:13 -07:00
Andreas Cadhalpun
39a6e02fd4
fix spelling errors
...
Reviewed-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 22:33:27 +02:00
Michael Niedermayer
1db641cbd2
avcodec/hevc: more clearing to avoid stale pointers
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 21:31:37 +02:00
Michael Niedermayer
ccd6911c18
avcodec/hevc_ps: do not loose all reference to pointers still in use
...
Fixes leaving a pointer to unreferenced memory
Fixes Ticket 3115
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 21:03:09 +02:00
James Almer
123649dd19
x86/dsputilenc: remove some empty if statements
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 15:04:58 +02:00
Michael Niedermayer
66558fe715
avcodec/hevc_ps: Check layer_id_included_flags count
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 07:46:08 +02:00
Michael Niedermayer
6935ae22ed
avcodec/hevc_ps: more complete check for vps_max_dec_pic_buffering
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 07:46:08 +02:00
Michael Niedermayer
5d88e40093
avcodec/hevc: check slice_header_extension data length
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 07:46:07 +02:00
Michael Niedermayer
c79acacd2e
avcodec/hevc: fix nb_sh / nb_sps check
...
fixes integer overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 04:39:01 +02:00
Michael Niedermayer
2cebd17e3f
avcodec/pgssubdec: Fix input pts
...
Fixes part of Ticket2516
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-12 01:09:51 +02:00
Michael Niedermayer
b8cdf04726
Merge commit '1173320249745eab01c901a39054fc0fced33c87'
...
* commit '1173320249745eab01c901a39054fc0fced33c87':
dsputil: Drop unused bit_depth parameter from all init functions
Conflicts:
libavcodec/dsputil.c
libavcodec/dsputil.h
libavcodec/ppc/dsputil_ppc.c
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-11 20:29:40 +02:00
Diego Biurrun
1173320249
dsputil: Drop unused bit_depth parameter from all init functions
2014-07-11 06:38:26 -07:00
Michael Niedermayer
e1f4397e74
Merge commit '458e7c94830d1522997e33a0b5e87bd709e8a349'
...
* commit '458e7c94830d1522997e33a0b5e87bd709e8a349':
hevc: implement pic_output_flag handling
Conflicts:
libavcodec/hevc.c
libavcodec/hevc_refs.c
See: 2eddf3a6ef
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-11 12:21:41 +02:00
Michael Niedermayer
aa56c37c8a
Merge commit 'f43789b76e661acd93c21664678f140e53cfa1fa'
...
* commit 'f43789b76e661acd93c21664678f140e53cfa1fa':
hevc: set the keyframe flag on output frames
See: e2760de605
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-11 12:16:24 +02:00
Gildas Cocherel
458e7c9483
hevc: implement pic_output_flag handling
...
Sample-Id: OPFLAG_B_Qualcomm_1.bit, OPFLAG_C_Qualcomm_1.bit
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-07-11 08:52:54 +00:00
Mickaël Raulet
f43789b76e
hevc: set the keyframe flag on output frames
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-07-11 08:43:01 +00:00
Mickaël Raulet
1493b237bd
hevc: Replace nal type chek with equivalent IS_IRAP macro
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-07-11 08:41:32 +00:00
Anton Khirnov
17e9d52c8c
hevc_ps: remove a write-only variable
2014-07-11 08:38:51 +00:00
Michael Niedermayer
9195c26d45
avcodec/rv34: fix crash while seeking on very damaged file
...
Fixes null pointer dereference
Fixes Ticket2093
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-11 05:34:13 +02:00
Christophe Gisquet
4576eff05d
hevc: derive partial merge list
...
The merge list only needs to be derived up to the merge index.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 17:27:56 +02:00
Christophe Gisquet
bbeaae96eb
hevc: derive partially amvp list
...
When the candidate has been found, no need to derive others.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 15:35:15 +02:00
Clément Bœsch
7e7168b82d
Fix 2 coeffecient typo
2014-07-10 15:29:54 +02:00
Christophe Gisquet
eca1957c4c
hevc: reorder loops
...
iterate over memory in a more continuous order
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 14:46:49 +02:00
Christophe Gisquet
2e471e4703
hevc: simplify rounding
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 14:32:18 +02:00
Carl Eugen Hoyos
a1e3ea475a
Fix compilation with --disable-everything.
2014-07-10 08:26:59 +02:00
James Almer
2571e8fe37
alpha/pixblockdsp: move code out of dsputil
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 04:01:03 +02:00
Michael Niedermayer
2d5e9451de
Merge commit 'f46bb608d9d76c543e4929dc8cffe36b84bd789e'
...
* commit 'f46bb608d9d76c543e4929dc8cffe36b84bd789e':
dsputil: Split off pixel block routines into their own context
Conflicts:
configure
libavcodec/dsputil.c
libavcodec/mpegvideo_enc.c
libavcodec/pixblockdsp_template.c
libavcodec/x86/dsputilenc.asm
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 01:22:14 +02:00
Michael Niedermayer
92c29914de
avcodec/hevc_sei: factor return 1 out of if/else chain
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 00:19:49 +02:00
Michael Niedermayer
efc66d69bf
Merge commit '0569a7e0bd2006d9a5248d17a1f4bf3ca654ae50'
...
* commit '0569a7e0bd2006d9a5248d17a1f4bf3ca654ae50':
hevc: parse display orientation SEI message
Conflicts:
libavcodec/hevc.h
libavcodec/hevc_sei.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 00:19:43 +02:00
Michael Niedermayer
cd0dc88751
Merge commit '18e3d61e9e3b52c177aa7a1f2a054a8a753e1b09'
...
* commit '18e3d61e9e3b52c177aa7a1f2a054a8a753e1b09':
h264: parse display orientation SEI message
Conflicts:
libavcodec/h264.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-10 00:07:04 +02:00
Michael Niedermayer
e932ae5940
Merge commit 'd5cf5afabbf43f00283e70b12afbe1da030d85b6'
...
* commit 'd5cf5afabbf43f00283e70b12afbe1da030d85b6':
adxdec: get rid of an avpriv function
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 22:38:13 +02:00
Michael Niedermayer
1b58f13761
Merge commit 'f6ee61fb05482c617f5deee29a190d8ff483b3d1'
...
* commit 'f6ee61fb05482c617f5deee29a190d8ff483b3d1':
lavc: export DV profile API used by muxer/demuxer as public
Conflicts:
configure
doc/APIchanges
libavcodec/Makefile
libavcodec/dv_profile.c
libavcodec/dv_profile.h
libavcodec/version.h
libavformat/dvenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 22:27:07 +02:00
Michael Niedermayer
76a35f7830
avcodec/roqvideoenc: Print the correct max resolution
...
Thanks-to: Vitor Sessak <vitor1001@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 21:20:31 +02:00
Michael Niedermayer
9af59db6ec
avcodec/roqvideoenc: More verbose warning about no power of 2 dimensions
...
Thanks-to: Vitor Sessak <vitor1001@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 21:19:55 +02:00
Oliver Fromme
a32dcaaaf8
avcodec/dvdsubenc: Add dvdsub workaround for some players
...
The issue affects dvdsub subtitles (a.k.a. VOBSUB).
Some players -- in particular hardware players -- cut off
the lowest row of pixels if the number of rows in the subtitle
is odd.
The patch below implements a work-around for that. If the
number of rows is odd, it is simply rounded up to an even
number, adding an invisible (i.e. fully transparent) row.
The work-around can be enabled or disabled with a new
option -even_rows_fix. The default is disabled, so there
is no change of behaviour for users who don't care about it.
The overhead for the fix is low, and in many cases even zero:
For subtitles with an odd number of rows (i.e. in 50% of
cases on average), the size increases by two bytes because
a fully transparent row is encoded as 0x00 0x00. However,
in the VOBSUB standard, all data packets are padded to 2KB
anyway, so in most cases the additional bytes just use some
part of the padding, so there is no overhead. Only in the
rare case that the 2KB boundary is hit (0.1% chance), a full
2KB block is added.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 20:11:36 +02:00
Michael Niedermayer
e36916a63f
avcodec/pthread_frame: fix setting hwaccel with threads and get_format()
...
Fixes assertion failure with vdpau and vlc
Fixes Ticket3742
Tested-by: oromit
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 19:58:58 +02:00
Diego Biurrun
f46bb608d9
dsputil: Split off pixel block routines into their own context
2014-07-09 08:05:26 -07:00
Vittorio Giovara
0569a7e0bd
hevc: parse display orientation SEI message
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-07-09 10:18:06 -04:00
Vittorio Giovara
18e3d61e9e
h264: parse display orientation SEI message
...
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
2014-07-09 10:17:42 -04:00
Michael Niedermayer
f32c5d1a8d
avcodec/mpegvideo: clip mv visualization arrows so that their direction is maintained
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 16:04:32 +02:00
Anton Khirnov
d5cf5afabb
adxdec: get rid of an avpriv function
...
The only thing the demuxer needs is the sample rate to set the timebase,
which can be simply read with AV_RB32.
2014-07-09 13:37:18 +00:00
Anton Khirnov
f6ee61fb05
lavc: export DV profile API used by muxer/demuxer as public
2014-07-09 13:35:07 +00:00
Carl Eugen Hoyos
d6e7881c2e
Fix wmv1 encoding if all other msmpeg4-related encoders were disabled.
2014-07-09 08:51:17 +02:00
Carl Eugen Hoyos
e4dfc3f9b8
Fix wmv1 decoding if no other msmpeg4-related decoder was compiled.
2014-07-09 08:27:24 +02:00
Michael Niedermayer
c8b2cf4996
avcodec/mpegvideo: flip motion vector visualization for backward motion vectors
...
Also support changing arrow head/tail shape
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-09 03:07:25 +02:00
James Almer
2375b09473
alpha/idctdsp: move idct init code out of dsputil
...
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 22:19:38 +02:00
Michael Niedermayer
550bda741c
avcodec/alpha/dsputil_alpha: fix build
...
Disable moved functions to prevent build/test failure,
patch to update and re-enable them is welcome
volunteer to maintain the alpha code is welcome too
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 20:15:31 +02:00
Michael Niedermayer
7cb8f7ded4
avcodec/proresenc_anatoliy: check against maximum dimensions
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 18:03:11 +02:00
Michael Niedermayer
7c7441b37d
avcodec/roqvideoenc: check dimensions against maximum
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 17:33:39 +02:00
Michael Niedermayer
fe4c76b3d0
avcodec/roqvideoenc: fix infinite lambda increasing loop
...
The threshold was choosen so that no further size decrease happened with larger lambda
with the test video.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 17:09:56 +02:00
Michael Niedermayer
1f935c3d0b
Merge commit '79fce1ec8abd017593c003917fc123f7119a78d6'
...
* commit '79fce1ec8abd017593c003917fc123f7119a78d6':
arm: Avoid using the 'setend' instruction on ARMv7 and newer
Conflicts:
libavcodec/arm/h264dsp_init_arm.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 14:44:12 +02:00
Martin Storsjö
79fce1ec8a
arm: Avoid using the 'setend' instruction on ARMv7 and newer
...
This instruction is deprecated on ARMv8, and it is serializing on
some ARMv7 cores as well [1].
[1] http://article.gmane.org/gmane.linux.ports.arm.kernel/339293
CC: libav-stable@libav.org
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-08 12:09:09 +03:00
Michael Niedermayer
14e2406de7
Merge commit 'a9aee08d900f686e966c64afec5d88a7d9d130a3'
...
* commit 'a9aee08d900f686e966c64afec5d88a7d9d130a3':
dsputil: Split off FDCT bits into their own context
Conflicts:
configure
libavcodec/Makefile
libavcodec/asvenc.c
libavcodec/dnxhdenc.c
libavcodec/dsputil.c
libavcodec/mpegvideo.h
libavcodec/mpegvideo_enc.c
libavcodec/x86/Makefile
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 03:19:06 +02:00
Michael Niedermayer
5c7bf354dc
avcodec/crystalhd: Add #if HAVE_UNISTD_H around #include <unistd.h>
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 02:51:56 +02:00
Michael Niedermayer
39ea21713c
avcodec/libxvid: add HAVE_UNISTD_H around #include <unistd.h>
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-08 01:55:47 +02:00
Michael Niedermayer
242b3c292a
Merge commit '1e9a93bfca2c2f43a07e01f2ef9fd5cbafe6c22d'
...
* commit '1e9a93bfca2c2f43a07e01f2ef9fd5cbafe6c22d':
libfdk-aacdec: Decode the first AAC frame to reliably identify the bitstream
Conflicts:
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 23:16:59 +02:00
Michael Niedermayer
154954c2ac
avcodec/vmdvideo: remove unneeded include
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 22:57:36 +02:00
Diego Biurrun
a9aee08d90
dsputil: Split off FDCT bits into their own context
2014-07-07 12:28:45 -07:00
Omer Osman
1e9a93bfca
libfdk-aacdec: Decode the first AAC frame to reliably identify the bitstream
...
For implicit signaling cases (as possible for Spectral Band Replication
and Parametric Stereo Tools), the decoder must decode the first frame to
correctly identify the stream configuration (as called from
avformat_find_stream_info). The mechanism for this is built-in and only
requires adding CODEC_CAP_CHANNEL_CONF to the libfdk-aacdec AVCodec
struct.
Signed-off-by: Omer Osman <omer.osman@iis.fraunhofer.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-07 22:09:15 +03:00
Michael Niedermayer
06dae71d47
Merge commit '246f869590b8c7313d26e1c2ef56db01f6fd2503'
...
* commit '246f869590b8c7313d26e1c2ef56db01f6fd2503':
vmd: Split audio and video decoder
Conflicts:
libavcodec/vmdvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 18:06:39 +02:00
Nidhi Makhijani
246f869590
vmd: Split audio and video decoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-07 07:45:00 -07:00
Michael Niedermayer
5320b34b98
avcodec/cljrdec: remove unneeded include
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 16:31:51 +02:00
Michael Niedermayer
3790801f9c
Merge commit '3c650efb81aaa3b395ba4606ee68a47ee4efb57b'
...
* commit '3c650efb81aaa3b395ba4606ee68a47ee4efb57b':
dsputil: Move draw_edges() to mpegvideoencdsp
Conflicts:
libavcodec/mpegvideo_enc.c
libavcodec/x86/Makefile
libavcodec/x86/dsputil_init.c
libavcodec/x86/dsputil_mmx.c
libavcodec/x86/dsputil_x86.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 16:17:27 +02:00
Michael Niedermayer
020865f557
Merge commit 'c166148409fe8f0dbccef2fe684286a40ba1e37d'
...
* commit 'c166148409fe8f0dbccef2fe684286a40ba1e37d':
dsputil: Move pix_sum, pix_norm1, shrink function pointers to mpegvideoenc
Conflicts:
libavcodec/dsputil.c
libavcodec/mpegvideo_enc.c
libavcodec/x86/dsputilenc.asm
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 15:36:58 +02:00
Michael Niedermayer
462c6cdb8e
Merge commit '8d686ca59db14900ad5c12b547fb8a7afc8b0b94'
...
* commit '8d686ca59db14900ad5c12b547fb8a7afc8b0b94':
dsputil: Split off *_8x8basis to a separate context
Conflicts:
libavcodec/dsputil.c
libavcodec/mpegvideo_enc.c
libavcodec/x86/dsputilenc_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 15:08:55 +02:00
Michael Niedermayer
8324bd5186
avcodec/mpegvideo_enc: fix b frame strategy 2
...
Fixes Ticket3757
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 14:59:37 +02:00
Clément Bœsch
7ac7e8793d
avcodec/mpegvideo: small indent fix in vismv code
2014-07-07 11:26:26 +02:00
Clément Bœsch
5f4dbf3c10
avcodec: make vismv option as flag types
...
This allows for example -vismv pf+bf+bb instead of -vismv 7.
2014-07-07 10:24:18 +02:00
Eric Lasota
586406980f
avcodec/roqvideodec: set JPEG output color range
...
Signed-off-by: Eric Lasota <ejlasota@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 03:06:00 +02:00
Michael Niedermayer
28c0319517
Merge commit 'd6902070c52151ec1e8154ce9b22283a1d0bc192'
...
* commit 'd6902070c52151ec1e8154ce9b22283a1d0bc192':
dsicin: Split audio and video decoder
Conflicts:
libavcodec/Makefile
libavcodec/dsicinvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-07 00:04:22 +02:00
Diego Biurrun
3c650efb81
dsputil: Move draw_edges() to mpegvideoencdsp
2014-07-06 14:48:50 -07:00
Michael Niedermayer
96761e9306
Merge commit '2fc85fe96e7e0e5fc433b98eacebf4d3511d2d58'
...
* commit '2fc85fe96e7e0e5fc433b98eacebf4d3511d2d58':
bmv: Split audio and video decoder
Conflicts:
libavcodec/bmvvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 23:43:37 +02:00
Eric Lasota
8be23d424f
avcodec/roqvideo: use JPEG color range
...
Signed-off-by: ejlasota <ejlasota@gmail.com>
Also update fate test checksums
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 23:34:58 +02:00
Diego Biurrun
c166148409
dsputil: Move pix_sum, pix_norm1, shrink function pointers to mpegvideoenc
2014-07-06 14:26:53 -07:00
Diego Biurrun
8d686ca59d
dsputil: Split off *_8x8basis to a separate context
2014-07-06 13:09:24 -07:00
James Almer
195f7bd23d
x86/svq1enc: use unaligned mov on SSE2
...
Might fix fate failures on some systems
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 20:27:57 +02:00
Nidhi Makhijani
d6902070c5
dsicin: Split audio and video decoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-06 11:27:34 -07:00
Michael Niedermayer
0d1994ee3c
Merge commit 'b0633f83f277c05bf1f617a99c7aedd2db8306e3'
...
* commit 'b0633f83f277c05bf1f617a99c7aedd2db8306e3':
paf: split audio and video decoder
Conflicts:
libavcodec/pafvideo.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 20:11:40 +02:00
Michael Niedermayer
225c5cc815
Merge commit '373a6dda5422186bc057297342a9e559a564595e'
...
* commit '373a6dda5422186bc057297342a9e559a564595e':
cljr: split decoder and encoder
Conflicts:
libavcodec/Makefile
libavcodec/cljrdec.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 20:00:59 +02:00
Nidhi Makhijani
2fc85fe96e
bmv: Split audio and video decoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-06 10:58:43 -07:00
Nidhi Makhijani
b0633f83f2
paf: split audio and video decoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-06 09:36:17 -07:00
Nidhi Makhijani
373a6dda54
cljr: split decoder and encoder
...
Signed-off-by: Diego Biurrun <diego@biurrun.de>
2014-07-06 09:28:20 -07:00
Michael Niedermayer
02729f7a5a
avcodec/mjpegenc_common: Restore removed copyright statements
...
These where removed by libav while spliting the file in adcb8392c9
See: de6d9b6404
See: 723106b279
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 03:39:39 +02:00
Michael Niedermayer
26b9f5bcdb
avcodec/Makefile: add libutvideo.h to SKIPHEADERS
...
libutvideo.h is not a C header and thus fails building as a C file
Reviewed-by: Derek Buitenhuis <derek.buitenhuis@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 01:38:55 +02:00
Timothy Gu
baef3ba727
avcodec/old_codec_ids: workaround doxygen inclusion bug
...
Currently, http://ffmpeg.org/doxygen/trunk/group__preproc__misc.html is
broken, because of inclusion bug in Doxygen's preprocessing mode. The
now-unincluded header file is included anyway in avcodec.h, the only
place where it is used, so there should be no problem removing it.
One concern is API-compatibility, because old_codec_ids.h is a public
header. However, IMO this is not a problem because currently users
cannot include only this header and not `avcodec.h` anyway, because of
missing AV_CODEC_ID_NONE symbol.
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-06 00:32:29 +02:00
James Almer
dad31083ae
x86/svq1enc: port ssd_int8_vs_int16 to yasm
...
Also add an SSE2 version
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 21:43:40 +02:00
Michael Niedermayer
19b79c1429
Merge commit 'b0de1c766329dd8c9960ad1722e2f653160abc1b'
...
* commit 'b0de1c766329dd8c9960ad1722e2f653160abc1b':
x86: build: Only compile FDCT code if MMX is enabled
Conflicts:
libavcodec/x86/Makefile
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 20:12:31 +02:00
Michael Niedermayer
5036c8b17b
Merge commit '12f129e545e5a5844b6ad7f3eb6a438015cad8bc'
...
* commit '12f129e545e5a5844b6ad7f3eb6a438015cad8bc':
x86: Unconditionally compile blockdsp and svq1enc init files
Conflicts:
libavcodec/x86/Makefile
blockdsp_mmx is renamed to blockdsp_init as we already have a blockdsp file
and _init is how all other such files are called
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 19:50:05 +02:00
Michael Niedermayer
6bef3e55bd
Merge commit '009331303a6462d07cbe94aef9c446f1a1695519'
...
* commit '009331303a6462d07cbe94aef9c446f1a1695519':
x86: huffyuvdsp: Move inline assembly to init file
Conflicts:
libavcodec/x86/Makefile
libavcodec/x86/huffyuvdsp.h
libavcodec/x86/huffyuvdsp_init.c
libavcodec/x86/huffyuvdsp_mmx.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 19:11:26 +02:00
Diego Biurrun
b0de1c7663
x86: build: Only compile FDCT code if MMX is enabled
...
All other files containing purely inline assembly are treated the same way.
2014-07-05 04:18:34 -07:00
Diego Biurrun
12f129e545
x86: Unconditionally compile blockdsp and svq1enc init files
...
This avoids a link failure with MMX disabled as the init functions
are referenced unconditionally.
2014-07-05 04:18:34 -07:00
Diego Biurrun
009331303a
x86: huffyuvdsp: Move inline assembly to init file
...
This avoids a link failure with MMX disabled as now code and
initialization are compiled under the same condition.
2014-07-05 04:18:34 -07:00
Carl Eugen Hoyos
d3e51b4118
Fix standalone compilation of the amv encoder.
2014-07-05 12:55:14 +02:00
Michael Niedermayer
d5818c37f3
Merge remote-tracking branch 'cehoyos/master'
...
* cehoyos/master:
Use os/2 palette even if it contains less than 256 entries.
Assume that old bmps do not contain transparency information.
Do not detect jp2 images as mov files.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 04:12:12 +02:00
Michael Niedermayer
4216a5082b
Merge commit 'e0bfe34ea8ccf333ec5b17961fd58eb575e74f8b'
...
* commit 'e0bfe34ea8ccf333ec5b17961fd58eb575e74f8b':
libfdk-aacdec: Reduce the default decoder delay by one frame
Conflicts:
libavcodec/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-05 03:41:35 +02:00
Carl Eugen Hoyos
810294ce3d
Use os/2 palette even if it contains less than 256 entries.
...
Fixes 11Bios13.bmp.
2014-07-05 02:11:17 +02:00
Carl Eugen Hoyos
8f6a04a279
Assume that old bmps do not contain transparency information.
...
Fixes MK50TEMP.BMP that has its RGB channel bit masks on the actual image.
2014-07-05 02:11:17 +02:00
Omer Osman
e0bfe34ea8
libfdk-aacdec: Reduce the default decoder delay by one frame
...
The default error concealment method if none is set via
aacDecoder_SetParam(AAC_CONCEAL_METHOD) is set in
CConcealment_InitCommonData within the fdk-aac library
and is set to Energy Interpolation. This method requires one frame
delay to the output. To reduce the default decoder output delay and
avoid missing the last frame in file based decoding, use Noise
Substitution as the default concealment method.
Signed-off-by: Omer Osman <omer.osman@iis.fraunhofer.de>
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-07-05 00:47:36 +03:00
Michael Niedermayer
2d15554850
avcodec/mlp_parser: check ff_combine_frame() return code
...
Fixes CID602338
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 20:29:40 +02:00
Michael Niedermayer
bd8b6ed96d
avcodec/bmp: fix integer overflow in checking header sizes
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 15:02:08 +02:00
Michael Niedermayer
5c65aed7fd
Merge commit '391ecc961ced2bde7aecb3053ac35191f838fae8'
...
* commit '391ecc961ced2bde7aecb3053ac35191f838fae8':
x86: mpegvideoenc: Change SIMD optimization name suffixes to lowercase
Conflicts:
libavcodec/x86/mpegvideoenc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 01:17:39 +02:00
Michael Niedermayer
cf8c44fc47
Merge commit 'c6698dfe7cdbc7634f33245875488ed3fa4a8ced'
...
* commit 'c6698dfe7cdbc7634f33245875488ed3fa4a8ced':
webpdec: Fix decoding of the huffman group indices.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 01:08:57 +02:00
Oliver Fromme
d73823286d
avcodec/dvdsubdec: fix alpha in debuging code
...
improve the debugging function for saving subtitles
to PPM files: Actually use the alpha channel.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 00:35:21 +02:00
Oliver Fromme
3f0a3e9e12
avcodec/dvdsubdec: Fix off-by-one error
...
Fix an off-by-one error that causes the height of decoded
subtitles to be too small, thus cutting off the lowest row
of pixels.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-04 00:32:43 +02:00
Diego Biurrun
391ecc961c
x86: mpegvideoenc: Change SIMD optimization name suffixes to lowercase
2014-07-03 13:41:41 -07:00
Justin Ruggles
c6698dfe7c
webpdec: Fix decoding of the huffman group indices.
...
Per the specification, "The red and green components of a pixel
define the meta Huffman code used in a particular block of the ARGB
image."
2014-07-03 15:29:01 -04:00
Michael Niedermayer
982920cfaa
Merge commit 'df949b645b12d62bb4da56d629a887c81f67f2e5'
...
* commit 'df949b645b12d62bb4da56d629a887c81f67f2e5':
hevc: Use the local context variable when needed
Conflicts:
libavcodec/hevc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-03 13:19:34 +02:00
Luca Barbato
df949b645b
hevc: Use the local context variable when needed
2014-07-02 23:30:49 -04:00
Michael Niedermayer
ce6a1ff2a1
avcodec/on2avc: Fix out of array access
...
Fixes CID1206648
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 20:22:12 +02:00
Anshul Maheshwari
43d70a776d
avcodec: Updated comment for sub param
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 19:47:14 +02:00
Anshul Maheshwari
7d1898ebcc
avcodec/dvbsubdec: removed unnecessary null check for subtitle
...
In refrence to coverity defect 1224278
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 19:47:14 +02:00
Michael Niedermayer
5307fa00a4
avcodec/dvdec: remove redundant null check
...
Fixes CID700682 again
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 16:37:38 +02:00
Michael Niedermayer
d266ecff4b
avcodec/bitstream: remove trivial assert
...
Fixed CID1224273
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 16:25:40 +02:00
James Almer
a441a2437b
x86: rename dsputil.asm to idctdsp.asm
...
Its only function is no longer part of dsputil.
Signed-off-by: James Almer <jamrial@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-02 01:08:04 +02:00
Michael Niedermayer
ef7e8425e8
avcodec/mjpegdec: factorize some parts of the pix_fmt_id switch()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 23:28:18 +02:00
Michael Niedermayer
784e1cf76b
avcodec/mjpegdec: handle luma upscale detection generically
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 23:26:19 +02:00
Michael Niedermayer
64d98dadc7
avcodec/mjpegdec: set upscale_h/upscale_v using generic code instead of hardcoding a list
...
Some code is left to handle corner cases
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 22:54:57 +02:00
Michael Niedermayer
7558e55345
avcodec/mjpegdec: Support pix_fmt_id==0x11222200
...
Fixes: 4858286_300.jpg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 22:12:20 +02:00
Michael Niedermayer
cd417d947e
avcodec/mjpegdec: fix width for non chroma in rescaling
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 22:09:19 +02:00
Michael Niedermayer
4e09300ffa
mjpegdec: Support pix_fmt_id == 0x22112200
...
Fixes 4780490_300.jpg
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 21:47:54 +02:00
Diego Biurrun
d0449e7545
vaapi: Update idct_permutation location after dsputil/idctdsp split
2014-07-01 07:36:22 -07:00
Michael Niedermayer
8d0c7031a8
Merge commit '79793f833784121d574454af4871866576c0749d'
...
* commit '79793f833784121d574454af4871866576c0749d':
Update Fiona's name in copyright statements.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 15:43:40 +02:00
Michael Niedermayer
581b5f0b9b
Merge commit 'e3fcb14347466095839c2a3c47ebecff02da891e'
...
* commit 'e3fcb14347466095839c2a3c47ebecff02da891e':
dsputil: Split off IDCT bits into their own context
Conflicts:
configure
libavcodec/aic.c
libavcodec/arm/Makefile
libavcodec/arm/dsputil_init_arm.c
libavcodec/arm/dsputil_init_armv6.c
libavcodec/asvdec.c
libavcodec/dnxhdenc.c
libavcodec/dsputil.c
libavcodec/dvdec.c
libavcodec/dxva2_mpeg2.c
libavcodec/intrax8.c
libavcodec/mdec.c
libavcodec/mjpegdec.c
libavcodec/mjpegenc_common.h
libavcodec/mpegvideo.c
libavcodec/ppc/dsputil_altivec.h
libavcodec/ppc/dsputil_ppc.c
libavcodec/ppc/idctdsp.c
libavcodec/x86/Makefile
libavcodec/x86/dsputil_init.c
libavcodec/x86/dsputil_mmx.c
libavcodec/x86/dsputil_x86.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 15:22:11 +02:00
Michael Niedermayer
909f53f2b2
Merge commit 'adcb8392c9b185fd8a91a95fa256d15ab1432a30'
...
* commit 'adcb8392c9b185fd8a91a95fa256d15ab1432a30':
mjpeg: Split off bits shared by MJPEG and LJPEG encoders
Conflicts:
libavcodec/mjpegenc.c
libavcodec/mjpegenc.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 13:33:11 +02:00
Diego Biurrun
79793f8337
Update Fiona's name in copyright statements.
2014-07-01 03:26:51 -07:00
Michael Niedermayer
7faa7d3d42
avcodec/hevc: Use av_malloc(z)_array()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-01 03:50:17 +02:00
Michael Niedermayer
e429d6c197
avcodec/pgssubdec: remove unused variables
...
Found-by: ubitux
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 18:24:37 +02:00
Michael Niedermayer
89bcb77726
avcodec/pgssubdec: Check input buffer size in parse_presentation_segment()
...
Might fix overread, no testcase known though.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 18:23:08 +02:00
Michael Niedermayer
ae9a73de2a
Merge commit '253d0be6a1ecc343d29ff8e1df0ddf961ab9c772'
...
* commit '253d0be6a1ecc343d29ff8e1df0ddf961ab9c772':
pgssubdec: handle more complex PGS scenarios
Conflicts:
libavcodec/pgssubdec.c
Some of this has been split out and commited in cleanly split patches immedeately
before this merge
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 18:05:39 +02:00
John Stebbins
0c911c8fbc
avcodec/pgssubdec: fix end display time
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 17:33:53 +02:00
John Stebbins
066a4819cc
avcodec/pgssubdec: Bail out of decode_rle() if error and AV_EF_EXPLODE is set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 17:31:38 +02:00
John Stebbins
fc7da418ff
avcodec/pgssubdec: better error codes
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 17:29:18 +02:00
John Stebbins
5c019ec91d
avcodec/pgssubdec: Pass AVSubtitleRect to decode_rle()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 17:25:16 +02:00
John Stebbins
4701f7676c
avcodec/pgssubdec: split out flush_cache()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 17:24:47 +02:00
Diego Biurrun
e3fcb14347
dsputil: Split off IDCT bits into their own context
2014-06-30 07:58:46 -07:00
Diego Biurrun
adcb8392c9
mjpeg: Split off bits shared by MJPEG and LJPEG encoders
...
This obviates a dependency of the LJPEG encoder on mpegvideo.
2014-06-30 07:53:40 -07:00
John Stebbins
ca7f2a7372
avcodec/pgssubdec: do not fail when part of the packet is faulty unless AV_EF_EXPLODE is set
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 16:46:25 +02:00
John Stebbins
376f353e3d
avcodec/pgssubdec: rename PICTURE_SEGMENT
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-30 16:39:41 +02:00
John Stebbins
253d0be6a1
pgssubdec: handle more complex PGS scenarios
...
Add ability to handle multiple palettes and objects simultaneously.
Each simultaneous object is given its own AVSubtitleRect.
Note that there can be up to 64 currently valid objects, but only
2 at any one time can be "presented".
Signed-off-by: Anton Khirnov <anton@khirnov.net>
2014-06-30 12:18:58 +02:00
Michael Niedermayer
3f42434600
avcodec/huffyuvencdsp: try to fix misaligned access
...
Should fix fate on MIPS
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-29 16:26:38 +02:00