1 (edited by Chas Tennis 2017-Jul-30 16:55:46)

Topic: Kinovea Analyses on Vimeo (and Youtube and other video hosting services)

Kinovea Analyses on Vimeo

We often may want to communicate the Kinovea analyses videos using Youtube, Vimeo or other video web hosts.

This issue probably involves Vimeo website processing and I have not asked them yet.   I believe that Vimeo added single frame advance capability about 3 years ago. 

I cannot now recall some details so I'm not asking for a fix. Asking generally, how can I document problems with Vimeo processed Kinovea analysis videos in the future? 

I have uploaded some videos on Vimeo.   The Kinovea analysis videos worked well on my computer. They were side-by-side videos, each video recorded at different frame rates, 240 & 30 fps often,  with magnification boxes and millisecond countdown time displays.  Very informative displays.

1) sometimes the magnification boxes appeared on Vimeo in different screen locations than in my computer video.  In the wrong place, they blocked video and often obscured the labels, arrows etc that were on the screen.

I discarded the videos where the magnification box obscured something and am not now sure what might have been happening. It seems to work better lately but I worry about it. 

Why would everything be in place but the magnification box? 

Also, once a magnification box is introduced it stays throughout the video, start to finish. It would be a plus if they could be put in and removed for any ranges of frames.

2) often the Vimeo processed video would do single frame so that the faster video (say 240 fps) would advance 2 frames using the Vimeo process for single frame advance.

Vimeo single frame process - Hold down SHIFT KEY & use ARROW KEYS

This side-by-side video works well, magnification box is good, but the high speed video on the right advances 2 frame times each time the arrow is pressed. (8.4 milliseconds per Vimeo arrow press instead of 4.2 ms.) This video has very brief messages and is intended to stop on specific single frames when messages appear. Not a useful video for 30 fps playback.

I am so pleased with the great job that Kinovea does on these videos.  That Vimeo video is so near perfect except it advances 2 frames on Vimeo for every one frame advance key press.

I believe that I had set the video speed properly to 240 fps when making the Kinovea analysis video.

Might it work better if I put the 240 fps video to the left?  Probably a Vimeo processing or playback issue?

FYI - After years of suffering to advance one frame on Youtube, I just learned that Youtube single frame exists - you simply use the "." and ","  keys!!  Oh, that hurts!

2 (edited by Chas Tennis 2017-Jul-20 02:13:51)

Re: Kinovea Analyses on Vimeo (and Youtube and other video hosting services)

Problem Working in Kinovea 8.25



Go full screen.

Video intended for single frame viewing of frames with text.  "Serve 1", "Serve 2" and "Serve 3" were analyzed and have text and angle scale, etc.

At the very end of this video at 48 seconds, for only a few frames, there is a brief green text box. It starts with "Forearm".......

When I was in Kinovea and making the original analysis video,  whenever I would double click on this green box to edit it,  instead the small & distant text box across the bottom would open up to be edited.  Small box - "Single Frame Vimeo".....  It became difficult to get the large green box because the small box kept opening up.  I'm not sure how I was able to edit it, but maybe I had to move the green box to open it.

3 (edited by Chas Tennis 2017-Aug-15 16:26:19)

Re: Kinovea Analyses on Vimeo (and Youtube and other video hosting services)

Chas Tennis wrote:

Kinovea Analyses on Vimeo

We often may want to communicate the Kinovea analyses videos using Youtube, Vimeo or other video web hosts.

This issue probably involves Vimeo website processing and I have not asked them yet. .......................................................................................
I have uploaded some videos on Vimeo.   The Kinovea analysis videos worked well on my computer. They were side-by-side videos, each video recorded at different frame rates, 240 & 30 fps often,  with magnification boxes and millisecond countdown time displays.  Very informative displays.
..........................................................................................................
2) often the Vimeo processed video would do single frame so that the faster video (say 240 fps) would advance 2 frames using the Vimeo process for single frame advance.

Vimeo single frame process - Hold down SHIFT KEY & use ARROW KEYS

This side-by-side video works well, magnification box is good, but the high speed video on the right advances 2 frame times each time the arrow is pressed. (8.4 milliseconds per Vimeo arrow press instead of 4.2 ms.) This video has very brief messages and is intended to stop on specific single frames when messages appear. Not a useful video for 30 fps playback.

I am so pleased with the great job that Kinovea does on these videos.  That Vimeo video is so near perfect except it advances 2 frames on Vimeo for every one frame advance key press.

I believe that I had set the video speed properly to 240 fps when making the Kinovea analysis video.
.................................................

I contacted Vimeo about the issue of skipping frames when uploading  Kinovea videos to Vimeo.  Here is their reply.

" The original video you uploaded to Vimeo is 100 fps, which exceeds our 60fps threshold. We reduce the frame rate for all videos exceeding 60fps during our conversion process. Frame drops can occur during our conversion process in this case.

My best recommendation is that you re-encode this video using our compression guidelines https://vimeo.com/help/compression. "

I reviewed many of my Kinovea analysis video files and found some 30 fps, some 100 fps and some not listed.  (I have used 8.15 and 8.25) I thought all Kinovea videos were 30 fps and did not realize that many Kinovea files were 100 fps.  Skipping frames on videos above 60 fps appears to be an issue when uploading 100 fps Kinovea analyses video files to Vimeo. 

When does Kinovea save videos as 30 fps and when at 100 fps?    Is there a way to control the playback video frame rate before saving the Kinovea analysis video file on Kinovea 8.25?

Is there a similar issue uploading 100 fps Kinovea videos to Youtube?

Re: Kinovea Analyses on Vimeo (and Youtube and other video hosting services)

Chas Tennis wrote:

1) sometimes the magnification boxes appeared on Vimeo in different screen locations than in my computer video.  In the wrong place, they blocked video and often obscured the labels, arrows etc that were on the screen.

I think that's a bug in the export process in Kinovea that has been corrected for the next version. Same bug that was causing dual view export to not work.

Chas Tennis wrote:

2) often the Vimeo processed video would do single frame so that the faster video (say 240 fps) would advance 2 frames using the Vimeo process for single frame advance.
(...)
I contacted Vimeo about the issue of skipping frames when uploading  Kinovea videos to Vimeo.  Here is their reply.

" The original video you uploaded to Vimeo is 100 fps, which exceeds our 60fps threshold. We reduce the frame rate for all videos exceeding 60fps during our conversion process. Frame drops can occur during our conversion process in this case.

Thanks for the investigation. I can see why they would do that since most people have 60Hz refresh displays and are just playing back the videos at normal speed.
I thought Vimeo had an option for the end viewer to download the original video as a file (original framerate and without the compression), but I'm not sure.

Regarding the capping at 60fps I'm confident it is the same for YouTube.

Chas Tennis wrote:

Vimeo single frame process - Hold down SHIFT KEY & use ARROW KEYS
(...)
Youtube single frame exists - you simply use the "." and ","  keys!!

Wow, that's awesome, I wasn't aware of that!

Re: Kinovea Analyses on Vimeo (and Youtube and other video hosting services)

Chas Tennis wrote:

When does Kinovea save videos as 30 fps and when at 100 fps?    Is there a way to control the playback video frame rate before saving the Kinovea analysis video file on Kinovea 8.25?

Yes, menu Video > Configure video timing > Video. (bottom section).
The value put here will set the framerate value reported by the file in its header, so video players will be "tricked" into playing the video at that framerate. Or, in the case of Vimeo, it should be tricked into not changing the framerate of the video.

This will distort the scale of time when playing back the video. So for example if you were to take a 100fps input video and change this value to 50fps, the live action would be reproduced half as fast as it should. However, step by step operation should correctly visit all the original frames without skips.

6 (edited by Chas Tennis 2017-Aug-30 00:30:58)

Re: Kinovea Analyses on Vimeo (and Youtube and other video hosting services)

I only have glimmers of the philosophies used by camera manufacturers, video processing creators, video analysis program creators and video hosting websites when they select frame rates.
1) camera recording frame rates -  Casio or iPhone,etc...
2) in camera processed  video output files - Casio or iPhone
3) if used, video output file from video processing applications - ?
4) output files from video analysis applications - Kinovea
5) input files for video hosting websites - Vimeo, Youtube, etc
6) final video files, compressed, stored on video hosting websites - Vimeo, Youtube, etc

My older Casio Ex FH100 records at various high speed video frame rates and outputs an AVI video file that plays back at 30 fps.  30 fps is the frame rate I'd prefer to see at the video hosting website.  To fully use what Kinovea can do all frames should appear on the hosting website with single frame control.   

What's the difference between 29.97 fps and 30 fps?  Can that cause issues?   

I do not understand why to select one of the Kinovea video file formats - Matroska, MP4 or AVI - over another.

UPDATE - I've decided that I prefer the frame rate of the video file out of my camera, 30 fps. Also, 30 fps is accepted by Youtube, Vimeo and probably others?  Camera users have experience with the frame rates that their cameras produce.   Mine plays back at 30 fps so that my 240 fps recording is shown at slow motion speed, 1/8 X real time speed.  I guess 25 fps from other cameras and countries is similar. ?

7 (edited by Chas Tennis 2017-Aug-30 16:27:41)

Re: Kinovea Analyses on Vimeo (and Youtube and other video hosting services)

For a Kinovea side-by-side comparison there could be a total of 4 different frame rates for the 2 source videos:

1) video #1 - source frame rate
2) video #1 - recording frame rate
3) video #2 - source frame rate
4) video #2 - recording frame rate

Would frame rates of the two source videos be found in 'metadata' of the source videos?

Kinovea produces a video file with another frame rate.  How does Kinovea select a default frame rate?  Does the selected Kinovea default frame rate depend on the frame rate of which source video happens to be on the right or the left?

How can/should the user select a different frame rate than the Kinovea default frame rate?

If the user selects a Kinovea video frame rate that is accepted by, for example, Youtube or Vimeo, then if frames are still skipped it would probably be a video website issue. ?   

Are the source video frame rates (metadata) still in a side-by-side Kinovea video file? Could one of those source video frame rates somehow be mistaken for the Kinovea frame rate by a video hosting website?

8 (edited by joan 2017-Aug-31 12:46:21)

Re: Kinovea Analyses on Vimeo (and Youtube and other video hosting services)

Chas Tennis wrote:

For a Kinovea side-by-side comparison there could be a total of 4 different frame rates for the 2 source videos:

1) video #1 - source frame rate
2) video #1 - recording frame rate
3) video #2 - source frame rate
4) video #2 - recording frame rate

Yes, this scenario gets confusing very quickly. To add to the confusion, there is also the "display" framerate, when you change the "speed slider" value. The final framerate of the composite video takes the speed slider value into account. Note that the speed slider value is given with regards to the recording framerate, not the file framerate.

When you have two videos with differing "recording" framerates, you need to be aware of the value of the following setting: Options > Preferences… > Playback > General > Link speed sliders when comparing videos.

If checked this option will force the speed sliders of both videos to use the same value (ex: 50%), which should make them use the same reference time scale. So if you had filmed the same performance with two different cameras at different recording framerate and the cameras output different file framerates the videos should still be synchronized out of the box ( as long as you set the recording framerate).

I think it's easier to think about all this in terms of frame intervals. The inverse of the recording framerate gives the real world duration between the captured moments.

Chas Tennis wrote:

Would frame rates of the two source videos be found in 'metadata' of the source videos?

Yes the framerate of the video is a metadata. The default display framerate of the video can be found in Kinovea in the top bar above the player screen or in Video > Configure timing in the bottom panel. In Windows by right clicking the file and going into Properties > Details > Video > Frame rate.

Chas Tennis wrote:

Kinovea produces a video file with another frame rate.  How does Kinovea select a default frame rate?  Does the selected Kinovea default frame rate depend on the frame rate of which source video happens to be on the right or the left?

It should not depend on which video is on the left or right.
Each video has its frame interval computed, for the synchronized playback. The common player uses the smallest frame interval to drive the dual video playback. Unless there is a bug, this smallest interval is what should be used in the final composite file.
There is an extra check to limit the interval to 10ms at the smallest, so the final file should never be faster than 100fps. 

Chas Tennis wrote:

How can/should the user select a different frame rate than the Kinovea default frame rate?

You cannot manually specify the output framerate of the composite video at the moment.

Chas Tennis wrote:

If the user selects a Kinovea video frame rate that is accepted by, for example, Youtube or Vimeo, then if frames are still skipped it would probably be a video website issue. ?

You can reopen the composite video in Kinovea and verify frame by frame that everything is there. Maybe it's possible that some combinations of framerates would result in missed frames in one video? Normally since it's driven by the smallest frame interval this shouldn't happen. Instead, the lower frequency video should have duplicated frames.

Chas Tennis wrote:

Are the source video frame rates (metadata) still in a side-by-side Kinovea video file? Could one of those source video frame rates somehow be mistaken for the Kinovea frame rate by a video hosting website?

No the default display framerate of the original videos is no longer present in the final composite video.

If you want to make some experiments you could use the KSV test file format. Here is a KSV file:

<?xml version="1.0" encoding="utf-8"?>
<KinoveaSyntheticVideo>
  <FormatVersion>1.0</FormatVersion>
  <ImageSize>800;800</ImageSize>
  <FramesPerSecond>20</FramesPerSecond>
  <DurationFrames>100</DurationFrames>
  <BackgroundColor>255;128;0;0</BackgroundColor>
  <FrameNumber>true</FrameNumber>
</KinoveaSyntheticVideo>

Copy this in a new text file and save with extension .ksv. Kinovea has special code to interpret this as a video, for testing purposes. You can change the FramesPerSecond field for experimenting. And inside Kinovea you can change the "recording" framerate as if it was a regular video.