VideoHelp Forum




+ Reply to Thread
Results 1 to 7 of 7
  1. Anybody who can help me with this I thank very much!

    First let me describe what is not the problem then i shall describe the problem.

    NO Problem:
    -----------
    When i do everything with video for windows VFW it all works correctly:
    (1) capture video with ATI all-in-wonder Radeon with Avi_io (vfw thru the wrapper in windows 2000) audio is uncompressed 44.1 16 bit .wav from spdif in on audigy drive.
    (2) Test video: play .avi video and audio is perfectly in sync in all segments.
    (3) Load the video segments (morgan mpeg encoded .avi filesbtw) into Virtual dub 1.47
    (4) Frameserve into Ligos LSx encoder version 3.5
    (5) encode for svcd
    At this point everything is fine: it all works, the .mpg is compliant and the video and audio are still in sync.

    PROBLEM!!! NIGHTMARE:
    ---------------------
    When i do everything with WDM (Windows drivers Model)/direct show it all goes to hell:
    (1) capture video with ATI all-in-wonder Radeon with iuVCR (wdm drivers used in windows 2000) audio is uncompressed 44.1 16 bit .wav from spdif in on audigy drive.
    (2) Test video: play .avi video and audio is perfectly in sync in all segments.
    (3) Load the video segments (morgan mpeg direct show version encoded .avi files)into Virtual dub 1.47
    (4) Frameserve into Ligos LSx encoder version 3.5
    (5) click encode for svcd
    FIRST ERROR: Frames are off! Ligos complains that i want to encode more frames than exist in the .avi...

    FIX: I changes the numbers for beginning frame and how many frames to encode... it starts encoding...

    SECOND ERROR: Ligos encodes video up to the last few frames and then says cannot get frame ## and then stops encoding.

    FIX: If i remember how many frames -1 iuvcr captured and change the ligos settings to that... it will all work producing an .mpg--BUT the audio and video are now very slightly out of sync (by a second or two) and this is very noticalbe especially towards the end of the .mpg.

    How can I fix this problem?
    I believe the problem has to do with wdm/direct show...
    Avery lee the Author of Virtual dub says:

    "How many AVI parsers do you think Microsoft ships with Windows? One? Two?
    Three, actually. The MCIAVI driver, AVIFile, and DirectShow's AVI splitter. And it turns out that all act slightly different."

    - http://www.virtualdub.org/virtualdub_news

    So maybe beause i am capturing with iuvcr through wdm drivers and using the directshow version of the morgan codec, and then using vfw with the virtual dub frameserving it is messing it up...

    The ironic part is that with iuvcr and directshow i drop 0 frames... but i have the problems above...

    With Avi_io and vfw i drop 5-8 frames out of 50,000 frames but everything works!!!!

    DOES ANYONE HAVE A SOLUTION?
    IS THERE A PROGRAM THAT WILL FRAMESERVE .AVIS BUT NOT USING VIDEO FOR WINDOWS (vfw) BUT INSTEAD USES wdm/directshow?

    AVISYNTH? BUT I NEED TO FRAMESERVE .AVI NOT .MPG....

    Thanks so much for reading this...
    Quote Quote  
  2. Sorry, I might have missed it, but if it works so great with VFW, why not just use that? Why are you trying to get it to work with WDM?
    Quote Quote  
  3. Just to clarify, avisynth was made for avi, but the MPEG2DEC plugin allows you to open MPEG2 streams for DVD. It may work, here is the script I use:

    #------------------------------------------------------
    LoadPlugin("C:\Program Files\GordianKnot\MPEG2DEC.dll")
    LoadPlugin("C:\Program Files\GordianKnot\AVISynth_Spatial.dll")
    LoadPlugin("C:\Program Files\GordianKnot\GreedyHMA.dll")

    #----------------------------------------------------------
    #SegmentedAVISource("avi_io_capture_0.avi")

    video=SegmentedAVISource("avi_io_capture_0.avi")
    audio=WAVSource("Audio_rs.wav")
    Audiodub(video,audio)
    #----------------------------------------------------------
    GreedyHMA(0,0,1,0,1,0,0,0)
    #----------------------------------------------------------
    Crop(4,4,392,563)
    #----------------------------------------------------------
    #SpatialSoftenMMX(2,4,6,false,false,4,4,6,8)
    TemporalSmoother(2,1)
    #SpatialSoftenMMX(2,4,6,false,false,4,4,6,8)
    #----------------------------------------------------------
    Trim(211,162991)

    Trim(81330,162781)
    #----------------------------------------------------------
    Animate(0,15,"Levels", last,0,1,255,0,0, last,0,1,255,0,255)
    #----------------------------------------------------------
    BilinearResize(352,288)
    #----------------------------------------------------------


    Just some notes, the reason I do the video= step is because I extract the audio and clean it up in Cooledit, just delete those three lines and use the first (commented out with a #) if you don't want to do this.

    The first trim statement cuts out the beginning and end crap (found frame numbers with vdub before adding a trim statement) The second is used to cut into to CD's (I copy the script and only change this, so I have two different frameservers for the different halves of the movie).

    The animate section is to fade in the second half of the movie (just replace with fadeout(15) for the first half).

    I got the plugins from doom9.org and videotools.net. That GreedyHMA is a de-interlace plugin that works really well (the only way I've found so far to correctly de-interlace PAL source), the other two plugins are needed for the smoothing steps.

    Sorry if this isn't helpful, but I finally got it working perfectly and so I thought I'd share it

    <font size=-1>[ This Message was edited by: Shabubu on 2001-12-11 12:27:05 ]</font>
    Quote Quote  
  4. <TABLE BORDER=0 ALIGN=CENTER WIDTH=85%><TR><TD><font size=-1>Quote:</font><HR size=1 color=black></TD></TR><TR><TD><FONT SIZE=-1><BLOCKQUOTE>
    On 2001-12-11 12:03:03, mikewg wrote:
    Sorry, I might have missed it, but if it works so great with VFW, why not just use that? Why are you trying to get it to work with WDM?
    </BLOCKQUOTE></FONT></TD></TR><TR><TD><HR size=1 color=black></TD></TR></TABLE>

    Well there are a few reasons really:
    ------------------------------------
    (1) VFW is quickly passing out of existence...
    ATI doesn't support it anymore... and the latest radeon drivers:
    win2k (5.13.01.3276 oct 15th) and
    win98se (4.13.7189 oct 15th)
    coupled with directx 8.1 have many problems with vfw capture software (virtualdub/avi_io) even with the vfw wrapper...
    So i am working towards the future...

    (2) I wanted to see if anyone who has more knowledge than I do could fix the problem, or what alternative software could address this issue.

    (3) I'm shooting for perfection: 0 dropped frames and so far wdm/directshow has given me that.... the only problem is the one i have been describing.

    So anyone have any ideas to fix/workaround the situation?
    Quote Quote  
  5. Just re-reading your post, if your only dropping 5-10 frames in 50,000 that can safely be put down to VirtualDub and AVIIO maintaining audio synch (unlees they all happen at once). Dropped frames are always feared, but even on playback Media player drops frames (check the properties if you don't believe me). If you still want to cap with IUVcr the try frameserving with Avisynth as detailed above( actually use it anyway). Other that that I don't knowas I've never used it.
    Quote Quote  
  6. Thanks Shabubu for all your help.

    However, what program can open a bunch of .avis and frameserve using avisynth (i have never used avisynth much so i dont know....)? xmpeg.exe? the old flask versions do not open avis...

    Plus i need to filter with the frameserve... i seee your script has filters and mentions gordian knot but i know nothing about this stuff... any good gordian knot tutorials anywhere?

    Does anybody else know any solutions to this wdm direct show nightmare?
    Quote Quote  
  7. Member
    Join Date
    Feb 2001
    Location
    Berlin, Germany
    Search Comp PM
    Avisynth itself "opens" a bunch of avi files. Either by
    SegmentedAviSource("avi_io_capture.00.avi")
    or by
    AviSource("avi_io_capture1.avi")+AviSource("avi_io _capture2.avi")+AviSource("avi_io_capture3.avi") etc.
    Avisynth comes with a lot of very usefull filters.
    http://www.math.berkeley.edu/%7Ebenrg/avisynth.html
    http://www.videotools.net

    <font size=-1>[ This Message was edited by: Truman on 2001-12-11 16:29:44 ]</font>
    Quote Quote  



Similar Threads

Visit our sponsor! Try DVDFab and backup Blu-rays!