我正在尝试(学习)有关pyaudio模块的Ubuntu 16.04 LTS上使用Python 2.7.12。我必须提到我需要哪种格式来录制麦克风的音频。我想知道
之间的区别papaInt32,paInt16,paInt24,paFloat32,paInt8,paUInt8
何时使用每种格式。我正在尝试(学习)来自 Python pyaudio.PyAudio Examples 的pyaudio。
答案 0 :(得分:2)
PortAudio支持各种样本格式的音频输入和输出:8,16,24和32位整数格式以及32位浮点,与本机音频API支持的格式无关。
用于指定一种或多种样本格式的类型。每个值都表示传入和传出流回调,Pa_ReadStream和Pa_WriteStream的声音数据的可能格式。
标准格式paFloat32,paInt16,paInt32,paInt24,paInt8和aUInt8通常由所有实现实现。
浮点表示(paFloat32)分别使用+1.0和-1.0作为最大值和最小值。
paUInt8是一种无符号8位格式,其中128被认为是#34;地面"
paNonInterleaved标志表示音频数据作为指向不同缓冲区的指针数组传递,每个通道有一个缓冲区。通常,当不使用此标志时,音频数据作为单个缓冲区传递,所有通道都是交错的。
如果您使用的是Float32,那么代码应该没问题。如果你 正在使用paInt32(或24/16/8),那么你需要确保回到 执行乘法后的int(或short,char等)