View Full Version : Horrible Fawlty Towers PAL, sample incl.
Has anyone tried to clean Fawlty Towers DVD PAL Box?
This legendary John Cleese's TV-serie is made in 1975 and you can really tell that just by looking this DVD. This must be the worst quality dvd I have ever bought.
Of course the picture is full of noise and interlaced. The picture is also burned in many parts, but the worst part is that there seems to be something bigger problem too. Seems to me like some line edges in the details are somehow broken or twisted.
I have included a little 8 sec sample (about 6,35 MB.
http://students.turkuai.fi/users/toviital/temp/fawlty.rar
If anyone has succeed to find some good script with this tv-serie, let me know.
Mug Funky
5th May 2004, 08:23
IIRC, some of the scene cuts in that show had a peculiar horizontal wobbling effect (remember "dune" the old DOS game? i'm having a vision!)
also, the outdoor scenes are all shot on film, and probably telecined the bad way (these shows were made quickly, so corners were probably cut technically).
the sample is downloading at this end, so bear with me...
what are you hoping to backup to? if it's SVCD, it'll probably encode interlaced pretty well - old video had shocking horizontal resolution, so interlacing wont be as much of a compression hit as you'd think (just so long as you set zigzag scanning in your mpeg-2 encoder)
...oh, it's just downloaded.
RAINBOWS! WEEEEEEEE!
...i'll get back to you on this, but i'm sure mf has some ideas.
Mug Funky
5th May 2004, 09:14
okay, here's my attack on the rainbows.
unfortunately, the chroma rainbows actually interfere with the luma! that's what happens when you use composite to transfer from old tapes i suppose.
function ChubbyRain(clip c, int "th", int "radius")
{
th = default(th,10)
radius = default(radius,3)
u = c.utoy()
v = c.vtoy()
uc = u.yv12convolution(horizontal="1",vertical=
\"1 -2 1",Y=3,U=0,V=0,usemmx=true)
vc = v.yv12convolution(horizontal="1",vertical=
\"1 -2 1",Y=3,U=0,V=0,usemmx=true)
cc = c.yv12convolution(horizontal="1",vertical=
\"1 2 1",Y=2,U=3,V=3,usemmx=true).temporalsoften(3,0,255,16,2)
rainbow=overlay(uc,vc,mode="add").binarize(10,upper=false)
\.pointresize(u.width*2,u.height*2)
overlay(c,cc,mask=rainbow)
}
script name shamelessly stolen from Bowfinger.
on the sample you've given, this will kill all the chroma rainbows, but it still leaves twisted luma. perhaps something like removedirt can work on these, but i doubt you can do much at all with it.
usage:
chubbyrain()
arguments:
th = rainbow threshold. i just left it at 10... it's not really tested, but it worked for this clip
rad = radius to smooth troubled chroma along. i pulled a default out of the air, and it seems to work okay (3). try a lower number for more speed.
you need the latest MaskTools to run this script.
i'm sure there's better de-rainbowers out there. i just hadn't written one yet (no good samples - i'll definitely hold on to this one - thankyou very much)
[edit]
removedirt works well on the remaining wigglies. you might want to deinterlace (or smart bob) first though.
[edit edit]
hmmm... looks like chubbyrain only works on interlaced rainbows... sorry anime people :)
Malcolm
5th May 2004, 09:29
Hi Valky,
i've captured Fawlty Towers some weeks ago from BBC Prime with my DVB card. (btw. i love Fawlty Towers + Monty Python!)
i'd say your DVD version is oversharped by a large amount. also this burning in white areas didn't occur in my version. but you can see in both versions that the material is 30 years old!
here's the script (from my memory) that i used to encode it.
mpeg2source("fawlty.d2v", cpu=4) # cpu=4 eliminates the blockiness.
# Maybe you should use cpu=6 to eliminate the mosquito noise
Viewfields() # separating the interlaced frame in 2 non-interlaced parts,
# so that interlacing-unaware filters can be used
UnDot()
Fluxsmooth(7,7)
UnViewFileds() # brining the interlaced frame together again
Limiter()
This script will not help with your specific problems (oversharpening, burning, rainbowing), but it will enhance the quality and makes the video better compressable!
You should also think about using deen(). Maybe deen("a2d",1,1,3)
I hope this helps!
Btw. I'm missing the last 5 minutes of 'The Psychiatrists'. Can you upload them somewhere i can get it from?? :) :)
Greetings,
Malcolm
zilog jones
5th May 2004, 11:33
If it's anything like The Young Ones DVD I got, they probably used a pretty low bitrate - they managed to fit SIX episodes on one DVD! And don't forget these are BBC series, so they're a FULL half hour!
I can't give you a sample of it though - my brother took the DVD away with him(grrr!). Plus it's *slightly* less old, but we're still talking early 80s here.
Mug Funky
5th May 2004, 15:49
hehe... beat this: Soap, complete 1st series, NTSC interlaced, 10 eps per disc (3 discs). half-hour episodes as well (actually, i haven't measured this, but there's no "ad-break time" cuts in the episodes).
it's surprising how much old video can fit on a DVD. these are blurry as hell, but reasonably clean - no visible artefacts.
[edit]
man, i'd love to have the Young Ones. probably get it on video - it suits the time. "i wish we 'ad a video, coz then we could tape the spot, and watch it later"
Oh man. I just noticed those horrible scenes that are shot outside the hotel. Those scenes have even more noise if possible :)
Btw, I guess I am encoding them to rv10 since I hate those macroblocs that I have had with my previous dvd box (Robin of sherwood). They seem to happen even more often when using 4:3 material and I guess I'm targeting resolution 480 233mb or 512 and 350mb.
I can't wait how long it will take to get something satisfying from these episodes. Horrible, horrible....
Thank for the tips. I guess the sample was enough to show what kind of problems there are?
scharfis_brain
5th May 2004, 23:48
but I doubt rv10 can hadle interlaced video without deinterlacing...
zilog jones
7th May 2004, 11:14
Originally posted by Mug Funky
hehe... beat this: Soap, complete 1st series, NTSC interlaced, 10 eps per disc (3 discs). half-hour episodes as well (actually, i haven't measured this, but there's no "ad-break time" cuts in the episodes).
it's surprising how much old video can fit on a DVD. these are blurry as hell, but reasonably clean - no visible artefacts.
Yeah, The Young Ones looks OK most of the time, and it was one of those few BBC series to use video cameras for outdoor scenes (thank God, it seemed they always used really crappy film!), except for the whole bus thing on the last episode which was filmed. It's only when you actually pause the video when you notice that it is notcieably blocky, but then again, comparing 20-year-old analogue video to new expensive digital transfers of films is quite pointless...
man, i'd love to have the Young Ones. probably get it on video - it suits the time. "i wish we 'ad a video, coz then we could tape the spot, and watch it later"
Yeah, I got half of the first series on VHS, but they cut the ending credits on all but the last episode. It's such a great song, though! One of those "stuck in your head FOREVER" tunes. The tapes still have the funky original original BBC Video intro, though! Heehee, pretty lights...
Mug Funky
7th May 2004, 11:22
the always used to use film for OB for some reason. monty python's flying circus is a good example (but any british TV show right up to the 90's may have it). i suppose early video equipment wasn't all that portable.
Teegedeck
7th May 2004, 17:25
Let me just say that I think it is a disgrace that any company should demand money for that DVD box. You, the customer, should get money for your work on the postproduction that the BBC should've done! ;)
I've been contemplating buying that box myself - it's one of my all-time favourite series. So I guess I'll just have to wait another decade; maybe then a decent edition will be out.
Valky
14th May 2004, 22:16
Some improvements to rainbow effects can be seen here:
http://forum.doom9.org/showthread.php?s=&postid=492060
And the screenshots I took:
http://students.turkuai.fi/users/toviital/temp/rainbows.png
Another box which is not in a good state, like Fawlty Towers, is the All In the Family one (Archie Bunker). It's worse than Fawlty Towers, I think. I had to filter that one or I just wouldn't look at it on my tv.
It's only available in NTSC so I converted it to PAL KVCD and filtered, the results are good.
Sharro
18th May 2004, 18:31
You may also include these wonderful BBC series in the "bad quality" dvd's, 4 EPS per DVD, 2 x 2ch Ac3 tracks and a few simple extras...
But ... the outdoor scenes ... yacccckkk.... noise noise noise...and more noise... there are a few outdoor night scenes... that they would have been better if they stayed sleeping ....
All the best.
Sharro
scharfis_brain
18th May 2004, 19:21
I think, they took low cost FILM with low res (meaning high noise) but being sensitive to light
R3Z
9th January 2009, 05:48
Bumping an almost 5 year old thread :)
I just got the Young Ones box sets for xmas and my first thought was to see how they can be improved. Heres my attemps and can post my scripts if wanted;
http://www.users.on.net/~inet_s51/Y1/o.jpg
http://www.users.on.net/~inet_s51/Y1/p.jpg
http://www.users.on.net/~inet_s51/Y1/o1.jpg
http://www.users.on.net/~inet_s51/Y1/p1.jpg
http://www.users.on.net/~inet_s51/Y1/o2.jpg
http://www.users.on.net/~inet_s51/Y1/p2.jpg
http://www.users.on.net/~inet_s51/Y1/o3.jpg
http://www.users.on.net/~inet_s51/Y1/p3.jpg
http://www.users.on.net/~inet_s51/Y1/o4.jpg
http://www.users.on.net/~inet_s51/Y1/p4.jpg
Cleaned out most of the noise and frequency lines, de-interlaced and tweaked levels and color/ Added some HDR to bring out some detail and lightly sharpened and added some fake grain.
Good fun so far ;)
lych_necross
9th January 2009, 07:33
I'd like to see your script. It looks pretty good.
Malcolm
9th January 2009, 09:58
Looks good! Please provide your script! :)
2Bdecided
9th January 2009, 13:34
RAINBOWS! WEEEEEEEE!It's surprising the transfer didn't use the BBC's PAL Transform decoder. Maybe it was transferred too long ago?
More details here:
http://www.jim-easterbrook.me.uk/pal/
...it's been used extensively on DVD releases and archive composite to component transcoding since.
It doesn't work for NTSC, and doesn't seem to have been used much in Europe - maybe no one outside of the UK is aware of it?
Cheers,
David.
GrandDK
9th January 2009, 19:56
R3Z i would also like to see your script have the Pal Dvd's myself :)
Blue_MiSfit
9th January 2009, 21:41
Nice work :)
~MiSfit
R3Z
10th January 2009, 04:10
Thanks guys, will post the scripts tommorow when i am back home. ;)
This show is the funniest stuff i have ever seen. Brings back alot of good memories as a kid.
Adub
11th January 2009, 00:24
Take a look at using motion compensated denoising. For example, take a look at MC_Spuds and MCTemporalDenoise. Might help you in your journey.
R3Z
12th January 2009, 02:45
Heres the script i used for the first season. I am obviously just borrowing everyone elses ideas and cant take credit for any of it really :stupid:;
DGDECODE_MPEG2Source("D:\BBCDVD1136\VIDEO_TS\YO_S01E02.d2v", cpu=2,info=3)
ColorMatrix(hints=true)
source=last.bob().Histogram(mode="levels")
F2Quiver(
\"bp3",176,191,
\"bp3",206,191,
\"bp3",206,-191,
\"bp3",176,-191,
\"bp3",176,63,
\"bp3",176,-63
\)
#~ F2Quiver(test=true,gamma=0.075)
TempGaussMC_beta1(edimode="nnedi",svthin=0,sovs=0,blocksize=16,overlap=8)
bobbed = last
pre_f = last
bw1_vec = pre_f.MVAnalyse(isb=true,delta=1,pel=2,sharp=2,blksize=16,overlap=16/2,idx=1)
fw1_vec = pre_f.MVAnalyse(isb=false,delta=1,pel=2,sharp=2,blksize=16,overlap=16/2,idx=1)
bw1_comp = bobbed.MVCompensate(bw1_vec,idx=2)
fw1_comp = bobbed.MVCompensate(fw1_vec,idx=2)
Interleave(bw1_comp,bobbed,fw1_comp)
FluxSmoothST(temporal_threshold=9, spatial_threshold=5)
SelectEvery(3,1)
LimitedSharpenFaster(strength=20)
HDR(last,1.2)
Levels(6,1,247,0,255)
Tweak(sat=1.15)
Post=last
Base = Post.mt_lut( Y=-128 )
Light_Grain = Base.AddGrain(3,0,0 ).Blur(1).Blur(1).Unsharp(1,1,2).Invert()
Dark_Grain = Base.AddGrain(5,0,0 ).Blur(1).Blur(1).Unsharp(0.5,0.75,2)
a = mt_makediff(Post, Light_Grain, U=2,V=2)
b = mt_makediff(Post, Dark_Grain, U=2,V=2)
dmask = a.levels(155,255,16,1,0,false)
b.mt_merge(a,dmask,U=3,V=3,luma=true)
filtered=last
Histogram(mode="levels")
Interleave(source.subtitle("source"),last.subtitle("filtered"))
Function HDR (clip Last, float gain) {
#low boosts shadows, high reduces highlights
low = ConvertToRGB ().Levels (0, gain, 255, 16, 235).ConvertBackToYUY2 ("pc.601")
lowmask = low.Levels (16, 1, 255, 255, 0, false)
high = ConvertToRGB ().Levels (0, 1/gain, 255, 16, 235).ConvertBackToYUY2 ("pc.601")
highmask = high.Levels (16, 1, 235, 0, 255, false)
# mix high and low into original clip
hdr1 = Overlay (last, high, mask = highmask, output = "YUY2")
hdr2 = Overlay (hdr1, low, mask = lowmask, output = (isRGB () ? "RGB32" : isYUY2 () ? "YUY2" : "YV12"))
return hdr2
}
There is a crude compare function built in :)
R3Z
12th January 2009, 02:48
Take a look at using motion compensated denoising. For example, take a look at MC_Spuds and MCTemporalDenoise. Might help you in your journey.
Sorry i didnt mean to ignore you ! Yeah i do a little Mocomped denoising and those two scripts plus TemporalDegrain are great. Need a supercomputer for them though !
vBulletin® v3.8.11, Copyright ©2000-2026, vBulletin Solutions Inc.