Log in

View Full Version : DVD Rebuilder Pro AviSynth question


gtaylor
15th October 2008, 00:27
I have what I guess is kind of a rookie question. I'm using dvd rebuilder pro (latest build) and I love it. I have a avisynth script that I want to put in, so I pasted it into current.avs. I'm doing the three step process and it runs to completion, but I guess what I'm trying to find out is if I put the script into the right place and is there any way to confirm that the program is indeed seeing and running the script (assuming that all filters are present). I would appreciate any thoughts or input.

Video Dude
15th October 2008, 02:56
In the options section, paste your filter chain into the "Filter Editor" text box before the Prepare phase. You should not use any filter that resizes the final frame size or changes the frame rate (ie IVTC+Decimate).

You can confirm it by opening the .avs files in notepad that DVD-RB creates after the Prepare phase.

jdobbs
15th October 2008, 02:57
If you want it to run through all encodes, the script has to be added via the DVD-RB Pro filter editor either directly or by reference.

[Edit] Looks like Video Dude beat me to the draw on the answer.

gtaylor
15th October 2008, 13:42
Thanks guys. I'm assuming that the .avs files would be located in the "work" directory? I appreciate your feedback.

blutach
15th October 2008, 21:20
I'm assuming that the .avs files would be located in the "work" directory? Yes.

Regards

gtaylor
16th October 2008, 17:38
Thanks for your help guys. So if I don't see the .avs files in work directory then the script was not applied. Is that a correct assumption. Thanks again for your help.

jdobbs
16th October 2008, 19:03
You'll see AVS files anyway because they are used to feed the encoder... but if you open them up you should be able to see your script embedded in them.

steptoe
17th October 2008, 08:32
If you used the script via the script editor, then it will be applied to your source

You should tell if it is working, especially if its a slow filter or complex function, as the time taken to convert will be much longer

If you are using HCEnc or CCE, then the actual framerate will drop drastically depending on the actual filter or function you are using

Also, if there is a perblem with the script, HC Encoder will complain there is an error in the script


So the fact that everything completed, and you have checked the final work done by DVD-RB Pro and it doesn't show any AviSynth error messages instead of the video then its completed



One thing to remember is that if the DVD will fit on a single DVD already, you MUST set the 'force reencoding' setting under settings/Mode otherwise nothing will be done using the filters if its less than 4.3GB in size

I have this option on all the time anyway as most of the stuff I do needs reencoding, plus guarantees that any filters I am using will be applied

gtaylor
28th October 2008, 02:08
You'll see AVS files anyway because they are used to feed the encoder... but if you open them up you should be able to see your script embedded in them.

Thanks all for the help. I understand much better now but am having an issue getting the script to work with dvd-RB pro. The script is used to improve the quality of the non-anamphoric release of the original star wars movie released by Lucas Film in 2006. I have this release and used dvd-decrypter to get the files. I'm using AVS 2.58 and HC encoder. The script was created by G-Force on www.originaltrilogy.com (http://originaltrilogy.com/forum/topic.cfm/GOUT-image-stabilization/topic/9038/). I would like to try to use this to make a better star wars dvd, but am having errors with the script in dvd-rb. HC encoder gives the error "script error: end of file reached without matching }. DVD RB segment viewer shows "script error: syntax error, current.avs, line 54, column 5. The actual script is below. I would appreciate any thoughts anyone might have on what the issue might be. Thanks much.

#######################################################################################
############################ GOUT Filter By G-force V.3.09 ############################
#######################################################################################

########## setup stage
sw_frame_no = 689 # <-----Enter number of first frame of "Star Wars" logo
PAL = false # <-----Set to false for NTSC, true for PAL
Mpeg2Source("C:\Program Files\AviSynth 2.5\Scripts\VTS_03_1.d2v") # <-----Set path

########## cut off some of the black bars for faster processing (but keep mod 16)
PAL==false ? Crop(0,96,0,-96,align=true) : Crop(0,120,0,-120,align=true).AddBorders(8,0,8,0)

########## set black level/gamma, saturation/hue
Levels(10,1.13,255,0,255)
Tweak(sat=1.08,hue=-4)

########## global motion stabilization stage
temp = last.TemporalSoften(7,255,255,25,2)
Interleave(temp.Repair(last.TemporalSoften(1,255,255,25,2)),last)
DePan(last,data=DePanEstimate(last,trust=0,dxmax=1,dymax=0),offset=-1)
SelectEvery(2,0)

########## local motion stabilization/degrain stage
source = last
sigma = 5
filt = source.fft3dfilter(sigma=sigma,sigma2=sigma*.75,sigma3=sigma*.5,sigma4=sigma*.25,sharpen=.3)
temp = temp.Repair(filt,9)

fw_vec2 = temp.MVAnalyse(isb=false,delta=2,pel=2,sharp=1,overlap=4,plevel=0,idx=1,dct=1)
fw_vec1 = temp.MVAnalyse(isb=false,delta=1,pel=2,sharp=1,overlap=4,plevel=0,idx=1,dct=1)
bw_vec1 = temp.MVAnalyse(isb=true, delta=1,pel=2,sharp=1,overlap=4,plevel=0,idx=1,dct=1)
bw_vec2 = temp.MVAnalyse(isb=true, delta=2,pel=2,sharp=1,overlap=4,plevel=0,idx=1,dct=1)

source.MVDegrain2(bw_vec1,fw_vec1,bw_vec2,fw_vec2,thSAD=400,idx=2)

Median1(source,last,filt,chroma="copy first")

last.MVDegrain2(bw_vec1,fw_vec1,bw_vec2,fw_vec2,thSAD=400,thSCD1=200,thSCD2=100,idx=3)

########## sharpening
Contra(last,source)

########## restore stars stage
prest = last
prest.MT_Binarize(threshold=20,upper=true).MT_Expand()
MT_Merge(prest,source,last,chroma="copy first")
prest.Trim(0,sw_frame_no-1)++last.Trim(sw_frame_no,0)

########## anti-aliasing
NNEDI(dh=true,field=1)

########## resize to 16x9 AR, remove sides, add borders
PAL==false ? Spline16Resize(720,384).Crop(8,8,-4,-12,align=true).AddBorders(6,58,6,58)
\ : Spline16Resize(736,448).Crop(12,6,-12,-8, align=true).AddBorders(4,70,4,72)

########## subtitle stage
delay = sw_frame_no-689
f = "Franklin Gothic Medium Cond"
f_col = $ffffff
f_wid = 10
f_pos = PAL==false ? 464 : 557
f_siz = PAL==false ? 38 : 46

Subtitle ("Going somewhere, Solo?",
\ -1,f_pos,70663+delay,70698+delay,f,f_siz,f_col,font_width=f_wid)
Subtitle ("It’s too late. You should have paid him when you had the chance.",
\ -1,f_pos,70825+delay,70931+delay,f,f_siz,f_col,font_width=f_wid)
Subtitle ("Jabba’s put a price on your head so large...",
\ -1,f_pos,70940+delay,71005+delay,f,f_siz,f_col,font_width=f_wid)
Subtitle ("...every bounty hunter in the galaxy will be looking for you.",
\ -1,f_pos,71014+delay,71088+delay,f,f_siz,f_col,font_width=f_wid)
Subtitle ("I’m lucky I found you first.",
\ -1,f_pos,71098+delay,71137+delay,f,f_siz,f_col,font_width=f_wid)
Subtitle ("If you give it to me, I might forget I found you.",
\ -1,f_pos,71203+delay,71282+delay,f,f_siz,f_col,font_width=f_wid)
Subtitle ("Jabba’s through with you.",
\ -1,f_pos,71365+delay,71406+delay,f,f_siz,f_col,font_width=f_wid)
Subtitle ("He has no time for smugglers...",
\ -1,f_pos,71435+delay,71489+delay,f,f_siz,f_col,font_width=f_wid)
Subtitle ("...who drop their shipments at the first sign of an Imperial cruiser.",
\ -1,f_pos,71498+delay,71595+delay,f,f_siz,f_col,font_width=f_wid)
Subtitle ("You can tell that to Jabba. He may only take your ship.",
\ -1,f_pos,71656+delay,71748+delay,f,f_siz,f_col,font_width=f_wid)
Subtitle ("That’s the idea.",
\ -1,f_pos,71806+delay,71833+delay,f,f_siz,f_col,font_width=f_wid)
Subtitle ("I’ve been looking forward to this for a long time.",
\ -1,f_pos,71843+delay,71931+delay,f,f_siz,f_col,font_width=f_wid)

#######################################################################################
Function Contra(clip denoised, clip orig)
{# re-write of Didée's contra sharpening routine from TemporalDegrain.avs

Interleave(denoised,denoised.RemoveGrain(12,-1),denoised.RemoveGrain(4,-1))
Clense(reduceflicker=false,grey=true)
SelectEvery(3,1)

MT_MakeDiff(last,last.RemoveGrain(12,-1).RemoveGrain(12,-1))
last.Repair(MT_MakeDiff(orig,denoised),1,-1).MT_LUTxy(last,"x 128 - abs y 128 - abs < x y ?")

denoised.MT_AddDiff(last,chroma="copy first")

Return(last)
}

#######################################################################################
Function Median1(clip input_1, clip input_2, clip input_3, string "chroma")
{# median of 3 clips from Helpers.avs by G-force

chroma = default(chroma,"process") #default is "process". Alternates: "copy first" or "copy second"

Interleave(input_1,input_2,input_3)
chroma == "process" ? Clense(reduceflicker=false) : Clense(reduceflicker=false,grey=true)
SelectEvery(3,1)

chroma == "copy first" ? last.MergeChroma(input_1) : chroma == "copy second" ? last.MergeChroma(input_2) : last

Return(last)
}