首页 > 解决方案 > 将 WAV 文件从 python websocket 服务器发送到 JS websocket 客户端

问题描述

我在尝试解码发送到我的 Vue3 客户端的音频帧数组时遇到问题。我想这与项目的硬性要求的示例格式(24 位)有关。我尝试将音频帧数组编码为 base64 编码字符串,但在那里没有运气。任何帮助将非常感激!

这是我用于录制音频的 python 服务器代码:

async def record_audio(websocket, timeout):
    FORMAT = pyaudio.paInt24
    CHANNELS = 1
    RATE = 92000
    CHUNK = 4096
    RECORD_SECONDS = 5

    frames = []
    audio = pyaudio.PyAudio()
    stream = audio.open(format=FORMAT, channels=CHANNELS,
                        rate=RATE, input=True, frames_per_buffer=CHUNK)
    logging.info("Recording started...")

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

    stream.stop_stream()
    stream.close()
    audio.terminate()
    logging.info("Recording stopped")

    await websocket.send(frames)

标签: javascriptpythonvue.jsaudiowebsocket

解决方案


推荐阅读