Log in

View Full Version : AviSynth and ConvertFPS -> Crash!


rocko1911
22nd April 2005, 08:27
Hello @all,

I have spent a lot of time reading about DVD2AVI (or DGIndex) and Avisynth and now I'm totally confused. I don't know what works together and what not. I solved a problem with smoothdeinterlaver (thanks boulder!) but now I have a problem with convertFPS and changeFPS. I think it's probably because I'm using a wrong combination of Mpeg2dec or sort like that. But actually I don't know what to do any more. Perhaps an expert could help me out, please?

So, here's what I do: I want to convert Pal to NTSC. I want to use Avisynth 2.55 with. I create an d2v file with DVD2AVI (my version says it's based on 1.76, so that seems to be fine). I load the plugins (smootdeinterlacer.dll and mpeg2dec3dg.dll) and then use mpeg2source for import. Then I do (as suggested in the txt file of smoothdeinterlacer) a resize to 720x480). Furthermore i use Assumetff (top field is first) and doublerate=true, which also seems to be fine.
But I can not use convertFPS: Avisynth tells me about an exception as soon as i do this. So I tried using changeFPS, but that causes Nandub to crash, when I want play the .avs file.

Any Ideas?? Please??

Regards,

Rocko

Wilbert
22nd April 2005, 10:07
1) There was in bug in ChangeFPS/ConvertFPS (i don't know which one and forgot when a problem arises). Use latest binaries (10 March):

http://forum.doom9.org/showthread.php?s=&postid=622724#post622724

2) ConvertFPS requires YUY2.

3) Post script.

Seed
22nd April 2005, 10:58
Originally posted by Wilbert
1) Use latest binaries (10 March):

http://forum.doom9.org/showthread.php?s=&postid=622724#post622724

I thought a 15th March version is the latest? It is a few posts below that post, and fixes some more bugs (under Win XP Sp2).

Wilbert
22nd April 2005, 11:51
Yes, try that one.

rocko1911
22nd April 2005, 11:54
Hello there,

thanks for your help. I just checked the other thread , Mar15 is the newest.

Well, is there a way to check if my video is in YUY2. Actually, I do not know what my version of mpeg2dec outputs...it seems every version has a different ouput.

You're totally right, I should post the script. Sorry for not doing that. I just used this one:

# PAL DV (50 fps) to NTSC DV (59.94 fps)
LoadPlugin("SmoothDeinterlacer.dll")
LoadPlugin("meg2dec3dg.dll")
AVISource("PALDV.avi")
SmoothDeinterlace(tff=true, doublerate=true)
BilinearResize(720, 480)
ChangeFPS(59.94)
SeparateFields()
SelectEvery(4, 1, 2)

I'll try the new dll as soon as I get home and report here what happens..

Thanks!!

Wilbert
22nd April 2005, 12:04
AVISource("PALDV.avi")
Info()

gives your the colorformat (for dv it will be YUY2 or RGB). Btw, i thought that SmoothDeinterlacer requires YUY2..

AVIL
22nd April 2005, 12:06
Modify the last line of the script:

SelectEvery(4, 1, 2).info()

Superimposed over the image info about the colorospace (and other informations)

Good luck

Boulder
22nd April 2005, 12:41
Originally posted by rocko1911
Well, is there a way to check if my video is in YUY2. Actually, I do not know what my version of mpeg2dec outputs...it seems every version has a different ouput.

MPEG2Dec3 does nothing as you have DV video which is loaded by AVISource like Wilbert posted the script with Info() in it.

There are also other smart bobbers you might want to try, such as TDeint with mode=1 and LeakKernelBob which is a part of LeakKernelDeint. SmoothDeinterlacer hasn't been touched in quite a while. LeakKernelBob might give you a nice speed boost at least.

rocko1911
22nd April 2005, 13:45
Sorry, everybody. I had to post this in a hurry and unfortunately took an old version of my script. Here's the right one, that uses the mpegdecoder. (You're absolutely right, boulder, in my version the mpeg decoder did not have a job to do.)

LoadPlugin("SmoothDeinterlacer.dll")
LoadPlugin("meg2dec3dg.dll")
mpeg2source("PALDVD.d2v")
SmoothDeinterlace(tff=true, doublerate=true)
BilinearResize(720, 480)
ChangeFPS(59.94)
SeparateFields()
SelectEvery(4, 1, 2)


Anyway, thanks for the suggestions you've already given.

Boulder
22nd April 2005, 14:01
Is the DVD really interlaced?

rocko1911
22nd April 2005, 14:49
Hmmm....I'm not sure....I just read in another forum that I need deinterlacer for this Pal->NTSC conversion
can I find that out... I think DVD2AVI shows this, doesn't it?
(I can nt try it at the moment 'cause I'm not working on my home-machine).

Well if it's not interlaced, I can just leave deinterlacer away?


Thanks for your help!!

Rocko

Boulder
22nd April 2005, 15:44
You must trust your own eyes, no program alone can tell you if it's progressive or interlaced.

Open one of the original VOBs in VirtualDubMod, find a scene with lots of motion and see if you can see any combing. If you cannot see any combing, you've got progressive material. If you see combing, you may have truly interlaced material, phase shifted or a bad NTSC->PAL transfer.

If you have progressive material, all you need to do to convert to NTSC is to resize to an NTSC resolution and use DGPulldown on the resulting m2v file and do a 25fps->29.97fps pulldown. You can then use the file DGPulldown spits out and the original audio track in a DVD authoring program and get a NTSC DVD.

rocko1911
22nd April 2005, 16:31
Boulder, thanks for that very good explanation!

I have already tried converting with TMPG and DGPulldown, this works fine. But I also wanted to try it with AviSynth to see the difference. Now I know which method to use when.

Thanks a lot,
Rocko

Mug Funky
22nd April 2005, 17:11
*coming soon - one function that does NTSC->PAL, or PAL->NTSC, using your choice of methods for typical sources... when i get round to it :)*

rocko1911
22nd April 2005, 20:20
Wooh, that sounds good in my ears :)

I think I'll just wait and look forward....

Anyway, i have tried the dll file of March 15 and had no success. Now my player crashes when I just use these three lines:

LoadPlugin("SmoothDeinterlacer.dll")
LoadPlugin("meg2dec3dg.dll")
mpeg2source("PALDVD.d2v")

At least the version function works for me :)) Showing 2.56 ;)

But well, as said...I'll just wait.

Thanks to everybody all of you!!!

Rocko

Wilbert
22nd April 2005, 21:19
First try this:

LoadPlugin("meg2dec3dg.dll")
mpeg2source("PALDVD.d2v")

Assuming you have a YV12 codec (like XviD or DivX) installed and you used a DGIndex/DGDecode compatible combination. Open it in VirtualDub and give the error message.

rocko1911
23rd April 2005, 09:58
Yeah, that's what I tried to do....but it just crashes...using the old dll file it works. (BTW there's xvid 1.0 installed on my system...perhaps i will update this).

I'm going on a trip right now, that's why I can just post my result with new xvid in a week. CU then!! And thanks for the help!!