Need help with DGIndex

This forum is for questions and discussion of all the aspects of handling and cleaning up your footage with Avisynth.
User avatar
mirkosp
The Absolute Mudman
Joined: Mon Apr 24, 2006 6:24 am
Status: (」・ワ・)」(⊃・ワ・)⊃
Location: Gallarate (VA), Italy
Contact:
Org Profile

Re: Need help with DGIndex

Post by mirkosp » Thu Jun 24, 2010 12:16 pm

I think what he wants is an exact copy of a bit of your dvd. In dgindex use the brackets [ and ] to select a bit of the video, a part which both has the film and the interlaced content, and then choose file > save and demux. You'll get an m2v, upload that somewhere and link it here.
Image

User avatar
Davis 51
Joined: Sun Feb 15, 2004 3:53 pm
Status: Under The Box Productions
Org Profile

Re: Need help with DGIndex

Post by Davis 51 » Thu Jun 24, 2010 12:25 pm

Right then. I did that and put it on a rapidshare here
Under The Box Productions is my studio.
My youtube page is: http://www.youtube.com/user/UnderTheBoxProduct

Mister Hatt
Joined: Tue Dec 25, 2007 8:26 am
Status: better than you
Contact:
Org Profile

Re: Need help with DGIndex

Post by Mister Hatt » Thu Jun 24, 2010 3:07 pm

Well the good news is that I know what content you have now. You will however have much haet for this content. You're dealing with pure 24-1% content at it's heart, so no need for VFR, which makes editing in an NLE considerably more practical. The problem lies in how this is all coded. The interlaced parts of your video are hard telecined footage, the kinda stuff generic IVTC works on. The progressive parts however are interlaced coded as progressive with RFF flags to soft telecine. Welcome to hybrid hell.

Do I need to write how I figured that out? :3

As far as actually dealing with it, I was going to come up with something really clever but after talking about it in Darkhold and C9 for like 3 hours I'm gonna give up and tell you to lazy modo it. Honour pulldown in DGIndex, then in avisynth, make sure you have TIVTC.dll and TDeint.dll and then run the following:

Code: Select all

TFM(d2v="your file.d2v",mode=1,pp=7,slow=2,micmatching=2,clip2=tdeint(type=3)).TDecimate()

User avatar
Davis 51
Joined: Sun Feb 15, 2004 3:53 pm
Status: Under The Box Productions
Org Profile

Re: Need help with DGIndex

Post by Davis 51 » Fri Jun 25, 2010 8:52 am

By that, do you mean we're just using the script for the footage that's most prevalent and IVTCing it? Or is there something more clever that I'm missing going on around here.

In all honesty, writing two separate scripts as the guide suggests is becoming the more feasible option, seeing as I'm going to need footage from both the interlaced and progressive parts.
Do I need to write how I figured that out? :3
Yes, actually. That way whenever I see this hybrid bullshit again I don't have to come back here to bitch about it. :P

At any rate, thanks for your continued patience. It's been so helpful.

Before I began I layed out a concept using low-quality XviD rips. About half of my video is actually done, I just gotta replace the clips, but I must say its turning out to be something really special. I think I might give you guys a sneak peak before I premiere it to the rest of the world in exchange for all the help you've been giving me.
Under The Box Productions is my studio.
My youtube page is: http://www.youtube.com/user/UnderTheBoxProduct

User avatar
Davis 51
Joined: Sun Feb 15, 2004 3:53 pm
Status: Under The Box Productions
Org Profile

Re: Need help with DGIndex

Post by Davis 51 » Fri Jun 25, 2010 8:55 am

Ghetto Edit: also, if it helps shorten the scripts at all, I am using the AMVapp,
Under The Box Productions is my studio.
My youtube page is: http://www.youtube.com/user/UnderTheBoxProduct

Mister Hatt
Joined: Tue Dec 25, 2007 8:26 am
Status: better than you
Contact:
Org Profile

Re: Need help with DGIndex

Post by Mister Hatt » Fri Jun 25, 2010 12:20 pm

AMVApp is actually a huge piece of crap, it's better to install your stuff manually with the latest (usually) of everything. About the only good thing AMVApp does is that it gives people an idea of what things they might want to install on their own. Basic list would be CCCP beta 21/5, DivX7, x264 from JEEB, Avisynth 2.60a, VirtualDub 1.99, a decent UTF-8 text editor, Touhou 6-12.5, ffmpeg-mt from astrange's git repo, timecop's DVD2AVI, DVD Decrypter, DVD Fab, and I guess a bunch of avisynth plugins would be handy.

You didn't quite get what I meant by how to handle your content. The content is partially hard telecined and partially soft telecined progressively coded interlaced footage. It means that the 'progressive' bits are actually interlaced, but they are coded as progressive in the bitstream, and then soft telecined. There are two ways to deal with this, the lazy way, and the better way. We're going to go with the lazy way. The honour pulldown option, or 'none' option if you're using the superior app DVD2AVI, will honour the RFF flags in the stream, turning the progressive sections into telecined 30-1% content. Effectively, that makes your stuff all the same, it's all telecined and there is no special treatment needed for it. Just use the IVTC string I wrote in the codeblock above, I tweaked it to give you the best results on your particular content. As long as you can do manual dumb IVTC, you should have no problem with this.

The second or better method involves a bit of programming and using ignore pulldown (raw frames in DVD2AVI) and is going to be slightly better as far as the output goes, but otherwise not that much more advantageous. For this method to be useful, you need to be able to use a scripting language like perl as well as a manual smart IVTC app like YATTA. I would advise against this method for the moment.

As for how I figured out your content, I started by generating a d2v file with honour pulldown and a second one with ignore pulldown. I then wrote an avs script to load the honour pulldown file with the filterchain separatefields().selecteven() Opening that in vdub, I skipped through it in sets of 5 frames over parts I knew to be interlaced. From the way it went, I was getting 4 frames of motion and one duplicate. This told me it was telecined. Another check would just be to open it as is without any filtering and see how many combed/blended frames you get. For telecined content, it should be 3 regular frames followed by 2 blended ones, repeatedly. This told me that the interlaced parts were telecined.

I then moved on to a known progressive part. The first thing I noticed was that part of it was showing scanlines, an obvious sign of field blending. After applying my separatefields().selecteven(), I knew it was telecined somehow. I then opened the ignore pulldown file with StackVertical() and seeked to another known 'progressive' part. Here I saw that the second clip had no blending of fields when loaded normally, and with separating and selecting even fields only it didn't have the same issue of 4 moving frames and 1 duplicate. From that I knew it was soft telecine, as only the honour pulldown clip had telecined content.

The final step in knowing it was interlaced coded as progressive was that DGIndex (or in my case DVD2AVI) reported parts of it as progressive, while to telecine something it must have fields. A step of logic there made it obvious that it was interlaced, but coded progressively. The minor framerate issue for the progressive bits which seemed to confuse me for a few minutes was due to the various MPEG2 indexers all being unable to recognise variable framerates, so it just assumed everything was 30-1%, and given the RFF flags on the progressive coded parts, it effectively was. Once I knew the whole thing was telecined while being played back, it made the decision to just IVTC as normal with honour pulldown an obvious one.

I hope this helps you.

User avatar
Davis 51
Joined: Sun Feb 15, 2004 3:53 pm
Status: Under The Box Productions
Org Profile

Re: Need help with DGIndex

Post by Davis 51 » Fri Jun 25, 2010 2:49 pm

:shock:

Mind = Blown

Wow, talk about infodump. Regardless of what AMVapp is or isn't, or what it comes with, this kind of information is exactly what I needed to hear. You've certainly more than clarified what you meant, and the black magic you worked to figure out what my footage was, and will continue to be, very helpful, especially to someone like me who is only beginning to understand the complexities of video processing.

I've already started to reindex the footage with 'honor pulldown' selected. Once I have the episodes I need, then I'll go back and edit the .avs files.

You're right that the other method would be overly complicated. Though I am a CS major, its been over a year since I've done anything in PERL and I only ever learned the basics, though one day I'd like to learn how to use YATTA, that's another thing for another day, though I'd be interested to know if there were guides available.

In any case, thanks again for the help. I'm extremely grateful.
Under The Box Productions is my studio.
My youtube page is: http://www.youtube.com/user/UnderTheBoxProduct

Mister Hatt
Joined: Tue Dec 25, 2007 8:26 am
Status: better than you
Contact:
Org Profile

Re: Need help with DGIndex

Post by Mister Hatt » Sat Jun 26, 2010 3:27 am

There are no guides for YATTA, it requires someone to sit down for a few hours and teach you how it works, and then repetitive use to remember all the hotkeys. I was actually speaking to this with one of the FFMS2/YATTA developers and it was brought up that it might be good to add a module to YMC that lets you load a hybrid ignore pulldown d2v, then flags the progressive bits as nodecimate and pure c matches, allowing it to be done 100% correctly and without telecining then removing it again. That'd be pretty nice, but it can just as easily be done with a perl script.

TBH, my method for working out what you have is pretty standard. Take a read at http://mod16.org/hurfdurf/?p=12, it explains pretty well. The best way to know what you have is to look at it. If every frame is blended, then it's interlaced, while if 2 consecutive frames in any group of 5 are blended, it's 3:2 telecine. The separatefileds().selecteven() tells avs to display each field as it's own half-sized frame, and then select even takes only one set of fields. On hard telecined stuff, that leaves you with 4 unique frames and 1 duplicate of the last one, which is also easy to see. The soft pulldown stuff was a bit harder to nut out but only took a minute really. Just experiment with how your stuff looks and you can usually figure it out. It's not complicated.

Locked

Return to “AviSynth Help”