本帖最后由 yakeyun 于 2023-3-27 21:05 编辑
对于手机浏览器缓存的视频,一般都是*.ts格式,如果要转换成视频播放器通用播放格式,需要先转为MP4格式,然后再对MP4文件进行合并。
由于本人喜欢看国漫视频,电脑端VIP解析有时候会比较卡顿,所以在播放不了的情况下,会先用手机缓存下来,然后将手机文件目录拷贝到电脑,把脚本直接拷贝到目录运行后自动转码合并。
脚本调用了ffmpeg第三方脚本,如果系统里面没有文件,首次运行脚本会自动从批处理之家下载到System32目录。- @echo off
- title M3U8视频转换合并工具v1.1 By.sanli
- cd /d "%~dp0"
- if not exist %SystemRoot%\System32\ffmpeg.exe (curl -O http://bcn.bathome.net/tool/ffmpeg,4.3/ffmpeg.exe & move /y "ffmpeg.exe" "%SystemRoot%\System32\ffmpeg.exe")
- if not exist %SystemRoot%\System32\ffmpeg.exe (mshta "vbscript:msgbox("当前网络不可用,无法继续执行!",0,"提醒:") & window.close" & exit )
- setlocal enabledelayedexpansion
- for /f "delims=" %%a in ("%cd%") do set name=%%~na
- for /f "tokens=* delims=, " %%a in ('dir /a /s /b .\*.ts') do (
- ffmpeg -i "%%a" -threads 4 -f mp4 -codec copy "000%%~na.mp4"
- )
-
- (
- for /f "tokens=* delims=, " %%a in ('dir /a /s /b .\*.mp4') do (
- echo %%~nxa
- )
- )>del.txt
- (
- for /f "tokens=* delims=, " %%a in ('dir /a /s /b .\*.mp4') do (
- echo file '%%~nxa'
- )
- )>config.txt
-
- ffmpeg -f concat -i config.txt -c copy output.mp4
- ren output.mp4 "!name!.mp4"
- for /f %%a in (del.txt) do (
- del %%a
- )
- if exist del.txt (del del.txt)
- if exist config.txt (del config.txt)
- exit
复制代码
带密钥的M3U8视频合并(批处理文件和TS视频、密钥文件在同一目录,命名为当前目录,例子合并后文件名称为“1.mp4”):- @echo off
- title M3U8视频转换合并工具v1.2 By.sanli
- cd /d "%~dp0"
- if not exist %SystemRoot%\System32\ffmpeg.exe (curl -O http://bcn.bathome.net/tool/ffmpeg,4.3/ffmpeg.exe & move /y "ffmpeg.exe" "%SystemRoot%\System32\ffmpeg.exe")
- if not exist %SystemRoot%\System32\ffmpeg.exe (mshta "vbscript:msgbox("当前网络不可用,无法继续执行!",0,"提醒:") & window.close" & exit )
- setlocal enabledelayedexpansion
- for /f "delims=" %%a in ("%cd%") do set name=%%~na
- ffmpeg -allowed_extensions ALL -i index.m3u8 -vcodec copy -acodec copy !name!.mp4
- exit
复制代码
|