ffmpeg将视频分割为hls切片,为什么hls_time选项不起作用?

时间:2019-07-06 14:32:16

标签: ffmpeg http-live-streaming

macbook:output developer$ ffmpeg -i ../output.mp4 -f hls -hls_time 1 -hls_list_size 1000000 index.m3u8
macbook:output developer$ 
macbook:output developer$ head index.m3u8 
#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:8
#EXT-X-MEDIA-SEQUENCE:0
#EXTINF:3.136467,
index0.ts
#EXTINF:8.341667,
index1.ts
#EXTINF:8.341667,
index2.ts
macbook:output developer$

我希望视频片段的长度在1秒钟左右,但是我得到的所有TARGETDURATION: 8您是否注意到,它来自哪里?我没有设置8之类的东西,令人困惑...谢谢

1 个答案:

答案 0 :(得分:0)

段将在关键帧处剪切,因此除非每秒存在关键帧,否则hls_time将不会兑现。添加-force_key_frames expr:gte(t,n_forced*1)以在每秒开始时添加关键帧。