LifeView DVB-S Clone unter OSS 10.x einbinden
Freitag, 12. Oktober 2007

LiveView Fly DVB-S Clone unter Linux einbindenVor ein paar Tagen erhielt ich eine mit "LiveView Fly DVB-S" betitelte TV-Karte zur Teststellung, welche auf einem OpenSuSE 10.2 System (i386) mit Pentium 4 / 2.0 GhZ / 1 GB RAM eingesetzt werden sollte. Standardmäßig unterstützt OSS 10.2 schon eine Vielzahl von TV-Karten, nur eben leider nicht diese. Die Hardwareerkennung identifizierte sie als "unknown Siemens ssa7130 video decoder device".

Immerhin schon mal ein Anfang. Laut Angabe des Vertreibers besitzt die Karte keine eigene Kennung im EEPROM (...in der Tat besitzt sie überhaupt kein EEPROM!). Zur Aktivierung sollte es genügen, die mitgelieferten Module zu compilieren und die Karte per "modprobe saa7134 card=128"; modprobe saa7134_dvb" einzubinden. So weit, so gut, die Module lassen sich auch laden, nur wird leider die Karte so noch nicht erkannt.

Auf Anfrage erhielt ich Hilfestellung (Danke, Haggi!) und erfuhr, dass es zuerst mal nötig ist, die Treiber für v4l zu patchen:

Hierzu sollte man bequemerweise das Revison Control System "mercurial" auf dem Rechner haben. Ich hatte es nicht instaliert, also "smart install mercurial" ausgeführt, und schon kann es weitere gehen. Anwender, die lieber per YAST2 arbeiten, können das Paket im Yast-Kontrollzentrum über "Software installieren oder löschen" hinzufügen.

Da OSS 10.x die bereits vorhandenen Module (saa7134) beim Systemstart erkennen und  einbinden würde, müssen zunächst in /etc/modprobe.d/blacklist mit einem Texteditor die folgende Einträge hinzugefügt werden:

# LiveView DVB-S
blacklist saa7134
blacklist saa7134-dvb
blacklist saa7134_dvb

Danach sollte man einen Neustart des Systems durchführen, um sicherzustellen, dass die betreffenden Module wirklich nicht geladen sind. Überzeugen kann man sich hiervon durch das Absetzen des Befehls: lsmod | grep saa in einer Root-Shell. Es sollten dann in der Ausgabe einfach keine Module auftauchen...

Um die v4l-Module ("Video4Linux") anzupassen, braucht man zunächst den Quellcode von linuxtv.org, sowie einen adäquaten Patch in Form eines diff-Files.

Neuerung - WARNUNG!!! Unter OpenSuSE 10.3 funktioniert der Patch gegen die aktuelle Version von l4m-dvb aus dem u.g. Repository nach einem Kernel-Update auf kernel 2.6.22.16-0.1-default nicht mehr einwandfrei! Offenbar ist im Quellcode eine weitere Karte hinzugekommen, die bereits die Kennung "128" benutzt.
LÖSUNG:  Führen Sie zunächst die Schritte 1 bis 3 wie unten beschrieben aus. Editieren Sie anschließend von Hand die Datei: v4l-dvb/linux/drivers/media/video/saa7134/saa7134.h von Hand. Fügen Sie dort in Zeile 264 ein:
#define SAA7134_BOARD_LIFEVIEW_DVBS        200
Speichern Sie die Datei. Beeben Sie sich zurück auf die Hauptebene (v4l-dvb). Compilieren und installieren Sie die Treiber gemäß den Punkten 4 bis  7. Editieren Sie nun die Datei /etc/modprobe.conf.local, genau wie weiter unten beschrieben. Anstatt 128 geben Sie jedoch 200 als Parameter an. 

Zunächst richtet man/frau an der Konsole ein Verzeichnis, z.B. "linuxtv", ein und begibt sich dort hin ("cd linuxtv"). Der Patch wird in dieses Verzeichnis kopiert. Als nächstes müßen die Quellcodes geladen und compiliert werden:

hg clone http://linuxtv.org/hg/v4l-dvb
1. in das v4l-dvb verzeichnis wechseln
2. Das Patch-File sollte im Verzeichnis darüber ("linuxtv") liegen
3. Befehl : patch -p1 <../lifeview.diff ausführen
4. make

...als Superuser anmelden, um die Module zu installieren!
5. make install
6. depmod -ae (...unter OSS 10.x möglicherweise obsolet!)
7. ldconfig
8. reboot - Neustart durchführen!

Wenn alles gutgegangen ist, d.h. die gepatchten v4l-Module konnten gebaut und installiert werden, kann man/frau nun die Karte aktivieren. Geben Sie hierzu als Superuser ("root") folgende Befehle an der Konsole ein:

modprobe saa7134 card=128
modprobe saa7134-dvb (Achtung! Minuszeichen statt Unterstrich!)

Hinweis: Falls 2 LiveView Fly DVB-S verbaut wurden, muß zur Erkennung beider Karten der Modulaufruf so lauten: modprobe saa7134 card=128,128 (Dieses Feature ist ungetestet, da ich nur über eine Karte verfüge).

Als nächstes sollte man/frau dann eine TV-Applikation konfigurieren und eine Senderliste generieren lassen. Ich habe hierzu Kaffeine verwendet:

Starten Sie das Programm, klicken Sie auf "digitales Fernsehen", und wählen Sie "Kanäle" aus dem Menü "DVB". Hier stellen Sie nun zunächst den zu scannenden Sateliten ein. Bei mir ist das Astra-19.2E. Ein Klick auf "Suche starten", und nach einiger Zeit verfügen Sie über eine aktuelle Liste mit TV- und Radiostationen, die Sie auf der rechten Seite des Fensters angezeigt bekommen. Wählen Sie jetz noch die für Sie passenden Filter, z.B. "Freie Programme", und klicken Sie auf "Gefilterte hinzufügen". Alternativ können Sie auch per Mehrfachselektion die Stationen anwählen, für die Sie sich interessieren, um diese dann mit "Ausgewählte hinzufügen" zu Ihrer Senderliste zu bewegen. Ein Klick auf "fertig" beendet die Sendereinstellungen. Sie können nun per Doppelklick auf die gewünschte Station einen Sender anwählen, und endlichfernsehen oder Radio hören.

Wenn das bis hierher reibungslos geklappt hat, machen Sie sich jetzt daran, Linux zum automatischen Laden der Module für die TV-Karte zu überreden:
Als Erstes kommentieren Sie in /etc/modprobe.d/blacklist die vorher gesetzten Eintragungen mit einem "#" am Zeilenbeginn wieder aus. Danach editieren Sie die Datei /etc/modprobe.conf.local und fügen diese Einträge hinzu:

# LiveView Fly DVB-S, 1 Karte
options saa7134 card=128
# LiveView Fly DVB-S, 2 Karten
# options saa7134 card=128,128
install saa7134 /sbin/modprobe --ignore-install saa7134
remove saa7134 /sbin/modprobe -r --ignore-remove saa7134

Abspeichern nicht vergessen!

Entgegen der Empfehlung, auch saa7134-dvb explizit zu laden, klappt das Einbinden der Karte nach einem Neustart trotzdem automatisch. Voila - die Hardware läuft, Bild und Ton hervorragend!

...und noch ein Hinweis: VDR, DVB und Co lagern bei Aufnahme oder zeitversetztem Fernsehen den Datenstrom auf die Festplatte aus. Sollte das Bild bei Ihnen ruckeln, so überprüfen Sie bitte, ob für Ihre Festpallte(n) der korrekte DMA-Modus aktiviert ist. Eine Anleitung hierzu finden Sie in meinem Artikel: http://www.mbergmann.de/faqs/linux/dma-modus-von-festplatten-cd-rw-dvd-rw-manipulieren.html

Fazit: Im Gegensatz zu teuren "full featured"-TV-Karten mit eigenem Chip für die MPEG-Codierung (z.B. Hauppauge Nexus DVB-S) kommt diese "Linux-only"-TV-Karte als sogenannte "Budget-Lösung". Hierbei muß die CPU das Codieren/Decodieren übernehmen, deshalb sollte sie schon in ein einigermaßen schnelles Rechnermodell ab 1,5 Ghz Prozessorleistung verbaut werden. Aktuelle Rechnermodelle verfügen allemal über genügend Power, um mit dieser Karte ungetrübten TV-Genuß zu gewährleisten. Günstig zu erwerben und mit guter Bild- u. Tonqualität, ist der hier getestete LiveView Fly DVB-S Clone dann in jedem Fall eine lohnende Investition für Multimedia-begeisterte Linuxanwender, die digitale Fernseh- und Radioprogramme auf ihrem Rechner wiedergeben oder aufzeichnen möchten.

An dieser Stelle möchte ich mich ganz herzlich bei der Firma Linux4Media GmbH bedanken, die mir diese TV-Karte zur Verfügung gestellt hat! 

Ein Hinweis in eigener Sache: Meine Karte ist derzeit vakant und steht bei ebay als Auktion zum Erwerb!

Download
Download Patch für v4l hier.
 

 

 

Letzte Aktualisierung ( Donnerstag, 5. Februar 2009 )