VideoHelp Forum
+ Reply to Thread
Results 1 to 3 of 3
Thread
  1. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    This problem has been asked and asked, I know, but I have tested, searched tried and tried and have not found an answer or a fix. It is somewhat complicated to explain because of all the testing but i think it might be easier if I give all the information i have first.

    Essentially, I have a video, (closed GOP, 30 FPS, .033367 frame duration, I-frame every 250 Frames) that has no great scene change differences but has constant movement to easily determine start frame number copied/played. I have the I-Frame locations, to the microsecond from ffprobe, so not wanting to throw a bunch of number here I will refer to them as Point A, B, C, and D.

    For testing purposes of cutting and remerging, I-Frame to I-Frame, I am trying to cut from B to C but not including the C I-Frame. I am using Point B as my start point (05:27.127127, 327.127127 < FFPROBE), Using -SS as an input option which resets PTS time to 0. Because of this reset to PTS Time, I limit the -t (-to) time to 8.+ for the frame before point C (05:35.308308, 8.308308)

    Code:
    'FFMPEG -ss B -i video.mp4 -t 8.308308 -c copy Out_Video.mp4'
    This produces what FFPROBE says is 251 Frames I-Frame B thru I-Frame C.

    Backing up another frame (2 Frames before point C. (8.274942)

    Code:
    'FFMPEG -ss B -i video.mp4 -t 8.274942 -c copy Out_Video.mp4'
    This produces what FFProbe says is 250 Frames, Point B up to Point C but not including it which is what I wish. Everything looks right and is 8.+ seconds long, plays for 8 seconds.

    The problem is that Explorer says both created videos are 16 seconds long and The track information (under tkhd) in the MP4 also says is is 16 seconds long. but ffprobe does not show this. If I merge the video with itself, since they are starting with I frames and ending in P frames(closed GOP), this should work. What I get is a video that is 32 seconds long and includes A to C twice. Somehow A to B is now visible.

    No amount of changing the -ss or -t (-to either) achieves an 8 second, playable video. The only method that works is if I use -SS as an output option and -vframes as the duration. This works but a separate operation must be performed on the resulting video before joining, since its DTS starts at the cut point not 0.

    Is this a known bug that I have not found in my searching or am I doing something wrong?
    Quote Quote  
  2. Member
    Join Date
    Aug 2010
    Location
    San Francisco, California
    Search PM
    FFmpeg is not developed here. But you can search the bug tracker at https://trac.ffmpeg.org/.
    Quote Quote  
  3. Member Budman1's Avatar
    Join Date
    Jul 2012
    Location
    NORTHWEST ILLINOIS, USA
    Search Comp PM
    Ok. Thx i thought maybe someone knew of an existing bug or something in my procedure thet saw was wrong. Ill check the tracker thx.
    Quote Quote  



Similar Threads

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