Javascript 如何合并两个通道的原始pcm数据?
我有两个Javascript 如何合并两个通道的原始pcm数据?,javascript,audio,ffmpeg,pcm,typed-arrays,Javascript,Audio,Ffmpeg,Pcm,Typed Arrays,我有两个Float32Arrays,其中包含左右声道的原始pcm数据。是否可以创建一个组合两个通道的Float32Array?如果是的话,我会怎么做?我可以简单地连接数组吗 干杯 要将两个PCM文件(右通道和左通道)合并为一个,您需要将它们交错: (L,1),(R,1),(L,2),(R,2),…,(L,n),(R,n) 代码如下所示: const interleavedChannelData = new Float32Array(leftChannelData.length + rightCh
Float32Array
s,其中包含左右声道的原始pcm数据。是否可以创建一个组合两个通道的Float32Array
?如果是的话,我会怎么做?我可以简单地连接数组吗
干杯 要将两个PCM文件(右通道和左通道)合并为一个,您需要将它们交错:
(L,1),(R,1),(L,2),(R,2),…,(L,n),(R,n)
代码如下所示:
const interleavedChannelData = new Float32Array(leftChannelData.length + rightChannelData.length);
for (let i = 0; i < interleavedChannelData.length; i += 1) {
if (i % 2 === 0) {
interleavedChannelData[i] = leftChannelData[i / 2];
} else {
interleavedChannelData[i] = rightChannelData[(i - 1) / 2];
}
}
const interleavedChannelData=new Float32Array(leftChannelData.length+righchanneldata.length);
对于(设i=0;i
您打算使用ffmpeg API还是CLI?@Gyan我正在使用节点fluent ffmpeg
库(它只允许一个流作为输入,这就是为什么我想将pcm数据合并到一个文件中的原因)