DCT4 F32

void riscv_dct4_f32(const riscv_dct4_instance_f32 *S, float32_t *pState, float32_t *pInlineBuffer)
riscv_status riscv_dct4_init_f32(riscv_dct4_instance_f32 *S, riscv_rfft_instance_f32 *S_RFFT, riscv_cfft_radix4_instance_f32 *S_CFFT, uint16_t N, uint16_t Nby2, float32_t normalize)
group DCT4F32

Functions

void riscv_dct4_f32(const riscv_dct4_instance_f32 *S, float32_t *pState, float32_t *pInlineBuffer)

Processing function for the floating-point DCT4/IDCT4.

Deprecated:

Do not use this function. It is using a deprecated version of the RFFT.

Parameters
  • S[in] points to an instance of the floating-point DCT4/IDCT4 structure

  • pState[in] points to state buffer

  • pInlineBuffer[inout] points to the in-place input and output buffer

Returns

none

riscv_status riscv_dct4_init_f32(riscv_dct4_instance_f32 *S, riscv_rfft_instance_f32 *S_RFFT, riscv_cfft_radix4_instance_f32 *S_CFFT, uint16_t N, uint16_t Nby2, float32_t normalize)

Initialization function for the floating-point DCT4/IDCT4.

Deprecated:

Do not use this function. It is using a deprecated version of the RFFT.

DCT Size

Normalizing factor value

2048

0.03125

512

0.0625

128

0.125

Normalizing factor

The normalizing factor is sqrt(2/N), which depends on the size of transform N. Floating-point normalizing factors are mentioned in the table below for different DCT sizes:

Parameters
  • S[inout] points to an instance of floating-point DCT4/IDCT4 structure

  • S_RFFT[in] points to an instance of floating-point RFFT/RIFFT structure

  • S_CFFT[in] points to an instance of floating-point CFFT/CIFFT structure

  • N[in] length of the DCT4

  • Nby2[in] half of the length of the DCT4

  • normalize[in] normalizing factor.

Returns

execution status

  • RISCV_MATH_SUCCESS : Operation successful

  • RISCV_MATH_ARGUMENT_ERROR : N is not a supported transform length