uc浏览器缓存视频需合并.m3u8与.ts分片为mp4才能播放:先确认缓存完整(含.m3u8及≥5个.ts),若加密则需解密;新版本可开启自动转换,旧缓存或加密视频须用ffmpeg或专用工具处理。

UC浏览器缓存视频后只生成一个.m3u8文件和一堆数字命名的.ts分片,无法直接播放或转发——这是因为HLS协议把视频切片存储,必须合并封装成MP4才能通用。
先确认缓存是否完整且可处理
打开手机文件管理器,进入路径:【/storage/emulated/0/UCDownloads/VideoData/】(部分机型为/Android/data/com.UCMobile/files/videocache/)。找到最新创建的纯数字命名文件夹,里面必须同时存在:1个以.m3u8结尾的文本文件,以及至少5个以上连续编号的.ts文件(如0.ts、1.ts、2.ts……)。
若只有.m3u8而无.ts,说明缓存未完成,需回到UC浏览器重新触发缓存并等进度条走满;若存在#EXT-X-KEY:METHOD=AES-128字样且URI指向.key文件,则该视频已加密,后续步骤必须解密,否则合并出的MP4将黑屏无声。
方法一:手机端一键开启自动转换(仅限新版本UC)
打开UC浏览器→点击右下角“我的”→进入“设置”→找到“下载设置”→开启“m3u8自动转换为MP4”开关。
此后所有新缓存的视频,UC浏览器会在后台自动合并生成MP4,保存在/UCDownloads/Video/目录下。注意:此功能【仅对开启后新缓存的视频生效,无法补转历史已缓存的.m3u8】;部分老机型或系统权限受限时,可能提示“存储权限被拒绝”,需手动到系统设置中授权UC浏览器读写存储空间。
方法二:电脑端用FFmpeg转封装(无损、推荐)
第一步:用USB线连接手机与电脑,将整个VideoData文件夹复制到电脑桌面(例如重命名为UC_Video_20260914)。
第二步:进入该文件夹,用记事本打开.m3u8文件,按Ctrl+H批量替换——把所有形如file:///storage/emulated/0/UCDownloads/VideoData/1674154522694/的绝对路径,全部替换成./(英文句点加正斜杠),替换后保存。
第三步:在该文件夹空白处按住Shift+鼠标右键,选择“在此处打开PowerShell窗口”(Windows)或“在终端中打开”(macOS/Linux)。
第四步:输入命令并回车:ffmpeg -i "video.m3u8" -c copy -bsf:a aac_adtstoasc output.mp4(请将video.m3u8替换为你实际的.m3u8文件名)。
等待命令执行完毕,当前文件夹即生成可直接播放的output.mp4。这一步不重新编码,画质无损,耗时取决于视频总时长,通常每分钟约2~5秒。
方法三:处理带AES加密的.m3u8(必须解密)
方法3.1:使用N_m3u8DL-CLI工具(需Python 3.7+)
将.m3u8文件、所有.ts分片、以及对应的.key密钥文件放在同一文件夹内→打开终端→执行:n_m3u8dl --saveName "decrypted" --enableDelAfterDone "video.m3u8"→运行结束后生成decrypted.mp4。
方法3.2:用自研M3u8ToMp4.exe工具(免安装)
下载工具包,解压后确保input文件夹为空→把.m3u8文件和含.ts及.key的同名文件夹一起拖入input→双击运行M3u8ToMp4.exe→完成后output文件夹出现MP4文件。【该工具会自动识别key文件并解密,无需手动输入密钥】











