Thread: DG NV tools
View Single Post
Old 13th June 2010, 08:43   #1637  |  Link
hydra3333
Registered User
 
Join Date: Oct 2009
Location: crow-land
Posts: 540
Quote:
Originally Posted by tormento View Post
How do you feed the avs to x264?
Well, here's an example - drag and drop a PAL 1440x1080i TFF .mpg onto this .bat file.
Code:
@echo on
REM HD 1080i for WDTV Live (not 1088i)

REM SETLOCAL ENABLEDELAYEDEXPANSION

set PARF1=%~f1%
set PARF2=%~dpn1%
set parpath=%~dp1%
set pard2v=%~dpn1%.d2v
set pardgi=%~dpn1%.dgi
set PARtemp=%~1%-temp.MP4
set PARmp4=%~dpn1%.MP4
set PARAC3mp4=%~dpn1%.AC3.MP4
set PARMP2mp4=%~dpn1%.MP2.MP4
set parAC3=%~dpn1%.ac3
set parMP2=%~dpn1%.mp2

"C:\software\DGindex\DGIndexNV.exe" -i "%PARF1%" -a -o "%pardgi%" -e

IF EXIST "%parAC3%" DEL "%parAC3%"
FOR %%A in ("%~dpn1*ms.ac3") DO ( 
ECHO ------------------
ECHO Deleting "%parAC3%"
DEL "%parAC3%"
ECHO Renamnig "%%~A" to "%parAC3%"
MOVE "%%~A" "%parAC3%" 
ECHO ------------------
)

IF EXIST "%parMP2%" DEL "%parMP2%"
FOR %%A in ("%~dpn1*ms.mp2") DO ( 
ECHO ------------------
ECHO Deleting "%parMP2%"
DEL "%parMP2%"
ECHO Renamnig "%%~A" to "%parMP2%"
MOVE "%%~A" "%parMP2%" 
ECHO ------------------
)

SET avs1=%PARF2%.avs
echo # "%avs1%" > "%avs1%"
echo LoadPlugin("C:\SOFTWARE\DGindex\DGMultiDecodeNV.dll")  >> "%avs1%"
echo LoadPlugin("C:\SOFTWARE\DGindex\DGDecode.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\NNEDI2.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\Yadifmod.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\DePan.dll") >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\AGC.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\Cnr2.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\dctfilter.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\fft3dfilter.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\degrainmedian.dll") >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\Convolution3d.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\despot.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\WarpSharp.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\aWarpSharp.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\mt_masktools.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\mvtools2.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\Unfilter.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\AddgrainC.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\hqdn3d.dll")  >> "%avs1%"
echo # ------------------------------------------------------------------------------------- >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\VariableBlur.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\FFTQuiver.dll")  >> "%avs1%"
echo # ------------------------------------------------------------------------------------- >> "%avs1%"
echo #LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\RemoveGrain.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\RemoveGrainSSE2.dll")  >> "%avs1%"
echo #LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\Repair.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\RepairSSE2.dll")  >> "%avs1%"
echo #LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\RemoveDirt.dll")  >> "%avs1%"
echo LoadPlugin("C:\Program Files\AviSynth 2.5\plugins-zzz\RemoveDirtSSE2.dll")  >> "%avs1%"
echo Import("C:\Program Files\AviSynth 2.5\LimitedSharpenFaster.avs") >> "%avs1%"
echo Import("C:\Program Files\AviSynth 2.5\Deblock_QED_MT2.avs") >> "%avs1%"
echo DGMultiSource("%pardgi%",deinterlace=2) #deinterlace=2 means double rate deinterlacing  >> "%avs1%"
echo AssumeTFF() >> "%avs1%"
echo Assumefps(25) >> "%avs1%"
echo trim(1,-999999) # fix a double-framerate bug in NV per http://forum.doom9.org/showthread.php?p=1391556#post1391556 >> "%avs1%"
echo #LAST.HEIGHT==1080 ? AddBorders(int left, int top, int right, int bottom) : LAST >> "%avs1%"
echo LAST.HEIGHT==1080 ? AddBorders(0,0,0,8) : LAST >> "%avs1%"

echo #Deblock_QED_MT2() #default quant1=24 >> "%avs1%"
echo #Deblock_QED_MT2(quant1=28) >> "%avs1%"
echo #Deblock_QED_MT2(quant1=32) >> "%avs1%"
echo #Deblock_QED_MT2(quant1=36) >> "%avs1%"
echo #Deblock_QED_MT2(quant1=40) >> "%avs1%"
echo #Deblock_QED_MT2(quant1=44) >> "%avs1%"
echo #Deblock_QED_MT2(quant1=48) >> "%avs1%"
echo #Deblock_QED_MT2(quant1=24,aOff1=1,bOff1=2,quant2=24,aOff2=2,bOff2=4) >> "%avs1%"
echo #Deblock_QED_MT2(quant1=36,aOff1=1,bOff1=2,quant2=24,aOff2=2,bOff2=4) >> "%avs1%"
echo Deblock_QED_MT2(quant1=48,aOff1=1,bOff1=2,quant2=24,aOff2=2,bOff2=4) >> "%avs1%"
echo #LimitedSharpenFaster(smode=4,strength=100) >> "%avs1%"
echo UnFilter(15,15) >> "%avs1%"
echo AssumeTFF() #choose the SAME field order like before deinterlacing >> "%avs1%"
echo SeparateFields().SelectEvery(4,0,3).Weave() #reinterlace. >> "%avs1%"
echo AssumeTFF() #choose the SAME field order like before deinterlacing >> "%avs1%"
echo AssumeFPS(25) >> "%avs1%"
echo LAST.HEIGHT==1088 ? cropbottom(8) : LAST >> "%avs1%"
echo SetPlanarLegacyAlignment(True) >> "%avs1%"

"C:\software\X264\x264.exe" --thread-input --threads 3 --profile high --level 4.1 --preset fast --interlaced --tff --no-cabac --bitrate 8000 --sar 4:3 -o "%PARtemp%" "%AVS1%"

IF NOT EXIST "%parMP2%" "C:\software\ffmpeg\0-LATEST-BETA\bin\ffmpeg.exe" -i "%PARF1%" -y -ar 44100 -ac 2 -ab 224k -acodec mp2 -vol 768 "%parMP2%"

IF EXIST "%parAC3%" "C:\SOFTWARE\MP4box\MP4Box.exe" -add "%PARtemp%" -add "%parAC3%":lang=eng -new "%PARAC3mp4%"
IF EXIST "%parMP2%" "C:\SOFTWARE\MP4box\MP4Box.exe" -add "%PARtemp%" -add "%parMP2%":lang=eng -new "%PARMP2mp4%"

DEL "%PARtemp%"
DEL "%parAC3%"
DEL "%parMP2%"
DEL "%avs1%"
DEL "%pard2v%" 
pause 
exit

REM SAR = DAR / PAR
REM for 16:9 720x576i   use --sar=16:11 (most 4:3 are in 16:9 shell frame nowadays, so use this)  
REM for 16:9 1440x1080i use --sar=4:3  
REM for 16:9 1920x1080i use --sar=1:1  
REM
REM http://developer.divx.com/docs/divx_plus_hd/Creation_with_x264/
REM Interlaced resolution 	 Support SARs
REM 1920x1080i50                  1:1   (16:9 frame)
REM 1440x1080i50                  1:1   (4:3 frame),        4:3 (16:9 frame)
REM 720x576i50              1:1, 16:11 (16:9 frame), 12:11 (4:3 frame)
REM 704x576i50              1:1, 16:11 (16:9 frame), 12:11 (4:3 frame)
REM 480x576i50              1:1, 24:11 (16:9 frame), 18:11 (4:3 frame)
REM 352x576i50              1:1, 32:11 (16:9 frame), 24:11 (4:3 frame)
REM 
REM 1920x1080i60                  1:1   (16:9 frame)
REM 1440x1080i60                  1:1   (4:3 frame),        4:3 (16:9 frame)
REM 720x480i60              1:1, 40:33 (16:9 frame), 10:11 (4:3 frame)
REM 704x480i60              1:1, 40:33 (16:9 frame), 10:11 (4:3 frame)
REM 640x480i60                    1:1   (4:3 frame)
REM 480x480i60              1:1, 20:11 (16:9 frame), 15:11 (4:3 frame)
REM 352x480i60              1:1, 80:33 (16:9 frame), 20:11 (4:3 frame)
REM
hydra3333 is offline   Reply With Quote