很多人下载网络视频时,得到的不是常见的 MP4 文件,而是 .m3u8 播放列表文件。这种文件本质上是HLS(HTTP Live Streaming)视频切片索引,需要先把里面的 .ts 片段下载,再合并成 MP4,才能在播放器/手机/电视/剪辑软件里播放。今天整理了 7 种可批量转换的方法。
方法一:FFmpeg 批量转换(跨平台、操作难度大)
适用:熟悉命令行、追求速度和可控性。
优点:支持直接读取 .m3u8 链接并输出 MP4,无需先下载所有切片文件。
单个文件转换
-c copy 表示直接拷贝流,不重新编码,速度快且无损。
批量转换将多个 .m3u8 链接写入一个 list.txt 文件,每行一个链接,然后执行:
提示:如果 m3u8 链接过期,可先用浏览器开发者工具获取最新地址。
方法二:转换猫mp3转换器(专门的 m3u8 下载合并工具)
适用:不想自己拼命令行参数的小白用户。
优点:自动解析 .m3u8,多线程下载 .ts 切片并合并成 MP4。
1)启动转换猫mp3转换器app,点击软件主界面的超级转换功能,勾选需要处理的视频文件;
2)设置输出格式为常用的视频文件格式,如mp4格式,实时查看转换进度,转换完成后可以保存到本地进行二创,或者是分享给身边的好友。
方法三:Streamlink + FFmpeg 组合
适用:需要抓取直播、长视频的 m3u8 流并保存。
1)安装 Streamlink:
- Windows:pip install streamlink
- Mac:brew install streamlink
2)执行:
- streamlink "https://example.com/live.m3u8" best -o output.ts
- ffmpeg -i output.ts -c copy output.mp4
- 批量:可用脚本循环调用 Streamlink 下载多个地址。
方法四:浏览器扩展 + FFmpeg
适用:m3u8 文件需要先在网页中嗅探到。
1)安装 Chrome/Edge 插件 Video DownloadHelper 或 HLS Downloader。
2)播放视频,插件会捕获 m3u8 链接。将链接复制到 FFmpeg 命令(方法一)直接转换,或下载到本地后合并。
方法五:桌面可视化软件(如 4K Video Downloader / Any Video Converter)
适用:完全不想碰命令行、喜欢图形界面。
1)打开软件 → 粘贴 m3u8 链接。选择输出格式 MP4 和画质(如 1080p)。
2)点击下载并转换即可。部分软件支持批量粘贴多个链接,自动排队处理。
方法六:使用 Python 脚本批量下载合并
适用:会用 Python 的用户。
- 安装依赖:pip install requests tqdm
- 脚本核心逻辑:读取 m3u8 文件 → 循环下载每个 ts → 按顺序合并。
- 合并可以直接调用 FFmpeg:ffmpeg -i "concat:file1.ts|file2.ts|..." -c copy output.mp4
方法七:在线 m3u8 转 MP4 工具(适合小文件)
适用:文件短、临时转换、无需批量。
1)进入常用在线工具(如 convertio、onlineconvertfree 等)。
2)上传本地 .m3u8 文件或粘贴链接。等待转换完成后下载 MP4。
缺点:速度受限、可能有大小限制,不适合长视频和隐私内容。
常见问题与避坑
- m3u8 不是视频文件:它只是索引,不能直接复制改后缀成 mp4。
- 有些链接会过期:从网页源码或开发者工具里重新获取。
- 加密 m3u8(AES-128/KEY):需要提供 key 文件或解密 URL,FFmpeg 支持自动解密。
- 批量效率:命令行 + 脚本是最快的批量方式,可用 list.txt 配合循环。