Range reduction
First Claim
1. A computer-implemented method of using a video decoder to transform video from a compressed form to a reconstructed form, the method comprising:
- receiving a bit stream at the video decoder, the bit stream comprising coded video data for a current frame in a transform domain;
with the video decoder, processing at least one syntax element that indicates whether samples of the current frame should be scaled up in value in a spatial domain;
with the video decoder, decoding the video data for the current frame to produce a reconstructed current frame in the spatial domain; and
if the at least one syntax element indicates that the samples of the current frame should be scaled up in value in the spatial domain, then with the video decoder scaling up the samples of the reconstructed current frame, including mapping samples of at least one plane of the reconstructed current frame from a smaller range to a larger range, wherein the mapping comprises scaling original values in the smaller range to produce new values in the larger range as follows;
Yp[n]=CLIP(((Y[n]−
128)<
<
1)+128);
Up[n]=CLIP(((U[n]−
128)<
<
1)+128); and
Vp[n]=CLIP(((V[n]−
128)<
<
1)+128).
2 Assignments
0 Petitions
Accused Products
Abstract
Techniques and tools are described for decoding video data having samples that have been scaled in the spatial domain. For example, a decoder receives a bit stream that includes coded video data for a current frame. The decoder processes at least one syntax element (e.g., sequence layer flag, frame layer flag) that indicates whether the current frame should be scaled up in value in a spatial domain. If so, then the samples for the current frame are scaled up in value in the spatial domain. As another example, for a reference frame used in motion compensation for a current frame, a decoder scales samples of the reference frame so the range of the reference frame matches the range of the current frame.
34 Citations
25 Claims
-
1. A computer-implemented method of using a video decoder to transform video from a compressed form to a reconstructed form, the method comprising:
-
receiving a bit stream at the video decoder, the bit stream comprising coded video data for a current frame in a transform domain; with the video decoder, processing at least one syntax element that indicates whether samples of the current frame should be scaled up in value in a spatial domain; with the video decoder, decoding the video data for the current frame to produce a reconstructed current frame in the spatial domain; and if the at least one syntax element indicates that the samples of the current frame should be scaled up in value in the spatial domain, then with the video decoder scaling up the samples of the reconstructed current frame, including mapping samples of at least one plane of the reconstructed current frame from a smaller range to a larger range, wherein the mapping comprises scaling original values in the smaller range to produce new values in the larger range as follows;
Yp[n]=CLIP(((Y[n]−
128)<
<
1)+128);
Up[n]=CLIP(((U[n]−
128)<
<
1)+128); and
Vp[n]=CLIP(((V[n]−
128)<
<
1)+128). - View Dependent Claims (2, 3, 4, 5, 6, 7, 8, 9)
-
-
10. A computer-implemented method of using a video decoder to transform video from a compressed form to a reconstructed form, the method comprising:
-
receiving coded video data in a bit stream at the video decoder, the video data comprising coded video data for a current frame; with the video decoder, determining whether the current frame has been range-reduced in a pixel domain and whether a reference frame for the current frame has been range-reduced in the pixel domain; with the video decoder, selectively performing motion compensation for the current frame using a range-reduced reference frame in the motion compensation, including, if the current frame but not the reference frame has been range-reduced, then scaling samples of the reference frame to reduce range of the reference frame such that the range of the reference frame matches range of the current frame and performing the motion compensation using the range-reduced reference frame after the scaling; and with the video decoder, reconstructing the current frame based at least in part on the motion compensation from the reference frame. - View Dependent Claims (11, 12, 13, 14, 15, 16, 17, 22)
-
-
18. A computer-implemented method of using a video decoder to transform video from a compressed form to a reconstructed form, the method comprising:
-
with the video decoder, parsing a sequence layer syntax element that indicates whether range reduction is possible for a sequence of frames; if the sequence layer syntax element indicates that range reduction is possible for the sequence of frames, then with the video decoder performing additional processing that allows the use of range reduction for the sequence of frames, wherein range reduction includes scaling samples from a larger range of sample values to a smaller range of sample values, and wherein the additional processing includes; determining whether range reduction has been used for a current frame and whether range reduction has been used for a reference frame of the current frame; if range reduction has been used for the current frame but not the reference frame, scaling samples of the reference frame down to reduce range prior to using the range-reduced reference frame in motion compensation for the range-reduced current frame; and if the sequence layer syntax element indicates that range reduction is not possible for the sequence of frames, then with the video decoder skipping the additional processing that allows the use of range reduction for the sequence of frames. - View Dependent Claims (19, 20, 21, 23)
-
-
24. A computer-implemented method of using a video decoder to transform video from a compressed form to a reconstructed form, the method comprising:
-
receiving coded video data in a bit stream at the video decoder, the video data comprising coded video data for a current frame; with the video decoder, determining whether the current frame has been range-reduced in a pixel domain and whether a reference frame for the current frame has been range-reduced in the pixel domain; if one but not both of the current frame and reference frame have been range-reduced, then with the video decoder scaling samples of the reference frame such that a range of the reference frame matches a range of the current frame, wherein the scaling the samples of the reference frame comprises scaling down as follows;
Yp[n]=((Y[n]−
128)<
<
1)+128;
Up[n]=((U[n]−
128)<
<
1)+128; and
Vp[n]=((V[n]−
128)<
<
1)+128; andwith the video decoder, reconstructing the current frame based at least in part on motion compensation from the reference frame.
-
-
25. A computer-implemented method of using a video decoder to transform video from a compressed form to a reconstructed form, the method comprising:
-
receiving coded video data in a bit stream at the video decoder, the video data comprising coded video data for a current frame; with the video decoder, determining whether the current frame has been range-reduced in a pixel domain and whether a reference frame for the current frame has been range-reduced in the pixel domain; if one but not both of the current frame and reference frame have been range-reduced, then with the video decoder scaling samples of the reference frame such that a range of the reference frame matches a range of the current frame, wherein the scaling the samples of the reference frame comprises scaling up as follows;
Yp[n]=CLIP(((Y[n]−
128)<
<
1)+128);
Up[n]=CLIP(((U[n]−
128)<
<
1)+128); and
Vp[n]=CLIP(((V[n]−
128)<
<
1)+128); andwith the video decoder, reconstructing the current frame based at least in part on motion compensation from the reference frame.
-
Specification