View Poll Results: How would you rate this Howto?

Voters
57. You may not vote on this poll
  • Useless, no good at all, waste of time

    2 3.51%
  • Pretty useless, but gave me a few ideas

    2 3.51%
  • Very useful, thanks

    31 54.39%
  • Best tutorial on the subject!

    22 38.60%
Page 1 of 33 12311 ... LastLast
Results 1 to 10 of 326

Thread: HTPC DVB-S2 VDR 1.7.5 CCcam Howto

  1. #1
    Join Date
    Aug 2005
    Location
    European Union
    Beans
    174
    Distro
    Lubuntu 12.04 Precise Pangolin

    Thumbs down HTPC DVB-S2 VDR 1.7.8 CCcam Howto

    LATEST NEWS:

    Here you can download vdr-1.7.21 sources with common plugins already patched to work with vdr-1.7.21. It is ready for 64 bits.

    I still use Ubuntu 10.04 on my desktop, but for a dedicated HTPC if you can get it working, Archlinux will yield better performance.

    So I've rebuilt my system with exactly the same hardware but using a recent Archlinux 64bits installation cd and the results are impressive:

    a) Just X server running, no Gnome or KDE which makes it very fast and responsive
    b) Zap time is less than a second
    c) BBC HD for example works perfectly
    d) CCcam 2.1.4 working fine (this would also be true if you installed for example ubuntu 10.04)
    e) Aesthetically very slick as TV, Videos, DVD are all more integrated
    f) Rock-solid stable
    g) Hard drive usage: 2.7GB
    h) Archlinux is a rolling release, so no need to reinstall in order to upgrade EVER
    i) I've built a 32bits (Pentium 4 or celeron) and a 64bits (Any 64bits AMD or Intel cpus) release
    j) For XMBC user the xvdr addon and matching vdr plugin xvdr

    I've abandoned oxine because it is basically a dead project, a serious bug was reported back in January and no effort has been made to fix it.
    So I am using MMS (My media system) exclusively as a frontend as I discovered the Game menu can be used to launch bash scripts.

    Contact me if you would like a dvd or download link of a restore image with vdr 1.7.15, mms and CCcam 2.1.4 fully working (if your DVB card is supported by linux all you would need to do is setup your remote if it is not the one used in this tutorial or an Opera DVB USB)

    This image would need to be installed on the first partition of your hard drive (/dev/sda1) or alternatively modify /etc/fstab to account for the different location.


    Note: If you have Ubuntu 8.x or 9x the latest CCcam version that will work is: CCcam 2.1.2

    FOREWORD: This tutorial is for Ubuntu 8.10
    It should work with Ubuntu 8.04 but with Ubuntu 9.04 or 9.10 you may face problems (for example the skinenigma plugin will fail to compile although if you use the one on my binaries should be fine)
    If you are running ubuntu 9.10 then you might want to make your life easier by simply adding these 2 repositories:
    (thanks to hotzenplotz5 (see page 19 of this thread)
    You can find there: vdr-1.7.9 + plugins (120) + xine-vdpau etc

    https://launchpad.net/~hotzenplotz5/+archive/ppa
    Code:
    deb http://ppa.launchpad.net/hotzenplotz5/ppa/ubuntu karmic main
    deb-src http://ppa.launchpad.net/hotzenplotz5/ppa/ubuntu karmic main

    The background.
    I had a Dreambox 7020 and was happy enough with it but one day HD finally came in the horizon.
    I looked at a Dreambox 800, ipbox revo, and a couple of other linux based HD sat receivers. None was satisfying.
    So I set out to build my own. If this tutorial intimidates you or time is precios to you, drop me a private message and I can send you a bootable restore dvd that is all up and running.

    The goal of this howto is to build a functional HTPC with HD satellite tv and HDMI output at 1080p (1920×1080 16:9). The idea is for a dedicated machine. We assume a brand-new installation and given the complexity of the tutorial the reasonable way to undo all the changes is to reinstall Ubuntu.
    VDR 1.7.10 (see screenshots) is the heart of this project (thanks to Klaus.Schmidinger for his tremendous work and for his patience answering my questions, thanks to Shalafi for his own tutorial and for moderating an excellent satellite forum, and to Winfried for his channels scanning and rotor coding for VDR)

    If you rather use VDR 1.7.0 then see my other thread


    Code:
    NOTICE: By popular demand I have placed vdr-1.7.9 with the extensions patch,
     setup, teletext, subtitles and other usefull plugins together with most of 
    the config files in this tutorial in a .rar file 
    DOWNLOAD IT HERE
    You still need to setup ffmpeg, xine-lib, xine-ui and the oxine binaries 
    but the rest should be working fine and save lots of time and efforts.

    The hardware I chose:
    - Motherboard: Abit A-N78HD with the Geforce 8200 IGP
    or ASUS M3N78-VM AM2 (both work fine with OSS but the Abit can not do HDMI sound with ALSA)
    - CPU : AMD Athlon(tm) 64 X2 Dual Core Processor 4200+
    - Thermalite silent fan
    - Memory : 2 GB DDR2-800 (2X 1 GB)
    - DVD-drive : LG GGC-H20LRB (DVD-RW, Blu-Ray and HDDVD)
    - Harddisk : 160GB
    - Budgetcard : Hauppauge WinTV NOVA-HD-S2

    All this, is connected to a Panasonic FullHD LCD-TV using the onboard HDMI connector with the nvidia closed sources driver 180.53

    VDR has many plugins, some more frequently maintained than others.
    The exact set of plugins you use is up to you and your needs.
    This is my current set of VDR plugins:
    DOWNLOAD HERE my /usr/local/src/vdr-1.7.9 with all the plugins and patches listed below: (just do sudo make install )

    vdr (1.7.10/1.7.10) - The Video Disk Recorder
    femon (1.7.4) - DVB Signal Information Monitor (OSD)
    osdteletext (0.8.3) - Displays teletext on the OSD
    pluginsetup (0.0.6) - Plugin Setup
    timeline (1.0.141-kw001) - Show timer overview and collisions
    imdbsearch (0.3.6) - Searches the IMDb
    skinenigmang (0.1.0) - EnigmaNG skin
    quickepgsearch (0.0.1) - Quick search for broadcasts
    satlist (0.0.2) - Channel list for satellite sorting
    premiereepg (0.2.0) - Parses extended Premiere EPG data
    epgsearchonly (0.0.1) - Direct access to epgsearch's search menu
    systeminfo (0.1.1) - Display various system informations
    control (0.0.2a-kw3) - Control VDR over terminal or telnet
    epgsearch (0.9.25.beta13) - search the EPG for repeats and more
    mplayer (0.10.1) - Media replay via MPlayer
    conflictcheckonly (0.0.1) - Direct access to epgsearch's conflict check menu
    osdadjust (0.0.3) - Adjust OSD Size and Position
    setup (0.3.1-zulu-edition) - VDR-Setup Extension
    chanman (0.0.8) - Channel manager plugin
    wirbelscan (0.0.5-pre08) - DVB and pvrinput channel scan for VDR
    ttxtsubs (0.1.0) - Teletext subtitles
    sc (1.0.0pre-HG-85fce21e5440+) - A software emulated CAM
    skinreel (0.0.1) - Reel Skin-Plugin
    xine (0.9.3) - Software based playback using xine


    1. The Sound of Music: ALSA or OSS
    Note: I use OSS as with ALSA couldn't get sound over HDMI.
    Current OSS as of 2th July 2009 is OSS 4.1-1052


    You need to edit /etc/modprobe.d/blacklist-local and blacklist nv and nvidia-new drivers to avoid conflicts in the next step. If you have decided to install OSS then you need to blacklist snd_hda_intel as well

    sudo gedit /etc/modprobe.d/blacklist-local
    Code:
    # It is mandatory to blacklist nvidia_new and nv to avoid conflicts
    blacklist nvidia_new
    blacklist nv
    # If you are going to use OSS instead of ALSA also blacklist snd_hda_intel
    blacklist snd_hda_intel

    2. NVIDIA drivers
    NVIDIA drivers as of 180.50 or earlier do not work with this motherboard (I have tried the beta 185.18.10 driver and it did not work for me but 185.18.08 works)
    If somebody can confirm they make a difference please let me know version and motherboard you have.

    Instead download NVIDIA 177.82 and install it. Reboot and you should have 1080p resolution

    Note: If you want VDPAU accelearation and your NVIDIA card supports it (8xxx or 9xxx series) then you can install
    NVIDIA 185.18.10 instead

    3. ALSA OR OSS


    To the best of my knowledge if you want the audio output through the HDMI connector straight to your TV you will need to install OSS and disable ALSA.
    But this is not without problems as OSS will work for 6 months and will require reinstallation every 6 months (unless you purchase a licence from them)
    So if you want audio over HDMI install OSS, otherwise stick with ALSA for simplicity

    Installing OSS:

    We go to the oss website and download oss:

    http://www.opensound.com/download.cgi

    We choose linux 2.6 - deb - x86

    Code:
    sudo apt-get install linux-headers-generic linux-source build-essential
    sudo dpkg -i oss-linux-4.2-2002_i386.deb
    sudo soundon
    osstest
    ossinfo -x
    ossxmix -dX
    Once you have followed the above guide to install OSS modify /usr/lib/oss/soundon.user
    so it looks like this:

    Code:
    sudo rm /usr/lib/oss/soundon.user
    sudo touch /usr/lib/oss/soundon.user
    sudo chmod 755 /usr/lib/oss/soundon.user
    sudo gedit /usr/lib/oss/soundon.user

    Code:
    #!/bin/sh
    # For HDMI sound output on motherboards with chipset ALC883 or ALC888 
    # This script can be used to run programs every time OSS is started.
    # By default, this script is disabled, and contains no commands.
    # To enable, add executable permissions to this file, and edit below
    # commands to be run. 
    rm /dev/dsp
    ln -s /dev/oss/oss_hdaudio0/spdout1 /dev/dsp
    #vmixctl attach /dev/oss/oss_hdaudio0/spdout1 /dev/oss/oss_hdaudio0/pcmin0 
    
    rm /dev/dsp dsp_ac3
    ln -s /dev/oss/oss_hdaudio0/spdout1 /dev/dsp_ac3
    
    
    exit 0

    Click on System, Preferences, Sound and select OSS all over.
    Reboot and you should have 1920x1080 with audio over HDMI by default

    or ALSA:

    To upgrade to the latest ALSA drivers do the following:

    Code:
    sudo -s
    cd /usr/local/src
    touch alsaupg.sh
    chmod +x alsaupg.sh
    sudo gedit alsaupg.sh
    copy and paste the following text, save the file

    Code:
    #!/bin/bash 
    #
    # AlsaUpgrade-1.0.x-rev-1.X.sh 
    # Note: As usual  I'd like to recommend that you make a backup of your drive first. I don't guarantee for anything!
    #  Rev: 1.16  01-21-2009 soundcheck Changelog: added kernel-headers compile option to alsa-driver/ support of 1.0.19
    #  Rev: 1.17  05-10-2009 soundcheck Changelog: Added 1.0.20 support, added 2.6.29 support
    
    ##--------------------------------------------------------------------------------------------------------------------------------------
    # Below package variables need to be adapted according to available package ids at  http://www.alsa-project.org/main/index.php/Download 
    # otherwise the script execution will fail!
    ##--------------------------------------------------------------------------------------------------------------------------------------
    
    PACKAGE=1.0.20
    
    alsa1020 () {
    DRIVER=alsa-driver-1.0.20
    FIRMWARE=alsa-firmware-1.0.20
    LIB=alsa-lib-1.0.20
    PLUGINS=alsa-plugins-1.0.20
    UTILS=alsa-utils-1.0.20
    TOOLS=alsa-tools-1.0.20
    OSS=alsa-oss-1.0.17
    }
    
    
    #------------Ususally NO Changes to be done below this line-----------------------------------------------------------------------------------------
    
    # script revision
    REV="1.17"
    
    #----supported kernels-----------------------------------------------------------------------------------------------------------------
    
    KERNEL1="2.6.24" # Ubuntu kernel family
    KERNEL2="2.6.26" # kernel family
    KERNEL3="2.6.27" # kernel family
    KERNEL4="2.6.28" # kernel family
    KERNEL5="2.6.29" # kernel family
    
    #TOOLSRC =" ac3dec as10k1 envy24control hdsploader hdspconf hdspmixer \
    #	  mixartloader pcxhrloader rmedigicontrol sb16_csp seq sscape_ctl \
    #	  us428control usx2yloader vxloader echomixer ld10k1 qlo10k1"
    #
    
    
    SRCDIR=/usr/src          # Sources will be stored here
    ALSASRCDIR=${SRCDIR}/alsa  # Packages will be stored here
    NOW=`date '+%m%d%y-%H.%M'`
    DATE=`date`
    LOGFILE=/var/log/AlsaUpgradeRev-$REV-$NOW.log
    KERNEL=`uname -r` 
    CURRENTPACKAGE=`cat /proc/asound/version | awk '{ print $7 }'`
    ALSAPACKS=" alsa-base  alsa-oss  alsa-utils alsa-tools alsa-tools-gui libasound2 libasound2-dev libasound2-plugins aconnectgui "
    KERNELPACKS=" `dpkg -l |  awk '{print $2}' | grep -e ${KERNEL}` "
    
    
    
    #---------------------------------------------------------------------------------------------------------------------------------
    
    #---You need to have root permissions to run the script----
    
    if [ "$UID" -ne 0  ]
     then
     echo "Must be root to run this script..."
     exit 0
    fi  
    
    package () {
    echo -n "Choose Alsa Package (1) $PACKAGE default[1]: " 
       read PACK
       case $PACK in
           		""  	) alsa1020 ;;
           		[1]     ) alsa1020 ;;
           		*	) alsa1020 ;;
    esac
    
    ALSASRCDIR=${SRCDIR}/Alsa-${PACKAGE}
    
    }
    
    
    header () {
    echo
    echo "-------------------------------------------------------------"
    echo "-  ${1}"
    echo "-------------------------------------------------------------"
    echo
    
    }
    
    die () {
      echo "$1"
      exit 1 #error
    }
    
    greet () {
    clear
    echo
    echo "--$DATE----Alsa-Upgrade-Script-$REV -----------------" 
    echo "-  "
    echo "- You'll be upgraded from $CURRENTPACKAGE to $PACKAGE. "
    echo "- "
    echo "- All script output is routed to $LOGFILE" 
    echo "- Run tail -f <logfile> in a seperate terminal to follow the upgrade"
    echo "- "
    echo "- Reboot your machine afterwards."
    echo "- "
    echo "- Enjoy - meet you at ubuntuforums.org or diy-audio.com"
    echo "- soundcheck"
    echo "---------------------------------------------------------------------------"
    echo
    echo "Upgrade in progress..The process can take up to 15minutes.....Be patient!"
    
    }
    
    
    bye () {
    header "Installation successfully finished!"
    header "Your new ALSA version will be loaded after the next reboot..."
    
    }
    
    prep () {
    
    header "Working on following Alsa packages..."
    echo "Driver: $DRIVER"
    echo "Library: $LIB"
    echo "Plugins: $PLUGINS"
    echo "Utils: $UTILS"
    echo "Firmware: $FIRMWARE"
    echo "OSS: $OSS"
    #echo "Installing tools: $TOOLS"
    
    #install necessary Linux packages
    header "Installing packages required to build ALSA..."
    
    apt-get install -y $ALSAPACKS
    apt-get install -y build-essential libsysfs-dev libncurses5-dev gettext python-all-dev xmlto libpulse-dev libspeex-dev
    apt-get install -y libavcodec-dev libavformat-dev libavutil-dev libmpeg4ip-dev liba52-0.7.4-dev
    apt-get install -y linux-headers-$KERNEL  
    
    }
    
    download () {
    
    cd $SRCDIR
    
    header "Downloading and extracting ALSA packages..."
    wget ftp://ftp.alsa-project.org/pub/driver/$DRIVER.tar.bz2 && tar -xjf $DRIVER.tar.bz2 
    wget ftp://ftp.alsa-project.org/pub/firmware/$FIRMWARE.tar.bz2 && tar -xjf $FIRMWARE.tar.bz2 
    wget ftp://ftp.alsa-project.org/pub/lib/$LIB.tar.bz2 && tar -xjf $LIB.tar.bz2 
    wget ftp://ftp.alsa-project.org/pub/plugins/$PLUGINS.tar.bz2 && tar -xvf $PLUGINS.tar.bz2 
    wget ftp://ftp.alsa-project.org/pub/utils/$UTILS.tar.bz2 && tar -xjf $UTILS.tar.bz2 
    wget ftp://ftp.alsa-project.org/pub/tools/$TOOLS.tar.bz2 && tar -xjf $TOOLS.tar.bz2 
    wget ftp://ftp.alsa-project.org/pub/oss-lib/$OSS.tar.bz2 && tar -xvf $OSS.tar.bz2 
    
    rm alsa*.tar.bz2
    rm -rf $ALSASRCDIR
    mkdir -p $ALSASRCDIR && mv alsa-* $ALSASRCDIR
    
    }
    
    
    compile () {
    
    header "Prepare for compilation and installation..."
    
    test -d $ALSASRCDIR || die "$ALSASRCDIR not found"
    
    cd $ALSASRCDIR
    
    test -d $DRIVER || die "$DRIVER  not found"
    test -d $FIRMWARE || die "$FIRMWARE not found"
    test -d $LIB || die "$LIB not found"
    test -d $PLUGINS || die "$PLUGINS not found"
    test -d $UTILS || die "$UTILS not found" 
    test -d $TOOLS || die "$TOOLS not found"
    test -d $OSS || die "$OSS not found"
    
    
    #alsa-driver Note: Driver to be installed before library
    header "Compiling drivers..."
    cd $ALSASRCDIR/$DRIVER
    make clean
    ./configure --with-kernel=/usr/src/linux-headers-$KERNEL --with-cards=all --with-card-options=all --with-sequencer=yes --with-oss=yes --prefix=/usr || die "$DRIVER configure failed"
    #./configure --with-cards=usb-audio,hda-intel,emu10k1,hrtimer,rtctimer,hpet --with-card-options=all --with-sequencer=yes --with-oss=yes --with-kernel=/usr/src/linux --prefix=/usr || die "$DRIVER configure failed"
    make || die "$DRIVER make failed"
    
    #alsa-lib
    header "Compiling library..."
    cd $ALSASRCDIR/$LIB
    make clean
    ./configure --prefix=/usr || die "$LIB configure failed"
    make || die "$LIB make failed"
    
    #alsa-plugins
    header "Compiling plugins..."
    cd $ALSASRCDIR/$PLUGINS
    make clean
    ./configure  --prefix=/usr || die "$PLUGINS configure failed"
    make || die "$PLUGINS make failed"
    
    #alsa-firmware
    header "Compiling firmware..."
    cd $ALSASRCDIR/$FIRMWARE
    make clean
    ./configure --prefix=/usr || die "$FIRMWARE configure failed"
    make || die "$FIRMWARE make failed"
    
    ## utils will be compiled and installed later on, since lib needs to be installed first
    
    #alsa-oss
    header "Compiling OSS..."
    cd $ALSASRCDIR/$OSS
    make clean
    ./configure --prefix=/usr || die "$OSS configure failed"
    make || die "$OSS make failed"
    
    
    #alsa-tools if you need any of the tools you need to select and install them one by one manually - look up the respective directory within /usr/src/alsa/alsa-tools*/
    #header "Compiling tools..."
    
    #
    #cd $ALSASRCDIR/$TOOLS
    #for i in $TOOLSRC ; do
    # cd $i
    # if [ -x ./configure ]; then \
    #  make clean   
    #  ./configure --prefix=/usr ||  die "$Tools $i configure failed"
    #  make ||  die "$Tools $i make failed"
    # fi
    
    
    }
    
    installation () {
    
    header "Installing all modules..."
    
    header "Installing driver..."
    cd $ALSASRCDIR/$DRIVER
    make install
    header "Installing library..."
    cd $ALSASRCDIR/$LIB
    make install
    header "Installing plugins..."
    cd $ALSASRCDIR/$PLUGINS
    make install
    header "Installing firmware..."
    cd $ALSASRCDIR/$FIRMWARE
    make install
    header "Installing OSS..."
    cd $ALSASRCDIR/$OSS
    make install
    
    #
    #alsa-utils need to be compiled after lib installation!!
    #
    
    header "Compiling utils..."
    cd $ALSASRCDIR/$UTILS
    make clean
    header "Compiling utils..."
    ./configure --prefix=/usr 
    make
    header "Installing utils..."
    make install
    
    #
    #alsa-tools not yet ready!!
    #
    
    #cd $ALSASRCDIR/$TOOLS
    #for j in $TOOLSRC ; do
    # cd $j
    #  header "Installing tool $i"
    #  make install
    # fi
    
    #
    #copy modules to respective kernel!!
    #
    
    
    cd ${ALSASRCDIR}/${DRIVER}/
    
    find ./ -name ''*.ko'' > /tmp/alsa_manifest
    
    header "Copy modules to target directories..."
    
    #This block of code works with 2.6.24-x Ubuntu standard kernels
    if [ "`uname -a| grep ${KERNEL1} `" != "" ] ; then
     tar -cv -T /tmp/alsa_manifest -f /lib/modules/`uname -r`/ubuntu/sound/alsa-driver/${DRIVER}.tar
     cd /lib/modules/`uname -r`/ubuntu/sound/alsa-driver
    fi
    
    #This block of code works with 2.6.26-x kernels
    if [ "`uname -a| grep ${KERNEL2} `" != "" ] ; then
     tar -cv -T /tmp/alsa_manifest -f /lib/modules/`uname -r`/kernel/sound/${DRIVER}.tar
     cd /lib/modules/`uname -r`/kernel/sound/
    fi
    
    #This block of code works with 2.6.27 kernels 
    if [ "`uname -a| grep ${KERNEL3} `" != "" ] ; then
     tar -cv -T /tmp/alsa_manifest -f /lib/modules/`uname -r`/kernel/sound/${DRIVER}.tar
     cd /lib/modules/`uname -r`/kernel/sound/
    fi
    
    #This block of code works with 2.6.28 kernels 
    if [ "`uname -a| grep ${KERNEL4} `" != "" ] ; then
     tar -cv -T /tmp/alsa_manifest -f /lib/modules/`uname -r`/kernel/sound/${DRIVER}.tar
     cd /lib/modules/`uname -r`/kernel/sound/
    fi
    
    #This block of code works with 2.6.29 kernels 
    if [ "`uname -a| grep ${KERNEL5} `" != "" ] ; then
     tar -cv -T /tmp/alsa_manifest -f /lib/modules/`uname -r`/kernel/sound/${DRIVER}.tar
     cd /lib/modules/`uname -r`/kernel/sound/
    fi
    
    #Extract new modules, overwriting old ones
    tar -xvf ${DRIVER}.tar
    rm *.tar
    
    depmod -a
    
    chmod a+rw /dev/dsp /dev/mixer /dev/sequencer /dev/midi /dev/snd/*
    
    ####alsa-utils patch for asound.state to avoid patching alsa-utils, see below debian patch - ####
    ##http://svn.debian.org/wsvn/pkg-alsa/trunk/alsa-utils/debian/patches/move_asound_state_to_var.patch?op=file&rev=0&sc=0
    
    cd /var/lib/alsa
    rm asound.state
    ln -s /etc/asound.state asound.state
    
    }
    
    
    restorealsa () {
    for y in ${KERNELPACKS} ; do
    header "Package ${y} will be reinstalled" 
    apt-get -y --reinstall install $y
    done
    
    for k in ${ALSAPACKS} ; do 
    header "Package ${k} will be reinstalled" 
    apt-get -y --reinstall install $k
    done
    depmod -a
    }
    
    downloadsnapshot () {
    test -d $ALSASRCDIR || die "$ALSASRCDIR not found"
    cd $ALSASRCDIR
    test -d $DRIVER || die "$DRIVER  not found"
    mv $DRIVER $DRIVER.old
    wget ftp://ftp.kernel.org/pub/linux/kernel/people/tiwai/snapshot/alsa-driver-snapshot.tar.gz
    test -f  alsa-driver-snapshot.tar.gz || die "Download of snapshot didn't work"
    tar xvvf alsa-driver-snapshot.tar.gz
    mv alsa-driver $DRIVER
    rm alsa-driver-snapshot.tar.gz
    }
    
    usage() {
        echo "
    Usage: $0 [OPTION]...
    
    Available options:
       -di    Download (to /usr/src), compile and install the packages
              This option will compeletely upgrade your ALSA in one step
       -d     Download the packages only
              In case you want to tweak/patch the official packages or 
              you'd like to install the snapshot on top of the official 
              packages prior to compiling and installating them   
       -c     Compilation only 
              Kind of dry-run option to see if the configuration and compilation 
              works
       -i     Compilation and installation of packages
              Sources must exist under /usr/src. Run script with -d or -di options first.
              The option is useful to speed up your installation in case Ubuntu upgrades 
              have overwritten your ALSA installation. It is also useful if you want to 
              keep your patched version or snapshot version, when reinstalling the packages
       -r     Restore ALSA 
              Kernel and all ALSA relevant Ubuntu packages will be restored
              (done by re-installation of relevant packages)
       -snap  Download, compile and install of latest ALSA driver-sources-snapshot 
              Please run script using -d option first. Recommended for troubleshooting.
              (The snapshot is not an offical ALSA release or even pre-release,
               it is the latest snapshot taken from the design-tree!) 
       -h     Help - this page 
    
    Please visit http://ubuntuforums.org/showthread.php?t=962695 
    to report any issues you might encounter by using this script.
    "
        exit 1;
    }
    
    
    #--- main ----
    
    case "$1" in
      -di)
            header "Alsa will be downloaded and installed"
            package  
            greet
            exec 1>${LOGFILE} 2>&1
            prep
            download
            compile
            installation
            bye     
            ;;
      -d)
            header "Alsa will be downloaded only"
            package
            greet
            exec 1>${LOGFILE} 2>&1
            prep
            download    
            ;;
      -c)
            header "Alsa will be compiled"
            package
            greet
            exec 1>${LOGFILE} 2>&1
            prep
            compile
            ;;
    
      -i)
            header "Alsa will be compiled and installed"
            package
            greet
            exec 1>${LOGFILE} 2>&1
            prep
            compile
            installation
            bye
            ;;
    
      -r)   
            header "Alsa will be restored. You'll get a maiden version from Ubuntu repositories"
            exec 1>${LOGFILE} 2>&1
            restorealsa
            ;;
      
      -snap)
            header "The latest Alsa-driver snapshot will be downloaded,compiled and installed"
            package
            greet
            exec 1>${LOGFILE} 2>&1
            downloadsnapshot
            compile
            installation
            bye
            ;;
        
      -h)
            usage
            exit 1
            ;;
      *)
            usage
            exit 1
            ;;
    esac
    
    exit 0
    
    
    ##----Script End ----
    Code:
    ./alsaupg.sh -di
    reboot
    Now to test audio over HDMI is working type this:

    Code:
     speaker-test -Dplughw:0,3 -c2
    You should hear some static noise (that means it works)
    You could also try

    wget http://www.vorbis.com/music/Epoq-Lepidoptera.ogg
    aplay -Dplughw:0,3 Epoq-Lepidoptera.ogg

    Code:
    sudo gedit ~/.asound.asound.conf
    Code:
    defaults.pcm.device 3



    4. Install this driver and firmware ONLY if you have a Hauppauge WinTV NOVA-HD-S2
    S2-API is the driver standard that will work out of the box starting with kernels 2.6.28.

    Code:
    WARNING: VDR 1.7.10 supports S2-API natively (if for some reason you want multiproto instead of S2-API, install VDR 1.7.0 instead)

    First the firmware... (thanks to Ahmed Y Shaheem for the tip)
    Code:
    sudo -s
    apt-get install unrar -y
    rm /lib/firmware/dvb-fe-c*
    cd /usr/local/src
    wget http://www.hauppauge.de/software/mce/88x_2_122_26109_WHQL.zip
    unzip -jo 88x_2_122_26109_WHQL.zip Driver88/hcw88bda.sys
    dd if=hcw88bda.sys of=dvb-fe-cx26109.fw skip=75504 bs=1 count=32501
    cp dvb-fe-cx26109.fw /lib/firmware/
    rm /lib/firmware/dvb-fe-cx24116.fw
    ln -s /lib/firmware/dvb-fe-cx26109.fw /lib/firmware/dvb-fe-cx24116.fw
    And now the driver...
    Code:
    apt-get install build-essential
    apt-get install mercurial cvs subversion libncurses-dev
    cd /usr/local/src
    hg clone http://mercurial.intuxication.org/hg/s2-liplianin/
    cd s2-liplianin
    cd linux/include/linux
    ln -s /usr/src/linux-headers-`uname -r`/include/linux/compiler.h ./
    cd ../../../
    make distclean
    make
    make install
    depmod -a
    reboot

    You know you have the drivers installed and running when under
    /dev/dvb/adapter0/ you see:

    Code:
    crw-rw----+ 1 root video 212, 1 2009-03-15 16:22 demux0
    crw-rw----+ 1 root video 212, 2 2009-03-15 16:22 dvr0
    crw-rw----+ 1 root video 212, 0 2009-03-15 16:22 frontend0
    crw-rw----+ 1 root video 212, 3 2009-03-15 16:22 net0
    5. w_scan: Scan util
    Time to test your hardware is so far all working
    Open the terminal

    Code:
    cd Desktop
    download from here preferably:
    http://www.ziddu.com/download/6797072/w_scan-20091004.tar.rar.html
    
    wget http://wirbel.htpc-forum.de/w_scan/w_scan-20091004.tar.bz2
    tar jxvf w_scan-20090528.tar.bz2
    cd w_scan-20090528.tar.bz2
    cp w_scan /usr/local/bin/
    mkdir /etc/vdr
    # Next line will scan dvb-s and dvb-s2 channels on Astra1
    w_scan -fs -s S19E2 -o7 >> /etc/vdr/channels.conf

    NOTE: wierbel scan is the best satellite scanner,current versions support Cable, Terrestrial even rotors and DVB-S2 channels!
    An English Howto for w_scan can be found here
    The latest w_scan can be found here

    open the newly created channels.conf and check it does contain lots of channels

    6. FFmpeg
    This little piece of software is part or the better known VLC
    We are about to compile our own. You can find more info on HOWTO: Install and use the latest FFmpeg and x264
    but for vdr we also need --enable-postproc which is not part of that ffmpeg Howto, but otherwise a useful reference guide if you need
    more info on compiling x264

    Code:
    cd /usr/local/src
    sudo -s
    apt-get build-dep ffmpeg
    rm -rf /usr/include/ffmpeg
    sudo rm /usr/local/bin/ffmpeg
    apt-get install build-essential libx264-dev libmp3lame-dev libfaad-dev libxvidcore4-dev 
    apt-get install mercurial cvs subversion libncurses-dev 
    apt-get install autoconf libtool automake pkg-config gettext libfaac-dev 
    apt-get install liba52-0.7.4-dev libvorbis-dev zlib1g-dev libpng12-dev libx11-dev libxv-dev libasound2-dev
    svn checkout svn://svn.mplayerhq.hu/ffmpeg/trunk ffmpeg
    cd ffmpeg/
    #in next line if you have trouble compiling it try removing --enable-shared
    ./configure --prefix=/usr --enable-gpl --enable-nonfree --enable-postproc --enable-libmp3lame --enable-libvorbis --enable-pthreads --enable-libx264 --enable-libtheora --enable-libfaac --enable-libfaad --enable-libxvid --enable-shared
    
    make
    sudo checkinstall --fstrans=no --install=yes --pkgname=ffmpeg --pkgversion "3:0.svn`date +%Y%m%d`-12ubuntu3" --default
    ldconfig -v
    7. Xine-Lib 1.2 CVS:
    Here is my patched xine-lib1.2.deb package
    http://www.ziddu.com/download/499596...Dx386.rar.html
    with vdpau and faster zapping.
    If it works for you great, else compile your own as per the instructions following.

    NOTE:
    Don't download the vdpau patch for xinelib directly from the wget line.
    The maintainer keeps the patch update with the xinelib main version. Just have a look to his page:
    http://www.jusst.de/vdpau/files/xine-lib-1.2/?C=M;O=D
    and download the latest patch.
    Code:
    cd /usr/local/src
    apt-get install libcdio-dev libvcdinfo-dev
    
    hg clone http://hg.debian.org/hg/xine-lib/xine-lib-1.2-vdpau
    
    cd xine-lib-1.2-vdpau
    
    #Next 5 lines are optional, only if you want windows codecs in 
    #which case append --enable-w32dll --with-w32-path=/usr/local/lib/win32 to the xine-lib autogen line
    wget http://www8.mplayerhq.hu/MPlayer/releases/codecs/essential-20071007.tar.bz2
    tar xivf essential-20071007.tar.bz2
    mv essential-20071007 /usr/local/lib/win32
    ln -s /usr/local/lib/win32 /usr/local/lib/codecs
    #end of optional code, if you followed the optional lines append the parameters to the next line
    ./autogen.sh --prefix=/usr --with-external-ffmpeg --disable-dxr3 
    make -j6
    checkinstall --fstrans=no --install=yes --pkgname=libxine2-dev --pkgversion "1.2.svn`date +%Y%m%d`-12ubuntu3"
    ldconfig -v
    If make fails then edit gedit /usr/local/src/xine-lib-1.2/src/audio_dec Look for -ldts_pic and add -lm after it.

    8. Xine-UI-cvs

    Code:
    cd /usr/local/src
    apt-get install libxt-dev
    # WARNING! We're going to install LIRCD and with this you can configure your remote if you want it used through LIRCD
    apt-get install lirc lirc-modules-source lirc-x liblircclient-dev
    wget http://home.vrweb.de/~rnissl/xine-ui-cvs-20090617220000.tar.bz2
    tar jxvf xine-ui-cvs-20090617220000.tar.bz2
    cd xine-ui
    # in the next line personally I don´t use --enable-vdr-keys but you can add it if you need it
    ./autogen.sh --prefix=/usr 
    make
    make install
    To configure the Hauppauge remote control that comes with the NOVA HD-S2

    Code:
    sudo dpkg-reconfigure lirc
    1. Select Hauppauge Nova-T 500, press next
    2. Select None, press next
    3. Select something ending with --event-ir, press ENTER

    mine looks like this:
    /dev/input/by-path/pci-0000:01:0a.0--event-ir

    Either the Nova-T 500 remote is not identical to the Nova-HD-S2 one
    or the config files for the Nova-T 500 are buggy, but some 10 keys were dead.
    Create the next 5 files to have a fully working Hauppaugge Nova-HD-S2 RCU

    The following file is ONLY for the Hauppaugge Remote that comes with the NOVA-HD-S2.If your remote is not the one that comes with the Hauppagge S2-HD check this for help
    Code:
    sudo gedit /etc/udev/rules.d/55-local.rules
    Code:
    KERNEL=="event*", ATTRS{vendor}=="0x14f1", SYMLINK="input/irremote"
    [/p]
    The next file will ensure lirc has full access to your Hauppaugge Remote

    Code:
    sudo gedit /usr/share/hal/fdi/preprobe/20thirdparty/10-ignore-cx88-ir.fdi
    Code:
    <deviceinfo version="0.2">
    −
    <device>
    −
    <match key="info.product" contains_ncase="cx88 IR">
    <merge key="info.ignore" type="bool">true</merge>
    </match>
    </device>
    </deviceinfo>
    The next 4 files will basically leave the remote that came with your Hauppaugge NOVA-HD-S2 fully configured
    with all keys working as they should
    Code:
    mkdir -p /etc/vdr/plugins
    sudo gedit /etc/vdr/keymacros.conf
    Code:
    # Remote control key macros for VDR
    # Format:
    # macrokey  key1 key2 key3...
    # macrokey  @plugin key1 key2 key3...
    # See man vdr(5)
    
    Red       Recordings
    Green     Schedule
    Yellow    Info
    Blue      Timers
    Code:
    sudo gedit /etc/vdr/remote.conf
    Code:
    LIRC.Ok         Enter
    LIRC.0          0
    LIRC.1          1
    LIRC.2          2
    LIRC.3          3
    LIRC.4          4
    LIRC.5          5
    LIRC.6          6
    LIRC.7          7
    LIRC.8          8
    LIRC.9          9
    LIRC.Menu       NextSong
    LIRC.Back       BackExit
    LIRC.Red        Red
    LIRC.Green      Green
    LIRC.Yellow     Yellow
    LIRC.Blue       Blue
    LIRC.Info       Menu
    LIRC.Stop       Stop
    LIRC.Record     Record
    LIRC.Play       Play
    LIRC.Pause      Pause
    LIRC.FastFwd    Fwdwind
    LIRC.FastRew    Rewind
    LIRC.PrevChannel PrevCh
    LIRC.Volume+    VolumeUp
    LIRC.Volume-    VolumeDown
    LIRC.Mute       Mute
    LIRC.Audio      Text
    LIRC.Subtitles  Sub
    LIRC.Channels   TV
    LIRC.Schedule   Guide
    LIRC.Recordings Pictures
    LIRC.Setup      PrevSong
    KBD.Up         00000000001B5B41
    KBD.Down       00000000001B5B42
    KBD.Menu       000000000000006D
    KBD.Ok         000000000000000D
    KBD.Back       000000000000007F
    KBD.Left       00000000001B5B44
    KBD.Right      00000000001B5B43
    KBD.Red        000000001B5B5B41
    KBD.Green      000000001B5B5B42
    KBD.Yellow     000000001B5B5B43
    KBD.Blue       000000001B5B5B44
    KBD.0          0000000000000030
    KBD.1          0000000000000031
    KBD.2          0000000000000032
    KBD.3          0000000000000033
    KBD.4          0000000000000034
    KBD.5          0000000000000035
    KBD.6          0000000000000036
    KBD.7          0000000000000037
    KBD.8          0000000000000038
    KBD.9          0000000000000039
    KBD.Play       000000001B5B5B45
    KBD.Pause      0000001B5B31377E
    KBD.Stop       0000001B5B31387E
    KBD.Record     0000001B5B31397E
    KBD.FastFwd    0000001B5B32307E
    KBD.FastRew    0000001B5B32317E
    KBD.Power      000000000000000A
    KBD.Channel+   000000000000002B
    KBD.Channel-   000000000000002D
    KBD.Volume+    000000001B5B317E
    KBD.Volume-    000000001B5B347E
    KBD.Mute       0000000000000073
    KBD.Audio      0000000000000061
    Code:
    sudo gedit /etc/lirc/lircd.conf
    Code:
    # brand:                       Hauppauge NOVA-HD-S2
    # model no. of remote control: Hauppage NOVA-HD-S2 Snowboard Shape Silver over Black
    #
    
    begin remote
    
     name  NOVA-HD-S2
      bits           16
     eps            30
     aeps          100
    
     one             0     0
     zero            0     0
      pre_data_bits   16
      pre_data       0x8001
      gap          133325
      toggle_bit_mask 0x8001001C
    
        begin codes
             Pictures                 0x016F
             Go                       0x0161
             Text                     0x0184
             TV                       0x0179
             Videos                   0x0189
             Music                    0x0188
             Guide                    0x016D
             Radio                    0x0181
             ArrowUp                  0x0067
             ArrowDown                0x006C
             ArrowLeft                0x0069
             ArrowRight               0x006A
             Enter                    0x001C
             BackExit                 0x00AE
             Menu                     0x008B
             PrevCh                   0x019C
             Mute                     0x0071
             VolumeUp                 0x0073
             VolumeDown               0x0072
             ChannelUp                0x0192
             ChannelDown              0x0193
            Record                   0x00A7
             Stop                     0x0080
             Play                     0x00CF
             Pause                    0x0077
             Sub                      0x0172
             Power                    0x0074
             Rewind                   0x00A8
             Fwdwind                  0x00D0
             Sleep                    0x008E
             NextSong                 0x00A3
             PrevSong                 0x00A5
             1                        0x0002
             2                        0x0003
             3                        0x0004
             4                        0x0005
             5                        0x0006
             6                        0x0007
             7                        0x0008
             8                        0x0009
             9                        0x000A
             0                        0x000B
             Red                      0x018E
             Green                    0x018F
             Yellow                   0x0190
             Blue                     0x0191
    
     
     end codes
    
    end remote

    Code:
    sudo gedit /etc/lirc/hardware.conf

    Code:
    REMOTE="Hauppauge NOVA-HD-S2"
    REMOTE_MODULES=""
    REMOTE_DRIVER="devinput"
    # Next 2 lines will work as long as you have just 1 remote 
    #Both the event and the by-path value can change so this way works fine
    #TEMPIREVENT=`ls /dev/input/by-path/ |grep event-ir`
    #REMOTE_DEVICE="/dev/input/by-path/$TEMPIREVENT"
    #Next line ONLY if you have the Hauppage NOVA-S2-HD remote control otherwise # and un# the other two before
    REMOTE_DEVICE="/dev/input/irremote"
    REMOTE_LIRCD_CONF="/etc/lircd.conf"
    REMOTE_LIRCD_ARGS=""
    TRANSMITTER="None"
    TRANSMITTER_MODULES=""
    TRANSMITTER_DRIVER=""
    TRANSMITTER_DEVICE=""
    TRANSMITTER_LIRCD_CONF=""
    TRANSMITTER_LIRCD_ARGS=""
    START_LIRCD="true"
    START_LIRCMD=""
    LOAD_MODULES=""
    LIRCMD_CONF=""
    FORCE_NONINTERACTIVE_RECONFIGURATION="false"
    From the terminal run irw
    and press keys on your remote control, if you see stuff on the terminal as you press keys, you are doing very well indead.

    Test xine works by typing xine in the terminal or create a launcher to that effect

    9. VDR 1.7.10

    First we create the daemon script
    /etc/init.d/vdr

    Code:
    sudo -s
    touch /etc/init.d/vdr
    chmod 755 /etc/init.d/vdr
    gedit /etc/init.d/vdr
    Paste the following text and save

    Code:
    #!/bin/sh
    ### BEGIN INIT INFO
    # Provides:          VDR
    # Required-Start:    $network
    # Required-Stop:     $network
    # Default-Start:     3 5
    # Default-Stop:      0 1 2 6
    # Description:       Start, Stop or Restart VDR
    ### END INIT INFO 
    
    # Shell functions sourced from /etc/rc.status:
    set -e
    
    # Reset status of this service
    # rc_reset
    
    # 
    case "$1" in
        start)
            echo -n "Starting VDR "
    		/var/bin/runvdr >> /var/log/vdr.log &
            # Remember status and be verbose
            ;;
        stop)
            echo -n "Shutting down VDR "
    		killall runvdr
    		killall vdr
            # Remember status and be verbose
            ;;
        restart)
            echo -n "Restart VDR "
            $0 stop
            $0 start 
    
            # Remember status and be quiet
            ;;
        *)
            echo "Usage: $0 {start|stop|restart}"
            exit 1
            ;;
    esac
    # rc_exit
    exit 0


    Now we will download and compile VDR 1.7.10 with Extensions-Patch-72b

    Code:
    cd /usr/local/src
    apt-get install libfreetype6-dev libfontconfig1-dev libjpeg62-dev libcap-dev libncurses5-dev libncursesw5-dev liba52-0.7.4-dev libasound2-dev
    wget ftp://ftp.tvdr.de/vdr/Developer/vdr-1.7.10.tar.bz2
    tar xivf vdr-1.7.10.tar.bz2
    ln -s vdr-1.7.10 vdr
    #wget http://www.zulu-entertainment.de/page/klick.php?d=VDR+Extensions+Patch
    
    mkdir VDR-Extentions-Patch-72
    cd VDR-Extentions-Patch-72
    wget http://wbreu.htpc-forum.de/downloads/vdr1.7.10extensions.zip
    unzip vdr1.7.10extensions.zip
    cd ../vdr
    patch -p1 < ../VDR-Extensions-Patch-72/vdr-1.7.10_extensions.diff
    # Next line is just in case you just updated your kernel,do not worry if you get an error saying ´files are the same´
    sudo cp /usr/src/linux-headers-`uname -r`/include/linux/compiler.h /usr/local/src/s2-liplianin/linux/include/linux/compiler.h 
    sudo gedit /usr/local/src/vdr/Make.config

    Next copy and paste the following Make.config

    Code:
    # $Id: Make.config by Art2003  April 2009
    
    ### The C compiler and options:
    
    CC       = gcc
    CFLAGS   = -g -O2 -Wall
    
    CXX      = g++
    CXXFLAGS = -g -O2 -Wall -Woverloaded-virtual -Wno-parentheses
    
    ifdef PLUGIN
    CFLAGS   += -fPIC
    CXXFLAGS += -fPIC
    DEFINES += -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE
    endif
    
    ### The directory environment:
    DVBDIR   = /usr/local/src/s2-liplianin/linux
    MANDIR   = /usr/local/man
    BINDIR   = /usr/bin
    
    LOCDIR   = /usr/share/locale
    PLUGINDIR= ./PLUGINS
    PLUGINLIBDIR=  /usr/lib/vdr/plugins
    VDRSCRIPTDIR = /usr/lib/vdr/scripts
    VIDEODIR = /media/video/vdr
    CONFDIR  = /etc/vdr
    
    ### The remote control:
    
    LIRC_DEVICE = /dev/lircd
    RCU_DEVICE  = /dev/input/ttyS1
    
    ## Define if you want vdr to not run as root
    #VDR_USER = vdr
    ### VDR-Extensions:
    # Comment the patches you don't need
    # DVDCHAPJUMP needs DVDARCHIVE enabled
    # DVDARCHIVE needs LIEMIEXT enabled
    # SORTRECORDS needs LIEMIEXT enabled
    # you can only enable MENUORG or SETUP
    
    #DVBSETUP = 1
    SETUP = 1
    
    ### You don't need to touch the following:
    
    ifdef DVBDIR
    INCLUDES += -I$(DVBDIR)/include
    endif
    
    ifdef ANALOGTV
    DEFINES += -DUSE_ANALOGTV
    endif
    ifdef ATSC
    DEFINES += -DUSE_ATSC
    endif
    
    ifdef CHANNELSCAN
    DEFINES += -DUSE_CHANNELSCAN
    endif
    
    ifdef CMDRECCMDI18N
    DEFINES += -DUSE_CMDRECCMDI18N
    endif
    
    ifdef CMDSUBMENU
    DEFINES += -DUSE_CMDSUBMENU
    endif
    
    ifdef CUTTERLIMIT
    DEFINES += -DUSE_CUTTERLIMIT
    endif
    ifdef CUTTERQUEUE
    DEFINES += -DUSE_CUTTERQUEUE
    endif
    
    ifdef CUTTIME
    DEFINES += -DUSE_CUTTIME
    endif
    
    ifdef DDEPGENTRY
    DEFINES += -DUSE_DDEPGENTRY
    endif
    
    ifdef DELTIMESHIFTREC
    DEFINES += -DUSE_DELTIMESHIFTREC
    endif
    
    ifdef DOLBYINREC
    DEFINES += -DUSE_DOLBYINREC
    endif
    
    ifdef DVBSETUP
    DEFINES += -DUSE_DVBSETUP
    endif
    ifdef DVDARCHIVE
    ifdef LIEMIEXT
    DEFINES += -DUSE_DVDARCHIVE
    endif
    endif
    
    ifdef DVLRECSCRIPTADDON
    DEFINES += -DUSE_DVLRECSCRIPTADDON
    endif
    
    ifdef DVLVIDPREFER
    DEFINES += -DUSE_DVLVIDPREFER
    endif
    
    ifdef DVLFRIENDLYFNAMES
    DEFINES += -DUSE_DVLFRIENDLYFNAMES
    endif
    
    ifdef EM84XX
    DEFINES += -DUSE_EM84XX
    endif
    ifdef GRAPHTFT
    DEFINES += -DUSE_GRAPHTFT
    endif
    
    ifdef HARDLINKCUTTER
    DEFINES += -DUSE_HARDLINKCUTTER
    endif
    
    ifdef JUMPPLAY
    DEFINES += -DUSE_JUMPPLAY
    endif
    
    ifdef LIEMIEXT
    DEFINES += -DUSE_LIEMIEXT
    endif
    
    ifdef LIRCSETTINGS
    DEFINES += -DUSE_LIRCSETTINGS
    endif
    ifdef LNBSHARE
    DEFINES += -DUSE_LNBSHARE
    endif
    
    ifdef MAINMENUHOOKS
    DEFINES += -DUSE_MAINMENUHOOKS
    endif
    
    ifdef MENUORG
    DEFINES += -DUSE_MENUORG
    else
    ifdef SETUP
    DEFINES += -DUSE_SETUP
    endif
    endif
    
    ifdef NOEPG
    DEFINES += -DUSE_NOEPG
    endif
    
    ifdef OSDMAXITEMS
    DEFINES += -DUSE_OSDMAXITEMS
    endif
    
    ifdef PINPLUGIN
    DEFINES += -DUSE_PINPLUGIN
    endif
    
    ifdef PLUGINMISSING
    DEFINES += -DUSE_PLUGINMISSING
    endif
    
    ifdef PLUGINPARAM
    DEFINES += -DUSE_PLUGINPARAM
    endif
    
    ifdef ROTOR
    DEFINES += -DUSE_ROTOR
    endif
    
    ifdef SETTIME
    DEFINES += -DUSE_SETTIME
    endif
    ifdef SOFTOSD
    DEFINES += -DUSE_SOFTOSD
    endif
    
    ifdef SOURCECAPS
    DEFINES += -DUSE_SOURCECAPS
    endif
    
    ifdef SORTRECORDS
    ifdef LIEMIEXT
    DEFINES += -DUSE_SORTRECORDS
    endif
    endif
    
    ifdef TIMERCMD
    DEFINES += -DUSE_TIMERCMD
    endif
    
    ifdef TIMERINFO
    DEFINES += -DUSE_TIMERINFO
    endif
    ifdef VALIDINPUT
    DEFINES += -DUSE_VALIDINPUT
    endif
    
    ifdef VOLCTRL
    DEFINES += -DUSE_VOLCTRL
    endif
    
    ifdef WAREAGLEICON
    DEFINES += -DUSE_WAREAGLEICON
    endif
    
    ifdef YAEPG
    DEFINES += -DUSE_YAEPG
    endif
    
    ifdef PARENTALRATING
    DEFINES += -DUSE_PARENTALRATING
    endif
    
    ifdef STREAMDEVEXT
    DEFINES += -DUSE_STREAMDEVEXT
    endif
    And final bunch of commands for VDR1.7.8
    Code:
    sudo -s
    mkdir -p /media/video/vdr
    mkdir -p /usr/lib/vdr/plugins
    mkdir -p /usr/lib/vdr/scripts
    mkdir -p /etc/vdr/plugins
    make
    make install
    cp -a svdrpsend.pl /usr/bin
    cp *.conf /etc/vdr/
    10. VDR Plugins and automation (including CCcam scripts)

    Have a look here for patches:

    and here in German (many more plugins)

    Back to the terminal!!:

    Code:
    sudo -s
    gedit /var/bin/runvdr
    Code:
    export LANG=en_EN
    export LC_COLLATE=en_EN
    
    PATH=/usr/local/bin:$PATH
    
    VDRPRG="/usr/bin/vdr"
    VDRCMD="/usr/bin/vdr -c /etc/vdr --lirc --no-kbd -E /var/vdr -l 3 \
            -P sc \
            -P femon \
            -P setup \
            -P skinreel \
            -P xine \
            -P wirbelscan \
            -u root \
            $*"
    
    KILL="/usr/bin/killall -q -TERM"
    
    # Detect whether the DVB driver is already loaded
    # and return 0 if it *is* loaded, 1 if not:
    DriverLoaded()
    {
      return 1
    }
    
    # Load all DVB driver modules needed for your hardware:
    LoadDriver ()
    {
    
      return 0
    
    }
    
    # Unload all DVB driver modules loaded in LoadDriver():
    UnloadDriver ()
    {
    
      return 0
    
    }
    
    # Load driver if it hasn't been loaded already:
    if ! DriverLoaded; then
       LoadDriver
       fi
    
    while (true) do
          eval "$VDRCMD"
          if test $? -eq 0 -o $? -eq 2; then exit; fi
          echo "`date` reloading DVB driver"
          $KILL $VDRPRG
          sleep 10
          UnloadDriver
          LoadDriver
          echo "`date` restarting VDR"
          done
    Code:
    chmod 755 /var/bin/runvdr

    (optional)Femon - Signal Information plugin http://www.linuxtv.org/vdrwiki/index.php/Femon-plugin
    Code:
    cd /usr/local/src/vdr/PLUGINS/src
    wget http://www.saunalahti.fi/~rahrenbe/vdr/femon/files/vdr-femon-1.7.2.tgz
    tar xzvf vdr-femon-1.7.2.tgz
    ln -s femon-1.7.2 femon
    cd /usr/local/src/vdr/
    make plugins
    make install
    (optional)Streamdev plugin (needed only if you plan to use XBMC) http://streamdev.vdr-developer.org/
    Add to Make.config above the following line (after SETUP = 1 )
    Code:
    STREAMDEVEXT = 1
    Now recompile VDR with this extension support:

    Code:
    cd /usr/local/src/vdr
    sudo make clean && make 
    cd /usr/local/src/vdr/PLUGINS/src
    cvs -d:pserver:anoncvs@vdr-developer.org:/var/cvsroot login
    ###Simply hit ENTER when asked for a password.
    cvs -d:pserver:anoncvs@vdr-developer.org:/var/cvsroot co -D 2/18/09 streamdev
    sudo mkdir -p /etc/vdr/plugins/streamdev
    cd streamdev
    sudo cp streamdev/streamdevhosts.conf /etc/vdr/plugins/streamdev
    sudo cp streamdev/streamdevhosts.conf /etc/vdr/vdrsvdrphosts.conf
    cd /usr/local/src/vdr/
    make plugins
    make install
    (optional)Enigma skin (looking a bit like a Dreambox with picon...)
    Code:
    cd /usr/local/src/vdr/PLUGINS/src
    wget http://andreas.vdr-developer.org/enigmang/download/vdr-skinenigmang-0.0.6.tgz
    tar xivf vdr-skinenigmang-0.0.6.tgz
    ln -s skinenigmang-0.0.6 skinenigmang
    cd /usr/local/src/vdr/
    make plugins
    make install
    mkdir -p /etc/vdr/plugins/skinenigmang
    cd /etc/vdr/plugins
    wget http://andreas.vdr-developer.org/enigmang/download/skinenigmang-logos-xpm-hi-20070702.tgz
    wget http://andreas.vdr-developer.org/enigmang/download/skinenigmang-channellogos-xpm-hi-20070702.tgz
    wget http://andreas.vdr-developer.org/enigmang/download/skinenigmang-fonts-20080225.tgz
    tar xzvf skinenigmang-logos-xpm-hi-20070702.tgz
    tar xzvf skinenigmang-channellogos-xpm-hi-20070702.tgz
    tar xzvf skinenigmang-fonts-20080225.tgz
    Optional - Rotor Plugin - To move a dish and store positions, gotoX, etc
    REMOVE in Make.config (if it exists)the line with: * see note at foot of page
    ROTOR = 1

    Code:
    cd /usr/local/src/vdr
    #patch -p1 < ../VDR-Extensions-Patch-72/vdr-1.7.8-ext_gotox.diff
    cd PLUGINS/src
    wget http://ubuntuforums.org/attachment.php?attachmentid=109895&stc=1&d=1239814342
    mv attachment.php?attachmentid=109895 rotor-0.1.4S2API.tar.gz
    tar zxvf rotor-0.1.4S2API.tar.gz
    ln -s rotor-0.1.4S2API rotor
    cd ../../
    make plugins
    make install

    sc TRUNK - softcam plugin (Needed for CCcam)
    Code:
    cd /usr/local/src/vdr/PLUGINS/src
    apt-get install libssl-dev 
    hg clone -r trunk http://85.17.209.13:6100/sc
    cd /usr/local/src/vdr/
    make plugins
    make install
    mkdir -p /etc/vdr/plugins/sc
    (Optional) Setup plugin (needed if you want CCcam info or ecm.info or to be able to run bash scripts from VDR)
    Make sure you have applied the Extensions patch (tested with 70) to VDR and that there is a line in Make.config
    that reads:
    SETUP = 1

    Code:
    cd /usr/local/src/vdr/PLUGINS/src
    sudo wget http://www.zulu-entertainment.de/files/vdr-setup/vdr-setup-0.3.1-zulu-edition.tgz
    sudo tar zxvf vdr-setup-0.3.1-zulu-edition.tgz
    sudo ln -s setup-0.3.1-zulu-edition setup
    cd setup
    sudo mkdir /etc/vdr/plugins/setup
    cd /usr/local/src/vdr
    sudo make plugins
    sudo make install
    Now we create a sample menu configuration file
    Code:
    sudo gedit /etc/vdr/plugins/setup/vdr-menu.xml
    Code:
    <menus suffix="...">
        <system name="Schedule" />
        <system name="Channels" />
        <system name="Timers" />
        <system name="Recordings" />
        <menu name="System">
            <plugin name="systeminfo" />
            <system name="Setup" />
            <system name="Commands" />
            <plugin name="setup" />
        </menu>
        <menu name="CCcam Info">
            <command name="EMC info" execute="cat /tmp/ecm0.info" />
            <command name="CCcam smartcard info" execute="echo entitlements | nc localhost 16000" />
            <command name="CCcam provider info" execute="echo providers | nc localhost 16000" />
            <command name="CCcam online servers" execute="echo servers | nc localhost 16000" />
            <command name="CCcam online shares" execute="echo shares | nc localhost 16000" />
            <command name="CCcam active clients" execute="echo activeclients | nc localhost 16000" />
            <command name="CCcam online clients" execute="echo clients | nc localhost 16000" />
            <command name="QUIT vdr" execute="/etc/init.d/vdr stop" />
            <command name="RESTART CCcam" execute="/etc/init.d/cccam restart" />
            <command name="STOP CCcam" execute="/etc/init.d/cccam stop" />
            <command name="START CCcam" execute="/etc/init.d/cccam start" />
            <command name="Whose card?" execute="cat /tmp/ecm0.info|grep address:" />
            <command name="CCcam info" execute="echo info | nc localhost 16000" />
            <command name="CCcam config" execute="cat /var/etc/CCcam.cfg" />
        </menu>
        <plugin name="satlist" />
        <plugin name="femon" />
    </menus>
    And ...

    Code:
    sudo gedit /etc/vdr/plugins/setup/vdr-setup.xml
    Code:
    <setup sysconfigFile="/etc/sysconfig" bootLinux="sudo /sbin/reboot" VDRlibDir="/usr/lib/vdr/plugins">
        <plugins sysconfig="PLUGINLIST">
            <plugin name="setup" info="setup" active="yes" />
        </plugins>
        <menus>
            <menu name="VDR">
                <menu name="OSD" help2="setup_osd.hlp" system="OSD" />
                <menu name="EPG" help2="setup_epg.hlp" system="EPG" />
                <menu name="DVB" help2="setup_dvb.hlp" system="DVB" />
                <menu name="LNB" help2="setup_lnb.hlp" system="LNB" />
                <menu name="CAM" help2="setup_cicam.hlp" system="CAM" />
                <menu name="Menu Edit" help2="setup_editmenu.hlp" system="VDRMenu" />
                <menu name="Recording" help2="setup_record.hlp" system="Record" />
                <menu name="Replay" help2="setup_replay.hlp" system="Replay" />
                <menu name="Miscellaneous" help2="setup_misc.hlp" system="Misc" />
                <menu name="Plugins" system="Plugins" />
            </menu>
            <menu name="Plugins">
                <menu name="Plugins" system="Plugins" />
                <menu name="Plugins activate / deactivate" help2="setup_actplugins.hlp" system="ActPlugins" />
            </menu>
            <menu name="System">
                <entry name="Use Sysconfig" sysconfig="USE_SYSCONFIG" type="bool" value="off" />
            </menu>
        </menus>
    </setup>

    (Optional) Skin Reel - VDR Skin
    Code:
    cd /usr/local/src/vdr/PLUGINS/src
    wget http://rsync16.de.gentoo.org/files/vdr-skinreel/vdr-skinreel-0.0.1.tgz
    tar xzvf vdr-skinreel-0.0.1.tgz
    ln -s skinreel-0.0.1 skinreel
    cd skinreel
    sed -i Makefile -e 's/VDRVERSION/APIVERSION/g'
    cp -r skinreel /etc/vdr/plugins/
    cd /usr/local/src/vdr/
    make plugins
    make install
    WIRBEL SCAN - PLUGIN to scan channels VDR
    Download vdr-wirbelscan-0.0.4b_20090416.tgz to /usr/local/src/vdr/PLUGINS/src
    (The file is available as an attachment in this thread)
    Code:
    cd /usr/local/src/vdr/PLUGINS/src
    # It does not scan DVB-S2 channels
    tar zxvf vdr-wirbelscan-0.0.4b_20090416.tgz 
    ln -s wirbelscan-0.0.4b_20090416  wirbelscan 
    cd /usr/local/src/vdr/
    make plugins
    make install
    # Next line verifies the plugin is in its place it if shows no file then copy it
    ls /usr/lib/vdr/plugins/libvdr-wirbelscan.so.1.7.8
    #manually from /usr/locar/src/vdr/PLUGINGS/src/wirbelscan adding the suffix .1.7.8
    XINE - VDR Xine plugin, needed for OXINE to connect to VDR
    Code:
    cd /usr/local/src/vdr/PLUGINS/src
    # vdr-xine-0.9.3 or later are compatible with VDR 1.7.8
    wget http://home.vrweb.de/rnissl/vdr-xine-0.9.3.tgz
    tar zxvf vdr-xine-0.9.3.tgz
    ln -s xine-0.9.3 xine
    cd /usr/local/src/vdr/PLUGINS/xine/data
    mkdir -p /etc/vdr/plugins/xine/
    cp *.mpg /etc/vdr/plugins/xine/
    cd /usr/local/src/vdr/
    make plugins
    make install
    For CCcam first lets create the scripts that will run it (DO NOT RUN CCcam.x86 from the command line!)

    Code:
    sudo -s
    touch /etc/init.d/cccam
    chmod 755 /etc/init.d/cccam
    gedit /etc/init.d/cccam
    Code:
    #!/bin/sh
    ### BEGIN INIT INFO
    # Provides:          CCcam
    # Required-Start:    $network
    # Required-Stop:     $network
    # Default-Start:     3 5
    # Default-Stop:      0 1 2 6
    # Description:       Start, Stop or Restart the CCcam softcam
    ### END INIT INFO 
    
    # Shell functions sourced from /etc/rc.status:
    set -e
    
    # Reset status of this service
    # rc_reset
    
    # 
    case "$1" in
        start)
            echo -n "Starting CCcam "
    	/var/bin/run.sh &
            # Remember status and be verbose
            ;;
        stop)
            echo -n "Shutting down CCcam "
    		killall run.sh
    		killall CCcam.x86
            # Remember status and be verbose
            ;;
        restart)
            echo -n "Restart CCcam "
            $0 stop
            $0 start 
            # Remember status and be quiet
            ;;
        *)
            echo "Usage: $0 {start|stop|restart}"
            exit 1
            ;;
    esac
    # rc_exit
    exit 0
    You will need CCcam.x86 in /var/bin but this tutorial will not cover where to obtain such a file if it really exists!

    Code:
    touch /var/bin/run.sh
    chmod 755 /var/bin/run.sh
    gedit /var/bin/run.sh
    And paste there the following code (and save it)
    Code:
    #!/bin/sh
    cd /var/bin
    gcc -march=pentium -mmmx -fomit-frame-pointer -fexpensive-optimizations -funroll-loops -fPIC -shared -o ca.so ca.c -ldl
    LD_PRELOAD=./ca.so ; export LD_PRELOAD
    while [ 1 ];
    do
     ./CCcam.x86 -d > /var/log/CCcam.log
    done

    Finally the CCcam wrapper and setting CCcam to start automatically upon booting, especially handy if you are running a server
    as if the process CCcam.x86 dies it will be automatically restarted

    Code:
    touch /var/bin/ca.c
    chmod 755 /var/bin/ca.c
    ln -s /etc/init.d/cccam /etc/rc2.d/S50cccam
    sudo cp /usr/local/src/vdr/PLUGINS/src/sc/contrib/cccam_ca.c /var/bin/ca.c


    11. OXINE - The cherry on the cake

    OXINE can be used as a VDR FRONTEND (able to play DVDs, Music, Video files) already patched for VDR and in a .deb format (tested under Ubuntu 8.10) Make sure you installed the XINE plugin before (see instructions above in the VDR-plugins section)
    Bear in mind oxine has no vdpau support as such but since it can launch external commands (like bash scripts) it is possible to configure oxine to call mplayer or xine with the right set of parameters to use vdpau. I have written a few
    scripts that make all this work transparently but they are not part of this tutorial.

    The basic script to have xine with vdpau using oxine as the frontend is:
    sudo gedit /usr/sbin/tvoxi.sh
    Code:
    #!/bin/sh
    sudo /etc/init.d/oxine stop
    /usr/bin/xine -f --no-splash --no-gui -V vdpau --post vdr_video --post vdr_audio "vdr:/tmp/vdr-xine/stream#demux:mpeg_pes"
    while pidof xine >/dev/null;do
    pidof vdr >/dev/null || killall -9 xine ;
    sleep 10;
    done
    sudo killall Thunar nautilus
    
    sudo /etc/init.d/oxine start
    sudo touch /etc/init.d/oxine
    sudo chmod 755 /etc/init.d/oxine
    sudo gedit /etc/init.d/oxine

    Code:
    #!/bin/sh
    ### BEGIN INIT INFO
    # Provides:          oxine
    # Required-Start:    $network
    # Required-Stop:     $network
    # Default-Start:     2
    # Default-Stop:      0 1 2 6
    # Description:       Start, Stop or Restart the oxine softcam
    ### END INIT INFO 
    
    # Shell functions sourced from /etc/rc.status:
    set -e
    
    # Reset status of this service
    # rc_reset
    
    # 
    case "$1" in
        start)
            echo -n "Starting Oxine "
    	oxine &
            ;;
        stop)
            echo -n "Shutting down Oxine "
    		killall oxine
            ;;
        restart)
            echo -n "Restart Oxine "
            $0 stop
            $0 start 
            ;;
        *)
            echo "Usage: $0 {start|stop|restart}"
            exit 1
            ;;
    esac
    # rc_exit
    exit 0
    For vdpau in mainmenu.xml replace later on the Watch TV command with the following:
    Code:
        <title>Watch TV</title>
        <action type="shellcommand" parameter="/usr/sbin/tvoxi.sh >/dev/null" />
     </button>


    Now, we are going to install a special oxine.deb patched with VDR support (but not vdpau other than as external commands)
    Download oxine-vdr-patched_0.7.1-1_i386.deb
    NOTE:These config files assume you are logged on as user tv
    If this is different please amend accordingly!!
    Code:
    sudo apt-get install vorbis-tools flac mount
    sudo apt-get build-dep oxine
    sudo dpkg -i oxine-vdr-patched_0.7.1-1_i386.deb
    mkdir ~/.oxine
    cd /usr/local/src/ffmpeg
    sudo make install
    Alternative installation for oxine is the .deb does not work for you, compile your own:
    Code:
    cd /usr/local/src
    sudo -s
    apt-get install libfaac-dev libfaad-dev curl imagemagick
    wget http://downloads.sourceforge.net/project/oxine/oxine/0.7.1/oxine-0.7.1.tar.gz?use_mirror=switch
    tar zxvf oxine-0.7.1.tar.gz
    cd oxine-0.7.1
    ./configure --prefix=/usr --enable-vdr --disable-joystick --without-imagemagick --disable-dependency-tracking --disable-weather --disable-shoutcast --disable-youtube --without-curl     
    make
    make install
    Notes:

    a) If oxine gives you an error about PNG files then you probably need a different ffmpeg version. This is the thing with downloading SVN sources
    sometimes something is broken temporarily. </p>
    b) If you are trying this on Ubuntu 9.04 save yourself a lot of hassle and try kaffeine first, if you can get any free to air channels to work there, <BR>
    then this guide for VDR is for you, otherwise do not bother.
    Code:
    Oxine config files (to be placed in ~/.oxine/ )
    Are an attachment to this post.
    VDR screenshots

    DOWNLOAD HERE my /usr/local/src/vdr-1.7.9 with all the plugins and patches you (probably) need

    NOTES:
    If you have freezing with HD channels check the following:
    a) in /etc/X11/xorg.conf make sure Option "Composite" "Disabled"
    b) swith to a SD channel, run this command and then try again the HD channel:

    Code:
    sudo sh -c "echo performance > /sys/devices/system/cpu/cpu0/cpufreq/scaling_governor"

    Do you want to own a house in the Spanish Tuscany?
    Attached Images Attached Images
    Attached Files Attached Files
    Last edited by art2003; February 1st, 2012 at 01:38 PM. Reason: LATEST NEWS

  2. #2
    Join Date
    Apr 2009
    Beans
    4

    Re: HTPC DVB-S2 VDR 1.7.5 CCcam Howto

    when I try to build vdr (i.e. run make in /usr/local/src/vdr) I get the error below; note that I'm running Ubuntu 9.04 64bit - anybody has idea what could be wrong?

    Code:
    g++ -g -O2 -Wall -Woverloaded-virtual -Wno-parentheses -c -DUSE_SETUP -DREMOTE_KBD -DLIRC_DEVICE=\"/dev/lircd\" -DRCU_DEVICE=\"/dev/input/ttyS1\" -D_GNU_SOURCE -D_FILE_OFFSET_BITS=64 -D_LARGEFILE_SOURCE -D_LARGEFILE64_SOURCE -DVIDEODIR=\"/media/video/vdr\" -DCONFDIR=\"/etc/vdr\" -DPLUGINDIR=\"/usr/lib/vdr/plugins\" -DLOCDIR=\"/usr/share/locale\" -I/usr/include/freetype2 -I/usr/local/src/s2-liplianin/linux/include dvbdevice.c
    In file included from /usr/include/netinet/in.h:24,
                     from /usr/include/arpa/inet.h:23,
                     from config.h:13,
                     from channels.h:13,
                     from device.h:13,
                     from dvbdevice.h:15,
                     from dvbdevice.c:10:
    /usr/include/stdint.h:41: error: conflicting declaration ‘typedef long int int64_t’
    /usr/include/linux/types.h:98: error: ‘int64_t’ has a previous declaration as ‘typedef __s64 int64_t’
    /usr/include/stdint.h:56: error: conflicting declaration ‘typedef long unsigned int uint64_t’
    /usr/include/linux/types.h:96: error: ‘uint64_t’ has a previous declaration as ‘typedef __u64 uint64_t’
    In file included from /usr/include/sys/uio.h:24,
                     from /usr/include/sys/socket.h:28,
                     from /usr/include/netinet/in.h:25,
                     from /usr/include/arpa/inet.h:23,
                     from config.h:13,
                     from channels.h:13,
                     from device.h:13,
                     from dvbdevice.h:15,
                     from dvbdevice.c:10:
    /usr/include/sys/types.h:46: error: conflicting declaration ‘typedef __loff_t loff_t’
    /usr/include/linux/types.h:30: error: ‘loff_t’ has a previous declaration as ‘typedef __kernel_loff_t loff_t’
    /usr/include/sys/types.h:62: error: conflicting declaration ‘typedef __dev_t dev_t’
    /usr/include/linux/types.h:13: error: ‘dev_t’ has a previous declaration as ‘typedef __kernel_dev_t dev_t’
    In file included from /usr/include/sys/types.h:133,
                     from /usr/include/sys/uio.h:24,
                     from /usr/include/sys/socket.h:28,
                     from /usr/include/netinet/in.h:25,
                     from /usr/include/arpa/inet.h:23,
                     from config.h:13,
                     from channels.h:13,
                     from device.h:13,
                     from dvbdevice.h:15,
                     from dvbdevice.c:10:
    /usr/include/time.h:105: error: conflicting declaration ‘typedef void* timer_t’
    /usr/include/linux/types.h:22: error: ‘timer_t’ has a previous declaration as ‘typedef __kernel_timer_t timer_t’
    In file included from /usr/include/sys/uio.h:24,
                     from /usr/include/sys/socket.h:28,
                     from /usr/include/netinet/in.h:25,
                     from /usr/include/arpa/inet.h:23,
                     from config.h:13,
                     from channels.h:13,
                     from device.h:13,
                     from dvbdevice.h:15,
                     from dvbdevice.c:10:
    /usr/include/sys/types.h:204: error: conflicting declaration ‘typedef long unsigned int u_int64_t’
    /usr/include/linux/types.h:97: error: ‘u_int64_t’ has a previous declaration as ‘typedef __u64 u_int64_t’
    In file included from /usr/include/sys/types.h:220,
                     from /usr/include/sys/uio.h:24,
                     from /usr/include/sys/socket.h:28,
                     from /usr/include/netinet/in.h:25,
                     from /usr/include/arpa/inet.h:23,
                     from config.h:13,
                     from channels.h:13,
                     from device.h:13,
                     from dvbdevice.h:15,
                     from dvbdevice.c:10:
    /usr/include/sys/select.h:78: error: conflicting declaration ‘typedef struct fd_set fd_set’
    /usr/include/linux/types.h:12: error: ‘fd_set’ has a previous declaration as ‘typedef struct __kernel_fd_set fd_set’
    In file included from /usr/include/sys/uio.h:24,
                     from /usr/include/sys/socket.h:28,
                     from /usr/include/netinet/in.h:25,
                     from /usr/include/arpa/inet.h:23,
                     from config.h:13,
                     from channels.h:13,
                     from device.h:13,
                     from dvbdevice.h:15,
                     from dvbdevice.c:10:
    /usr/include/sys/types.h:248: error: conflicting declaration ‘typedef __blkcnt64_t blkcnt_t’
    /usr/include/linux/types.h:124: error: ‘blkcnt_t’ has a previous declaration as ‘typedef long unsigned int blkcnt_t’
    make: *** [dvbdevice.o] Error 1
    EDIT: seems that this is a known bug in a debian package, see http://www.mail-archive.com/debian-k.../msg44521.html

    I don't know how to solve it though
    Last edited by phjr; April 24th, 2009 at 02:07 PM.

  3. #3
    Join Date
    Aug 2005
    Location
    European Union
    Beans
    174
    Distro
    Lubuntu 12.04 Precise Pangolin

    Re: HTPC DVB-S2 VDR 1.7.5 CCcam Howto

    You don't really need 64bits for this project, once you install vdpau cpu utilization on 32bits ubuntu is about 15% watching encrypted hd channels... I will add a vdpau chapter to this howto when I get the time

  4. #4
    Join Date
    Jun 2008
    Beans
    13

    Re: HTPC DVB-S2 VDR 1.7.5 CCcam Howto

    Hey man, great howto! I am gonna try this tomorrow on my 9.04 box with xbmc already running on it. Only thing is, that I do have a KNC ONE DVB-C card instead of DVB-S. Is there anything special or important to consider when running VDR for DVB-C. I guess the main difference is the channel scan section .... anything else I need to adjust?

    boba

  5. #5
    Join Date
    Aug 2005
    Location
    European Union
    Beans
    174
    Distro
    Lubuntu 12.04 Precise Pangolin

    Re: HTPC DVB-S2 VDR 1.7.5 CCcam Howto

    Should work ok, obviously you need to get your own card drivers so that you have /dev/dvb/adapter0 and those drivers be S2-API compliant.

    You can use wierbel-scan to scan for DVB-C channels. The attachment is on this thread

    Good luck!

  6. #6
    Join Date
    Jun 2008
    Beans
    13

    Re: HTPC DVB-S2 VDR 1.7.5 CCcam Howto

    Quote Originally Posted by art2003 View Post
    Should work ok, obviously you need to get your own card drivers so that you have /dev/dvb/adapter0 and those drivers be S2-API compliant.

    You can use wierbel-scan to scan for DVB-C channels. The attachment is on this thread

    Good luck!
    hey art,

    thanks for the reply.
    I got vdr now basically up and running. I got trouble compiling ca.c though. I am on Jaunty, and get the following error when trying to compile:

    $ gcc -O -fbuiltin -fomit-frame-pointer -fPIC -shared -o ca.so ca.c -ldl
    ca.c:106: error: expected â,â or â;â before â{â token
    ca.c: In function âcactlâ:
    ca.c:233: error: expected expression before â<â token

    any ideas?

    boba

  7. #7
    Join Date
    Apr 2009
    Beans
    1

    Re: HTPC DVB-S2 VDR 1.7.5 CCcam Howto

    Awsome tutorial, i have one problem that i could not sort out though , maybe someone has a solution: xine-lib has no png support, but ffmpeg is able to open png's. I've been trying to find a solution but with no luck yet.

  8. #8
    Join Date
    Apr 2009
    Beans
    3

    Re: HTPC DVB-S2 VDR 1.7.5 CCcam Howto

    Hi All,

    I will try to install this vdr 1.7.5 with Cccam to share with my dreambox 500-s..

    • my config:
    • - Motherboard: Asus P5N7A-VM: Geforce 9300 IGP
    • - CPU : Intel Core 2 Duo E5200
    • - Cpu-koeler: Scythe Ninja Mini
    • - Memory : Kingston 2GB PC2-6400
    • - DVD-drive : Samsung only DVD player/writer
    • - Harddisk : Samsung Spinpoint F1 DT HD103UJ, 1TB (only for UBUNTU 9.04)
    • - Harddisk: Western digital Caviar Green WD10EACS 1Tb (only for Vista/windows7)
    • - Budgetcard : Hauppauge WinTV NOVA-HD-S2
    • - Case: Silverstone SST-LC17B
    • - Power: Corsair CMPSU-450VX


    my target is on linux (Ubuntu 9.04) to create a system to watch HD channels from satelite and watch .mkv films with XvMC ....

    This is my first pc with linux...

    ++ ubuntu 9.04 has been installed...
    ++ now try to install vdr 1.7.5
    Last edited by serkan61; April 30th, 2009 at 07:22 PM.

  9. #9
    Join Date
    Apr 2009
    Beans
    3

    Re: HTPC DVB-S2 VDR 1.7.5 CCcam Howto

    I cannot install Xine-lib, if I type "make" I get error see below...

    If make fails then edit gedit /usr/local/src/xine-lib-1.2/src/audio_dec Look for -ldts_pic and add -lm after it.

    This is a directory /usr/local/src/xine-lib-1.2/src/audio_dec ???

    any idea???

    7. Xine-Lib 1.2 CVS:

    Code:
    cd /usr/local/src
    apt-get install libcdio-dev libvcdinfo-dev
    hg clone http://hg.debian.org/hg/xine-lib/xine-lib-1.2
    #You could instead download a tar ball, see next line but then you need patching or vdr-xine won´t compile
    #wget http://home.vrweb.de/~rnissl/xine-lib-cvs-20090412200000.tar.bz2
    tar jxvf xine-lib-cvs-20090412200000.tar.bz2
    wget http://www8.mplayerhq.hu/MPlayer/releases/codecs/essential-20071007.tar.bz2
    tar xivf essential-20071007.tar.bz2
    mv essential-20071007 /usr/local/lib/win32
    ln -s /usr/local/lib/win32 /usr/local/lib/codecs
    cd xine-lib
    ./autogen.sh --prefix=/usr --with-external-ffmpeg --disable-dxr3 --enable-w32dll --with-w32-path=/usr/local/lib/win32
    make
    make install
    ldconfig -v


    Code:
    collect2: ld returned 1 exit status
    make[4]: *** [xineplug_decode_ff.la] Error 1
    make[4]: Leaving directory `/usr/local/src/xine-lib/src/combined/ffmpeg'
    make[3]: *** [all] Error 2
    make[3]: Leaving directory `/usr/local/src/xine-lib/src/combined/ffmpeg'
    make[2]: *** [all-recursive] Error 1
    make[2]: Leaving directory `/usr/local/src/xine-lib/src/combined'
    make[1]: *** [all-recursive] Error 1
    make[1]: Leaving directory `/usr/local/src/xine-lib/src'
    make: *** [all-recursive] Error 1
    root@htpc-desktop:/usr/local/src/xine-lib#

  10. #10
    Join Date
    May 2005
    Beans
    113

    Re: HTPC DVB-S2 VDR 1.7.5 CCcam Howto

    @Art2003
    Did you patch xinelib to have vdpau support?

    I tried this version:

    svn co svn://jusst.de/xine-vdpau #it includes the win32 codecs

    With tis package I don't need ffmpeg at all, but vdr-xine plugin doesn't compile.

    I'm looking forward to know how you managed vdpau.

Page 1 of 33 12311 ... LastLast

Tags for this Thread

Bookmarks

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •