Потоковая передача аудиофайлов с бэкенда 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 или там требуется другой подход?

Вернуться на верх