IP Library Granted Patent US 9,420,309
Granted Patent B2
US 9,420,309 · App. 14/473,023 · Granted Aug 16, 2016

Generalized scalability for video coder based on video objects

Inventors: Barin Geoffry Haskell (Mountain View, CA); Atul Puri (Redmond, WA); Robert Lewis Schmidt (Howell, NJ)
Assignee: AT&T Intellectual Property II, L.P.
H04N19/593H04N5/4401H04N19/23H04N19/29H04N19/31H04N19/33H04N19/44H04N21/23412H04N21/234327H04N21/234363H04N21/234381H04N21/44012H04N21/440227H04N21/440263H04N21/440281H04N21/631
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 9,420,309
App. No.
14/473,023
Granted
Aug 16, 2016
Kind
B2
Abstract

A video coding system that codes video objects as scalable video object layers. Data of each video object may be segregated in to one or more layers. A base layer contains sufficient information to decode a basic representation of the video object. Enhancement layers contain supplementary data regarding the video object that, if decoded, enhance the basic representation obtained from the base layer. The present invention thus provides a coding scheme suitable for use with decoders of varying processing power. A simple decoder may decode only the base layer of the video objects to obtain the basic representation. However, more powerful decoders may decode the base layer data of video objects and additional enhancement layer data to obtain improved decoded output. The coding scheme supports enhancement of both the spatial resolution and the temporal resolution of video object.

Claims (51)

1. A method for generating a coded video signal, comprising:

identifying, by a processor, a video object from video data, wherein an instance of the video object at a given time is deemed a video object plane;

determining, by the processor, one or more video object layers associated with the video object plane; and

generating, by the processor, the coded video signal, comprising:

coding a video object layer start code that marks one of the one or more video object layers as a new video object layer and a video object layer identification field to identify the new video object layer; and

coding the video object plane associated with the new video object layer.

2. The method of claim 1 , further comprising:

generating a scalability flag for identifying whether scalable coding is used.

3. The method of claim 2 , further comprising:

generating a ref_layer_id field to indicate that the new video object layer is to be used as a reference for prediction when scalable coding is used.

4. The method of claim 2 , further comprising:

generating a ref_layer_sampling_direc flag to indicate whether a second video object layer has a higher resolution than the new video object layer.

5. The method of claim 2 , further comprising:

generating a hor_sampling_factor_n field to indicate a numerator of a ratio to be used in horizontal spatial resampling when scalable coding is used.

6. The method of claim 5 , further comprising:

generating a hor_sampling_factor_m field to indicate a denominator of the ratio to be used in horizontal spatial resampling when scalable coding is used.

7. The method of claim 2 , further comprising:

generating a ver_sampling_factor_n field to indicate a numerator of a ratio to be used in vertical spatial resampling when scalable coding is used.

8. The method of claim 7 , further comprising:

generating a ver_sampling_factor_m field to indicate a denominator of the ratio to be used in vertical spatial resampling when scalable coding is used.

9. A method for coding a video object from video data for one or more video object layers, wherein the video object is identified from the video data, wherein an instance of the video object at a given time is a video object plane, and wherein the video object plane is assigned to the one or more video object layers, comprising:

coding, by a processor, a video object layer start code that marks one of the one or more video object layers as a new video object layer and a video object layer identification field to identify the new video object layer; and

coding, by the processor, the video object plane assigned to the new video object layer.

10. The method of claim 9 , further comprising:

generating a scalability flag for identifying whether scalable coding is used.

11. The method of claim 10 , further comprising:

generating a ref_layer_id field to indicate the new video object layer is to be used as a reference for prediction when scalable coding is used.

12. The method of claim 10 , further comprising:

generating a ref_layer_sampling_direc flag to indicate whether a second video object layer has a higher resolution than the new video object layer.

13. The method of claim 10 , further comprising:

generating a hor_sampling_factor_n field to indicate a numerator of a ratio to be used in horizontal spatial resampling when scalable coding is used.

14. The method of claim 13 , further comprising:

generating a hor_sampling_factor_m field to indicate a denominator of the ratio to be used in horizontal spatial resampling when scalable coding is used.

15. The method of claim 10 , further comprising:

generating a ver_sampling_factor_n field to indicate a numerator of a ratio to be used in vertical spatial resampling when scalable coding is used.

16. The method of claim 15 , further comprising:

generating a ver_sampling_factor_m field to indicate a denominator of the ratio to be used in vertical spatial resampling when scalable coding is used.

17. A method of decoding a bitstream, wherein an instance of a video object at a given time is coded as a video object plane that is assigned to one or more video object layers, comprising:

identifying, by a processor, a video object layer start code in the bitstream that marks a new video object layer of the one or more video object layers;

identifying, by the processor, a video object layer identification field in the bitstream that identifies the new video object layer; and

decoding, by the processor, the video object plane that is assigned to the new video object layer.

18. The method of claim 17 , further comprising:

identifying a scalability flag for identifying whether scalable coding is used.

19. The method of claim 18 , further comprising:

identifying a ref_layer_id field to indicate the new video object layer is to be used as a reference for prediction when scalable coding is used.

20. The method of claim 19 , further comprising:

identifying a ref_layer_sampling_direc flag to indicate whether a second video object layer has a higher resolution than the new video object layer;

identifying a hor_sampling_factor_n field to indicate a numerator of a ratio to be used in horizontal spatial resampling when scalable coding is used;

identifying a hor_sampling_factor_m field to indicate a denominator of the ratio to be used in horizontal spatial resampling when scalable coding is used;

identifying a ver_sampling_factor_n field to indicate a numerator of a ratio to be used in vertical spatial resampling when scalable coding is used; and

identifying a ver_sampling_factor_m field to indicate a denominator of the ratio to be used in vertical spatial resampling when scalable coding is used.

Assignments (3)
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2016
From: AT&T CORP.
To: AT&T PROPERTIES, LLC
Reel/Frame 037509/0039 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jan 18, 2016
From: AT&T PROPERTIES, LLC
To: AT&T INTELLECTUAL PROPERTY II, L.P.
Reel/Frame 037509/0356 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Sep 8, 2014
From: HASKELL, BARIN GEOFFRY; PURI, ATUL; SCHMIDT, ROBERT LEWIS
To: AT&T CORP.
Reel/Frame 033684/0904 →
Continuity (9)
Continuation 13776500 · Feb 25, 2013
Continuation 12253307 · Oct 17, 2008
Continuation 11197700 · Aug 4, 2005
Continuation 10761518 · Jan 20, 2004
Continuation 10336709 · Jan 6, 2003
Continuation 09814061 · Mar 22, 2001
Continuation 09111215 · Jul 7, 1998
Provisional Application 60069888 · Jul 8, 1997
Related Publication 20140362907A1 · Dec 11, 2014