小编Iñi*_*eva的帖子

加入 .wav 文件而无需在 Python 中写入磁盘

我有一个二进制格式的 .wav 文件列表(它们来自 websocket),我想将其加入单个二进制 .wav 文件中,然后用它进行语音识别。我已经能够使用以下代码使其工作:

audio = [binary_wav1, binary_wav2,..., binary_wavN] # a list of .wav binary files coming from a socket
audio = [io.BytesIO(x) for x in audio]

# Join wav files
with wave.open('/tmp/input.wav', 'wb') as temp_input:
    params_set = False
    for audio_file in audio:
        with wave.open(audio_file, 'rb') as w:
            if not params_set:
                temp_input.setparams(w.getparams())
                params_set = True
            temp_input.writeframes(w.readframes(w.getnframes()))

# Do speech recognition
binary_audio = open('/tmp/input.wav', 'rb').read())
ASR(binary_audio)
Run Code Online (Sandbox Code Playgroud)

问题是我不想将文件写入'/tmp/input.wav'磁盘。有没有办法在不向磁盘写入任何文件的情况下做到这一点?

谢谢。

python wave python-3.x

5
推荐指数
2
解决办法
1887
查看次数

标签 统计

python ×1

python-3.x ×1

wave ×1