import urllib2
import audiotools
file = urllib2.urlopen('http://test.com/1.mp3')
audio = audiotools.open( file ) # <- error
我可以将内存(而不是驱动器)中的文件提供给音频工具吗?或者这里有什么方法可以将 mp3 文件从 url 加载到 audiotools?无需将其保存在硬盘上。
这似乎是音频工具的一个限制,而不是一个简单的解决方法。参见例如 MP3Audio 类 ( https://github.com/tuffy/python-audio-tools/blob/master/audiotools/mp3.py )。文件名一直向下传递,通过库的多个层。所以它几乎必须是一个真正的文件名(即可以open()
'd.
如果您迫切需要解决方案,唯一想到的就是制作一个没有磁盘支持的文件。例如,/dev/shm
它是许多 Linux 系统上的挂载点,它不引用真实磁盘,而仅引用内存。因此,您可以将音频文件写入/dev/shm/foo.mp3
然后告诉 audiotools 打开它。