相关疑难解决方法(0)

PyAudio输入溢出

我正试图在python中进行实时绘图声音.我需要从麦克风上取下块.

使用PyAudio,尝试使用

import pyaudio
import wave
import sys

chunk = 1024
FORMAT = pyaudio.paInt16
CHANNELS = 1
RATE = 44100
RECORD_SECONDS = 5
WAVE_OUTPUT_FILENAME = "output.wav"

p = pyaudio.PyAudio()

stream = p.open(format = FORMAT,
                channels = CHANNELS,
                rate = RATE,
                input = True,
                frames_per_buffer = chunk)

print "* recording"
all = []
for i in range(0, RATE / chunk * RECORD_SECONDS):
    data = stream.read(chunk)
    all.append(data)
print "* done recording"

stream.close()
p.terminate()
Run Code Online (Sandbox Code Playgroud)

之后,我得到了以下错误:

* recording
Traceback (most recent call last):
  File …
Run Code Online (Sandbox Code Playgroud)

python audio pyaudio

30
推荐指数
5
解决办法
3万
查看次数

使用Python 3捕获192 kHz音频

我需要使用Python 3捕获192 kHz音频以进行一些生物声学实验.我有硬件,声音设备USBPre 2声卡,具有高达100 kHz的良好频率响应曲线的麦克风,我已启用我的操作系统(ubuntu 13.04)从这张卡以192 kHz采样.

我试过用PyAudio录音.它似乎工作,并将给我一个采样率为192 kHz的wav文件.然而,当我观察光谱时,没有超过24 kHz的功率,这表明PyAudio不是真正捕获192 kHz,而是48 kHz.但是,当我使用Audacity录制来自JACK的输入时,我得到了一个很好的录音,功率高达96kHz.所以,我的印象是PyAudio实际上并没有以192 kHz采样声音,即使它应该能够.如何解决这个问题?

我没有错误地启动JACK:

/usr/bin/jackd -R -dalsa -Chw:1,0 -n3 -o1 -p2048 -r192000

jackd 0.122.0
Copyright 2001-2009 Paul Davis, Stephane Letz, Jack O'Quinn, Torben Hohn and others.
jackd comes with ABSOLUTELY NO WARRANTY
This is free software, and you are welcome to redistribute it
under certain conditions; see the file COPYING for details

JACK compiled with System V SHM support.
loading driver ..
apparent rate = 192000
creating alsa driver ... …
Run Code Online (Sandbox Code Playgroud)

python audio jack pyaudio python-3.x

12
推荐指数
1
解决办法
1732
查看次数

Python,错误音频使用Pyaudio以16000Hz录音

我使用Python 2.7.3,Mac OS 10.8.2和Xcode 4.5.1

我试图按照http://people.csail.mit.edu/hubert/pyaudio/中的说明使用PyAudio录制声音

并使用该程序

"""PyAudio example: Record a few seconds of audio and save to a WAVE file."""

import pyaudio
import wave

CHUNK = 1024
FORMAT = pyaudio.paInt16
CHANNELS = 2
RATE = 44100
RECORD_SECONDS = 5
WAVE_OUTPUT_FILENAME = "output.wav"

p = pyaudio.PyAudio()

stream = p.open(format=FORMAT,
            channels=CHANNELS,
            rate=RATE,
            input=True,
            frames_per_buffer=CHUNK)

print("* recording")

frames = []

for i in range(0, int(RATE / CHUNK * RECORD_SECONDS)):
   data = stream.read(CHUNK)
   frames.append(data)

print("* done recording")

stream.stop_stream()
stream.close()
p.terminate()

wf …
Run Code Online (Sandbox Code Playgroud)

python pyaudio

6
推荐指数
1
解决办法
2650
查看次数

标签 统计

pyaudio ×3

python ×3

audio ×2

jack ×1

python-3.x ×1