m4s-converter 快速指南:免费把 B站缓存 m4s 无损合并成 MP4,只要几秒
【免费下载链接】m4s-converter一个跨平台小工具,将bilibili缓存的m4s格式音视频文件合并成mp4项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter
m4s-converter 是一款免费开源的B站缓存视频合并工具,能把客户端缓存的 m4s 文件在几秒内无损转换成标准 MP4。这篇上手指南讲清安装步骤与避坑方案,读完你就能完成第一次 m4s 转 MP4。
1. 四步拿到你的第一支 MP4
第一步:拿工具。📦 两种方式任选:
git clone https://gitcode.com/gh_mirrors/m4/m4s-converter cd m4s-converter或者去项目 release 页面,直接下载对应系统的预编译可执行文件,Windows、Linux、macOS 三个平台都有,不用自己编译。
第二步:运行。Windows 上直接双击m4s-converter.exe;Linux 和 macOS 先给执行权限再跑:
chmod +x m4s-converter ./m4s-converter程序会自动定位B站客户端的默认缓存目录(一般在Videos/bilibili下)。没找到的话它会弹出选择框,你手动指一下缓存所在就行。
第三步:同意条款。启动时先展示一段使用声明——只允许转换本人合法缓存的内容,结果严格用于个人备份。按任意键即表示同意;不认可就关窗口。
第四步:收成果。🎬 日志滚完,output目录里就是按"合集名-UP主"整理好的 MP4,程序会自动打开这个文件夹。速度是实打实的:1.46GB 的文件合并耗时 5 秒,11.7GB 的大文件用了 38 秒(固态硬盘实测,仅供参考)。这就是 B站缓存转 MP4 的直达路径。
2. 一分钟看懂 m4s:没加密,只是音画分离
先说清楚一件事:你手里的 m4s 文件,从头到尾都没有加密。
B站缓存视频时,把一段内容拆成两个独立文件:video.m4s只有画面,audio.m4s只有声音;旁边的.playurl和videoInfo.json记录着标题、UP主、分P这些信息。所谓"转换"其实是重新封装,不是转码:编码数据一位不改,只把画面和声音装进同一个 MP4 容器。
打个比方:它相当于把盒饭里的米饭和炒菜,从两个分开的外带盒挪进同一个便当盒——饭本身一点没动,只是换了个通用容器,任何播放器都能直接打开。这就是它秒级出片的根因:不是把画重新画一遍,只是挪了个盒子。
3. 五步看清 m4s 封装的完整过程
回车之后它到底在干什么?拆成五步看,你就明白它为什么"准"、为什么"稳"。
第 1 步,扫描配对。遍历缓存目录,从.playurl文件里读出音视频 ID,精确区分哪个是画面轨、哪个是声音轨;番剧的 ID 会自动加上 30000 偏移。全程不靠猜文件名,配对自然准。
第 2 步,头部清理。缓存下来的 m4s 头部常多出 9 个无效的 0 字节,工具会先检查并剔除这 9 个字节,再分别转存成-video.mp4和-audio.mp3两个临时文件。
第 3 步,无损合成。调用 GPAC 的 MP4Box,把两路流装进同一个 MP4,同时把合集 ID、UP主 ID 写进文件元数据。这一步正是去重判断的依据。
第 4 步,弹幕转 ASS。默认会找到对应的 XML 弹幕文件(桌面端在缓存目录里找,Android 端读danmaku.xml),转成 ASS 字幕放在视频旁边。当年的弹幕盛况,播放器里照样能调出来。
第 5 步,智能去重。每次合成都基于输入文件的 MD5 组合值写一份.hash记录;同一批缓存再跑,.hash对得上就直接跳过。就算文件同名,还会过一道元数据校验,确认是不是同一个东西,不会误覆盖。
收尾阶段,成品按"合集名-UP主"建好子目录放进output,完成后自动打开。中途想停?按Ctrl+C,它会把手头这个文件处理完再退出,不会留下半截产物。
4. 五个参数玩转 m4s-converter
⚙️ 参数不多,但个个踩在真实需求上:
| 参数 | 用途 | 什么时候用 |
|---|---|---|
-c | 指定自定义缓存路径 | 缓存不在默认位置时 |
-a | 关闭弹幕转 ASS | 只想要视频,不想要字幕 |
-o | 覆盖同名文件 | 反复转同一批缓存 |
-u | 汇总未合并的 MP3 和视频 | 排查哪些视频没转成 |
-g | 指定 MP4Box 路径 | 自带工具不可用或想换版本 |
常用组合直接抄:
# 指定缓存路径,同时关掉弹幕 ./m4s-converter -c "/你的/缓存/路径" -a ./m4s-converter -o -u想手动指定 MP4Box,就-g "D:\GPAC\mp4box.exe";-g select会弹选择框帮你挑。查帮助、看版本用-h和-v即可。
5. 四个高频问题,一次排完
🧯 卡住了先别急着换工具,对照这张表:
| 遇到的现象 | 背后原因 | 解决办法 |
|---|---|---|
| 转出来没声音 | 音频没缓存完整 | 确认目录里audio.m4s、video.m4s都在,重新缓存再转 |
| 提示找不到 MP4Box | GPAC 缺失或路径不对 | Windows/Linux 一般自带,macOS 需自行安装或用-g指定 |
| 某个视频被跳过 | 缓存状态未完成 | 回客户端把该视频重新缓存完整 |
| 批量转换明显卡顿 | 一次性处理大文件太多 | 分批次转换,输出目录放 SSD |
6. 用之前确认三件事
这部分值得认真读。
第一,它不做什么。m4s-converter 不下载视频、不访问 B站服务器、不解密任何内容、不碰你的账号。它唯一做的事,是把设备上已经存在的 m4s 缓存合并成 MP4。
第二,你承诺什么。只转换自己在视频可观看期间通过官方客户端合法缓存的内容;转换结果严格限于个人备份,不传播、不分享、不商用。
第三,下架不等于版权失效。转出来的文件依旧受原始著作权约束。启动时强制展示的条款界面,以及仓库里的 免责声明 与 官方 README,说的都是同一件事:技术让保存更便利,尊重创作者是底线。
回到开头那个场景:因为 UP主删稿、番剧下架而差点"消失"的教程、纪录片、合集,其实一直躺在你的缓存目录里,只等一次封装。别等视频源彻底失效才后悔——趁缓存还在,克隆项目或下载可执行文件,跑一遍:一分钟不到,它们就会以标准 MP4的身份重新"活"过来,在电视上放、在剪辑软件里剪、在你自己的数字收藏夹里存。
【免费下载链接】m4s-converter一个跨平台小工具,将bilibili缓存的m4s格式音视频文件合并成mp4项目地址: https://gitcode.com/gh_mirrors/m4/m4s-converter
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考