Replies: 3 comments
-
Can we use one of these approaches to eliminate the need for re-encoding? |
Beta Was this translation helpful? Give feedback.
-
Oh wow, great find @ariematsliah-princeton! This PyAV-based solution would actually be perfect: https://scikit-image.org/docs/dev/user_guide/video.html#adding-random-access-to-pyav Currently we use opencv-python because it has ffmpeg support linked in, so we can decode in memory without piping to the ffmpeg CLI (super slow). This is implemented here: We could try switching to PyAV instead, which seems to provide a similar interface AND has binary ffmpeg support. Also seems like it would be pretty much a drop-in replacement. Sounds like the best of all worlds. We just need to check that it's compatible across platforms and that we can package it with our other deps. |
Beta Was this translation helpful? Give feedback.
-
👍 I can give it a try sometime this week and update. |
Beta Was this translation helpful? Give feedback.
-
A useful feature that would common in handy quite frequently would be a wrapper to call ffmpeg to reencode unreliably seekable videos.
We currently have a help page that mentions how to do this from the CLI: https://sleap.ai/help.html#does-my-data-need-to-be-in-a-particular-format
MVP: GUI option to re-encode project videos (by subprocess calling ffmpeg) and replacing the resulting output automatically within the project.
Workaround: Do this in a bash script: #710 (comment)
Related issues: #710
Beta Was this translation helpful? Give feedback.
All reactions