Video compression for multicast environments using spatial scalability and simulcast coding
First Claim
1. A method for coding video data, comprising the steps of:
- modeling a quality of lower resolution video data and of corresponding higher resolution video data at varying bit allocations between the lower and higher resolution video data;
determining a crossover point of the modeled qualities at which the lower and higher resolution video data have an approximately equal quality, said crossover point indicating a corresponding bit allocation between said lower and higher resolution video data; and
coding the video data in accordance with the corresponding bit allocation to provide said lower and higher resolution video data at approximately equal quality levels.
4 Assignments
0 Petitions
Accused Products
Abstract
An optimal system for determining whether simulcast coding (400) or spatial scalability coding (100) should be used to encode video for clients with a specific communication link. Operating points (A′, B′, C′) for both simulcast coding and spatial scalability are also determined. Adaptive switching (3130, 3140) is provided, with the operating points and decision boundaries being used to guide the switching to optimize the quality of the higher-resolution data based on a bit allocation to the associated lower-resolution data. A system for determining the point (A′, C′) of equal quality in both layers of simulcast and spatial scalability coding is also provided. The proportion of bits allocated to the base layer to achieve equal quality is essentially independent of the total bit rate for both simulcast and spatial scalability.
127 Citations
40 Claims
-
1. A method for coding video data, comprising the steps of:
-
modeling a quality of lower resolution video data and of corresponding higher resolution video data at varying bit allocations between the lower and higher resolution video data;
determining a crossover point of the modeled qualities at which the lower and higher resolution video data have an approximately equal quality, said crossover point indicating a corresponding bit allocation between said lower and higher resolution video data; and
coding the video data in accordance with the corresponding bit allocation to provide said lower and higher resolution video data at approximately equal quality levels. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9, 10, 11)
the video data coded in said coding step comprises a sequence of pictures.
-
-
3. The method of claim 1, wherein:
the corresponding bit allocation is an average over a sequence of pictures that comprise the lower and higher resolution video data.
-
4. The method of claim 1, wherein:
the video data coded in said coding step is different than the video data used in said modeling step.
-
5. The method of claim 1, wherein:
the video data coded in said coding step is the same as the video data used in said modeling step.
-
6. The method of claim 1, wherein:
the quality comprises a peak signal-to-noise ratio (PSNR).
-
7. The method of claim 1, wherein:
said modeling step uses a logarithmic model.
-
8. The method of claim 1, wherein:
the coded-video data is coded in independent simulcast streams.
-
9. The method of claim 1, wherein:
the coded video data is coded using spatial scalability coding in a base layer and at least one enhancement layer.
-
10. The method of claim 1, wherein:
the crossover point is determined in accordance with a bisection algorithm.
-
11. The method of claim 1, wherein:
the crossover point is extrapolated.
-
12. A method for coding video data, comprising the steps of:
-
modeling a quality of lower resolution video data, and of corresponding higher resolution video data, for varying bit allocations between the lower and higher resolution video data, by using each of;
(a) simulcast coding, and (b) spatial scalability coding; and
coding the video data at a desired bit allocation for the lower and higher resolution video data using one of the simulcast coding and the spatial scalability coding according to whichever results in a larger modeled quality at the desired bit allocation. - View Dependent Claims (13, 14, 15, 16, 17, 18)
the video data comprises a sequence of pictures.
-
-
14. The method of claim 12, wherein:
the desired bit allocation is an average over a sequence of pictures that comprise the lower and higher resolution video data.
-
15. The method of claim 12, wherein:
the video data coded in said coding step is different than the video data used in said modeling step.
-
16. The method of claim 12, wherein:
the video data coded in said coding step is the same as the video data used in said modeling step.
-
17. The method of claim 12, wherein:
the modeled qualities comprise a peak signal-to-noise ratio (PSNR).
-
18. The method of claim 12, wherein:
said modeling step uses a logarithmic model.
-
19. A method for coding video data, comprising the steps of:
-
(a) determining a bit allocation decision boundary for varying bit allocations for lower resolution video data;
wherein, for the varying bit allocations for the lower resolution video data, the decision boundary designates a bit allocation for corresponding higher resolution video data;
(b) determining an operating point for the video data based on desired bit allocations for lower resolution video data thereof and corresponding higher resolution video data thereof;
(c) coding the video data using simulcast coding if the operating point indicates the desired bit allocation of the higher resolution video data of said step (b) exceeds a bit allocation designated by the decision boundary; and
(d) coding the video data using spatial scalability coding if the operating point indicates the desired bit allocation of the higher resolution video data of said step (b) is less than a bit allocation designated by the decision boundary. - View Dependent Claims (20, 21, 22, 23, 24)
the decision boundary corresponds to a bit allocation of approximately 20% of an available bandwidth to the lower resolution video data in said step (a) and approximately 80% of the available bandwidth to the higher resolution video data in said step (a).
-
-
21. The method of claim 19, wherein:
the video data comprises a sequence of pictures.
-
22. The method of claim 21, wherein:
the desired bit allocations in said step (b) are averages over the sequence of pictures.
-
23. The method of claim 19, wherein:
the video data coded in said coding steps is different from the video data used in said step (a).
-
24. The method of claim 19, wherein:
the video data coded in said coding steps is the same as the video data used in said step (a).
-
25. A method for coding video data comprising lower resolution data and corresponding higher resolution data, comprising the steps of:
-
(a) allocating a first portion of an available bandwidth to the lower resolution data, and a remainder of the available bandwidth to the higher resolution data; and
(b) coding the video data using simulcast coding if the first portion is less than approximately 20% of the available bandwidth, and using spatial scalability coding if the first portion is greater than approximately 20% of the available bandwidth.
-
-
26. A method for coding video data comprising lower resolution data and corresponding higher resolution data, comprising the step of:
-
allocating approximately 36-44% of an available bandwidth to the lower resolution data, and a remainder of the available bandwidth to the higher resolution data to achieve an approximately equal quality for the lower and higher resolution data when said lower and higher resolution data are simulcast coded. - View Dependent Claims (27)
the quality comprises a peak signal-to-noise ratio (PSNR).
-
-
28. A method for coding video data comprising lower resolution data and corresponding higher resolution data, comprising the step of:
-
allocating approximately 40-50% of an available bandwidth to the lower resolution data, and a remainder of the available bandwidth to the higher resolution data to achieve an approximately equal quality for the lower and higher resolution data when said lower and higher resolution data are spatial scalability coded. - View Dependent Claims (29)
the quality comprises a peak signal-to-noise ratio (PSNR).
-
-
30. A method for communicating video data comprising lower resolution data and corresponding higher resolution data to at least a first user via a network that adaptively uses spatial scalability coding and simulcast coding, comprising the step of:
-
configuring a switching device in the network to selectively forward at least one of the lower and higher resolution data to the first user according to which of the spatial scalability coding and the simulcast coding is being used, and according to a data service capacity of the first user. - View Dependent Claims (31, 32, 33)
when the simulcast coding is used, the switching device is configured to;
(a) forward the higher resolution data to the first user if a data rate of the higher resolution data is within the data service capacity, and (b) to forward the lower resolution data to the first user if the data rate of the higher resolution data is not within the data service capacity, but a data rate of the lower resolution data is within the data service capacity.
-
-
32. The method of claim 30, wherein:
when spatial scalability coding is used, the switching device is configured to;
(a) forward both the higher and lower resolution data to the first user if a combined data rate thereof is within the data service capacity, and (b) to forward the lower resolution data to the first user if the combined data rate is not within the data service capacity, but a data rate of the lower resolution data is within the data service capacity.
-
33. The method of claim 30, wherein:
the switching device comprises a router.
-
34. An apparatus for coding video data, comprising:
-
means for modeling a quality of lower resolution video data and of corresponding higher resolution video data at varying bit allocations between the lower and higher resolution video data;
means for determining a crossover point of the modeled qualities at which the lower and higher resolution video data have an approximately equal quality, said crossover point indicating a corresponding bit allocation between said lower and higher resolution video data; and
means for coding the video data in accordance with the corresponding bit allocation to provide said lower and higher resolution video data at approximately equal quality levels.
-
-
35. An apparatus for coding video data, comprising:
-
means for modeling a quality of lower resolution video data, and of corresponding higher resolution video data, for varying bit allocations between the lower and higher resolution video data, by using each of;
(a) simulcast coding, and (b) spatial scalability coding; and
means for coding the video data at a desired bit allocation for the lower and higher resolution video data using one of the simulcast coding and the spatial scalability coding according to whichever results in a larger modeled quality at the desired bit allocation.
-
-
36. An apparatus for coding video data, comprising:
-
(a) means for determining a bit allocation decision boundary for varying bit allocations for lower resolution video data;
wherein, for the varying bit allocations for the lower resolution video data, the decision boundary designates a bit allocation for corresponding higher resolution video data;
(b) means for determining an operating point for the video data based on desired bit allocations for lower resolution video data thereof and corresponding higher resolution video data thereof;
(c) means for coding the video data using simulcast coding if the operating point indicates the desired bit allocation of the higher resolution video data of said means (b) exceeds a bit allocation designated by the decision boundary; and
(d) means coding the video data using spatial scalability coding if the operating point indicates the desired bit allocation of the higher resolution video data of said means (b) is less than a bit allocation designated by the decision boundary.
-
-
37. An apparatus for coding video data comprising lower resolution data and corresponding higher resolution data, comprising:
-
(a) means for allocating a first portion of an available bandwidth to the lower resolution data, and a remainder of the available bandwidth to the higher resolution data; and
(b) means for coding the video data using simulcast coding if the first portion is less than approximately 20% of the available bandwidth, and using spatial scalability coding if the first portion is greater than approximately 20% of the available bandwidth.
-
-
38. An apparatus for coding video data comprising lower resolution data and corresponding higher resolution data, comprising:
means for allocating approximately 36-44% of an available bandwidth to the lower resolution data, and a remainder of the available bandwidth to the higher resolution data to achieve an approximately equal quality for the lower and higher resolution data when said lower and higher resolution data are simulcast coded.
-
39. An apparatus for coding video data comprising lower resolution data and corresponding higher resolution data, comprising:
means for allocating approximately 40-50% of an available bandwidth to the lower resolution data, and a remainder of the available bandwidth to the higher resolution data to achieve an approximately equal quality for the lower and higher resolution data when said lower and higher resolution data are spatial scalability coded.
-
40. An apparatus for communicating video data comprising lower resolution data and corresponding higher resolution data to at least a first user via a network that adaptively uses spatial scalability coding and simulcast coding, comprising:
means for configuring a switching device in the network to selectively forward at least one of the lower and higher resolution data to the first user according to which of the spatial scalability coding and the simulcast coding is being used, and according to a data service capacity of the first user.
Specification