+ Reply to Thread
Results 1 to 19 of 19
Thread
  1. Video Restorer lordsmurf's Avatar
    Join Date: Jun 2003
    Location: Want my advice? PM me.
    After reading and testing, I cannot get this to work:

    LoadPlugin("c:\shared\Convolution3d.dll")
    LoadPlugin("C:\shared\SmoothDeinterlacer.dll")
    LoadPlugin("C:\shared\MPEG2Dec3.dll")
    MPEG2Source("c:\shared\AVSEQ01.MPG")
    SeparateFields()
    odd=SelectOdd.Convolution3D (0, 6, 10, 6, 8, 2.8, 0)
    evn=SelectEven.Convolution3D (0, 6, 10, 6, 8, 2.8, 0)
    Interleave(evn,odd)
    Weave()
    AddBorders(16,12,16,12)
    SmoothDeinterlace(tff=true, doublerate=true)
    LanczosResize(352,480)
    ChangeFPS(59.94)
    SeparateFields()
    SelectEvery(4,1,2)
    Weave()
    ConvertToRGB(interlaced=true)


    I get this:


    Much of this is based off the work of Xesdeeni and FulciLives, among others:
    http://www.videohelp.com/forum/viewt...=986938#986938
    http://www.geocities.com/xesdeeni200...deoDVD2NTSCDVD

    Help.

    Just to give you advanced warning, this AVISYNTH stuff is outside of my normal workflow, and something I really don't understand or generally don't have a need for the stuff I do understand.
    Quote Quote  

  2. Video Restorer lordsmurf's Avatar
    Join Date: Jun 2003
    Location: Want my advice? PM me.
    Got it!

    Code:
    LoadPlugin("c:\shared\Convolution3d.dll") 
    LoadPlugin("C:\shared\SmoothDeinterlacer.dll") 
    LoadPlugin("C:\shared\MPEG2Dec3.dll") 
    MPEG2Source("c:\shared\testvid.d2v")
    ConvertToYUY2(interlaced=true)
    SeparateFields() 
    odd=SelectOdd.Convolution3D (0, 6, 10, 6, 8, 2.8, 0) 
    evn=SelectEven.Convolution3D (0, 6, 10, 6, 8, 2.8, 0) 
    Interleave(evn,odd) 
    Weave() 
    AddBorders(16,12,16,12) 
    SmoothDeinterlace(tff=true, doublerate=true) 
    LanczosResize(352,480) 
    ChangeFPS(59.94) 
    SeparateFields() 
    SelectEvery(4,1,2) 
    Weave() 
    ConvertToRGB(interlaced=true)
    Quote Quote  

  3. Member pchan's Avatar
    Join Date: Mar 2003
    Location: SEA
    Hi Lordsmurf, What script needs to change for NTSC -> PAL ? Thanks.
    Quote Quote  

  4. Video Restorer lordsmurf's Avatar
    Join Date: Jun 2003
    Location: Want my advice? PM me.
    Originally Posted by pchan
    Hi Lordsmurf, What script needs to change for NTSC -> PAL ? Thanks.
    Oh, I'm so the wrong person to ask.
    I rarely use this software.

    The PAL->NTSC conversion worked without a problem, however. Very pleased.

    Look at the guides/info I linked to in the first post. You'll find the info in there, eventually.
    Quote Quote  

  5. Member erratic's Avatar
    Join Date: Oct 2003
    Location: Belgium
    I would use KernelBob (now included in the KernelDeint plugin) instead of SmoothDeinterlacer. Xesdeeni has come to the same conclusion lately.
    http://forum.doom9.org/showthread.ph...131#post537131
    Quote Quote  

  6. Member NamPla's Avatar
    Join Date: Jun 2004
    Location: Whoop Whoop
    Originally Posted by pchan
    Hi Lordsmurf, What script needs to change for NTSC -> PAL ? Thanks.
    Look at Erratic's link and there is scripts for both PAL-NTSC and NTSC-PAL!

    SmoothDeinterlace worked wonders for me recently, but I will try KernelBob instead now.

    Never had much luck with ConvertFPS, looked terrible, but ChangeFPS looks fantastic!? I'm sure I musta did something wrong there...

    Erratic, what script do you use for PAL-NTSC?

    Cheers.
    Quote Quote  

  7. Member erratic's Avatar
    Join Date: Oct 2003
    Location: Belgium
    I don't often convert PAL to NTSC but the last script I used was this:

    Code:
    AviSource("capture.avi")
    AssumeTFF() # optional in this case
    KernelBob(1) # for TFF source, (0) for BFF
    Lanczos4Resize(704,480) # or (352,480) for Half D1, (720,480) if you prefer
    ConvertFPS(59.94) # or ChangeFPS if you prefer
    SeparateFields()
    SelectEvery(4,0,3)
    Weave()
    ChangeFPS creates duplicate fields. You can test this by omitting the Weave() command and watching the script with VirtualDub. ConvertFPS doesn't create duplicate fields but inserts new blended fields instead. You'll have to decide for yourself what you prefer.

    By the way, install Avisynth 2.5.5 first. It was released yesterday.
    Quote Quote  

  8. Member NamPla's Avatar
    Join Date: Jun 2004
    Location: Whoop Whoop
    Thanks for the tip-off.
    Quote Quote  

  9. Member NamPla's Avatar
    Join Date: Jun 2004
    Location: Whoop Whoop
    So, to combine this with the Convolution3D stuff like LordSmurf was originally doing, does this look OK?

    LoadPlugin("Convolution3d.dll")
    LoadPlugin("Kerneldeint.dll")
    avisource("C:\...\capture.avi", false)
    SeparateFields()
    odd=SelectOdd.Convolution3D (1, 6, 10, 6, 8, 2.8, 0)
    evn=SelectEven.Convolution3D (1, 6, 10, 6, 8, 2.8, 0)
    Interleave(evn,odd)
    Weave()
    AssumeTFF()
    KernelBob(order=1,sharp=true)
    Lanczos4Resize(352,480)
    ConvertFPS(59.94)
    SeparateFields()
    SelectEvery(4,0,3)
    Weave()
    ConvertToYUY2(interlaced=true)

    (NB I was using a huffyuv avi capture for my test).

    I compared it side-by-side with the "smooth deinterlacer" script and liked it a lot better - smoother movement, bit sharper etc. ConvertFPS seems a definate improvement over ChangeFPS too, in my eyes. Also it was a faster encode.

    Does the script look OK? I just like some reassurance before I race off & convert everything in sight. :P

    (Just unsure about the "SelectEvery(4,0,3)" line, because it has changed from (4,1,2) like before...?)

    Thanks.
    Quote Quote  

  10. Member erratic's Avatar
    Join Date: Oct 2003
    Location: Belgium
    Yes, the script looks fine to me. You don't need AssumeTFF() anymore, but it won't hurt. Avisynth stores the field order of a video file in an internal flag. BFF is the Avisynth default, so all my scripts for TFF AVI sources start with AviSource("capture.avi").AssumeTFF() whether it's necessary or not.

    I also noticed that SelectEvery has changed from (4,1,2) to (4,0,3) with KernelBob. If you use (4,1,2) with KernelBob you're changing the field order.

    You don't need the LoadPlugin commands anymore with Avisynth 2.5.5.
    Quote Quote  

  11. Member NamPla's Avatar
    Join Date: Jun 2004
    Location: Whoop Whoop
    Thanks a lot, Erratic. I appreciate your replies.
    Quote Quote  

  12. Member pchan's Avatar
    Join Date: Mar 2003
    Location: SEA
    Hi erratic & NamPla, Thanks for your help.
    Quote Quote  

  13. Is there a version for a PAL>NTSC with a MPEG2Source with this new script? Ive tried with the old Smoothdeinterlacer and had issues... The video wasn't jerky (cool result), but it had SOME jerks... (I did already some conversions and never had problems, so I believe something is fucked in my system... I was using 2.08 with proper .dll i believe...)


    Also, Ive got issues with Avisynth 2.5.5 since it says Convolution3d isn't a Avisynth 2.5 plugin... Also, I still need to write LoadPlugin() even if everyone says it's not needed anymore

    Can someone tell me what Im doing wrong?
    Im not a video geek, just enjoy it a bit and don't really understand scripts....
    Quote Quote  

  14. Member erratic's Avatar
    Join Date: Oct 2003
    Location: Belgium
    You're probably using an older version of Convolution3D. Download a version for Avisynth 2.5 there.

    You don't need LoadPlugin if your plugins are in the default plugin directory. Seems to work for me anyway.

    You should be able to use your old script. Just replace SmoothDeinterlace with KernelBob and make sure KernelBob gets the correct field order setting (order=1 for TFF, 0 for BFF). Also ConvertFPS should be less jerky than ChangeFPS. Lanczos4Resize is the sharpest resizer AFAIK.

    Finally it's now known why SelectEvery(4,0,3) always maintains the field order and (4,1,2) always changes the field order after KernelBob, while other bobbers require (4,1,2) for a TFF result and (4,0,3) for a BFF result. Apparently other bobbers call the AssumeFrameBased command and KernelBob doesn't. So to get the same behaviour with KernelBob you could use it like this (TFF example):
    KernelBob(order=1,sharp=true).AssumeFrameBased()
    Later on in the script you then have to use SeparateFields().SelectEvery(4,1,2).Weave() to maintain the TFF field order. That way KernelBob works like the other bobbers. KernelBob probably will call AssumeFrameBased() internally when it's updated.

    For a BFF source it would be KernelBob(order=0,sharp=true).AssumeFrameBased() followed by SeparateFields().SelectEvery(4,0,3).Weave() to maintain the BFF field order.
    Quote Quote  

  15. here is what ive written, my mpeg2 source is PAL Interlace, Bottom Field(B)

    I feel silly since I downloaded .dll for 2.08
    Now I've got the 2.5 ones and don't need to write Loadplugin...

    now, i still can't load my avs file...

    MPEG2Source("E:\NTSC Project\jools2001.d2v")
    KernelBob(order=0,sharp=true).AssumeFrameBased()
    LanczosResize(720,480)
    ConvertFPS(59.94)
    SeparateFields()
    SelectEvery(4,0,3)
    Weave()

    Im pretty sure I look stupid but I consider it is worth asking to get a good conversion. Ive got an error Line 4 (Unrecognised exception!), I just edited this script with the things you advised me, considering my own source.
    Quote Quote  

  16. Member erratic's Avatar
    Join Date: Oct 2003
    Location: Belgium
    Try this: insert ConvertToYUY2(interlaced=true) between MPEG2Source and KernelBob.

    EDIT: I just read in the Avisynth manual that ConvertFPS requires YUY2 input. MPEG-2 is YV12 which causes an error with ConvertFPS. ChangeFPS accepts YV12 input.
    Quote Quote  

  17. wanted to thank you erratic!!!
    it worked great (did a short conversion and no jerks where there were with the old script)

    i know you guys are very patient with us and tolerant also (the way i ask and not read avisyth read me files and stuff like that, you know, the ask before trying yourself...)

    so yeah, thank you for answering

    Etienne
    Quote Quote  

  18. Member erratic's Avatar
    Join Date: Oct 2003
    Location: Belgium
    By the way, a new smart bobber is being developed: TDeint. Apparently this one is (or will be) even better than KernelBob. I haven't fully tested it yet, but I thought I'd mention it here because some of you might want to follow its development and eventually use it for PAL<->NTSC conversions instead of KernelDeint.
    Quote Quote  

  19. Member erratic's Avatar
    Join Date: Oct 2003
    Location: Belgium
    New version of KernelDeint (KernelBob) available: KernelDeint 1.5.2
    Quote Quote  




Similar Threads

  1. Ntsc to pal and pal to ntsc avi conversion guide
    By johns0 in forum Video Conversion
    Replies: 8
    Last Post: 19th Aug 2004, 21:36
  2. Interlaced NTSC to PAL Avisynth conversion problem
    By troyvcd1 in forum Video Conversion
    Replies: 4
    Last Post: 16th Jul 2004, 20:30
  3. Avisynth problems (NTSC to PAL conversion)
    By Ducky in forum Video Conversion
    Replies: 8
    Last Post: 10th Mar 2004, 00:12
  4. Can AviSynth do PAL -> NTSC framerate conversion?
    By zizou108 in forum Video Conversion
    Replies: 2
    Last Post: 28th Jun 2002, 10:18
  5. pal-ntsc conversion w/avisynth and cce
    By warbird in forum Video Conversion
    Replies: 0
    Last Post: 22nd Jan 2002, 06:20
Slysofts AnyDVD HD removes DVD and Blu-ray encryption and region coding. More info or download trial!
About   Advertise   Forum   RSS Feeds   Statistics   Tools