VideoHelp Forum
+ Reply to Thread
Results 1 to 3 of 3
Thread
  1. I'm transferring some tv episodes from vhs tape. The show source is pretty obviously 24p. The recording was made from an sd channel years ago so it's captured as 30i. There is a network logo/overlay text that is generally static and not an issue, but is occasionally animated (probably in 30i).

    I'm using avisynth and tfm/tdecimate. This generally works well, except when the overlay logo animates over the duplicated show source frame. tdecimate sees the change in the overlay and keeps both duplicated frames, and discards another frame it should be keeping.

    I have attached a gif showing the behavior. you can see the video kind of catch when the animation happens and a source frame is repeated, and the debug info tags a different frame in sequence as the duplicate.

    for my script I'm using

    tfm(y0=360,y1=460) # setting the exclusion band range (720x480 originally)
    tdecimate( display=true , hint=true, denoise=false) # denoise does not help

    I was hoping the exclusion band from tfm would carry over but it seems it doesn't.

    What's the best way to deal with this? Is there a way to tell tdecimate() to ignore that area of the picture? Some other approach? I think if all else fails I will try using remapframes() and swap the 2nd frame in the animation with the first, it'll get identified properly, but that's kind of tedious.
    Image Attached Thumbnails Click image for larger version

Name:	s02e01.t2.gif
Views:	146
Size:	2.68 MB
ID:	55477  

    Quote Quote  
  2. Originally Posted by FrankWDoom View Post
    Is there a way to tell tdecimate() to ignore that area of the picture?
    tdecimate has a clip2 parameter that it can take frames from and returns

    metrics are done on the input clip (eg. you can crop to an area of interest), but clip2 "full frames" are returned
    Quote Quote  
  3. awesome thanks. that seems to take care of my issue. here's my revised script

    vp = tfm(v, y0=360,y1=460) # v is 30i video, output 30p
    vc = crop(vp, 0,0,0,-120) # cropped below line 360 to exclude overlays
    vc.tdecimate( clip2=vp, display=true , hint=true, denoise=false) # evaluate cropped 30p video for decimate, return frames from 30p stream
    Quote Quote  



Similar Threads

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