所以这里我们有一个 Python 脚本:
""" Record a few seconds of audio and save to a WAVE file. """
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()
# write data to WAVE file
data = ''.join(all)
wf = wave.open(WAVE_OUTPUT_FILENAME, 'wb')
wf.setnchannels(CHANNELS)
wf.setsampwidth(p.get_sample_size(FORMAT))
wf.setframerate(RATE)
wf.writeframes(data)
wf.close()
这个脚本执行第一条评论行所说的,如果你在终端中运行它,它将在你在执行时设置的路径中输出一个“.wav”文件......我想做的是得到该文件并“操纵”它,而不是将其输出到计算机,我想将它存储在一个变量或类似的东西中,然后我想将它发布到一个解析一些参数的URL......我看到了一些使用requests发布多部分编码文件的有趣示例,如您在此处看到的:
但是我做了几次尝试来实现我在这个问题中描述的内容,但我很不幸......也许一些指导会对此有所帮助:)
简而言之,我需要的是从麦克风记录一个 WAV 文件,然后将其发布到一个 URL(解析数据,如标题),然后在终端中以打印语句或类似的方式获取输出......
谢谢你!!