Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 为什么可以';你找不到我的文件吗?_Python_Pydub - Fatal编程技术网

Python 为什么可以';你找不到我的文件吗?

Python 为什么可以';你找不到我的文件吗?,python,pydub,Python,Pydub,所以有人写了一个笑话陷阱脚本(如“陷阱音乐”),我无法让它工作 usage: trapifier.py [-h] [--samples [SAMPLES]] inputfile outputfile 然而,尽管文件夹看起来像这样 ls -l total 14288 -rwxrwxrwx 1 ________ ________ 7295612 Mar 2 2008 Chicago.mp3 -rwxr-xr-x@ 1 ________ ________ 1074 Apr 1

所以有人写了一个笑话陷阱脚本(如“陷阱音乐”),我无法让它工作

usage: trapifier.py [-h] [--samples [SAMPLES]] inputfile outputfile
然而,尽管文件夹看起来像这样

ls -l
total 14288
-rwxrwxrwx   1 ________  ________  7295612 Mar  2  2008 Chicago.mp3
-rwxr-xr-x@  1 ________  ________     1074 Apr 12 17:00 LICENSE
-rwxr-xr-x@  1 ________  ________     2871 Apr 12 17:00 README.md
-rwxr-xr-x@  1 ________  ________        6 Apr 12 17:00 requirements.txt
drwxr-xr-x@ 48 ________  ________     1632 Apr 12 17:00 samples
-rwxr-xr-x   1 ________  ________     2923 Apr 12 17:00 trapifier.py
此命令总是导致[Errno 2]没有这样的文件或目录

./trapifier.py Chicago.mp3 Chiraq.mp3

甚至

./trapifier.py /full/path/to/Chicago.mp3 Chiraq.mp3
有什么好处?我觉得某个地方有个新手犯的错误

按请求显示完整的错误消息:

    Traceback (most recent call last):
  File "./trapifier.py", line 89, in <module>
    overlay(parse())
  File "./trapifier.py", line 32, in parse
    base_track = pydub.AudioSegment.from_mp3(inputfile)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pydub/audio_segment.py", line 297, in from_mp3
    return cls.from_file(file, 'mp3')
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/pydub/audio_segment.py", line 284, in from_file
    subprocess.call(convertion_command, stderr=open(os.devnull))
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 493, in call
    return Popen(*popenargs, **kwargs).wait()
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 679, in     __init__
    errread, errwrite)
  File "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/subprocess.py", line 1249,     in _execute_child
    raise child_exception
OSError: [Errno 2] No such file or directory
但是当我这样做的时候,我得到了一个没有这样的模块错误


导入pydub.AudioSegment

pydub找不到用于解码和编码mp3文件(以及所有其他非wave格式)的ffmpeg是很常见的。如果您安装了ffmpeg,但它仍然无法工作,您可以明确地告诉pydub在哪里可以找到它,如下所示:

from pydub import AudioSegment
AudioSegment.ffmpeg = "/path/to/ffmpeg"
您也可能会发现我们的帮助=D


编辑–最后一个选项:如果您无法让pydub找到ffmpeg,尽管您尽了最大努力,您可以在将文件传递给pydub之前将所有内容转换为wave格式。这当然是最后的选择,但它可以避免ffmpeg问题,因为pydub本机支持wave。

您是否明确尝试了mp3文件的完整路径?例如
C:\User\Music\Chicago.mp3
实际的错误消息是什么?请记住,可能没有人使用过此特定脚本,您能否找出实际尝试加载文件的代码?python trapifier.py./Chicago.mp3./Chiraq.mp3会发生什么情况?您是否安装了
requirements.txt
文件中列出的要求?如果没有,您可以通过
pip install-r requirements.txt
来实现。我已经尝试了完整的路径,我有所有的要求,在使用/filename时没有什么不同。这个解决方案对我不起作用,所以我进一步研究,希望现在应该使用AudioSegment.converter而不是AudioSegment.ffmpeg。
from pydub import AudioSegment
from pydub import AudioSegment
AudioSegment.ffmpeg = "/path/to/ffmpeg"