1

Currently using the Configure Video Timing… under the Video menu, you have the ability to change both the Capture Framerate and Video Framerate.  When a new video is imported, the default video framerate is imported directly from the file and the capture framerate is assumed to be the same value.  This is not a bad assumption, however, if you increase the video framerate, the program assumes that the capture framerate has to be equal to or greater than the video framerate and sets the capture framerate equal to the video framerate.  This is true while recording a video with a video camera where the video framerate physically can’t be higher than the capture framerate without repeating identical images.

This may be an unnecessary restriction as you may want to speed up a video using a higher video framerate even though the capture framerate was lower.  Unless this change affects the capture mode of the software, I would remove this restriction.  I agree with defaulting the capture framerate to the playback framerate when first opening a video file, but I would not force this assumption on users by forcing the capture framerate to be equal to or greater than the playback framerate.  I do like the reset buttons that reset the framerates to the original video file framerates.

2

I don't think it's a hard restriction though. When you go change the video framerate it will update the capture framerate accordingly because it means the previous data was incorrect so it's better to reset everything. But then you can still manually change the capture framerate up or down, it should work. I admit I haven't tested that configuration. A clear use-case for this is timelapse videos.

3

Joan you are right that it is not a hard restriction.  I don't think the program should make the assumption that when a user wants to change the video framerate that they also want the capture framerate changed to the same value.  The first few times I used the program, I adjusted the video framerate and couldn't figure out why certain things were happening on my playback windows until I discovered the program had adjusted my capture framerate which is the crucial for time based calculations.

Currently the user has no visual indicator that alerts them that capture framework is dependent on the input video framerate in this input form.  It would be most straight forward for the user to be able to change these framerates individually without program intervention, especially for capture framerate which is crucial to all time based calculations.

4

The first few times I used the program, I adjusted the video framerate and couldn't figure out why certain things were happening on my playback window

Hmm, changing the video reference framerate should be a very rare action, only when the video file is broken by having an incorrect information written into it which makes it playback faster/slower than expected. Maybe there is another use-case but that's the original reason for adding this option. In particular it should not be used to emulate slow/fast motion. It's a pretty recent addition.

So this is something the user would do once, usually right after opening the video and discovering it's not playing at real-time speed on 100%. At that point the video is considered broken, all bets are off. If we let the capture speed stay at the previous value it would be wrong for the primary use-case of that option (a non-high speed video with incorrect information in it).

For a high speed video the reference framerate written in the file is already not corresponding to real time so I'm not sure why it would ever have to be changed. The scenario would be when a high speed camera is not capturing at the advertised framerate, but even then you would just change the capture framerate, not the reference video framerate.

My feeling is that this video framerate option is too easy to tamper with compared to its role. Maybe the menu should be "Advanced video timing options" or something.

5

I have a slow motion video that I wanted to play at full capture speed, however, the program currently re-scales the slider control on the playback window from 0 to 200% of the ratio of video framerate to capture framerate.  So if I am viewing a 10x slow motion video, the speed range is scaled from 0 to 20% of the capture framerate.  The only way to currently view the video at higher framerates  is to increase the default video frame rate.  If I increase the default video framerate to the capture framerate, the slider control speed range is re-scaled from 0 to 200% which allows me to view the slow motion video at full speed (100%).

6

Yeah, after thinking about it I came to the conclusion that this was your use case, replaying a high-speed video at its real time speed.

Currently there is no satisfying way to do it. Tweaking the reference video framerate in order to increase the range of the speed slider is a workaround based on a side effect, I don't think it's a good solution to overload this option with a completely different role than what it was intended for. 

The issue is that if you want to replay a say, 1000fps video to real time with the current player, it will need to decode and display these 1000 frames per second, it will most likely fail, which to me means that this use-case requires a different playback approach altogether.

I very much like the idea of being able to go way higher in speed. If we can do 10x we should be able to do 100x because at that point it wouldn't be related to computer perfs.

This would be very useful to quickly parse a long video, and it would provide timelapse out of the box which I think have unexplored applications in sports, to analyze cyclic motions or long term trends in posture.

So, I would say: 1. a new playback approach for very high framerates, most likely by seeking forward in the file instead of decoding frame by frame. 2. a logarithmic speed slider so you have fine control for slow motion but can still go to 100x speed at the other end, 3. an increased size of the speed slider (this is limited by the size of the screen in dual playback configuration at the minimal monitor resolution supported).