pydub如何从内存中加载视频数据

how pydub loads video data from memory

我有一个从 http 上传的 aac 文件 request.How 我可以将它转换成 wav 文件而不先写入磁盘上的 aac 文件吗?

这是我的代码:

        with open(filepath, 'wb') as up:
            up.write(file_metas[0]['body'])

        cf = AudioSegment.from_file(filepath)
        cf.export(wav_filepath, format="wav")

如何在不将 file_metas[0]['body'] 写入文件的情况下获取 cf。

我找到了一个解决方案myself.I可以使用cStringIO模型。它是一个与文件具有相同接口的对象,但它的数据在内存中。

    output = cStringIO.StringIO()
    output.write(file_metas[0]['body'])
    output.seek(0)
    cf = AudioSegment.from_file(output)
    cf.export(wav_filepath, format="wav")