В проекте над которым сейчас работаю необходимо проводить манипуляции с загруженными файлами используя FFMPEG.
В модели 4 поля FileField (в реальности по-другому, но объяснить можно и на этом примере):
file1 = models.FileField(...)
file2= models.FileField(...)
file3 = models.FileField(...)
out_file = models.FileField(...)
При создании объекта модели загружаются первые 3 файла, а при её сохранении вызывается селери-таск, в котором вызывается баш-скрипт где с помощью ffmpeg эти три файла склеиваются в один.
В текущем варианте результат сохраняется файлом в /tmp/, а дальше подгружается в модель, удаляясь из /tmp/
Мне кажется, это нерационально по наргузке на HDD/SSD, и если направить вывод ffmpeg в память, то работать будет быстрее.
Итоговый вопрос
Имеет ли смысл перенаправлять вывод ffmpeg в память, а затем сохранять в FileField модели?
Если да, то как это сделать?
P.s.
По отдельности я знаю как в FileField грузить из памяти BytesIO, и представляю как отправить вывод ffmpeg в память. Но не могу совместить все вместе.