summaryrefslogtreecommitdiff
path: root/libavcodec/x86/hevcdsp.h
Commit message (Collapse)AuthorAge
* Merge commit 'fca3c3b61952aacc45e9ca54d86a762946c21942'Clément Bœsch2017-01-31
| | | | | | | | | | | | | | | | | * commit 'fca3c3b61952aacc45e9ca54d86a762946c21942': hevc: Add AVX2 DC IDCT Mostly noop as we already have that code. In the ASM, code is merged with the exception of SECTION which is kept uppercase for consistency with the rest of the codebase. Still in the ASM, the prototype comment is fixed to honor the '_' added from the original commit. idct_dc_proto() is dropped as it's not used anymore here. Merged-by: Clément Bœsch <cboesch@gopro.com>
* Merge commit '1bd890ad173d79e7906c5e1d06bf0a06cca4519d'Clément Bœsch2017-01-31
| | | | | | | | | | | | | * commit '1bd890ad173d79e7906c5e1d06bf0a06cca4519d': hevc: Separate adding residual to prediction from IDCT This commit should be a noop but isn't because of the following renames: - transform_add → add_residual - transform_skip → dequant - idct_4x4_luma → transform_4x4_luma Merged-by: Clément Bœsch <cboesch@gopro.com>
* x86: hevc: remove a parameter to WP internalsChristophe Gisquet2015-02-14
| | | | | | | The second stride is always the internal buffer one, MAX_PB_SIZE (times 2 to get the value in bytes). Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* x86: hevc_mc: add AVX2 optimizationsPierre Edouard Lepere2015-02-06
| | | | | | | | | | | | | | | | | | before 33304 decicycles in luma_bi_1, 523066 runs, 1222 skips 38138 decicycles in luma_bi_2, 523427 runs, 861 skips 13490 decicycles in luma_uni, 516138 runs, 8150 skips after 20185 decicycles in luma_bi_1, 519970 runs, 4318 skips 24620 decicycles in luma_bi_2, 521024 runs, 3264 skips 10397 decicycles in luma_uni, 515715 runs, 8573 skips Conflicts: libavcodec/x86/hevc_mc.asm libavcodec/x86/hevcdsp_init.c Reviewed-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* x86/hevc_res_add: add ff_hevc_transform_add32_8_avx2James Almer2014-09-04
| | | | | | | ~20% faster than AVX. Reviewed-by: Michael Niedermayer <michaelni@gmx.at> Signed-off-by: James Almer <jamrial@gmail.com>
* hevcdsp: remove more instances of compile-time-fixed parametersChristophe Gisquet2014-08-22
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* hevcdsp: remove compilation-time-fixed parameterChristophe Gisquet2014-08-22
| | | | | | | The dststride parameter is always MAX_PB_SIZE. Reviewed-by: Mickaël Raulet <mraulet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* x86/hecv_res_add: add ff_hevc_transform_add{8,16,32}_8_avxJames Almer2014-08-20
| | | | | | | | ~15% faster than sse2 Reviewed-by: Mickaël Raulet <mraulet@gmail.com> Reviewed-by: Christophe Gisquet <christophe.gisquet@gmail.com> Signed-off-by: James Almer <jamrial@gmail.com>
* x86: hevc: adding transform_addPierre Edouard Lepere2014-08-20
| | | | | | Reviewed-by: James Almer <jamrial@gmail.com> Approved-by: Ronald S. Bultje Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* x86/hevc_idct: replace old and unused idct functionsJames Almer2014-07-26
| | | | | | | | | | | | | | | | | | | | | | Only 8-bit and 10-bit idct_dc() functions are included (adding others should be trivial). Benchmarks on an Intel Core i5-4200U: idct8x8_dc SSE2 MMXEXT C cycles 22 26 57 idct16x16_dc AVX2 SSE2 C cycles 27 32 249 idct32x32_dc AVX2 SSE2 C cycles 62 126 1375 Signed-off-by: James Almer <jamrial@gmail.com> Reviewed-by: Mickaël Raulet <mraulet@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* x86/hevc: add 12bits support for MCMickaël Raulet2014-07-26
| | | | | | cherry picked from commit 3fcb7a4595a6f40100a22110a5805e3b7510c0fd Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/x86/hevc: add avx2 dc idctplepere2014-06-25
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* avcodec/hevc: new idct + asmplepere2014-06-17
| | | | Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* hevcdsp: include stddef.h for ptrdiff_t definitionJames Almer2014-05-10
| | | | | | | | Including stdint.h was enough for systems like Mingw, but apparently not for Linux. This should fix make checkheaders failures on every platform Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* hevcdsp: add missing header includeJames Almer2014-05-10
| | | | | | | Fixes make checkheaders Signed-off-by: James Almer <jamrial@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* hvcodec/x86/hevcdsp: make macros more modular to support functions that are ↵plepere2014-05-09
| | | | | | not sse4 Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
* HEVC : added assembly MC functionsplepere2014-05-06
pretty print x86 Reviewed-by: "Ronald S. Bultje" <rsbultje@gmail.com> Signed-off-by: Michael Niedermayer <michaelni@gmx.at>