Beiträge von pinger

    Es war eine Tortur, aber nun läuft meine DVB-S-Karte (Hauppage Win-TV Nexus) endlich einwandfrei unter SuSE Linux 9.1 (Kernel 2.6).


    Da die TV-Karte von YaST nicht automatisch erkannt wurde, musste ich den Treiber manuell laden. Hierzu habe ich das Start-Script "/etc/init.d/saa7146" gebaut:


    --------------------------------------------------------------
    #! /bin/sh
    #
    ### BEGIN INIT INFO
    # Provides: saa7146
    # Required-Start: $network
    # Required-Stop:
    # Default-Start: 3 5
    # Default-Stop: 0 1 2 4 6
    # Description: DVB TV Card
    ### END INIT INFO


    . /etc/rc.status


    case "$1" in
    start)
    echo -n "Starting saa7146 dvb tv "
    modprobe videodev
    modprobe dvb-core
    #modprobe alps_bsrv2
    modprobe v4l1-compat
    modprobe v4l2-common
    modprobe video-buf
    modprobe saa7146
    modprobe saa7146_vv
    modprobe dvb-ttpci hw_sections=0;
    alsactl restore
    amixer sset Line 28 on
    amixer sset CD 28 on
    rc_status -v
    ;;
    stop)
    echo -n "Shutting down saa7146 dvb tv "
    rc_status -v
    ;;
    restart)
    $0 stop
    $0 start
    rc_status
    ;;
    *)
    echo "Usage: $0 {start|stop|restart}"
    exit 1
    esac
    rc_exit
    --------------------------------------------------------------


    Dieses Script lässt sich mit dem Befehl "/etc/init.d/saa7146 start" ausführen. Das hatte soweit auch funktioniert, wie der folgende Check besagt:


    # lsmod | grep saa7146
    saa7146_vv 44928 1 dvb_ttpci
    saa7146 17956 2 dvb_ttpci,saa7146_vv
    video_buf 19972 1 saa7146_vv
    v4l2_common 6400 1 saa7146_vv
    v4l1_compat 13316 1 saa7146_vv
    videodev 9472 1 saa7146_vv


    Damit der Treiber beim Systemstart automatisch geladen wird, ist dieser entsprechend in das Startprozedere einzubinden:


    # insserv -d saa7146


    Danach ist das DVB-Paket von der 9.1-Installations-CD zu installieren. Danach ist der DVB-Daemon zu starten und idealerweise ebenfalls in den Autostart aufzunehmen:


    # /etc/init.d/dvb start
    Starting DVB done
    # insserv -d dvb


    Ebenfalls von der Installations-CD ist das VDR-Paket zu installieren. Versucht man nun vdr zu starten, kommt die erste Hürde, welche mit einem chmod noch nehmen ist:


    # vdr -v /etc/vdr
    vdr: can't access video directory /etc/vdr
    # chmod 777 /etc/vdr
    # chmod 666 /etc/vdr/*.conf


    Idealerweise ist vdr wieder als Daemon zu starten und in den Autostart aufzunehmen:


    # /etc/init.d/vdr start
    Starting Video Disk Recorder done
    # insserv -d vdr


    Ebenfalls von der Installations-CD ist kvdr zu installieren und danach zu starten. Nun sollte man bereits ein Bild haben. Leider fehlt aber noch der Ton. Standardmässig wird vdr im "mute"-Modus gestartet. Laut kvdr-Anleitung müsste man mit der Taste "grey-return" aus diesem Mutemodus kommen. Da ich bisher diese Tast nirgends finden konnte, habe ich das über ein Hintertürchen gelöst. Das Python-Programm "/usr/bin/kvdr.py" setzt vdr in den "unmute"-Zustand und startet kvdr. Nach dessen Beendigung wird vdr wieder in den "mute"-Modus gesetzt. Das Programm habe ich kurz selbst getippt, so dass es von hier mit copy-and-paste übernommen werden muss. Python müsste zuvor aber von der Installations-CD installiert werden, falls dies nicht bereits der Fall sein sollte (in der-Standardinstallation dabei).


    ------------------------------------------------------------------------
    #!/usr/bin/env python


    import os, telnetlib
    tn = telnetlib.Telnet("localhost", 2001)
    tn.read_until("VideoDiskRecorder", 10)
    tn.write("VOLU 255\nQUIT\n")
    kvdr = os.popen("kvdr")
    kvdr.close()
    tn = telnetlib.Telnet("localhost", 2001)
    tn.read_until("VideoDiskRecorder", 10)
    tn.write("VOLU MUTE\nQUIT\n")
    ------------------------------------------------------------------------


    So, es ist soweit. Alles läuft. :)
    Hoffentlich bei Euch auch.