lot-uni
@lot-uni (lot uni)

Are you sure you want to delete the question?

If your question is resolved, you may close it.

Leaving a resolved question undeleted may help others!

We hope you find it useful!

py2appでアプリ化したら音が鳴らなくなってしまう。(playsound)

解決したい事

py2appでアプリ化した時に音が再生出来なくなる問題を解決したいです。
初めはサイコロアプリを再生するアプリを作ろうと、pythonでコードを書きました。一旦完成したのでpy2appでアプリ化したのですがアプリ化した途端に音が鳴らなくなってしまいました。そこでplaysoundはpy2appに対応していないのではと思い試しにこんな感じで、コードを書いて見ました。しかしこれも上手くいきませいん。

ファイルはの内容はです。
DiceRoll.mp3 , dice.icns , setup.py , sound.py
こちらがプログラムの内容です。
sound.py

import tkinter as tk
import playsound

def Sound():
    playsound.playsound('DiceRoll.mp3')

root = tk.Tk()
root.title = 'Sound Play'
root.geometry('400x400')
root.configure(bg='#8f4242')
button = tk.Button(text='Play Sound',height=20,width=80,command=Sound)
button.pack(fill="x",expand=True)

root.mainloop()

setup.py

"""
This is a setup.py script generated by py2applet

Usage:
    python setup.py py2app
"""

from setuptools import setup

APP = ['sound.py']
DATA_FILES = ['DiceRoll.mp3']
OPTIONS = {'iconfile':'dice.icns'}

setup(
    app=APP,
    data_files=DATA_FILES,
    options={'py2app': OPTIONS},
    setup_requires=['py2app'],
)

これはプログラムの問題ではなくライブラリが対応していないからでしょうか?

0

1Answer

実行ファイル化した時に正常に音声ファイルのパスが取れていないのではないのでしょうか。
とりあえず、元のコードに例外処理を追加してログを出してみてはどうでしょう。

0Like

Comments

  1. @lot-uni

    Questioner

    試して見ます
    ありがとうございます
  2. とりあえず、ファイル読み込みはデバッグ時と実行ファイル化した時で挙動が異なったりとトラブルが多いイメージなので、読み込み箇所に例外処理を付けてちゃんと読めているか確認する癖をつけたほうが良いです。

Your answer might help someone💌