Log in

View Full Version : Unevenly spaced duplicate frames, but MultiDecimate doesn't quite cut it


StickHorsie
6th June 2008, 12:23
Situation: friend & backup nut, busy restoring huge SF collection from rescued external HDs when a fire broke out. :( (I've adopted the same system since except for the fire bit - also, I *still* think having 14 external HDs is a bit much.)

"Ewwww... it's jerky!"
"Did you do anything weird with those?"
"No, I just removed the black bars and deinterlaced."
"Ah, a decimate problem. I can fix that." After all, I know just enough of VirtualDub, AviDemux and Very Simple AviSynth Scripts to do a standard decimating job. Besides, apart from the slight jerkiness, her copies were better than the ones *I* had. ;)

Taking a DVDload home for testing, I found that on all files the leftover duplicate frames weren't exactly evenly spaced. So no four frames + one duplicate (which would have been easy), but anything from one to twelve frames before the next dupe. So I did a Google, found MultiDecimate, tried every setting I could think of for the next two days (including some pretty far-fetched & random ones), but none of those took out ALL the "jerks".

When I DGBob'ed a snippet out of curiosity (top first), I noticed that the former odd fields (now: odd frames) were of much lower quality than the former even fields, which might explain MultiDecimate having trouble identifying all the dupes correctly (which is a wild guess. I'm a newbie.)

Anymoo: HALP!!!! (Or: "Ideas, anyone?")

snippet: http://www.megaupload.com/?d=72UXEC4W (39.6 MB, 43" mpeg2, no audio)

Guest
21st June 2008, 00:51
I got decent results with this:

telecide(post=0)
tdecimate(mode=0,cycleR=32,cycle=154)

You're not going to get perfect results unless you set cycle to the number of frames in the clip and cycleR to the number of actual duplicates. It will be more practical to use a reasonable cycle as I have. You can tweak the numbers to try to improve things.

Note that this will produce a weird frame rate. If you want to go back to DVD, consider using DGPulldown to bring it back to a valid DVD rate. The pulldown will be field based and evenly spaced and it won't get jerky.

StickHorsie
22nd July 2008, 00:50
*several unrelated, but nevertheless very annoying PC problems later* :P

Since we're using the same snippet, I assume I'm making a newbie error with the li'l script I made (OK, maybe I'm supposed to... this *is* the newbie forum, right? ;) ) because it puts the frames totally out of order.

LoadPlugin("D:\Program Files\_plugins\Decomb.dll") -- where telecide comes from
LoadPlugin("D:\Program Files\_plugins\TIVTC.dll") -- where tdecimate comes from
DirectShowSource("O:\video werkmap\andro101_snippet02_43s_noaudio.mpg") -- the snippet
telecide(post=0)
tdecimate(mode=0,cycleR=32,cycle=154)

("werkmap" is Dutch for "job folder") (yes, I have an "O-drive" :D )

Guest
22nd July 2008, 04:20
Don't use DirectShowSource(). Use MPEG2Source() from the DGMPEGDec package. There is a quickstart guide in the zip file to get you going quickly.

StickHorsie
22nd July 2008, 14:34
Only 2 duplicate frames left! :D (frames 420 & 865)... that's a LOT less, um, duplicate frames! :D :D

You, sir, are a genius. :thanks:

(And I now indeed have a somewhat weird frame rate of 23.7425 fps, but as you already said, that's something that can be dealt with.)

Guest
22nd July 2008, 14:56
You, sir, are a genius. Not quite, but thanks for that. Also, bear in mind that tritical made the TDecimate filter. Maybe I inspired him a bit with my earlier Decimate(). :)

StickHorsie
22nd July 2008, 15:39
In that case, you're both geniuses. :D