mirror of
https://github.com/FFmpeg/FFmpeg.git
synced 2024-12-23 12:43:46 +02:00
Merge commit 'fc6a3ef40d34ce8443ae57c2452f3f273d7d4891'
* commit 'fc6a3ef40d34ce8443ae57c2452f3f273d7d4891': audio_mix: fix zeroing output channels in certain cases Merged-by: Michael Niedermayer <michaelni@gmx.at>
This commit is contained in:
commit
4b8bc6d2b0
@ -559,9 +559,12 @@ static void reduce_matrix(AudioMix *am, const double *matrix, int stride)
|
||||
if (zero) {
|
||||
am->output_zero[o] = 1;
|
||||
am->out_matrix_channels--;
|
||||
if (o < am->in_channels)
|
||||
am->in_matrix_channels--;
|
||||
}
|
||||
}
|
||||
if (am->out_matrix_channels == 0) {
|
||||
if (am->out_matrix_channels == 0 || am->in_matrix_channels == 0) {
|
||||
am->out_matrix_channels = 0;
|
||||
am->in_matrix_channels = 0;
|
||||
return;
|
||||
}
|
||||
@ -683,7 +686,7 @@ int ff_audio_mix_set_matrix(AudioMix *am, const double *matrix, int stride)
|
||||
am->in_matrix_channels; \
|
||||
for (i = 0, i0 = 0; i < am->in_channels; i++) { \
|
||||
double v; \
|
||||
if (am->input_skip[i]) \
|
||||
if (am->input_skip[i] || am->output_zero[i]) \
|
||||
continue; \
|
||||
v = matrix[o * stride + i]; \
|
||||
am->matrix_## type[o0][i0] = expr; \
|
||||
|
Loading…
Reference in New Issue
Block a user