logo Sign In

2006 SE/GOUT hybrid script project - UPDATE: 05-24-11 see 1st & 2nd post...

Author
Time
 (Edited)

UPDATE 05-24-2011

I’ve decided to post this script for SW when it is not finished so that people can take a look at it as I work on it. This script uses several different methods to make the SE look like the GOUT in color and retain the clarity of the SE.

The script does require a 24mb download of a deshaker.log file which can be found here.  If you look through the script you’ll find a variable called COL. This is where the path to the deshaker log should be entered.

Here’s a short clip of some random scenes from the script.

http://www.youtube.com/watch?v=PQ-wEd3_S50

Here’s a longer clip that is about 5 1/2 minutes long.

http://www.youtube.com/watch?v=N5zSR0Zdo2U

There’s no sound and  Youtube compression has made it a bit blocky. There are a few frames from the original gout but I think they blend in pretty well.
 

UPDATE 05-24-2011

I’ve uploaded another clip onto yt.  I’m almost finished with SW.  I’m fixing maybe one or two more wipes so as to be able to include more SE footage and maybe a couple things here and there and then it’s finished for now.  I’ll probably go back and fix any bad chroma alignment if people point it out. I’m tired of working on SW and would like to move on to ESB for the time being.

Luke threw twice…maybe.

Author
Time
 (Edited)
#Enter paths to GOUT and SE
sw0=mpeg2source("**PATH TO SW GOUT**.d2v")
swse=mpeg2source("**PATH TO SW SE**.d2v").trim(711,0).crop(0,56,-2,-60).spline64resize(720,366)
sw=sw0.crop(8,102,-2,-104).spline64resize(720,366)
swca=sw.trim(689,0).VagueDenoiser(threshold=3,chromat=10,method=1, interlaced=false, wiener=true).tweak(hue=-6.5,sat=1.4).ylevels(12,1,255,0,255)
swwa=sw0.trim(689,0).crop(4,102,-2,-104).spline64resize(720,366).VagueDenoiser(threshold=3,chromat=10,method=1, interlaced=false, wiener=true).tweak(hue=-6.5,sat=1.4).ylevels(12,1,255,0,255)
blank=swca.blankclip()
swoc=sw.trim(689,0)

#opening titles which will be reinserted at the beginning after editing

fanfare=sw.trim(0,265).spline64resize(720,366)
lfa=blank.Subtitle("A",-1,145,0,200,"zurich bold",39,$32CD32,font_width=14)
lfll=blank.subtitle("LUCASFILM  LIMITED", -1,219,0,200,"zurich bold",58,$32cd32,font_width=21.6,spc=-14)
lfllmask=lfll.converttorgb32().colorkeymask($000000,10)
lfp=blank.subtitle("Production",-1,266,0,200,"zurich bold",38,$32cd32,font_width=13.5,spc=3)
lfpmask=lfp.converttorgb32().colorkeymask($000000,10)
lfovr0=overlay(lfa,lfll,mode="blend",mask=lfllmask.showalpha(),opacity=1)
lfovr1=overlay(lfovr0,lfp,mask=lfpmask.showalpha(),mode="blend",opacity=1).levels(16,1,145,0,255).trim(0,189).fadeio(12)
lucasfilm=lfovr1 ++ blank.trim(0,8)
alta1=blank.subtitle("A  long  time  ago  in  a  galaxy  far,",-1,-1,0,221,"Franklin Gothic book",52,$002061,font_width=16.1,spc=-14)
alta2=blank.subtitle("far away. . . .",111,188,0,221,"Franklin Gothic book",49,$002061,font_width=15.5,spc=-14)
alta2mask=alta2.converttorgb32().colorkeymask($000000,0)
alta3=overlay(alta1,alta2,mask=alta2mask.showalpha(),mode="blend",opacity=1).levels(16,1,65,0,255).trim(0,130).fadeio(12).blur(0.8)
alta=blank.trim(0,42) ++ alta3 ++ blank.trim(175,220)
optitle=fanfare ++ lucasfilm ++ alta


#Edit the special edition dvd to match the gout dvd frame for frame

swse1=swse.trim(0,15648) ++swse.trim(15669,0)
swse2=swse1.trim(0,21123) ++swse1.trim(21503,0)
swse3=swse2.trim(0,21600) ++ swse2.trim(21701,0)
swse4=swse3.trim(0,57790) ++ swse3.trim(57815,0)
swse5=swse4.trim(0,60434) ++ swse4.trim(61027,0)
swse6=swse5.trim(0,60499) ++ swse5.trim(60521,0)
swse7=swse6.trim(0,61452) ++ swse6.trim(61574,0)
swse8=swse7.trim(0,71278) ++ swse7.trim(71289,0)
swse9=swse8.trim(0,73845) ++ swse8.trim(76076,0)
swse10=swse9.trim(0,74228) ++ swse9.trim(74250,0)
swse11=swse10.trim(0,75798) ++ swse10.trim(75877,0)
swse12=swse11.deleteframe(143364)
swse13=swse12.trim(0,144345) ++ swse12.trim(144971,0)
swse14=swse13.duplicateframe(144395,144395,144395,144395,144395,144395,144395,144395)

#Merge chroma information from GOUT to SE
clip1=swse14.ylevels(0,1,250,0,255)
clip2=swwa
sehdr=swse14.ylevels(0,1,250,0,255).hdragc(avg_lum=20,max_gain=0.8,min_gain=0,coef_gain=1.0,max_sat=1.0,min_sat=1.0,protect=0,corrector=0.6,avg_window=48,debug=0)
wa1=ScriptClip(clip1, "ColorYUV(off_u=(averagechromau(clip2)-averagechromau(clip1)),off_v=(averagechromav(clip2)-averagechromav(clip1)))")
wa=wa1.hdragc(avg_lum=20,max_gain=0.8,min_gain=0,coef_gain=1,max_sat=1.0,min_sat=1.0,protect=0,corrector=0.6,avg_window=48,debug=0)
#wa=ScriptClip(clip1, "ColorYUV(off_y=(averageluma(clip2)-averageluma(clip1)),off_u=(averagechromau(clip2)-averagechromau(clip1)),off_v=(averagechromav(clip2)-averagechromav(clip1)))")

col = interleave(swca,swse14,blank).depan(subpixel=2,pixaspect=1.0,inputlog="**PATH TO DESHAKER**.log").selectevery(3,0)
bw = swse14

colw = col.Width()
colh = col.Height()
bww = bw.Width()
bwh = bw.Height()
borw = (bww-colw)/2
borh = (bwh-colh)/2
col = col.AddBorders((720-col.Width)/2, (366-col.Height)/2, (720-col.Width)/2, (366-col.Height)/2, color=$000000)
bwp = bw.AddBorders((720-bw.Width)/2, (366-bw.Height)/2, (720-bw.Width)/2, (366-bw.Height)/2, color=$000000)
int = Interleave(bwp,col)
estnz = int.depanestimate(range=1,pixaspect=1,zoommax=1,improve=false,trust=0)
estz = int.depanestimate(range=1,pixaspect=1,zoommax=2,improve=false,trust=0)
depnz = int.depaninterleave(estnz,pixaspect=1,prev=0,next=1,subpixel=2,mirror=15,blur=0)
depz = int.depaninterleave(estz,pixaspect=1,prev=0,next=1,subpixel=2,mirror=15,blur=0)
nz=depnz.selectevery(4,1)
zoom= depz.SelectEvery(4, 1)
nzmask=colorkeymask(nz.converttorgb32(),$000000,5)
zoommask=colorkeymask(zoom.converttorgb32(),$000000,5)
senz=overlay(wa,nz,mode="chroma",greymask=true,opacity=1)
sez=overlay(wa,zoom,mode="chroma",greymask=true,opacity=1)
t=overlay(swse14,nz,mode="difference",greymask=true,opacity=1)
t1=overlay(swse14,zoom,mode="difference",greymask=true,opacity=1)
mal=overlay(swse14,nz,mode="chroma",opacity=1,x=10)

#Delete unusable footage from special edition and replace with gout footage
se=senz
gout=swca
wipe1=DissolveAGGna(wa.trim(45645,45668), gout.trim(45645,45668), 23, "bottomtotop", 3, 50, 50).deleteframe(0,25)
wipe2=Dissolveaggna(wa.trim(60361,60383), gout.trim(60368,60390), 22, "righttoleft", 4, 50, 50).deleteframe(0,25)
wipe3=Dissolveaggna(wa.trim(66474,66512), gout.trim(66474,66512), 38, "righttoleft", 3, 40, 40).deleteframe(0,41)
#wipe1=sehdr.trim(45645,45668)
edit=gout.trim(0,2833) ++ wa.trim(2834,6331) ++ se.trim(6332,6438) ++ se.trim(6439,9441) ++ sez.trim(9442,9513) ++ se.trim(9514,9548) \
++ wa.trim(9549,9681) ++ se.trim(9682,9911) ++ swse14.trim(9912,10059) ++ se.trim(10060,10236) ++ sez.trim(10237,10241) ++ se.trim(10242,11073) \
++ sez.trim(11074,11593) ++ se.trim(11594,11986) ++ wa.trim(11987,12444) ++ se.trim(12445,14059)  ++ gout.trim(14060,14853) ++ se.trim( 14854,15232) \
++ gout.trim(15233,15284) ++ se.trim(15285,15449) ++ gout.trim(15450,15734) ++ se.trim(15735,17611) ++sez.trim(17612,17656) ++se.trim(17657,18190) \
++ gout.trim(18191,18352) ++ se.trim(18353,18696) ++ sez.trim(18697,19199) ++ se.trim(19200,20887) ++ gout.trim(20888,21600) ++ se.trim(21601,22604) \
++ mal.trim(22605,22618) ++ se.trim(22619,22871) ++sez.trim(22872,22872) ++ se.trim(22873,23008) ++ gout.trim(23009,23116) ++ se.trim(23117,35566) \
++sez.trim(35567,35903) ++se.trim(35904,35987) ++ gout.trim(35988,36095) ++ se.trim(36096,37108) ++ sez.trim(37109,37109) ++ se.trim(37110,37950) \
++blank.trim(37951,37970) ++ se.trim(37971,38752) ++ wa.trim(38753,38958) ++ se.trim(38959,45574) ++ wa.trim(45575,45644) ++ wipe1 ++ gout.trim(45669,45757) ++ se.trim(45758,49722) \
++ gout.trim(49723,49827) ++ se.trim(49828,49901) ++ gout.trim(49902,50051) ++ se.trim(50052,59788) ++ wa.trim(59789,60070) ++ gout.trim(60071,60189) \
++ wa.trim(60190,60360) ++ wipe2 ++ gout.trim(60391,60499).duplicateframe(1,1,1,1,1,1,1) \
++ se.trim(60500,60579) ++ gout.trim(60580,60867) ++ se.trim(60868,60996) ++ gout.trim(60997,61055) ++ se.trim(61056,61364) ++gout.trim(61365,61888) \
++ se.trim(61889,62077) ++ gout.trim(62078,62129) ++ se.trim(62130,62290) ++ gout.trim(62291,62599) ++ sez.trim(62600,62762) ++ mal.trim(62763,62814) \
++ gout.trim(62815,62893) ++se.trim(62894,64016) ++ sez.trim(64017,64020) ++ se.trim(64021,64569) ++ gout.trim(64570,64654) ++ se.trim(64655,65646) \
++ wa.trim(65647,65664) ++ se.trim(65665,66086) ++ wa.trim(66087,66473) ++ wipe3 ++ gout.trim(66513,66659) ++ se.trim(66660,67928) ++ sez.trim(67929,68129) ++ se.trim(68130,68530) \
++ sez.trim(68531,69280) ++ se.trim(69281,70244) ++ sez.trim(70245,71244) ++ gout.trim(71245,71287) ++ se.trim(71288,71862) ++ sez.trim(71863,72509) \
++ se.trim(72510,72540) ++ gout.trim(72541,72778) ++ se.trim(72779,73649) ++ gout.trim(73650,74459) ++ se.trim(74460,75395) ++ wa.trim(75396,75592) \
++ se.trim(75593,75798) ++ gout.trim(75799,75901) ++ se.trim(75902,80466) ++ sez.trim(80467,80798) ++ se.trim(80799,80816) ++ gout.trim(80817,80917) \
++ se.trim(80918,89778) ++ wa.trim(89779,89876) ++ se.trim(89877,90588) ++ gout.trim(90589,90710) ++ se.trim(90711,91564) ++ sez.trim(91565,94508) \
++ wa.trim(94509,94654) ++ se.trim(94655,94723) ++ se.trim(94724,94737) ++ gout.trim(94738,94777) ++ se.trim(94778,101538) ++ sez.trim(101539,102339) \
++ se.trim(102340,102368) ++ sez.trim(102369,102491) ++ wa.trim(102492,103076) ++ gout.trim( 103077,103104) ++ wa.trim(103105,106746) \
++ sez.trim(106747,106783) ++ se.trim(106784,106785) ++ sez.trim(106786,106832) ++ wa.trim(106833,107792) ++ sez.trim(107793,108124) \
++ wa.trim(108125,109604) ++ se.trim(109605,109635) ++ sez.trim(109636,109872) ++ se.trim(109873,110009) ++ sez.trim(110010,110345) \
++ se.trim(110346,110430) ++ sez.trim(110431,111114) ++ se.trim(111115,111243) ++ gout.trim(111244,111315) ++ sez.trim(111316,113046) \
++ se.trim(113047,113049) ++ sez.trim(113050,113542) ++ se.trim(113543,113543) ++ sez.trim(113544,113650) ++ se.trim(113651,113667) \
++ sez.trim(113668,114107) ++ wa.trim(114108,114173) ++ se.trim(114174,114488) ++ sez.trim(114489,114608) ++ se.trim(114609,114610) \
++ sez.trim(114611,114960) ++ wa.trim(114961,115299) ++ sez.trim(115300,115400) ++ se.trim(115401,115403) ++ sez.trim(115404,115785) \
++ se.trim(115786,115791) ++ sez.trim(115792,115857) ++ se.trim(115858,116068) ++ sez.trim(116069,117243) ++ se.trim(117244,117253) \
++ sez.trim(117254,117334) ++ se.trim(117335,118975) ++ sez.trim(118976,119007) ++gout.trim(119008,119078) ++ se.trim(119079,120169) \
++ sez.trim(120170,120556) ++ se.trim(120557,121043) ++ gout.trim(121044,121118) ++sez.trim(121119,121222) ++ gout.trim(121223,121263) \
++ se.trim(121264,121873) ++ gout.trim(121874,121920) ++ se.trim(121921,122115) ++ sez.trim(122116,122450) ++ se.trim(122451,123197) \
++ sez.trim(123198,123615) ++ se.trim(123616,123631) ++ wa.trim(123632,123716) ++ se.trim(123717,124398) ++ sez.trim(124399,124416) \
++ se.trim(124417,124527) ++ sez.trim(124528,124779) ++ se.trim(124780,124883) ++ sez.trim(124884,124944) ++ se.trim(124945,124947) \
++ sez.trim(124948,125585) ++ se.trim(125586,125650) ++ wa.trim(125651,125727) ++ se.trim(125728,127228) ++ wa.trim(127229,127261) \
++ se.trim(127262,128343) ++ sez.trim(128344,128456) ++ se.trim(128457,128533) ++ wa.trim(128534,128568) ++ se.trim(128569,129476) \
++ sez.trim(129477,129704) ++ wa.trim(129705,129891) ++ se.trim(129892,130290) ++ sez.trim(130291,131619) ++ wa.trim(131620,131654) \
++ sez.trim(131655,132095) ++ wa.trim(132096,132125) ++ sez.trim(132126,133730) ++ wa.trim(133731,133750) ++ sez.trim(133751,134670) \
++ se.trim(134671,134716) ++ sez.trim(134717,134725) ++ se.trim(134726,134938) ++ sez.trim(134939,135897) ++ se.trim(135898,136875) \
++ gout.trim(136876,137155) ++ se.trim(137156,137343) ++ gout.trim(137344,137589) ++ se.trim(137590,138360) ++ wa.trim(138361,138534) \
++ se.trim(138535,138646) ++ gout.trim(138647,138922) ++ wa.trim(138923,139156) ++ sez.trim(139157,140294) ++ se.trim(140295,140520) \
++ sez.trim(140521,142268) ++ se.trim(142269,142893) ++ sez.trim(142894,144092) ++ gout.trim(144093,144345) ++ wa.trim(144346,144403) \
++ sez.trim(144404,145150) ++ se.trim(145151,146228) ++ gout.trim(146229,146355) ++ se.trim(146356,146661) ++ gout.trim(146662,146919) \
++ se.trim(146920,147277) ++ gout.trim(147278,147377) ++ se.trim(147378,148016) ++ gout.trim(148017,148168) ++ se.trim(148169,148208) \
++ gout.trim(148209,148360) ++ se.trim(148361,148789) ++ gout.trim( 148790,148833) ++ se.trim(148834,148919) ++ sez.trim(148920,148981) \
++ se.trim(148982,148985) ++ sez.trim(148986,149353) ++ se.trim(149354,149896) ++ sez.trim(149897,149967) ++ gout.trim(149968,150014) \
++ se.trim(150015,150294) ++ sez.trim(150295,150652) ++ gout.trim(150653,150698) ++ sez.trim( 150699,150897) ++ gout.trim(150898,150943) \
++ se.trim(150944,150986) ++ gout.trim(150987,151025) ++ sez.trim(151026,151051) ++ gout.trim(151052,151105) ++ sez.trim(151106,151170) \
++ gout.trim(151171,151208) ++ sez.trim(151209,152098) ++ gout.trim(152099,152193) ++ sez.trim(152194,152231) ++ gout.trim(152232,152258) \
++ sez.trim(152259,152348) ++ gout.trim(152349,152382) ++ sez.trim(152383,152440) ++ gout.trim(152441,152514) ++ sez.trim(152515,154726) \
++ wa.trim(154727,154772) ++ sez.trim(154773,154810) ++ se.trim(154811,154811) ++ sez.trim(154812,154966) ++ se.trim(154967,154967) \
++ sez.trim(154968,155453) ++ se.trim(155454,155456) ++ sez.trim(155457,155906) ++ se.trim(155907,155910) ++ gout.trim(155911,156001) \
++ sez.trim(156002,156317) ++ se.trim(156318,157440) ++ gout.trim(157441,157475) ++ se.trim(157476,157971) ++ wa.trim(157972,158008) \
++ se.trim(158009,160821) ++ wa.trim(160822,160861) ++ se.trim(160862,162565) ++ sez.trim(162566,162728) ++ se.trim(162729,163429) \
++ gout.trim(163430,163466) ++ se.trim(163467,163746) ++ gout.trim(163747,163802) ++ se.trim(163803,163845) ++ gout.trim(163846,164094) \
++ sez.trim(164095,165550) ++ wa.trim(165551,165652) ++ sez.trim(165653,165972) ++ wa.trim(165973,166116) ++ sez.trim(166117,168075) \
++ zoom.trim(168076,168087) ++ gout.trim(168088,0)

#merge splices / add opening titles(20th century fox,lucasfilm,long time ago...)

mrg=optitle ++ edit

#add borders so that resolution is 720x480

final=mrg.addborders(0,57,0,57)

#test
s1=stackhorizontal(swca.subtitle("GOUT colors altered",-1,size=26),t.subtitle("difference no zoom",-1,size=26),swse14.subtitle("SE",-1,size=26))
s2=stackhorizontal(edit.subtitle("Hybrid w/ altered colors from GOUT",-1,size=26),swoc.subtitle("GOUT orig. colors",-1,size=26),wa.subtitle("weighted average",-1,size=26))

sv=stackvertical(s1,s2)

#output

return(final)

Function DissolveAGGna(clip a, clip b, int "Duration", string "Mode", float "WindowSize", float "MaskSharpnessStart", float "MaskSharpnessEnd")
{
    #Set Defaults
    Duration=Default(Duration,30)
    width=a.width()
    height=a.height()
    Mode=Default(Mode, "LeftToRight")
    MaskSharpnessStart=Default(MaskSharpnessStart, 50.0)
    MaskSharpnessEnd=Default(MaskSharpnessEnd, 50.0)
    WindowSize=Default(WindowSize, 2.0)
       
    #Duration=Int(Duration/2.0*((2.0-WindowSize)*0.1+2.0))
   
    #Check Input
    Assert(Mode=="LeftToRight" || Mode=="RightToLeft" || Mode=="TopToBottom" || Mode=="BottomToTop",
    \"DissolveAGG: Only Four Modes are possible: LeftToRight, RightToLeft, TopToBotoom BottomToTop. Mode=" + Mode)
   
    #Set Parameters
    EvalString = Mode=="LeftToRight"? "BlankWidth=Int(4/2*WindowSize)
    BlankHeight=height
    startX1=BlankWidth + 0.5
    endX1=1.5
    startY1=0
    endY1=0
    x2=WindowSize*2-2
    y2=0
    ClipLeft=b
    ClipRight=a" : Mode=="RightToLeft"? "BlankWidth=Int(4/2*WindowSize)
    BlankHeight=height
    startX1=1.5
    endX1=BlankWidth + 0.5
    startY1=0
    endY1=0
    x2=WindowSize*2-2
    y2=0
    ClipLeft=a
    ClipRight=b" : Mode=="TopToBottom"? "BlankWidth=height
    BlankHeight=Int(6/2*WindowSize)
    startX1=0
    endX1=0
    startY1=BlankHeight + 0.5
    endY1=3.5
    x2=0
    y2=WindowSize*2-2
    ClipLeft=b
    ClipRight=a" : Mode=="BottomToTop"? "BlankWidth=height
    BlankHeight=Int(6/2*WindowSize)
    startX1=0
    endX1=0
    startY1=3.5
    endY1=BlankHeight + 0.5
    x2=0
    y2=WindowSize*3-4
    ClipLeft=a
    ClipRight=b" : ""
    Eval(EvalString)

    #Make Mask
    BlackBar = BlankClip(a, length=Duration+1, width=BlankWidth, height=BlankHeight, pixel_type="RGB32", fps=a.Framerate())
    WhiteBar = BlankClip(BlackBar, color=$FFFFFF)
    BWmask = Mode=="LeftToRight" || Mode=="RightToLeft" ? StackHorizontal(BlackBar,WhiteBar) : StackVertical(BlackBar,WhiteBar)
    BWmask = BWmask.Animate(0,Duration,"GaussResize",
    \ width, height, startX1, startY1, x2, y2, MaskSharpnessStart,
    \ width, height, endX1, endY1, x2, y2, MaskSharpnessEnd)
   
    #Glue it together
    Trim(a, 0, FrameCount(a)-Duration-2)
    last + Overlay(Trim(ClipLeft, 0, Duration), Trim(ClipRight, FrameCount(ClipRight)-Duration-1, 0), mask=BWmask, pc_range=True)
    last + Trim(b, Duration+1, 0)
   
}



__END__

Luke threw twice…maybe.

Author
Time
 (Edited)

Hey, this could be pretty cool.  I've been thinking of doing something like this, but didn't really have any idea how to go about it.  Could be even better if g-force scripted footage were used to replace the raw GOUT.  I'm going to have to try this out when I get a chance.

By the way, do you have any screenshots?

Author
Time

No, I don't have any screenshots. I don't have anywhere to host them.  Are there any free places to do so?

The raw footage of the gout is pretty messed up but I think after some processing it won't stand out too much from the se footage.

Luke threw twice…maybe.

Author
Time
 (Edited)

Hell with a little bit of script modifying I could try this out with the V3 DVD.

You upload screenshots to imageshack.us

 

Author
Time

That script is pretty cool, but it seems to bright and some colors could use tweaking, damn back to colors again LOL, this had to take some time, were you going to do ESB and ROTJ like this to? but this is very neat, good job.

Author
Time

Yeah I like it that bright.  The HDR filter is mostly responsible for the brightness, and the colors will never be perfect I think.

Luke threw twice…maybe.

Author
Time

That first blockade runner Hybrid looks pretty damn good, impressive!

We want you to be aware that we have no plans—now or in the future—to restore the earlier versions. 

Sincerely, Lynne Hale publicity@lucasfilm.com

Author
Time
 (Edited)

althor1138 said:

Yeah I like it that bright.  The HDR filter is mostly responsible for the brightness, and the colors will never be perfect I think.

Yea I figured the HDR was the one, and you are right, the colors will never be perfect, I couldn't agree with you more, but it is a little to bright for me though, but still very cool.

*edit - I see you have kept some of the SE scenes as well, so the die hards won't like that LOL.

Author
Time

Yeah, if the footage wasn't distractingly different I left it in.  The less gout footage the better but with the least amount of "Special" as possible was the idea lol. I dunno maybe if I run g-force's script through the gout and it blends pretty good with the se in this script I could just edit out the "special" crap altogether.

Luke threw twice…maybe.

Author
Time
 (Edited)

althor1138 said:

maybe if I run g-force's script

That is exactly what I am going to try out, but I already have them anamorphic, so I will have to modify the script some, but I actually like some of the SE additions myself, I may just make me up a hybrid version, but I will definitely have to figure out how to back off some of the brightness.

Author
Time
 (Edited)

Dark JEDI,

Instead of this

hdragc(max_sat=1.0,coef_gain=0.3,min_gain=0.5,max_gain=1.5,protect=1,reducer=1)

You could try something like this and then tweak it up or down til you find what you want.

hdragc(max_sat=1.0,coef_gain=0.1,min_gain=0.1,max_gain=0.3,protect=1,reducer=1)

**EDIT**

These settings are really not so great for the HDR filter.  I didn't know much about HDRAGC when i posted this.  The settings for HDRAGC in the updated script are much better.

Luke threw twice…maybe.

Author
Time
 (Edited)

althor1138 said:

Dark JEDI,

Instead of this

hdragc(max_sat=1.0,coef_gain=0.3,min_gain=0.5,max_gain=1.5,protect=1,reducer=1)

You could try something like this and then tweak it up or down til you find what you want.

hdragc(max_sat=1.0,coef_gain=0.1,min_gain=0.1,max_gain=0.3,protect=1,reducer=1)

Thank you, I will try it out.

So did you have plans to do ESB and ROTJ?

Author
Time

Yeah I suppose I will do something like this with esb and rotj but it might be a few weeks before i start.  I'd like to run anh through g-force's script and see what happens when I merge the footage(that will take a week on my pc,lol). 

Luke threw twice…maybe.

Author
Time

This is EXCELLENT. I am currently working on something REALLY similar, but your screenshots look MUCH better.

 

I have a short question - are you using a PAL source, or NTSC ?

Author
Time

I assume it's NTSC, since the final output resolution is 720 x 480.

Guidelines for post content and general behaviour: read announcement here

Max. allowable image sizes in signatures: reminder here

Author
Time

Moth3r is right.  This is the NTSC version.  I've heard on this forum that the PAL GOUT is not so great for ANH and ESB. With that being said, is the PAL SE transferred correctly, or is it a conversion from NTSC like the GOUT? Just wondering because I have both but to be honest I've never even loaded the PAL discs to look at them.

Luke threw twice…maybe.

Author
Time

Fine, I checked it with small modifications for PAL

 

swse=mpeg2source("d:\STAR_WARS_EPISODE_IV\VIDEO_TS\se.d2v").AssumeFPS(23.976).Lanczos4Resize(720, 480).trim(711,0).ConvertToYV12()

sw=mpeg2source("d:\STAR_WARS_GOUT\VIDEO_TS\new.d2v").AssumeFPS(23.976).Lanczos4Resize(720, 480).trim(689,0).ConvertToYV12()

optitle=mpeg2source("d:\STAR_WARS_GOUT\VIDEO_TS\new.d2v").AssumeFPS(23.976).Lanczos4Resize(720, 480).trim(0,688).crop(6,102,-2,-104).NNEDI2(dh=true, field=0).NNEDI2(dh=false,field=1).spline64resize(720,366).ConvertToYV12()#

 

 

And in the end ....

 

borders=edit1.ConvertToYUY2().addborders(0,57,0,57)

return borders.Lanczos4Resize(720, 576).AssumeFPS(25)

 

 

In other words, I had to slow down every video source to 23.976 fps and resize it to 720x480, but then I had to convert the colorspace to YV12, or else I got an error message,

At the end I had to convert it to YUY2() (again an error message if I kept the video in YV12) , resize it to 720x576 and speed it up to 25fps.

 

The resulting video looks very nice, but there are several problems

 

1) My blockade runner scene is still blue. Less blue than the original SE footage, but much more blue than your pic (differences in PAL / NTSC sources ??? )

2) The GOUT colors are NOT the correct representation of the theatrical version, the GOUT video is red-shifted. Maybe it wouldn't be a bad idea at all to make a very basic video correction before any processing ?

3) You missed some SE changes, check doubleofive's list

4) Saturation increase would be a good idea :-)

5) The "Move along, move along" sequence has a small repeating segment, first time it includes the footage from the SE, then the same part from the gout. I don't know if it's an error with your script or if it's again a difference between the PAL and GOUT versions.

Still, a VERY good script

 

Author
Time

I think the less resizing you do the better off you will be. I think it would be better if you didn't resize the pal sources to match the script.  Just change the cropping and resizes in the script to match the sources you are using. I have no experience with Pal actually.  I live in PAL land but I'm american and most of my dvd's are region 1.  Are PAL dvd's not natively yv12? I tried to make sure there wouldn't have to be any color format changes.

1) I will have to find my pal discs and do a comparison using your script modification to see if there is a difference in the sources.

2) The gout colors are bad (so is the SE) and I'm currently encoding with g-force's script so that I can use it instead of the raw gout(virtualdub is telling me 6 days as of right now before it's finished). I'd suggest this since the raw footage is a bit of an eyesore when pit against the clarity of the SE.

3) I will probably substitute gout footage for all of the se changes after I have g-force's version to work with.

4)See #2 lol.

5) I've just double checked the move along sequence and didn't see any repeating sequence.  Could be a difference in the sources or the script is wrong and my eyes are fooling me.

Luke threw twice…maybe.

Author
Time
 (Edited)

Sorry for being an AVISynth newbie but what are all the plug-ins do you need to install to use this script? Also, how exactly do you plug in the script? Where do you paste it? Sorry for being so AVISynth challenged. Can anyone help me?

Author
Time
 (Edited)

althor1138, I'd like to help adapt your script to PAL properly, could you please post some screengrabs with the frame numbers so I can identify how the numbering of the frames lines up with the PAL version? For instance frame 1200 might be frame 1202 in the PAL version and consistently +2 frames, It'd be really helpful to do that. The other thing is, the g-force script that I have is probably out of date, but I don't know where in the thread the new one for the PAL discs are, can you/someone please point me to it? I do have the raw 50+ GB files from when I did it a year or so ago, but I'm thinking I'll redo them all from scratch in a way that is better suited to combining with non-se special-edition scenes.

Also, please post all the Loadplugin lines, I remember with great difficulty setting up the g-force script for the first time for the very reason that the required plugins are not directly intuitive (for instance, some of them you need specific versions)!

Thanks for this project, btw, it should be really good... especially since it'll allow people to make their own video from their own 2006 DVD's easily.

[ Scanning stuff since 2015 ]

Author
Time

RU.08 said:


althor1138, I'd like to help adapt your script to PAL properly, could you please post some screengrabs with the frame numbers so I can identify how the numbering of the frames lines up with the PAL version? For instance frame 1200 might be frame 1202 in the PAL version and consistently +2 frames, It'd be really helpful to do that.

Yes indeed, I thought it was really helpful when Red5 kindly posted that info here.
That single frame from the end of a reel is cut from NTSC, but included in PAL GOUT. That's the only known difference for SW.
Also in that thread are shown the differing frames from the sequels, again with thanks to Red5.

And see this thread too. No screenshots, but there's frame numbers galore.
Actually, I've been thinking of updating that thread to show the slight NTSC v. PAL variances. I'd appreciate your help!
If you've got PAL rips at hand, please check where the reel changes occur.
Look for the first frame of each reel, note its frame number, and compare against the NTSC numbers I've posted in that thread. Please report any differences you find, however small they might be.

RU.08 said:

The other thing is, the g-force script that I have is probably out of date, but I don't know where in the thread the new one for the PAL discs are, can you/someone please point me to it?

It'll be on the first page of the thread

However, in practice you must take into account the “fuckwit factor”. Just talk to Darth Mallwalker…
-Moth3r