
Jeg har netop erhvervet mig en Anysee E30 C Plus DVB-C TV-tuner, som er en ekstern USB-enhed. Hensigten med købet var at kunne se digital-TV i Linux, og også gerne HD-TV. Og det lever fint op til forventningen og derfor vil jeg hermed dele mine erfaringer med det.
Forud for købet havde jeg lavet lidt research på nettet. Jeg modtager mit TV-signal fra Stofa via en lokal antenneforening og jeg havde læst deres materiale om, hvad der skulle til for at kunne modtage de forholdsvis nye digitale kanaler. Det vigtigste krav var i mit tilfælde, at tuneren skulle understøtte standarden DVB-C. C'et står Cable. Så vidt jeg kunne læse mig til på bl.a. linuxtv.org skulle Anysee E30-serien have understøttelse i Linux, så derfor faldt valget på den. Jeg købte det hos Linuxshoppen.dk til en samlet pris af ca. 950 kr. og modtog det en lille uges tid efter bestillingen.
Genkendelse af hardware
Da tuneren var vel modtaget og tilsluttet, var det så spændende at se, om det det så også virkede. Min desktop-pc er en stationær med et Geforce 8400-grafikkort, og Linux-udgaven er Fedora 10. Efter tilslutning tjekkede jeg om enheden blev genkendt med kommandoen:
cat /var/log/messages | grep -i usb
Blandt flere andre linjer kunne jeg se:
May 30 13:27:46 fshome kernel: dvb-usb: found a 'Anysee DVB USB2.0' in warm state.
May 30 13:27:46 fshome kernel: dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
Så vidt så godt. Men hvad gør man så? Min hidtige erfaring med TV i Linux var med et Hauppauge WinTV-kort til analogt signal fremvist i applikationen TVTime. Det stod hurtigt klart, at TVTime ikke kunne læse noget fra den nye enhed. For dem, som ved meget om digital-TV i forvejen, er det muligvis åbenlyst, men jeg skulle lige bruge lidt tid på at finde ud af, at det faktisk er en MPEG-strøm af en slags, der kommer ud af kortet. Men det betyder så, at digitalt TV i Linux kan/skal ses gennem de gængse medieafspillere så som VLC, MPlayer, Xine m.fl. For mit vedkommende har jeg installeret de nævne afspillere via yum-repository fra rpmfusion-projektet, med alt hvad jeg kan finde af codecs, frie såvel som ufrie. Jeg ved dog ikke om det hele er nødvendigt.
Det afgørende for at komme i gang med at se TV-kanalerne er dog at få genereret en konfigurationsfil med information med alle ens kanal-indstillinger:
Kanal-scanning
Til at generere en konfigurations-fil med ens kanaler og frekvenser m.m. fandt jeg en utility ved navn w_scan (via Yum), og genererede så filen med kommandoen:
w_scan -X -E 0 -fc -c DK >> channels.conf
Det tog ca. 10 min at skanne alle kanalerne.
Filen channels.conf kan bruges lidt forskelligt, afhængigt af afspiller-applikationen. For Xine kan man placere den i ~/.xine/channels.conf, hvorefter kanalerne dukker op når man trykker på knappen "DVB". Det ser ud til at være generelt for de nævnte afspillere, at de kan åbne en TV-kanal ud fra princippet:
xine dvb://kanalnavn
(Hvor kanalnavn er det navn, som kanalen er angivet med i channels.conf)
Selvom man således kan åbne TV-kanal via kommando, så er det måske ikke det mest praktiske til dagligdags TV-kiggeri. Og jeg undersøgte så om man kunne finde en tilgang, som var mere praktisk via VLC:
Brug af VLC til digital TV
Jeg er endt med at bruge VLC til at se TV på. Man kan starte VLC med kommandoen:
vlc ~/channels.conf
Hvorefter VLC vil indlæse konfigurationsfilen som en playliste og automatisk afspille den første kanal-strøm i listen. Som standard har VLC tastatur-genvejene N og P (for Next og Previous) til at mellem elementer i en playliste. Dem mappede jeg så om til piletasterne, så det var lidt nemmere at skifte kanaler. I den forbindelse bemærker man også, at der i sammenligning med analog TV er en lidt længere pause mellem kanal-skift. Folk må rette mig, hvis jeg tager fejl, men jeg formoder, at der er fordi playeren lige skal bruge 1-2 sekunder på at buffer'e MPEG-strømmen. Når den nye kanal så kommer frem hakker lyden også lidt et par sekunder, hvorefter både lyd og billede så bliver stabilt.
HD-TV
HD-TV er så vidt jeg har forstået en MPEG4-strøm gemt via codecs'et H.264. Umiddelbart kan de nævne afspillere godt afspille HD-kanalerne, men i udgangspunktet hakker det for meget til at være godt. Men via de avancerede indstillinger for ffmpeg i VLC fandt jeg ud, at man kunne gøre forskellige ting for at få det til at køre bedre. Lige nu er jeg nået så vidt, at jeg kan se DR HD uden problemer, men visse af de udenlandske HD-kanaler får af og til VLC til at crashe med en fejl om "picture buffer overflow".
Fjernbetjening
Til sidst et par ideer til inspiration til dem, der har det som jeg, at jeg kan godt lide at se TV på en vis afstand af skærmen, gerne mageligt placeret i en sofa. Der fulgte ganske vist en fjernbetjening med til Anysee-enheden. Den fungerer upåklageligt i Windows, skulle jeg hilse og sige, men jeg har indtil nu ikke kunnet gennemskue, hvordan jeg får noget fornuftigt ud af den via LIRC i Linux. Så jeg har fundet en form for workaround, som består i at lave fjernbetjening af VLC på min bærbare tilsluttet via SSH. Det er selvfølgelig ikke helt det samme som en fjernbetjening, men min bærbare er en lille model, og den er alligevel ofte ved hånden, når jeg ser TV. Løsningen består i at man i en SSH-shell kan sende tekst-kommandoer til VLC, der viser TV på den stationære, via en unix-socket. Så min endelige start-kommando til VLC ser sådan her ud:
vlc --extraintf rc --rc-unix /tmp/vlc.sock ~/channels.conf
De ekstra parametre gør at VLC ved opstart åbner for en ekstra usynlig, grænseflade, nemlig Remote Control via unix-socket. For at gøre socket-kommunikationen nemmere fandt jeg et utility-script, som kan indkapsle arbejdet med at sende kommandoerne:
#!/usr/bin/python
# -*- coding: utf-8 -*-
import sys
import socket
#change to your vlc socket (in vlc configuration: UNIX socket command input)
SOCK = "/tmp/vlc.sock"
try:
command = sys.argv[1]
except:
print "try: %s help\n" % sys.argv[0]
sys.exit()
s = socket.socket(socket.AF_UNIX)
s.settimeout(0.1)
s.connect((SOCK))
s.send("%s\r" % command)
out = ""
while 1:
try:
line = s.recv(1024)
out += line
except socket.timeout:
break
if line == "":
break
s.close()
print out
Det har jeg gemt som en fil i ~/bin/vlcsock og sat filen som executable. Hvis jeg nu vil skifte kanal kan det ske med shell-kommandoen:
vlcsock next
Og det er kun én af mange forskellige kommandoer, som VLC forstår. En mere udførlig liste over mulige kommandoer kan fås via:
vlcsock help
Eksempelvis kan man også tage screenshots, med:
vlcsock snapshot
Eller skrue ned for lyden med
vlcsock voldown
Samlet vurdering
Som nævnt i indledningen lever tuner-enheden op til forventningerne. Det vil sige, at jeg kan se TV-kanaler i digital kvalitet, samt udvalgte HD-kanaler. Ang. oplevelsen i Linux, så det er nok meget typisk, sammenlignet med Windows - at man må arbejde lidt mere før man får det ønskede resultat. Men omvendt også lærerigt undervejs.
Noget af det, som jeg godt kunne tænke mig at finde en løsning på i fremtiden er, om det kan lade sig gøre få vist noget mere information på skærmen ved kanalskift o.l. Altså navnet på programmet som vises, klokkeslæt for start og slut, og hvad det næste program hedder. I konsol-outputtet fra VLC kan jeg se, at informationen findes i strømmen, så det er måske ikke helt utænkeligt at det kunne bruges til noget.
17-01-2004
Er det muligt at komme med et screenshot af billedkvaliteten? Nu er det jo digitalt så der skulle helst ikke være noget med billedet men jeg er lidt interesseret alligevel da jeg har haft digitale modtagere der gjorde noget underligt ved billedet.
03-04-2003
Jo da. Her er et par prøver:
DR 2
DR HD
04-05-2004
Har du prøvet mythtv? Den har support for programtekster mv.
03-04-2003
Tak for tippet med MythTV. Jeg har prøvet det nogen gange, men jeg synes altid, at jeg strander ved, at jeg ikke gennemskue dets brugerflade til opsætningen. Jeg giver det nok et forsøg igen en dag ...
Men ellers har jeg siden i går fundet ud af en løsning på de par ting, som jeg savnede. I VLCs menu kan man både vælge Subtitles Track og Media Information, og de kan i øvrigt også tilgås via konsollen.
05-12-2009
Det er en fin guide du har skrevet. Men hvor er det ærgerligt at det skal være så besværligt at få hardware op at køre i Linux. Jeg ved godt at det ikke er Linux' skyld (men fabrikanten der ikke gider understøtte det officielt), men det er med at til fastholde Linux som et "OS for nørder".
02-07-2007
Det er en flot vejledning, og en god melding, du kommer med. Det er såmænd heller ikke særlig let i windows 7, da mediacenter i den ikke understøtter DVB-C, men kun DVB-T. Men DVBViewer software for små penge, hjælper mange. Jeg har en Terratec H5 DVB-C usb tuner. Dens hardware er slet ikke understøttet af linux (p.gr.a. chipset).
http://linux.terratec.de/tv_en.html
Jeg venter på, at det kommer.
04-05-2004
Hmm, hvorfor understøttes dvb-c (kabel) ikke?
Jeg var forbi min mor, som har kabeltv, med min nyligt indkøbte
usb-stick til tv fra Aldi, og den kunne da godt se en masse
tv fra kablet.
Er der forskel på DVB-T og DVB-C? Er det ikke det samme format på transportstrømmen?
03-04-2003
Hej Keld,
jeg er ikke helt sikker på at jeg forstår dit spørgsmål:
Hmm, hvorfor understøttes dvb-c (kabel) ikke?
Det jeg skriver er, at Stofa netop har anført, at tuneren skal understøtte DVB-C for at kunne vise deres digitale signal. Jeg kan godt finde kilden, hvis det har interesse.
Skal det forstås sådan at usb-sticken fra Aldi kun understøtter DVB-T, men stadig godt kan vise digital-tv, som leveres over kabel?
03-04-2003
Hov, bare se bort fra min sidste kommentar. Jeg så først bagefter, at spørgsmålet vedrørte Terratec og Mediacenter.
04-07-2003
Forskellen på DVBC og DVBT er modulationstyperne af signalerne. (ligesom med *DSL skal signalet på linjen demoduleres ved modtagelsen for at blive til rå digitale data igen)
T(errestrial) er lavet til at blive sendt gennem luften fra TV-sendere placeret på landjorden (modsat satellitter), og er derfor mere robust lavet end DVBC til transmission gennem kabler, hvor forstyrrende støj kan holdes på et ret lavt niveau.
Med en given båndbredde kan man få en højere data-bitrate igennem DVBC, så så der er mulighed for mange kanaler og/eller højere kvalitet.
Nogle kabel-TV-selskaber sender også DVBT ud i kabelnettet, måske bare 5-10 kanaler, så dem der tilfældigvis kun har en DVBT-tuner også kan se en smule TV. (Det modsatte DVBC gennem luften forekommer vist ikke)
Selve billed-dataerne bruger vist samme format for alle tre typer DVB-T/C/S, men en tuner kan godt laves sådan at den kun dur til et eller to af systemerne.
14-02-2011
Hej,
Jeg har med stor interesse lige læst guiden igennem da jeg gerne vil have mine digital kanaler som jeg har gennem Stofa og en Zaptor boks overpå mit Ubuntu setup i stuen.
Lige for at være helt sikker, nu har jeg eks. tema-pakker med HD kanaler i Aarhus, som jeg kan se på min Zaptor. Kan jeg også se disse gennem dette device, eller er det kun de alm. gratis kanaler?
På forhånd tak,
Povl
28-03-2011
Hej super vejledning
Jeg får fint signal i VLC.
Er der ikke en måde at få det til at køre i et medie center, fx. XBMC eller Boxee
At se TV via VLC er jo ikke lige den fede brugeroplevelse.
MVH
Martin
03-04-2003
Jeg synes også det kunne være fedt at få ind i et mediecenter. Jeg har kigget på XBMCs dokumentation, men der er desværre ikke rigtigt noget der tyder på, at den understøtter DVB-usbenheder som kilde:
http://wiki.xbmc.org/index.php?title=Types_of_Medi...
Men jeg kan se på deres forum, at der er andre der også efterspørger det, så det kan være, at det kommer. Boxee vil jeg prøve en anden dag.
Mvh. Frank
28-03-2011
Jeg har før fået det til at køre i VLC, men hvis jeg køre en vlc ~/channels.conf så vil den ikke åbne mit input, som om at Anysee kortet ikke virker...
Dit input kan ikke åbnes:
VLC kan ikke åbne MRL 'dvb://'. Detaljer er skrevet i loggen.
Jeg kan heller ikke scanne efter kanaler
morfjord@asrock:~$ w_scan -X -E 0 -fc -c DK >> channels.conf
w_scan version 20100316 (compiled for DVB API 5.1)
using settings for DENMARK
DVB cable
DVB-C
frontend_type DVB-C, channellist 7
output format czap/tzap/szap/xine
Info: using DVB adapter auto detection.
main:2930: FATAL: ***** NO USEABLE DVB CARD FOUND. *****
Please check wether dvb driver is loaded and
verify that no dvb application (i.e. vdr) is running.
Men hvis jeg tjekker om kortet er der:
Apr 8 21:59:18 asrock kernel: [ 20.374740] dvb-usb: found a 'Anysee DVB USB2.0' in warm state.
Apr 8 21:59:18 asrock kernel: [ 20.374899] dvb-usb: will pass the complete MPEG2 transport stream to the software demuxer.
Apr 8 21:59:18 asrock kernel: [ 20.375403] DVB: registering new adapter (Anysee DVB USB2.0)
Apr 8 21:59:21 asrock kernel: [ 24.015346] input: IR-receiver inside an USB DVB receiver as /devices/pci0000:00/0000:00:04.1/usb1/1-1/input/input8
Apr 8 21:59:21 asrock kernel: [ 24.015570] dvb-usb: schedule remote query interval to 200 msecs.
Apr 8 21:59:21 asrock kernel: [ 24.015584] dvb-usb: Anysee DVB USB2.0 successfully initialized and connected.
Apr 8 21:59:21 asrock kernel: [ 24.018993] usbcore: registered new interface driver dvb_usb_anysee
31-01-2007
#13 Til gengæld kan du bruge MythTV som kilde i XBMC -og bruge tuneren den vej -sådan gør jeg og det virker!
28-03-2011
Hej
Jeg har før brugt mit Anysee E30 Combo via VLC, men nu i Ubuntu 11.04 kan jeg ikke finde det:
cat /var/log/messages | grep -i usb
Giver:
cat: /var/log/messages: Ingen sådan fil eller filkatalog
Driveren burde være installeret rigtigt....
21-12-2011
Hejsa.
Jeg vil lige komme med min kommentar til Anysee E30 C Plus DVB-C TV-tuner på Linux nærmere Fedora 16.
Jeg fik det til at virke nogenlunde med det samme, det var lige et par devel-pakker for v4l1 jeg skulle installere. Jeg anvender idag både Me-TV og Kaffeine til at se TV med. HD kanalerne hakker lidt på Me-TV, men virker upåklageligt med Kaffeine. Både Kaffeine og Me-TV kan optage, men Me-TV er min umiddelbare favorit - programmet har OSD og EPG med skeduleret optagefunktion. Me-TV opatger i .mpeg, mens Kaffeine optager i .mts.
Jeg bor i Århus, har Stofa, så jeg lavede kanal-filen til Me-TV med scandvb:
> scandvb /usr/share/dvb/dvb-c/dk-Aarhus-Antenneforening > channels.conf
Pakken "dvb-apps" sørger for alle tunings-filerne under /usr/share/dvb på Fedora.
Vil I have yderligere detaljer for hvordan jeg fik det til at virke, eller bare har spørgsmål til setup, så skriv, jeg vil forsøge at svare så godt som muligt.