JPWO2021252471A5 - - Google Patents
Download PDFInfo
- Publication number
- JPWO2021252471A5 JPWO2021252471A5 JP2022575700A JP2022575700A JPWO2021252471A5 JP WO2021252471 A5 JPWO2021252471 A5 JP WO2021252471A5 JP 2022575700 A JP2022575700 A JP 2022575700A JP 2022575700 A JP2022575700 A JP 2022575700A JP WO2021252471 A5 JPWO2021252471 A5 JP WO2021252471A5
- Authority
- JP
- Japan
- Prior art keywords
- bitstream
- sub
- sps
- nal unit
- picture
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000000034 method Methods 0.000 claims description 40
- 238000000605 extraction Methods 0.000 claims description 19
- 238000006243 chemical reaction Methods 0.000 claims description 5
- 239000000284 extract Substances 0.000 claims description 3
- 230000000153 supplemental effect Effects 0.000 claims 4
- 238000013488 ordinary least square regression Methods 0.000 description 15
- 229920000069 polyphenylene sulfide Polymers 0.000 description 13
- 239000000945 filler Substances 0.000 description 8
- FMYKJLXRRQTBOR-UBFHEZILSA-N (2s)-2-acetamido-4-methyl-n-[4-methyl-1-oxo-1-[[(2s)-1-oxohexan-2-yl]amino]pentan-2-yl]pentanamide Chemical group CCCC[C@@H](C=O)NC(=O)C(CC(C)C)NC(=O)[C@H](CC(C)C)NC(C)=O FMYKJLXRRQTBOR-UBFHEZILSA-N 0.000 description 5
- 230000011664 signaling Effects 0.000 description 2
Description
1つの例示的な態様では、ビデオデータを処理する方法が開示される。当該方法は、ビデオとビデオのビットストリームとの間の変換を実行するステップを含み、ビットストリームは、ルールに従って1つ以上のサブピクチャを含む複数のレイヤを含み、ルールは、出力ビットストリームがビットストリームから抽出されるサブピクチャサブビットストリーム抽出プロセス中に、出力ビットストリームに適用可能でないスケーラブルネスト化されたSEIメッセージを含む補足エンハンスメント情報ネットワーク抽象レイヤユニット(SEI NALユニット)が出力ビットストリームにおいて省略されることを指定する。
3.7. サブピクチャサブビットストリーム抽出プロセス
最新のVVCテキストのC.7節に加えて、Bytedance IDF P2005612001H_v0における提案の変更のサブピクチャサブビットストリーム抽出プロセスは以下の通りである。
C.7 サブピクチャサブビットストリーム抽出プロセス
このプロセスへの入力は、ビットストリームinBitstream、ターゲットOLSインデックスtargetOlsIdx、ターゲット最高TemporalId値tIdTarget、及び0以上NumLayersInOls[targetOLsIdx]-1以下のiについてのターゲットサブピクチャインデックス値subpicIdxTarget[i]のリストである。
このプロセスの出力は、サブビットストリームoutBitstreamである。
入力ビットストリームについてのビットストリーム適合性の要件は、以下の条件の全てを満たすいずれかの出力サブビットストリームが適合ビットストリームであることである。
- 出力サブビットストリームは、ビットストリーム、VPSによって指定されたOLSのリストへのインデックスに等しいtargetOlsIdx、0以上vps_max_sublayers_minus1以下の範囲内のいずれかの値に等しいtIdTarget、及び以下の条件を満たす0以上NumLayersInOls[targetOLsIdx]-1以下のiについてのリストsubpicIdxTarget[i]を入力として、この節で指定されたプロセスの出力である。
- 第targetOLsIdxのOLS内の全てのレイヤは、同じ空間分解能、sps_num_subpics_minus1について同じ値及び同じサブピクチャレイアウトを有し、全て
のサブピクチャは1に等しいsps_subpic_treated_as_pic_flag[]を有する。
- iの全ての値についてのsubpicIdxTarget[i]の値は同じであり、0以上sps_num_subpics_minus1以下の範囲内の特定の値に等しい。
- NumLayersInOls[targetOlsIdx]が1よりも大きく、sps_num_subpics_minus1が0よりも大きい場合、サブピクチャレベル情報SEIメッセージは、1に等しいsn_ols_flagを有するスケーラブルネスト化SEIメッセージに存在するものとし、NestingOlsIdx[i]は0以上sn_num_olss_minus1以下の範囲内のiの1つの値についてtargetOlsIdxに等しい。
マルチレイヤOLSでの使用のために、SLI SEIメッセージは、スケーラブルネスト化SEIメッセージに含まれるものとし、特定のOLS又は特定のOLS内の全てのレイヤに適用されるようにスケーラブルネスト化SEIメッセージに示されるものとする。
- 出力サブビットストリームは、リストLayerIdInOls[targetOlsIdx]内のnuh_layer_id値のそれぞれに等しいnuh_layer_idを有する少なくとも1つのVCL NALユニットを含む。
- 出力サブビットストリームは、tIdTargetに等しいTemporalIdを有する少なくとも1つのVCL NALユニットを含む。
注-適合ビットストリームは、0に等しいTemporalIdを有する1つ以上のコーディングされたスライスNALユニットを含むが、0に等しいnuh_layer_idを有するコーディングされたスライスNALユニットを含む必要はない。
- 出力サブビットストリームは、0以上NumLayersInOls[targetOlsIdx]-1以下の範囲内のそれぞれのiについてLayerIdInOls[targetOlsIdx][i]に等しいnuh_layer_idを有し且つSubpicIdVal[subpicIdxTarget[i]]に等しいsh_subpic_idを有する少なくとも1つのVCL NALユニットを含む。
出力サブビットストリームoutBitstreamは以下のように導出される。
- Annex C.6において指定されたサブビットストリーム抽出プロセスは、inBitstream、targetOlsIdx及びtIdTargetを入力として呼び出され、プロセスの出力はoutBitstreamに割り当てられる。
- 0以上NumLayersInOls[targetOLsIdx]-1以下の範囲のiのそれぞれ値について、outBitstreamから、LayerIdInOls[targetOLsIdx][i]に等しいnuh_layer_idを有し且つSubpicIdVal[subpicIdxTarget[i]]に等しくないsh_subpic_idを有する全てのVCL NALユニットと、これらに関連するフィラー(filler)データNALユニット及びフィラーペイロードSEIメッセージを含むSEI NALユニットとを削除する。
- sli_cbr_constraint_flagが0に等しい場合、FD_NUTに等しいnal_unit_typeを有する全てのNALユニットと、フィラーペイロードSEIメッセージを含むSEI NALユニットとを削除する。
- この仕様において指定されていない何らかの外部手段がサブビットストリームoutBitstreamの置換パラメータセットを提供するために利用可能である場合、全てのパラメータセットを置換パラメータセットに置き換える。
- そうでなく、サブピクチャレベル情報SEIメッセージがinBitstreamに存在する場合、以下が適用される。
- 全ての参照されるVPS NALユニット内のprofile_tier_level()シンタックス構造のリストの第vps_ols_ptl_idx[targetOlsIdx]のエントリ内のgeneral_level_idcの値を、subpicIdxに等しいサブピクチャインデックスを有するサブピクチャから構成されるサブピクチャのセットについて、式D.11で導出されるSubpicSetLevelIdcに等しくなるように書き換える。
- VCL HRDパラメータ又はNAL HRDパラメータが存在する場合、全ての参照されるVPS NALユニット内の第vps_ols_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]のols_hrd_parameters()シンタックス構造と、第iのレイヤによって参照される全てのSPS NALユニット内のols_hrd_parameters()シンタックス構造とにおいて第jのCPBのcpb_size_value_minus1[tIdTarget][j]及びbit_rate_value_minus1[tIdTarget][j]のそれぞれの値を、これらがそれぞれ式D.6によって導出されるSubpicCpbSizeVcl[SubpicSetLevelIdx][subpicIdx]及びSubpicCpbSizeNal[SubpicSetLevelIdx][subpicIdx]と、それぞれ式D.8及びD.9によって導出されるSubpicBitrateVcl[SubpicSetLevelIdx][subpicIdx]及びSubpicBitrateNal[SubpicSetLevelIdx][subpicIdx]とに対応するように書き換え、SubpicSetLevelIdxは、subpicIdxに等しいサブピクチャインデックスを有するサブピクチャについて式D.11によって導出され、jは0以上hrd_cpb_cnt_minus1以下の範囲内にあり、iは0以上NumLayersInOls[targetOlsIdx]-1の範囲内にある。
- 0以上NumLayersInOls[targetOlsIdx]-1以下の範囲内のiのそれぞれの値について、以下が適用される。
- 変数spIdxはsubpicIdxTarget[i]に等しく設定される。
- 1に等しいsps_ptl_dpb_hrd_params_present_flagを有する全ての参照されるSPS NALユニット内のprofile_tier_level()シンタックス構造内のgeneral_level_idcの値を、spIdxに等しいサブピクチャインデックスを有するサブピクチャから構成されるサブピクチャのセットについて、式D.11によって導出されるSubpicSetLevelIdcに等しくなるように書き換える。
- 変数subpicWidthInLumaSamples及びsubpicHeightInLumaSamplesは以下のように導出される。
subpicWidthInLumaSamples=min((sps_subpic_ctu_top_left_x[spIdx]+sps_subpic_width_minus1[spIdx]+1)*CtbSizeY,pps_pic_width_in_luma_samples)-sps_subpic_ctu_top_left_x[spIdx]*CtbSizeY (C.24)
subpicHeightInLumaSamples=min((sps_subpic_ctu_top_left_y[spIdx]+sps_subpic_height_minus1[spIdx]+1)*CtbSizeY,pps_pic_height_in_luma_samples)-sps_subpic_ctu_top_left_y[spIdx]*CtbSizeY (C.25)
- 全ての参照されるSPS NALユニット内のsps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesの値と、全ての参照されるPPS NALユニット内のpps_pic_width_in_luma_samples及びpps_pic_height_in_luma_samplesの値とを、それぞれsubpicWidthInLumaSamples及びsubpicHeightInLumaSamplesに等しくなるように書き換える。
- 全ての参照されるSPS NALユニット内のsps_num_subpics_minus1と、全ての参照されるPPS NALユニット内のpps_num_subpics_minus1の値とを0に書き換える。
- 存在する場合には全ての参照されるSPS NALユニット内のシンタックスエレメントsps_subpic_ctu_top_left_x[spIdx]及びsps_subpic_ctu_top_left_y[spIdx]を0に書き換える。
- 全ての参照されるSPS NALユニット内で、spIdxに等しくないそれぞれのjについて、シンタックスエレメントsps_subpic_ctu_top_left_x[j]、sps_subpic_ctu_top_left_y[j]、sps_subpic_width_minus1[j]、sps_subpic_height_minus1[j]、sps_subpic_treated_as_pic_flag[j]、sps_loop_filter_across_subpic_enabled_flag[j]及びsps_subpic_id[j]を削除する。
- タイル及びスライスのシグナリングのために全ての参照されるPPS内のシンタックスエレメントを書き換え、spIdxに等しいサブピクチャインデックスを有するサブピクチャに関連しない全てのタイル行、タイル列及びスライスを削除する。
- 変数subpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset及びsubpicConfWinBottomOffsetは以下のように導出される。
subpicConfWinLeftOffset=sps_subpic_ctu_top_left_x[spIdx]==0?sps_conf_win_left_offset:0 (C.26)
subpicConfWinRightOffset=(sps_subpic_ctu_top_left_x[spIdx]+sps_subpic_width_minus1[spIdx]+1)*CtbSizeY>=sps_pic_width_max_in_luma_samples?sps_conf_win_right_offset:0 (C.27)
subpicConfWinTopOffset=sps_subpic_ctu_top_left_y[spIdx]==0?sps_conf_win_top_offset:0 (C.28)
subpicConfWinBottomOffset=(sps_subpic_ctu_top_left_y[spIdx]+sps_subpic_height_minus1[spIdx]+1)*CtbSizeY>=sps_pic_height_max_in_luma_samples?sps_conf_win_bottom_offset:0 (C.29)
ここで、上記の式におけるsps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples、sps_pic_height_max_in_luma_samples、sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset及びsps_conf_win_bottom_offsetは、書き換え前の元のSPSのものである。
- 全ての参照されるSPS NALユニット内のsps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset及びsps_conf_win_bottom_offsetの値と、全ての参照されるPPS NALユニット内のpps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset及びpps_conf_win_bottom_offsetの値とを、それぞれsubpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset及びsubpicConfWinBottomOffsetに等しくなるように書き換える。
- 変数subpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset及びsubpicScalWinBotOffsetは以下のように導出される。
subpicScalWinLeftOffset=pps_scaling_win_left_offset-sps_subpic_ctu_top_left_x[spIdx]*CtbSizeY/SubWidthC (C.30)
rightSubpicBd=(sps_subpic_ctu_top_left_x[spIdx]+sps_subpic_width_minus1[spIdx]+1)*CtbSizeY
subpicScalWinRightOffset=(rightSubpicBd>=sps_pic_width_max_in_luma_samples)?pps_scaling_win_right_offset:pps_scaling_win_right_offset-(sps_pic_width_max_in_luma_samples-rightSubpicBd)/SubWidthC (C.31)
subpicScalWinTopOffset=pps_scaling_win_top_offset-sps_subpic_ctu_top_left_y[spIdx]*CtbSizeY/SubHeightC (C.32)
botSubpicBd=(sps_subpic_ctu_top_left_y[spIdx]+sps_subpic_height_minus1[spIdx]+1)*CtbSizeY
subpicScalWinBotOffset=(botSubpicBd>=sps_pic_height_max_in_luma_samples)?pps_scaling_win_bottom_offset:pps_scaling_win_bottom_offset-(sps_pic_height_max_in_luma_samples-botSubpicBd)/SubHeightC (C.33)
ここで、上記の式におけるsps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesは、書き換え前の元のSPSのものであり、上記のpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset及びpps_scaling_win_bottom_offsetは、書き換え前の元のPPSのものである。
- 全ての参照されるPPS NALユニット内のpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset及びpps_scaling_win_bottom_offsetの値を、それぞれsubpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset及びsubpicScalWinBotOffsetに等しくなるように書き換える。
- sli_cbr_constraint_flagが1に等しい場合、0以上hrd_cpb_cnt_minus1以下の範囲内のjにおいて、全ての参照されるVPS NALユニット及びSPS NALユニット内の第vps_ols_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]のols_hrd_parameters()シンタックス構造内の第jのCPBのcbr_flag[tIdTarget][j]を1に等しく設定する。そうでない場合(sli_cbr_constraint_flagが0に等しい場合)、cbr_flag[tIdTarget][j]を0に等しく設定する。
- outBitstreamが、outBitstreamに適用可能な、1に等しいsn_ols_flag及び1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージを含むSEI NALユニットを含む場合、スケーラブルネスト化SEIメッセージから、1(PT)、130(DUI)又は132(復号ピクチャハッシュ)に等しいpayloadTypeを有する適切なスケーラブルネスト化されていないSEIメッセージを抽出し、抽出されたSEIメッセージをoutBitstreamに配置する。
最新のVVCテキストのC.7節に加えて、Bytedance IDF P2005612001H_v0における提案の変更のサブピクチャサブビットストリーム抽出プロセスは以下の通りである。
C.7 サブピクチャサブビットストリーム抽出プロセス
このプロセスへの入力は、ビットストリームinBitstream、ターゲットOLSインデックスtargetOlsIdx、ターゲット最高TemporalId値tIdTarget、及び0以上NumLayersInOls[targetOLsIdx]-1以下のiについてのターゲットサブピクチャインデックス値subpicIdxTarget[i]のリストである。
このプロセスの出力は、サブビットストリームoutBitstreamである。
入力ビットストリームについてのビットストリーム適合性の要件は、以下の条件の全てを満たすいずれかの出力サブビットストリームが適合ビットストリームであることである。
- 出力サブビットストリームは、ビットストリーム、VPSによって指定されたOLSのリストへのインデックスに等しいtargetOlsIdx、0以上vps_max_sublayers_minus1以下の範囲内のいずれかの値に等しいtIdTarget、及び以下の条件を満たす0以上NumLayersInOls[targetOLsIdx]-1以下のiについてのリストsubpicIdxTarget[i]を入力として、この節で指定されたプロセスの出力である。
- 第targetOLsIdxのOLS内の全てのレイヤは、同じ空間分解能、sps_num_subpics_minus1について同じ値及び同じサブピクチャレイアウトを有し、全て
のサブピクチャは1に等しいsps_subpic_treated_as_pic_flag[]を有する。
- iの全ての値についてのsubpicIdxTarget[i]の値は同じであり、0以上sps_num_subpics_minus1以下の範囲内の特定の値に等しい。
- NumLayersInOls[targetOlsIdx]が1よりも大きく、sps_num_subpics_minus1が0よりも大きい場合、サブピクチャレベル情報SEIメッセージは、1に等しいsn_ols_flagを有するスケーラブルネスト化SEIメッセージに存在するものとし、NestingOlsIdx[i]は0以上sn_num_olss_minus1以下の範囲内のiの1つの値についてtargetOlsIdxに等しい。
マルチレイヤOLSでの使用のために、SLI SEIメッセージは、スケーラブルネスト化SEIメッセージに含まれるものとし、特定のOLS又は特定のOLS内の全てのレイヤに適用されるようにスケーラブルネスト化SEIメッセージに示されるものとする。
- 出力サブビットストリームは、リストLayerIdInOls[targetOlsIdx]内のnuh_layer_id値のそれぞれに等しいnuh_layer_idを有する少なくとも1つのVCL NALユニットを含む。
- 出力サブビットストリームは、tIdTargetに等しいTemporalIdを有する少なくとも1つのVCL NALユニットを含む。
注-適合ビットストリームは、0に等しいTemporalIdを有する1つ以上のコーディングされたスライスNALユニットを含むが、0に等しいnuh_layer_idを有するコーディングされたスライスNALユニットを含む必要はない。
- 出力サブビットストリームは、0以上NumLayersInOls[targetOlsIdx]-1以下の範囲内のそれぞれのiについてLayerIdInOls[targetOlsIdx][i]に等しいnuh_layer_idを有し且つSubpicIdVal[subpicIdxTarget[i]]に等しいsh_subpic_idを有する少なくとも1つのVCL NALユニットを含む。
出力サブビットストリームoutBitstreamは以下のように導出される。
- Annex C.6において指定されたサブビットストリーム抽出プロセスは、inBitstream、targetOlsIdx及びtIdTargetを入力として呼び出され、プロセスの出力はoutBitstreamに割り当てられる。
- 0以上NumLayersInOls[targetOLsIdx]-1以下の範囲のiのそれぞれ値について、outBitstreamから、LayerIdInOls[targetOLsIdx][i]に等しいnuh_layer_idを有し且つSubpicIdVal[subpicIdxTarget[i]]に等しくないsh_subpic_idを有する全てのVCL NALユニットと、これらに関連するフィラー(filler)データNALユニット及びフィラーペイロードSEIメッセージを含むSEI NALユニットとを削除する。
- sli_cbr_constraint_flagが0に等しい場合、FD_NUTに等しいnal_unit_typeを有する全てのNALユニットと、フィラーペイロードSEIメッセージを含むSEI NALユニットとを削除する。
- この仕様において指定されていない何らかの外部手段がサブビットストリームoutBitstreamの置換パラメータセットを提供するために利用可能である場合、全てのパラメータセットを置換パラメータセットに置き換える。
- そうでなく、サブピクチャレベル情報SEIメッセージがinBitstreamに存在する場合、以下が適用される。
- 全ての参照されるVPS NALユニット内のprofile_tier_level()シンタックス構造のリストの第vps_ols_ptl_idx[targetOlsIdx]のエントリ内のgeneral_level_idcの値を、subpicIdxに等しいサブピクチャインデックスを有するサブピクチャから構成されるサブピクチャのセットについて、式D.11で導出されるSubpicSetLevelIdcに等しくなるように書き換える。
- VCL HRDパラメータ又はNAL HRDパラメータが存在する場合、全ての参照されるVPS NALユニット内の第vps_ols_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]のols_hrd_parameters()シンタックス構造と、第iのレイヤによって参照される全てのSPS NALユニット内のols_hrd_parameters()シンタックス構造とにおいて第jのCPBのcpb_size_value_minus1[tIdTarget][j]及びbit_rate_value_minus1[tIdTarget][j]のそれぞれの値を、これらがそれぞれ式D.6によって導出されるSubpicCpbSizeVcl[SubpicSetLevelIdx][subpicIdx]及びSubpicCpbSizeNal[SubpicSetLevelIdx][subpicIdx]と、それぞれ式D.8及びD.9によって導出されるSubpicBitrateVcl[SubpicSetLevelIdx][subpicIdx]及びSubpicBitrateNal[SubpicSetLevelIdx][subpicIdx]とに対応するように書き換え、SubpicSetLevelIdxは、subpicIdxに等しいサブピクチャインデックスを有するサブピクチャについて式D.11によって導出され、jは0以上hrd_cpb_cnt_minus1以下の範囲内にあり、iは0以上NumLayersInOls[targetOlsIdx]-1の範囲内にある。
- 0以上NumLayersInOls[targetOlsIdx]-1以下の範囲内のiのそれぞれの値について、以下が適用される。
- 変数spIdxはsubpicIdxTarget[i]に等しく設定される。
- 1に等しいsps_ptl_dpb_hrd_params_present_flagを有する全ての参照されるSPS NALユニット内のprofile_tier_level()シンタックス構造内のgeneral_level_idcの値を、spIdxに等しいサブピクチャインデックスを有するサブピクチャから構成されるサブピクチャのセットについて、式D.11によって導出されるSubpicSetLevelIdcに等しくなるように書き換える。
- 変数subpicWidthInLumaSamples及びsubpicHeightInLumaSamplesは以下のように導出される。
subpicWidthInLumaSamples=min((sps_subpic_ctu_top_left_x[spIdx]+sps_subpic_width_minus1[spIdx]+1)*CtbSizeY,pps_pic_width_in_luma_samples)-sps_subpic_ctu_top_left_x[spIdx]*CtbSizeY (C.24)
subpicHeightInLumaSamples=min((sps_subpic_ctu_top_left_y[spIdx]+sps_subpic_height_minus1[spIdx]+1)*CtbSizeY,pps_pic_height_in_luma_samples)-sps_subpic_ctu_top_left_y[spIdx]*CtbSizeY (C.25)
- 全ての参照されるSPS NALユニット内のsps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesの値と、全ての参照されるPPS NALユニット内のpps_pic_width_in_luma_samples及びpps_pic_height_in_luma_samplesの値とを、それぞれsubpicWidthInLumaSamples及びsubpicHeightInLumaSamplesに等しくなるように書き換える。
- 全ての参照されるSPS NALユニット内のsps_num_subpics_minus1と、全ての参照されるPPS NALユニット内のpps_num_subpics_minus1の値とを0に書き換える。
- 存在する場合には全ての参照されるSPS NALユニット内のシンタックスエレメントsps_subpic_ctu_top_left_x[spIdx]及びsps_subpic_ctu_top_left_y[spIdx]を0に書き換える。
- 全ての参照されるSPS NALユニット内で、spIdxに等しくないそれぞれのjについて、シンタックスエレメントsps_subpic_ctu_top_left_x[j]、sps_subpic_ctu_top_left_y[j]、sps_subpic_width_minus1[j]、sps_subpic_height_minus1[j]、sps_subpic_treated_as_pic_flag[j]、sps_loop_filter_across_subpic_enabled_flag[j]及びsps_subpic_id[j]を削除する。
- タイル及びスライスのシグナリングのために全ての参照されるPPS内のシンタックスエレメントを書き換え、spIdxに等しいサブピクチャインデックスを有するサブピクチャに関連しない全てのタイル行、タイル列及びスライスを削除する。
- 変数subpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset及びsubpicConfWinBottomOffsetは以下のように導出される。
subpicConfWinLeftOffset=sps_subpic_ctu_top_left_x[spIdx]==0?sps_conf_win_left_offset:0 (C.26)
subpicConfWinRightOffset=(sps_subpic_ctu_top_left_x[spIdx]+sps_subpic_width_minus1[spIdx]+1)*CtbSizeY>=sps_pic_width_max_in_luma_samples?sps_conf_win_right_offset:0 (C.27)
subpicConfWinTopOffset=sps_subpic_ctu_top_left_y[spIdx]==0?sps_conf_win_top_offset:0 (C.28)
subpicConfWinBottomOffset=(sps_subpic_ctu_top_left_y[spIdx]+sps_subpic_height_minus1[spIdx]+1)*CtbSizeY>=sps_pic_height_max_in_luma_samples?sps_conf_win_bottom_offset:0 (C.29)
ここで、上記の式におけるsps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples、sps_pic_height_max_in_luma_samples、sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset及びsps_conf_win_bottom_offsetは、書き換え前の元のSPSのものである。
- 全ての参照されるSPS NALユニット内のsps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset及びsps_conf_win_bottom_offsetの値と、全ての参照されるPPS NALユニット内のpps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset及びpps_conf_win_bottom_offsetの値とを、それぞれsubpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset及びsubpicConfWinBottomOffsetに等しくなるように書き換える。
- 変数subpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset及びsubpicScalWinBotOffsetは以下のように導出される。
subpicScalWinLeftOffset=pps_scaling_win_left_offset-sps_subpic_ctu_top_left_x[spIdx]*CtbSizeY/SubWidthC (C.30)
rightSubpicBd=(sps_subpic_ctu_top_left_x[spIdx]+sps_subpic_width_minus1[spIdx]+1)*CtbSizeY
subpicScalWinRightOffset=(rightSubpicBd>=sps_pic_width_max_in_luma_samples)?pps_scaling_win_right_offset:pps_scaling_win_right_offset-(sps_pic_width_max_in_luma_samples-rightSubpicBd)/SubWidthC (C.31)
subpicScalWinTopOffset=pps_scaling_win_top_offset-sps_subpic_ctu_top_left_y[spIdx]*CtbSizeY/SubHeightC (C.32)
botSubpicBd=(sps_subpic_ctu_top_left_y[spIdx]+sps_subpic_height_minus1[spIdx]+1)*CtbSizeY
subpicScalWinBotOffset=(botSubpicBd>=sps_pic_height_max_in_luma_samples)?pps_scaling_win_bottom_offset:pps_scaling_win_bottom_offset-(sps_pic_height_max_in_luma_samples-botSubpicBd)/SubHeightC (C.33)
ここで、上記の式におけるsps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesは、書き換え前の元のSPSのものであり、上記のpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset及びpps_scaling_win_bottom_offsetは、書き換え前の元のPPSのものである。
- 全ての参照されるPPS NALユニット内のpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset及びpps_scaling_win_bottom_offsetの値を、それぞれsubpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset及びsubpicScalWinBotOffsetに等しくなるように書き換える。
- sli_cbr_constraint_flagが1に等しい場合、0以上hrd_cpb_cnt_minus1以下の範囲内のjにおいて、全ての参照されるVPS NALユニット及びSPS NALユニット内の第vps_ols_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]のols_hrd_parameters()シンタックス構造内の第jのCPBのcbr_flag[tIdTarget][j]を1に等しく設定する。そうでない場合(sli_cbr_constraint_flagが0に等しい場合)、cbr_flag[tIdTarget][j]を0に等しく設定する。
- outBitstreamが、outBitstreamに適用可能な、1に等しいsn_ols_flag及び1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージを含むSEI NALユニットを含む場合、スケーラブルネスト化SEIメッセージから、1(PT)、130(DUI)又は132(復号ピクチャハッシュ)に等しいpayloadTypeを有する適切なスケーラブルネスト化されていないSEIメッセージを抽出し、抽出されたSEIメッセージをoutBitstreamに配置する。
4. 開示の技術的解決策により解決される技術的問題
サブピクチャサブビットストリーム抽出プロセスの最新の設計は以下の問題を有する。
1) 出力ビットストリームに適用されない1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージにおいて、スケーラブルネスト化されたSEIメッセージを含むSEI NALユニットは、出力ビットストリームから削除されるべきである。
2) サブピクチャシーケンスを識別するためのサブピクチャインデックスは、ピクチャ当たり1つのサブピクチャのみを有するレイヤではなく、ピクチャ当たり複数のサブピクチャを有するレイヤにおける抽出対象のサブピクチャのサブピクチャインデックスであるべきである。
3) 0以上tIdTarget-1以下の範囲内のkについてsublayer_level_idc[k]の書き換えが欠落しており、参照されるVPS及び/又は参照されるSPSに対してどの条件でレベル情報の書き換えが実行されるべきかが明確に指定されていない。
4) 0以上tIdTarget-1以下の範囲内のkについてcpb_size_value_minus1[k][j]及びbit_rate_value_minus1[k][j]の書き換えが欠落しており、参照されるVPS及び/又は参照されるSPSに対してどの条件でCPBサイズ及びビットレート情報の書き換えが実行されるべきかが明確に指定されていない。
5) 参照されるVPS及び/又は参照されるSPSに対してどの条件でcbr_flag[tIdTarget][j]の書き換えが実行されるべきかが明確に指定されていない。
6) スケーラブルネスト化されたSEIメッセージをスケーラブルネスト化されていないSEIメッセージにする最後のステップは複数の問題を有する。
a. 復号ピクチャハッシュSEIメッセージがスケーラブルネスト化SEIメッセージに含まれる場合、sn_ols_flagの値は0になる必要があるが、最後のステップの現在のテキストはsn_ols_flagが1であることを仮定している。
b. 1に等しいsn_ols_flag及び1に等しいsn_subpic_flagを有する場合のSLI及びBP SEIメッセージはカバーされていない。
c. 0に等しいsn_ols_flag及び1に等しいsn_subpic_flagを有する場合のSEIメッセージはカバーされていない。
d. 結果のスケーラブルネスト化されていないSEIメッセージが出力ビットストリームのどこに配置されるべきであるか(SEI NALユニット内で、SEI NALユニットがどれであるべきか)が指定されていない。
e. 元のコンテナSEI NALユニットは、出力ビットストリームから削除されるべきである。
サブピクチャサブビットストリーム抽出プロセスの最新の設計は以下の問題を有する。
1) 出力ビットストリームに適用されない1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージにおいて、スケーラブルネスト化されたSEIメッセージを含むSEI NALユニットは、出力ビットストリームから削除されるべきである。
2) サブピクチャシーケンスを識別するためのサブピクチャインデックスは、ピクチャ当たり1つのサブピクチャのみを有するレイヤではなく、ピクチャ当たり複数のサブピクチャを有するレイヤにおける抽出対象のサブピクチャのサブピクチャインデックスであるべきである。
3) 0以上tIdTarget-1以下の範囲内のkについてsublayer_level_idc[k]の書き換えが欠落しており、参照されるVPS及び/又は参照されるSPSに対してどの条件でレベル情報の書き換えが実行されるべきかが明確に指定されていない。
4) 0以上tIdTarget-1以下の範囲内のkについてcpb_size_value_minus1[k][j]及びbit_rate_value_minus1[k][j]の書き換えが欠落しており、参照されるVPS及び/又は参照されるSPSに対してどの条件でCPBサイズ及びビットレート情報の書き換えが実行されるべきかが明確に指定されていない。
5) 参照されるVPS及び/又は参照されるSPSに対してどの条件でcbr_flag[tIdTarget][j]の書き換えが実行されるべきかが明確に指定されていない。
6) スケーラブルネスト化されたSEIメッセージをスケーラブルネスト化されていないSEIメッセージにする最後のステップは複数の問題を有する。
a. 復号ピクチャハッシュSEIメッセージがスケーラブルネスト化SEIメッセージに含まれる場合、sn_ols_flagの値は0になる必要があるが、最後のステップの現在のテキストはsn_ols_flagが1であることを仮定している。
b. 1に等しいsn_ols_flag及び1に等しいsn_subpic_flagを有する場合のSLI及びBP SEIメッセージはカバーされていない。
c. 0に等しいsn_ols_flag及び1に等しいsn_subpic_flagを有する場合のSEIメッセージはカバーされていない。
d. 結果のスケーラブルネスト化されていないSEIメッセージが出力ビットストリームのどこに配置されるべきであるか(SEI NALユニット内で、SEI NALユニットがどれであるべきか)が指定されていない。
e. 元のコンテナSEI NALユニットは、出力ビットストリームから削除されるべきである。
5. 解決策及び実施形態の一覧
上記の問題等を解決するために、以下に要約される方法が開示される。解決策の項目は、一般的な概念を説明するための例として考えられるべきであり、狭い意味で解釈されるべきではない。さらに、これらの項目は個別に適用でき、或いは、いずれかの方式で組み合わせることもできる。
1) 問題1を解決するために、サブピクチャサブビットストリーム抽出プロセスにおいて、出力ビットストリームに適用されないスケーラブルネスト化されたSEIメッセージを含むSEI NALユニットは出力ビットストリームから削除するように指定されてもよい。
2) 問題2を解決するために、サブピクチャサブビットストリーム抽出プロセスにおいて、以下が指定されてもよい。サブピクチャシーケンスを識別するためのサブピクチャインデックスは、ピクチャ当たり1つのサブピクチャのみを有するレイヤではなく、ピクチャ当たり複数のサブピクチャを有するレイヤにおいて、抽出対象のサブピクチャのサブピクチャインデックスとして指定される。
3) 問題3を解決するために、サブピクチャサブビットストリーム抽出プロセスにおいて、以下が指定されてもよい。存在する場合には参照されるVPS内で、また、NumLayersInOls[targetOLsIdx]が0に等しい場合には参照されるSPS内で、0以上tIdTarget-1以下の範囲内のkについてgeneral_level_idc及びsublayer_level_idc[k]の双方を、適切な値(例えば、本文献に記載される値)に書き換える。
4) 問題4を解決するために、サブピクチャサブビットストリーム抽出プロセスにおいて、以下が指定されてもよい。存在する場合には参照されるVPS内で、また、NumLayersInOls[targetOLsIdx]が0に等しい場合には参照されるSPS内で、0以上tIdTarget以下の範囲内のkの全ての値についてcpb_size_value_minus1[k][j]及びbit_rate_value_minus1[k][j]を、適切な値(例えば、本文献に記載される値)に書き換える。
5) 問題5を解決するために、サブピクチャサブビットストリーム抽出プロセスにおいて、以下が指定されてもよい。存在する場合には参照されるVPS内で、また、NumLayersInOls[targetOLsIdx]が0に等しい場合には参照されるSPS内で、cbr_flag[tIdTarget][j]を、適切な値(例えば、本文献に記載される値)に書き換える。
6) 問題6を解決するために、特定の条件下で、以下の動作のうち1つ以上が実行されてもよい。
a. 新たなSEI NALユニットseiNalUnitBを生成する。
b. seiNalUnitAを含むPUにseiNalUnitBを含める。
c. seiNalUnitAを含むPUに、seiNalUnitAの直後にseiNalUnitBを含める。
d. スケーラブルネスト化SEIメッセージから複数のスケーラブルネスト化されたSEIメッセージを抽出し、これらを(スケーラブルネスト化されていないSEIメッセージとして)直接seiNalUnitBに含める。
e. outBitstreamからseiNalUnitAを削除する。
7) 一例では、項目6)における特定の条件は以下のようになる。outBitstreamが、outBitstreamと全く同じレイヤのセットを有し且つoutBitstreamと同じサブピクチャのセットを有するサブピクチャに適用可能なレイヤ(sn_ols_flagが0に等しい場合)又はOLS(sn_ols_flagが1に等しい場合)に適用可能な1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージを含むSEI NALユニットseiNalUnitAを含む場合である。
8) 一例では、サブピクチャサブビットストリーム抽出プロセスにおいて、LayerIdInOls[targetOlsIdx]がビットストリーム内の全てのNALユニットにおいてnuh_layer_idの全ての値を含まず、outBitstreamがスケーラブルネスト化SEIメッセージを含むSEI NALユニットseiNalUnitAを含む場合、出力ビットストリームにおいてseiNalUnitAを保持する。
上記の問題等を解決するために、以下に要約される方法が開示される。解決策の項目は、一般的な概念を説明するための例として考えられるべきであり、狭い意味で解釈されるべきではない。さらに、これらの項目は個別に適用でき、或いは、いずれかの方式で組み合わせることもできる。
1) 問題1を解決するために、サブピクチャサブビットストリーム抽出プロセスにおいて、出力ビットストリームに適用されないスケーラブルネスト化されたSEIメッセージを含むSEI NALユニットは出力ビットストリームから削除するように指定されてもよい。
2) 問題2を解決するために、サブピクチャサブビットストリーム抽出プロセスにおいて、以下が指定されてもよい。サブピクチャシーケンスを識別するためのサブピクチャインデックスは、ピクチャ当たり1つのサブピクチャのみを有するレイヤではなく、ピクチャ当たり複数のサブピクチャを有するレイヤにおいて、抽出対象のサブピクチャのサブピクチャインデックスとして指定される。
3) 問題3を解決するために、サブピクチャサブビットストリーム抽出プロセスにおいて、以下が指定されてもよい。存在する場合には参照されるVPS内で、また、NumLayersInOls[targetOLsIdx]が0に等しい場合には参照されるSPS内で、0以上tIdTarget-1以下の範囲内のkについてgeneral_level_idc及びsublayer_level_idc[k]の双方を、適切な値(例えば、本文献に記載される値)に書き換える。
4) 問題4を解決するために、サブピクチャサブビットストリーム抽出プロセスにおいて、以下が指定されてもよい。存在する場合には参照されるVPS内で、また、NumLayersInOls[targetOLsIdx]が0に等しい場合には参照されるSPS内で、0以上tIdTarget以下の範囲内のkの全ての値についてcpb_size_value_minus1[k][j]及びbit_rate_value_minus1[k][j]を、適切な値(例えば、本文献に記載される値)に書き換える。
5) 問題5を解決するために、サブピクチャサブビットストリーム抽出プロセスにおいて、以下が指定されてもよい。存在する場合には参照されるVPS内で、また、NumLayersInOls[targetOLsIdx]が0に等しい場合には参照されるSPS内で、cbr_flag[tIdTarget][j]を、適切な値(例えば、本文献に記載される値)に書き換える。
6) 問題6を解決するために、特定の条件下で、以下の動作のうち1つ以上が実行されてもよい。
a. 新たなSEI NALユニットseiNalUnitBを生成する。
b. seiNalUnitAを含むPUにseiNalUnitBを含める。
c. seiNalUnitAを含むPUに、seiNalUnitAの直後にseiNalUnitBを含める。
d. スケーラブルネスト化SEIメッセージから複数のスケーラブルネスト化されたSEIメッセージを抽出し、これらを(スケーラブルネスト化されていないSEIメッセージとして)直接seiNalUnitBに含める。
e. outBitstreamからseiNalUnitAを削除する。
7) 一例では、項目6)における特定の条件は以下のようになる。outBitstreamが、outBitstreamと全く同じレイヤのセットを有し且つoutBitstreamと同じサブピクチャのセットを有するサブピクチャに適用可能なレイヤ(sn_ols_flagが0に等しい場合)又はOLS(sn_ols_flagが1に等しい場合)に適用可能な1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージを含むSEI NALユニットseiNalUnitAを含む場合である。
8) 一例では、サブピクチャサブビットストリーム抽出プロセスにおいて、LayerIdInOls[targetOlsIdx]がビットストリーム内の全てのNALユニットにおいてnuh_layer_idの全ての値を含まず、outBitstreamがスケーラブルネスト化SEIメッセージを含むSEI NALユニットseiNalUnitAを含む場合、出力ビットストリームにおいてseiNalUnitAを保持する。
6. 実施形態
以下は、VVC仕様に適用できる、第5節において上記に要約された発明の態様のいくつかの例示的な実施形態である。変更されたテキストは、JVET-S0152-v5の最新のVVCテキストに基づいている。追加又は変更されたほとんどの関連する部分は下線付きの太字(又は下線)で強調表示され、削除された部分のいくつかは[[イタリック体の二重角括弧]](又は[[]])で強調表示される。本質的に編集上の変更であるため強調されていないいくつかの他の変更が存在してもよい。
6.1 第1の実施形態
この実施形態は項目1~7及びこれらの部分項目についてのものである。
C.7 サブピクチャサブビットストリーム抽出プロセス
このプロセスへの入力は、ビットストリームinBitstream、ターゲットOLSインデックスtargetOlsIdx、ターゲット最高TemporalId値tIdTarget、及び0以上NumLayersInOls[targetOLsIdx]-1以下のiについての[[各レイヤについての]]ターゲットサブピクチャインデックス値subpicIdxTarget[i]の[[配列]]リストである。
このプロセスの出力は、サブビットストリームoutBitstreamである。
OLSインデックスtargetOlsIdxを有するOLSは、ターゲットOLSと呼ばれる。ターゲットOLS内のレイヤのうち、参照されるSPSが0よりも大きいsps_num_subpics_minus1を有するものはmultiSubpicLayersと呼ばれる。
入力ビットストリームについてのビットストリーム適合性の要件は、以下の条件の全てを満たすいずれかの出力サブビットストリームが適合ビットストリームであることである。
- 出力サブビットストリームは、ビットストリーム、VPSによって指定されたOLSのリストへのインデックスに等しいtargetOlsIdx、0以上vps_max_sublayers_minus1以下の範囲内のいずれかの値に等しいtIdTarget、及び以下の条件を満たす0以上NumLayersInOls[targetOLsIdx]-1以下のiについての[[入力に存在するサブピクチャインデックスに等しい]]リストsubpicIdxTarget[i]を入力として、この節で指定されたプロセスの出力である。
- subpicIdxTarget[i]の値は、sps_subpic_treated_as_pic_flag[subpicIdxTarget[i]]が1に等しくなるように、0以上sps_num_subpics_minus1以下の範囲内の値に等しくなり、sps_num_subpics_minus1及びsps_subpic_treated_as_pic_flag[subpicIdxTarget[i]]は、LayerIdInOls[targetOLsIdx][i]に等しいnuh_layer_idを有するレイヤによって参照されるSPSで検出されるか或いはこれに基づいて推定される。
注1-LayerIdInOls[targetOLsIdx][i]に等しいnuh_layer_idを有するレイヤについてのsps_num_subpics_minus1が0に等しい場合、subpicIdxTarget[i]の値は常に0に等しくなる。
- m及びnのいずれか2つの異なる整数値について、それぞれLayerIdInOls[targetOLsIdx][m]及びLayerIdInOls[targetOLsIdx][n]に等しいnuh_layer_idを有する双方のレイヤについて、sps_num_subpics_minus1が0よりも大きい場合、subpicIdxTarget[m]はsubpicIdxTarget[n]に等しくなる。
- 出力サブビットストリームは、リストLayerIdInOls[targetOlsIdx]内のnuh_layer_id値のそれぞれに等しいnuh_layer_idを有する少なくとも1つのVCL NALユニットを含む。
- 出力サブビットストリームは、tIdTargetに等しいTemporalIdを有する少なくとも1つのVCL NALユニットを含む。
注2-適合ビットストリームは、0に等しいTemporalIdを有する1つ以上のコーディングされたスライスNALユニットを含むが、0に等しいnuh_layer_idを有するコーディングされたスライスNALユニットを含む必要はない。
- 出力サブビットストリームは、0以上NumLayersInOls[targetOlsIdx]-1以下の範囲内のそれぞれのiについてLayerIdInOls[targetOlsIdx][i]に等しいnuh_layer_idを有し且つSubpicIdVal[subpicIdxTarget[i]][[内の値]]に等しいsh_subpic_idを有する少なくとも1つのVCL NALユニットを含む。
出力サブビットストリームoutBitstreamは[[以下のように]]以下の順序のステップによって導出される。
1. Annex C.6において指定されたサブビットストリーム抽出プロセスは、inBitstream、targetOlsIdx及びtIdTargetを入力として呼び出され、プロセスの出力はoutBitstreamに割り当てられる。
2. 0以上NumLayersInOls[targetOLsIdx]-1以下の範囲のiのそれぞれ値について、outBitstreamから、LayerIdInOls[targetOLsIdx][i]に等しいnuh_layer_idを有し且つSubpicIdVal[subpicIdxTarget[i]]に等しくないsh_subpic_idを有する全てのVCL NALユニットと、これらに関連するフィラー(filler)データNALユニット及びフィラーペイロードSEIメッセージを含むこれらに関連するSEI NALユニットとを削除する。
3. ターゲットOLSに適用されるSLI SEIメッセージのsli_cbr_constraint_flagが0に等しい場合、FD_NUTに等しいnal_unit_typeを有する全てのNALユニットと、フィラーペイロードSEIメッセージを含むSEI NALユニットとを削除する。
4. outBitstreamから、1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージを含む全てのSEI NALユニットを削除し、0以上sn_num_subpics_minus1以下のjについてのsn_subpic_idx[j]値のいずれもmultiSubpicLayers内のレイヤについてのsubpicIdxTarget[i]値のいずれにも等しくなくなる。
5. この仕様において指定されていない何らかの外部手段がサブビットストリームoutBitstreamの置換パラメータセットを提供するために利用可能である場合、全てのパラメータセットを置換パラメータセットに置き換える。そうでなく、SLI SEIメッセージがinBitstreamに存在する場合、以下の順序のステップが適用される[[が適用される]]。
a. 変数[[subpicIdx]]spIdxは、multiSubpicLayers内のいずれかのレイヤについて[[subpicIdxTarget[[NumLayersInOls[targetOlsIdx]-1]]]]subpicIdxTarget[i]の値に等しく設定される。
b. 存在する場合、全ての参照されるVPS NALユニット内のprofile_tier_level()シンタックス構造のリスト内で、また、NumLayersInOls[targetOLsIdx]が0に等しい場合、全ての参照されるSPS NALユニット内のprofile_tier_level()シンタックス構造内で、第vps_ols_ptl_idx[targetOlsIdx]のエントリ内の0以上tIdTarget-1以下の範囲内のkについてのgeneral_level_idc及びsublayer_level_idc[k]の値を、それぞれ第spIdxのサブピクチャシーケンス[[subpicIdxに等しいサブピクチャインデックスを有するサブピクチャから構成されるサブピクチャのセット]]について式D.10で導出されるSubpicLevelIdc[spIdx][tIdTarget]及びSubpicLevelIdc[spIdx][k]に等しくなるように書き換える。
c. 0以上tIdTarget以下の範囲のkについて、spLvIdxをSubpicLevelIdx[spIdx][k]に等しく設定し、SubpicLevelIdx[spIdx][k]は第spIdxのサブピクチャシーケンスについての式D.10によって導出される。VCL HRDパラメータ又はNAL HRDパラメータが存在する場合、0以上tIdTarget以下の範囲内のkについて、存在する場合には全ての参照されるVPS NALユニット内の第vps_ols_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]のols_hrd_parameters()シンタックス構造と、NumLayersInOls[targetOLsIdx]が0に等しい場合の[[第iのレイヤによって参照される]]全ての参照されるSPS NALユニット内のols_hrd_parameters()シンタックス構造とにおいて第jのCPBのcpb_size_value_minus1[k[[tIdTarget]]][j]及びbit_rate_value_minus1[k[[tIdTarget]]][j]のそれぞれの値を、これらがそれぞれ式D.6によって導出されるSubpicCpbSizeVcl[spLvIdx[[SubpicLevelIdx]]][spIdx[[subpicIdx]]][k]及びSubpicCpbSizeNal[spLvIdx[[SubpicLevelIdx]]][spIdx[[subpicIdx]]][k]と、それぞれ式D.8及びD.9によって導出されるSubpicBitrateVcl[spLvIdx[[SubpicLevelIdx]]][spIdx[[subpicIdx]]][k]及びSubpicBitrateNal[spLvIdx[[SubpicLevelIdx]]][spIdx[[subpicIdx]]][k]とに対応するように書き換え、[[SubpicSetLevelIdxは、subpicIdxに等しいサブピクチャインデックスを有するサブピクチャについて式D.10によって導出され]]、jは0以上hrd_cpb_cnt_minus1以下の範囲内にあり、iは0以上NumLayersInOls[targetOlsIdx]-1の範囲内にある。
d. [[0以上NumLayersInOls[targetOlsIdx]-1以下の範囲内のiを有する第iのレイヤ]]multiSubpicLayers内のそれぞれについて、そのレイヤ内のピクチャによって参照されるSPS及びPPSの書き換えのために、以下の順序のステップが適用される[[が適用される]]。
i. 変数subpicWidthInLumaSamples及びsubpicHeightInLumaSamplesは以下のように導出される。
subpicWidthInLumaSamples=min((sps_subpic_ctu_top_left_x[spIdx[[subpicIdx]]]+sps_subpic_width_minus1[spIdx[[subpicIdx]]]+1)*CtbSizeY,pps_pic_width_in_luma_samples)-sps_subpic_ctu_top_left_x[s spIdx[[subpicIdx]]]*CtbSizeY (C.24)
subpicHeightInLumaSamples=min((sps_subpic_ctu_top_left_y[spIdx[[subpicIdx]]]+sps_subpic_height_minus1[spIdx[[subpicIdx]]]+1)*CtbSizeY,pps_pic_height_in_luma_samples)-sps_subpic_ctu_top_left_y[spIdx[[subpicIdx]]]*CtbSizeY (C.25)
ii. 全ての参照されるSPS NALユニット内のsps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesの値と、全ての参照されるPPS NALユニット内のpps_pic_width_in_luma_samples及びpps_pic_height_in_luma_samplesの値とを、それぞれsubpicWidthInLumaSamples及びsubpicHeightInLumaSamplesに等しくなるように書き換える。
iii. 全ての参照されるSPS NALユニット内のsps_num_subpics_minus1と、全ての参照されるPPS NALユニット内のpps_num_subpics_minus1の値とを0に書き換える。
iv. 存在する場合には全ての参照されるSPS NALユニット内のシンタックスエレメントsps_subpic_ctu_top_left_x[spIdx[[subpicIdx]]]及びsps_subpic_ctu_top_left_y[spIdx[[subpicIdx]]]を0に書き換える。
v. 全ての参照されるSPS NALユニット内で、spIdx[[subpicIdx]]に等しくないそれぞれのjについて、シンタックスエレメントsps_subpic_ctu_top_left_x[j]、sps_subpic_ctu_top_left_y[j]、sps_subpic_width_minus1[j]、sps_subpic_height_minus1[j]、sps_subpic_treated_as_pic_flag[j]、sps_loop_filter_across_subpic_enabled_flag[j]及びsps_subpic_id[j]を削除する。
vi. タイル及びスライスのシグナリングのために全ての参照されるPPS内のシンタックスエレメントを書き換え、spIdx[[subpicIdx]]に等しいサブピクチャインデックスを有するサブピクチャに関連しない全てのタイル行、タイル列及びスライスを削除する。
vii. 変数subpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset及びsubpicConfWinBottomOffsetは以下のように導出される。
subpicConfWinLeftOffset=sps_subpic_ctu_top_left_x[spIdx[[subpicIdx]]]==0?sps_conf_win_left_offset:0 (C.26)
subpicConfWinRightOffset=(sps_subpic_ctu_top_left_x[spIdx[[subpicIdx]]]+sps_subpic_width_minus1[spIdx[[subpicIdx]]]+1)*CtbSizeY>=sps_pic_width_max_in_luma_samples?sps_conf_win_right_offset:0 (C.27)
subpicConfWinTopOffset=sps_subpic_ctu_top_left_y[spIdx[[subpicIdx]]==0?sps_conf_win_top_offset:0 (C.28)
subpicConfWinBottomOffset=(sps_subpic_ctu_top_left_y[spIdx[[subpicIdx]]]+sps_subpic_height_minus1[spIdx[[subpicIdx]]]+1)*CtbSizeY>=sps_pic_height_max_in_luma_samples?sps_conf_win_bottom_offset:0 (C.29)
ここで、上記の式におけるsps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples、sps_pic_height_max_in_luma_samples、sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset及びsps_conf_win_bottom_offsetは、書き換え前の元のSPSのものである。
注3-入力ビットストリーム及び出力ビットストリームの双方におけるmultiSubpicLayers内のレイヤ内のピクチャについて、sps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesの値は、それぞれpps_pic_width_in_luma_samples及びpps_pic_height_in_luma_samplesに等しい。したがって、上記の式において、sps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesは、それぞれpps_pic_width_in_luma_samples及びpps_pic_height_in_luma_samplesに置き換えられることができる。
viii. 全ての参照されるSPS NALユニット内のsps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset及びsps_conf_win_bottom_offsetの値と、全ての参照されるPPS NALユニット内のpps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset及びpps_conf_win_bottom_offsetの値とを、それぞれsubpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset及びsubpicConfWinBottomOffsetに等しくなるように書き換える。
ix. 変数subpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset及びsubpicScalWinBotOffsetは以下のように導出される。
subpicScalWinLeftOffset=pps_scaling_win_left_offset-sps_subpic_ctu_top_left_x[spIdx]*CtbSizeY/SubWidthC (C.30)
rightSubpicBd=(sps_subpic_ctu_top_left_x[spIdx]+sps_subpic_width_minus1[spIdx]+1)*CtbSizeY
subpicScalWinRightOffset=(rightSubpicBd>=sps_pic_width_max_in_luma_samples)?pps_scaling_win_right_offset:pps_scaling_win_right_offset-(sps_pic_width_max_in_luma_samples-rightSubpicBd)/SubWidthC (C.31)
subpicScalWinTopOffset=pps_scaling_win_top_offset-sps_subpic_ctu_top_left_y[spIdx]*CtbSizeY/SubHeightC (C.32)
botSubpicBd=(sps_subpic_ctu_top_left_y[spIdx]+sps_subpic_height_minus1[spIdx]+1)*CtbSizeY
subpicScalWinBotOffset=(botSubpicBd>=sps_pic_height_max_in_luma_samples)?pps_scaling_win_bottom_offset:pps_scaling_win_bottom_offset-(sps_pic_height_max_in_luma_samples-botSubpicBd)/SubHeightC (C.33)
ここで、上記の式におけるsps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesは、書き換え前の元のSPSのものであり、上記のpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset及びpps_scaling_win_bottom_offsetは、書き換え前の元のPPSのものである。
x. 全ての参照されるPPS NALユニット内のpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset及びpps_scaling_win_bottom_offsetの値を、それぞれsubpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset及びsubpicScalWinBotOffsetに等しくなるように書き換える。
[[-outBitstreamから、第iのレイヤのnuh_layer_idに等しいnuh_layer_idを有し且つSubpicIdVal[subpicIdx]に等しくないsh_subpic_idを有する全てのVCL NALユニットを削除する。]]
- sli_cbr_constraint_flagが1に等しい[[場合]]場合、[[FD_NUTに等しいnal_unit_typeを有する全てのNALユニットと、subpicIdTarget[]内のサブピクチャのVCL NALユニットに関連しないフィラーペイロードSEIメッセージとを削除し]]、存在する場合には全ての参照されるVPS NALユニット内で、[[0以上hrd_cpb_cnt_minus1以下の範囲内のjにおいて]]NumLayersInOls[targetOLsIdx]が0に等しい場合には全ての参照されるSPS NALユニット内で、第vps_ols_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]のols_hrd_parameters()シンタックス構造内の第jのCPBのcbr_flag[tIdTarget][j]を1に等しく設定する。そうでない場合(sli_cbr_constraint_flagが0に等しい場合)、[[FD_NUTに等しいnal_unit_typeを有する全てのNALユニットと、フィラーペイロードSEIメッセージとを削除し]]cbr_flag[tIdTarget][j]を0に等しく設定する。双方の場合、jは0以上hrd_cpb_cnt_minus1以下の範囲内にある。
6. outBitstreamが、outBitstreamと全く同じレイヤのセットを有し且つoutBitstreamと同じサブピクチャのセットを有するサブピクチャに適用可能なレイヤ(sn_ols_flagが0に等しい場合)又はOLS(sn_ols_flagが1に等しい場合)に適用可能な1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージを含むSEI NALユニットseiNalUnitAを含む場合、新たなSEI NALユニットseiNalUnitBを生成し、seiNalUnitAを含むPUに、seiNalUnitAの直後にこれを含め、スケーラブルネスト化SEIメッセージから複数のスケーラブルネスト化されたSEIメッセージを抽出し、これらを(スケーラブルネスト化されていないSEIメッセージとして)seiNalUnitBに直接含め、outBitstreamからseiNalUnitAを削除する。[[outBitstreamが、outBitstreamに適用可能な、1に等しいsn_ols_flag及び1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージを含むSEI NALユニットを含む場合、スケーラブルネスト化SEIメッセージから、1(PT)、130(DUI)又は132(復号ピクチャハッシュ)に等しいpayloadTypeを有する適切なスケーラブルネスト化されていないSEIメッセージを抽出し、抽出されたSEIメッセージをoutBitstreamに配置する。]]
以下は、VVC仕様に適用できる、第5節において上記に要約された発明の態様のいくつかの例示的な実施形態である。変更されたテキストは、JVET-S0152-v5の最新のVVCテキストに基づいている。追加又は変更されたほとんどの関連する部分は下線付きの太字(又は下線)で強調表示され、削除された部分のいくつかは[[イタリック体の二重角括弧]](又は[[]])で強調表示される。本質的に編集上の変更であるため強調されていないいくつかの他の変更が存在してもよい。
6.1 第1の実施形態
この実施形態は項目1~7及びこれらの部分項目についてのものである。
C.7 サブピクチャサブビットストリーム抽出プロセス
このプロセスへの入力は、ビットストリームinBitstream、ターゲットOLSインデックスtargetOlsIdx、ターゲット最高TemporalId値tIdTarget、及び0以上NumLayersInOls[targetOLsIdx]-1以下のiについての[[各レイヤについての]]ターゲットサブピクチャインデックス値subpicIdxTarget[i]の[[配列]]リストである。
このプロセスの出力は、サブビットストリームoutBitstreamである。
OLSインデックスtargetOlsIdxを有するOLSは、ターゲットOLSと呼ばれる。ターゲットOLS内のレイヤのうち、参照されるSPSが0よりも大きいsps_num_subpics_minus1を有するものはmultiSubpicLayersと呼ばれる。
入力ビットストリームについてのビットストリーム適合性の要件は、以下の条件の全てを満たすいずれかの出力サブビットストリームが適合ビットストリームであることである。
- 出力サブビットストリームは、ビットストリーム、VPSによって指定されたOLSのリストへのインデックスに等しいtargetOlsIdx、0以上vps_max_sublayers_minus1以下の範囲内のいずれかの値に等しいtIdTarget、及び以下の条件を満たす0以上NumLayersInOls[targetOLsIdx]-1以下のiについての[[入力に存在するサブピクチャインデックスに等しい]]リストsubpicIdxTarget[i]を入力として、この節で指定されたプロセスの出力である。
- subpicIdxTarget[i]の値は、sps_subpic_treated_as_pic_flag[subpicIdxTarget[i]]が1に等しくなるように、0以上sps_num_subpics_minus1以下の範囲内の値に等しくなり、sps_num_subpics_minus1及びsps_subpic_treated_as_pic_flag[subpicIdxTarget[i]]は、LayerIdInOls[targetOLsIdx][i]に等しいnuh_layer_idを有するレイヤによって参照されるSPSで検出されるか或いはこれに基づいて推定される。
注1-LayerIdInOls[targetOLsIdx][i]に等しいnuh_layer_idを有するレイヤについてのsps_num_subpics_minus1が0に等しい場合、subpicIdxTarget[i]の値は常に0に等しくなる。
- m及びnのいずれか2つの異なる整数値について、それぞれLayerIdInOls[targetOLsIdx][m]及びLayerIdInOls[targetOLsIdx][n]に等しいnuh_layer_idを有する双方のレイヤについて、sps_num_subpics_minus1が0よりも大きい場合、subpicIdxTarget[m]はsubpicIdxTarget[n]に等しくなる。
- 出力サブビットストリームは、リストLayerIdInOls[targetOlsIdx]内のnuh_layer_id値のそれぞれに等しいnuh_layer_idを有する少なくとも1つのVCL NALユニットを含む。
- 出力サブビットストリームは、tIdTargetに等しいTemporalIdを有する少なくとも1つのVCL NALユニットを含む。
注2-適合ビットストリームは、0に等しいTemporalIdを有する1つ以上のコーディングされたスライスNALユニットを含むが、0に等しいnuh_layer_idを有するコーディングされたスライスNALユニットを含む必要はない。
- 出力サブビットストリームは、0以上NumLayersInOls[targetOlsIdx]-1以下の範囲内のそれぞれのiについてLayerIdInOls[targetOlsIdx][i]に等しいnuh_layer_idを有し且つSubpicIdVal[subpicIdxTarget[i]][[内の値]]に等しいsh_subpic_idを有する少なくとも1つのVCL NALユニットを含む。
出力サブビットストリームoutBitstreamは[[以下のように]]以下の順序のステップによって導出される。
1. Annex C.6において指定されたサブビットストリーム抽出プロセスは、inBitstream、targetOlsIdx及びtIdTargetを入力として呼び出され、プロセスの出力はoutBitstreamに割り当てられる。
2. 0以上NumLayersInOls[targetOLsIdx]-1以下の範囲のiのそれぞれ値について、outBitstreamから、LayerIdInOls[targetOLsIdx][i]に等しいnuh_layer_idを有し且つSubpicIdVal[subpicIdxTarget[i]]に等しくないsh_subpic_idを有する全てのVCL NALユニットと、これらに関連するフィラー(filler)データNALユニット及びフィラーペイロードSEIメッセージを含むこれらに関連するSEI NALユニットとを削除する。
3. ターゲットOLSに適用されるSLI SEIメッセージのsli_cbr_constraint_flagが0に等しい場合、FD_NUTに等しいnal_unit_typeを有する全てのNALユニットと、フィラーペイロードSEIメッセージを含むSEI NALユニットとを削除する。
4. outBitstreamから、1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージを含む全てのSEI NALユニットを削除し、0以上sn_num_subpics_minus1以下のjについてのsn_subpic_idx[j]値のいずれもmultiSubpicLayers内のレイヤについてのsubpicIdxTarget[i]値のいずれにも等しくなくなる。
5. この仕様において指定されていない何らかの外部手段がサブビットストリームoutBitstreamの置換パラメータセットを提供するために利用可能である場合、全てのパラメータセットを置換パラメータセットに置き換える。そうでなく、SLI SEIメッセージがinBitstreamに存在する場合、以下の順序のステップが適用される[[が適用される]]。
a. 変数[[subpicIdx]]spIdxは、multiSubpicLayers内のいずれかのレイヤについて[[subpicIdxTarget[[NumLayersInOls[targetOlsIdx]-1]]]]subpicIdxTarget[i]の値に等しく設定される。
b. 存在する場合、全ての参照されるVPS NALユニット内のprofile_tier_level()シンタックス構造のリスト内で、また、NumLayersInOls[targetOLsIdx]が0に等しい場合、全ての参照されるSPS NALユニット内のprofile_tier_level()シンタックス構造内で、第vps_ols_ptl_idx[targetOlsIdx]のエントリ内の0以上tIdTarget-1以下の範囲内のkについてのgeneral_level_idc及びsublayer_level_idc[k]の値を、それぞれ第spIdxのサブピクチャシーケンス[[subpicIdxに等しいサブピクチャインデックスを有するサブピクチャから構成されるサブピクチャのセット]]について式D.10で導出されるSubpicLevelIdc[spIdx][tIdTarget]及びSubpicLevelIdc[spIdx][k]に等しくなるように書き換える。
c. 0以上tIdTarget以下の範囲のkについて、spLvIdxをSubpicLevelIdx[spIdx][k]に等しく設定し、SubpicLevelIdx[spIdx][k]は第spIdxのサブピクチャシーケンスについての式D.10によって導出される。VCL HRDパラメータ又はNAL HRDパラメータが存在する場合、0以上tIdTarget以下の範囲内のkについて、存在する場合には全ての参照されるVPS NALユニット内の第vps_ols_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]のols_hrd_parameters()シンタックス構造と、NumLayersInOls[targetOLsIdx]が0に等しい場合の[[第iのレイヤによって参照される]]全ての参照されるSPS NALユニット内のols_hrd_parameters()シンタックス構造とにおいて第jのCPBのcpb_size_value_minus1[k[[tIdTarget]]][j]及びbit_rate_value_minus1[k[[tIdTarget]]][j]のそれぞれの値を、これらがそれぞれ式D.6によって導出されるSubpicCpbSizeVcl[spLvIdx[[SubpicLevelIdx]]][spIdx[[subpicIdx]]][k]及びSubpicCpbSizeNal[spLvIdx[[SubpicLevelIdx]]][spIdx[[subpicIdx]]][k]と、それぞれ式D.8及びD.9によって導出されるSubpicBitrateVcl[spLvIdx[[SubpicLevelIdx]]][spIdx[[subpicIdx]]][k]及びSubpicBitrateNal[spLvIdx[[SubpicLevelIdx]]][spIdx[[subpicIdx]]][k]とに対応するように書き換え、[[SubpicSetLevelIdxは、subpicIdxに等しいサブピクチャインデックスを有するサブピクチャについて式D.10によって導出され]]、jは0以上hrd_cpb_cnt_minus1以下の範囲内にあり、iは0以上NumLayersInOls[targetOlsIdx]-1の範囲内にある。
d. [[0以上NumLayersInOls[targetOlsIdx]-1以下の範囲内のiを有する第iのレイヤ]]multiSubpicLayers内のそれぞれについて、そのレイヤ内のピクチャによって参照されるSPS及びPPSの書き換えのために、以下の順序のステップが適用される[[が適用される]]。
i. 変数subpicWidthInLumaSamples及びsubpicHeightInLumaSamplesは以下のように導出される。
subpicWidthInLumaSamples=min((sps_subpic_ctu_top_left_x[spIdx[[subpicIdx]]]+sps_subpic_width_minus1[spIdx[[subpicIdx]]]+1)*CtbSizeY,pps_pic_width_in_luma_samples)-sps_subpic_ctu_top_left_x[s spIdx[[subpicIdx]]]*CtbSizeY (C.24)
subpicHeightInLumaSamples=min((sps_subpic_ctu_top_left_y[spIdx[[subpicIdx]]]+sps_subpic_height_minus1[spIdx[[subpicIdx]]]+1)*CtbSizeY,pps_pic_height_in_luma_samples)-sps_subpic_ctu_top_left_y[spIdx[[subpicIdx]]]*CtbSizeY (C.25)
ii. 全ての参照されるSPS NALユニット内のsps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesの値と、全ての参照されるPPS NALユニット内のpps_pic_width_in_luma_samples及びpps_pic_height_in_luma_samplesの値とを、それぞれsubpicWidthInLumaSamples及びsubpicHeightInLumaSamplesに等しくなるように書き換える。
iii. 全ての参照されるSPS NALユニット内のsps_num_subpics_minus1と、全ての参照されるPPS NALユニット内のpps_num_subpics_minus1の値とを0に書き換える。
iv. 存在する場合には全ての参照されるSPS NALユニット内のシンタックスエレメントsps_subpic_ctu_top_left_x[spIdx[[subpicIdx]]]及びsps_subpic_ctu_top_left_y[spIdx[[subpicIdx]]]を0に書き換える。
v. 全ての参照されるSPS NALユニット内で、spIdx[[subpicIdx]]に等しくないそれぞれのjについて、シンタックスエレメントsps_subpic_ctu_top_left_x[j]、sps_subpic_ctu_top_left_y[j]、sps_subpic_width_minus1[j]、sps_subpic_height_minus1[j]、sps_subpic_treated_as_pic_flag[j]、sps_loop_filter_across_subpic_enabled_flag[j]及びsps_subpic_id[j]を削除する。
vi. タイル及びスライスのシグナリングのために全ての参照されるPPS内のシンタックスエレメントを書き換え、spIdx[[subpicIdx]]に等しいサブピクチャインデックスを有するサブピクチャに関連しない全てのタイル行、タイル列及びスライスを削除する。
vii. 変数subpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset及びsubpicConfWinBottomOffsetは以下のように導出される。
subpicConfWinLeftOffset=sps_subpic_ctu_top_left_x[spIdx[[subpicIdx]]]==0?sps_conf_win_left_offset:0 (C.26)
subpicConfWinRightOffset=(sps_subpic_ctu_top_left_x[spIdx[[subpicIdx]]]+sps_subpic_width_minus1[spIdx[[subpicIdx]]]+1)*CtbSizeY>=sps_pic_width_max_in_luma_samples?sps_conf_win_right_offset:0 (C.27)
subpicConfWinTopOffset=sps_subpic_ctu_top_left_y[spIdx[[subpicIdx]]==0?sps_conf_win_top_offset:0 (C.28)
subpicConfWinBottomOffset=(sps_subpic_ctu_top_left_y[spIdx[[subpicIdx]]]+sps_subpic_height_minus1[spIdx[[subpicIdx]]]+1)*CtbSizeY>=sps_pic_height_max_in_luma_samples?sps_conf_win_bottom_offset:0 (C.29)
ここで、上記の式におけるsps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples、sps_pic_height_max_in_luma_samples、sps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset及びsps_conf_win_bottom_offsetは、書き換え前の元のSPSのものである。
注3-入力ビットストリーム及び出力ビットストリームの双方におけるmultiSubpicLayers内のレイヤ内のピクチャについて、sps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesの値は、それぞれpps_pic_width_in_luma_samples及びpps_pic_height_in_luma_samplesに等しい。したがって、上記の式において、sps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesは、それぞれpps_pic_width_in_luma_samples及びpps_pic_height_in_luma_samplesに置き換えられることができる。
viii. 全ての参照されるSPS NALユニット内のsps_conf_win_left_offset、sps_conf_win_right_offset、sps_conf_win_top_offset及びsps_conf_win_bottom_offsetの値と、全ての参照されるPPS NALユニット内のpps_conf_win_left_offset、pps_conf_win_right_offset、pps_conf_win_top_offset及びpps_conf_win_bottom_offsetの値とを、それぞれsubpicConfWinLeftOffset、subpicConfWinRightOffset、subpicConfWinTopOffset及びsubpicConfWinBottomOffsetに等しくなるように書き換える。
ix. 変数subpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset及びsubpicScalWinBotOffsetは以下のように導出される。
subpicScalWinLeftOffset=pps_scaling_win_left_offset-sps_subpic_ctu_top_left_x[spIdx]*CtbSizeY/SubWidthC (C.30)
rightSubpicBd=(sps_subpic_ctu_top_left_x[spIdx]+sps_subpic_width_minus1[spIdx]+1)*CtbSizeY
subpicScalWinRightOffset=(rightSubpicBd>=sps_pic_width_max_in_luma_samples)?pps_scaling_win_right_offset:pps_scaling_win_right_offset-(sps_pic_width_max_in_luma_samples-rightSubpicBd)/SubWidthC (C.31)
subpicScalWinTopOffset=pps_scaling_win_top_offset-sps_subpic_ctu_top_left_y[spIdx]*CtbSizeY/SubHeightC (C.32)
botSubpicBd=(sps_subpic_ctu_top_left_y[spIdx]+sps_subpic_height_minus1[spIdx]+1)*CtbSizeY
subpicScalWinBotOffset=(botSubpicBd>=sps_pic_height_max_in_luma_samples)?pps_scaling_win_bottom_offset:pps_scaling_win_bottom_offset-(sps_pic_height_max_in_luma_samples-botSubpicBd)/SubHeightC (C.33)
ここで、上記の式におけるsps_subpic_ctu_top_left_x[spIdx]、sps_subpic_width_minus1[spIdx]、sps_subpic_ctu_top_left_y[spIdx]、sps_subpic_height_minus1[spIdx]、sps_pic_width_max_in_luma_samples及びsps_pic_height_max_in_luma_samplesは、書き換え前の元のSPSのものであり、上記のpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset及びpps_scaling_win_bottom_offsetは、書き換え前の元のPPSのものである。
x. 全ての参照されるPPS NALユニット内のpps_scaling_win_left_offset、pps_scaling_win_right_offset、pps_scaling_win_top_offset及びpps_scaling_win_bottom_offsetの値を、それぞれsubpicScalWinLeftOffset、subpicScalWinRightOffset、subpicScalWinTopOffset及びsubpicScalWinBotOffsetに等しくなるように書き換える。
[[-outBitstreamから、第iのレイヤのnuh_layer_idに等しいnuh_layer_idを有し且つSubpicIdVal[subpicIdx]に等しくないsh_subpic_idを有する全てのVCL NALユニットを削除する。]]
- sli_cbr_constraint_flagが1に等しい[[場合]]場合、[[FD_NUTに等しいnal_unit_typeを有する全てのNALユニットと、subpicIdTarget[]内のサブピクチャのVCL NALユニットに関連しないフィラーペイロードSEIメッセージとを削除し]]、存在する場合には全ての参照されるVPS NALユニット内で、[[0以上hrd_cpb_cnt_minus1以下の範囲内のjにおいて]]NumLayersInOls[targetOLsIdx]が0に等しい場合には全ての参照されるSPS NALユニット内で、第vps_ols_hrd_idx[MultiLayerOlsIdx[targetOlsIdx]]のols_hrd_parameters()シンタックス構造内の第jのCPBのcbr_flag[tIdTarget][j]を1に等しく設定する。そうでない場合(sli_cbr_constraint_flagが0に等しい場合)、[[FD_NUTに等しいnal_unit_typeを有する全てのNALユニットと、フィラーペイロードSEIメッセージとを削除し]]cbr_flag[tIdTarget][j]を0に等しく設定する。双方の場合、jは0以上hrd_cpb_cnt_minus1以下の範囲内にある。
6. outBitstreamが、outBitstreamと全く同じレイヤのセットを有し且つoutBitstreamと同じサブピクチャのセットを有するサブピクチャに適用可能なレイヤ(sn_ols_flagが0に等しい場合)又はOLS(sn_ols_flagが1に等しい場合)に適用可能な1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージを含むSEI NALユニットseiNalUnitAを含む場合、新たなSEI NALユニットseiNalUnitBを生成し、seiNalUnitAを含むPUに、seiNalUnitAの直後にこれを含め、スケーラブルネスト化SEIメッセージから複数のスケーラブルネスト化されたSEIメッセージを抽出し、これらを(スケーラブルネスト化されていないSEIメッセージとして)seiNalUnitBに直接含め、outBitstreamからseiNalUnitAを削除する。[[outBitstreamが、outBitstreamに適用可能な、1に等しいsn_ols_flag及び1に等しいsn_subpic_flagを有するスケーラブルネスト化SEIメッセージを含むSEI NALユニットを含む場合、スケーラブルネスト化SEIメッセージから、1(PT)、130(DUI)又は132(復号ピクチャハッシュ)に等しいpayloadTypeを有する適切なスケーラブルネスト化されていないSEIメッセージを抽出し、抽出されたSEIメッセージをoutBitstreamに配置する。]]
2. ルールは、出力ビットストリームに適用可能でないスケーラブルネスト化されたSEIメッセージを含む補足エンハンスメント情報(SEI)NALユニットが出力ビットストリームから削除されることを指定する、解決策1に記載の方法。
1. ビデオデータを処理する方法(例えば、図13Aに示す方法)であって、
ビデオとビデオのビットストリームとの間の変換を実行するステップ(1302)を含み、ビットストリームは、ルールに従って1つ以上のサブピクチャを含む複数のレイヤを含み、ルールは、出力ビットストリームがビットストリームから抽出されるサブピクチャサブビットストリーム抽出プロセス中に、出力ビットストリームに適用可能でないスケーラブルネスト化されたSEIメッセージを含む補足エンハンスメント情報ネットワーク抽象レイヤユニット(SEI NALユニット)が出力ビットストリームにおいて省略されることを指定する、方法。
ビデオとビデオのビットストリームとの間の変換を実行するステップ(1302)を含み、ビットストリームは、ルールに従って1つ以上のサブピクチャを含む複数のレイヤを含み、ルールは、出力ビットストリームがビットストリームから抽出されるサブピクチャサブビットストリーム抽出プロセス中に、出力ビットストリームに適用可能でないスケーラブルネスト化されたSEIメッセージを含む補足エンハンスメント情報ネットワーク抽象レイヤユニット(SEI NALユニット)が出力ビットストリームにおいて省略されることを指定する、方法。
2. 出力ビットストリームは、1つ以上のターゲットサブピクチャインデックスによって識別されるサブピクチャを含む1つ以上の出力レイヤを含み、SEI NALユニットは、スケーラブルネスト化されたSEIが所定の値を有するフラグを含み、SEI NALユニットの第1の1つ以上のサブピクチャインデックスが出力ビットストリーム内の第2の1つ以上のサブピクチャインデックスと一致しないことに応じて、出力ビットストリームに適用可能でないと見なされる、解決策1に記載の方法。
5. 処理は、第2のSEI NALユニット内のスケーラブルネスト化SEIメッセージからスケーラブルネスト化されたSEIメッセージを抽出し、抽出されたスケーラブルネスト化されたSEIメッセージをスケーラブルネスト化されていないSEIメッセージとして第1のSEI NALユニットに含めることを含む、解決策1~4のいずれかに記載の方法。
Claims (13)
- ビデオデータを処理する方法であって、
ビデオと前記ビデオのビットストリームとの間の変換を実行するステップを含み、
前記ビットストリームは、ルールに従って、1つ以上のサブピクチャを含む1つ以上のピクチャを含む1つ以上のレイヤを含み、
前記ルールは、サブピクチャサブビットストリーム抽出プロセス中に抽出されるターゲット出力サブピクチャサブビットストリームの第2の補足エンハンスメント情報ネットワーク抽象レイヤ(SEI NAL)ユニットが条件を満たす場合、前記ターゲット出力サブピクチャサブビットストリームの第1のSEI NALユニットに対する1つ以上の処理プロセスが実行され、前記第2のSEI NALユニットが削除されることを指定する、方法。 - 前記1つ以上の処理プロセスは、前記第1のSEI NALユニットを生成することを含む、請求項1に記載の方法。
- 前記1つ以上の処理プロセスは、前記第1のSEI NALユニットを、前記第2のSEI NALユニットを含むピクチャユニットに追加することを含む、請求項2に記載の方法。
- 前記1つ以上の処理プロセスは、前記第1のSEI NALユニットを、前記第2のSEI NALユニットを含むピクチャユニットに、前記第2のSEI NALユニットの直後に追加することを含む、請求項2に記載の方法。
- 前記1つ以上の処理プロセスは、前記第2のSEI NALユニット内のスケーラブルネスト化SEIメッセージからスケーラブルネスト化されたSEIメッセージを抽出し、前記抽出されたスケーラブルネスト化されたSEIメッセージをスケーラブルネスト化されていないSEIメッセージとして前記第1のSEI NALユニットに含めることを含む、請求項2乃至4のうちいずれか1項に記載の方法。
- 前記条件は、(a)前記ターゲット出力サブピクチャサブビットストリームがスケーラブルネスト化SEIメッセージを含む前記第2のSEI NALユニットを含むこと、(b)前記スケーラブルネスト化SEIメッセージ内の第1のシンタックスフィールドが、前記スケーラブルネスト化SEIメッセージ内のスケーラブルネスト化されたSEIメッセージが前記ターゲット出力サブピクチャサブビットストリーム内と同じ出力レイヤセットに適用可能であることを示す値に等しく、前記スケーラブルネスト化SEIメッセージ内の第2のシンタックスフィールドが、指定の出力レイヤセット又はレイヤに適用される前記スケーラブルネスト化されたSEIメッセージが前記指定の出力レイヤセット又はレイヤの特定のサブピクチャのみに適用されることを示す値に等しいこと、及び(c)前記スケーラブルネスト化SEIメッセージが前記ターゲット出力サブピクチャサブビットストリーム内と同じレイヤ及びサブピクチャのセットに適用可能であることを含む、請求項1乃至5のうちいずれか1項に記載の方法。
- 前記条件は、(a)前記ターゲット出力サブピクチャサブビットストリーム内と同じレイヤのセットである出力レイヤセット内のレイヤの数が1に等しいこと、(b)前記ターゲット出力サブピクチャサブビットストリームがスケーラブルネスト化SEIメッセージを含む前記第2のSEI NALユニットを含むこと、(c)前記スケーラブルネスト化SEIメッセージ内の第1のシンタックスフィールドが、前記スケーラブルネスト化SEIメッセージ内のスケーラブルネスト化されたSEIメッセージが前記ターゲット出力サブピクチャサブビットストリーム内と同じレイヤに適用可能であることを示す値に等しく、前記スケーラブルネスト化SEIメッセージ内の第2のシンタックスフィールドが、指定の出力レイヤセット又はレイヤに適用される前記スケーラブルネスト化されたSEIメッセージが前記指定の出力レイヤセット又はレイヤの特定のサブピクチャのみに適用されることを示す値に等しいこと、及び(d)前記スケーラブルネスト化SEIメッセージが前記ターゲット出力サブピクチャサブビットストリーム内と同じレイヤ及びサブピクチャに適用可能であることを含む、請求項1乃至5のうちいずれか1項に記載の方法。
- 前記第1のSEI NALユニットはseiNalUnitBであり、前記第2のSEI NALユニットはseiNalUnitAである、請求項1乃至7のうちいずれか1項に記載の方法。
- 前記変換は、前記ビデオを前記ビットストリームに符号化することを含む、請求項1乃至8のうちいずれか1項に記載の方法。
- 前記変換は、前記ビットストリームを復号して前記ビデオのピクセル値を生成することを含む、請求項1乃至8のうちいずれか1項に記載の方法。
- プロセッサと、命令を有する非一時的なメモリとを含む、ビデオデータを処理するための装置であって、前記命令は、前記プロセッサによって実行されると、前記プロセッサに、
ビデオと前記ビデオのビットストリームとの間の変換を実行させ、
前記ビットストリームは、ルールに従って、1つ以上のサブピクチャを含む1つ以上のピクチャを含む1つ以上のレイヤを含み、
前記ルールは、サブピクチャサブビットストリーム抽出プロセス中に抽出されるターゲット出力サブピクチャサブビットストリームの第2の補足エンハンスメント情報ネットワーク抽象レイヤ(SEI NAL)ユニットが条件を満たす場合、前記ターゲット出力サブピクチャサブビットストリームの第1のSEI NALユニットに対する1つ以上の処理プロセスが実行され、前記第2のSEI NALユニットが削除されることを指定する、装置。 - 命令を記憶した非一時的なコンピュータ読み取り可能記憶媒体であって、
前記命令は、プロセッサに、
ビデオと前記ビデオのビットストリームとの間の変換を実行させ、
前記ビットストリームは、ルールに従って、1つ以上のサブピクチャを含む1つ以上のピクチャを含む1つ以上のレイヤを含み、
前記ルールは、サブピクチャサブビットストリーム抽出プロセス中に抽出されるターゲット出力サブピクチャサブビットストリームの第2の補足エンハンスメント情報ネットワーク抽象レイヤ(SEI NAL)ユニットが条件を満たす場合、前記ターゲット出力サブピクチャサブビットストリームの第1のSEI NALユニットに対する1つ以上の処理プロセスが実行され、前記第2のSEI NALユニットが削除されることを指定する、非一時的なコンピュータ読み取り可能記憶媒体。 - ビデオのビットストリームを記憶するための方法であって、
前記ビデオの前記ビットストリームを生成するステップと、
前記ビットストリームを非一時的なコンピュータ読み取り可能記録媒体に記憶するステップと
を含み、
前記ビットストリームは、ルールに従って、1つ以上のサブピクチャを含む1つ以上のピクチャを含む1つ以上のレイヤを含み、
前記ルールは、サブピクチャサブビットストリーム抽出プロセス中に抽出されるターゲット出力サブピクチャサブビットストリームの第2の補足エンハンスメント情報ネットワーク抽象レイヤ(SEI NAL)ユニットが条件を満たす場合、前記ターゲット出力サブピクチャサブビットストリームの第1のSEI NALユニットに対する1つ以上の処理プロセスが実行され、前記第2のSEI NALユニットが削除されることを指定する、方法。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US202063036908P | 2020-06-09 | 2020-06-09 | |
US63/036,908 | 2020-06-09 | ||
PCT/US2021/036369 WO2021252471A1 (en) | 2020-06-09 | 2021-06-08 | Handling of supplemental enhancement information in subpicture sub-bitstream extraction process |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2023529448A JP2023529448A (ja) | 2023-07-10 |
JPWO2021252471A5 true JPWO2021252471A5 (ja) | 2024-03-12 |
Family
ID=78846457
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022575706A Pending JP2023529453A (ja) | 2020-06-09 | 2021-06-08 | サブピクチャサブビットストリーム抽出についてのビデオパラメータセットの制約 |
JP2022575699A Pending JP2023529447A (ja) | 2020-06-09 | 2021-06-08 | サブピクチャサブビットストリーム抽出プロセスの拡張 |
JP2022575700A Pending JP2023529448A (ja) | 2020-06-09 | 2021-06-08 | サブピクチャサブビットストリーム抽出プロセスにおける補足エンハンスメント情報の処理 |
Family Applications Before (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2022575706A Pending JP2023529453A (ja) | 2020-06-09 | 2021-06-08 | サブピクチャサブビットストリーム抽出についてのビデオパラメータセットの制約 |
JP2022575699A Pending JP2023529447A (ja) | 2020-06-09 | 2021-06-08 | サブピクチャサブビットストリーム抽出プロセスの拡張 |
Country Status (7)
Country | Link |
---|---|
US (4) | US20230095312A1 (ja) |
EP (3) | EP4150903A4 (ja) |
JP (3) | JP2023529453A (ja) |
KR (3) | KR20230019848A (ja) |
CN (3) | CN115918077A (ja) |
BR (1) | BR112022025044A2 (ja) |
WO (3) | WO2021252468A1 (ja) |
Family Cites Families (20)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150015545A1 (en) * | 2009-05-25 | 2015-01-15 | Micro-Nits Co., Ltd. | Pointing input system having sheet-like light beam layer |
US9124895B2 (en) * | 2011-11-04 | 2015-09-01 | Qualcomm Incorporated | Video coding with network abstraction layer units that include multiple encoded picture partitions |
CA3095638C (en) * | 2012-06-29 | 2023-11-14 | Ge Video Compression, Llc | Video data stream concept |
US9654802B2 (en) * | 2012-09-24 | 2017-05-16 | Qualcomm Incorporated | Sequence level flag for sub-picture level coded picture buffer parameters |
US9565452B2 (en) * | 2012-09-28 | 2017-02-07 | Qualcomm Incorporated | Error resilient decoding unit association |
US9942545B2 (en) * | 2013-01-03 | 2018-04-10 | Texas Instruments Incorporated | Methods and apparatus for indicating picture buffer size for coded scalable video |
US9521393B2 (en) * | 2013-01-07 | 2016-12-13 | Qualcomm Incorporated | Non-nested SEI messages in video coding |
CN109379603A (zh) * | 2013-04-07 | 2019-02-22 | 杜比国际公司 | 用信号通知输出层集的改变 |
US9794579B2 (en) * | 2013-07-15 | 2017-10-17 | Qualcomm Incorporated | Decoded picture buffer operations for video coding |
MY178305A (en) * | 2013-10-11 | 2020-10-07 | Vid Scale Inc | High level syntax for hevc extensions |
US10284858B2 (en) * | 2013-10-15 | 2019-05-07 | Qualcomm Incorporated | Support of multi-mode extraction for multi-layer video codecs |
CN105874804A (zh) * | 2014-01-02 | 2016-08-17 | Vid拓展公司 | 针对hevc扩展的子比特流提取过程 |
US20150264404A1 (en) * | 2014-03-17 | 2015-09-17 | Nokia Technologies Oy | Method and apparatus for video coding and decoding |
US9716900B2 (en) * | 2014-06-20 | 2017-07-25 | Qualcomm Incorporated | Extensible design of nesting supplemental enhancement information (SEI) messages |
CA3013657C (en) * | 2016-02-09 | 2022-09-13 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Concept for picture/video data streams allowing efficient reducibility or efficient random access |
US10897612B2 (en) * | 2017-03-03 | 2021-01-19 | Qualcomm Incorporated | Coding identifiers for motion constrained tile sets |
WO2018178507A1 (en) * | 2017-03-27 | 2018-10-04 | Nokia Technologies Oy | An apparatus, a method and a computer program for video coding and decoding |
EP3926954A4 (en) | 2019-02-15 | 2022-04-06 | Panasonic Intellectual Property Corporation of America | ENCODING DEVICE, DECODING DEVICE, ENCODING METHOD AND DECODING METHOD |
US11356681B2 (en) * | 2019-12-27 | 2022-06-07 | Tencent America LLC | Coded video sub-bitstream extraction |
CN115516860A (zh) | 2020-05-04 | 2022-12-23 | Lg电子株式会社 | 图像解码方法及其设备 |
-
2021
- 2021-06-08 KR KR1020227043163A patent/KR20230019848A/ko active Search and Examination
- 2021-06-08 KR KR1020227043286A patent/KR20230020428A/ko active Search and Examination
- 2021-06-08 EP EP21822448.3A patent/EP4150903A4/en active Pending
- 2021-06-08 BR BR112022025044A patent/BR112022025044A2/pt unknown
- 2021-06-08 KR KR1020227043180A patent/KR20230020999A/ko active Search and Examination
- 2021-06-08 JP JP2022575706A patent/JP2023529453A/ja active Pending
- 2021-06-08 CN CN202180041952.6A patent/CN115918077A/zh active Pending
- 2021-06-08 EP EP21822306.3A patent/EP4150912A4/en active Pending
- 2021-06-08 WO PCT/US2021/036363 patent/WO2021252468A1/en unknown
- 2021-06-08 JP JP2022575699A patent/JP2023529447A/ja active Pending
- 2021-06-08 WO PCT/US2021/036369 patent/WO2021252471A1/en unknown
- 2021-06-08 JP JP2022575700A patent/JP2023529448A/ja active Pending
- 2021-06-08 CN CN202180041870.1A patent/CN115804090A/zh active Pending
- 2021-06-08 EP EP21823088.6A patent/EP4150904A4/en active Pending
- 2021-06-08 WO PCT/US2021/036359 patent/WO2021252465A1/en unknown
- 2021-06-08 CN CN202180041812.9A patent/CN115918076A/zh active Pending
-
2022
- 2022-12-08 US US18/077,823 patent/US20230095312A1/en active Pending
- 2022-12-08 US US18/077,831 patent/US11997294B2/en active Active
- 2022-12-09 US US18/078,641 patent/US11924446B2/en active Active
-
2023
- 2023-11-21 US US18/516,468 patent/US20240098281A1/en active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP3744103B1 (en) | Efficient sub-picture extraction | |
JP6445552B2 (ja) | 拡張機構を使用している層idの信号 | |
KR20130116782A (ko) | 계층적 비디오 부호화에서의 계층정보 표현방식 | |
KR20220058623A (ko) | 서브픽처들을 갖는 비디오 스트림을 인코딩 및 디코딩하기 위한 방법 및 장치 | |
KR20220156829A (ko) | 이웃 서브픽처의 코딩 | |
US20240073430A1 (en) | Subpicture Sub-Bitstream Extraction Improvements | |
CN115769571A (zh) | 视频编解码中的解码的图片缓冲器管理和子图片 | |
CN115486082A (zh) | 视频编解码中的虚拟边界 | |
JPWO2021252471A5 (ja) | ||
CN115211044A (zh) | 使用条带头信令通知控制缩放处理 | |
JPWO2021252465A5 (ja) | ||
KR20230019847A (ko) | 비디오 픽처에서 서브픽처 수에 대한 제약들 | |
CA3184357A1 (en) | Processing of output layer sets of coded video | |
US20240098281A1 (en) | Subpicture sub-bitstream extraction process enhancements | |
JP7506185B2 (ja) | サブビットストリーム抽出処理におけるコーディングされた映像の操作 | |
BR122024003872A2 (pt) | Codificador de vídeo, decodificador de vídeo e métodos correspondentes | |
CN115699741A (zh) | 视频编解码中的补充增强信息消息的可缩放嵌套 |