HEVC解碼中的SPS解析

2021-08-11 07:11:19 字數 2115 閱讀 8113

以下是對每乙個語法元素的討論解釋:

1、sps_video_parameter_set_id :指定了當前活動的vps的id號,當前例子的取值為0,這也與前文的vps解析的結果一直;

2、sps_max_sub_layers_minus1 : 該值+1表示引用該sps的cvs所包含的最大時域子層數,取值範圍0-6;本例取值為0,即只有1個時域子層;

4、sps_seq_parameter_set_id :【其實在這個引數之前碼流中還有很多資料沒有解釋清楚,留到以後看吧】本sps的id值,此處取0;

5、chroma_format_idc:色度取樣格式,此處取值為1,代表採用4:2:0格式;

6、separate_colour_plane_flag :這個引數是4:4:4格式專用的,在本例中不存在;

7、pic_width_in_luma_samples和pic_height_in_luma_samples :影象的解析度資訊,用指數哥倫布編碼,本例取176*144;

8、conformance_window_flag :指示一致視窗裁剪偏移引數conformance cropping window offset parameters的資訊;此處取值為1,表示後續幾位為conf_win_left_offset、conf_win_right_offset、conf_win_top_offset、conf_win_bottom_offset等引數;

9、bit_depth_luma_minus8 :指定了亮度矩陣的位元深度以及亮度量化引數範圍偏移量;此處取0,表示每個亮度畫素用8為表示,qpbdoffset引數為0;

10、bit_depth_chroma_minus8 :與bit_depth_luma_minus8類似,只不過是針對色度的;

11、log2_max_pic_order_cnt_lsb_minus4 :負責計算變數maxpicordercntlsb的值【這個值是幹嘛的……】;

12、sps_sub_layer_ordering_info_present_flag :時域子層順序標識開關,該值取1,表示後續幾位分別是sps_max_dec_pic_buffering、sps_num_reorder_pics、sps_max_latency_increase等引數;

13、log2_min_coding_block_size_minus3 :用於計算最小亮度cb的尺寸,此處取0;

14、log2_diff_max_min_coding_block_size :用於計算最大最小亮度cb尺寸的差值,此處取3;

15、log2_min_transform_block_size_minus2:用於計算最小tb尺寸,此處取0;

16、log2_diff_max_min_transform_block_size :用於計算最大最小tb尺寸的差值,此處取3;

17、max_transform_hierarchy_depth_inter :幀間模式cb中tb的最大層級深度,此處為2;

18、max_transform_hierarchy_depth_intra ::幀內模式cb中tb的最大層級深度,此處為2;

19、scaling_list_enabled_flag:標識是否在變換系數量化中使用量化列表,此處取0;

20、amp_enabled_flag :標識是否使用不對稱運動劃分,此處為1;

21、sample_adaptive_offset_enabled_flag :標識是否使用sao,此處為1;

22、pcm_enabled_flag :標識是否使用pcm,此處為0,即不實用pcm資料;

23、num_short_term_ref_pic_sets :指示sps中short_term_ref_pic_set( )這個結構的數目,此處為1;

25、sps_temporal_mvp_enable_flag :標識cvs中非idr幀的條帶頭中是否包含slice_temporal_mvp_enabled_flag標識,此處為1,即含有;

26、sps_strong_intra_smoothing_enable_flag :標識平滑濾波過程中是否使用雙線性差值方法,此處為1,即使用;

27、vui_parameters_present_flag :標識是否有vui_parameters()結構體,此處為0,即沒有;

28、sps_extension_flag:sps擴充套件資訊,取0,沒有擴充套件。

HEVC解碼中VPS引數集解析

parsevps pcvps 主要使用三個巨集從碼流中讀取資料 read code 讀取指定長度的位元位,read flag 當前位置下一位標識位,read uvlc 按照變長碼方式從碼流中讀取資料。函式所讀取的字段可以參考標準文件的說明 提案jct vc l1003 第43頁。部分引數的解釋以及本...

HEVC的軟解碼和硬解碼

2.歷史 3.解碼流程以及軟硬解碼的區別 4.軟解碼和硬解碼的應用 軟解碼主要在下列裝置廣泛應用 硬解碼主要應用於下列裝置 2 機頂盒。早期的機頂盒基本上是乙個mips架構的cpu 硬體解碼模組。所以在這種裝置上只存在硬解碼一種情形。不過最近比較新的機頂盒採用與智慧型手機相同檔次的晶元,但是基於成本...

16 HEVC的條帶頭解析

以下是我們的例項中,一些引數的取值情況和意義 first slice sement in pic flag 當前為1,表示當前的slice element為該幀內按照解碼順序的第乙個slice element no output of prior pic flag 決定是否輸出非首幀idr或bla之...