-
Notifications
You must be signed in to change notification settings - Fork 1.8k
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
Remove pydub
from dependencies
#3968
Comments
Pinging @behackl as we talked about this on stream a while back. |
I read some source code of pydub and find this: try:
import audioop
except ImportError:
import pyaudioop as audioop It seems like, inside of Original audioop code is in this package: https://github.com/AbstractUmbra/audioop |
Unfortunately, pydubs alternate python implementation is actually broken, as I found out in #3967 |
Yeah, it is totally broken. If you resolve the import issue, then the code is just filled with type errors and mentioned function really was not there. Never tested hasty conversion of C-code. |
If dependency to external ffmpeg executable is dropped, this will be broken in that regard too. |
The cases where pydub would call ffmpeg via the executable should be taken care of by manual transcoding on our end. Did you find some situation where pyav actually tries to invoke ffmpeg on the current main branch? |
pydub
is no longer actively maintained, and is now running into issues withaudioop
being removed in python 3.13. As such, we should try to remove it from our dependencies and implement the needed features ourselves.From a quick look through the code, the main features needed to implement are:
AudioSegment.silent
AudioSegment.overlay
AudioSegment.from_file
manim/manim/scene/scene_file_writer.py
Lines 330 to 334 in ce1fff6
manim/manim/scene/scene_file_writer.py
Line 327 in ce1fff6
manim/manim/scene/scene_file_writer.py
Line 370 in ce1fff6
The text was updated successfully, but these errors were encountered: