VideoHelp Forum




+ Reply to Thread
Results 1 to 10 of 10
  1. I have kind of (what appears to be) a unique issue. I am capturing monochrome 1280x1024 10bit 60fps video through a set of devices that leaves me with two 640x1024 uncompressed AVIs. One video is comprised of only the even columns of the source video, one is the odd columns. I've been trying to find a way to put the full resolution video back together with a filter. Primarily I've been researching existing filters for tools like Virtualdub and AVISynth but nothing seems to do exactly what I need. I've thought up a few possible solutions and am interested if anyone has advice on existing filters or tools before I dust off my C++ skills (such as they are) and write my own filter.

    One thought I had was to "resize" each video by inserting the missing columns as black and simply overlay them to create the output, but all the resizing, doubling, etc. filters I've found do some kind of interpolation to fill in the newly created space.

    Alternatively (although it seems more complicated if I have to write something to accomplish this) I could "mux" the two capture channels directly out of the framegrabber, if anyone has any thoughts about how to use VDub's capture capability to do such a thing.

    In any case, any input you might have is appreciated.
    Quote Quote  
  2. Member
    Join Date
    Dec 2005
    Location
    Finland
    Search Comp PM
    If I understand the problem correctly, sounds like you could do a TurnLeft() (or right) for both videos in AviSynth, then Weave(), then the opposite turn to bring the video back upright. This is like interlacing but vertically.
    Quote Quote  
  3. I had to create one like hyachts has first:

    AviSource("Test.avi",False)
    TurnRight()
    SeparateFields()
    SelectEvery(2,0)#changed the next time to SelectEvery(2,1)
    TurnLeft()


    I saved the 2 encodes as 'A.avi' and 'B.avi'. Each was as described in the first post. What began as a single AVI at 640x480 wound up as two AVIs, each 320x480. The script that put the pieces back together was:

    A=AviSource("A.avi").TurnRight().AssumeFieldBased( )
    B=AviSource("B.avi").TurnRight().AssumeFieldBased( )
    Interleave(A,B)
    AssumeBFF()#necessary for some reason, or else there was an odd interlacing pattern resulting
    Weave()
    TurnLeft()
    Last edited by manono; 28th Nov 2012 at 04:41.
    Quote Quote  
  4. That's great - thanks guys. That's exactly the kind of solution I figured was out there - I just wasn't thinking about rotating...

    Now if I can just figure out why AVISynth won't open my videos. They play fine in VirtualDub and VLC, but AVISynth tells me "Could not open video stream in any supported format". MPC plays an all black video with no errors. I've confirmed that if I compress the video AVISynth will open it, but even if I save it out of VDub with direct stream copy it won't work in AVISynth (so it doesn't appear to be an issue with a corrupt header or similar).

    If I can get the format issue worked out I'll post back with the outcome of your suggestions. Thanks again!
    Quote Quote  
  5. AVISource() won't open it?

    What format is the source video ? use mediainfo (view=>text) , copy & paste the information back here

    Another option is to save it out of vdub with uncompressed or lossless compression (e.g. lagarith , huffyuv, ut video codec) ,

    or use another soource filter e.g. FFVideoSource()
    code.google.com/p/ffmpegsource/
    Quote Quote  
  6. Yeah, I'm using AVISource - no love. Here's the format info for the video as it comes out of the framegrabber:
    General
    Complete name : Y:\framelink6.avi
    Format : AVI
    Format/Info : Audio Video Interleave
    Format profile : OpenDML
    File size : 1.87 GiB
    Duration : 51s 116ms
    Overall bit rate : 315 Mbps
    Video
    ID : 0
    Format : RGB
    Codec ID : 0x00000000
    Codec ID/Info : Basic Windows bitmap format. 1, 4 and 8 bpp versions are palettised. 16, 24 and 32bpp contain raw RGB samples
    Duration : 51s 116ms
    Bit rate : 315 Mbps
    Width : 640 pixels
    Height : 1 024 pixels
    Display aspect ratio : 0.625
    Frame rate : 60.000 fps
    Bit depth : 8 bits
    Bits/(Pixel*Frame) : 8.000
    Stream size : 1.87 GiB (100%)
    And here it is after saving out of VirtualDub (note that I chopped a few seconds off the end of the video as well, so the files are different sizes):
    General
    Complete name : Y:\framelink6_fix.avi
    Format : AVI
    Format/Info : Audio Video Interleave
    File size : 1.55 GiB
    Duration : 42s 283ms
    Overall bit rate : 315 Mbps
    Writing library : VirtualDub build 32842/release
    Video
    ID : 0
    Format : RGB
    Codec ID : 0x00000000
    Codec ID/Info : Basic Windows bitmap format. 1, 4 and 8 bpp versions are palettised. 16, 24 and 32bpp contain raw RGB samples
    Duration : 42s 283ms
    Bit rate : 315 Mbps
    Width : 640 pixels
    Height : 1 024 pixels
    Display aspect ratio : 0.625
    Frame rate : 60.000 fps
    Bit depth : 8 bits
    Bits/(Pixel*Frame) : 8.000
    Stream size : 1.55 GiB (100%)
    AVISource will open neither of these files. I was working on getting Huffyuv installed to try that.
    Last edited by hyachts; 28th Nov 2012 at 10:11. Reason: Resolved install issue with HuffYUV
    Quote Quote  
  7. BTW - saving it out of vdub with uncompressed seemed to work, but it's slow and creates an enormous file. I'm trying to get set up to be able to do dozens of these clips (anywhere from a few seconds to ten minutes or more) on a batch basis so space and time are a consideration - which, incidentally, is why it would be ideal if I could just get AVISynth to open them as-is.
    Last edited by hyachts; 28th Nov 2012 at 10:29.
    Quote Quote  
  8. I misstated something above: Media Player Classic also plays the input clips just fine. So far it's only AVISynth that can't handle them (even WMP can open them) There must be something simple I'm missing. This is on a Win7 x64 system - maybe there's some filter AVISynth uses that isn't registered or something?

    With respect to the weave() script, though, it works as advertised (on the HuffYUV converted videos), so thanks again for that suggestion.
    Quote Quote  
  9. Yes, the FFVideoSource() in the link above runs independent of system registered codecs. Unzip and put the .dll in the avisynth plugins folder

    But - you shouldn't be having this problem in the first place with uncompressed 8bit RGB (It doesn't need a special decoder) . So something else is going on
    Quote Quote  
  10. Hmmm... FFVideoSource gives me an amusing error: "Insanity detected: decoder returned an empty frame"
    Quote Quote  



Similar Threads

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