Подтвердить что ты не робот

Пигмент Python 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)[email protected]:~/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.
4b9b3361

Ответ 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

Ответ 2

У меня была такая же проблема в Windows, и нет установки для python 2.7 на Windows.

Если вы поместите avbin dll в свою папку (или установите его глобально с помощью установщика), напишите:

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

после импорта пиглета, например:

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

Он будет загружать и использовать avbin с радостью.

Ответ 3

Я пошел супер сайян, ударяя головой о стену и прорвав ее.

Решение состоит в том, чтобы установить выпуск STABLE, а не последний. Все, что ему нужно, немного

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

И это работает. Я думаю, что они смешиваются со своими установщиками...

Ответ 4

Для меня конкретно это была установка AVbin 7 из здесь.

AVbin 8 и 10 просто казались бегущими, но звука не было.

Запуск 32-битного Ubuntu 12.04.

Ответ 5

У меня была эта проблема в Windows и нашла этот вопрос с помощью поисковой системы, поэтому я решил поделиться своим опытом и решением.

Я попытался загрузить w WMV файл (по крайней мере, это расширение) и получил то же исключение, что и в вопросе, но моя проблема была связана с тем, что я установил pyglet с помощью команды "pip install pyglet", а затем AVBin из установщик.

Для меня проблема заключалась в установке pyglet из установщика, найденного на сайте проекта, в нем есть AVBin, и тогда все работало нормально.

Ответ 6

Для меня мне пришлось вручную переместить dll в нужную папку.
Из-за ошибки в установщике AVBin он устанавливается в C:\Windows\System32, когда он должен быть помещен в C:\Windows\SysWOW64.
(Предполагая, что вы находитесь в Windows!)

Чтобы исправить это, все, что вам нужно сделать, это войти в C:\Windows\System32 и найти avbin.dll (или avbin64.dll, если вы находитесь на 64-битной системе) и вручную вырезать и вставить его в C:\Windows\SysWOW64.

(Или, если вы меня и скачали обе библиотеки, переместите оба...)

Ответ 7

Загрузите конкретный установщик из здесь.

Затем перейдите в папку загрузки и запустите ее с помощью sudo.

Например, в моем случае я запустил следующее:

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

Ответ 8

Моя ОС Windows10 64 бит.

Проблема:

pyglet.media.riff.WAVEFormatException: AVbin требуется для декодирования сжатых носителей

Как исправить это на Windows10:

  • Загрузить 32bits AVbin.dll из Загрузка AVbin
    Обратите внимание: 64-битная AVbin dll НЕ работает, даже если вы используете 64 бит Win10.
    Поэтому, пожалуйста, загрузите 32 бита.

  • .exe из 1. извлекает папку avbin.dll в windows/system32/.
    Вырежьте/скопируйте его и вставьте в папку windows/system/. Он выглядит, что windows10 относится только к 32 битам AVbin, но не к 64 битам.

  • Тебе хорошо идти. Попробуйте!