Потоковая передача аудиофайлов с бэкенда Django на фронтенд Vue.js
В настоящее время я создаю звуковую панель для нашей сессии Pen and Paper, и я загружаю звуки как статический источник из моего бэкенда Django, как new Audio(data.url)
. Я просто использую Django Rest Framework для обработки всех данных о файлах, таких как загрузка и доступ к звуковым файлам:
class File(models.Model):
file = models.FileField(upload_to='sound-files')
filename = models.CharField(max_length=100)
looped = models.BooleanField()
type = models.CharField(
max_length=16,
choices=[('bgm', 'background music'), ('sfx', 'sound effects')],
default="bgm"
)
Но начальное время загрузки для клиентов может быть долгим, так как ему нужно загрузить, например, большой звуковой файл длительностью 1 час, поэтому я хочу передавать звук в потоковом режиме, а не загружать его как src.
Как я могу реализовать это в Django? Нужно ли мне использовать другой модуль поверх DRF или полностью заменить DRF? И могу ли я сохранить инстанцирование new Audio() во Frontend или там требуется другой подход?