---------------------------------------------------
1. Wstęp: O dekoderze sprzętowym
Dekoder sprzętowy kryjący się pod nazwą DXR3 to urządzenie znane pod handlowym odpowiednikiem Real Magic Hollywood+, lub Creative Labs dxr3.
Jest to karta PCI oparta o układ "em8300", który zapewnia b.dobrej jakości obraz na ekranie telewizora jak i monitora VGA.
W zamierzeniu twórców służyła do odtwarzania płyt DVD w czasach ( lata 90-te XX w.) kiedy procesory były za słabe do tego celu.
Już na Pentium II 200 Mhz. można oglądać płyty DVD.
Urządzenie wtedy kosztowało 300 $, obecnie 40 -80 zł PL.
Pozwala ono dekodować pliki video MPEG1 i MPEG2, czyli nie tylko płyty DVD, ale także (S)VCD, oraz
przekaż satelitarny nadawany w MPEG2-TS.
Dekodując sprzętowo DXR3 odciąża od wykonywanego zadania procesor.
Urządzenie jest wyposażone w wyjścia dźwięku analogowe-stereo i cyfrowe SPDIF.
Wyjście cyfrowe umożliwia przesyłanie sygnału DolbyDigital do zewnętrznego dekodera np.
w amplitunerze pozwalając na odbiór dźwięku wielokanałowego.
W pełni zastępuje kartę dźwiekową.
Również, ze wspomagniem programowym pozwala oglądać filmy Divx / Xvid / H264 itp. oraz słuchać muzyki mp3 / ogg / aac.
Za pośrednictwem mplayera , czy xine również wyświetla napisy do DVD i AVI.
W niewielkim zakresie możliwe jest skalowanie i panoramowanie obrazu.
Dekoder wyposażony jest w regulacje brightness / contrast / saturation,
programem "dhc"w KDE.
W systemach Linux dekoder obsugują programy dxr3player, mplayer, xine
Video Disc Recorder i kilka innych.
2. Instalacja modułów
Do obsługi urządzenia należy zainstalować pakiet: em8300-0.15.tar.gz, lub nowszy, http://dxr3.sourceforge.net/download/em ... 5.1.tar.gz
lub właściwy dla swojej dystrybucji.
Do zainstalowania modułów konieczne jest umieszczenie źródeł kernela
i przypisanie im skrótu do /usr/src/linux.
Po rozpakowaniu źródeł instalujemy w katalogu np. /usr/src/em8300:
Kod: Zaznacz cały
$ ./configure && make
i
# make install
Utworzone zostaną moduły: em8300.ko, adv717x i bt856.ko.
Po zainstalowaniu należy sprawdzić, czy właściwy plik microcode em8300.uc został umieszczony w /usr/share/misc.
I wykonać polecenie:
Kod: Zaznacz cały
# ./devices.sh
Powinny powstać: /dev/em8300-0, /dev/em8300_mv, /dev/em8300_ma-0, /dev/em8300_sp-0
Następnie należy wykonać dowiązanie symboliczne urządzeń.
Kod: Zaznacz cały
# ln -s /dev/em8300-0 /dev/em8300
# ln -s /dev/em8300_mv-0 /dev/em8300_mv
# ln -s /dev/em8300_ma-0 /dev/em8300_ma
# ln -s /dev/em8300_sp-0 /dev/em8300_sp
# chmod 666 /dev/em8300*
Kod: Zaznacz cały
#./ldm ; ładowanie
# /.rmm. ; usuwanie
Moduły ładujemy z ustalonymi opcjami zależnie od typu urządzenia. Należy je rozpoznać na drodze prób i błędów.
Najczęstszymi skutkami błędnego ich podania jest "zielony ekran", czarno-biały obraz lub zamienione barwy niebeskie na czerwone.
Dla różnych modeli różne są wartości parametrów; dokładny opis jest w README-modoptions.
Najczęściej spotykane są poniższe cztery kombinacje:
Kod: Zaznacz cały
adv717x pixelport_16bit=1 pixelport_other_pal=1
em8300 dicom_fix=1 dicom_control=1 dicom_other_pal=1
adv717x pixelport_16bit=0 pixelport_other_pal=0
em8300 dicom_fix=1 dicom_control=1 dicom_other_pal=0
adv717x pixelport_16bit=0 pixelport_other_pal=1
em8300 dicom_fix=1 dicom_control=1 dicom_other_pal=1
adv717x pixelport_16bit=1 pixelport_other_pal=0
em8300 dicom_fix=0 dicom_control=0 dicom_other_pal=0
Dla Creative Labs trzeba zamiast adv717x załadowac moduł bt865.
Kod: Zaznacz cały
# /sbin/modprobe bt865
# /sbin/modprobe em8300 use_bt865=1
w modprobe.conf lub modules conf w /etc, lub rc.modules w zależności od kernela i dystrybucji.
Do testów możemy ładować i usuwać moduły przez te polecenia zmieniając za każdym razem wartości, aż uzyskamy zadawalający efekt. .
Następnie uruchamiamy konfigurator em8300setup:
Kod: Zaznacz cały
# em8300setup -p -d -S[/i]
gdzie "p" oznacza kolor PAL, "d" wyjście audio digital "S" właczony dekoder napisów. (lub "-a" dla dźwieku znalogowego)
Działanie urządzenia sprawdzamy:
Kod: Zaznacz cały
# mplayer -vo dxr3 -ao oss://dev/em8300_ma plik.mpg
# mplayer -vo dxr3 -ao oss://dev/em8300_ma dvb://
Kiedy obraz i dźwięk sa prawidłowe przechodzimy do instalacji pluginu vdr-dxr3 do VDR.
VDR ładuje microcode automatycznie, a w przypadku kłopotów możemy uruchomic ręcznie skrypt:
# ./microcode_upload.pl
Aby zainstalować plugin potrzebujemy :
* źródeł kernela w /usr/src/linux
* skompilowany ffmpeg (wersja 0.4.8, lub najnowsza "cvs" z opcją
#./configure --enable-shared .. --enabled-kodek_1... --enabled-kodek_n
wprowadzenie nazw kodeków pozwoli później przez dxr3 i plugin mplayer/mp3 na odtwarzanie filmów, muzyki zakodowanymi tymi kodekami.
* źródła DVB: od wersji linux-dvb-2003-11-08 do najnowszych włącznie.
* źródła em8300, które zainstalowaliśmy
* plugin vdr-dxr3
Dla najnowszej wersji vdr-1.4.0 (maj 2006) ściągamy plugin z CVS poleceniami:
Kod: Zaznacz cały
cvs -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/dxr3plugin login
{ENTER]
cvs -z3 -d:pserver:anonymous@cvs.sourceforge.net:/cvsroot/dxr3plugin co dxr3
Kod: Zaznacz cały
/usr/src/linux
/usr/src/DVB
/usr/src/ffmpeg
/usr/src/em800
/usr/src/vdr-1.3.37
Musi być umieszczony w podkatalogu dxr3, jeśli źródła były w innym katalogu to do rozpakowanego pluginu wykonujemy polecenie:
ln -s vdr-dxr3-xx dxr3 dowiązanie symboliczne.
Może się okazać konieczna dla wcześniejszych wersji vdr-a serii 1.3.xx edycja w ../dxr3 pliku Makefile
W tym przypadku nastepujące wymagane są ustawienia:
Kod: Zaznacz cały
DVBDIR = ../../../../DVB/driver
VDRDIR = ../../..
LIBDIR = ../../lib
TMPDIR = /tmp
FFMDIR = /usr/local/include/ffmpeg # ew. /usr/local/ffmpeg, lub /usr/src/ffmpeg
EM8300 = ../../../../em8300
VDR uruchamiamy poleceniem:
$ ./vdr -P dxr3 ...
Inna alternatywną metodą jest korzystanie z pluginu vdr-xine z modułem wyjściowym dxr3.
4. Zakończenie
Przedstawiona tu metoda pozwala użyć tani dekoder zastępując wbudowane urządzenia służace temu celowi w drogich tunerach stalitarnych.
Ogladać obraz na ekranie odbiornika TV wysokiej jakości z w pełni funkcjonalnym menu OSD, oraz
inne warianty mediów jak DVD/(S)VCD, AVI i słuchać muzyki przez analogowe, lub cyfrowe wyjście dżwięku.
----------------------------------------------------------------------------------------------------------------------------------------------------
Autor: Tad, 2006-05-30, orginał tekstu znajdzie się wkrótce stronie specjalnie poświęconej programom satelitarnym pod Linuxa: na http://vdr.host.sk w odpowiednim dziale tematycznym.