FFmpeg 是一个开源软件,可以执行音频和视频多种格式的录影、转换、串流功能,包含了libavcodec——这是一个用于多个项目中音频和视频的解码器库,以及libavformat——一个音频与视频格式转换库。
反正FFmpeg很强大的,功能也很多。这篇文章,主要介绍下载m3u8视频。
之前有两篇文章介绍了下载视频的工具,即:
you-get 和 youtube-dl 这两差不多,youtube-dl 能下载包括油管视频在内的不少视频了。这两都是一款采用Python 编写的免费、开源、命令行程序,主要是用来下载视频的。而且也都用到了FFmpeg的功能,所以都已经安装了。
一、下载FFmpeg
1.下载FFmpeg
官网就可以下载 FFmpeg:(http://ffmpeg.org/download.html )
Windows系统的话,选择【Windows EXE Files】->【Windows builds from gyan.dev】。
页面上的都可以下载,比如我这直接下载【release builds】中的 ffmpeg-release-essentials.7z,目前最新的版本。如下图所示:
2.添加到环境变量
下载后是个压缩包,直接解压出来。比如我这解压出来是个 ffmpeg-5.0.1-essentials_build 目录,然后直接把这个目录下的bin目录添加到系统环境变量就行。(怎么添加环境变量,百度一下就有)
因为bin目录下有 ffmpeg.exe 可执行程序,我们在命令行里用 ffmpeg命令时,用的就是这个。
二、下载m3u8格式视频
比如,有如下视频想要下载:
https://www.zxx.edu.cn/syncClassroom/classActivity?activityId=4cb86b98-b253-4884-b015-fe674f1c0c8a
用别的插件一看就能看到是m3u8的。
这个站点的,先试了下,用 VLC media player 这个播放器软件也可以下载,以前碰到过m3u8格式的无法用这个下载的。
如果你没装ffmpeg的话,也可以搜一下“VLC media player 下载m3u8视频方式”,这个也简单的。
不管是用VLC media player 下载,还是用ffmpeg下载,首先都需要找到这个视频的m3u8的地址。
1.找到视频对应的m3u8地址
1).直接用浏览器F12开发者工具找m3u8地址
这个不管Chrome浏览器,还是Edge、Firefox这些基本上所有浏览器都有了。操作如下:
- 按F12打开浏览器的开发者工具,选择【网络】项;
- 在【Name】中找到.m3u8后单击(按Name排序一下,很容易找到的);
- 复制右侧的【请求网址】,网址最后应该都是 .m3u8。
比如我复制出来为:
1 | https://r1-ndr.ykt.cbern.com.cn/edu_product/65/video/17b9d867547a11eb96b8fa20200c3759/e6d5486a49d609bfca30e0f3a328f031.1280.720.false/e6d5486a49d609bfca30e0f3a328f031.1280.720.m3u8 |
2).直接用浏览器插件找m3u8地址
比如这里直接用“猫抓”的插件:
- 播放视频,点击猫抓插件;
- 直接复制最上面的m3u8地址。
复制出来和上面的方法是一样的。
2.用ffmpeg下载m3u8视频
添加好环境变量后,直接打开个命令提示符/Windows PowerShell,就可以用ffmpeg了。
输入命令如下:
1 | ffmpeg -i 你要下载的m3u8地址 -c copy -bsf:a aac_adtstoasc ./保存视频的名字.mp4 |
比如我要下载上面的视频,就输入以下命令后,回车:
1 | ffmpeg -i https://r1-ndr.ykt.cbern.com.cn/edu_product/65/video/17b9d867547a11eb96b8fa20200c3759/e6d5486a49d609bfca30e0f3a328f031.1280.720.false/e6d5486a49d609bfca30e0f3a328f031.1280.720.m3u8 -c copy -bsf:a aac_adtstoasc ./1234.mp4 |
等完成后,这个目录下就有了下载好的名为 1234.mp4的视频了。
- 本文标题:用FFmpeg下载m3u8格式视频
- 本文作者:HDUZN
- 创建时间:2022-05-03 20:55:00
- 本文链接:http://hduzn.cn/2022/05/03/用ffmpeg下载m3u8格式视频/
- 版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!