Kitware / dive

Media annotation and analysis tools for web and desktop. Get started at https://viame.kitware.com
https://kitware.github.io/dive
Apache License 2.0
81 stars 21 forks source link

[BUG] Scrub to keyframe on track goto location #792

Open subdavis opened 3 years ago

subdavis commented 3 years ago

Describe the bug

When inside the bounds of a track and using the goto track location (either button or arrow keys) if there's no keyframe on the current frame, nothing happens and no track is selected on screen.

See how there's a selected track change, but nothing happens in the annotation window. This is bad for review.

https://user-images.githubusercontent.com/4214172/120714067-bbcc5f80-c490-11eb-8b9a-29c201407a67.mp4

BryonLewis commented 3 years ago

Would you have to account for interpolation as well then?

The Prev/Next keyframe buttons should work right? (I just tested and they seem to work after switching tracks).

In the person search I set up Home/End controls for first/last frame and CTRL+left/right for next/prev keyframe. I don't think I wanted it jumping time when I was switching tracks unless the next track was outside of the time bounds of the current one. I also had a hotkey to toggle interpolation across all keyframes on and off for some results from the pose tracking.

subdavis commented 3 years ago

Good point. Should only jump if there's no interpolated frame. Does that work?

BryonLewis commented 3 years ago

Yeah I think so. I'm trying to think of corner cases in which that wouldn't apply but I'm having difficulty coming up with them. The only edge case I would guess is that you jump to the 'closest' keyframe regardless of direction? It would probably be weird to go from frame 39 to frame 200 if there was a keyframe in the next selected track on frame 38.