Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/343.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何将双声道音频转换为单声道音频_Python_Audio - Fatal编程技术网

Python 如何将双声道音频转换为单声道音频

Python 如何将双声道音频转换为单声道音频,python,audio,Python,Audio,我正在用python进行一些音频处理。现在我有一个2倍(大数字)的numpy阵列的音频。我想合并频道,因为我只想尝试一些简单的东西。我只是不确定我应该如何从数学上做到这一点。起初,我认为这有点像将RGB图像转换为灰度,在这里平均每个颜色通道以创建一个灰色像素。然后我想也许我应该加上它们,因为波的叠加原理(然后平均值只是加和除以2)。有人知道最好的方法吗?我使用Matlab处理这个问题。python也可以这样做。(左声道+右声道)/2.0要将任何立体声音频转换为单声道,我一直看到的是: 对于每对左

我正在用python进行一些音频处理。现在我有一个2倍(大数字)的numpy阵列的音频。我想合并频道,因为我只想尝试一些简单的东西。我只是不确定我应该如何从数学上做到这一点。起初,我认为这有点像将RGB图像转换为灰度,在这里平均每个颜色通道以创建一个灰色像素。然后我想也许我应该加上它们,因为波的叠加原理(然后平均值只是加和除以2)。有人知道最好的方法吗?

我使用Matlab处理这个问题。python也可以这样做。(左声道+右声道)/2.0

要将任何立体声音频转换为单声道,我一直看到的是:

对于每对左右样本:

  • 以不会溢出的方式将样本值相加
  • 将结果值除以二
  • 将此结果值用作单声道中的示例-如果要将其从浮点值转换为整数值,请确保正确舍入

  • 我要做的是从左通道和右通道中获取样本,将它们相加,将结果除以2,然后将其保存为mono sample值,确保以不可能溢出的方式进行操作,并正确舍入。这就是我所看到的任何音频程序通常都是这样做的。好吧,很好,只是要确定一下。我以前从未使用过音频。如果你把它作为一个答案,我会接受它。