python - 在 NixOS 上使用 pyglet.media (& avbin)(没有声音播放)
问题描述
我有一个前段时间在 Windows 上制作的音乐播放器,我正试图在 NixOS 上工作。但是,尝试播放任何声音文件,即使使用最基本的脚本也无济于事。
player = pyglet.media.Player()
source = pyglet.media.load(path)
player.queue(source)
player.play()
什么都没发生。没有错误,它立即完成。我尝试下载 AVbin,但安装程序不适用于 NixOS(不同的文件层次结构)。我该怎么做才能让它发挥作用?我 Pyglet 甚至还在开发(似乎安装程序自 2012 年以来没有改变)?将所有内容更改为 PyGame 或其他具有与 Pyglet 相同的容量和时间能力的东西需要相当长的时间。
解决方案
Pyglet 不久前放弃了 avbin,因为它没有维护/死了。
此外,在您的简单示例中,您没有使用pyglet.app.run()
时钟来安排播放样本所必需的。(以及为什么您的脚本会立即停止)
对于 Linux,Pyglet 支持 GStreamer 和 Ffmpeg,因此您必须安装其中一个库才能继续播放媒体。
推荐阅读
- ruby-on-rails - webmock中post方法的动态参数
- html - 使列的全宽低于 768px
- sql - 有没有办法在 SQL-Server 中搜索数据库表的所有用途?
- google-apps-script - 将值从一行移动到下一个选项卡,而不在谷歌表格中保留格式
- php - 根据 CodeIgniter 中数据透视表中的类别 ID 显示帖子
- ansible - mysql_replication_role 是默认的还是用户定义的?如果用户定义,我如何在我的剧本中设置它?
- python - 某些字符的正则表达式冲突 (ISO-8859-1 Windows-1252)
- java - 如何在java中解析(分离结构和值)json格式字符串
- chatbot - 仅使用一种意图的意图识别
- git - 如何删除历史 git commit