VideoHelp Forum




+ Reply to Thread
Results 1 to 4 of 4
  1. Video Restorer lordsmurf's Avatar
    Join Date
    Jun 2003
    Location
    dFAQ.us/lordsmurf
    Search Comp PM
    Is there an easy way to IVTC a telecined film that has been edited after the telecine? The pattern keeps changing. Splitting the video into a zillion clips is cost prohibitive and would blow the schedule of the project.

    Maybe some AVI Synth magic I've not seen yet?
    Want my help? Ask here! (not via PM!)
    FAQs: Best Blank DiscsBest TBCsBest VCRs for captureRestore VHS
    Quote Quote  
  2. Member vhelp's Avatar
    Join Date
    Mar 2001
    Location
    New York
    Search Comp PM
    This is not always an easy answer to supply in this case.

    I don't know if this will help, but maybe post a small clip of the multi-trouble-patterns.

    If this is a client's clip (client may not apprec posting) then you could at least follow the idea under Section A so that it can be reviewed for a script thrash. There are some pretty good filter plugins for almost every problem pattern, except for mabe scene-hachet jobs where they just cut randomly inside the 3:2 telecine.

    Basically: you open the clip in a time line (that doesn't do any deinterlace or ivtc) and then observe the frames whatever scene(s) are exhibiting problems, scanning manually frame-by-frame and write down the interlace notation, P or I..and maybe D, for duplicate frame. (is prob be better to do by field instead of frame, but frame is a good start) If its a hachet job then it won't matter after all..its a hachet job and you'll have to compremise on a straight 29.970 frame rate encode unless this is computer playback and a delinterlace could be considered.

    Here's an example of what I mean so you can post the telecine pattern here, and I'm sure someone can do the math to decode the pattern if decodeable, unless its a region conversion. This is the manual though barebones method, and is the sure fire way of analizing patterns for decoding and processing.


    Section A

    Frames based patterns, the quickest and eaiest

    70 frames -- PPPii PPPiP PPPii PPPii PPPii PPPii PPPiP PPPii PPPii PPPii PPPii PPPii PPPii PPPiP

    but if its field complicated nonsense, (using the example above as a framework) it might be better to post a field-only pattern instead of frame, unless someone has a better idea. (I'm just trying to offer an alternative for client confidentiality sake)

    Field-only based patterns

    For a field-only example, you would be better off using an avisynth script because the virtualdub method is not so user friendly to work with. This intails setting up a project for opening in dgindex, saving as .d2v ** and then open that up inside a script that will ultimately serves field-only video, and then frameserve it into a virtualdub for review. You create a .txt document to house your script in:

    1. open mpg file in dgindex
    2. create a .d2v project, menu \File\Save Project\ i.e., c:\videos\client_video.d2v
    3. now, open .d2v file inside the notepad and type the following script and save it client_video.avs

    Code:
     
     x = "c:\videos\client_video.d2v" 
    
     LoadPlugin( "c:\plugins\DGDecode.dll") # <-- or where you keep this file at
     MPEG2Source( x )#.trim( 100, 200 )    # <-- if you have a section in mind, trim just that area
    
     separateFields() # this one line will give you field-only video
    #   selectEvery( 10, 0,1, 2,3, 4,5, 6,9 ) # 30->24
    #   selectEvery(  5, 1,2, 3,4 ) # 30->24
    #   selectEvery(  5, 0,1, 2,3 ) # 30->24
    # weave() 
    
    # info()
    4. then, frame serve client_video.avs into virtualdub and observe the field-patterns and write them down, and post here.

    working with field-only images is a bit more trickier with than above "frame" version because there is no interlace to see. Instead, you will bobbing (up/down) and duplicates. In this case, you would write the notations down as:

    bU bD bU bD D D bU bD

    What you will get (if film source) is very similar to what you get in HD 60p videos that are film based which is:

    PDPDD PDPDD PDPDD


    Section B

    ** dgindex have a feature for this exact thing, pattern analysis, though I'm not sure if your mpeg source must have the 3:2 pulldown flags for the method to work for this. But here's how to create a parsed (analysis) file:

    1. open mpg file in dgindex
    2. create a .d2v project (you have to do this first)
    3. then, after you create .d2v, go to the menu, \Tools\Parse D2v
    4. save
    5. a text file will be generated and opened immediately--just save it.
    6. upload the txt file so someone can DL and review

    I think that for complicated telecine pattern deciphering Section A is the better option, (but if you can obtain a more simpler method for the patterns that would be even better) Section B is for general film origin and is mostly clean sources but might have a few glitches that you quickly want to resolve if possible.

    Here is an example of an analysis report file. It is the start of the mpegs data:

    Code:
    D2V Parse Output
    
    Encoded Frame: Display Frames....Flags Byte (* means in 3:2 pattern)
    --------------------------------------------------------------------
    
    [Field Operation None, using flags]
    [GOP: closed]
    [Clip is TFF]
    0  [I]: 0,0......................2
    1  [B]: 1,1,2....................3 *
    2  [B]: 2,3......................0 *
    3  [P]: 3,4,4....................1 *
    4  [B]: 5,5......................2 *
    5  [B]: 6,6,7....................3 *
    6  [P]: 7,8......................0 *
    7  [B]: 8,9,9....................1 *
    8  [B]: 10,10....................2 *
    9  [P]: 11,11,12.................3 *
    10 [B]: 12,13....................0 *
    11 [B]: 13,14,14.................1 *
    12 [P]: 15,15....................2 *
    [GOP: open]
    13 [B]: 16,16,17.................3 *
    14 [B]: 17,18....................0 *
    15 [I]: 18,19,19.................1 *
    16 [B]: 20,20....................2 *
    17 [B]: 21,21,22.................3 *
    18 [P]: 22,23....................0 *
    19 [B]: 23,24,24.................1 *
    20 [B]: 25,25....................2 *
    21 [P]: 26,26,27.................3 *
    22 [B]: 27,28....................0 *
    23 [B]: 28,29,29.................1 *
    24 [P]: 30,30....................2 *
    [GOP: open]
    25 [B]: 31,31,32.................3 *
    26 [B]: 32,33....................0 *
    27 [I]: 33,34,34.................1 *
    28 [B]: 35,35....................2 *
    29 [B]: 36,36,37.................3 *
    30 [P]: 37,38....................0 *
    31 [B]: 38,39,39.................1 *
    32 [B]: 40,40....................2 *
    33 [P]: 41,41,42.................3 *
    34 [B]: 42,43....................0 *
    35 [B]: 43,44,44.................1 *
    36 [P]: 45,45....................2 *
    [GOP: open]
    I'll let someone else explain the details of the Parse d2v analaysis report since it is still vague to me. I've been meaning to do something with the reported data but haven' gotten around to it yet.

    Coensidentally, I'm also working on a project to count the different types of patterns, hopefully to get a table of some sort to calculate off of and get a more or less accurate determination of the source.

    -vhelp 5246
    Quote Quote  
  3. Member edDV's Avatar
    Join Date
    Mar 2004
    Location
    Northern California, USA
    Search Comp PM
    HDTV set hardware inverse telecine has to deal with broken cadence. First the cadence break needs to be detected, then the IVTC needs to restart on the next A frame. During this process split field frames are displayed. A good TV processor will react quickly and only allow a few split frames to be displayed. Since this usually happens during or after a transition the viewer may not notice. Cadence breaks during a clip resulting from effects editing or time compression will look more like a glitch to the viewer.
    Recommends: Kiva.org - Loans that change lives.
    http://www.kiva.org/about
    Quote Quote  
  4. Originally Posted by lordsmurf
    Maybe some AVI Synth magic I've not seen yet
    Have you just tried a standard AviSynth IVTC yet? They're designed to account for changes in pattern. Orphaned fields should be deinterlaced. One such as TIVTC should do the job at default settings:

    TFM()
    TDecimate()

    As vhelp suggests, a small clip illustrating the problem might help.
    Quote Quote  



Similar Threads

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