繁体   English   中英

如何在 Python 中创建 multichannel.WAV 文件?

[英]How to create multichannel .WAV file in Python?

.WAV 格式看起来应该允许两个以上的频道( nChannels )。

但不幸scipy.io.wavfile只写了 1 或 2。

我真的不想手动编写自己的 Python WAV 编写器,但我找不到任何东西。

是否有任何代码可以完成这项工作?

事实证明scipy.io.wavfile的文档不正确。

查看源代码,我可以清楚地看到它接受任意数量的通道。

以下代码有效:

import numpy as np
from scipy.io import wavfile

fs = 48000
nsamps = fs * 10

A, Csharp, E, G = 440.0, 554.365, 660.0, 783.991

def sine(freqHz):
    τ = 2 * np.pi
    return np.sin( 
        np.linspace(0,  τ * freqHz * nsamps / fs,  nsamps,  endpoint=False)
    )

A7_chord = np.array( [ sine(A), sine(Csharp), sine(E), sine(G) ] ).T

wavfile.write("A7--4channel.wav", fs, A7_chord)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM