ffmpeg下载 m3u8 视频原来这么简单
Tofloor
poster avatar
187******69
deepin
2020-08-28 22:11
Author
一直想在 linux 下载 m3u8 的视频,想找一个现成的软件,却发现好像没有类似的东西,只好耐着性子自己找资料。这才发现为什么没有现成的工具了,因为 ffmpeg 一条命令就可以了,想要高级点的功能完全可以自己动手用 python 之类的脚本定制一个。

命令:
ffmpeg -i [这里填写 m3u8 文件的路径] -c copy [这里填写需要另存为的文件路径]
示例(网址和文件皆为虚构):
ffmpeg -i http://www.china.com/video/pla.m3u8 -c copy /home/chinese/mydl_video.mp4

当正确运行的时候你可以在系统监视器中发现 ffmpeg 的进程,当下载完成之后 ffmpeg 进程会自动退出,下载的分片文件会被整合好。如果你想让进程在后台运行,可以配合nohup命令使用,这样即使你关闭当前终端,他也可以在后台运行,完成后会自动退出。
不足的地方在于直接这样好像只能单线程下载,速度比较慢,慢慢看看怎么改进吧,先凑合着用了。


最后对于 m3u8 地址的嗅探直接交给浏览器插件就好了,推荐使用 Video DownloadHelper。。。


Reply Favorite View the author
All Replies
175******81
deepin
2020-08-28 23:11
#1
1,使用 nohup命令进入后台 并关闭了终端, 那么想查看下载进度怎么再进入呢?
2,如果m3u8是直播,比如是电视直播, 这样长度没问,怎么让它停止呢,或指定下载多长时间或多大文件的视频?
Reply View the author
nero28
deepin
2020-08-28 23:45
#2
看着很屌,我要回去试试看
Reply View the author
187******69
deepin
2020-08-29 01:10
#3
本帖最后由 sk811229 于 2020-8-28 17:15 编辑
https://bbs.deepin.org/post/200740
1,使用 nohup命令进入后台 并关闭了终端, 那么想查看下载进度怎么再进入呢?
2,如果m3u8是直播,比如是 ...

你可以在系统监视器里面查看进程,当然也可以通过命令:
ps -aux|grep ffmpeg

进度貌似还无法查看,但是你可以查看你合并的文件的大小,他是下载一个切片合并一个切片的,再说你就算不放到后台也无法直观查看进度
至于你说的那些功能 ffmpeg 恐怕没有自带(没仔细研究),如果必须要的话恐怕要自己动手写脚本了。。。

Reply View the author
q77190858
deepin
2020-08-29 02:34
#4
chrome插件自带了ffmpeg,可以自动嗅探下载转码
https://github.com/q77190858/Stream-Video-Downloader
Reply View the author
187******69
deepin
2020-08-29 02:57
#5
https://bbs.deepin.org/post/200740
chrome插件自带了ffmpeg,可以自动嗅探下载转码
https://github.com/q77190858/Stream-Video-Downloader ...

温饱已经解决,懒得弄了,等啥时候需要大量下载的时候再折腾吧^_^
Reply View the author
wenzhizhong
deepin
2020-08-29 03:43
#6
福利?[奸笑]
Reply View the author
187******69
deepin
2020-08-29 03:56
#7

老司机?
Reply View the author
wenzhizhong
deepin
2020-08-29 06:47
#8

ffmpeg -allowed_extensions ALL -i index.m3u8 -c copy new.mp4
Reply View the author
187******69
deepin
2020-08-29 15:16
#9
https://bbs.deepin.org/post/200740
ffmpeg -allowed_extensions ALL -i index.m3u8 -c copy new.mp4

你果然是老司机。。。
Reply View the author