HowTo: HDHomerun + TVHeadend

Door Durandal op maandag 19 augustus 2013 05:00 - Reacties (6)
Categorie: -, Views: 4.897

Ik heb onlangs de HDHomerun HDHR3-EU gekocht, een dubbele digitale TV/Radio tuner voor DVB-C en DVB-T.

Review: HDHomerun HDHR3-EU

De HDH moet onder TVHeadend gaan draaien, een PVR backend dat draait onder linux, maar hij zou ook moeten werken met MythTV.
Verder gaat het hier om de ongecodeerde digitale kanalen die UPC sinds 3 april 2013 doorgeeft. Ik begrijp dat het ook mogelijk is gecodeerde kanalen te bekijken met een card server maar voor die details moet je je vooralsnog op het forum melden.


Mijn setup
  • UPC kabeltelevisie (analoog pakket met nu digitale zenders)
  • Ubuntu 12.04LTS server
  • HDHomerun met firmware 20130328
  • TVHeadend 3.4.27
  • (op elke tv) XBMC op de Raspberry Pi met OpenElec
Heb je dezelfde setup, dan kan je de HDH installatie overnemen. Wijk je af dan kan je dit als leidraad gebruiken en bij vragen kan je terecht op het Digitale Kabel TV op de PC forum of het TVHeadend forum.

Ik ga er van uit dat je Ubuntu draait en hier een beetje bekend mee bent, en dat TVHeadend al geinstalleerd is. XBMC op de Pi laat ik voorlopig buiten beschouwing.


Spoedcursus DVB

Voor de mensen uit het analoge kabel tijdperk, zoals ik, eerst even de belangrijkste DVB termen uitleggen. Digitaal is toch net even wat anders en het helpt als je weet wat je doet.

Een gedeelte van de analoge kabel is tegenwoordig digitaal. Waar in het analoge spectrum de analoge zenders ieder op een eigen draaggolf naast elkaar zitten, zitten in de digitale band Muxen, of multiplexes, naast elkaar. Een Mux is een verzameling digitale zenders die in de tijd gemultiplexed zijn. Dit heeft tot voordeel dat er gelijkmatiger met de bandbreedte wordt omgesprongen; Aangezien er (MPEG2) compressie wordt gebruikt en de ene zender dan soms minder bandbreedte nodig heeft waar de andere zender meer nodig heeft, wordt de bandbreedte netjes uitgemiddeld.
Gevolg van die tijd multiplexing is dat de zenders in een mux allemaal dezelfde draaggolf frequentie hebben. De zenders in DVB heeten overigens Services.
Verder bevatten de muxes metadata, zoals de frequentie van andere muxes en EPG informatie.

Mux (multiplex, ts) - verzameling services op een gezamelijke frequentie
ts - transport stream
Service (channel) - radio of TV zender
Service ID (SID) - unieke service nummer
Network ID (NIT, NID, netwerknummer) - je provider gebruikt deze om Muxes te groeperen in TV regio's
QAM64/128/256 - Modulatietypen
Symbolrate (datarate, rate) - snelheid van de datastream [Baud, of (K)B/s].
EPG - Electronic program guide, de TV Gids.

Een goede site met actuele DVB gegevens van alle providers (?) om er naast te houden is DTV Monitor.
Hier zijn alle bovenstaande gegevens te achterhalen en vindt je ook zaken als codering metadata en screenshots, ook voor Ziggo.

UPC heeft op dit moment de volgende defaults. Heb je ziggo of een andere provider dan moet je zelf even zoeken.
Network IDs: Noord Holland 43136, Gelderland 43142, Flevoland 43138, Brabant 43144, Friesland 43140, Zuid Holland 43146
QAM: 256
Symbolrate: 6900KB/s
Start mux (frequentie): 164000 KHz


Na deze korte uitstap kan de installatie van start gaan. In het Engels, omdat dat zo in mijn eigen installatie notities staat.


Voorbereiding

Voorwaarden:
  • TVHeadend moet al geinstalleerd zijn.
  • vervang hieronder mijn favoriete mcedit editor door jouw favoriet
.
Wil je mcedit gebruiken en je hebt deze niet doe dan:
code:
1
2
sudo apt-get update
sudo apt-get install mc



Installation HDHomerun with TVHeadend
  • connect the HDH to the network and turn it on
  • you can update the firmware under windows, if desired. If so, turn off the windows firewall(s), download the windows setup and install. This will upgrade the firmware.
# On Linux (console)
code:
1
sudo -s


# stop applications using the kernel module (tvheadend, mythtv etc), if available
code:
1
2
3
service tvheadend stop 
service mythtv-backend stop
service dvbhdhomerun-utils stop


# install dvbhdhomerun drivers
# see http://sourceforge.net/ap...merun/wiki/UbuntuPackages
code:
1
2
3
add-apt-repository ppa:tfylliv/dvbhdhomerun 
apt-get update 
apt-get install dvbhdhomerun-dkms dvbhdhomerun-utils hdhomerun-config


# verify that all 3 modules are loaded
code:
1
modprobe -l *homerun*
updates/dkms/dvb_hdhomerun.ko
updates/dkms/dvb_hdhomerun_fe.ko
updates/dkms/dvb_hdhomerun_core.ko


# discover your device ID (or else it's on the bottom sticker of your HDH)
code:
1
hdhomerun_config discover


# if desired you can also use this command to scan channels or upgrade the firmware
# the below code is to download and install the 20130328 firmware.
# check the linux download page to find the current one
code:
1
2
wget -O /tmp/fw.bin http://download.silicondust.com/hdhomerun/hdhomerun3_dvbtc_firmware_20130328.bin
hdhomerun_config <device ID> upgrade /tmp/fw.bin


# edit /etc/dvbhdhomerun and replace with your correct device ID from the bottom sticker on the HDH
code:
1
mcedit /etc/dvbhdhomerun
-----------------------------------
[1210E3DC-0]
tuner_type=DVB-C
use_full_name=true

[1210E3DC-1]
tuner_type=DVB-C
use_full_name=true
-----------------------------------


# add delay for starting TVHeadend to allow the dvb driver to initialize
# set TVH_DELAY to 20.
code:
1
mcedit /etc/default/tvheadend


# restart
code:
1
shutdown -r now


# verify userhdhomerun is running
code:
1
2
sudo -s
ps aux | grep homerun


# verify if you have a control and 2 data devices, and 2 adapters
code:
1
ls -la /dev/*homerun*
crw-rw---- 1 root video 10, 53 Aug 17 17:10 /dev/hdhomerun_control
crw-rw---- 1 root video 251, 0 Aug 17 17:10 /dev/hdhomerun_data0
crw-rw---- 1 root video 251, 1 Aug 17 17:10 /dev/hdhomerun_data1


code:
1
ls -la /dev/dvb/*
/dev/dvb/adapter0:
total 0
drwxr-xr-x 2 root root 100 Aug 17 18:26 .
drwxr-xr-x 4 root root 80 Aug 17 18:26 ..
crw-rw---- 1 root video 212, 0 Aug 17 18:26 demux0
crw-rw---- 1 root video 212, 1 Aug 17 18:26 dvr0
crw-rw---- 1 root video 212, 2 Aug 17 18:26 frontend0

/dev/dvb/adapter1:
total 0
drwxr-xr-x 2 root root 100 Aug 17 18:26 .
drwxr-xr-x 4 root root 80 Aug 17 18:26 ..
crw-rw---- 1 root video 212, 3 Aug 17 18:26 demux0
crw-rw---- 1 root video 212, 4 Aug 17 18:26 dvr0
crw-rw---- 1 root video 212, 5 Aug 17 18:26 frontend0


## configuring TVHeadend
Adapters:
  • browse to TVH: http://your-server-ip:9981
  • Go to TVHeadend | Configuration | DVB Inputs | TV Adapters: this should now list your 2 HDHomerun DVB-C tuners
  • Set Full Mux Reception: off
  • Set Original Network ID: 43146 (choose yours from the UPC list below, or find it elsewhere)
    # UPC Network IDs: Noord Holland 43136, Gelderland 43142, Flevoland 43138, Brabant 43144, Friesland 43140, Zuid Holland 43146
  • Save.
  • Go to Add DVB Network by Location | NL | UPC: Status will now show scanning for channels
  • Wait a bit untill all muxes are discovered.
Multiplexes:
  • if desired, remove all unneeded/encrypted muxes.
    For me the following remain. They contain all unencrypted services. You can cross reference this via DTVMonitor:
    101. 2051-2061, 2098, 2099, 2106, 2112
  • Save.
  • If unsure, or not bothered, just keep all muxes enabled. You will just have more channels to disable in the next section.
Services:
  • disable all encrypted or locked channels.
  • Disable all non-interesting channels or those outside your region.
  • Map the remaining channels so they will show in the EPG/Channel/EPG map. Sort on the enabled colum and do a multi-select. Then use the [Map Selected] button.
  • Save.
Channel mappings:
  • Configuration | Channel/EPG: map, merge, and number the channels you like
  • Save.
  • EPG info will get loaded from the video streams by TVHeadend slowly: give it time.
Tot slot

Na een tijdje is de EPG data geladen en kan je in de Electronic Program Guide tab een of meer programma's selecteren om op te nemen. Als er opgenomen wordt zie je in de Status tab welke tuner met welke parameters bezig is.

Reacties


Door Tweakers user H!GHGuY, dinsdag 20 augustus 2013 12:32

Een TS staat niet voor transponder maar voor transport stream.

Door Tweakers user Durandal, dinsdag 20 augustus 2013 14:58

dank, gecorrigeerd.

Door Tweakers user menn0, vrijdag 13 september 2013 13:57

Beste Durandal,

Is het kastje ook van buiten je locale netwerk te bereiken, en dan wel met een username/wachtwoord interface?
Kan je de kanalen dus bijvoorbeeld op je mobieltje bereiken? Ik weet dat dit via TVheadend wel kan, maar ik denk aan een oplossing zonder tvheadend.

Wat belangrijk voor mij zou zijn is dat een TVheadend server connectie kan maken met dit kastje (beiden niet opzelfde lokale netwerk) en zo via tvheadend het op mobiele apparaten kan benaderen. Ik wil echter uiteraard de streams van dit kastje niet voor iedereen opengooien.

Thnx

Door Tweakers user Durandal, vrijdag 13 september 2013 16:12

menn0 schreef op vrijdag 13 september 2013 @ 13:57:
Is het kastje ook van buiten je locale netwerk te bereiken, en dan wel met een username/wachtwoord interface?
Kan je de kanalen dus bijvoorbeeld op je mobieltje bereiken? Ik weet dat dit via TVheadend wel kan, maar ik denk aan een oplossing zonder tvheadend.
Er zit geen username/wachtwoord interface op de webinterface, maar de hele interface is twee links naar een publieke webserver dus dat is ook niet nodig.
Je kan de HDH natuurlijk van buiten je LAN bereiken als je je poort forwarding instelt in je modem/router. Of je dat simpel kan beveiligen hangt af in hoeverre je modem/router dat ondersteunt. Je zal zelf even op zoek moeten.
De vraag is of het nodig is; wat moet een ander met een stream die heel NL al heeft en als ze die toch uitlezen dan merk je dat in TVHeadend als je tuner al in gebruik is.
Verder kan je WAN bandbeedte een limiterende factor zijn.
Kan je de kanalen dus bijvoorbeeld op je mobieltje bereiken? Ik weet dat dit via TVheadend wel kan, maar ik denk aan een oplossing zonder tvheadend.
Je kan de TVH wel bereiken maat je moet wel geschikte software op je mobiel hebben. Ik denk dan bijvoorbeeld aan de drivers. Ik heb hier echter zelf geen ervaring mee.
Wat belangrijk voor mij zou zijn is dat een TVheadend server connectie kan maken met dit kastje (beiden niet opzelfde lokale netwerk) en zo via tvheadend het op mobiele apparaten kan benaderen.
TVHeadend kan verbinding maken met meerdere HDHomeruns, waar ze dan ook bevinden. Je mobieltjes kunnen verbinding maken direct met de HDH (mits goede software) of via TVH.
Het is allemaal IP.

[Reactie gewijzigd op vrijdag 13 september 2013 16:17]


Door Tweakers user tweemetervent, dinsdag 01 oktober 2013 10:44

Super HowTo.

Mijn opzetje is met glashart ipv upc net iets anders, voor wie er wat aan heeft:
TVHeadend | Configuration | DVB Inputs | TV Adapters: this should now list your 2 HDHomerun DVB-C tuners
Set Full Mux Reception: off
Set Original Network ID: 7461
Save.
Bij Multiplexes:
Go to Add mux(es) manually:
En vul de frequency kHz: 304000, Symbolrate baud: 6875000, Constellation: Qam64
Wait a bit untill all muxes are discovered.
Save

Bedankt voor de HowTo.

Door Tweakers user RMX, dinsdag 15 oktober 2013 11:51

Wow. Top dit.. Toevallig net aan het kijken en jouw gebruikte HDHomerun lijkt me het beste geschikt voor mij. (Netwerk / 2 tuners)

Dit komt zeker van pas!

Reageren is niet meer mogelijk