UDocumentation UE5.7 10.02.2026 (Source)
API documentation for Unreal Engine 5.7
radaudio_decoder_neon.h
Go to the documentation of this file.
1// Copyright Epic Games Tools, LLC. All Rights Reserved.
2#ifndef RADAUDIO_NEON_DECODE_H
3#define RADAUDIO_NEON_DECODE_H
4
5#include "radaudio_common.h"
6
7#ifdef __cplusplus
8extern "C" {
9#endif
10
11#ifdef RADAUDIO_WRAP
12#define WRAPPED_NAME(name) RR_STRING_JOIN(RADAUDIO_WRAP, name##_)
13
14#define radaudio_neon_expand_coefficients_excess_read15 WRAPPED_NAME(radaudio_neon_expand_coefficients_excess_read15)
15#define radaudio_neon_compute_band_energy_multiple4 WRAPPED_NAME(radaudio_neon_compute_band_energy_multiple4)
16#define radaudio_neon_compute_subband_energy_skip12_excess_read7 WRAPPED_NAME(radaudio_neon_compute_subband_energy_skip12_excess_read7)
17#define radaudio_neon_compute_windowed_sum_multiple8 WRAPPED_NAME(radaudio_neon_compute_windowed_sum_multiple8)
18#define radaudio_neon_unpack_nibbles_read_sentinel16_write_multiple32 WRAPPED_NAME(radaudio_neon_unpack_nibbles_read_sentinel16_write_multiple32)
19#define radaudio_neon_count_set_bits_read_multiple8_sentinel8 WRAPPED_NAME(radaudio_neon_count_set_bits_read_multiple8_sentinel8)
20#define radaudio_neon_save_samples WRAPPED_NAME(radaudio_neon_save_samples)
21#define radaudio_neon_dequantize_long_block_replace_0_with_random_8x8_Nx16 WRAPPED_NAME(radaudio_neon_dequantize_long_block_replace_0_with_random_8x8_Nx16)
22#define radaudio_neon_dequantize_short_block WRAPPED_NAME(radaudio_neon_dequantize_short_block)
23#define radaudio_neon_distribute_bitflag_coefficients_multiple16 WRAPPED_NAME(radaudio_neon_distribute_bitflag_coefficients_multiple16)
24#define radaudio_neon_count_bytes_below_value_sentinel16 WRAPPED_NAME(radaudio_neon_count_bytes_below_value_sentinel16)
25#endif
26
28extern void radaudio_neon_compute_band_energy_multiple4(F32 *band_energy, int num_bands, int band_exponent[], U16 fine_energy[], F32 band_scale_decode[]);
29extern void radaudio_neon_compute_subband_energy_skip12_excess_read7(F32 *subband_energy, const F32 *band_energy, int num_bands, int *num_subbands_for_band, U16 *quantized_subbands);
30extern void radaudio_neon_compute_windowed_sum_multiple8(float *output, int n, const float *fwd_data, const S16 *rev_data, float rev_scale, const float *window);
33extern float radaudio_neon_save_samples(S16 *buffer, const float *data, int num);
35extern void radaudio_neon_dequantize_short_block(float *coeffs, S8 *quantized_coeff, float *band_energy, int num_bands, int *num_coeffs_for_band);
38
39#ifdef __cplusplus
40}
41#endif
42
43#endif
RAD_S16 S16
Definition egttypes.h:486
RAD_S8 S8
Definition egttypes.h:476
RAD_U32 U32
Definition egttypes.h:501
RAD_U8 U8
Definition egttypes.h:481
S32 rrbool
Definition egttypes.h:536
RAD_U64 U64
Definition egttypes.h:511
RAD_F32 F32
Definition egttypes.h:516
RAD_U16 U16
Definition egttypes.h:491
UE_FORCEINLINE_HINT TSharedRef< CastToType, Mode > StaticCastSharedRef(TSharedRef< CastFromType, Mode > const &InSharedRef)
Definition SharedPointer.h:127
int radaudio_neon_count_bytes_below_value_sentinel16(U8 *data, int num_bytes, U8 threshold)
void radaudio_neon_unpack_nibbles_read_sentinel16_write_multiple32(S8 *unpacked, U8 *packed, int num_packed, U64 default_nibbles)
void radaudio_neon_compute_band_energy_multiple4(F32 *band_energy, int num_bands, int band_exponent[], U16 fine_energy[], F32 band_scale_decode[])
int radaudio_neon_count_set_bits_read_multiple8_sentinel8(U8 *data, int num_bytes)
void radaudio_neon_compute_windowed_sum_multiple8(float *output, int n, const float *fwd_data, const S16 *rev_data, float rev_scale, const float *window)
void radaudio_neon_dequantize_long_block_replace_0_with_random_8x8_Nx16(F32 *coeffs, S8 *quantized_coeff, F32 *subband_energy, int num_subbands, U32 rand_state[4])
void radaudio_neon_dequantize_short_block(float *coeffs, S8 *quantized_coeff, float *band_energy, int num_bands, int *num_coeffs_for_band)
void radaudio_neon_distribute_bitflag_coefficients_multiple16(S8 *quantized_coeff, int num_coeff, U8 *nonzero_flagbits, S8 *nonzero_coeffs, int *pcur_nonzero_coeffs)
float radaudio_neon_save_samples(S16 *buffer, const float *data, int num)
void radaudio_neon_compute_subband_energy_skip12_excess_read7(F32 *subband_energy, const F32 *band_energy, int num_bands, int *num_subbands_for_band, U16 *quantized_subbands)
rrbool radaudio_neon_expand_coefficients_excess_read15(S8 *nonzero_coefficients, int num_nonzero, S8 *big_coeff, S8 *big_limit)