IP Library Granted Patent US 11,665,362
Granted Patent B2
US 11,665,362 · App. 17/946,149 · Granted May 30, 2023

Syntax and semantics for buffering information to simplify video splicing

Inventors: Gary J. Sullivan (Bellevue, WA); Lihua Zhu (Mountain View, CA)
Assignee: Microsoft Technology Licensing, LLC
H04N19/46H04N19/70H04N21/23424H04N21/44016H04N7/147H04N7/15H04N7/18H04N19/573H04N19/58
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 11,665,362
App. No.
17/946,149
Granted
May 30, 2023
Kind
B2
Abstract

Innovations in syntax and semantics of coded picture buffer removal delay (“CPBRD”) values potentially simplify splicing operations. For example, a video encoder sets a CPBRD value for a current picture that indicates an increment value relative to a nominal coded picture buffer removal time of a preceding picture in decoding order, regardless of whether the preceding picture has a buffering period SEI message. The encoder can signal the CPBRD value according to a single-value approach in which a flag indicates how to interpret the CPBRD value, according to a two-value approach in which another CPBRD value (having a different interpretation) is also signaled, or according to a two-value approach that uses a flag and a delta value. A corresponding video decoder receives and parses the CPBRD value for the current picture. A splicing tool can perform simple concatenation operations to splice bitstreams using the CPBRD value for the current picture.

Claims (40)

1. In a computer system that implements a video decoder, a method comprising:

receiving encoded data for pictures of a video sequence, the encoded data including:

a picture timing supplemental enhancement information (“SEI”) message associated with a current picture among the pictures of the video sequence, the picture timing SEI message including a coded picture buffer removal delay (“CPBRD”) value for the current picture, the CPBRD value for the current picture specifying a nominal coded picture buffer (“CPB”) removal time of the current picture relative to a nominal CPB removal time of a first preceding picture in decoding order, the first preceding picture having a buffering period SEI message associated with the first preceding picture; and

a buffering period SEI message associated with the current picture, the buffering period SEI message including a concatenation flag and a CPBRD delta value, wherein the concatenation flag has a given value, and wherein the CPBRD delta value indicates a difference between the CPBRD value for the current picture and a CPBRD value for a second preceding picture in decoding order, the second preceding picture lacking a buffering period SEI message associated with the second preceding picture; and

decoding the encoded data, including parsing the picture timing SEI message associated with the current picture and parsing the buffering period SEI message associated with the current picture, wherein the CPBRD delta value enables the video decoder, using the CPBRD delta value and based on the concatenation flag having the given value, to detect loss of encoded data for the second preceding picture.

2. The method of claim 1 , wherein the CPBRD delta value is signaled in the buffering period SEI message associated with the current picture as a syntax element representing the CPBRD delta value minus 1.

3. The method of claim 1 , wherein the CPBRD value for the current picture is signaled in the picture timing SEI message as a syntax element representing the CPBRD value for the current picture minus 1.

4. The method of claim 1 , wherein the current picture is a random access picture.

5. The method of claim 1 , further comprising:

determining, based on a check indicating (a) the CPBRD value for the current picture is equal to (b) a sum based on the CPBRD value for the second preceding picture and the CPBRD delta value for the current picture, that the encoded data for the second preceding picture has not been lost.

6. The method of claim 1 , further comprising:

determining, based on a check indicating (a) the CPBRD value for the current picture is not equal to (b) a sum based on the CPBRD value for the second preceding picture and the CPBRD delta value for the current picture, that the encoded data for the second preceding picture has been lost.

7. The method of claim 1 , wherein the second preceding picture immediately precedes the current picture in decoding order.

8. The method of claim 1 , wherein:

the current picture is part of a temporal layer, and the second preceding picture immediately precedes the current picture in decoding order in the temporal layer of the current picture or a lower temporal layer; or

the second preceding picture, among pictures having a temporal identifier of zero, immediately precedes the current picture in decoding order.

9. One or more computer-readable media having stored thereon encoded data in a bitstream for pictures of a video sequence, the one or more computer-readable media being selected from the group consisting of volatile memory, non-volatile memory, magnetic disk, CD-ROM, and DVD, the encoded data being organized to facilitate decoding, by a video decoder, with operations comprising:

receiving the encoded data, the encoded data including:

a picture timing supplemental enhancement information (“SEI”) message associated with a current picture among the pictures of the video sequence, the picture timing SEI message including a coded picture buffer removal delay (“CPBRD”) value for the current picture, the CPBRD value for the current picture specifying a nominal coded picture buffer (“CPB”) removal time of the current picture relative to a nominal CPB removal time of a first preceding picture in decoding order, the first preceding picture having a buffering period SEI message associated with the first preceding picture; and

a buffering period SEI message associated with the current picture, the buffering period SEI message including a concatenation flag and a CPBRD delta value, wherein the concatenation flag has a given value, and wherein the CPBRD delta value indicates a difference between the CPBRD value for the current picture and a CPBRD value for a second preceding picture in decoding order, the second preceding picture lacking a buffering period SEI message associated with the second preceding picture; and

decoding the encoded data, including parsing the picture timing SEI message associated with the current picture and parsing the buffering period SEI message associated with the current picture, wherein the CPBRD delta value enables the video decoder, using the CPBRD delta value and based on the concatenation flag having the given value, to detect loss of encoded data for the second preceding picture.

10. The one or more computer-readable media of claim 9 , wherein the CPBRD delta value is signaled in the buffering period SEI message associated with the current picture as a syntax element representing the CPBRD delta value minus 1.

11. The one or more computer-readable media of claim 9 , wherein the CPBRD value for the current picture is signaled in the picture timing SEI message as a syntax element representing the CPBRD value for the current picture minus 1.

12. The one or more computer-readable media of claim 9 , wherein the current picture is a random access picture.

13. The one or more computer-readable media of claim 9 , wherein the second preceding picture immediately precedes the current picture in decoding order.

14. The one or more computer-readable media of claim 9 , wherein:

the current picture is part of a temporal layer, and the second preceding picture immediately precedes the current picture in decoding order in the temporal layer of the current picture or a lower temporal layer; or

the second preceding picture, among pictures having a temporal identifier of zero, immediately precedes the current picture in decoding order.

15. A computer system comprising:

a video encoder configured to encode pictures of a video sequence by performing operations, thereby producing encoded data, the operations comprising:

encoding a picture timing supplemental enhancement information (“SEI”) message associated with a current picture among the pictures of the video sequence, the picture timing SEI message including a coded picture buffer removal delay (“CPBRD”) value for the current picture, the CPBRD value for the current picture specifying a nominal coded picture buffer (“CPB”) removal time of the current picture relative to a nominal CPB removal time of a first preceding picture in decoding order, the first preceding picture having a buffering period SEI message associated with the first preceding picture; and

encoding a buffering period SEI message associated with the current picture, the buffering period SEI message including a concatenation flag and a CPBRD delta value, wherein the concatenation flag has a given value, and wherein the CPBRD delta value indicates a difference between the CPBRD value for the current picture and a CPBRD value for a second preceding picture in decoding order, the second preceding picture lacking a buffering period SEI message associated with the second preceding picture; and

a buffer configured to store the encoded data for output in a bitstream, the encoded data including the picture timing SEI message associated with the current picture and the buffering period SEI message associated with the current picture, thereby enabling a video decoder, using the CPBRD delta value and so long as the concatenation flag has the given value, to detect loss of encoded data for the second preceding picture.

16. The computer system of claim 15 , wherein the CPBRD delta value is signaled in the buffering period SEI message associated with the current picture as a syntax element representing the CPBRD delta value minus 1.

17. The computer system of claim 15 , wherein the CPBRD value for the current picture is signaled in the picture timing SEI message as a syntax element representing the CPBRD value for the current picture minus 1.

18. The computer system of claim 15 , wherein the current picture is a random access picture.

19. The computer system of claim 15 , wherein the second preceding picture immediately precedes the current picture in decoding order.

20. The computer system of claim 15 , wherein:

the current picture is part of a temporal layer, and the second preceding picture immediately precedes the current picture in decoding order in the temporal layer of the current picture or a lower temporal layer; or

the second preceding picture, among pictures having a temporal identifier of zero, immediately precedes the current picture in decoding order.

Assignments (2)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2022
From: SULLIVAN, GARY J.; ZHU, LIHUA
To: MICROSOFT CORPORATION
Reel/Frame 062074/0097 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2022
From: MICROSOFT CORPORATION
To: MICROSOFT TECHNOLOGY LICENSING, LLC
Reel/Frame 062074/0125 →
Continuity (6)
Continuation 17350510 · Jun 17, 2021
Continuation 16430087 · Jun 3, 2019
Continuation 15601615 · May 22, 2017
Continuation 14109670 · Dec 17, 2013
Provisional Application 61749909 · Jan 7, 2013
Related Publication 20230017536A1 · Jan 19, 2023
Cited By (1)
US 12,348,756