pyinstallerでGUIをexe化したらwavファイルのサウンドが再生できなくなった

投稿者: Anonymous

python3.5を使っています。pyqt5を使ってGUIを作りました。その中で、ボタンを押した時に音が出る仕組みを作りました。ここではQtMultimediaのQMediaPlayerを使ってwavファイルを再生しています。このGUIをpyinstallerでexe化しました。すると、ボタンを押しても音が再生されなくなりました。特にエラーは出ておりません。他の機能は問題なく動作します。どうすれば良いのでしょうか。osはwindows8.1の64bitです。音を出すコードとしましては、まず、次のコードのように、pickleファイルから読み取ったwavファイルをフォルダ内に出力します。sound.wavファイルは予めフォルダ内に一つ用意してあります。

    os.remove("sound_tempo.wav") 

    global sound
    write("sound_tempo.wav",loaded_sound_list[10][0],loaded_sound_list[10][1])
    sound=QtMultimedia.QMediaContent(QtCore.QUrl.fromLocalFile("sound_tempo.wav"))

その後、次のコードのように音を出す関数を起動させています

def make_sound(self):
    self.mediaPlayer.setMedia(sound)
    self.mediaPlayer.play()

解決

exe化する際にファイルを一つにまとめないように実行すると(–onefileを書かないようにする)PyQT5というフォルダが出来ます。その中のpluginフォルダの中のフォルダ全てを実行exeファイルと同じフォルダに移したら解決しました。

回答者: Anonymous

Leave a Reply

Your email address will not be published. Required fields are marked *