No such file error using pydub on OSX with pycharm

孤街醉人 提交于 2021-01-29 08:34:46

问题


My ultimate aim is to run the code snippet below on Lambda but as I was having difficulties, I tried running it on my mac. I get the same error running with python2.7 on OSX as I do when I run it on AWS lambda.

The code is:

from pydub import AudioSegment
import os

def test():
    print("Starting")

    files = [f for f in os.listdir('.') if os.path.isfile(f)]
    for f in files:
        print (f)

    sound = AudioSegment.from_mp3("test.mp3")

test()

The output of the code from pycharm is:

Starting
ffmpeg
.DS_Store
requirements.txt
concat.py
test.mp3
ffprobe
Traceback (most recent call last):
  File "/Applications/PyCharm CE.app/Contents/plugins/python-ce/helpers/pydev/pydevd.py", line 1438, in _exec
    pydev_imports.execfile(file, globals, locals)  # execute the script
  File "/Users/mh/Desktop/sC/concat/concat.py", line 13, in <module>
    test()
  File "/Users/mh/Desktop/sC/concat/concat.py", line 11, in test
    sound = AudioSegment.from_mp3("test.mp3")
  File "/Users/mh/Desktop/sC/concat/venv2.7/lib/python2.7/site-packages/pydub/audio_segment.py", line 738, in from_mp3
    return cls.from_file(file, 'mp3', parameters=parameters)
  File "/Users/mh/Desktop/sC/concat/venv2.7/lib/python2.7/site-packages/pydub/audio_segment.py", line 685, in from_file
    info = mediainfo_json(orig_file, read_ahead_limit=read_ahead_limit)
  File "/Users/mh/Desktop/sC/concat/venv2.7/lib/python2.7/site-packages/pydub/utils.py", line 274, in mediainfo_json
    res = Popen(command, stdin=stdin_parameter, stdout=PIPE, stderr=PIPE)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 394, in __init__
    errread, errwrite)
  File "/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1047, in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory

Is this actually a problem with pydub/ffmpeg/ffprobe, rather than the location of my mp3 file? As I'm trying to package this project for Lambda, I've put executable versions of ffmpeg and ffprobe in the root of the project, rather than installed them to my OS. Before I did this, pydub complained that it couldn't find ffmpeg. It's now not complaining but, could I have chosen the wrong binary?

Any ideas?

来源:https://stackoverflow.com/questions/62905735/no-such-file-error-using-pydub-on-osx-with-pycharm

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