http://www.nmm-hd.org/newbbs/viewtopic.php?f=8&t=219 x264_tMod
源为 VFR,ASS 的时间对应源,tMod 直接压。
大概思路就这样,详细参数参考上面的链接,很久没压东西就不贴参数害人了。
代码: 全选
echo off
cd "/d %~dp0"
:start
set sourceext=mp4
if exist "%~dpn1.mkv" set sourceext=mkv
if "%sourceext%"=="mp4" "D:\TOOL\VIDEO\TURN\MeGUI\tools\dtsEdit\DtsEdit.exe" -tv 2 -o "%~f1.tc2.txt" "%~f1"
if "%sourceext%"=="mkv" "D:\TOOL\VIDEO\TURN\MeGUI\tools\mkvmerge\mkvextract.exe" timecodes_v2 "%~f1" 1:"%~f1.tc2.txt"
shift
if not "%~1"=="" goto start
echo. & pause
代码: 全选
LoadPlugin("C:\Program Files (x86)\AviSynth 2.5\plugins\x86\ffms2.dll")
ffvideosource("xxx.mp4",timecodes="1.txt")
assumefps(24000,1001)
代码: 全选
Assumefps(24000,1001)
TextSub("你已经载入的字幕.ass", vfr="timecode文件路径")
代码: 全选
LoadPlugin("xxx\vsfilter.dll")
DirectShowSource("xxx.mp4",25.802)
textsub("xxx.ass")
按楼主最开始的做法,只要手动修改一下avs,让Textsub加载timecode文件,字幕不需要经过ageisub导出,直接用原始的就能同步了。Assumefps(24000,1001)
TextSub("D:\baiduyundownload\[OWA Raws] Higurashi no Naku Koro ni 01-26 (1280x720 h264 AAC)\1.ass", vfr="timecode文件路径")
红字的参数是内嵌字幕必要的,其他压制参数请自行按需补充修改。x264.exe --crf 24 --sub "1.ass" --vf subtitles -o output.mp4 input.mp4
tMod直接出vfr不需要封timecodecunhan 写了:tMod可以这样用,不需要megui也不需要avs也不需要ageisub红字的参数是内嵌字幕必要的,其他压制参数请自行按需补充修改。x264.exe --crf 24 --sub "1.ass" --vf subtitles -o output.mp4 input.mp4
不管哪种方法,压完后封装的时候,也不要忘记给视频封入timecode。