VideoHelp Forum




+ Reply to Thread
Results 1 to 8 of 8
  1. Hi everyone. I purchased this digital video and it's full of duplicate frames and it's very visible when watching it on TV, because it's HD 720p quality. At first I thought it's every 5th frame so I used:
    Code:
    tfm(order=1).tdecimate(cycle=5,cycleR=1)
    It converted the FPS to 24 and looked like it's fixed, but I found out that there is still some dupe frames (like e.g. at frame 33-34), so not sure what to do at this point.

    Thanks everyone for any help!
    Image Attached Files
    Last edited by midts; 25th Sep 2021 at 14:22.
    Quote Quote  
  2. Try TDecimate(mode=2, rate=24000.0/1001.0) to get 23.976 fps. You'll need a longer sample though -- because the difference is only one frame in every 1001. You might need to use the m2PA=true argument too. Or mode 7.
    Last edited by jagabo; 7th Apr 2017 at 07:19.
    Quote Quote  
  3. Hi @jagabo, I tride your suggestion:
    Code:
    tfm(order=1).tdecimate(mode=2, rate=24000.0/1001.0)
    and I don't think it changed anything, same duplicate frame.

    Edit: I also tried mode=7 and it did convert to 23.976, but the dupe frame still exist.
    Code:
    tfm(order=1).tdecimate(mode=7, rate=24000.0/1001.0, m2pa=true)
    Edit2: Added 45 second long sample with 1350 frames on top post.

    Edit3: I think I got the correct output with this:
    Code:
    tfm(order=1).tdecimate(mode=2, rate=24000.0/1001.0, m2PA=true)
    The every 5th frame are gone and that one annoying frame is also gone. I tested this on the 45s sample.

    So what does m2PA=true exactly do? And mode=2 and mode=7?
    Last edited by midts; 7th Apr 2017 at 07:55.
    Quote Quote  
  4. Member
    Join Date
    May 2014
    Location
    Memphis TN, US
    Search PM
    I tried this:
    Code:
    tdecimate(mode=2, rate=24000.0/1001.0, m2PA=true)
    I don't think you need TFM. You're matching frames, not fields. Thanks to both for this solution, I had an old British TV film with the same quirky structure. The above routine seems to clean it up.
    - My sister Ann's brother
    Quote Quote  
  5. First make sure the output of your source filter is really 30 fps. I used LWLibavVideoSource() and it gave 29.995. Be sure to start well before the problem frame, and end well after it -- say a few thousand frames before and after. It may take a while for TDecimate() to sync up.

    You might also try:

    Code:
    TDecimate(Cycle=5, CycleR=1) # 30 fps to 24 fps
    TDecimate(Cycle=1001, CycleR=1, m2PA=true) # 24 fps to 23.976 fps
    As for what mode and m2PA are -- read the docs.
    Quote Quote  
  6. Member
    Join Date
    May 2014
    Location
    Memphis TN, US
    Search PM
    This video is an odd critter. Actually I tried it two ways. This came first:

    Code:
    tdecimate(mode=7, rate=24000.0/1001.0, m2pa=true)
    TDecimate(Cycle=30,cycleR=1)
    AssumeFPS("ntsc_film")
    It gave me 23.177 fps, so I added AssumeFPS().

    The second way worked and gave me 23.976fps:
    Code:
    tdecimate(mode=2, rate=24000.0/1001.0, m2PA=true)
    - My sister Ann's brother
    Quote Quote  
  7. Originally Posted by LMotlow View Post
    This video is an odd critter. Actually I tried it two ways. This came first:

    Code:
    tdecimate(mode=7, rate=24000.0/1001.0, m2pa=true)
    TDecimate(Cycle=30,cycleR=1)
    AssumeFPS("ntsc_film")
    It gave me 23.177 fps, so I added AssumeFPS().

    The second way worked and gave me 23.976fps:
    Code:
    tdecimate(mode=2, rate=24000.0/1001.0, m2PA=true)
    Are you talking about my sample or your British TV film?
    Quote Quote  
  8. Member
    Join Date
    May 2014
    Location
    Memphis TN, US
    Search PM
    Both. The Brit film was recorded about 3 months ago on an HD PVR. Same structure. Handy coincidence.

    [EDIT] 'Scuse me, it wasn't British. Australian, broadcast on PBS.
    Last edited by LMotlow; 7th Apr 2017 at 08:55.
    - My sister Ann's brother
    Quote Quote  



Similar Threads

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