I'm using VLC 2.2.6 without additional extensions and I'd like to know the time a frame occurs in a video file. I can move forward frame by frame with the E key. Here's an example:

frame 97 and 98 - VLC

The video file has an advancing red frame counter burnt into it. You can see that advancing from frame 97 to 98 advances the time indicator from 00:01 to 00:02.

However, if I scrub around the video and try again, I get a different result: frame 101 and 102 - VLC Here, VLC advances from 00:01 to 00:02 on frames 101 and 102 instead.

By comparison, QuickTime Player consistently changes from 00:01 to 00:02on frames 70 and 71. frame 70 and 71 - QuickTime Player

I'm concerned that VLC's indication of the time varies with each try and that it's so far off from QuickTime Player. Is there an option I need to enable to get accurate and consistent time readings from VLC?

  • 2
    You could convert the video with ffmpeg into a sequence of jpg images or a huffyuv encoded video which you can open e.g. in virtualdub. – SpiderPig Sep 8 '17 at 23:29
  • I did convert it into a series of PNGs with ffmpeg. I also looked at the packets (one per frame) with ffprobe. What's interesting is that the frame with the red 71 corresponds with a PTS of 1.5 s. It seems that QuickTime player is consistent but wrong while VLC is mostly right (the frame with the red 101 has a PTS 2.0 s) but inconsistent. – watkipet Sep 13 '17 at 22:21
  • I also need a solution to this. I need to re-sync some subtitles and I need to get the exact time a frame is drawn on the screen. I think it's a simple request, but there are no known solutions so far. – Shailen Apr 22 '19 at 16:08

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Browse other questions tagged or ask your own question.