History

lavc/cbs_h266: Add SliceTopLeftTileIdx to H266RawPPS

Fei Wang committed 2 years ago

Commit e543a221 parent f42978f2 files · +5 −0Browse files

Unified · Split

2 files
  1. libavcodec/cbs_h266.h +1 −0
  2. libavcodec/cbs_h266_syntax_template.c +4 −0
libavcodec/cbs_h266.h+1−0
@@ -593,6 +593,7 @@ typedef struct H266RawPPS { · 592 unmodified lines
593 uint16_t sub_pic_id_val[VVC_MAX_SLICES]; ///< SubpicIdVal593 uint16_t sub_pic_id_val[VVC_MAX_SLICES]; ///< SubpicIdVal
594 uint16_t col_width_val[VVC_MAX_TILE_COLUMNS]; ///< ColWidthVal594 uint16_t col_width_val[VVC_MAX_TILE_COLUMNS]; ///< ColWidthVal
595 uint16_t row_height_val[VVC_MAX_TILE_ROWS]; ///< RowHeightVal595 uint16_t row_height_val[VVC_MAX_TILE_ROWS]; ///< RowHeightVal
596 uint16_t slice_top_left_tile_idx[VVC_MAX_SLICES];
596} H266RawPPS;597} H266RawPPS;
597 598
598typedef struct H266RawAPS {599typedef struct H266RawAPS {
libavcodec/cbs_h266_syntax_template.c+4−0
@@ -1976,6 +1976,7 @@ static int FUNC(pps) (CodedBitstreamContext *ctx, RWContext *rw, · 1975 unmodified lines
1976 else1976 else
1977 infer(pps_tile_idx_delta_present_flag, 0);1977 infer(pps_tile_idx_delta_present_flag, 0);
1978 for (i = 0; i < current->pps_num_slices_in_pic_minus1; i++) {1978 for (i = 0; i < current->pps_num_slices_in_pic_minus1; i++) {
1979 current->slice_top_left_tile_idx[i] = tile_idx;
1979 tile_x = tile_idx % current->num_tile_columns;1980 tile_x = tile_idx % current->num_tile_columns;
1980 tile_y = tile_idx / current->num_tile_columns;1981 tile_y = tile_idx / current->num_tile_columns;
1981 if (tile_x != current->num_tile_columns - 1) {1982 if (tile_x != current->num_tile_columns - 1) {
@@ -2058,6 +2059,8 @@ static int FUNC(pps) (CodedBitstreamContext *ctx, RWContext *rw, · 76 unmodified lines
2058 }2059 }
2059 num_slices_in_tile = j;2060 num_slices_in_tile = j;
2060 }2061 }
2062 for (int k = 0; k < num_slices_in_tile; k++)
2063 current->slice_top_left_tile_idx[i + k] = tile_idx;
2061 i += num_slices_in_tile - 1;2064 i += num_slices_in_tile - 1;
2062 } else {2065 } else {
2063 uint16_t height = 0;2066 uint16_t height = 0;
@@ -2101,6 +2104,7 @@ static int FUNC(pps) (CodedBitstreamContext *ctx, RWContext *rw, · 37 unmodified lines
2101 if (i == current->pps_num_slices_in_pic_minus1) {2104 if (i == current->pps_num_slices_in_pic_minus1) {
2102 uint16_t height = 0;2105 uint16_t height = 0;
2103 2106
2107 current->slice_top_left_tile_idx[i] = tile_idx;
2104 tile_x = tile_idx % current->num_tile_columns;2108 tile_x = tile_idx % current->num_tile_columns;
2105 tile_y = tile_idx / current->num_tile_columns;2109 tile_y = tile_idx / current->num_tile_columns;
2106 if (tile_y >= current->num_tile_rows)2110 if (tile_y >= current->num_tile_rows)

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t