瀏覽代碼

Fix distorted sound with PulseAudio and uneven channels

Marcelo Fernandez 6 年之前
父節點
當前提交
dbf7cad04f
共有 1 個文件被更改,包括 3 次插入3 次删除
  1. 3 3
      drivers/pulseaudio/audio_driver_pulseaudio.cpp

+ 3 - 3
drivers/pulseaudio/audio_driver_pulseaudio.cpp

@@ -346,9 +346,9 @@ void AudioDriverPulseAudio::thread_func(void *p_udata) {
 						for (int j = 0; j < ad->pa_map.channels - 1; j++) {
 							ad->samples_out.write[out_idx++] = ad->samples_in[in_idx++] >> 16;
 						}
-						uint32_t l = ad->samples_in[in_idx++];
-						uint32_t r = ad->samples_in[in_idx++];
-						ad->samples_out.write[out_idx++] = ((l >> 1) + (r >> 1)) >> 16;
+						uint32_t l = ad->samples_in[in_idx++] >> 16;
+						uint32_t r = ad->samples_in[in_idx++] >> 16;
+						ad->samples_out.write[out_idx++] = (l + r) / 2;
 					}
 				}
 			}