-
Notifications
You must be signed in to change notification settings - Fork 23
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Increasing the smoothness of the video progress bar #89
base: main
Are you sure you want to change the base?
Conversation
Hi @H-Dempsey, thank you so much for contributing! I just today had to deal with a video that was very slow to read, so I was excited to try your PR. Unfortunately, on that 100MB video the difference is barely visible, and after reading the code behind |
Hi @jeylau, Thank you for your response!
I can show that it works on my end with larger videos. Before: Before2.mp4After: After2.mp4
I just played around with an analysed 12-hour (20 fps) video, and I haven't observed it so far. While my pull request seems to improve speed, if it leads to inaccurate frame setting, I think we should not merge it. Harry |
Add decord to the list of dependencies, so that it can be used as the potential napari-deeplabcut video player.
Remove the current video reader class and add a decord-based video reader.
Hi again, I spent some more time looking into the issue of They solved it by using a video player called decord. I was keen to see whether a decord video player with napari would give fast and accurate seeking. napari-decord.mp4It is significantly faster than the "Before" video above, and it uses accurate seeking. I have added the changes to my pull request. Harry |
Hi napari-deeplabcut!
I am a big fan of both napari and deeplabcut, and I was so excited when I first found out about this collaboration.
This is my first pull request and I apologise if I make some mistakes.
I noticed that when I scroll through a video during manual frame extraction, the interface lags.
Before1.mp4
If I replace the current video reader class + dask lazy loads with the napari-video reader class, the scrolling is much smoother.
After1.mp4
For the non-opencv option, I tried to make my own version of the napari-video class and replace all cv2 functions with imageio functions.
But unfortunately, the speed looked similar, so I decided to keep the PyAV and dask lazy loading for that.
I have included it below for interest.
Thank you for making this really useful tool.
Harry