У меня есть этот код в PyAudio в Python:
pa = pyaudio.PyAudio()
s = pa.open(
input=True,
format=pyaudio.paFloat32,
channels=1,
rate=48000,
frames_per_buffer=24000,
)
s.start_stream()
Затем я читаю данные из потока:
data = s.read(FRAMES_PER_BUFFER, exception_on_overflow=False)
x = np.frombuffer(in_data, dtype=np.float32)
Когда я печатаю x, я получаю числа, близкие к 0.
В реагировать на родной язык, я использую «response-native-audio-record» и хочу получить те же значения с теми же настройками записи. Поэтому я использую следующие настройки:
const options = {
sampleRate: this.srMic, // default 44100
channels: this.micChannels, // 1 or 2, default 1
bitsPerSample: 16,
audioSource: 6, // android only (see below)
};
AudioRecord.init(options);
И затем начинаю запись:
AudioRecord.start();
AudioRecord.on('data', (data) => {
// Base64-encoded audio data chunks
chunk = Buffer.from(data, 'base64');
console.log(chunk);
});
Но этот вывод на консоль сильно отличается от того, что у PyAudio, и находится в диапазоне с 7 до 10.
Знаете почему? Любая помощь приветствуется! Спасибо.