View Single Post
Old 13th October 2012, 11:11   #5  |  Link
TheSkiller
Registered User
 
Join Date: Dec 2007
Location: Germany
Posts: 632
The YouTube video is already "FUBAR" (destroyed beyond repair), because it was blindly resized without deinterlacing. The original fields are partly mixed now and this cannot be undone.

I'm quite an expert when it comes to processing footage from old game consoles which use that special "low-def" mode that you mentioned.

Basically, as long as the footage indeed was output in that special mode, we have a progressive video that is half the height of normal interlaced video. But it is of course still wrapped in interlaced frames (stricly talking about the digitized video on a computer here; in the analog stage the only difference should be an altered sync to make the TV's electron beam project all the fields at the same place, essentially doing what's the point of this whole thing).

Knowing this, a simple SeparateFields() would give us proper 50p/60p video from such a capture. But now we have only half the height, and if the footage was rendered with half horizontal resolution, this will look odd.

This means, to make it look natural in terms of old game footage, we should have SeparateFields() followed by PointResize(width, height*2).

Another option which does the same in one function would be PointBob() which is part of the MVBob package.

After this you may crop and resize.
Now, as easy as that may sound AFAIK N64 games often like to use odd screen shapes (i.e. not 4:3 but somewhat close) so if you want to resize it without aspect ratio error you should first crop all black borders and then resize using the PAR of the television standard that was used (PAL: 12/11 | NTSC: 10/11) and resize to whatever you come up with after the math.

Edit: All this works properly only if you have a raw capture which was not butchered before (704 or 720 pixels wide and 576 or 480 or 486 height).

Last edited by TheSkiller; 13th October 2012 at 11:44.
TheSkiller is offline   Reply With Quote