8 const float *
left,
size_t left_elements,
size_t left_stride,
9 const float *
right,
size_t right_elements,
size_t right_stride,
10 float *output,
size_t output_elements,
size_t output_stride,
11 size_t rows,
size_t columns,
float scale)
17 left_elements < nl || right_elements < nr || output_elements < no)
19 if (!isfinite(scale) ||
26 for (
size_t row = 0; row < rows; ++row) {
27 for (
size_t column = 0; column < columns; ++column) {
28 const float a =
left[row * left_stride + column];
29 const float b =
right[row * right_stride + column];
30 const float sum = a + b;
31 if (!isfinite(a) || !isfinite(b) || !isfinite(sum) ||
32 !isfinite(sum * scale))
36 for (
size_t row = 0; row < rows; ++row)
37 for (
size_t column = 0; column < columns; ++column)
38 output[row * output_stride + column] =
39 (
left[row * left_stride + column] +
40 right[row * right_stride + column]) * scale;
int audio_scaled_sum_strided_f32_checked(const float *left, size_t left_elements, size_t left_stride, const float *right, size_t right_elements, size_t right_stride, float *output, size_t output_elements, size_t output_stride, size_t rows, size_t columns, float scale)