Python pyglet AVBin - Как установить AVBin
AVBin используется Pyglet для декодирования 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, подозревайте, что это может вызвать проблемы... хотя я управлял AVBin install.sh в virtualenv, как это:
(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
библиотека есть .значит, нет .dylib нужна , почему вы хотите .таинственный код dylib нужна? Это Linux не Mac (у Mac есть .dylib, Ubuntu имеет .Итак)
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.
8 ответов
Как насчет установки его по:
sudo apt-get install libavbin-dev libavbin0
дополнительная информация об этом пакете:http://packages.ubuntu.com/source/avbin
Edit: похоже, что он больше не включен для новых версий ubuntu. Так что вам придется скачать ее из https://avbin.github.io/AVbin/Download.html и установить его через
sudo sh ./install-avbin-linux-x86-64-v10
у меня была такая же проблема в Windows, и нет установщика для python 2.7 В Windows.
Если вы поместите библиотеку dll avbin в свою папку (или установите ее глобально с помощью установщика), то напишите:
pyglet.lib.load_library('avbin')
pyglet.have_avbin=True
после импорта pyglet, вот так:
import pyglet
pyglet.lib.load_library('avbin')
pyglet.have_avbin=True
он будет загружать и использовать avbin счастливо.
для меня конкретно это была установка AVbin 7 из здесь.
AVbin 8 и 10, казалось, просто бежали,но не было никакого звука.
под управлением 32-битной Убунту 12.04.
У меня была эта проблема в Windows и нашел этот вопрос через поисковую систему, поэтому я думал, что поделюсь своим опытом и решением.
Я попытался загрузить W WMV-файл (по крайней мере, это расширение) и получил такое же исключение, как описано в вопросе, но моя проблема была связана с тем, что я установил pyglet с помощью команды "pip install pyglet", а затем AVBin из установщика.
что решило проблему для меня, была установка pyglet из установщика, найденного на сайт проекта, он содержит AVBin, и тогда все работало нормально.
для меня мне пришлось вручную переместить dll в правильную папку.
Из-за ошибки в установщике AVBin он устанавливается в C:\Windows\System32
, когда он должен был быть помещен в C:\Windows\SysWOW64
.
(если вы находитесь на Windows!)
чтобы исправить это, все, что вам нужно сделать, это зайти в C:\Windows\System32
и avbin.dll
(или avbin64.dll
если вы находитесь в 64-битной системе) и вручную вырезать и вставить его в C:\Windows\SysWOW64
.
(или если вы меня и загрузили обе библиотеки DLL, то переместите оба...)
загрузите конкретный установщик из здесь.
затем перейдите в папку Загрузки и запустите ее с помощью sudo.
например, в моем случае я запустил следующее:
wget https://github.com/downloads/AVbin/AVbin/install-avbin-linux-x86-64-v10
sudo install-avbin-linux-x86-64-v10
моя ОС Windows10 64 бита.
вопрос:
pyglet.сми.рифф.WAVEFormatException: AVbin требуется для декодирования сжатых носителей
как это исправить на Windows10:
скачать 32bits AVbin.dll от AVbin Загрузки
обратите внимание: 64bits avbin dll не работает, даже если вы используете 64bits Win10.
Так Пожалуйста, загрузите 32bits вместо этого.The .exe из 1. извлекает
avbin.dll
наwindows/system32/
папка.
Пожалуйста, вырежьте / скопируйте его и вставьте в . Похоже, windows10 относится только к 32bits AVbin, но не к 64bits.ты можешь идти. Попробуй !