A class for audio mixing operations using AVX instructions.
More...
#include <isa_detection.h>
|
static void | collect_single_register (int32_t *data_in, int16_t *data_out, float current_gain, float increment) |
| Collect a single register worth of data from data_in, apply gain and increment, and store the result in data_out. This version uses x64 instructions. More...
|
|
static void | combine_samples (int32_t *up_sampled_vector, const int16_t *decoded_data) |
| Combine a register worth of elements from decoded_data and store the result in up_sampled_vector. This version uses instructions. More...
|
|
A class for audio mixing operations using AVX instructions.
◆ collect_single_register()
static void dpp::audio_mixer::collect_single_register |
( |
int32_t * |
data_in, |
|
|
int16_t * |
data_out, |
|
|
float |
current_gain, |
|
|
float |
increment |
|
) |
| |
|
inlinestatic |
Collect a single register worth of data from data_in, apply gain and increment, and store the result in data_out. This version uses x64 instructions.
- Parameters
-
data_in | Pointer to the input array of int32_t values. |
data_out | Pointer to the output array of int16_t values. |
current_gain | The gain to be applied to the elements. |
increment | The increment value to be added to each element. |
◆ combine_samples()
static void dpp::audio_mixer::combine_samples |
( |
int32_t * |
up_sampled_vector, |
|
|
const int16_t * |
decoded_data |
|
) |
| |
|
inlinestatic |
Combine a register worth of elements from decoded_data and store the result in up_sampled_vector. This version uses instructions.
- Parameters
-
up_sampled_vector | Pointer to the array of int32_t values. |
decoded_data | Pointer to the array of int16_t values. |
◆ byte_blocks_per_register
constexpr int32_t dpp::audio_mixer::byte_blocks_per_register { 2 } |
|
inlinestaticconstexpr |