- Post
- #576607
- Topic
- STAR WARS - Thunderstruck (videoclip on youtube)
- Link
- https://originaltrilogy.com/post/id/576607/action/topic#576607
- Time
Really good editing. And funny how you made the scenes fit with the lyrics!
Really good editing. And funny how you made the scenes fit with the lyrics!
TServo2049 said:
I'm absolutely not faulting you, Y_T - the red information in the transfer is just that screwed up.
No, of course I understand you're not! It sure is screwed up.
frank678 said:
Can someone help me with my knowledge on this - how much of the blu-ray redness is red damage/red shift now in the original damaged negative and how much is redness boosted in the color correction moves done by Lucasfilm.
It is all by Lucasfilm. They call it "George's vision".
Check this, a 70mm frame:
And the same from the blu-ray:
Now let's compare the part at the upper left:
In the original it can clearly be seen that there's no red clipping. You can see that the red light shines through some glass/plastic which has it's own reflection. In the blu-ray the red light shines stronger than the reflection on the outside of it.
EDIT:
Thought about another thing that shows it even more.
Harmy posted this re-timed 70mm frame in the color timing thread, which should look like the original technicolor version:
Here's the same from the blu-ray:
frank678 said:
For those that don't know how to run scripts could you post up a frames of each just to see how much you can dig out of the Blu-ray source (not for feedback purposes since they are experimental scripts)
(If you want to see them full-sized, click "direct links" on the right side and paste in notepad, then you can use those as links for the full images.)
I also want to point out again before anybody criticizes the colors in these new scripts, that they're just experimental scripts I wrote kinda fast when I had nothing else to do some weeks ago. I know the shadows are blue and all that. I simply did that to try and replicate what I've seen in the shots from the Senator and what Harmy posted in the color timing thread.
And most likely I won't be updating these scripts for a long time. There is much work ahead on DJ's Blu V2.
About lobster-man: It was simply something that happened due to the red boost applied to the special edition. Someone at Lucasfilm apparently thought the movie didn't have enough red so they boosted them so much that the brightest reds got clipped, and skintones would sometimes appear too saturated, as with this guy.
Here's how he looks in the raw blu-ray:
And just for fun, here's the same using the first of the two experimental scripts, which is my favorite of those scripts. :)
@msycamore: Interesting! I actually hadn't noticed those things but now that you mention it, the lights on Vader's belt are indeed red when he first appears. Very weird. Could it be some color-noise reduction applied on the films that caused this?
Well, the settings I posted here back then are very outdated now.
Having better references now, I'm sure I could do better if I remade the settings today. Currently I'm a bit too busy to do it though.
Here's an experimental script I made a while ago, trying to make make the movie look more like the technicolor version:
DirectShowSource("Starwars.mkv") # Replace with the filename of the movie.
ConvertToRGB32()
GiCoCu("BD1.cur")
selectivecolour(last,\
0,-0.05,0,\
-0.4,0,0,\
-0.05,0.25,0,\
0,0.5,-0.5,\
0,0,0,\
-0.25,-0.5,0,\
false)GiCoCu("BD4.cur")
ConvertToYV12()
Function SelSah_v3 (clip clp, float "Sat", float "Hue", int "Luma_Low", int "Luma_High", int "Low_OS", int "High_OS",
\ Float "minSat", float "maxSat", float "startHue", float "endHue", float "interp", clip "clp2",
\ bool "Exclude", bool "Preview")
{# Extends Tweak to allow selective control of saturation and hue over a defined luma range.
# Assembled by WorBry. MaskTools computations kindly provided by Didee. Thanks to Gavino for advice on script syntax.
# Requires YV12 clp input and assumes full (pc) luma range 0-255.
# Requires MaskTools v2. Tweak should be v2.58 or higher.
#
# Parameters:
# Clp - Is the input clip that will be processed.
# Clp2 - Provides option to use a second clip with different luma curve for the saturation/hue control.
# Sat - Saturation. Desaturation 0.0 =< 1.0 > Increased saturation. See Tweak 2.58 doc
# Hue - Hue. Range -180 to +180. Default 0.0. See Tweak 2.58 doc
# startHue - See Tweak 2.58 doc for details. Range 0 - <360. Default 0
# endHue - See Tweak 2.58 doc for details. Range >0 - 360. Default 360
# minSat - See Tweak 2.58 doc for details. Range 0 - <150 ; must be < MaxSat. Default 0
# maxSat - See Tweak 2.58 doc for details. Range >0 -150. Default 150
# interp - See Tweak 2.58 doc for details. Range 0 - 32. Default 16
# Luma_Low - Lower luma range point. Range 0 - 255* Default 0
# Luma_High - Upper luma range point. Range 0 - 255* Default 255
# Low_OS - Lower over-shoot point. Provides soft roll-off at lower range boundary. Range 0 - 255*
# Default is Luma_Low+20 for normal (inclusive) range mode and Luma_low-20 for Exclude mode.
# High_OS - Upper over-shoot point. Provides soft roll-off at upper range boundary. Range 0 - 255*
# Default is Luma_High-20 for normal (inclusive) mode and Luma_High+20 for Exclude mode.
# Exclude True/False. True excludes the range selected by the luma set points. False (default) includes the selected range.
# Preview - True/False. True gives preview of input clip, output and luma masks with original and output chroma.
# Default is false
#
# *Note: the luma set points are limited with respect to each other to ensure correct orientation and avoid overlap.
#
#Defaults:
Sat = default(Sat, 1.0)
Hue = default(Hue, 0.0)
startHue = default(startHue, 0)
endHue = default(endHue, 360)
minSat = default(minSat, 0)
maxSat = default(maxSat, 150)
interp = default(interp, 16)
Exclude = default(Exclude, False)
Luma_Low = default(Luma_Low, 0.0)
Luma_High = default(Luma_High, 255)
Low_OS = Exclude ? default(Low_OS, Luma_Low + 20)
\ : default(Low_OS, Luma_Low - 20)
High_OS = Exclude ? default(High_OS, Luma_High - 20)
\ : default(High_OS, Luma_High + 20)
clp2 = default(clp2, clp)
Preview = default(Preview, False)
#
#Limits:
Sat = Sat <0.0 ? 0.0 : Sat
Hue = Hue <-180 ? -180 : Hue > 180 ? 180 : Hue
Luma_Low = Luma_Low <0.0 ? 0.0 : Luma_Low >255 ? 255 : Luma_Low
Luma_High = Luma_High <0.0 ? 0.0 : Luma_High >255 ? 255 : Luma_High
Low_OS = Exclude && Low_OS \ : Exclude && Low_OS > High_OS ? ((Luma_Low + Luma_High)/2)
\ : Low_OS <0.0 ? 0.0 : Low_OS >Luma_Low ? Luma_Low : Low_OS
High_OS = Exclude && High_OS >Luma_High ? Luma_High
\ : Exclude && High_OS < Low_OS ? ((Luma_Low + Luma_High + 2)/2)
\ : High_OS 255 ? 255 : High_OS
#
#Limits for startHue, endHue, minSat and maxSat set by Tweak
#
#Create Saturation and Hue control clip:
twclp = clp2.tweak(sat=Sat, hue=Hue, startHue=startHue, endHue=endHue,
\ minSat=minSat, maxSat=maxSat, interp=interp, coring=false)
#
#Create luma mask with low/high range points and roll-off gradient at boundaries:
#"Include" [0]<-black->[Low_OS]<-gradient->[Luma_Low]<-white->[Luma_High]<-gradient->[High_OS]<-black->[255]
#"Exclude" [0]<-white->[Luma_Low]<-gradient->[Low_OS]<-black->[High_OS]<-gradient->[Luma_High]<-white->[255]
#
Low_OS = string(Low_OS) Luma_Low = String(Luma_Low)
Luma_High = String(Luma_High) High_OS = String(High_OS)
#Create "Include" range expression for mask:
blkI = "x "+Low_OS+" < x "+High_OS+" > | 0 "
whtI = "x "+Luma_Low+" >= x "+Luma_High+" <= & 255 "
grLI = "x "+Luma_Low+" < 255 x "+Low_OS+" - "+Luma_Low+" "+Low_OS+" - / * "
grHI = "x "+Luma_High+" > 255 1 x "+Luma_High+" - "+High_OS+" "+Luma_High+" - / - * "
exprI = blkI + whtI + grLI + grHI + "x ? ? ? ?"
#Create "Exclude" range expression for mask:
blkE = "x "+Low_OS+" >= x "+High_OS+" <= & 0 "
whtE = "x "+Luma_Low+" < x "+Luma_High+" > | 255 "
grLE = "x "+Low_OS+" <= 255 x "+Low_OS+" - "+Luma_Low+" "+Low_OS+" - / * "
grHE = "x "+Luma_High+" < 255 x "+High_OS+" - "+Luma_High+" "+High_OS+" - / * "
exprE = blkE + whtE + grLE + grHE + "x ? ? ? ?"
#Luma Mask (greyscale for output):
lmask = twclp.mt_lut(expr = (Exclude ? ExprE : ExprI))
lmaskg = lmask.Greyscale()
# Apply luma mask:
Output = mt_merge(clp,twclp,lmaskg,luma=true,Y=2,U=3,V=3)
#
#PREVIEW set-up
clps =clp.Subtitle("Original Clip").LanczosResize(640,360)
outs =output.Subtitle("Final Output").LanczosResize(640,360)
#Luma Mask with chroma from tweaked clp
lmcts = lmask.Subtitle("Luma mask + Tweaked Chroma").LanczosResize(640,360)
#Luma Mask with chroma from original clp
lmcc = Exclude ? clp2.mt_lut(expr=ExprE) : clp2.mt_lut(expr=exprI)
lmccs = lmcc.Subtitle("Luma Mask + Original Chroma").LanczosResize(640,360)
#Create composite view
Clpout = StackVertical(clps,outs)
Masks = StackVertical(lmccs, lmcts)
Prev = StackHorizontal(Clpout,Masks)
#
Final = Preview ? Prev : Output
#
Return(Final)}
SelSah_v3(Luma_Low=0, Luma_High=25, startHue=310, endHue=80, Sat=0.50)
ConvertToRGB32()GiCoCu("BDtech.cur")
selectivecolour(last,\
0.2,0,0,\
0,0.05,-0.05,\
0,0.20,0,\
0,0,0,\
0,0,0,\
-0.25,-0.5,0,\
false)GiCoCu("BDtech2.cur")
Levels(0, 0.85, 255, 0, 255)
ConvertToYV12()
You'll need the custom curve files for this script. (and the following one)
Here's an alternate version of the script, aimed more for the 70's projection look as seen in Mike Verta's photos he posted:
DirectShowSource("Starwars.mkv") # Replace with the filename of the movie.
ConvertToRGB32()
GiCoCu("BD1.cur")
selectivecolour(last,\
0,-0.05,0,\
-0.4,0.3,0,\
-0.05,0.25,0,\
0,0.5,-0.5,\
0,0,0,\
-0.25,-0.5,0,\
false)GiCoCu("BD4.cur")
ConvertToYV12()
Function SelSah_v3 (clip clp, float "Sat", float "Hue", int "Luma_Low", int "Luma_High", int "Low_OS", int "High_OS",
\ Float "minSat", float "maxSat", float "startHue", float "endHue", float "interp", clip "clp2",
\ bool "Exclude", bool "Preview")
{# Extends Tweak to allow selective control of saturation and hue over a defined luma range.
# Assembled by WorBry. MaskTools computations kindly provided by Didee. Thanks to Gavino for advice on script syntax.
# Requires YV12 clp input and assumes full (pc) luma range 0-255.
# Requires MaskTools v2. Tweak should be v2.58 or higher.
#
# Parameters:
# Clp - Is the input clip that will be processed.
# Clp2 - Provides option to use a second clip with different luma curve for the saturation/hue control.
# Sat - Saturation. Desaturation 0.0 =< 1.0 > Increased saturation. See Tweak 2.58 doc
# Hue - Hue. Range -180 to +180. Default 0.0. See Tweak 2.58 doc
# startHue - See Tweak 2.58 doc for details. Range 0 - <360. Default 0
# endHue - See Tweak 2.58 doc for details. Range >0 - 360. Default 360
# minSat - See Tweak 2.58 doc for details. Range 0 - <150 ; must be < MaxSat. Default 0
# maxSat - See Tweak 2.58 doc for details. Range >0 -150. Default 150
# interp - See Tweak 2.58 doc for details. Range 0 - 32. Default 16
# Luma_Low - Lower luma range point. Range 0 - 255* Default 0
# Luma_High - Upper luma range point. Range 0 - 255* Default 255
# Low_OS - Lower over-shoot point. Provides soft roll-off at lower range boundary. Range 0 - 255*
# Default is Luma_Low+20 for normal (inclusive) range mode and Luma_low-20 for Exclude mode.
# High_OS - Upper over-shoot point. Provides soft roll-off at upper range boundary. Range 0 - 255*
# Default is Luma_High-20 for normal (inclusive) mode and Luma_High+20 for Exclude mode.
# Exclude True/False. True excludes the range selected by the luma set points. False (default) includes the selected range.
# Preview - True/False. True gives preview of input clip, output and luma masks with original and output chroma.
# Default is false
#
# *Note: the luma set points are limited with respect to each other to ensure correct orientation and avoid overlap.
#
#Defaults:
Sat = default(Sat, 1.0)
Hue = default(Hue, 0.0)
startHue = default(startHue, 0)
endHue = default(endHue, 360)
minSat = default(minSat, 0)
maxSat = default(maxSat, 150)
interp = default(interp, 16)
Exclude = default(Exclude, False)
Luma_Low = default(Luma_Low, 0.0)
Luma_High = default(Luma_High, 255)
Low_OS = Exclude ? default(Low_OS, Luma_Low + 20)
\ : default(Low_OS, Luma_Low - 20)
High_OS = Exclude ? default(High_OS, Luma_High - 20)
\ : default(High_OS, Luma_High + 20)
clp2 = default(clp2, clp)
Preview = default(Preview, False)
#
#Limits:
Sat = Sat <0.0 ? 0.0 : Sat
Hue = Hue <-180 ? -180 : Hue > 180 ? 180 : Hue
Luma_Low = Luma_Low <0.0 ? 0.0 : Luma_Low >255 ? 255 : Luma_Low
Luma_High = Luma_High <0.0 ? 0.0 : Luma_High >255 ? 255 : Luma_High
Low_OS = Exclude && Low_OS \ : Exclude && Low_OS > High_OS ? ((Luma_Low + Luma_High)/2)
\ : Low_OS <0.0 ? 0.0 : Low_OS >Luma_Low ? Luma_Low : Low_OS
High_OS = Exclude && High_OS >Luma_High ? Luma_High
\ : Exclude && High_OS < Low_OS ? ((Luma_Low + Luma_High + 2)/2)
\ : High_OS 255 ? 255 : High_OS
#
#Limits for startHue, endHue, minSat and maxSat set by Tweak
#
#Create Saturation and Hue control clip:
twclp = clp2.tweak(sat=Sat, hue=Hue, startHue=startHue, endHue=endHue,
\ minSat=minSat, maxSat=maxSat, interp=interp, coring=false)
#
#Create luma mask with low/high range points and roll-off gradient at boundaries:
#"Include" [0]<-black->[Low_OS]<-gradient->[Luma_Low]<-white->[Luma_High]<-gradient->[High_OS]<-black->[255]
#"Exclude" [0]<-white->[Luma_Low]<-gradient->[Low_OS]<-black->[High_OS]<-gradient->[Luma_High]<-white->[255]
#
Low_OS = string(Low_OS) Luma_Low = String(Luma_Low)
Luma_High = String(Luma_High) High_OS = String(High_OS)
#Create "Include" range expression for mask:
blkI = "x "+Low_OS+" < x "+High_OS+" > | 0 "
whtI = "x "+Luma_Low+" >= x "+Luma_High+" <= & 255 "
grLI = "x "+Luma_Low+" < 255 x "+Low_OS+" - "+Luma_Low+" "+Low_OS+" - / * "
grHI = "x "+Luma_High+" > 255 1 x "+Luma_High+" - "+High_OS+" "+Luma_High+" - / - * "
exprI = blkI + whtI + grLI + grHI + "x ? ? ? ?"
#Create "Exclude" range expression for mask:
blkE = "x "+Low_OS+" >= x "+High_OS+" <= & 0 "
whtE = "x "+Luma_Low+" < x "+Luma_High+" > | 255 "
grLE = "x "+Low_OS+" <= 255 x "+Low_OS+" - "+Luma_Low+" "+Low_OS+" - / * "
grHE = "x "+Luma_High+" < 255 x "+High_OS+" - "+Luma_High+" "+High_OS+" - / * "
exprE = blkE + whtE + grLE + grHE + "x ? ? ? ?"
#Luma Mask (greyscale for output):
lmask = twclp.mt_lut(expr = (Exclude ? ExprE : ExprI))
lmaskg = lmask.Greyscale()
# Apply luma mask:
Output = mt_merge(clp,twclp,lmaskg,luma=true,Y=2,U=3,V=3)
#
#PREVIEW set-up
clps =clp.Subtitle("Original Clip").LanczosResize(640,360)
outs =output.Subtitle("Final Output").LanczosResize(640,360)
#Luma Mask with chroma from tweaked clp
lmcts = lmask.Subtitle("Luma mask + Tweaked Chroma").LanczosResize(640,360)
#Luma Mask with chroma from original clp
lmcc = Exclude ? clp2.mt_lut(expr=ExprE) : clp2.mt_lut(expr=exprI)
lmccs = lmcc.Subtitle("Luma Mask + Original Chroma").LanczosResize(640,360)
#Create composite view
Clpout = StackVertical(clps,outs)
Masks = StackVertical(lmccs, lmcts)
Prev = StackHorizontal(Clpout,Masks)
#
Final = Preview ? Prev : Output
#
Return(Final)}
SelSah_v3(Luma_Low=0, Luma_High=25, startHue=310, endHue=80, Sat=0.50)
ConvertToRGB32()GiCoCu("BDtech.cur")
selectivecolour(last,\
0.2,0,0,\
0,0.05,-0.05,\
0,0.20,0,\
0,0,0,\
0,0,0,\
-0.25,-0.5,0,\
false)ConvertToYV12()
SelSah_v3(Luma_Low=0, Luma_High=25, startHue=310, endHue=80, Sat=0.50)
ConvertToRGB32()
Levels(0, 0.90, 255, 0, 255)
selectivecolour(last,\
0,0,0,\
0,0,-0.1,\
0,0.5,0,\
0,0,0,\
0,0,0.2,\
0,0,0,\
false)GiCoCu("technew.cur")
Levels(0, 0.90, 255, 0, 255)
ConvertToYV12()
And note that these are only experimental scripts. They will have their ups and downs. Feel free to play around with them and change settings. :)
By the way, for those who wants to make sure the scripts work like they should, get this file.
I've included my whole plugins folder for avisynth there, which should usually be put in C:\Program files (x86)\AviSynth 2.5\
I've also included some system files. The latest version of avisynth which is also the most stable version I've come across, and a couple other files which are used by avisynth and it's plugins. If you have a 32-bit OS, put them in C:\Windows\System32\ , in 64-bit OS, put them in C:\Windows\SysWOW64\
That's a great improvement indeed.
I don't know why I thought it was a DVD upscale... haha
Can't wait for the blu-ray release. :)
CatBus said:
We need You_Too.
You need me?
In fact, Harmy Film © has just released their latest movie, "Episode VI Despecialized - In space no one can hear you scream NOOOO"
Here's the opening screen:
This is what came up on google.
I think he meant the windows in cloud city which were replaced by CGI in the SE.
Ok, now I did a comparison with one of those HDTV screenshots. It actually proved me wrong about it being upscaled, since it obviously has more resolution in it, and is less cropped on the bottom. (Though it's more cropped on the top, left and right sides.) It also has a different color timing.
Ok, I managed to "find" the NTSC version. :)
I threw the blu V2 script on it, and I'll show you some comparisons here.
Pic 1: Just cropping and bicubic resize without filtering. (Same method used to resize pics in photoshop)
Pic 2: Upscaling, sharpening on grain level, motion-adaptive deinterlacing/antialiasing and some more.
So this is basically what we'll be able to do in case next year's blu-ray release would be bad.
Compared it to the SE and it looks great now. The background doesn't jump around in 2.0 and you did a great job on removing the shadow from the flying robot.
You know, it would be interesting to see what would come out if using mine and DJ's blu v2 script (or well, a modified version) on the NTSC version of the DVD.
Though if the blu-ray release next year would look good, there's no need of course.
And I agree with Jonno, it's a really good movie! I saw it the first time maybe 7 or 8 years ago, and I didn't know anything about it, other than the fact it was made by James Cameron.
Apparently there's a blu-ray release planned for next year, but googling around for this HDTV version, I found some screenshots and they look like very filtered DVD-upscales.
EDIT: Seems the google link didn't come out right for some reason. Go to image size on that google search and set it to "exactly" 1280x576. That'll give you the screenshots.
Just like everyone else, I was surprised at how good the recording sounded considering it's age. It's nice to hear the audience reactions!
Not criticizm, just a couple tips for you: If you're aiming for a balanced look, the new screenshots are slightly too green and a bit desaturated. All three movies in the GOUT are desaturated, but after a lot of analyzing of it during my project with dark_jedi, I came to the conclusion that SW might be about 25% less saturated than ESB and ROTJ too.
Good luck with your project!
The DVD covers are included in the torrents I think.
In case you haven't read through dark_jedi's thread, I'm working with him on a blu-ray upscale which will look so much better than the V3 DVDs that you should really check that one out once it's finished. There's been talk that someone might downscale it and make a V4 DVD set of them.
And of course, you could download Harmy's versions and use ConvertXtoDVD or some similar software to make DVDs from them.
I recommend both versions since each has their pro's. Harmy works from the SE blu-ray's which means good resolution and no smearing/ghosting, while me and dark_jedi are working from the 2006 bonus DVDs, improving them as much as possible.
Yeah, good luck with school Harmy!
Thanks a lot to everyone involved. It's gonna be interesting to hear this one.
Watched it now.
The part where George says he didn't "experience" Star Wars like everyone else going to the cinema knowing nothing about it, made me think that's gotta be one big reason why he doesn't understand the importance of preserving the originals.
He's spent so much time focusing on his "vision" that the experience itself has been ignored.
@LexX: Funny, I see those SW ice creams in the shops all the time. (With ROTS Vader on them) Haven't tried them though!
Ok, great!
Personally I couldn't hear anything wrong in any of your mixes but like you say that would require quite an equipment and ears.
Anyway, it's nice to know you'll be able to "perfect" the audio for ESB and ROTJ too. :)
That's great news!
Maybe this is a bit early but will this "newfound" knowledge allow you to make even better versions of the ESB and ROTJ 5.1 mixes too?
I don't have a surround system myself but I'm asking since me and dark_jedi would love to have the best possible sound mixes for the Blu V2.
Tobar said:
Now that's one of the funniest things I've seen in a long time. Especially the stormtrooper!