This is Kinovea 0.9.1 (download page). This version introduces capture-and-replay automation, improves capture performances, especially for delayed video, and adds many other improvements. This version requires .NET 4.8.
Many thanks to everybody that helped with testing this version. Special thanks to Robin Karinen, FaultyClubs, and Reiner Hente, for their patience in spite of my continuous requests for testing buggy builds 😅
Plenty of changes aren’t described here, please consult the full changelog for details.
- Capture automation
- Capture performances
- Replay folders
- Time origin and relative clock
- Annotation importers
We can now trigger recording based on microphone volume, and stop recording after a specific duration. This enables a hands-free, continuous recording workflow.
Recording footage around an event of interest is natively supported with the existing delay feature. For example, say we are filming a golf swing and want to capture from 3 seconds before impact to 2 seconds after it. We set the video delay to 3 seconds in the capture screen, and set “stop recording by duration” to 5 seconds. When the club impact triggers the recording it will start saving the video stream from 3 seconds ago.
When using multiple instances of Kinovea, each instance now has a deterministic name. By default it will be a number in sequence but you can also use the
-name argument on the command line for full control. Each instance can use its own preferences file. This is useful to create advanced setups, for example having an instance dedicated to capture and another to replay, or for instrumenting Kinovea from other programs. Multiple Kinovea instances can listen to the same microphone for synchronized recording by audio trigger.
> kinovea.exe -name replay
We can also run a script on the resulting file after the capture is complete. This can be useful to copy the file somewhere else or process it further.
A lot of care went into the performance of delayed capture, and it should now be almost on par with real-time capture. You still need to toggle the option under Preferences > Capture > Recording.
The act of compressing the images for storage is usually the main bottleneck when recording with the typical cameras used in Kinovea (high-end webcams and machine vision cameras). We can now bypass this compression step entirely and record uncompressed videos. Be mindful that uncompressed videos take a lot of storage space. This option is under Preferences > Capture > General.
Modern storage options like SSD, NVMe or RAMDisks all have higher bandwidth than the USB link of the camera on the other side, so hopefully whatever the camera can send to the PC can be recorded without drops. The simulator camera and the infobar above the capture area can be used to diagnose issues.
On top of recording uncompressed videos, we can now record “raw” video streams if the camera supports it. This records the raw sensor images, grayscale with color implicitly encoded in a Bayer grid pattern. The player has a new option to rebuild color images from raw files under menu Image > Demosaicing. The advantage of doing this is the storage bandwidth is only that of a grayscale video, so it cuts requirements by a factor of 3.
This is a new concept, completing support for a fully hands-free capture-and-replay workflow. In this mode a playback screen is associated with an entire folder and any new video file created in this folder, usually by the capture module, will be instantly loaded and start playing.
Typically we would use this within a single instance of Kinovea, but as it is based on the file system, we can also have a separate instance of Kinovea dedicated to replay. It should even be possible to put the replay instance on a different machine on the network, copying over the captured files using a post-recording command.
In the above screencast, the left screen is a camera filming the stopwatch. The right screen is open using a replay folder observer on the folder where the captured videos are saved. In this case the capture was configured to stop by itself after 2 seconds. As soon as the capture is completed, the playback automatically starts in the other screen.
Time origin and relative clock
Many analysis scenarios involve a specific moment within the video that everything else is related to. A golfer’s club-ball impact, a baseball pitcher’s release point, a long jumper’s take-off, the start of a race, etc. We can now navigate to this precise moment and mark it as the zero point, the origin of all times for the clip. Every other moment will now be relative to this origin, using negative time before the event and positive time after it.
A new simple clock tool lets you see relative time directly on the image.
We can now import .srt subtitles and OpenPose keypoint files.
OpenPose is a deep learning software stack for human posture recognition. The result of OpenPose 25-point body model is automatically imported into a dedicated custom tool in Kinovea. At this point this is not meant to be used for measurements but more for general posture assessment.
Please post your feedback, bug reports, usability issues, feature suggestions, etc. on the forum in the following thread.