Найти - Пользователи
Полная версия: pymedia gcc-4.4
Начало » Python для новичков » pymedia gcc-4.4
1
legioner
вобщем не могу установить pymedia
есть
Linux 2.6.31-14-generic #48-Ubuntu SMP Fri Oct 16 14:04:26 UTC 2009 i686 GNU/Linux
python 2.6
pymedia 1.3.7.3
gcc-4.4
зависимости установлены

выводит
~/pymedia-1.3.7.3 $ python setup.py build
Using UNIX configuration...

OGG : found
VORBIS : found
FAAD : found
MP3LAME : found
VORBISENC : found
ALSA : found
Continue building pymedia ? [Y,n]:y
running build
running build_py
running build_ext
building 'pymedia.audio.acodec' extension
gcc-4.4 -fno-strict-aliasing -DNDEBUG -g -fwrapv -O2 -Wall -Wstrict-prototypes -DBUILD_NUM=1886 -DPATH_DEV_DSP="/dev/dsp" -DPATH_DEV_MIXER="/dev/mixer" -D_FILE_OFFSET_BITS=64 -DACCEL_DETECT=1 -DHAVE_MMX=1 -DHAVE_LINUX_DVD_STRUCT=1 -DDVD_STRUCT_IN_LINUX_CDROM_H=1 -DCONFIG_VORBIS -DCONFIG_VORBIS -DCONFIG_FAAD -DCONFIG_MP3LAME -DCONFIG_VORBIS -DCONFIG_ALSA -DHAVE_AV_CONFIG_H -DUDF_CACHE=1 -INone -INone -INone -I/usr/include/lame -INone -INone -I/home/oem/pymedia-1.3.7.3 -Iaudio/ -I/usr/include/python2.6 -c audio/acodec/acodec.c -o build/temp.linux-i686-2.6/audio/acodec/acodec.o
In file included from audio/acodec/acodec.c:31:
audio/libavcodec/dsputil.h:484: error: static declaration of ‘lrintf’ follows non-static declaration
audio/acodec/acodec.c:249: warning: initialization from incompatible pointer type
audio/acodec/acodec.c: In function ‘ACodec_Encode’:
audio/acodec/acodec.c:668: warning: pointer targets in passing argument 2 of ‘avcodec_encode_audio’ differ in signedness
audio/libavcodec/avcodec.h:1597: note: expected ‘uint8_t *’ but argument is of type ‘char *’
error: command 'gcc-4.4' failed with exit status 1
как я понял pymedia нужно собирать с gcc-3.4 или я не так понял.
обязательно мне устанавливать gcc-3.4?
или есть другой способ?
может кто то сталкивался с этой проблемой.
или подскажет другой модуль для работы с mp3,ogg,avi etc
Alex_Kutsan
у меня тоже не получилось установить Pymedia. Но на шаг раньше, скажите как вы зависимости установили?
У меня:
alex@alex-laptop /media/Files 114/pymedia-1.3.7.2 $ python setup.py build
Using UNIX configuration…

OGG : not found
VORBIS : not found
FAAD : not found
MP3LAME : not found
VORBISENC : not found
ALSA : not found
guranvir
Так смотрите надо установить:
1) faad2-2.7
2) lame-3.98.4
Не забудьте установить хидеры для python
AlexAV
Может быть не совсем в тему, но как насчет использвать GStreamer (в смысле питоновские биндинги к нему) вместо pymedia, а то я смотрю она не развивается вроде.
guranvir
Оно и неплохо, но некоторые приложения ориентируются именно на pymedia.
Итак по горячим следам:
1) Устанавливаем: dev файлы python 2.6
2) libasound2-dev (это файлы разработчика ALSA, именно они нужны что бы установщик pymedia задетектил ALSA )
3) lame 3.98.4 (переходим в папку с исходниками lame и вводим:
 ./configure
make
make install
)При чем лучше из под sudo
4) Устанавливаем faad (я сначала установил faad 2.7 из сорцов: переходим в директорию faad и пишем ./configure –with-mp4v2
make
sudo make install )Однако после импорта pymedia она сказала не видим мы libfaad.so.2. Пришлось установить deb пакет 2.6 и “импортная” ошибка прошла
5) Теперь из консоли перейдя в папку с pymedia введем: sudo python setup.py install. Он должен показать следующее
OGG          : found
VORBIS : found
FAAD : found
MP3LAME : found
VORBISENC : found
ALSA : found
Что ж на вопрос отвечаем буквой y и тут у нас могут начаться ошибки из-за того что GCC 4 не дружит с pymedia. Если так то нам придется сделать следующее:
В файле <audio/acodec/acodec.c> в строке 31 вводим:
#define HAVE_LRINTF
И должно у нас быть так:
#include <libavcodec/avcodec.h>
#define HAVE_LRINTF
#include “libavcodec/dsputil.h”
#include “version.h”
наш #define должен быть до #include “libavcodec/dsputil.h” Это обязательно!
Однако этого шаманизма от пользователя Illusion форума на http://indashpc.org/ недостаточен
Админ того же форума jbors дополнил, что строку #define HAVE_LRINTF надо ввести и в <audio/config.h>
Вот тогда сборка и установка должна пройти нормально. И инструкция

>>>from pymedia import *
Должна пройти без ошибок
Ссылки:
1) для системы устанавливаем в консоли sudo apt-get install libasound2-dev
2) Для faad: http://packages.ubuntu.com/ru/jaunty/libfaad0 или http://packages.ubuntu.com/ru/jaunty/libfaad2-0
Исходники 2.7: https://sourceforge.net/projects/faac/
3) lame: http://sourceforge.net/project/showfiles.php?group_id=290&package_id=309
4) pymedia: http://pymedia.org/
5) Источник поправок: http://www.croket.ru/09/?p=327 (по dev пакетам для alsa) и страница обсуждений инсталяции pymedia http://indashpc.org/vbullettin/viewtopic.php?t=31&postdays=0&postorder=asc&start=15
polymetr
Кто-нибудь собирал для python 2.7?

In file included from /usr/include/python2.7/Python.h:58:0,
from video/muxer/demuxer.c:27:
/usr/include/python2.7/pyport.h:146:25: ошибка: expected ‘=’, ‘,’, ‘;’, ‘asm’ or ‘__attribute__’ before ‘Py_uintptr_t’
guranvir
AlexAV вобщем то верно заметил что лучше мигрировать на GStreamer
This is a "lo-fi" version of our main content. To view the full version with more information, formatting and images, please click here.
Powered by DjangoBB