Я пытаюсь записать поток rtsp, используя следующую команду в формате .m3u8
.ffmpeg hls запись длительности является float вместо integer
~/bin/ffmpeg -r 15 -i rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov -codec copy -hls_list_size 65535 -hls_time 2 -g 2 "./1/live.m3u8"
выше работает нормально с более старой версией FFmpeg (< 3.0) и содержание m3u8 файла как,
live.m3u8 со старым FFmpeg
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:2
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:2,
live0.ts
#EXTINF:2,
live1.ts
#EXTINF:2,
live2.ts
#EXTINF:0,
live3.ts
#EXT-X-ENDLIST
Примечания продолжительность является целым числом.
Но когда я строить новые ffmpeg3.0 и запустить ту же команду, длительность меняется на ФЛОТ некоторых вещей, как,
live.m3u8 с новым ffmpeg3.0
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:4
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:2.000000,
live0.ts
#EXTINF:2.000000,
live1.ts
#EXTINF:2.000000,
live2.ts
#EXTINF:2.000000,
live3.ts
#EXTINF:2.000000,
live4.ts
#EXTINF:3.875000,
live5.ts
#EXT-X-ENDLIST
I необходимо создать файл ts
с длительностью как целочисленную переменную с ffmpeg 3.0.
Почему это происходит в ffmpeg 3.0, где он отлично работает в старой версии ?.
Таким образом, используя ffmpeg 3.0, я могу использовать HLS 2 или ранее. – Haris
@Haris Я не вижу никакого варианта. В любом случае, не следует иметь в виду, как оба примера используют версию 3 – aergistal