当我尝试(学习)pyaudio 模块时,我在 Ubuntu 16.04 LTS 上使用 Python 2.7.12。我必须提到从麦克风录制音频时需要哪种类型的格式。我想知道两者之间的区别
papaInt32,paInt16,paInt24,paFloat32,paInt8,paUInt8
以及何时使用每种格式。我正在尝试(学习)来自 Python pyaudio.PyAudio Examples 的 pyaudio 。
最佳答案
PortAudio 支持多种示例格式的音频输入和输出:8、16、24 和 32 位整数格式以及 32 位浮点,无论 native 音频 API 支持何种格式。
用于指定一种或多种示例格式的类型。每个值表示传入和传出流回调 Pa_ReadStream 和 Pa_WriteStream 的声音数据的可能格式。
标准格式 paFloat32、paInt16、paInt32、paInt24、paInt8 和 aUInt8 通常由所有实现实现。
浮点表示(paFloat32)分别使用+1.0和-1.0作为最大值和最小值。
paUInt8 是一种无符号 8 位格式,其中 128 被视为“地面”
paNonInterleaved 标志表示音频数据作为指针数组传递到单独的缓冲区,每个 channel 一个缓冲区。通常,当不使用此标志时,音频数据将作为所有 channel 交错的单个缓冲区传递。
如果您使用 Float32,那么代码应该没问题。如果你 正在使用 paInt32 (或 24/16/8),那么您需要确保转换回 执行乘法后的 int (或短整型、字符等)
关于python - paInt32、paInt16、paInt24、paFloat32 等之间的区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43068268/