VideoHelp Forum
+ Reply to Thread
Results 1 to 11 of 11
Thread
  1. I have noticed many times that scenalyzer will randomly ssign fields to frames when the input is analog video converted to DV.

    The clearest example is when two scenes are joined together, the result is a frame with a set of fields from the previous scene and the other field is from the next one.
    So instead of having frame composed of fields 1 and 2, the frames are 2 and 3, 4 and 5, etc.

    Is there a quick way to reverse the field assigned to each frame? DV is intraframe compression, so shouldn't cause transcoding.
    Quote Quote  
  2. The only way to fix it is to convert to TFF -- but then it can't be DV.
    Quote Quote  
  3. Member Skiller's Avatar
    Join Date
    Oct 2013
    Location
    Germany
    Search PM
    I'm pretty certain it is not Scenalyzer phase shifting the fields but whatever capture device you are using does it. Well, it's not even "wrong" per se. It's analog video. It's a stream of fields.

    In DV compression the fields are stored within frames, so unfortunately they cannot be rearranged without re-encoding.

    But why bother? Phase shifted fields are not an issue, just a slight nuisance.
    Quote Quote  
  4. Originally Posted by Skiller View Post
    I'm pretty certain it is not Scenalyzer phase shifting the fields but whatever capture device you are using does it. Well, it's not even "wrong" per se. It's analog video. It's a stream of fields.

    In DV compression the fields are stored within frames, so unfortunately they cannot be rearranged without re-encoding.

    But why bother? Phase shifted fields are not an issue, just a slight nuisance.
    Yes, it's the device that is receiving the video signal, I'm just capturing with Scenalyzer.
    It is a nuisance and I'm perfectionist. But apparently not enough to recapture.

    I guess it can be closed now.
    Quote Quote  
  5. Member Skiller's Avatar
    Join Date
    Oct 2013
    Location
    Germany
    Search PM
    Originally Posted by SF01 View Post
    But apparently not enough to recapture.
    Which may not fix it anyways.


    Aren't you going to do any kind of processing and encoding to a more watch-friendly format? Because if you do, while at it, all it would take to phase shift the fields again and thus re-pairing them is:


    Code:
    SeparateFields()
    Trim(1,0)
    Weave()
    #Field order is reversed as a side-effect, so is now TFF
    Quote Quote  
  6. Member
    Join Date
    May 2005
    Location
    Australia-PAL Land
    Search Comp PM
    Originally Posted by SF01
    Yes, it's the device that is receiving the video signal
    Out of interest, what is it? A camera? ADVC?
    Quote Quote  
  7. Originally Posted by Skiller View Post
    Originally Posted by SF01 View Post
    But apparently not enough to recapture.
    Which may not fix it anyways.


    Aren't you going to do any kind of processing and encoding to a more watch-friendly format? Because if you do, while at it, all it would take to phase shift the fields again and thus re-pairing them is:


    Code:
    SeparateFields()
    Trim(1,0)
    Weave()
    #Field order is reversed as a side-effect, so is now TFF
    I convert only at the request, how do I incorporate it into ffmpeg command?

    Originally Posted by Alwyn View Post
    Originally Posted by SF01
    Yes, it's the device that is receiving the video signal
    Out of interest, what is it? A camera? ADVC?
    It depends, I use DCR-TRV828E, DSR-2000AP, or HVR-M15AE.
    Quote Quote  
  8. For ffmpeg equivalent command would be like this
    Code:
    -vf setfield=tff,separatefields,trim=start_frame=1,weave,setfield=bff
    Quote Quote  
  9. Originally Posted by poisondeathray View Post
    For ffmpeg equivalent command would be like this
    Code:
    -vf setfield=tff,separatefields,trim=start_frame=1,weave,setfield=bff
    Thanks.

    The code I am using no is:
    Code:
    for %A in ("*.*") do ffmpeg -i "%A" -c:v libx264 -profile:v main -crf 16 -filter:v "crop=702:576:9:0,scale=768:576,setsar=1" -c:a aac -b:a 384k "F:\%~nA.mp4"
    Quote Quote  
  10. Another way to reverse field order is to shift the frame up or down by one (or any other odd number) scan line. That won't "fix" your issue at scene changes but it keeps you from losing a field at the start and end of a clip.

    Code:
    Crop(0,1,0,0).AddBorders(0,0,0,1) # crop one line off the top, add one to the bottom, ie, shift the frame up by one scan line
    Subsampled chroma restrictions apply.
    Quote Quote  
  11. Originally Posted by SF01 View Post
    Originally Posted by poisondeathray View Post
    For ffmpeg equivalent command would be like this
    Code:
    -vf setfield=tff,separatefields,trim=start_frame=1,weave,setfield=bff
    Thanks.

    The code I am using no is:
    Code:
    for %A in ("*.*") do ffmpeg -i "%A" -c:v libx264 -profile:v main -crf 16 -filter:v "crop=702:576:9:0,scale=768:576,setsar=1" -c:a aac -b:a 384k "F:\%~nA.mp4"

    You can just add it to the filter chain.

    Code:
    -filter:v "setfield=tff,separatefields,trim=start_frame=1,weave,setfield=bff,crop=702:576:9:0,scale=768:576,setsar=1"
    Don't forget to encode and flag interlaced for libx264 , otherwise it will be encoded and flagged progressive

    Code:
    x264opts bff=1
    Quote Quote  



Similar Threads

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