Dxr3
Inhaltsverzeichnis |
Einleitung
DXR3-Karten waren eine preiswerte Möglichkeit, ein Ausgabegerät für den VDR mit Hardware-MPEG-Dekoder zu bekommen. Diese Karten wurden ursprünglich zum Betrachten von DVD-Filmen auf leistungsschwachen Rechnern entwickelt.
Im Handel sind diese Karten nicht mehr erhältlich.
Bei ebay finden sich diese Karten bei der Suche nach Bezeichnungen wie
- Hollywood Plus
- DXR3 (DXR2 funktioniert nicht)
- Sigma Designs
- Real Magic
- Videologic
- EM8300
- Creative CT7260
Abbildung
Video Encoder
Es gibt drei verschiedene Video Encoder, die auf der DXR3 verbaut sein können.
Eine Besonderheit des ADV7170 ist, dass dieser als einziger das WSS (Wide-Screen-Signaling) beherrscht, also dem TV automatisch mitteilen kann, ob es sich um 4:3 oder anamorphes 16:9 handelt. Ausserdem kann der BT865 YUV nur mit einem Hardwaremod.
Anschluss an TV
Der Ausgang der DXR3 hat, statt der normalerweise vier Pins, sieben Pins. Die zusätzlichen Pins führen das Composite-Signal nach außen.
Ein Adapter-Kabel liegt der Karte bei. Alternativ beschreibt der Artikel DXR3-Video-Kabel Selbstbau, wie ein TV-Kabel selbst hergestellt werden kann.
Wenn man nicht in Besitz des Kabels ist und ein Composite-Signal braucht, kann man entweder einen S-Video-nach-Composite-Adapter benutzen oder man führt das Composite-Signal, wie hier oder hier beschrieben nach außen.
Falls man ein S-Video-nach-SCART-Kabel benutzt und nur ein Schwarz-Weiß-Bild bekommt, deutet das darauf hin, dass der Fernseher das S-Video-Signal nicht verarbeitet. Man muss dann das Composite-Signal benutzen.
Treiber-Installation
Folgende Einstellungen müssen in den Kernel einkompiliert sein:
Processor type and features ---> [*] MTRR (Memory Type Range Register) support Device Drivers ---> Sound ---> <*> Sound card support
Nutzung der letzten stable Version:
cd $SOURCEDIR tar xvzf em8300-<VERSION>.tar.gz cd em8300-<VERSION> ./configure --prefix=/usr/local make make install cd modules make make install make devices
Nutzung der aktuellen Version aus dem CVS-Repository (empfohlen):
Verwendet wird die CVS-Version, da diese aktueller ist als das aktuelle
Treiber-Release. Vor dem Ausführen von 'make' muss evtl. im Makefile die Variable 'KERNEL_LOCATION' angepasst werden.
cd $SOURCEDIR cvs -d:pserver:anonymous@dxr3.cvs.sourceforge.net:/cvsroot/dxr3 login cvs -z3 -d:pserver:anonymous@dxr3.cvs.sourceforge.net:/cvsroot/dxr3 co -P em8300 cd em8300/modules make make install
Der untenstehende Schritt ist bei der CVS anscheinend nicht mehr notwendig: Additionally, versions 0.15.2 and later have the capability to load the microcode on demand, so even running em8300setup is no longer needed for the purpose of just loading it. You may want to run it for other purposes, though.
cd ../em8300setup gcc em8300setup.c -o em8300setup -I../include cp em8300setup /usr/local/bin cp ../modules/em8300.uc /usr/share/misc
Bei mir kam dann auch ein Fehler.
em8300setup.c:20:20: config.h: No such file or directory em8300setup.c: In function `main': em8300setup.c:124: error: `FIRMWARE_DIR' undeclared (first use in this function) em8300setup.c:124: error: (Each undeclared identifier is reported only once em8300setup.c:124: error: for each function it appears in.) em8300setup.c:124: error: syntax error before string constant em8300setup.c:187: error: syntax error before "FIRMWARE_DIR"
für das problem muss erst "./bootstrap ; ./configure" ausgeführt werden siehe http://osdir.com/ml/linux.drivers.dxr3.devel/2006-06/msg00028.html
Statt dessen musste ich ein Verzeichnis anlegen und den Microcode hineinkopieren:
mkdir /usr/lib/em8300 cp $SOURCEDIR/modules/em8300.uc /usr/lib/em8300/em8300.uc
Nun devices.sh ausführen und man kann den Treiber laden. Auch dies scheint mit udev nicht mehr notwendig zu sein. Nach dem Kompilieren und Installieren des Kernelmodul sollte die Abhängigkeiten der Module per 'depmod -a' aktualisiert werden. Dabei hilft das Tool depmod, es findet die Abhängigkeiten zwischen ladbaren Kernelmodulen und schreibt die dafür zuständige Konfigurationsdatei modules.dep.
cd $SOURCEDIR/modules ./ldm //Seit 0.16.0 ist ALSA standard -> modprobe em8300 audio_driver=oss ./devices.sh em8300setup
Das Entladen des Treibers geht mit "./rmm".
Bildfehler
Häufig kommt es zu einem Grünstich des Bildes. Dies kann durch entsprechende Parameter behoben werden. Seltener sind die Farben Rot und Blau vertauscht, siehe auch Dxr3 - Color Problem. Die zur Lösung der Bildstörungen notwendigen Parameter lassen sich aber leicht mit dxr3config erstellen.
Gelegentlich wurde auch eine "wackelnde" untere Bildhälfte berichtet. Am 11.07.2006 hat jedoch PrakashP im VDR-Portal einen Microcode gepostet, der dieses Problem beseitigt. Auf der em8300Microcode Seite findet ihr eine Übersicht der Microcodes und ihrer Vor- und Nachteile.
OSD-Probleme (unlesbar)
Vorkommen kann auch, dass beim Öffnen des OSD die Schrift nur teilweise zu lesen ist und die untere Hälfte des Menü überhaupt nicht angezeigt wird. Im syslog zeigt sich dieses Problem beim Öffnen des OSD, indem ununterbrochen die Meldung
dxr3: colormanager: bummer, too many sections (14), reusing last one
ausgegeben wird. Dxr3 meldet unter Umständen auch
dxr3: colormanager: too many regions (100) - giving up dxr3: cSPUEncoder::Flush: OSD data size: 17509
Das Problem kann behoben werden, indem der VDR gestoppt wird und in der setup.conf die Einstellung AntiAlias = 1 auf AntiAlias = 0 gesetzt wird. Nach dem Starten des VDR sollte das OSD in gewohnter Qualität erscheinen.
Konfiguration von Plugins
Bei Verwendung des DXR3-Plugins werden Bild und Ton über die DXR3-Karte ausgegeben, dennoch müssen einige andere Plugins manuell konfiguriert werden, damit diese die DXR3 verwenden. Dazu gehört besonders das Mplayer-Plugin.
Siehe auch
- Homepage des Treibers
- The UnOfficial Sigma Designs Hollywood Plus FAQ
- DXR3 Plugin
- Xineliboutput Plugin (unterstützt auch die DXR3)
- Pinout der DXR3
- DXR3 RGB-Out Mod