Ronald S. Bultje
d43efa68bd
vp9/x86: 4x4 iadst SIMD (ssse3) variants.
...
Cycle measurements for intra itxfm_4x4_add on ped1080p.webm:
idct_idct: 66 -> 67 cycles (noise measurement)
idct_iadst: 199 -> 79 cycles
iadst_idct: 165 -> 70 cycles
iadst_iadst: 183 -> 82 cycles
2014-01-24 19:25:25 -05:00
Ronald S. Bultje
baf47020cd
vp9/x86: 8x8 iadst SIMD (ssse3/avx) variants.
...
Cycle measurements for intra itxfm_8x8_add on ped1080p.webm:
idct_idct: 133 -> 135 cycles (noise measurement)
idct_iadst: 900 -> 241 cycles
iadst_idct: 864 -> 215 cycles
iadst_iadst: 973 -> 310 cycles
2014-01-24 19:25:25 -05:00
Michael Niedermayer
934bb11ad7
avcodec/mpeg12dec: fix mis-indented line
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 18:09:17 +01:00
Michael Niedermayer
5f54756f7e
avcodec/mpeg12dec: Disable the checked bitstream reader
...
Mpeg1/2 should not need it
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 18:09:17 +01:00
Michael Niedermayer
76b5e99ce9
avcodec/mpeg12dec: Check for overread in mpeg_decode_slice()
...
This is needed in case the checked bitstream reader is disabled
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 18:09:17 +01:00
Michael Niedermayer
d82eccea2b
avcodec/mpeg12dec: check block index in mpeg2_fast_decode_block_non_intra()
...
Prevents some overreads at the cost of 1 cpu cycle
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 18:09:16 +01:00
Michael Niedermayer
0c8e5fb211
avcodec/mpeg12dec: Optimize mpeg1_decode_block_intra()
...
sandybridge i7 274->260 cycles
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 18:09:16 +01:00
Michael Niedermayer
0a59055167
avcodec/mpeg12dec: check for overread in mpeg1_fast_decode_block_inter()
...
No speedloss meassured
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 18:09:16 +01:00
Michael Niedermayer
746350ea0f
avcodec/mpeg12dec: Make mpeg2_fast_decode_block_intra() more robust by breaking out on invalid vlcs
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 18:09:16 +01:00
Michael Niedermayer
40c218c60d
avcodec/vc1: fix type of tmp
...
Fixes CID1163850
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 03:40:37 +01:00
Michael Niedermayer
9b68538fdd
avcodec/libopenjpegenc: Replace av_frame_alloc() and av_frame_ref() by av_frame_clone()
...
Simplifies code
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 03:25:47 +01:00
Michael Niedermayer
a26e9c1040
avcodec/mjpegenc: Use av_frame_clone() instead of av_frame_ref()
...
This avoids the need for double error checking
Fixes CID1163843
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 03:24:55 +01:00
Michael Niedermayer
52d2bcc786
avcodec/libopenjpegenc: Check the return code of av_frame_ref()
...
Fixes CID1163842
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 02:58:20 +01:00
Michael Niedermayer
7853024071
avcodec/h264_cabac: Fix use with the checked bitstream-reader
...
Found-by: Dale Curtis <dalecurtis@google.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-24 00:05:17 +01:00
addr-see-the-website@aetey.se
bf23642dcc
Cinepak encoder: adding option handling for flexibility
...
Now it is possible to adjust compression speed vs R/D when needed
and also skip vintage players compatibility at will.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-23 20:27:06 +01:00
Michael Niedermayer
e6d1c66d74
avcodec/x86/lossless_videodsp: disable median optimizations for 16bps
...
They only support upto 15bps
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-23 01:51:24 +01:00
Michael Niedermayer
eaacfc7dd1
avcodec/lossless_videodsp: Pass AVCodecContext to init
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-23 01:43:00 +01:00
Michael Niedermayer
622d463000
avcodec/bitstream: assert that no integer overflow happened when writing codes in build_table()
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-23 01:43:00 +01:00
Michael Niedermayer
0269b30fef
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
mpegvideo_enc: Don't call ff_h263dsp_init unconditionally
Conflicts:
libavcodec/mpegvideo_enc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-22 23:36:33 +01:00
Michael Niedermayer
ef00ef7553
avcodec/x86/lossless_videodsp: port sub_hfyu_median_prediction_int16 to yasm
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-22 23:27:27 +01:00
Michael Niedermayer
fad49aae28
avcodec/x86/lossless_videodsp: Port sub_hfyu_median_prediction_mmxext to int16
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-22 22:55:49 +01:00
Michael Niedermayer
fee97f25fa
avcodec/x86/lossless_videodsp: port add_hfyu_median_prediction_mmxext to 16bit
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-22 21:11:40 +01:00
Michael Niedermayer
631939bde6
avcodec/x86/lossless_videodsp: add diff_int16_mmx/sse2
...
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-22 19:41:21 +01:00
Martin Storsjö
cff480e49d
mpegvideo_enc: Don't call ff_h263dsp_init unconditionally
...
This fixes builds with e.g. --disable-decoders --disable-encoders
--enable-encoder=mjpeg.
Signed-off-by: Martin Storsjö <martin@martin.st>
2014-01-22 18:42:38 +02:00
Michael Niedermayer
7b89e24151
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
bfin: vp3: Mark all binary object sections appropriately
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-22 16:08:24 +01:00
addr-see-the-website@aetey.se
762c4dc082
avcodec/cinepakenc: fixes and improvements
...
Fixed/improved multistrip adaptivity.
Improved R/D by optimized codebook generation.
Support for the correct color space.
Vintage compatibility.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-22 15:23:53 +01:00
Tomas Härdin
59dbc36f49
Adding Cinepak encoder
...
With permission of Tomas Härdin applied by Rl aetey.se
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-22 14:41:24 +01:00
Diego Biurrun
19987fa18c
bfin: vp3: Mark all binary object sections appropriately
...
This fixes a leftover from e44d7c659b
.
2014-01-22 05:38:15 -08:00
Janne Grunau
ea49f60523
h264: skip chroma edges at the picture boundary while deblocking 4:4:4
...
This handles macroblock edges for the chroma components in the same way
as for the luma compoment for 4:4:4 streams. The Spec explicitly states
that the deblocking filter is not applied to edges at the boundary of
the picture.
Signed-off-by: Janne Grunau <janne-libav@jannau.net>
2014-01-22 13:44:28 +01:00
Michael Niedermayer
8a77baae6e
Merge commit 'e0ab5078a7d865f8f6fd6a6d3cbe0f380ead4a3d'
...
* commit 'e0ab5078a7d865f8f6fd6a6d3cbe0f380ead4a3d':
lavc: do not force the emu edge flag
Conflicts:
libavcodec/utils.c
There should be no such bugs in ffmpeg, but merging it anyway
as its safer.
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 21:26:13 +01:00
Michael Niedermayer
a298f934ec
Merge commit '025fd76e1a2623c858d8c686a73cc30980a314b0'
...
* commit '025fd76e1a2623c858d8c686a73cc30980a314b0':
dxtory: change error code for unexpected slice configuration
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 21:17:16 +01:00
Michael Niedermayer
9eb954b91d
Merge commit 'e91a3f1bdba9b4945e42c191d2e35e9844625fb4'
...
* commit 'e91a3f1bdba9b4945e42c191d2e35e9844625fb4':
dxtory: correctly handle YUV slices with average odd height
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 21:01:36 +01:00
Michael Niedermayer
57a0c5fa9c
Merge commit 'ade4ecb42d2dacd18d04eb8df2afa8131e5ad653'
...
* commit 'ade4ecb42d2dacd18d04eb8df2afa8131e5ad653':
dxva2: Use correct printf format strings
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 20:45:55 +01:00
Michael Niedermayer
075989c33c
Merge commit '766df7ca89a2398e71182f5f2b46053e3aa9bd69'
...
* commit '766df7ca89a2398e71182f5f2b46053e3aa9bd69':
dxva2: Add missing #includes
See: 9056d0c94a
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 20:40:23 +01:00
Reimar Döffinger
76421982d0
lossless_videodsp.asm: fix compilation.
...
Fixes these errors with nasm:
libavcodec/x86/lossless_videodsp.asm:86: error: invalid combination of opcode and operands
libavcodec/x86/lossless_videodsp.asm:88: error: invalid combination of opcode and operands
I don't know whether movd or movq was meant, but either way
maskq vs. maskd must match the mov size.
Signed-off-by: Reimar Döffinger <Reimar.Doeffinger@gmx.de>
2014-01-21 19:46:02 +01:00
Anton Khirnov
e0ab5078a7
lavc: do not force the emu edge flag
...
The default get_buffer2() implementation (and possibly some
user ones) does not allocate edges when this flag is set, which may
expose bugs in some decoders. Until the 10 release is out, it is safer
to remove this part.
2014-01-21 17:54:09 +01:00
Kostya Shishkov
025fd76e1a
dxtory: change error code for unexpected slice configuration
2014-01-21 17:47:50 +01:00
Kostya Shishkov
e91a3f1bdb
dxtory: correctly handle YUV slices with average odd height
2014-01-21 17:47:50 +01:00
Michael Niedermayer
91f4394ed3
Merge remote-tracking branch 'qatar/master'
...
* qatar/master:
dxva2: Log errors verbosely
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 16:02:13 +01:00
Michael Niedermayer
9056d0c94a
Merge commit '5b2b23f2d69e05c5fcd1c933e383fe60e185574d'
...
* commit '5b2b23f2d69e05c5fcd1c933e383fe60e185574d':
dxva2: Retry IDirectXVideoDecoder_BeginFrame()
This also adds a missig #include to prevent breaking building
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 15:56:03 +01:00
Michael Niedermayer
a69dd1163b
Merge commit 'e22ebd04bcab7f86548794556c28ecca46d9c2ac'
...
* commit 'e22ebd04bcab7f86548794556c28ecca46d9c2ac':
hevc: Bound check cu_qp_delta
Conflicts:
libavcodec/hevc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 15:42:51 +01:00
Michael Niedermayer
58f437c3f6
Merge commit '0d999333f96a34903448579bf13a3209deaee9da'
...
* commit '0d999333f96a34903448579bf13a3209deaee9da':
hevc: Bound check slice_qp
Conflicts:
libavcodec/hevc.c
See: aead772b58
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 15:38:29 +01:00
Michael Niedermayer
5b93b2722d
Merge commit '838740e6420538ad45982da6b1d3aa3ae91307f5'
...
* commit '838740e6420538ad45982da6b1d3aa3ae91307f5':
hevc: Prevent some integer overflows
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 15:31:04 +01:00
Michael Niedermayer
29ba1cff2b
Merge commit 'b37e796082b2d787aff3cd5631bb89c4fd374708'
...
* commit 'b37e796082b2d787aff3cd5631bb89c4fd374708':
hevc: Use uint64 to check for tile dimensions
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 15:19:39 +01:00
Michael Niedermayer
42a29015e1
Merge commit 'a7a07cc98ac548297b5b0628cb81280e11952e3f'
...
* commit 'a7a07cc98ac548297b5b0628cb81280e11952e3f':
hevc: check that VPS referenced from SPS exists
Conflicts:
libavcodec/hevc_ps.c
See: d66bab0a69
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-01-21 15:04:24 +01:00
Diego Biurrun
ade4ecb42d
dxva2: Use correct printf format strings
2014-01-21 14:42:44 +01:00
Diego Biurrun
766df7ca89
dxva2: Add missing #includes
2014-01-21 14:42:23 +01:00
Sam Lantinga
9d80b1ae95
dxva2: Log errors verbosely
...
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-01-21 12:46:29 +01:00
Sam Lantinga
5b2b23f2d6
dxva2: Retry IDirectXVideoDecoder_BeginFrame()
...
If the function returns E_PENDING retry for a fixed number of times.
Signed-off-by: Luca Barbato <lu_zero@gentoo.org>
2014-01-21 12:46:28 +01:00
Luca Barbato
e22ebd04bc
hevc: Bound check cu_qp_delta
...
The T-REC-H.265-2013044 page 91 states it has to be in the range
[-(26 + s->sps->qp_bd_offset / 2), (25 + s->sps->qp_bd_offset / 2)].
2014-01-21 11:59:54 +01:00