most of the handy-cameras recorded videos did NOT use a constant framerate. Therefore, it may be favorable
to convert the video to a constant framerate. Furthermore it may help to convert the video to "mjpeg" to store a full frame to every frame. MP4 is the container but does not control the content of the video. Be aware of creating a hugh file using the mjpeg-options.
using FFmpeg the option -c:v mjpeg creates a video that contains a full frame for EVERY frame, not only the difference from one frame to the other. This type of video can be read in Kinovea and it is possible to scroll back and forth from one frame to the other. Furthermore, you could experiment of using a constant framerate for the output-video using the -r option. The quality is controlled by -q:v 2 (highest quality, 23 lowest).
Example
ffmpeg -i input.mov -c:v mjpeg -q:v 3 -r 30 output.mp4