2017-06-18 7 views
2

私はcx_freezeを使用して.exeを持つ単一のフォルダにpythonプロジェクトをビルドしましたが、依存関係はありますが、.exeを実行するとエラーが発生します:AttributeError: 'module'オブジェクトに 'audio_fadein'属性がありません

AttributeError: module 'moviepy.audio.fx.all' has no attribute 'audio_fadein' 

AttributeError

私はMoviePyのためのドキュメントを読んだことがあるが、これが起こっている理由を見つけることができません。私のPythonプログラムはIDE(PyCharm)内から完全に動作しますが、コンパイルした後はMoviePyエラーが発生します。私は推奨を使用しましたfrom moviepy.editor import *

私は実際にaudio_fadeinをスクリプトに直接使用しないので、ビデオを表示するときにMoviePyによって呼び出される必要があります。

def cherrybyte(): 
    pygame.display.set_caption('©2017 CherryByte™ Software') 
    pygame.mouse.set_visible(False) 
    logo = VideoFileClip('CherryByte Logo.mp4') 
    logo.preview() 
    pygame.mouse.set_visible(True) 

EDIT:ここでは、コードで私は今もfrom moviepy.editor import VideoFileClipではなく、全く同じエラーでimport文を変更しようとしています。

+0

これは関連性があるかどうかはわかりませんが、 'moviepy.editor import *'を使用することは推奨されていません。 moviepy.editorをインポートしてすべてのコマンドにそのプレフィックスを付けるか、必要なものだけを 'moviepy.editor import VideoFileClip'からインポートしてください。 – tburrows13

+0

@GloinまさにMoviePyの作成者が推奨するものです。私はドキュメントを読んで、コードを使っています。そこでは、そのように使用されているとコメントされています。しかし、あなたは私に感謝しているものを試してみるために何か他のものを与えてくれました。今夜は感謝します。 – JasonPy

+0

私はそれが推奨されていないと言ったとき、多分私は少し強かった。ドキュメントには[ここ](http://zulko.github.io/moviepy/getting_started/efficient_moviepy.html#should-i-use-moviepy-editor)があります。「必要なのは、他に1つか2つの機能があればライブラリ、それはあなたが必要なものを直接インポートする方が良いです "。私は同意します。バルクインポートを頻繁に行うほうが良いですが、配布用のコードでは、選択的なインポートが優先されます(読み込みが速いことは確かです)。 が 'このファイルは、単純に次のように入力して MoviePyの主な機能をロードすることを容易にするために意図されています: >>> moviepy.editorインポートから* ここ – tburrows13

答えて

3

pyinstallerを使用して.exeファイルを作成しているときに同じエラーが発生しました。 しかし、インポートステートメントをfrom moviepy.video.io.VideoFileClip import VideoFileClip に変更しました。

関連する問題