首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何在buildozer.spec python kivy中包含mp3文件

如何在buildozer.spec python kivy中包含mp3文件
EN

Stack Overflow用户
提问于 2020-02-02 14:37:09
回答 1查看 681关注 0票数 1

我有代码:

代码语言:javascript
运行
复制
from kivy.app import App
from kivy.uix.floatlayout import FloatLayout
from kivy.uix.label import Label
from kivy.core.audio import SoundLoader
from kivy.graphics.context_instructions import Color


class TestApp(App):
    def build(self):
        fl = FloatLayout()
        try:
            sound = SoundLoader.load('magic.mp3')
            if sound:
                print("Sound found at %s" % sound.source)
                print("Sound is %.3f seconds" % sound.length)
                fl.add_widget(Label(text=str("Sound found at %s" % sound.source), pos=(0, 0), font_size=(40)))
                sound.play()
        except Exception as error:
            fl.add_widget(Label(text=str(error), pos=(0, 0), font_size=(40)))
        return fl


if __name__ == "__main__":
    TestApp().run()

在这段代码中,我使用了magic.mp3,并且我希望能够在.apk文件中使用它,但是没有这个功能。我想我应该在buildozer.spec中添加.mp3文件

代码语言:javascript
运行
复制
# (list) Source files to include (let empty to include all the files)
source.include_exts = py,png,jpg,kv,atlas,mp3

我还补充道:

代码语言:javascript
运行
复制
# (list) List of inclusions using pattern matching
source.include_patterns = assets/*,magic/*.mp3

但是我不能播放这个文件,我得到了错误:

代码语言:javascript
运行
复制
'NoneType' object has no attribute 'source'

如何修复它?我希望你能帮我

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-07-09 15:07:53

这是一个迟来的答案,FWIW。我认为你的问题不是你的mp3找不到,而是你的文件在mp3中。python-for-android中的SDL2库目前不支持mp3 (参见https://github.com/kivy/kivy/issues/5412 )。

你应该能够通过将你的mp3文件转换成wav或ogg来解决这个问题。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60023813

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档