Я пытаюсь использовать ffmpeg с модулем подпроцесса Python для преобразования некоторых аудиофайлов. Я беру аудиофайлы из URL-адреса и хотел бы просто передать объекты файлов Python в ffmpeg вместо того, чтобы сначала сохранять их на диск. Также было бы очень хорошо, если бы я мог просто вернуть файловый поток вместо того, чтобы ffmpeg сохранял вывод в файл.
Для справки, вот чем я сейчас занимаюсь:
tmp = "/dev/shm"
audio_wav_file = requests.get(audio_url)
## ## ##
## This is what I don't want to have to do ##
wavfile = open(tmp+filename, 'wrb')
wavfile.write(audio_wav_file.content)
wavfile.close()
## ## ##
conversion = subprocess.Popen('ffmpeg -i "'+tmp+filename+'" -y "'+tmp+filename_noext+'.flac" 2>&1', shell = True, stdout = subprocess.PIPE).stdout.read()
Кто-нибудь знает, как это сделать?
Спасибо!