Primary transform using 8-bit cores
A method of utilizing an 8-bit primary transform core matrix to decode compressed video or image data or encode uncompressed video or image data. The method may include determining whether to use a first transform core matrix that is of a first size type or a second transform core matrix that is of a second size type that is smaller than the first size type. When a result of the determination is to use the first transform core matrix, encoding or decoding the target file using the 8-bit primary transform core matrix that has the size that is 64-point or larger. If not, the method may include extracting the second transform core matrix of the second size type from the first transform matrix and encoding or decoding the target file using the extracted second transform core matrix.
1 . A method of encoding, the method comprising:
receiving a video;
constructing a 64-point, 8-bit primary transform core matrix by reordering a set integers and determining their corresponding signs; and
encoding the video into a video bitstream comprising a compressed data block based on a first transform core matrix that is the 64-point, 8-bit primary transform core matrix constructed using the set of integers that include: {bf, bg, bh, bi, bj, bk, bl, bm, bn, bo, bp, bq, br, bs, bt, bu, bv, bw, bx, by, bz} and {ca, cb, cc, cd, ce, cf, cg, ch, ci, cj and ck}, {bf, bg, bh, bi, bj, bk, bl, bm, bn, bo, bp, bq, br, bs, bt, bu, bv, bw, bx, by, bz} and {ca, cb, cc, cd, ce, cf, cg, ch, ci, cj, ck} are equal to {91, 90, 90, 90, 88, 87, 86, 84, 83, 81, 79, 77, 73, 71, 69, 65} and {62, 59, 56, 52, 48, 44, 41, 37, 33, 28, 24, 20, 15, 11, 7, 2} respectively.
2 . The method of claim 1 , wherein the first transform core matrix is a Versatile Video Coding (VVC) standard transform.
3 . The method of claim 1 , wherein encoding the video comprises determining whether the compressed data block is to be based on the first transform core matrix or a second primary transform core matrix.
4 . The method of claim 3 , wherein the second primary transform core matrix is one of DCT-8, DST-1 or DCT-5.
5 . The method of claim 3 , wherein a left half or a right half of even or odd rows of the 8-bit primary transform core matrix form a matrix which is similar to the second transform core matrix.
6 . The method of claim 3 , wherein
at least one of the first transform core matrix and the second transform core matrix is one of DCT-2, DCT-5, DCT-8, DST-1 and DST-7.
7 . The method of claim 6 , wherein the first transform core matrix and the second transform core matrix are a same one of DCT-2, DCT-5, DCT-8, DST-1 and DST-7.
8 . An apparatus for encoding, the apparatus comprising:
at least one memory configured to store computer program code; and
at least one processor configured to access the at least one memory and operate according to the computer program code, the computer program code comprising:
receiving code configured to cause the at least one processor to receive a video; and
constructing code configured to cause the at least one processor to construct a 64-point, 8-bit primary transform core matrix by reordering a set integers and determining their corresponding signs;
encoding code configured to cause the at least one processor to encode the video into a video bitstream comprising a compressed data block based on a first transform core matrix that is the 64-point, 8-bit primary transform core matrix constructed using the set of integers that include: {bf, bg, bh, bi, bj, bk, bl, bm, bn, bo, bp, bq, br, bs, bt, bu, bv, bw, bx, by, bz} and {ca, cb, cc, cd, ce, cf, cg, ch, ci, cj and ck}, wherein {bf, bg, bh, bi, bj, bk, bl, bm, bn, bo, bp, bq, br, bs, bt, bu, bv, bw, bx, by, bz} and {ca, cb, cc, cd, ce, cf, cg, ch, ci, cj, ck} are equal to {91, 90, 90, 90, 88, 87, 86, 84, 83, 81, 79, 77, 73, 71, 69, 65} and {62, 59, 56, 52, 48, 44, 41, 37, 33, 28, 24, 20, 15, 11, 7, 2} respectively.
9 . The apparatus of claim 8 , wherein the first transform core matrix is a Versatile Video Coding (VVC) standard transform.
10 . The apparatus of claim 8 , wherein encoding the video comprises determining whether the compressed data block is to be based on the first transform core matrix or a second primary transform core matrix.
11 . The apparatus of claim 10 , wherein the second primary transform core matrix is one of DCT-8, DST-1 or DCT-5.
12 . The apparatus of claim 10 , wherein a left half or a right half of even or odd rows of the 8-bit primary transform core matrix form a matrix which is similar to the second transform core matrix.
13 . The apparatus of claim 10 , wherein
at least one of the first transform core matrix and the second transform core matrix is one of DCT-2, DCT-5, DCT-8, DST-1 and DST-7.
14 . The apparatus of claim 13 , wherein the first transform core matrix and the second transform core matrix are a same one of DCT-2, DCT-5, DCT-8, DST-1 and DST-7.
15 . A method of encoding visual media data, the method comprising:
constructing a 64-point, 8-bit primary transform core matrix by reordering a set integers and determining their corresponding signs; and
encoding the video into a video bitstream based on a first transform core matrix that is the 64-point, 8-bit primary transform core matrix constructed using the set of integers that include: {bf, bg, bh, bi, bj, bk, bl, bm, bn, bo, bp, bq, br, bs, bt, bu, bv, bw, bx, by, bz} and {ca, cb, cc, cd, ce, cf, cg, ch, ci, cj and ck}, wherein {bf, bg, bh, bi, bj, bk, bl, bm, bn, bo, bp, bq, br, bs, bt, bu, bv, bw, bx, by, bz} and {ca, cb, cc, cd, ce, cf, cg, ch, ci, cj, ck} are equal to {91, 90, 90, 90, 88, 87, 86, 84, 83, 81, 79, 77, 73, 71, 69, 65} and {62, 59, 56, 52, 48, 44, 41, 37, 33, 28, 24, 20, 15, 11, 7, 2} respectively.
16 . The method of claim 15 , wherein the first transform core matrix is a Versatile Video Coding (VVC) standard transform.
17 . The method of claim 15 , wherein encoding the video comprises determining whether the compressed data block is to be based on the first transform core matrix or a second primary transform core matrix.
18 . The method of claim 17 , wherein the second primary transform core matrix is one of DCT-8, DST-1 or DCT-5.
19 . The method of claim 17 , wherein a left half or a right half of even or odd rows of the 8-bit primary transform core matrix form a matrix which is similar to the second transform core matrix.
20 . The method of claim 17 , wherein
at least one of the first transform core matrix and the second transform core matrix is one of DCT-2, DCT-5, DCT-8, DST-1 and DST-7.