OpenSUSE VDR DVB-S2 - xine - Teil4: xine
Aus VDR Wiki
(Unterschied zwischen Versionen)
Sewn4 (Diskussion | Beiträge) (→xine-lib installieren) |
Sewn4 (Diskussion | Beiträge) (→Installation ffmpeg) |
||
Zeile 6: | Zeile 6: | ||
cd ffmpeg-cvs-18-01-2008/ | cd ffmpeg-cvs-18-01-2008/ | ||
chmod +x configure | chmod +x configure | ||
− | ./configure --enable-shared --enable-gpl --enable-pp --enable-liba52 --enable-libmp3lame | + | ./configure --enable-shared --enable-gpl --enable-pp --enable-liba52 --enable-libmp3lame --enable-libvorbis --enable-pthreads --arch=x86_64 --cpu=k8 |
make && make install && ldconfig | make && make install && ldconfig | ||
cd /tmp/ | cd /tmp/ | ||
Zeile 12: | Zeile 12: | ||
===Mögliche Probleme und Lösungsvorschläge=== | ===Mögliche Probleme und Lösungsvorschläge=== | ||
− | |||
− | |||
* configure mit den zusätzlichen Optionen --extra-ldflags=-Wl,-Bsymbolic ausführen. Damit läuft die Kompilation von ffmpeg durch. | * configure mit den zusätzlichen Optionen --extra-ldflags=-Wl,-Bsymbolic ausführen. Damit läuft die Kompilation von ffmpeg durch. | ||
* ''relocation R_X86_64_PC32 against `ff_pw_20' can not be used when making a shared object; recompile with -fPIC''<br/><b>Tritt nur auf der AMD 64 Plattform auf</b>, vgl. http://www.gentoo.org/proj/en/base/amd64/howtos/index.xml?part=1&chap=3 <br/>Dieses File war bereits als -fPIC kompiliert, deshalb hat ein weiteres Setzen nicht geholfen. Ich habe inzwischen mehrere Lösungen gefunden: | * ''relocation R_X86_64_PC32 against `ff_pw_20' can not be used when making a shared object; recompile with -fPIC''<br/><b>Tritt nur auf der AMD 64 Plattform auf</b>, vgl. http://www.gentoo.org/proj/en/base/amd64/howtos/index.xml?part=1&chap=3 <br/>Dieses File war bereits als -fPIC kompiliert, deshalb hat ein weiteres Setzen nicht geholfen. Ich habe inzwischen mehrere Lösungen gefunden: |
Version vom 18. Januar 2008, 15:08 Uhr
Inhaltsverzeichnis |
Installation ffmpeg
cd /data/installfiles/vdr svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg-cvs-18-01-2008 cd /tmp/ cp -a /data/installfiles/vdr/ffmpeg-cvs-18-01-2008/ . cd ffmpeg-cvs-18-01-2008/ chmod +x configure ./configure --enable-shared --enable-gpl --enable-pp --enable-liba52 --enable-libmp3lame --enable-libvorbis --enable-pthreads --arch=x86_64 --cpu=k8 make && make install && ldconfig cd /tmp/ rm -r ffmpeg-cvs-18-01-2008/
Mögliche Probleme und Lösungsvorschläge
- configure mit den zusätzlichen Optionen --extra-ldflags=-Wl,-Bsymbolic ausführen. Damit läuft die Kompilation von ffmpeg durch.
- relocation R_X86_64_PC32 against `ff_pw_20' can not be used when making a shared object; recompile with -fPIC
Tritt nur auf der AMD 64 Plattform auf, vgl. http://www.gentoo.org/proj/en/base/amd64/howtos/index.xml?part=1&chap=3
Dieses File war bereits als -fPIC kompiliert, deshalb hat ein weiteres Setzen nicht geholfen. Ich habe inzwischen mehrere Lösungen gefunden:- http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-October/016555.html
Die betroffenen Variablen als static markieren. - http://sourceware.org/ml/binutils/2006-09/msg00151.html
Die betroffenen Variablen als hidden markieren.
Mit dieser Version konnte ich zumindest kompilieren.
- http://lists.mplayerhq.hu/pipermail/ffmpeg-devel/2006-October/016555.html
Das sieht dann so aus:
$ vi libavcodec/i386/dsputil_mmx.h extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_3; extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_4; extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_5; extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_8; extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_15; extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_16; extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_20; extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_32; extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_42; extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_64; extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_96; extern const uint64_t __attribute__((visibility("hidden"))) ff_pw_128;
Installation xine
vdr-xine Plugin vorbereiten
cd /data/installfiles/vdr wget http://home.vrweb.de/~rnissl/vdr-xine-0.8.1.tgz cd /usr/local/src/vdr/PLUGINS/src tar -xzf /data/installfiles/vdr/vdr-xine-0.8.1.tgz mv xine-0.8.1/ xine mkdir -p /etc/vdr/plugins/xine cd /etc/vdr/plugins/xine/ cp -a /usr/local/src/vdr/PLUGINS/src/xine/data/* .
Link für den Xineplayer erstellen
cd /usr/local/src/vdr/PLUGINS/src/xine ln -s $(pwd)/xineplayer /usr/local/bin/xineplayer
xine-lib installieren
cd /data/installfiles/vdr hg clone http://hg.debian.org/hg/xine-lib/xine-lib-1.2 mv xine-lib-1.2/ xine-lib-cvs-18-01-2008 cd /tmp/ cp -a /data/installfiles/vdr/xine-lib-cvs-18-01-2008 . cd xine-lib-cvs-18-01-2008/ ./autogen.sh --with-external-ffmpeg --disable-dxr3 && make && make install && ldconfig cd /tmp/ rm -r xine-lib-cvs-18-01-2008/
xine-ui installieren
cd /data/installfiles/vdr cvs -d:pserver:anonymous@xine.cvs.sourceforge.net:/cvsroot/xine login cvs -z3 -d:pserver:anonymous@xine.cvs.sourceforge.net:/cvsroot/xine co xine-ui mv xine-ui/ xine-ui-cvs-26-10-2007 cd /tmp/ cp -a /data/installfiles/vdr/xine-ui-cvs-26-10-2007 . cd xine-ui-cvs-26-10-2007/ ./autogen.sh --enable-vdr-keys && make && make install cd /tmp/ rm -r xine-ui-cvs-26-10-2007/
vdr-xine Plugin installieren
cd /usr/local/src/vdr make plugins
runvdr anpassen
vi /usr/local/bin/runvdr -P'xine -r' \
starten von xine
VDR starten
/usr/local/bin/runvdr
xine starten
xine -V xv --post vdr_video --post vdr_audio --post upmix_mono "vdr:/tmp/vdr-xine/stream#demux:mpeg_pes"