gpt4 book ai didi

python - MP3 文件突然无法用 kivy 播放

转载 作者:行者123 更新时间:2023-12-01 04:52:59 30 4
gpt4 key购买 nike

我有一款游戏,上次我检查时运行良好。我今天遇到的问题,由于某种原因我还没有弄清楚,kivy不会播放mp3文件,但它仍然会播放wavs。重申一下,这以前从来都不是问题,游戏在我的 ubuntu Linux 操作系统和 Android 上运行都没有问题编辑:事实上,它在我的 Android 上仍然运行良好。我现在在 ubuntu 上启动游戏时出现以下错误:

File "/home/yerman/python/bird/gamescreens.py", line 107, in update
point_play = self.point.play
AttributeError: 'NoneType' object has no attribute 'play'

我也不知道为什么回溯中的 point_play= 之间有这样的空格,因为它与文件中的不同。我很确定自从上次玩游戏以来我没有改变任何东西。 mp3 文件本身也没有任何问题。将文件转换为 wav 并使用它可以正常工作。

然后我编写了这个小脚本并运行它,得到了相同的结果:

ma​​in.py:

import kivy
kivy.require('1.8.0')
import sys
from kivy.app import App
from kivy.uix.boxlayout import BoxLayout
from kivy.uix.button import Button
from kivy.core.audio import SoundLoader


class PressMe(BoxLayout):

sound = SoundLoader.load('point.mp3')

def mycallback(self):
self.sound.play()

class myApp(App):

def build(self):
return PressMe()

if __name__ == '__main__':
myApp().run()

kv 文件:

#: kivy 1.8.0

<PressMe>:
Button:
text: 'press me'
on_press: root.mycallback()

我真的不知道为什么这不起作用,有人可以解释一下吗?

最佳答案

当加载程序返回 NoneType 时,通常意味着任何可用的提供程序都无法加载该文件。在 Android 上, native 提供 MP3 支持,但对于 Ubuntu,您需要有 gstreamer。它停止工作的确切原因可能取决于您安装 Kivy 的方式,但如果您通过 pip 或从 git 存储库构建进行安装,那么您系统上的库可能已更新。

确保您已安装 libgstreamer1.0-dev 并重建 Kivy(如果从 pip 或 git 安装)。如果这没有帮助,那么这个问题可能会在我们的 IRC channel #kivy on freenode 上更容易解决。 .

关于python - MP3 文件突然无法用 kivy 播放,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28044949/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com