Потоковое m4a с aiohttp
Js аудио плееры и проблема с m4a
Здравствуйте! Я пытаюсь транслировать файлы m4a с помощью python aiohttp и воспроизводить его в браузере с помощью некоторых html5-плееров, таких как audio.js, Plyr. Моя проблема в том, что он начинает играть только тогда, когда браузер получает весь файл. Нет проблем с WebM Audio, только M4A. Есть ли правильный способ сделать это?
async def stream2(request):
fp = 'm.m4a'
f = open(fp, 'rb')
size = os.path.getsize(fp)
res = web.StreamResponse(headers={'Content-type': 'audio/m4a', 'CONTENT-LENGTH': str(size)})
await res.prepare(request)
while True:
datt = f.read(1024*32)
if not datt: break
await res.write(datt)
return res
JS код:
var pl=$('<audio>').attr('src', '/audio.m4a?vid='+data.id);
pl.attr('id', 'player');
pl.attr('data-plyr-config', '{"autoplay": true}');
pl.attr('preload', 'auto');
var cont=$('#playercontainer');
cont.empty();
cont.append(pl)
1 ответ
Задача решена. Я пишу свой пользовательский http 206 частичное содержание