TvHeadend + Auto EPG Graber – EPG xml streamer + Kodi - Verze k tisku +- XBMC-Kodi.cz (https://www.xbmc-kodi.cz) +-- Fórum: Obecná diskuse (https://www.xbmc-kodi.cz/forum-obecna-diskuse) +--- Fórum: Tipy, triky a návody (https://www.xbmc-kodi.cz/forum-tipy-triky-a-navody) +--- Téma: TvHeadend + Auto EPG Graber – EPG xml streamer + Kodi (/prispevek-tvheadend-auto-epg-graber-%E2%80%93-epg-xml-streamer-kodi) |
TvHeadend + Auto EPG Graber – EPG xml streamer + Kodi - jojox - 04.4.2021 TvHeadend + Auto EPG Graber – EPG xml streamer
+ Kodi Vytvoril Jojo.
Tento projekt je kompilácia rôznych projektov a návodov čo som našiel na internete a odskúšal.
Príručka TvHeadend
https://tvheadend.readthedocs.io/en/stable/ Kodi https://kodi.tv/download WebGrab+Plus http://webgrabplus.com/epg-channels Tv SMS cz https://m.tv.sms.cz/?cas=&den=&stanice=&detail=&tab=&id=&zmen_stanice=true&P_hledat=&hhistorie=&hstranka= TvToday https://m.tvtoday.de/programm/standard/sender/ Raspberry Pi Imager https://www.raspberrypi.org/software/ DVB Firmware https://github.com/OpenELEC/dvb-firmware Linux Kompatibilné DVB Tunery https://www.linuxtv.org/wiki/index.php/DVB-T_USB_Devices MobaXterm https://mobaxterm.mobatek.net/download.html Použitý Hardware
Server Raspberry Pi - V mojom prípade model 3b+ Micro SD - V mojom prípade 16 Gb. Optimálna je 32Gb alebo 64Gb. Pozor model 3b+ nedokáže používať SDXC! Iba SDHC. DVB Tv Tuner - Mal som starý Tuner Terratec S7. Neje to najlepší vyber preto že pod Linuxom nefunguje DVB-S2 iba S. Tak že žiadne HD programy. No ako návod stačí. Pre niektorých môže bit tento návod trochu otravný, preto že je robený pre ľudí čo nemajú žiadne skúsenosti s Linuxom alebo Raspberry Pi. Poďme na to!
Vlož SD do PC otvor - Raspberry Pi Imager Vyber si OS - Raspberry Pi OS (other) ---> / Raspberry Pi OS Lite (32-bit) no Desktop enviroment Vyber SD kartu zo zoznamu Zapíš os na SD kartu - Zápis Počkaj pokiaľ sa zápis nedokonči. -- Vlož kartu do Raspberry, pripoj ku monitoru alebo tv pripoj LAN kábel (ak nechceš používať WIFI) a zapni. Po zapnutí sa Raspberry reštartuje a následne spustí operačný systém. Klávesnica je štandardne nastavená na anglickú QWERTY Prihlás sa štandardnými prihlasovacími údajmi. Username: pi Password: raspberry -- Zmeň prihlasovacie heslo a Spusti SSH server nastav WIFI (ak nechceš používať LAN), zmeň Lokalizáciu a ďalšie nastavenia podľa potreby. # sudo raspi-config 1 System Options / S1 Wireless LAN / S3 Password 3 Interface Options / P2 SSH 5 Localisation Options / Opusti nastavenia. Zisti svoju lokálnu Ip adresu (ak si nastavil wifi, budeš musieť reštartovať Pi # sudo reboot Zobrazí sieťové karty a pripojenia # Ifconfig # sudo reboot Odpoj monitor a otvor vo Windows putty alebo ako v mojom prípade MobaXterm Session / SSH Zadaj svoju Pi - IP adresu / OK Prihlás sa Meno - pi Heslo - to ktoré si zmenil ------------ Nastav statickú IP adresu Vlož nasledujúci text do textového editora nano v termináli. IP adresy nastav podľa svojho Routera. 192.168.0 - môže bit iné číslo záleží na nastavení Routera.120 – zadaj hodnotu ktorú chceš, najlepšie takú ktorú nepoužívajú zariadenia v tvojej lokálnej sieti. # sudo nano /etc/dhcpcd.conf ------- interface eth0 static ip_address=192.168.0.120/24 static routers=192.168.0.1 static domain_name_servers=192.168.0.1 interface wlan0 static ip_address=192.168.0.130/24 static routers=192.168.0.1 static domain_name_servers=192.168.0.1 -------- Na odchod z textového editora a uloženie stlač Ctrl+x Opýta sa ci chceš uložiť zmeny Stlač y a potvrď enter. # sudo systemctl enable dhcpcd # sudo systemctl enable networking # sudo reboot Inštalácia # sudo apt-get update MC je správca súborov v termináli. Je dôležitý, preto že ho môžeš otvoriť aj ako správca sudo a budeš môcť manipulovať zo súbormi na ktoré potrebuješ práva sudo (superuser). Je to jednoduchšie ako zadávať príkazy do terminálu a hlavne vidíš čo robíš. # sudo apt-get install mc # sudo apt-get install tvheadend Opýta sa ci chceš nainštalovať zobrazené knižnice a program tvheadend Zadaj y a enter Pri inštalácii sa otvorí konfiguračné okno Zadaj admin meno Ďalšie okno Zadaj tvoje admin heslo ------ Otvor web browser a zadaj http:// tvoja ip:9981/ Otvor webové rozhranie servera http://tvoja ip/playlist/channels Stiahneš playlist zo servera abcde:1234@ Ak nemáš nastaveného užívateľa bez hesla, vlož to medzi http:// a ipadresu v playliste m3u admin meno:admin heslo@ Užitočné príkazy # sudo service tvheadend stop # sudo service tvheadend start Reset TVheadend # sudo service tvheadend stop # sudo rm -r /home/hts/.hts/ - Resetuje všetky nastavenia # sudo dpkg-reconfigure tvheadend - Vyvolá konfiguračné okno na nastavenie mena a hesla # sudo service tvheadend start Ovládače hardware DVB Stiahni Firmware a skopíruj do priečinka pi v MobaXterm na ľavej strane okna( klikni na priečinok a pretiahni ho do MobaXterm okna / priečinka Pi Ovládače treba skopírovať do systémového priečinka. To ale MobaXterm nedovolí preto že na to potrebuješ práva sudo. Otvor mc ako správca # sudo mc V ľavom okne otvor priečinok firmware a označ všetky položky klikom na pravé tlačidlo. Označené zostanú žlte. Keď klikneš na položku a potiahneš smerom dole označia sa aj ďalšie a nemusíš klikať. V pravom okne chod do priečinka lib/firmware Klikni na ľubovoľnú označenú položku v Ľavom okne a stlač F5 (kopírovať) Otvorí sa ti okno , stlač áno , systém zaznamená že už ma ovládače s rovnakým názvom a otvory sa ti červené okno s možnosťami kopírovania Stlač áno všetky prepísať. Na odchod s mc stlač F10 Vymaž priečinok firmware ktorý si vložil cez MobaXterm do priečinka Pi. Už nie je potrebný. Pi treba reštartovať, ináč systém nerozpozná hardware, lebo nebude vedieť že si pridal ďalšie ovládače. Vytvor v MobaXterm priečinky do ktorých vložíš svoje externe playlist, loga, EPG. Najlepšie v priečinku užívateľa pi novy priečinok tvh Otvor ho a vytvor v ňom ďalšie priečinky logo, extPlay, myEPG, graber Skopíruj do vytvorených priečinkov tvoje loga Tv kanálov a externe playlist m3u. Loga môžeš používať aj priamo s webu zadaním web adresy, alebo s EPG. Formát .png. Otom ale neskôr. EPG V TvHeadend sú vložené interné EPG gerbery ale treba ich nakonfigurovať a nikdy tam nie sú práve tie kanály ktoré chceš ty. V prípade DVB-t/s/c bude EPG prevzaté priamo zo signálom vysielania a sú na to použité grabery v TvHeadend. Netreba nič meniť, sú spustene a nastavene automaticky po inštalácii. Ja som sa rozhodol pre WebGrab Plus. Dajú sa nastaviť tv programy ktoré chcem a všetko dokáže robiť automaticky. Netreba počas prevádzky nijako zasahovať do systému. Chod na stránku WebGrab Plus a zaregistruj sa. Zaslanie overovacieho mailu na potvrdenie registrácie trvá pár hodín až jeden deň. Tak že treba bit trpezlivý. Základná registrácia umožňuje grabovať 30 tv kanálov. Po darovaní 5 € budeš môcť grabovat 250 kanálov 1 rok. Pre viacej kanálov a ďalšie výhody precitaj stránku http://webgrabplus.com/content/support-us Základná Licencia je na 2 počítače, ak sa prihlásiš na tretom, budeš zablokovaný na 12 hodín! Info je na stránke. Keď si prejdeš internet tak zistíš že EPG sú poskytovane za neuveriteľné sumy peňazí tak že toto považujem za perfektne riešenie. A okrem toho na nete je veľa dotazov ako streamovať v lokálnej sieti epg xml. S mojim riešením veľmi jednoducho. O tom ale neskôr. Inštalácia a konfigurácia WebGrab Plus Aby to fungovalo treba nainštalovať mono. Na stránke WebGrab Plus je spomenutá aj minimálna inštalácia mono, ale keď som to tak skúsil, graber vypisoval chybové hlásenia a nefungoval. # sudo apt-get install mono-complete Stiahni poslednú verziu WebGrab Plus. sudo wget http://webgrabplus.com/sites/default/files/download/SW/V3.1.0/WebGrabPlus_V3.1_install.tar.gz Stiahne sa do priečinka užívateľa Pi. Rozbalí WebGrab Plus do vytvoreného priečinka graber. # tar -zxvf WebGrabPlus_V3.1_install.tar.gz home/pi/tvh/graber Prejdi do priečinka graber a nainštaluj program # cd home/pi/tvh/graber/.wg++ Nainštaluj WebGrab Plus # ./install.sh Stiahni si Graber pre TvHeadend sudo wget -O /usr/bin/tv_grab_wg++ http://www.webgrabplus.com/sites/default/files/tv_grab_wg.txt Nakonfiguruj Graber pre TvHeadend. Zadaj cestu kde sa bude nachádzať tvoj súbor s epg. # cd /usr/bin/ # sudo nano tv_grab_wg++ Zmeň cestu na =/home/pi/tvh/ myEPG/guide.xml Ulož a zatvor editor Ctrl+x Y enter Vytvor spustiteľný súbor # sudo chmod +x /usr/bin/tv_grab_wg++ Teraz treba nakonfigurovať WebGrab Plus Chod v MobaXterm vľavo, do priečinka home/pi/tvh/graber/.wg++ Dvojklik na WebGrab++config.xml Súbor sa otvory v textovom editore MobaXterm Zadaj cestu kam sa ma uložiť tvoj súbor s EPG xml. <filename>/home/pi/tvh/ myEPG/guide.xml</filename> Zadaj tvoje prihlasovacie údaje WebGrab Plus ktoré používaš na prihlásenie na webovej stránke License pass code nájdeš v tvojom profile na webe. Mailová adresa musí bit identická s tou čo si použil pri registrácii. <license wg-username="tvojeMeno" registered-email="tvojMail" password="LicensePassCode"></license> Pre koľko dni sa ma grabovat program. Nula je 1 deň. <timespan>0</timespan> Teraz vlož tv programy pre ktoré chceš grabovat EPG na skúšku zadaj len jeden link. Grabovanie trochu trvá. Linky nájdeš na stránke Webgraberu. Súbory sú aj uložené v priečinku .wg++/siteini.pack Schválne som zadal Markízu, lebo na stránke je Markiza s dlžnom. Ten treba zmeniť, preto že graber nepozná SK/CZ diakritiku vyhodí chybu a ukončí sa. Zdroj tohto príkladu je stránka m.tv.sms.cz. Keď že zdroje na webe Webgraberu nie sú stále aktualizovane, nie všetky servery fungujú. Tento je funkčný a sú tam všetky programy. Keď na webe Graberu klikneš na X pri tv.sms.cz.m otvory sa ti zoznam programov. Ak nejaký nenájdeš tak nezúfaj. Žiadny problém. Otvor v prehliadači stránku SK/CZ https://m.tv.sms.cz/ , DE https://m.tvtoday.de/ a nájdi si program ktorý potrebuješ. Klikni na zobraziť a pozri sa na webovú adresu. Je tam napísaný názov kanálu tak ako je uložený na servery. Stačí ho skopírovať a doplniť podľa ďalších linkou v grabery. Názov kanálu je v linku zadaný 3x prvý je názov na servery, druhy skutočný názov kanála a ten tretí je názov ktorý si môžeš Zmeniť podľa seba. Od toho závisí ako bude TvHeadend automaticky priraďovať EPG ku kanálom ktoré máš na servery. Je to hlavne doležíte ak chceš streamovať EPG xml súbor do Kodi keď máš nejakú externú m3u čo nemáš na servery. Tam sa názov kanálu musí zhodovať s názvom v EPG ináč ho nezobrazí. <channel update="i" site="tv.sms.cz.m" site_id="Mark%EDza" xmltv_id="Markiza">Markiza</channel> Ulož a zatvor. Teraz Môžeš vyskúšať ci to funguje. Spustenie # cd home/pi/tvh/graber/.wg++ # ./run.sh Pre automatické grabovanie stačí zadať kedy sa ma program spustiť. Zadaj v termináli # cd # crontab -e Zvoľ si textový editor 1 je nano Vlož tento riadok * 0 * * * /home/pi/tvh/graber/.wg++./run.sh Ulož a zatvor. Graber sa bude spustiť každý deň o polnoci. Zobrazí info. # crontab -l Viac info o crontab najdes na webe. Stačí ho dať do Google Streamovanie EPG xml súboru v lokálnej sieti. ( pri Kodi nie je dôležité) Nainštaluj server Apache # sudo apt install apache2 -y Zmeň cesty v tvojom xml config a v tv_grab_wg++ tak aby viedli do priečinka var/www/html/guide.xml spust graber a by vytvoril guide.xml v danom priečinku alebo ho tam skopíruj, ak ho máš vytvorený. Otvor webový prehliadač a zadaj http://tvoja ip adresa/guide.xml Odporúčam použiť niečo iné ako Chrome, lebo ta zablokuje. Použi Firefox alebo starý internet Explorer vo Win. Konfigurácia TvHeadend Teraz môžeme nakonfigurovať TvHeadend. Loga staníc ktoré máš v priečinku musia bit vo formáte png. Či fungujú aj iné, neviem, neskúšal som. Názov loga pre tv kanál musí bit v tomto formáte. markiza.png, sat1gold.png ..... malé písmena a žiadne medzery. Tak dosiahneš to že loga budú priradene automaticky, lebo vkladať ich manuálne je časovo náročne a môže to spôsobiť chaos. Loga môžu bit pomiešané a je náročne ich dostať do normálneho stavu. Treba vymazať dáta o logách zo servera ...... Radšej si to ušetri. Rovnako treba dodržať postup a nepreskakovať kroky keď sa jedna o loga a EPG. Chaos nepotrebujeme. Môžeš použiť aj loga v EPG alebo zadať webové adresy z internetu. Pre každé logo zvlášť. Je to na tebe. Čo sa týka nastavenia DVB-S odporúčam nastavenie pre každý transpondér zvlášť jedna sieť. A hlavne deaktivovať automatické hľadanie nových transpondérov, preto že Raspberry nie je až tak vykoná a zasekne sa ti. Odskúšané. A nájde všetky kanály, aj tie čo nepotrebuješ. Zbytočne veľa kanálov ,hľadania, triedenia a podobne. Stačí ist na net a nájsť zoznam transpondérov, programov a konfigurácie. Otvor webové rozhranie v prehliadači. Adresa je na začiatku pri inštalácii TvHeadend. Prihlás sa menom a heslom ktoré si zadal pri inštalácii. Zruš Konfiguračného asistenta. Configuration / Base User interface Expert Language settings Slovak Czech German User Language - nie je doležíte, lebo aj tak sa nič nezmení. Zostane EN. Teda aspoň u mňa. Ulož nastavenia - Save Nastavenie vstupu DVB Inputs / Networks Vytvor sieť Add Zvoľ si Zdroj DVB-S Network Network name Mux_1 Zadaj názov siete podľa uváženia Pre-defined muxes >19.2E:Astra Podľa toho ktorý satelit máš nastavený (Anténa) Network discovery / Disable O tom som písal v úvode konfigurácie TvHeadend Vytvor Create Prejdi na ďalšie okno Muxes Klikni na vytvorený Mux( názov siete ) /Edit Nastav Hodnoty Mux_1 - DVB-S QPSK 12545000 H 22000000 5/6 - Save Prejdi na okno TV adapters Ak nezobrazí žiadne zariadenie, skús tvoj tuner odpojiť a znova zapojiť. Pokiaľ to nepomôže, tvoje zariadenie nie je kompatibilné alebo si zabudol skopírovať firmware a reštartovať Pi. Klikni na zariadenie. Otvory sa ti na pravej strane okno. Enabled Aktivuj Satelite config Nastav spôsob prímu signálu. V mojom prípade je zvolená možnosť Unicable I switch(universal LBN) Budova kde bývam ma na streche 3 satelity ktoré sú ďalej vedene do spoločnej antény ako jeden signál. Ako je to dosiahnuté nebudem rozoberať. Save Klikni vľavo na link nižšie Ja mam Unicable systém a musel som zadať Frekvenciu a vypnúť DiseqC Netvork A Klikni na ponuku a uvidíš tam tvoju sieť. Mux_1 Označ a ulož Save Prejdi znovu na okno Networks , klikni na tvoju sieť Mux_1 a klikni na Force Scan Vpravo sa ti zobrazia naskenovane Muxes (počet) v mojom prípade 10 Prejdi na ďalšie okno Services Od-znač programy ktoré nechceš. A Ulož Save Klikni na Map services a vyber možnosť Map selected services Otvory sa ti okno kde označíš programy ktoré chceš Klik na Map services Prejdi na okno Channel / EPG /Channels Zobrazia sa ti programy ktoré sú naskenovane a povolene. Zmeň číslovanie aby boli v poradí aké vyhovuje tebe. Save Rovnaký postup je ak chceš restreamovat tvoj externý playlist. (nie každý playlist bude fungovať) hovorím o kradnutých linkoch z netu Len pri výberu siete zadáš IPTV Automatic Network zadáš Názov a do okna URL zadáš cestu kde sa nachádza tvoj playlist file:///home/pi/tvh/extPlay/nazov tvojho playlistu.m3u save Zvyšný postup je rovnaký ako pri DVB_S Keď máš všetky kanály zoradene a očíslované môžeš zadať loga. Configuration / General / Base Zadaj cestu kde sa nachádzajú tvoje loga. Channel icon path file:///home/pi/tvh/logo/%C.png Channel icon name scheme Service name picons Save Channel / EPG / Channels Uvidíš priradene ikony pri tvojich kanáloch Prejdi na okno EPG Graber Modus a v zozname graberov nájdi Internal: XMLTV: /bin/tv_grab_wg++ is a wrapper grabber around WebGrab+Plus Klikni naň a v pravom okne označ enable Save Prejdi na okno EPG Graber a zaškrtni Update channel name: V položke Cron multi-line: 59 */12 * * * uprav nastavenie keď sa ma EPG na servery aktualizovať. Ak je WebGraber nastavený na polnoc tak daj update na neskorší čas. V tomto prípade sa bude aktualizovať každý deň o 0:59 a o 12:59. Reštart # sudo reboot Stiahni a nainštaluj KODI Spust Kodi a prejdi na Doplnky / vľavo hore logo krabice / nainstalovat z Repozitara / Kodi ADD-on repository / PVR Klienti / Nájdi Tvheadend HTSP Client a nainštaluj ho. Potom ho otvor / nastaviť zadaj IP adresu tvojho servera , Meno a heslo. Reštartuj Kodi. TV / kanály . Hotovo |