PDA

View Full Version : Problem resizing interlaced footage


Nick
4th December 2004, 21:22
OK, I have some interlaced PAL 4:3 DV camcorder footage (720x576)
I wish to make a 16:9 copy by trimming 72 pixels top and bottom then resizing to D1 resolution.

This is not really my arena but I read round and came up with this for a script.

Directshowsource("c:\DV.avi ",25,audio=true)
KernelBob(order=1, sharp=true, twoway=true, threshold=0)
crop(0,72,0,-72)
bicubicresize(720,576,0,0.6)
separatefields()
selectevery(4,1,2)
weave()

Yes I know I could use the internal cropping of the resizer, I just find a separate crop simpler.

When I create my new file, horizontal motion is jerky and vertical edges are ill-defined.

Is there a better way of resizing interlaced footage, have I made a glaring error or what? Any thought appreciated.

Cheers
Nick

Video Dude
4th December 2004, 21:39
Assuming you want to keep it interlaced:

There is a filter called InterlacedResize by trbarry. It is part of the SimpleResize package.

http://mywebpages.comcast.net/trbarry/downloads.htm

DirectShowSource("c:\DV.avi",25,audio=true)
Crop(0,72,0,-72)
InterlacedResize(720,576)


You could also expect much beter results using a "real" DV codec instead of the Microsoft DV directshow filter. For example the free Canopus DV playback codec.
Web Ste: http://www.canopus.us/US/products/free_utilities/pm_free_utilities.asp
Download Link: ftp://www.canopus.com/pub/drivers/misc/dvcodec.exe

Your script using the Canopus codec would be:

AviSource("c:\DV.avi", fourcc="cdvc")
Crop(0,72,0,-72)
InterlacedResize(720,576)

Mug Funky
5th December 2004, 03:33
you'll have to bob first (or use interlacedresize).

vertical resizing messes up interlacing.

try:

crop(0,72,0,-72)
kernelbob(order=0,threshold=3)
bicubicresize(720,576,0,.6)
separatefields().selectevery(4,0,3).weave()
assumebff()


that's for bottom-field-first output. change to selectevery(4,1,2) and assumetff() if you want to encode for DVD (which is natively top-field-first, but supports both if you set it properly).

scharfis_brain
5th December 2004, 09:34
for resizing purposes, tdeints or tomsmocomps interpolation will be better.

Boulder
5th December 2004, 11:47
Originally posted by scharfis_brain
for resizing purposes, tdeints or tomsmocomps interpolation will be better.

Would there be any similar alternatives to TMCBob() as it crops an odd number of pixels which is not allowed in YV12 colorspace. TDeint is too slow for my usage:(

scharfis_brain
5th December 2004, 11:57
no. there is no way out of this.

for correct spatial alignment, one has to crop by one pixel.

Boulder
5th December 2004, 12:10
Do you recommend using ELA interpolation instead of kernel interpolation (as that's about the same as KernelBob would be) for TDeint's smart bobber or do you still use MatchBob() ?