VideoHelp Forum




+ Reply to Thread
Results 1 to 28 of 28
  1. I have a TFF 1080i 25fps clip. Imported it into After Effects, flagged it as TFF, brought it into a 50fps comp. For some reason, the frames/fields are in the wrong order. If I flag it as BFF it plays just fine, except it bounces up and down like crazy which makes it impossible to mask.

    What's going on and how do I fix it?
    Quote Quote  
  2. You should know this by now....Post a sample clip with motion
    Quote Quote  
  3. SwapFields()?
    Quote Quote  
  4. It works just fine in a 50fps Premiere sequence. Holds steady vertically and all the fields are in the right order.

    The site is running infernally slow for me, so I didn't have the time to get a sample up earlier.
    Image Attached Files
    Quote Quote  
  5. It has the upper field stored below the lower field. Instead of the scanlines being in order: 0,1,2,3,4,5... Each pair is swapped 1,0,3,2,5,4. So they need to be swapped back. That will also change the field order from BFF to TFF. This can be done with SwapFields() in AviSynth or the Field Swap filter in VirtualDub. If you know what MJPG decoder is being used by After Effects it may have the field swap option built it. If so, enable it. Then you won't need another program to do it.
    Image Attached Files
    Last edited by jagabo; 30th Mar 2017 at 06:40.
    Quote Quote  
  6. What's the difference between storing the upper field below the lower field and BFF? How and why is it like this, and why does it work in Premiere?

    If you know what MJPG decoder is being used by After Effects it may have the field swap option built it.
    I have no idea how to figure that out.
    Quote Quote  
  7. Originally Posted by koberulz View Post
    What's the difference between storing the upper field below the lower field and BFF?
    Storing the scan lines in the wrong position is a spacial issue. TFF/BFF are temporal issues.

    Originally Posted by koberulz View Post
    How and why is it like this, and why does it work in Premiere?
    Probably because the MJPG decoder is performing the field swap. Or maybe it's just using a crappy deinterlacing method that blends the two fields together.

    The field swap problem was very common in a lot of old MJPG capture devices. Hence the swap setting in the decoders.
    Quote Quote  
  8. What version of AE are you using?

    In 14.1.0.57 other than having to manually interpret to TFF, everything seems to work fine.
    Image Attached Files
    Quote Quote  
  9. I'm using CS6.

    Storing the scan lines in the wrong position is a spacial issue. TFF/BFF are temporal issues.
    Could you expand on that?

    How would I go about locating this decoder and its settings?
    Quote Quote  
  10. Just did it again -- output to 50fps instead of 25 fps. I'm getting the expected one scanline bounce from separating fields and resizing them individually. LFF works better than UFF.

    You can add a warp stabilizer to it, if it's worth the time.
    Image Attached Files
    Quote Quote  
  11. You can't change the decoder used in AE directly. I guess a possible workaround for you in CS6 since your PP CS6 works, is to dynamic link it to AE. Or avisynth/vdub as suggested above to either an intermediate or avfs frameserve
    Quote Quote  
  12. Originally Posted by smrpix View Post
    I'm getting the expected one scanline bounce from separating fields and resizing them individually.
    No, you're getting worse than the normal bounce. Here's what a swap fields and simple bob delivers.
    Image Attached Files
    Quote Quote  
  13. "AVISource: couldn't locate a decompressor for fourcc MJPEG".

    If I try DirectShowSource I get two failures to load ffmpeg.dll, followed by the video loading anyway.

    EDIT: And encoding it anyway doesn't help.
    Last edited by koberulz; 30th Mar 2017 at 14:14.
    Quote Quote  
  14. You can use another source filter , like ffms2 or l-smash . They might decode it correctly or swap fields by default, not sure, you have to check

    shaqrulz
    Quote Quote  
  15. Originally Posted by poisondeathray View Post
    You can use another source filter , like ffms2 or l-smash . They might decode it correctly or swap fields by default, not sure, you have to check
    LSmash's LWLibavVideoSource() swaps the fields automatically. PicVideo's MJPEG VFW decoder has the option to swap or not. VirtualDub's built in MJPEG decoder has the option (set via Ask For Extended Options.. on the Open Video File dialog).
    Quote Quote  
  16. Originally Posted by koberulz View Post
    Storing the scan lines in the wrong position is a spacial issue. TFF/BFF are temporal issues.
    Could you expand on that?
    Interlaced frames contain two separate half-images, called fields. They are intended to be seen one at a time, sequentially. You're not supposed to see both fields at the same time under normal playback conditions.

    TFF/BFF indicates which of the two fields should be seen first. Ie, it is the temporal order in which the fields are displayed. With TFF you see the top field first, then you see the bottom field, then the next top field, and the next bottom field. With BFF it's the other way around.

    Spacially... Normally, the top field (scan lines 0,2,4,6...) are stored starting at the top (hence the name) of the frame and then every other scan line. The bottom field (scan lines 1,3,5,7...) starts at the second scan line, then every other scan line. So the order of the scan lines is:

    Code:
    0 (top field)
    1 (bottom field)
    2 (top field)
    3 (bottom field)
    4 (top field)
    5 (bottom field)
    6 (top field)
    7 (bottom field)...
    When stored this way non-moving parts of the picture show no comb artifacts. But some capture devices store the fields in the wrong location -- the top field appears "below" the bottom field:

    Code:
    1 (bottom field)
    0 (top field)
    3 (bottom field)
    2 (top field)
    5 (bottom field)
    4 (top field)
    7 (bottom field)
    6 (top field)
    ...
    When the fields are stored this way you will see comb artifacts on diagonal edges when the entire frame is viewed. A diagonal edge that's supposed to look like:

    Code:
    0 o
    1 oo
    2 ooo
    3 oooo
    4 ooooo
    5 oooooo
    6 ooooooo
    7 oooooooo
    will look like:

    Code:
    1 oo
    0 o
    3 oooo
    2 ooo
    5 oooooo
    4 ooooo
    7 oooooooo
    6 ooooooo
    When viewed as fields you get an up and down bounce -- worse than the normal bob of interlaced video.
    Quote Quote  
  17. VirtualDub's built in MJPEG decoder has the option (set via Ask For Extended Options.. on the Open Video File dialog).
    Running it through VDub that way doesn't seem to have changed anything at all.

    I had LSMASH on my last install, but it's not on this one. I'm 99% sure I installed whatever pack it was that LSMASH comes in, but for the life of me I can't remember what it was called and Google isn't helping.
    Quote Quote  
  18. Originally Posted by koberulz View Post
    VirtualDub's built in MJPEG decoder has the option (set via Ask For Extended Options.. on the Open Video File dialog).
    Running it through VDub that way doesn't seem to have changed anything at all.
    First force VirtualDub to use the "AVIFile input driver..." at the Open Video File dialog. Enable "Ask for extended options..." at that dialog. Select the file, "sample.avi" and Open. At the import options filter tick "Use internal decoders...". Don't enable the "swap fields" option, the internal decoder loads the video correctly.

    Image
    [Attachment 41096 - Click to enlarge]


    You should then see that the video is opened with scan lines in the right order.
    Quote Quote  
  19. First force VirtualDub to use the "AVIFile input driver..." at the Open Video File dialog.
    That's only compatible with AVS files, not AVI files?

    You should then see that the video is opened with scan lines in the right order.
    How do I tell without saving it as an AVI and trying it in AE?
    Quote Quote  
  20. Originally Posted by koberulz View Post
    First force VirtualDub to use the "AVIFile input driver..." at the Open Video File dialog.
    That's only compatible with AVS files, not AVI files? It works fine with AVI files. Or use the "Audio Video Interleave..." driver.

    You should then see that the video is opened with scan lines in the right order.
    How do I tell without saving it as an AVI and trying it in AE?
    Just look at the input pane in VirtualDub.

    good/bad:
    Image
    [Attachment 41097 - Click to enlarge]
    Quote Quote  
  21. I mean, what should I be looking for?
    Quote Quote  
  22. Did you edit those images in? They weren't there before.

    Wouldn't there be some amount of combing during motion regardless?

    How should I output from Vdub? Full process, fast recompress, direct stream copy?
    Quote Quote  
  23. Of course there will be combing in parts of the picture with motion. But the parts of the picture that are still (as in the crops I posted) should not have those comb-like artifacts.
    Quote Quote  
  24. I wonder if this is a specific interaction between Premiere and the video clip. I put it into Vegas and served it out through a separatefields() script and both the field order and scan line order seem correct to me. I then doubled the field rate in Vegas, another way to separate fields, and once again everything looked fine. I then zoomed way into the video, but still could see absolutely no evidence that individual lines had been reversed.

    P.S. Just after posting, I then tried a SwapFields() on the clip and it completely screwed it up.

    So, in my testing, everything about sample.avi is OK.
    Last edited by johnmeyer; 31st Mar 2017 at 18:29. Reason: added information about swapfields test
    Quote Quote  
  25. Originally Posted by poisondeathray View Post

    shaqrulz
    Really? He came out the other day in support of the flat earth beliefs being voiced by a number of pro basketball players that should know better:

    http://sports.yahoo.com/news/so-apparently-shaquille-oneal-is-a-flat-earther-too-03581...QDBHNlYwNzcg--
    http://sportsnaut.com/2017/03/shaquille-oneal-flat-earth-truther-earth-flat/

    I know having a working brain isn't a requirement for pro athletes, but ... seriously?
    Quote Quote  
  26. It looks like AE is using whatever 64bit VFW mjpeg decoder has highest merit. So depending on what you have installed / configured you should be able to get it to work directly in AE. But it's deinterlacing isn't the best so you might want to go avisynth processing route anyways

    One way to find what is being used is load the video directly into vdub 64bit . File=> file information will say what decoder is being used . (You also have to disable vdub's internal mjpeg decoder in the options; options=>preferences=> prefer internal video decoders over third party codecs DV and MJPEG is uncheckmarked)



    hahaha ok manono I take it back. jordanrulez! he' s not on the list is he ?
    Quote Quote  
  27. I wonder if this is a specific interaction between Premiere and the video clip.
    It works fine in Premiere, it's only AE that's an issue.

    I'm not trying to deinterlace, I'm trying to create an interlaced matte. Import 25fps interlaced, put into a 50fps progressive comp, create a 50fps progressive mask, output it as 25fps interlaced.
    Quote Quote  
  28. I wonder if this is a specific interaction between Premiere and the video clip.
    It works fine in Premiere, it's only AE that's an issue.

    I'm not trying to deinterlace, I'm trying to create an interlaced matte. Import 25fps interlaced, put into a 50fps progressive comp, create a 50fps progressive mask, output it as 25fps interlaced.
    Quote Quote  



Similar Threads

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