Python pyinstaller和moviepy、ffmpeg可以从终端工作,但不能从finder工作

Python pyinstaller和moviepy、ffmpeg可以从终端工作,但不能从finder工作,python,ffmpeg,pyinstaller,Python,Ffmpeg,Pyinstaller,我正在OSX Mavericks上使用pyinstaller 2.1打包python。我过去已经成功地做到了这一点,但这是我的第一个使用moviepy和ffmpeg的软件包。我使用以下导入: from moviepy.video.io import ffmpeg_reader 如果代码中没有这一行,一切正常,我可以从finder中的图标启动我的最终包。使用moviepy导入,如果我从终端启动,它将起作用,如下所示: open ./myapp.app 但如果我单击finder中的图标,它将不会

我正在OSX Mavericks上使用pyinstaller 2.1打包python。我过去已经成功地做到了这一点,但这是我的第一个使用moviepy和ffmpeg的软件包。我使用以下导入:

from moviepy.video.io import ffmpeg_reader
如果代码中没有这一行,一切正常,我可以从finder中的图标启动我的最终包。使用moviepy导入,如果我从终端启动,它将起作用,如下所示:

open ./myapp.app
但如果我单击finder中的图标,它将不会打开(快速打开并崩溃)。我假设这与终端中设置的路径或环境变量有关,但不会传输到我的打包应用程序。我在pyinstaller for moviepy及其依赖项中尝试了各种隐藏导入,但似乎没有任何效果--调试模式没有提供太多信息来跟踪它。还有其他想法吗


谢谢

moviepy和pyinstaller存在一些问题

首先,尝试将错误写入文本文件

try:
    from moviepy.video.io import ffmpeg_reader
except Exception as e:
    with open('/absolute/path/to/error.txt',mode="w+") as f:
        f.write(str(e))
1) 您可能需要修改这两个文件以删除“exec”导入语句

moviepy/audio/fx/all/__init.py, moviepy/video/fx/all/__init.py

请看这里:

2) 您可能需要使用此语句
imageio.plugins.ffmpeg.download()
,以便在未找到ffmpeg时下载