# US 2014/0192893 A1 · Syntax and semantics for buffering information to simplify video splicing

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2014/0192893 A1
- Document ID: US20140192893A1
- Status: Published application
- Kind: A1
- Application number: 14/109,670
- Filed: 2013-12-17
- Published: 2014-07-10
- Earliest claimed: 2013-01-07
- Assignees: Microsoft Corporation
- Applicants: Microsoft Corporation
- Inventors: Gary J. Sullivan; Lihua Zhu
- Web page: https://patentgrep.com/patent/US20140192893A1

## CPC

- H04N 19/46: Embedding additional information in the video signal during the compression process (H04N19/517, H04N19/68, H04N19/70 take precedence)
- H04N 19/70: characterised by syntax aspects related to video coding, e.g. related to compression standards
- H04N 21/23424: {involving splicing one content stream with another content stream, e.g. for inserting or substituting an advertisement}
- H04N 21/44016: {involving splicing one content stream with another content stream, e.g. for substituting a video clip}
- H04N 7/147: {Communication arrangements, e.g. identifying the communication as a video-communication, intermediate storage of the signals (selecting H04Q)}
- H04N 7/15: Conference systems
- H04N 7/18: Closed-circuit television [CCTV] systems, i.e. systems in which the video signal is not broadcast
- H04N 19/573: Motion compensation with multiple frame prediction using two or more reference frames in a given prediction direction
- H04N 19/58: Motion compensation with long-term prediction, i.e. the reference frame for a current frame not being the temporally closest one (H04N19/23 takes precedence)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION

## 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

### Claim 1

A computing device adapted to perform a method comprising:
setting a coded picture buffer removal delay (“CPBRD”) value for a given unit of a video sequence, wherein the CPBRD value for the given unit indicates an increment value relative to a nominal coded picture buffer (“CPB”) removal time of a preceding picture in decoding order regardless of whether the preceding picture has a buffering period SEI message; and
signaling the CPBRD value for the given unit.

### Claim 2 (depends on 1)

The computing device of claim 1 wherein the given unit is an access unit for a current picture that has a buffering period SEI message, and wherein the CPBRD value is signaled in the buffering period SEI message as a syntax element representing the CPBRD value minus 1.

### Claim 3 (depends on 1)

The computing device of claim 1 wherein the preceding picture immediately precedes the given unit or picture that includes the given unit in decoding order.

### Claim 4 (depends on 1)

The computing device of claim 1 wherein, among pictures of the video sequence within a given temporal sub-layer or lower sub-layer, the preceding picture immediately precedes the given unit or picture that includes the given unit in decoding order.

### Claim 5 (depends on 1)

The computing device of claim 1 wherein the given unit is a random access picture or part of a random access picture, and wherein the signaling the CPBRD value facilitates splicing that starts at the random access picture.

### Claim 6 (depends on 1)

The computing device of claim 1 wherein the method further comprises:
setting another CPBRD value for the given unit, wherein the other CPBRD value for the given unit indicates an increment value relative to a nominal CPB removal time of a preceding picture in decoding order that has a buffering period SEI message; and
signaling the other CPBRD value for the given unit in a picture timing SEI message as a syntax element representing the other CPBRD value minus 1.

### Claim 7 (depends on 1)

The computing device of claim 1 wherein the CPBRD value for the given unit is a first CPBRD value, the method further comprising:
signaling an indication of type of the CPBRD value for the given unit, the indication of type indicating whether a second CPBRD value for the given unit is constrained compared to a sum based on the first CPBRD value and a third CPBRD value for the preceding picture for the first CPBRD value.

### Claim 8 (depends on 1)

The computing device of claim 1 wherein the CPBRD value for the given unit is a CPBRD delta value that indicates a difference between another CPBRD value for the given unit and a CPBRD value for the preceding picture for the CPBRD delta value, the method further comprising:
signaling a flag for the given unit;
setting the other CPBRD value for the given unit, wherein:
for a first value of the flag, the other CPBRD value for the given unit indicates an increment value relative to a nominal CPB removal time of a preceding picture in decoding order that has a buffering period SEI message; and
for a second value of the flag, the other CPBRD value for the given unit is not valid; and
signaling the other CPBRD value for the given unit.

### Claim 9

In a computing device, a method comprising:
receiving a coded picture buffer removal delay (“CPBRD”) value for a given unit of a video sequence, wherein the CPBRD value for the given unit indicates an increment value relative to a nominal coded picture buffer (“CPB”) removal time of a preceding picture in decoding order regardless of whether the preceding picture has a buffering period SEI message; and
parsing the CPBRD value for the given unit.

### Claim 10 (depends on 9)

The method of claim 9 wherein the given unit is an access unit for a current picture that has a buffering period SEI message, and wherein the CPBRD value is signaled in the buffering period SEI message as a syntax element representing the CPBRD value minus 1.

### Claim 11 (depends on 9)

The method of claim 9 wherein, among pictures of the video sequence at a given temporal sub-layer, the preceding picture immediately precedes the given unit or picture that includes the given unit in decoding order.

### Claim 12 (depends on 9)

The method of claim 9 wherein the given unit is a random access picture or part of a random access picture.

### Claim 13 (depends on 9)

The method of claim 9 wherein the method further comprises:
receiving and parsing another CPBRD value for the given unit, signaled in a picture timing SEI message as a syntax element representing the other CPBRD value minus 1, wherein the other CPBRD value for the given unit indicates an increment value relative to a nominal CPB removal time of a preceding picture in decoding order that has a buffering period SEI message.

### Claim 14 (depends on 9)

The method of claim 9 wherein the CPBRD value for the given unit is a first CPBRD value, the method further comprising:
receiving and parsing an indication of type of the CPBRD value for the given unit, the indication of type indicating whether a second CPBRD value for the given unit is constrained compared to a sum based on the first CPBRD value and a third CPBRD value for the preceding picture for the first CPBRD value; and
detecting loss of data by comparing the second CPBRD value to a sum based on the third CPBRD value and the first CPBRD value.

### Claim 15 (depends on 9)

The method of claim 9 wherein, for a spliced bitstream, a nominal removal time for the given unit or a picture that includes the given unit can be computed as a sum of (a) the nominal CPB removal time of the preceding picture and (b) a product of a clock tick value and the CPBRD value for the given unit, constrained by a constraint that ensures that delay is at least as long as it would be if decoding started at the given unit or picture that includes the given unit.

### Claim 16 (depends on 9)

The method of claim 9 further comprising:
based at least in part on the CPBRD value for the given unit, computing a nominal removal time from the CPB for the given unit.

### Claim 17 (depends on 9)

The method of claim 9 wherein the CPBRD value for the given unit is a CPBRD delta value that indicates a difference between another CPBRD value for the given unit and a CPBRD value for the preceding picture for the CPBRD delta value, the method further comprising:
receiving and parsing a flag for the given unit;
receiving and parsing the other CPBRD value for the given unit, wherein:
for a first value of the flag, the other CPBRD value for the given unit indicates an increment value relative to a nominal CPB removal time of a preceding picture in decoding order that has a buffering period SEI message; and
for a second value of the flag, the other CPBRD value for the given unit is not valid.

### Claim 18

One or more computer-readable media storing computer-executable instructions for causing a computing device programmed thereby to perform a method comprising:
receiving at least part of a first bitstream for a first video sequence;
receiving at least part of a second bitstream for a second video sequence, wherein a coded picture buffer removal delay (“CPBRD”) value for a given unit of the second video sequence indicates an increment value relative to a nominal coded picture buffer (“CPB”) removal time of a preceding picture in decoding order regardless of whether the preceding picture has a buffering period SEI message; and
splicing at least part of the second video sequence to at least part of the first video sequence, wherein the splicing includes concatenating the at least part of the second video sequence, starting at the given unit or a picture that includes the given unit, to the at least part of the first video sequence.

### Claim 19 (depends on 18)

The one or more computer-readable media of claim 18 wherein another CPBRD value for the given unit indicates an increment value relative to a nominal CPB removal time of a preceding picture in decoding order that has a buffering period SEI message, the method further comprising:
as part of the splicing, marking the other CPBRD for the given unit as not valid.

### Claim 20 (depends on 18)

The one or more computer-readable media of claim 18 wherein the concatenating the second video sequence includes:
concatenating a buffering period SEI message of the given unit or picture that includes the given unit, wherein the buffering period SEI message includes an indication of type of the CPBRD value for the given unit and further includes the CPBRD value for the given unit; and
concatenating a picture timing SEI message, wherein the picture timing SEI message includes another CPBRD value for the given unit.
