Sagittarius32
V2EX  ›  FFmpeg

如题,想问问 ffmpeg 能不能暂停正在进行的程序,然后关闭程序后,下次打开再继续上一次的进度

By Sagittarius32 at 2020 年 3 月 10 日 · 5484 次点击

问题起因是想下载 hls 流的视频,但视频时间太长,不一定能一次性下载完,所以萌生这个想法,但网上搜索资料后无果。 最主要是停止了程序之后,视频就直接成型了,再重新启动,又得重头再来~~尴尬

在此感谢路过的回答者~

{Sagittarius}

12 条回复  •  2020-03-11 18:26:09 +08:00
ZavierXu
   1
ZavierXu  
   2020 年 3 月 10 日
试试 Ctrl+Z 和 fg
lxk11153
   2
lxk11153  
   2020 年 3 月 10 日   ❤️ 1
按 q 退出完成已下载视频的保存,然后下次使用 -ss 调到指定时间
https://stackoverflow.com/a/57380683/10298463

ps: 没特殊要求可以使用 ts 格式保存文件呀,防止程序不正常退出导致已下载的无效 see /t/617970
KyonLi
   3
KyonLi  
   2020 年 3 月 10 日   ❤️ 1
HLS 是 live stream,这个需求就相当于无服务端支持实现任意时间点的直播回放
crella
   4
crella  
   2020 年 3 月 10 日 via Android   ❤️ 1
hls 应该只是解析 m3u8 并下载、合并吧

我自己都写了个简单下载 m3u8 的工具。不难,gayhub 上一大堆。不需要依赖 ffmpeg
Rheinmetal
   5
Rheinmetal  
   2020 年 3 月 10 日   ❤️ 1
用支持断点续传的 m3u8 工具
Sagittarius32
   6
Sagittarius32  
OP
   2020 年 3 月 10 日
@lxk11153 是 m3u8 输出保存成 ts 文件吗?然后再合并转 MP4 ?不过命令出错,能写个范例不?~下载中途退出保存已下载的视频,下次再指定时间也不是不可以,我也想过,这也只好是折中办法,最后还要把视频合并在一起。谢谢你的回答啦~
@crella 嗯,我找找看,或者大佬来个推荐哈哈?
@Rheinmetal 这个没怎么了解过哎,有什么类似工具么??我看到有些人用 idm,不过不知道符不符合我的问题,因为没用过,只好实践一下了
crella
   7
crella  
   2020 年 3 月 10 日
@Sagittarius32 你解析好 m3u8 文件,生成全部的文件连接,然后用 aria2 或者 curl 断点续传就可以啦。

比如 aria2,没下完而退出下载的文件,会出现同名.aria2 文件。检查是否存在同名的 ts 和同名的 aria2,即可判断三种状态:文件成功下载、文件暂停下载、文件未开始下载

我是菜鸟,如有错误敬请谅解。
crella
   8
crella  
   2020 年 3 月 10 日
不过 m3u8 的那个格式有点难搞,以下情况都有

文件名.ts
/dir1/dir2/hls/文件名.ts
www.net.com/dir1/hls/文件名.ts

我也不能自动识别上述三个情况; github 上那些工具应该“智能”一点
Rheinmetal
   9
Rheinmetal  
   2020 年 3 月 11 日 via Android
IDM you-get 之类的工具的好处是可以自动解析部分站点(优酷 b 站等等
支持断点续传
问题是碰到不能解析的就很难受 就得自己搞了
如果能覆盖你的需求的话用起来很舒服
Rheinmetal
   10
Rheinmetal  
   2020 年 3 月 11 日 via Android
遇到不支持的站
idm 只能提需求了 you-get 之类开源工具可以自己上手写提取模块
lxk11153
   11
lxk11153  
   2020 年 3 月 11 日
@Sagittarius32 #6 没特殊要求不用转 mp4 呀,ts 文件就可以了,播放器支持的呀

ps: 还是找 m3u8 多线程断点续传的下载器为妙,比如
Windows 下 https://github.com/nilaoda/N_m3u8DL-CLI
Python 下 https://github.com/tosobright/m3u8-Downloader
Java 下 https://github.com/Jay-Goo/M3U8Downloader
Sagittarius32
   12
Sagittarius32  
OP
   2020 年 3 月 11 日
@lxk11153 对哎,ts 直接播放
@crella
@Rheinmetal

已经用了一个比较笨的方法解决了,直接用了迅雷批量下载 ts 文件。主要懒得再下载其他工具,打算用电脑手头上的软件来解决。有空再研究研究大家说的软件和方法。再次感谢三位的回复啦~

此回复顺便用作结帖~
© 2026 V2EX · 28ms · 3.9.8.5