Christophe Gisquet
f183febcda
hevc: remove CodingTree
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
3fe962940f
hevc: move intermediate bidir buffer
Other buffers are already there.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Mickaël Raulet
684d0a0b23
avcodec/hevc: fix dead code
fix CID 1231985
cherry picked from commit 745a35a777eaa5f77b8660b44098110a29916aae
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
dad7f15567
hevcdsp: remove more instances of compile-time-fixed parameters
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
d4f44b66d3
hevcdsp: remove compilation-time-fixed parameter
The dststride parameter is always MAX_PB_SIZE.
Reviewed-by: Mickaël Raulet <mraulet@gmail.com>
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
cf6090dc62
hevc: use intreadwrite
When dealing with MVs, both components may be processed at a time.
Signed-off-by: Anton Khirnov <anton@khirnov.net>
11 years ago
Christophe Gisquet
d1b1c3bb5e
hevc: reorder loops
iterate over memory in a more continuous order
Signed-off-by: Anton Khirnov <anton@khirnov.net>
11 years ago
Christophe Gisquet
5ec85c9750
hevc: do generic validation of bitstream
After finishing parsing VPS/SPS/PPS/slice header, check remaining bits,
and if an overconsumption occurred, report invalid data.
Liked-by: BBB
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Ronald S. Bultje
bfffce4d08
hevc: add missing comma in log message.
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Christophe Gisquet
7117547298
hevc: fix incorrect sao buffer size
It previously used the output, cropped size, causing overreads/writes.
Fixes ticket #3839 .
This issue was introduced by d249e682, which is not part of any release
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
70211539a3
hevc: deobfuscate slice/tile boundary handling for DBF
Use named constants instead of magic numbers, avoid using variables with
inverse meaning from what their name implies.
11 years ago
Anton Khirnov
4d1ff2a489
hevc: calculate the dbf strength in hls_pcm_sample() only if dbf is enabled
11 years ago
Michael Niedermayer
3fa9692ae2
avcodec/hevc: move HEVCLocalContext declaration into loop
Found-by: CSA
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
243236a6f5
avcodec/hevc: fix "discards const qualifier from pointer target type" warning
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
772dfd5f6e
avcodec/hevc: add some const to cbf arrays
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Mickaël Raulet
42ffa226f9
hevc: clean up non relevant TODO
cherry picked from commit a2ef95f043
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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 348bebedc0
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Anton Khirnov
e76f2d1197
hevc: eliminate the last element from TransformTree
Replace it by passing an additional parameter to transform_unit()
11 years ago
Anton Khirnov
4aa80808bc
hevc: eliminate unnecessary cbf_c{b,r} arrays
They are replaced by passing additional parameters to the transform
functions.
11 years ago
Anton Khirnov
0daa255463
hevc: do not store the transform inter_split flag in the context
It does not need to be preserved.
11 years ago
Anton Khirnov
53a11135f2
hevc: simplify splitting the transform tree blocks
11 years ago
Anton Khirnov
e36a2f4c52
hevc: eliminate an unnecessary array
We do not need to store the value of the split flag.
11 years ago
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 f518bb2253
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Mickaël Raulet
772f7f4edd
hevc: fix skip_flag
cherry picked from commit 509ae45655
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Mickaël Raulet
3b777db132
hevc: remove non necessary parameters to ff_hevc_set_qpy
cherry picked from commit 6f58c111ad
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Mickaël Raulet
23480da0aa
hevc: add support for bumping process
cherry picked from commit 8aa2fb7df3
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Mickaël Raulet
f6e218a02d
hevc: fix RAP_B_Bossen
cherry picked from commit 903236292f
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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>
11 years ago
Mickaël Raulet
fa0506e413
hevc/rext: update boundary strength for chroma deblocking filter
cherry picked from commit 7d05c95ac5
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Mickaël Raulet
950a4f8326
hevc: fix offset for sao temporary frame
fixes fate on alpha
cherry picked from commit 0a8ce1cbda
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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>
11 years ago
Michael Niedermayer
ffa0b510cd
avcodec/hevc: fix pict_type
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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 10fc29fc19
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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>
11 years ago
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>
11 years ago
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 005294c5b9 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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 d3c067fa65 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Mickaël Raulet
255086a7e0
hevc: use local variable for split_cu_flag
(cherry picked from commit ee71e9e9c1 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Mickaël Raulet
f5beda3bfd
hevc: move restore_tqb where it should be.
(cherry picked from commit 8fafc96a98 )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Mickaël Raulet
1241eb8870
hevc: simplify SAO computation, delay from one row its computation
(cherry picked from commit f2c5f647ce )
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
1db641cbd2
avcodec/hevc: more clearing to avoid stale pointers
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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>
11 years ago
Michael Niedermayer
5d88e40093
avcodec/hevc: check slice_header_extension data length
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Michael Niedermayer
c79acacd2e
avcodec/hevc: fix nb_sh / nb_sps check
fixes integer overflow
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
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>
11 years ago
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>
11 years ago
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>
11 years ago
Christophe Gisquet
eca1957c4c
hevc: reorder loops
iterate over memory in a more continuous order
Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
11 years ago
Vittorio Giovara
0569a7e0bd
hevc: parse display orientation SEI message
Signed-off-by: Vittorio Giovara <vittorio.giovara@gmail.com>
11 years ago
Luca Barbato
df949b645b
hevc: Use the local context variable when needed
11 years ago