Flexible range reduction
First Claim
1. A computer-implemented method of encoding video with a video encoder, the method comprising:
- with the video encoder, encoding video that includes one or more pictures, each of the one or more pictures including luma samples and chroma samples, wherein range reduction of the luma samples and range reduction of the chroma samples, if performed, occur outside of a motion compensation loon; and
outputting, from the video encoder, the encoded video in a bit stream according to a bit stream syntax, including;
signaling a first set of one or more syntax elements for the range reduction of the luma samples of the one or more pictures of the video, wherein the first set of one or more syntax elements indicates whether the luma samples were mapped from an original luma sample range to a reduced luma sample range prior to subsequent encoding of the luma samples in the reduced luma sample range; and
signaling a second set of one or more syntax elements for the range reduction of the chroma samples of the one or more pictures of the video, wherein the second set of one or more syntax elements indicates whether the chroma samples were mapped from an original chroma sample range to a reduced chroma sample range prior to subsequent encoding of the chroma samples in the reduced chroma sample range, and wherein the first set of one or more syntax elements is signaled separately from the second set of one or more syntax elements;
wherein the bit stream syntax permits selective use of the range reduction of the luma samples but not the range reduction of the chroma samples;
wherein the bit stream syntax permits selective use of the range reduction of the chroma samples but not the range reduction of the luma samples; and
wherein the bit stream syntax permits use of different scaling factors between the range reduction of the luma samples and the range reduction of the chroma samples.
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques and tools are described for flexible range reduction of samples of video. For example, an encoder signals a first set of one or more syntax elements for range reduction of luma samples and signals a second set of one or more syntax elements for range reduction of chroma samples. The encoder selectively scales down the luma samples and chroma samples in a manner consistent with the first syntax element(s) and second syntax element(s), respectively. Or, an encoder signals range reduction syntax element(s) in an entry point header for an entry point segment, where the syntax element(s) apply to pictures in the entry point segment. If range reduction is used for the pictures, the encoder scales down samples of the pictures. Otherwise, the encoder skips the scaling down. A decoder performs corresponding parsing and scaling up operations.
53 Citations
25 Claims
-
1. A computer-implemented method of encoding video with a video encoder, the method comprising:
-
with the video encoder, encoding video that includes one or more pictures, each of the one or more pictures including luma samples and chroma samples, wherein range reduction of the luma samples and range reduction of the chroma samples, if performed, occur outside of a motion compensation loon; and outputting, from the video encoder, the encoded video in a bit stream according to a bit stream syntax, including; signaling a first set of one or more syntax elements for the range reduction of the luma samples of the one or more pictures of the video, wherein the first set of one or more syntax elements indicates whether the luma samples were mapped from an original luma sample range to a reduced luma sample range prior to subsequent encoding of the luma samples in the reduced luma sample range; and signaling a second set of one or more syntax elements for the range reduction of the chroma samples of the one or more pictures of the video, wherein the second set of one or more syntax elements indicates whether the chroma samples were mapped from an original chroma sample range to a reduced chroma sample range prior to subsequent encoding of the chroma samples in the reduced chroma sample range, and wherein the first set of one or more syntax elements is signaled separately from the second set of one or more syntax elements; wherein the bit stream syntax permits selective use of the range reduction of the luma samples but not the range reduction of the chroma samples; wherein the bit stream syntax permits selective use of the range reduction of the chroma samples but not the range reduction of the luma samples; and wherein the bit stream syntax permits use of different scaling factors between the range reduction of the luma samples and the range reduction of the chroma samples. - View Dependent Claims (2, 3, 4, 5, 6, 7, 8)
-
-
9. A computer-implemented method of decoding encoded video with a video decoder, the method comprising:
-
with the video decoder, parsing plural syntax elements of encoded video from a bit stream for video that includes one or more pictures, the bit stream being organized according to a bit stream syntax, each of the one or more pictures including lurna samples and chroma samples, including; parsing a first set of one or more syntax elements for range reduction of the luma samples of the one or more pictures of the video, wherein the first set of one or more syntax elements indicates whether the luma samples were mapped from an original luma sample range to a reduced, luma sample range prior, to subsequent encoding of the luma samples in the reduced luma sample range; and parsing a second set of one or more syntax elements for range reduction of the chroma samples of the one or more pictures of the video, wherein the second set of one or more syntax elements indicates whether the chroma samples were mapped from an original chroma sample range to a reduced chroma sample range prior to subsequent encoding of the chroma samples in the reduced chroma sample range, and wherein the first set of one or more syntax elements is signaled separately from the second set of one or more syntax elements; wherein the bit stream syntax permits selective use of the range reduction of the luma samples but not the range reduction of the chroma samples; wherein the bit stream syntax permits selective use of the range reduction of the chroma samples but not the range reduction of the luma samples; and wherein the bit stream syntax permits use of different scaling factors between the range reduction of the luma samples and the range reduction of the chroma samples; and with the video decoder, decoding the encoded video, wherein compensation for the range reduction of the luma samples and compensation for the range reduction of the chroma samples, if performed, occur outside of a motion compensation loop. - View Dependent Claims (10, 11, 12, 13, 14, 15, 16, 17)
-
-
18. A video encoder comprising:
-
a processor; memory; an input device, output device or communication connection; and storage media storing computer-executable instructions for causing the processor to perform a method comprising; encoding video that includes one or more pictures, each of the one or more pictures including luma samples and chroma samples, wherein range reduction of the luma samples and range reduction of the chroma samples, if performed, occur outside of a motion compensation loop; and outputting the encoded video in a bit stream according to a bit stream syntax, including; signaling a first set of one or more syntax elements for the range reduction of the luma samples of the one or more pictures of the video, wherein the first set of one or more syntax elements indicates whether the luma samples were mapped from an original luma sample range to a reduced luma sample range prior to subsequent encoding of the luma samples in the reduced luma sample range; and signaling a second set of one or more syntax elements for the range reduction of the chroma samples of the one or more pictures of the video, wherein the second set of one or more syntax elements indicates whether the chroma samples were mapped from an original chroma sample range to a reduced chroma sample range prior to subsequent encoding of the chroma samples in the reduced chroma sample range, and wherein the first set of one or more syntax elements is signaled separately from the second set of one or more syntax elements; wherein the bit stream syntax permits selective use of the range reduction of the luma samples but not the range reduction of the chroma samples; wherein the bit stream syntax permits selective use of the range reduction of the chroma samples but not the range reduction of the luma samples; and wherein the bit stream syntax permits use of different scaling factors between the range reduction of the luma samples and the range reduction of the chroma samples. - View Dependent Claims (19, 20, 21)
-
-
22. A video decoder comprising:
-
a processor; memory; an input device; an output device; a communication connection; and storage media storing computer-executable instructions for causing the processor to perform a method comprising; parsing plural syntax elements of encoded video from a bit stream for video that includes one or more pictures, the bit stream being organized according to a bit stream syntax, each of the one or more pictures including luma samples and chroma samples, including; parsing a first set of one or more syntax elements for range reduction of the luma samples of the one or more pictures of the video, wherein the first set of one or more syntax elements indicates whether the luma samples were mapped from an original luma sample range to a reduced luma sample range prior to subsequent encoding of the luma samples in the reduced luma sample range; and parsing a second set of one or more syntax elements for range reduction of the chroma samples of the one or more pictures of the video, wherein the second set of one or more syntax elements indicates whether the chroma samples were mapped from an original chroma sample range to a reduced chroma sample range prior to subsequent encoding of the chroma samples in the reduced drama sample range, and wherein the first set of one or more syntax elements is signaled separately from the second set of one or more syntax elements; wherein the bit stream syntax permits selective use of the range reduction of the luma samples but not the range reduction of the chroma samples; wherein the bit stream syntax permits selective use of the range reduction of the chroma samples but not the range reduction of the luma samples; and wherein the bit stream syntax permits use of different scaling factors between the range reduction of the lurna samples and the range reduction of the chroma samples; and decoding the encoded video, wherein the decoding comprises; using the first set and the second set of syntax elements, determining whether to compensate for the range reduction of the luma samples and the range reduction of the chroma samples, wherein compensation for the range reduction of the luma samples and compensation for the range reduction of the chroma samples, if performed, occur outside of a motion compensation loop, and wherein the determination of whether to compensate for the range reduction of the luma samples is independent of the determination of whether to compensate for the range reduction of the chroma samples; for the compensation for the range reduction of the luma samples, if performed, scaling up the luma samples based at least in part on the first set; and for the compensation for the range reduction of the chroma samples, if performed, scaling up the chroma samples based at least in part on the second set. - View Dependent Claims (23, 24, 25)
-
Specification