15

I have a video I made for physics class, which I intend to use to measure just how long an event took to take place. I can find the start frame and end frame easily using VLC's frame-by-frame feature.

However, VLC's timer seems only to be precise to a single second, giving me no more precise an answer than "5 seconds."

Is there a way in VLC, or any other program, to identify at precisely what time a particular frame in a video takes place?

I have easy access to Ubuntu and Windows, and acquire a Mac if need be.

If precise timer is not available, what number frame I am on will also work, since I know the framerate.

Matchu
  • 320

6 Answers6

7

Give Avidemux a try. It should be able to do what you want and is freely available for Windows and Linux.

Mika Fischer
  • 5,289
5

I don't know if this feature was available at the time the question was asked, but the open source MPC-HC (Media Player Classic Home Cinema) video player definitely has both these features available now.

There is a context menu option to enable millisecond precision for time indicator, and you can easily step between frames in both forward (CTRL+Right) and backward (CTRL+Left) directions.

MPC-HC high precision timer

You can also jump to exact time point OR frame in video file via Navigate -> Go To... menu (or CTRL+G).

MPC-HC "Go To..." menu

1

Any professional NLV (Non-Linear Video editing) app should handle this. They normally support a standard called SMPTE timecode, which is something like 3 or 4 digits of precision per second. Software in this category would include Sony Vegas, Final Cut Pro, Adobe Premiere, etc.

For Linux, try Cinelerra (fairly outdated and horrible to install), KDEnlive, or Pitivi. I'm sure that Cinelerra will do it, should you be able to get it running, but not so sure about the others.

1

Well, seconds are integers. Video players rarely go below them to more precise measurements.

But if you know at what frame you're currently at (which is fairly commonly displayed), and you know the frame rate, you can usually calculate it to much more of a second. Or you can skip frame by frame while on a time measurement, and the moment the next second "hits", switch to frame measurement and then calculate the percent of the next second in which the particular frame occurs.

... just some crazy ideas ... have never had the need for this, so all this is untested ...

Rook
  • 24,289
0

This isn't free ($19), but Womble MPEG-VCR has frame accurate times with frame by frame stepping.

If you do a search use the key words "frame accurate", I'm sure there must be something freeware, especially for Linux.

Hope this helps.

-1

if you don't know the framerate what you also can do is measure the length of the video bar in milimiters, then the length of the duration you want to measure. If you know the total duration of the video then using a simple cross-multiplication you should find out the exact duration you want to know.

elcaxo
  • 1