Mickaël Raulet
42ffa226f9
hevc: clean up non relevant TODO
...
cherry picked from commit a2ef95f043d89d05482af19460c9e9afdadec685
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 14:27:04 +02:00
Anton Khirnov
a5c621aa85
hevc: rename variable in boundary strength to b more explicit
...
Signed-off-by: Mickaël Raulet <mraulet@insa-rennes.fr>
cherry picked from commit 348bebedc0012aae201419669fca1eb61ec93ca6
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 14:20:19 +02:00
Michael Niedermayer
e0492311c8
Merge commit 'e76f2d11970484266e67a12961f2339a5c2fccf9'
...
* commit 'e76f2d11970484266e67a12961f2339a5c2fccf9':
hevc: eliminate the last element from TransformTree
Conflicts:
libavcodec/hevc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 14:02:03 +02:00
Michael Niedermayer
4a73fa19ca
Merge commit '4aa80808bcc2a30fcd7ce5b38594319df3a85b36'
...
* commit '4aa80808bcc2a30fcd7ce5b38594319df3a85b36':
hevc: eliminate unnecessary cbf_c{b,r} arrays
Conflicts:
libavcodec/hevc.c
See: 77ef9fd1e9
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 13:54:51 +02:00
Michael Niedermayer
0a1ffc5788
Merge commit '0daa2554636ba1d31f3162ffb86991e84eb938a8'
...
* commit '0daa2554636ba1d31f3162ffb86991e84eb938a8':
hevc: do not store the transform inter_split flag in the context
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 13:09:28 +02:00
Michael Niedermayer
2fb8aa9b10
Merge commit '53a11135f2fb2123408b295f9aaae3d6f861aea5'
...
* commit '53a11135f2fb2123408b295f9aaae3d6f861aea5':
hevc: simplify splitting the transform tree blocks
Conflicts:
libavcodec/hevc.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 13:03:59 +02:00
Michael Niedermayer
453224f10b
Merge commit 'e36a2f4c5280e2779b0e88974295a711cf8d88be'
...
* commit 'e36a2f4c5280e2779b0e88974295a711cf8d88be':
hevc: eliminate an unnecessary array
Conflicts:
libavcodec/hevc.c
See: 255086a7e0
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 12:54:14 +02:00
Anton Khirnov
e76f2d1197
hevc: eliminate the last element from TransformTree
...
Replace it by passing an additional parameter to transform_unit()
2014-07-28 08:10:35 +00:00
Anton Khirnov
4aa80808bc
hevc: eliminate unnecessary cbf_c{b,r} arrays
...
They are replaced by passing additional parameters to the transform
functions.
2014-07-28 08:09:18 +00:00
Anton Khirnov
0daa255463
hevc: do not store the transform inter_split flag in the context
...
It does not need to be preserved.
2014-07-28 08:05:47 +00:00
Anton Khirnov
53a11135f2
hevc: simplify splitting the transform tree blocks
2014-07-28 08:04:19 +00:00
Anton Khirnov
e36a2f4c52
hevc: eliminate an unnecessary array
...
We do not need to store the value of the split flag.
2014-07-28 08:03:53 +00:00
Anton Khirnov
77ef9fd1e9
hevc: eliminate unnecessary cbf_c{b,r} arrays
...
- They are be replaced by passing additional parameters to the transform
functions.
- Adaptation to 4:2:2
Signed-off-by: Mickaël Raulet <mraulet@insa-rennes.fr>
cherry picked from commit f518bb22531c648f1c37f978b0c7ad2e71e04c25
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 00:55:44 +02:00
Mickaël Raulet
772f7f4edd
hevc: fix skip_flag
...
cherry picked from commit 509ae456551005b9bf9b4d9730b6247c97fdd990
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 00:47:28 +02:00
Mickaël Raulet
3b777db132
hevc: remove non necessary parameters to ff_hevc_set_qpy
...
cherry picked from commit 6f58c111ad9920d983bb18eacf901193bac5d937
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-28 00:39:13 +02:00
Mickaël Raulet
23480da0aa
hevc: add support for bumping process
...
cherry picked from commit 8aa2fb7df3cffc67a3fd03a3a7eb49dbed4094c7
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 15:40:34 +02:00
Mickaël Raulet
f6e218a02d
hevc: fix RAP_B_Bossen
...
cherry picked from commit 903236292f066bc321080e3e2192b64f8943d960
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-26 02:01:04 +02:00
Timothy Gu
c508adb223
hevc: propagate error code from set_sps()
...
Signed-off-by: Timothy Gu <timothygu99@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
2014-07-24 16:25:55 +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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
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
35bb74900b
Merge commit 'c67b449bebbe0b35c73b203683e77a0a649bc765'
...
* commit 'c67b449bebbe0b35c73b203683e77a0a649bc765':
dsputil: Split bswap*_buf() off into a separate context
Conflicts:
configure
libavcodec/4xm.c
libavcodec/ac3dec.c
libavcodec/ac3dec.h
libavcodec/apedec.c
libavcodec/eamad.c
libavcodec/flacenc.c
libavcodec/fraps.c
libavcodec/huffyuv.c
libavcodec/huffyuvdec.c
libavcodec/motionpixels.c
libavcodec/truemotion2.c
libavcodec/x86/Makefile
libavcodec/x86/dsputil_init.c
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-23 13:31:26 +02:00
Diego Biurrun
c67b449beb
dsputil: Split bswap*_buf() off into a separate context
2014-06-22 18:22:31 -07:00
Michael Niedermayer
0dceefc5fa
Merge commit '9e500efdbe0deeff1602500ebc229a0a6b6bb1a2'
...
* commit '9e500efdbe0deeff1602500ebc229a0a6b6bb1a2':
Add av_image_check_sar() and use it to validate SAR
Conflicts:
libavcodec/dpx.c
libavcodec/dvdec.c
libavcodec/ffv1dec.c
libavcodec/utils.c
libavutil/version.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-06-20 22:20:28 +02:00
Justin Ruggles
9e500efdbe
Add av_image_check_sar() and use it to validate SAR
2014-06-20 10:39:33 -04:00
Michael Niedermayer
8447658550
Merge commit 'a1c2b48018b09d2613f075ec0748c95bd520ac00'
...
* commit 'a1c2b48018b09d2613f075ec0748c95bd520ac00':
hevc: templatize intra_pred
Conflicts:
libavcodec/hevc.h
Merged-by: Michael Niedermayer <michaelni@gmx.at>
2014-05-19 14:10:13 +02:00