Installare pymedia su Ubuntu 8.10 Intrepid Ibex
Posted by admin | Posted in Uncategorized | Posted on 11-12-2008-05-2008
0
Recentemente, ho avuto necessità di utilizzare la libreria PyMedia, per renderizzare alcune tracce raccolte durante il primo Archaeologic Mapping Party di OpenStreetMap in Italia (e nel mondo) a Pompei. PyMedia è una libreria che permette a Python di manipolare file multimediali (audio/video/immagini). Il problema è che pymedia non esiste nei repository di Ubuntu 8.10 Intrepid Ibex, e l’unico pacchetto .deb disponibile in rete è adatto a Python 2.4 e ad una vecchia versione di Ubuntu. Per questo, ho compilato e pacchettizzato con checkinstall pymedia per Ubuntu 8.10 Intrepid Ibex. Il pacchetto potete scaricarlo da qui, oppure potete compilarvelo come segue.
Passo 1. Ottenere pymedia
wget http://internap.dl.sourceforge.net/sourceforge/pymedia/pymedia-1.3.7.3.tar.gz
tar xzvf pymedia-1.3.7.3.tar.gz
cd pymedia-*
Passo 2: Installare le dipendenze
sudo apt-get install python-dev libogg-dev libvorbis-dev liblame-dev libfaad-dev libasound2-dev python-pygame
Passo 3. Installare GCC 3.4 (pymedia non si compilerà con GCC 4.0)
sudo apt-get install gcc-3.4 g++-3.4
export CC=gcc-3.4
Passo 4. Fare alcune modifiche al codice C prima di compilare
In <audio/acodec/acodec.c> alla linea 31 inserire quanto segue:
[CODE]
#define HAVE_LRINTF
[/CODE]
In maniera tale da ottenere:
[CODE]
#include <libavcodec/avcodec.h>
#define HAVE_LRINTF
#include “libavcodec/dsputil.h”
#include “version.h”
[/CODE]
Passo 5. Costruire e compilare pymedia
sudo python setup.py build
Passo 6. Essere bravi utenti Ubuntu e installare pymedia con checkinstall
sudo apt-get install checkinstall
sudo checkinstall python setup.py install
Nota: Se si vuole essere dei cattivi utenti Ubuntu, è possibile installare pymedia senza creare il .deb, sostituendo il comando precendente con “sudo python setup.py install”.
Passo 7. Controlliamo se funziona: in un terminare digitare “python” e poi “import pymedia”; se non otteniamo errori, siamo a cavallo
python
>>> import pymedia
