FileNotFoundError: [Errno 2] No such file or directory: 'ffmpeg'

匿名 (未验证) 提交于 2019-12-03 08:46:08

问题:

I'm new in python and i'm using pydub modules to play mp3 track.

Here is my simple code to play mp3:

#Let's play some mp3 files using python!  from pydub import AudioSegment from pydub.playback import play  song = AudioSegment.from_mp3("/media/rajendra/0C86E11786E10256/05_I_Like_It_Rough.mp3") play(song) 

When i run this program, it says:

*/usr/bin/python3.4 /home/rajendra/PycharmProjects/pythonProject5/myProgram.py /usr/local/lib/python3.4/dist-packages/pydub/utils.py:161: RuntimeWarning: Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work   warn("Couldn't find ffmpeg or avconv - defaulting to ffmpeg, but may not work", RuntimeWarning) /usr/local/lib/python3.4/dist-packages/pydub/utils.py:174: RuntimeWarning: Couldn't find ffplay or avplay - defaulting to ffplay, but may not work   warn("Couldn't find ffplay or avplay - defaulting to ffplay, but may not work", RuntimeWarning) Traceback (most recent call last):   File "/home/rajendra/PycharmProjects/pythonProject5/myProgram.py", line 11, in <module>     song = AudioSegment.from_mp3("/media/rajendra/0C86E11786E10256/05_I_Like_It_Rough.mp3")   File "/usr/local/lib/python3.4/dist-packages/pydub/audio_segment.py", line 355, in from_mp3     return cls.from_file(file, 'mp3')   File "/usr/local/lib/python3.4/dist-packages/pydub/audio_segment.py", line 339, in from_file     retcode = subprocess.call(convertion_command, stderr=open(os.devnull))   File "/usr/lib/python3.4/subprocess.py", line 533, in call     with Popen(*popenargs, **kwargs) as p:   File "/usr/lib/python3.4/subprocess.py", line 848, in __init__     restore_signals, start_new_session)   File "/usr/lib/python3.4/subprocess.py", line 1446, in _execute_child     raise child_exception_type(errno_num, err_msg) FileNotFoundError: [Errno 2] No such file or directory: 'ffmpeg'  Process finished with exit code 1* 

Please help me! I've checked everything path but it's not working. I'm currently using Ubuntu.

Help would be appreciated!

回答1:

Like the warning says:

Couldn't find ffplay or avplay - defaulting to ffplay, but may not work 

You need to have either ffplay or avplay; however ffplay refers to ffmpeg which is not installable in Ubuntu in recent versions. Install the libav-tools package with apt-get:

sudo apt-get install libav-tools 


回答2:

Seems like you need ffmpeg, but

sudo apt-get install ffmpeg  

does not work anymore. You can get ffmpeg by:

sudo add-apt-repository ppa:jon-severinsson/ffmpeg sudo apt-get update sudo apt-get install ffmpeg 


回答3:

If it won't let you install using sudo apt-get install libav-tools You can download the .deb from here:

wget http://launchpadlibrarian.net/339874908/libav-tools_3.3.4-2_all.deb

Then run sudo apt install ./libav-tools_3.3.4.2_all.deb



标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!