IP Library › Granted Patent US 12,200,262
Granted Patent B2
US 12,200,262 · App. 17/702,049 · Granted Jan 14, 2025

Scalable nesting SEI messages for all layers

Inventor: Ye-Kui Wang (San Diego, CA)
Assignee: Huawei Technologies Co., Ltd.
H04N19/70H04N19/172H04N19/187H04N19/188H04N19/30H04N19/46
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 12,200,262
App. No.
17/702,049
Granted
Jan 14, 2025
Kind
B2
Abstract

A video coding mechanism is disclosed. The mechanism includes receiving a bitstream at a decoder. The bitstream comprises one or more layers and a scalable nesting supplemental enhancement information (SEI) message in a current SEI network abstraction layer (NAL) unit. The scalable nesting SEI message contains scalable-nested SEI messages and a scalable nesting all layers flag (all_layers_flag) that specifies whether the scalable-nested SEI messages apply to all layers that have a layer identifier (Id) that is greater than or equal to a layer Id of the current SEI NAL unit. A coded picture is decoded from the one or more layers to produce a decoded picture. The decoded picture is forwarded for display as part of a decoded video sequence.

Claims (47)

1. A method implemented in a decoder, the method comprising:

receiving a bitstream comprising one or more layers and a scalable nesting supplemental enhancement information (SEI) message in a current SEI network abstraction layer (NAL) unit, wherein the scalable nesting SEI message contains scalable-nested SEI messages and a scalable nesting all layers flag (all_layers_flag) that specifies whether the scalable-nested SEI messages apply to all layers that have a layer identifier (Id) that is greater than or equal to a layer Id of the current SEI NAL unit;

deriving a number of nesting layers (nestingNumLayers) variable that specifies a number of layers to which the scalable-nested SEI messages apply and a list of nesting layer Ids (NestingLayerId[i]) that specifies a list of NAL unit header layer Id (nuh_layer_id) values of the layers to which the scalable-nested SEI messages apply for i in a range of zero to nestingNumLayers minus one, inclusive, wherein the nestingNumLayers and the NestingLayerId[i] are derived as follows:

if(scalable nesting all_layers_flag){

nestingNumLayers=vps_max_layers_minus1+1−GeneralLayerIdx[nuh_layer_id]

for(i=0; i<nestingNumLayers; i++)

NestingLayerId[i]=vps_layer_id[GeneralLayerIdx[nuh_layer_id]+i]} else {nestingNumLayers=scalable nesting_num_layers_minus1+1

for(i=0; i<nestingNumLayers; i++)

NestingLayerId[i]=(i==0)?nuh_layer_id:scalable nesting layer_id[i]}

where vps_max_layers_minus1 plus one specifies a number of layers specified by a video parameter set (VPS), GeneralLayerIdx is a variable specifying a layer index of a layer with nuh_layer_id equal to vps_layer_id[i], vps_layer_id[i] specifies a nuh_layer_id value of an i-th layer, scalable nesting num_layers_minus1 plus one specifies a number of layers to which the scalable-nested SEI messages apply, and scalable nesting layer_id[i] specifies a nuh_layer_id value of an i-th layer to which the scalable-nested SEI messages apply; and

decoding a coded picture from the one or more layers to produce a decoded picture.

2. The method of claim 1 , wherein the scalable nesting all_layers_flag equals one, specifying that the scalable-nested SEI messages apply to all layers that have a NAL unit header layer Id (nuh_layer_id) greater than or equal to a nuh_layer_id of the current SEI NAL unit.

3. The method of claim 1 , wherein the scalable nesting all_layers_flag equals zero, specifying that the scalable-nested SEI messages might or might not apply to all layers that have a NAL unit header layer Id (nuh_layer_id) greater than or equal to a nuh_layer_id of the current SEI NAL unit.

4. The method of claim 1 , wherein the scalable nesting SEI message provides a mechanism to associate SEI messages with specific layers.

5. The method of claim 1 , wherein the coded picture is decoded based on the scalable nested SEI messages.

6. A method implemented in an encoder, the method comprising:

encoding a picture into a bitstream comprising one or more layers;

encoding into the bitstream a scalable nesting supplemental enhancement information (SEI) message in a current SEI network abstraction layer (NAL) unit, wherein the scalable nesting SEI message contains scalable-nested SEI messages and a scalable nesting all layers flag (all_layers_flag) that specifies whether the scalable-nested SEI messages apply to all layers that have a layer identifier (Id) that is greater than or equal to a layer Id of the current SEI NAL unit;

performing a set of bitstream conformance tests on the layers based on the scalable-nested SEI messages, wherein the set of bitstream conformance tests include deriving a number of nesting layers (nestingNumLayers) variable that specifies a number of layers to which the scalable-nested SEI messages apply and a list of nesting layer Ids (NestingLayerId[i]) that specifies a list of NAL unit header layer Id (nuh_layer_id) values of the layers to which the scalable-nested SEI messages apply for i in a range of zero to nestingNumLayers minus one, inclusive, wherein the nestingNumLayers and the NestingLayerId[i] are derived as follows:

if(scalable nesting all layers flag) {

nestingNumLayers=vps_max_layers_minus1+1−GeneralLayerIdx[nuh_layer_id]

for(i=0; i<nestingNumLayers; i++)

NestingLayerId[i]=vps_layer_id [GeneralLayerIdx[nuh_layer_id]+i]} else {

nestingNumLayers=scalable nesting num_layers_minus1+1

for(i=0; i<nestingNumLayers; i++)

NestingLayerId[i]=(i==0)? nuh_layer_id: scalable nesting layer id [i]}

where vps_max_layers_minus1 plus one specifies a number of layers specified by a video parameter set (VPS), GeneralLayerIdx is a variable specifying a layer index of a layer with nuh_layer_id equal to vps_layer_id[i], vps_layer_id[i] specifies a nuh_layer_id value of an i-th layer, scalable nesting num_layers_minus1 plus one specifies a number of layers to which the scalable-nested SEI messages apply, and scalable nesting layer id[i] specifies a nuh_layer_id value of an i-th layer to which the scalable-nested SEI messages apply.

7. The method of claim 6 , further comprising setting the scalable nesting all_layers_flag equal to one, specifying that the scalable-nested SEI messages apply to all layers that have a NAL unit header layer Id (nuh_layer_id) greater than or equal to a nuh_layer_id of the current SEI NAL unit.

8. The method of claim 6 , further comprising setting the scalable nesting all_layers_flag equal to zero, specifying that the scalable-nested SEI messages might or might not apply to all layers that have a NAL unit header layer Id (nuh_layer_id) greater than or equal to a nuh_layer_id of the current SEI NAL unit.

9. The method of claim 6 , wherein the scalable nesting SEI message provides a mechanism to associate SEI messages with specific layers.

10. A video coding device comprising:

a receiver configured to receive a bitstream comprising one or more layers and a scalable nesting supplemental enhancement information (SEI) message in a current SEI network abstraction layer (NAL) unit, wherein the scalable nesting SEI message contains scalable-nested SEI messages and a scalable nesting all layers flag (all_layers_flag) that specifies whether the scalable-nested SEI messages apply to all layers that have a layer identifier (Id) that is greater than or equal to a layer Id of the current SEI NAL unit; and

a processor coupled to the receiver and configured to:

derive a number of nesting layers (nestingNumLayers) variable that specifies a number of layers to which the scalable-nested SEI messages apply and a list of nesting layer Ids (NestingLayerId[i]) that specifies a list of NAL unit header layer Id (nuh_layer_id) values of the layers to which the scalable-nested SEI messages apply for i in a range of zero to nestingNumLayers minus one, inclusive, wherein the nestingNumLayers and the NestingLayerId[i] are derived as follows:

if(scalable nesting all layers flag) {

nestingNumLayers=vps_max_layers_minus1+1−GeneralLayerIdx[nuh_layer_id]

for(i=0; i<nestingNumLayers; i++)

NestingLayerId[i]=vps_layer_id [GeneralLayerIdx[nuh_layer_id]+i]}else {

nestingNumLayers=scalable nesting num_layers_minus1+1

for(i=0; i<nestingNumLayers; i++)

NestingLayerId[i]=(i==0)? nuh_layer_id: scalable nesting layer_id[i]}

where vps_max_layers_minus1 plus one specifies a number of layers specified by a video parameter set (VPS), GeneralLayerIdx is a variable specifying a layer index of a layer with nuh_layer_id equal to vps_layer_id[i], vps_layer_id[i] specifies a nuh_layer_id value of an i-th layer, scalable nesting num_layers_minus1 plus one specifies a number of layers to which the scalable-nested SEI messages apply, and scalable nesting layer_id[i] specifies a nuh_layer_id value of an i-th layer to which the scalable-nested SEI messages apply; and

decode a coded picture from the one or more layers to produce a decoded picture.

11. The video coding device of claim 10 , wherein the scalable nesting all_layers_flag equals one when specifying that the scalable-nested SEI messages apply to all layers that have a NAL unit header layer Id (nuh_layer_id) greater than or equal to a nuh_layer_id of the current SEI NAL unit.

12. The video coding device of claim 10 , wherein the scalable nesting all_layers_flag equals zero when specifying that the scalable-nested SEI messages might or might not apply to all layers that have a NAL unit header layer Id (nuh_layer_id) greater than or equal to a nuh_layer_id of the current SEI NAL unit.

13. The video coding device of claim 10 , wherein the scalable nesting SEI message provides a mechanism to associate SEI messages with specific layers.

14. The video coding device of claim 10 , wherein the coded picture is decoded based on the scalable nested SEI messages.

Assignments (1)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Oct 26, 2023
From: FUTUREWEI TECHNOLOGIES, INC.
To: HUAWEI TECHNOLOGIES CO., LTD.
Reel/Frame 065362/0617 →
Continuity (3)
Continuation PCTUS2020051859 · Sep 21, 2020
Provisional Application 62905144 · Sep 24, 2019
Related Publication 20220217412A1 · Jul 7, 2022
References Cited (49)
US 8471902B2 · Kang et al. · 2013 [cited by applicant]
US 8649441B2 · Hong et al. · 2014 [cited by applicant]
US 8699583B2 · Hannuksela et al. · 2014 [cited by applicant]
US 20090003439A1 · Wang et al. · 2009 [cited by applicant]
US 20100142613A1 · Zhu · 2010 [cited by applicant]
US 20140098894A1 · Wang · 2014 [cited by applicant]
US 20140098896A1 · Wang · 2014 [cited by applicant]
US 20140192149A1 · Wang et al. · 2014 [cited by applicant]
US 20150229966A1 · Choe et al. · 2015 [cited by applicant]
US 20150271513A1 · Hendry et al. · 2015 [cited by applicant]
US 20150271528A1 · Wang et al. · 2015 [cited by applicant]
US 20150271529A1 · Wang · 2015 [cited by examiner]
US 20150304665A1 · Hannuksela et al. · 2015 [cited by applicant]
US 20150358640A1 · Hendry et al. · 2015 [cited by applicant]
US 20150373346A1 · Wang · 2015 [cited by applicant]
US 20150373374A1 · Ramasubramonian et al. · 2015 [cited by applicant]
US 20150382018A1 · Hendry et al. · 2015 [cited by applicant]
US 20160019193A1 · Hannuksela · 2016 [cited by applicant]
US 20170034050A1 · Sunavala et al. · 2017 [cited by applicant]
AU 2013330284A1 · 2015 [cited by applicant]
CN 101653002A · 2010 [cited by applicant]
CN 101690229A · 2010 [cited by applicant]
CN 104541508A · 2015 [cited by applicant]
CN 104685891A · 2015 [cited by applicant]
CN 104919802A · 2015 [cited by applicant]
CN 105556965A · 2016 [cited by applicant]
CN 106165427A · 2016 [cited by applicant]
CN 106464922A · 2017 [cited by applicant]
CN 107431819A · 2017 [cited by applicant]
JP 2015532551A · 2015 [cited by applicant]
JP 2017510198A · 2017 [cited by applicant]
WO 2011148887A1 · 2011 [cited by applicant]
WO 2014167817A1 · 2014 [cited by applicant]
WO 2015057714A1 · 2015 [cited by applicant]
WO 2015104451A1 · 2015 [cited by applicant]
Document: JVET-P0190-v2, Wang, Y., “AHG8/AHG17: Scalable nesting SEI message,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11, JVET-P0190-v2, 16th Meeting: Geneva, CH, Oct. 1-11, 2019,… [cited by applicant]
“Series H: Audiovisual and Multimedia Systems Infrastructure of audio visual services—Coding of moving video, High efficiency video coding,” Recommendation ITU-T H.265 ITU-T, Sep. 23, 2019, 9 pages. pp. 115-116, 297, 35… [cited by applicant]
Document: JVET-P0190-v1, Wang, Y., “AHG8/AHG17: Scalable nesting SEI message,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 16th Meeting: Geneva, CH, Oct. 1-11, 2019, 7 pages. [cited by applicant]
Hannuksela, M., “AHG9: Operation points in VPS and nesting SEI,” Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 11th Meeting: Shanghai, CN, Oct. 10-19, 2012, 8 pages. [cited by applicant]
Document: JVET-P0190-v1, Wang, Y., et al, “AHG8/AHG17: Scalable nesting SEI message,” Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and 1S0/IEC JTC 1/SC 29/WG 11, 16th Meeting: Geneva, CH, Oct. 1-11, 2019, 4 pages. [cited by applicant]
He Ci, “Error Control in Scalable Video Coding,” Communications Technology, vol. 43, No. 03, 2010 No. 219,Totally, with an English Abstract, 3 pages. [cited by applicant]
Document: JCTVC-K0180, Hannuksela, M., et al, “AHG9: Operation points in VPS and nesting SEI,” Joint Collaborative Team on Video Coding (JCT-VC) of ITU-T SG 16 WP 3 and ISO/IECJTC 1/SC 29/WG11, 11th Meeting: Shanghai, C… [cited by applicant]
“Series H: Audiovisual and Multimedia Systems Infrastructure of audiovisual services—Coding of moving video, High efficiency video coding,” Recommendation ITU-T H.265, Feb. 2018, 692 pages. [cited by applicant]
“Line Transmission of Non-Telephone Signals Video Codec for Audiovisual Services at p×64 kbits,” ITU-T Recommendation H.261, Mar. 1993, 29 pages. [cited by applicant]
“Transmission of Non-Telephone Signals; Information Technology—Generic Coding of Moving Pictures and Associated Audio Information: Video,” ITU-T Recommendation H.262, Jul. 1995, 211 pages. [cited by applicant]
“Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services—Coding of moving video; Video coding for low bit rate communication,” ITU-T Recommendation H.263, Jan. 2005, 226 pages. [cited by applicant]
“Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services—Coding of moving video; Advanced video coding for generic audiovisual services,” Recommendation ITU-T H.264, Jun. 2019, 836 pages. [cited by applicant]
“Series H: Audiovisual and Multimedia Systems; Infrastructure of audiovisual services—Coding of moving video; High efficiency video coding” Recommendation ITU-T H.265, Apr. 2013, 317 pages. [cited by applicant]
Bross, B., et al., “Versatile Video Coding (Draft 6),” Document: JVET-O2001-vE, Joint Video Experts Team (JVET) of ITU-T SG 16 WP 3 and ISO/IEC JTC 1/SC 29/WG 11 15th Meeting: Gothenburg, SE, Jul. 3-12, 2019, 455 pages. [cited by applicant]