This is due to the first keyframe being in the middle of a second. The initial blank frames appear to have been used to ‘pad’ the video out so the first subtitle can be the 0-1 second. The blank frames are important to note as some transcoding programs will produce a fault if the first frame is not a Keyframe. As the footage is 15mins in length – what is with the extra 3 seconds? Should the video be that length and the transcoding has ‘evened’ it out? Should the footage start 3 seconds later and then end when the subtitle ends? The non uniform presentation order is also important if you are observing motion. This makes the timecode cover a period of 15mins and 3 secs. The analysis of this file type raises again the issue of frame timing and motion.įrom analysis of the timecode held in the subtitle file, it can be seen that there are 903 seperate 1 second entries. I can now go ahead and use my new video with one frame less as I can answer the question of where it is, and importantly, why it’s missing! ![]() As a result, it gets to the last true frame and then stops. As I used ffmpeg to transcode a new file with the subtitle hard burnt into the video, it ignored the AVI header detailing 22500 frames and purely dealt with the MPEG4 stream. The pattern changes a number of times through the encoding but from using the last GOP, I can see that the pattern should end halfway through a GOP with a P frame and then a duplicate. Initially, it starts with an encoding pattern of: When reviewing the presentation timestamps, the majority of durations between frames are longer than. The full ffprobe report details that each frame should be. The colouring relates to the Gspot output above. It’s also handy to note that it does not start with a keyframe.īy comparing this to the FFprobe and Gspot reports, gives us the information we need.Ī visualisation of how each frame corresponds to each other. It detected 11 Drop / Delay frames and there were the 11 frames at the start that were blank. Note: it seems like the video doesn’t start with a keyframe The first one confirmed some of the data reported by GSpot and the second gave a detailed table of every frame. The usual FFprobe reports were obtained using: ffprobe -show_streams -count_frames -pretty inputfile.avi > inputfile.txtįfprobe -show_frames -print_format xml inputfile.avi > inputfile.xml By moving through the GOPs, It is possible to see that the sequence changes, although the size of GOP stays the same. The small blue lines in a frame indicate the presence of an N-VOP. Of the 8988 coded frames, there is a pattern of coding within each GOP. Upon examining the GOP structure, a number issues present themselves. Gspots Visualisation of the GOP structure Understanding the encoding reveals the answer. It’s plainly obvious from the uniformity of the file, and the xvid encoding, that this is a transcode from what was originally recorded by the DVR. It all comes down to how the original Mpeg4 has been encoded. The original was 22500 and my new video with timecode was 22499! My resulting video had the date / time code on, however I was missing 1 frame. The ffmpeg route is usually quicker as there is no need to convert the. You can then clip and output the video for any use and the date / time information will be on the top of the video. Once this is in, your subtitle will appear over the video. ![]() This filter will then ask you for your newly created. If you need to install it yourself, you can find it HERE. This filter is already in the virtualdub included in my Software Pack. avi file into Virtualdub then add the subtitler filter. From reviewing the subtitle, we can see that each time display should last exactly 1 second.
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |