Go to the documentation of this file.
45 for (j = 0; j < 8; ++j) {
47 for (
i = 8;
i < 64;
i += 8) {
67 for (
i = 0;
i < 64;
i += 8) {
68 for (j = 0; j < 8; ++j) {
70 for (k = 0; k < 8; ++k) {
78 for (j = 0; j < 8; ++j) {
79 for (
i = 0;
i < 64;
i += 8) {
81 for (k = 0; k < 8; ++k) {
84 block[
i + j] = floor(
tmp + 0.499999999999);
103 for (
i = 0;
i < 64;
i += 8) {
104 for (j = 0; j < 8; ++j) {
106 for (k = 0; k < 8; ++k) {
114 for (
i = 0;
i < 8; ++
i) {
115 for (j = 0; j < 8; ++j) {
117 for (k = 0; k < 64; k += 8) {
av_cold void ff_ref_dct_init(void)
Initialize the double precision discrete cosine transform functions fdct & idct.
static double coefficients[8 *8]
#define i(width, name, range_min, range_max)
void ff_ref_fdct(short *block)
Transform 8x8 block of data with a double precision forward DCT This is a reference implementation.
void ff_ref_idct(short *block)
Transform 8x8 block of data with a double precision inverse DCT This is a reference implementation.
The exact code depends on how similar the blocks are and how related they are to the block