PavelDuk
@PavelDuk
Python Dev

Как стримить MP3 используя Django?

Парни, если кто сталкивался - поделитесь опытом.
Не могу разобраться как используя класс Django StreamingHttpResponse отдавать файл на обработку в шаблон.

Допустим есть вот такая вьюха:

import os
import mimetypes
from django.http import StreamingHttpResponse
from django.core.servers.basehttp import FileWrapper


def mp3(request):
   the_file = '/some/file/song.mp3'
   filename = os.path.basename(the_file)
   chunk_size = 8192
   response = StreamingHttpResponse(FileWrapper(open(the_file, 'rb'), chunk_size),
                           content_type=mimetypes.guess_type(the_file)[0])
   response['Content-Length'] = os.path.getsize(the_file)    
   response['Content-Disposition'] = "attachment; filename=%s" % filename
   return response


Каким образом это "извлекается" на стороне django шаблона?
Каким образом сложить в response несколько файлов?
Есть ли возможность эти файлы проитерировать на стороне шаблона?
Возможно есть другой способ?
Поделитесь опытом!
-------------------
Я понимаю, что использовать Django для стримминга - не лучший вариант - но других вариантов у меня нет - нужно делать на Джанге.
-------------------
Возможно у вас есть хоть какой-нибудь рабочий пример?
  • Вопрос задан
  • 121 просмотр
Решения вопроса 3
DevMan
@DevMan
при чем тут вообще джанга?
ну отдай ты джангой плеер с нужным плейлистом (плейлист можно генерить джангой), а дальше вообще стримь сервером напрямую.
зачем пытаться скрестить кобылу с телегой?
Ответ написан
Stalker_RED
@Stalker_RED
Есть куча софта для стриминга, причем значительная часть этого всего счастья - бесплатно.
Есть даже какой-то, который дружит с питоном.

Джанга вообще не про это. Если какие-то люди прям заставляют тебя делать это на джанге - беги от них.
Ответ написан
PavelDuk
@PavelDuk Автор вопроса
Python Dev
После всех советов - вот самое дееспособное в моем случае решение. Спасибо, парни!
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы