Video HLS m3u8视频中的ffmpeg搜索

Video HLS m3u8视频中的ffmpeg搜索,video,ffmpeg,Video,Ffmpeg,我在m3u8 hls视频中查找时遇到问题。 m3u8有9-10秒的ts片段,每个片段前面都有#exef:, 整个视频长达5小时,我正在尝试从3:10:00到3:45:00这样的剪辑: ffmpeg -ss 3:10:00 -i 'http://example.com/v/vod.m3u8' -t 0:35:00 -c:v copy -bsf:a aac_adtstoasc out.mp4 当我执行时,它只是永远等待。我在Windows和Linux上都试用了最新和旧版本的FFmpeg。我昨天等了

我在m3u8 hls视频中查找时遇到问题。
m3u8有9-10秒的ts片段,每个片段前面都有
#exef:,

整个视频长达5小时,我正在尝试从
3:10:00
3:45:00
这样的剪辑:

ffmpeg -ss 3:10:00 -i 'http://example.com/v/vod.m3u8' -t 0:35:00 -c:v copy -bsf:a aac_adtstoasc out.mp4
当我执行时,它只是永远等待。我在Windows和Linux上都试用了最新和旧版本的FFmpeg。我昨天等了大约一个小时,它什么也没做。日志:

Input #0, hls,applehttp, from 'http://example.com/v/vod.m3u8':
  Duration: 05:25:27.08, start: 60.000000, bitrate: 0 kb/s
  Program 0
    Metadata:
      variant_bitrate : 0
    Stream #0:0: Audio: aac (LC) ([15][0][0][0] / 0x000F), 44100 Hz, stereo, fltp, 159 kb/s
    Stream #0:1: Video: h264 (High) ([27][0][0][0] / 0x001B), yuv420p, 1920x1080, 30 fps, 30 tbr, 90k tbn, 60 tbc
    Stream #0:2: Data: timed_id3 (ID3  / 0x20334449)
Output #0, mp4, to 'out.mp4':
  Metadata:
    encoder         : Lavf57.41.100
    Stream #0:0: Video: h264 ([33][0][0][0] / 0x0021), yuv420p, 1920x1080, q=2-31, 30 fps, 30 tbr, 90k tbn, 90k tbc
    Stream #0:1: Audio: aac (LC) ([64][0][0][0] / 0x0040), 44100 Hz, stereo, fltp, 128 kb/s
    Metadata:
      encoder         : Lavc57.48.101 aac
Stream mapping:
  Stream #0:1 -> #0:0 (copy)
  Stream #0:0 -> #0:1 (aac (native) -> aac (native))
Press [q] to stop, [?] for help
永远都是这样

我如何在不下载整个5h25m的情况下寻求3h10m?
-ss
似乎没什么作用

它应该走得这么慢还是m3u8损坏了?里面看起来是这样的:

#EXTM3U
#EXT-X-VERSION:3
#EXT-X-TARGETDURATION:6
#ID3-EQUIV-TDTG:2015-12-16T03:24:26
#EXT-X-PLAYLIST-TYPE:EVENT

#EXT-X-ELAPSED-SECS:0.0
#EXT-X-TOTAL-SECS:19527.08
#EXTINF:9.268,
index-00000-vdyz-0.ts
#EXTINF:10.000,
index-00001-AiD9-0.ts
(...)
它有12x
#EXT-X-不连续性
,每174个部分

当我使用VLC或任何其他播放器直接打开m3u8时,我可以毫无问题地进行搜索,而且是即时的。FFmpeg似乎没有使用相同的搜索方法,或者它被破坏了

要了解我的意思,请尝试在此m3u8上搜索:

http://vod167-ttvnw.akamaized.net/07e4ac668a/lirik_7709808752_7709808752/chunked/index-dvr.m3u8

然后尝试快速搜索(-ss输入前)到2:30:00,并导出带有
frames:v1 out的1帧。jpg

需要很长时间,因为它不会跳到所需的索引并按顺序下载所有片段。我来看看消息来源。在任何情况下,您都可以编写自己的脚本来下载所需的片段,并将它们连接起来。@Aegistal这就是我现在正在做的,但我希望ffmpeg可以做到。这已经解决了吗?@BobRoss没有,我只是试过了。它从一开始就下载视频,直到它在2:30:00到达该部分。如果我使用
-hls\u playlist\u type event
创建hls文件并使用最新的FFmpeg版本,它似乎可以正常工作。