Using Pyav for Handling Ffmpeg
See original GitHub issueCurrently, AFAIK, Manim calls Ffmpeg using subprocess, which is very slow. In a plan to making manim more faster we can use a Python Ffmpeg wraper, like Pyav which is written in C and is a lot faster than directly calling using subprocess and also more Pythonic. I think doing this would just need to edit a file scene_writer.py
. Also, this would mean that we wouldn’t need to ask users to install Ffmpeg as it would be included in PyAv.
Refs
Pyav Documentation: https://pyav.org/docs/stable/index.html Pyav Project Source: https://github.com/PyAV-Org/PyAV
Issue Analytics
- State:
- Created 3 years ago
- Reactions:3
- Comments:5 (5 by maintainers)
Top Results From Across the Web
PyAV for video processing - jdhao's digital space
The PyAV is a more performant package providing ffmpeg library bindings. To install PyAV, run the following command: pip install av. Simple use...
Read more >PyAV 9.0.3.dev0 documentation
PyAV is a Pythonic binding for FFmpeg. We aim to provide all of the power and control of the underlying library, but manage...
Read more >PyAV-Org/User-Help - Gitter
I've gotten a video file produced by a long running FFMPEG process that is segmenting the stream. When I've come to read it,...
Read more >imageio.plugins.pyav — imageio 2.22.4 documentation
To use this plugin you need to have PyAV installed: pip install av. This plugin wraps pyAV, a pythonic binding for the FFMPEG...
Read more >av - PyPI
Pythonic bindings for FFmpeg's libraries. ... If you want to use your existing FFmpeg, the source version of PyAV is on PyPI too:...
Read more >
Top Related Medium Post
No results found
Top Related StackOverflow Question
No results found
Troubleshoot Live Code
Lightrun enables developers to add logs, metrics and snapshots to live code - no restarts or redeploys required.
Start Free
Top Related Reddit Thread
No results found
Top Related Hackernoon Post
No results found
Top Related Tweet
No results found
Top Related Dev.to Post
No results found
Top Related Hashnode Post
No results found
Interesting suggestion - I’m generally in favor of this, though I would hesitate to make the change entirely without first having a more robust test suite.
Also, instead of replacing the current file writer to use PyAV, we could implement a new one, FileWriterAV that uses this but keep using the ffmpeg one as default until FileWriterAV is stable.
Any updates here?