【问题标题】:Python pyglet AVBin - How to install AVBinPython pyglet AVBin - 如何安装 AVBin
【发布时间】:2012-05-05 09:11:00
【问题描述】:

Pyglet 使用 AVBin 来解码 MP3。链接:http://avbin.github.com/AVbin/Download.html

使用提供的install.sh安装,使用时会报错:

'AVbin is required to decode compressed media')
pyglet.media.riff.WAVEFormatException: AVbin is required to decode compressed media

...所以它没有正确安装?使用 python virtualenv,怀疑这可能会导致问题......虽然我在 virtualenv 中运行了 AVBin 的 install.sh,如下所示:

(SoundShenanigans)user@computer:~/Downloads/avbin-linux-x86-64-v8$ sudo bash install.sh 

更新

我找到了安装avbin的地方...好像安装在正确的地方=S

~/pyvien/SoundShenanigans/lib/python2.7/site-packages/pyglet/media$ ls
avbin.py   drivers      __init__.pyc   procedural.pyc  riff.pyc
avbin.pyc  __init__.py  procedural.py  riff.py

更新 2

库是 .so ,不是 .dylib ,为什么要 .dylib 神秘代码?这是 Linux 而不是 Mac(Mac 有 .dylib,Ubuntu 有 .so)

File "SoundShenanigans.py", line 4, in
  from pyglet.media import avbin
File "/home/user/pyvien/SoundShenanigans/local/lib/python2.7/site-packages/pyglet/media/avbin.py", line 53, in
  darwin='/usr/local/lib/libavbin.dylib')
File "/home/user/pyvien/SoundShenanigans/local/lib/python2.7/site-packages/pyglet/lib.py", line 122, in load_library
  raise ImportError('Library "%s" not found.' % names[0])
ImportError: Library "avbin" not found.

【问题讨论】:

  • 我将第 53 行更改为 .so,但仍然没有帮助。安装稳定版 7 工作... 8 不稳定!

标签: python mp3 virtualenv pyglet


【解决方案1】:

如何安装它:

sudo apt-get install libavbin-dev libavbin0

关于这个包的更多信息:http://packages.ubuntu.com/source/avbin

编辑:看起来它不再包含在较新的 ubuntu 版本中。所以你必须从https://avbin.github.io/AVbin/Download.html下载它并通过安装它

sudo sh ./install-avbin-linux-x86-64-v10

【讨论】:

  • mac osx 用户有什么用?
  • 这个包在 16.04 中不可用,pyglet 现在是死了吗?
  • 在运行该代码后,pyglet 似乎仍然没有找到 AVbin。这是不是少了什么?
  • 使用上面的 download.html 和“sudo sh”命令安装 AVBin 版本 10 有效。但随后运行一个曾经工作的 pyglet 脚本出现了段错误。嗯……
【解决方案2】:

我在 Windows 上遇到了同样的问题,并且在 Windows 上没有适用于 python 2.7 的安装程序。

如果你把 avbin dll 放在你的文件夹中(或者使用安装程序全局安装),那么写:

pyglet.lib.load_library('avbin')
pyglet.have_avbin=True

导入pyglet之后,像这样:

import pyglet
pyglet.lib.load_library('avbin')
pyglet.have_avbin=True

它会愉快地加载和使用avbin。

【讨论】:

    【解决方案3】:

    我去超级赛亚人用头撞墙,然后突破了它。

    解决方案是安装 STABLE 版本,而不是最新版本。它只需要一点点

    :~/Downloads/avbin-linux-x86-64-7$ sudo ./install.sh 
    

    而且它有效。我认为他们与他们的安装人员混淆了......

    【讨论】:

      【解决方案4】:

      对我来说,它是从here 安装 AVbin 7。

      AVbin 8 和 10 似乎在运行,但没有发出任何声音。

      运行 32 位 Ubuntu 12.04。

      【讨论】:

        【解决方案5】:

        here下载特定的安装程序。

        然后转到下载文件夹并使用 sudo 运行它。

        例如,在我的例子中,我运行了以下命令:

        wget https://github.com/downloads/AVbin/AVbin/install-avbin-linux-x86-64-v10
        sudo install-avbin-linux-x86-64-v10
        

        【讨论】:

        • 这个答案为我做了。我一安装就开始播放 FLAC。非常感谢! (顺便说一句,我一直在阅读并亲身体验过的无声演奏的常见问题已通过此行解决:pyglet.options['audio'] = ('openal', 'pulse', 'directsound', 'silent')。希望对某人有所帮助!
        【解决方案6】:

        我的操作系统是 Windows10 64 位

        问题:

        pyglet.media.riff.WAVEFormatException:解码压缩媒体需要 AVbin

        如何在 Windows10 上修复它:

        1. AVbin Downloads 下载 32 位 AVbin.dll
          请注意:即使您使用 64 位 Win10,64 位 AVbin dll 也无法工作。
          所以请改为下载 32 位。

        2. 1. 中的 .exe 将 avbin.dll 提取到 windows/system32/ 文件夹中。
          请剪切/复制并粘贴到windows/system/ 文件夹。 看起来windows10只指32bits AVbin而不是64bits。

        3. 你可以走了。 试试吧!

        【讨论】:

          【解决方案7】:

          对我来说,我必须手动将 dll 移动到正确的文件夹。
          由于 AVBin 安装程序中的错误,它安装在 C:\Windows\System32 中,而它应该被放置在 C:\Windows\SysWOW64 中。
          假设您使用的是 Windows!

          要解决此问题,您只需进入 C:\Windows\System32 并找到 avbin.dll(或 avbin64.dll,如果您在 64 位系统上)并手动将其剪切并粘贴到 C:\Windows\SysWOW64 中。

          (或者,如果你是我并且下载了两个 dll,那么移动这两个...)

          【讨论】:

            【解决方案8】:

            我在 Windows 上遇到了这个问题,并通过搜索引擎找到了这个问题,所以我想我会分享我的经验和解决方案。

            我尝试加载 w WMV 文件(至少这是扩展名)并得到与问题中描述相同的异常,但我的问题是由于我使用“pip install pyglet”命令安装 pyglet,然后从安装程序。

            对我来说解决问题的是从项目站点上找到的安装程序安装 pyglet,它包含 AVBin,然后一切正常。

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2021-08-09
              • 2014-08-10
              • 1970-01-01
              • 1970-01-01
              • 2015-05-13
              • 1970-01-01
              • 2021-09-08
              • 2018-11-25
              相关资源
              最近更新 更多