У меня есть камера, которая захватывает видео, и затем я использую FFMPEG, чтобы сегментировать эти видео для потоковой передачи по HTTP и генерировать файл m3u8 и соответствующие им файлы ts
У меня есть все файлы * .ts и *.Файлы m3u8 созданы в моей локальной папке, и я хотел бы передать эти файлы клиенту, используя API
. Я создал приложение Flask в Python
Flask API.
@app.route('/videos/<file_name>')
def live_stream(file_name):
return send_from_directory("D:\\public", file_name)
HTML-код
<html>
<body>
<video width="400" controls>
<source src="http://127.0.0.1:5000/videos/toystory.m3u8" type="video/mp4">
</video>
</body>
</html>
Пример файла m3u8.Как видите, тега End нет, поскольку я продолжаю добавлять новые ts-файлы в этот файл m3u8 для поддержки потоковой передачи
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:64
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:64.397667,
toystory0.ts
Пара проблем, которые у меня возникли:
- Есть ли библиотека Python, которую я могу использовать, которая предоставляет мне способ обслуживать поток HLS из файлов, хранящихся на диске
- Несмотря на то, что файл передается в соответствии с моим выводом Fiddler, я не вижу видео набраузер