代码: 全选
@ECHO OFF & CD/D "%~dp0"
:ReMux1
IF "%~1"=="" GOTO :EOF
IF /I "%~x1"==".mkv" (Set Ext=.mp4) ELSE (Set Ext=.mkv)
ffmpeg -y -i "%~1" -vcodec copy -acodec copy "%~dpn1%Ext%"
IF "%ERRORLEVEL%" == "0" DEL "%~1"
SHIFT /1
GOTO :ReMux1
字符没办法,mp4的chapter貌似不认UTF-8,直接封ANSI进去的话各种兼容问题(中文win系统下日文乱码,繁体中文乱码,所以说只能选择写个英文chapter了..死)upyzl 写了:mediacoder用的ffmpeg太烂了,都不知道是怎么编译的,也不清楚GUI是怎么调用的命令
只是重封装,ffmpeg建议用这个
http://www.mediafire.com/?0yli0an52l7yr55
(MF上不去的话: http://u.115.com/file/bhbgml21 只要ffmpeg即可)
命令行其实真的很方便的,给你个例子:说明:把待重封装的视频拖进这个bat里(支持批量拖拽),原本是mkv的文件一律重封装成mp4,其余类型的文件一律重封装成mkv,不算后缀名的话,文件名是不变的,生成的视频与之前的视频同路径;成功封装后自动删除原文件(不需要的话,删掉DEL那一行即可)代码: 全选
@ECHO OFF & CD/D "%~dp0" :ReMux1 IF "%~1"=="" GOTO :EOF IF /I "%~x1"==".mkv" (Set Ext=.mp4) ELSE (Set Ext=.mkv) ffmpeg -y -i "%~1" -vcodec copy -acodec copy "%~dpn1%Ext%" IF "%ERRORLEVEL%" == "0" DEL "%~1" SHIFT /1 GOTO :ReMux1
bat所在路径最好有空格,这样即便文件名有&这样的特殊字符也能识别
不过我这chapter会乱码,mp4 chapter对字符编码是怎么支持的我就不清楚了(封回mkv又正常,毫无疑问就是字符编码问题)
我用官方ffmpeg封发现直接丢失chapter了
朋友 我不太懂bat的用法 我把你发的代码复制到一个新建的文本文件里 然后保存 改后缀名为bat . 把它放入了带有ffmpeg.exe的文件夹中 运行之 闪一下没了 是怎么回事?upyzl 写了:mediacoder用的ffmpeg太烂了,都不知道是怎么编译的,也不清楚GUI是怎么调用的命令
只是重封装,ffmpeg建议用这个
http://www.mediafire.com/?0yli0an52l7yr55
(MF上不去的话: http://u.115.com/file/bhbgml21 只要ffmpeg即可)
命令行其实真的很方便的,给你个例子:说明:把待重封装的视频拖进这个bat里(支持批量拖拽),原本是mkv的文件一律重封装成mp4,其余类型的文件一律重封装成mkv,不算后缀名的话,文件名是不变的,生成的视频与之前的视频同路径;成功封装后自动删除原文件(不需要的话,删掉DEL那一行即可)代码: 全选
@ECHO OFF & CD/D "%~dp0" :ReMux1 IF "%~1"=="" GOTO :EOF IF /I "%~x1"==".mkv" (Set Ext=.mp4) ELSE (Set Ext=.mkv) ffmpeg -y -i "%~1" -vcodec copy -acodec copy "%~dpn1%Ext%" IF "%ERRORLEVEL%" == "0" DEL "%~1" SHIFT /1 GOTO :ReMux1
bat所在路径最好有空格,这样即便文件名有&这样的特殊字符也能识别
不过我这chapter会乱码,mp4 chapter对字符编码是怎么支持的我就不清楚了(封回mkv又正常,毫无疑问就是字符编码问题)
我用官方ffmpeg封发现直接丢失chapter了
拖放上去也闪一下没了264768502 写了:把你要重新封装的文件拖放至此bat
记得上次蛇说过,mp4封utf8 chapter在苹果系列上各种淡定,由此推断windows下各种乱码可能是分离器的问题。-o-o-304-o-o- 写了: 字符没办法,mp4的chapter貌似不认UTF-8,直接封ANSI进去的话各种兼容问题(中文win系统下日文乱码,繁体中文乱码,所以说只能选择写个英文chapter了..死)
那改成这样tank8888jx 写了:拖放上去也闪一下没了
代码: 全选
@ECHO OFF & CD/D "%~dp0"
:ReMux1
IF "%~1"=="" GOTO :End_
IF /I "%~x1"==".mkv" (Set Ext=.mp4) ELSE (Set Ext=.mkv)
ffmpeg -y -i "%~1" -vcodec copy -acodec copy "%~dpn1%Ext%"
SHIFT /1
GOTO :ReMux1
:End_
pause