mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
avcodec/nvdec_hevc: add support for new extended sps/pps flags from SDK 8.1
This commit is contained in:
parent
9e40632668
commit
9e857aa00e
@ -1100,7 +1100,6 @@ int ff_hevc_parse_sps(HEVCSPS *sps, GetBitContext *gb, unsigned int *sps_id,
|
|||||||
skip_bits(gb, 7); //sps_extension_7bits = get_bits(gb, 7);
|
skip_bits(gb, 7); //sps_extension_7bits = get_bits(gb, 7);
|
||||||
if (sps_extension_flag[0]) {
|
if (sps_extension_flag[0]) {
|
||||||
int extended_precision_processing_flag;
|
int extended_precision_processing_flag;
|
||||||
int high_precision_offsets_enabled_flag;
|
|
||||||
int cabac_bypass_alignment_enabled_flag;
|
int cabac_bypass_alignment_enabled_flag;
|
||||||
|
|
||||||
sps->transform_skip_rotation_enabled_flag = get_bits1(gb);
|
sps->transform_skip_rotation_enabled_flag = get_bits1(gb);
|
||||||
@ -1115,8 +1114,8 @@ int ff_hevc_parse_sps(HEVCSPS *sps, GetBitContext *gb, unsigned int *sps_id,
|
|||||||
"extended_precision_processing_flag not yet implemented\n");
|
"extended_precision_processing_flag not yet implemented\n");
|
||||||
|
|
||||||
sps->intra_smoothing_disabled_flag = get_bits1(gb);
|
sps->intra_smoothing_disabled_flag = get_bits1(gb);
|
||||||
high_precision_offsets_enabled_flag = get_bits1(gb);
|
sps->high_precision_offsets_enabled_flag = get_bits1(gb);
|
||||||
if (high_precision_offsets_enabled_flag)
|
if (sps->high_precision_offsets_enabled_flag)
|
||||||
av_log(avctx, AV_LOG_WARNING,
|
av_log(avctx, AV_LOG_WARNING,
|
||||||
"high_precision_offsets_enabled_flag not yet implemented\n");
|
"high_precision_offsets_enabled_flag not yet implemented\n");
|
||||||
|
|
||||||
|
@ -289,6 +289,7 @@ typedef struct HEVCSPS {
|
|||||||
int implicit_rdpcm_enabled_flag;
|
int implicit_rdpcm_enabled_flag;
|
||||||
int explicit_rdpcm_enabled_flag;
|
int explicit_rdpcm_enabled_flag;
|
||||||
int intra_smoothing_disabled_flag;
|
int intra_smoothing_disabled_flag;
|
||||||
|
int high_precision_offsets_enabled_flag;
|
||||||
int persistent_rice_adaptation_enabled_flag;
|
int persistent_rice_adaptation_enabled_flag;
|
||||||
|
|
||||||
///< coded frame dimension in various units
|
///< coded frame dimension in various units
|
||||||
|
@ -107,6 +107,12 @@ static int nvdec_hevc_start_frame(AVCodecContext *avctx,
|
|||||||
.log2_diff_max_min_pcm_luma_coding_block_size = sps->pcm.log2_max_pcm_cb_size - sps->pcm.log2_min_pcm_cb_size,
|
.log2_diff_max_min_pcm_luma_coding_block_size = sps->pcm.log2_max_pcm_cb_size - sps->pcm.log2_min_pcm_cb_size,
|
||||||
.pcm_sample_bit_depth_luma_minus1 = sps->pcm_enabled_flag ? sps->pcm.bit_depth - 1 : 0,
|
.pcm_sample_bit_depth_luma_minus1 = sps->pcm_enabled_flag ? sps->pcm.bit_depth - 1 : 0,
|
||||||
.pcm_sample_bit_depth_chroma_minus1 = sps->pcm_enabled_flag ? sps->pcm.bit_depth_chroma - 1 : 0,
|
.pcm_sample_bit_depth_chroma_minus1 = sps->pcm_enabled_flag ? sps->pcm.bit_depth_chroma - 1 : 0,
|
||||||
|
#if defined(NVDECAPI_VERSION) && NVDECAPI_VERSION >= 0x01000008
|
||||||
|
.log2_max_transform_skip_block_size_minus2 = pps->log2_max_transform_skip_block_size - 2,
|
||||||
|
.log2_sao_offset_scale_luma = pps->log2_sao_offset_scale_luma,
|
||||||
|
.log2_sao_offset_scale_chroma = pps->log2_sao_offset_scale_chroma,
|
||||||
|
.high_precision_offsets_enabled_flag = sps->high_precision_offsets_enabled_flag,
|
||||||
|
#endif
|
||||||
.pcm_loop_filter_disabled_flag = sps->pcm.loop_filter_disable_flag,
|
.pcm_loop_filter_disabled_flag = sps->pcm.loop_filter_disable_flag,
|
||||||
.strong_intra_smoothing_enabled_flag = sps->sps_strong_intra_smoothing_enable_flag,
|
.strong_intra_smoothing_enabled_flag = sps->sps_strong_intra_smoothing_enable_flag,
|
||||||
.max_transform_hierarchy_depth_intra = sps->max_transform_hierarchy_depth_intra,
|
.max_transform_hierarchy_depth_intra = sps->max_transform_hierarchy_depth_intra,
|
||||||
|
Loading…
Reference in New Issue
Block a user