• Vítejte na XBMC-Kodi.cz
  • Česko-slovenská komunita fanoušků XBMC/Kodi
Zdravím hosta! Přihlášení Registrace


Hodnocení tématu:
  • 1 Hlas(ů) - 5 Průměr
  • 1
  • 2
  • 3
  • 4
  • 5
Připojení CZ/SK poskytovatelů OTT IPTV k TVHeadendu
#1
Star 
Připojení CZ/SK poskytovatelů OTT IPTV k TVHeadendu

Rozhodl jsem se postupně začít zveřejňovat své shell wrappery, které používám (nebo jsem někdy dříve používal) k připojení kanálů od českých oficiálních IPTV OTT providerů. Wrapper (nebo také jakási "obálka" nebo "mezivrstva") slouží k přetvoření rozhraní TV poskytovatele na rozhraní jiné (v tomto případě tedy velmi nadneseně řečeno 3 ), kterému porozumí TVHeadend či případně jiné řešení pro příjem vysílaného streamu. Vše záleží jen na šikovnosti uživatele tohoto wrapperu, jak si jej dovede přizpůsobit.

Podporovaný (otestovaný) je Linux/Ubuntu, případně Debian. V tuto chvíli je k dispozici pouze základní nápověda/dokumentace, měla by být zcela dostačující. Podle potřeby (a množství volného času) se bude následně doplňovat. Předem upozorňuji, návod je určen pro pokročilejší uživatele linuxu, kterým není třeba vysvětlovat co je to shell, soubor, jak se používá chown/chmod a proč, apod.

Kde to stáhnu:
[Only registered and activated users can see links Click here to register]

V tuto chvíli dostupní poskytovatelé:
- SledovaniTV.cz

Požadavky na instalaci:
- Linuxový server (testováno v shellu bash na debian/ubuntu)
- Na něm TVHeadend server minimálně ve verzi 4
- Nainstalované další nástroje uvedené v dokumentaci konkrétního wrapperu, obvykle minimálně ffmpeg

Instalace:
- Vybrat wrapper pro zvoleného OTT poskytovatele, stáhnout soubor *-current.sh (aktuální verze) z webu výše
- Zkopírovat stažený wrapper (*.sh soubor) do /home/hts (výchozí složka nastavení uživatele TVHeadendu)
- Nastavit *.sh souboru execute práva (tj. chmod +x *.sh)
- Upravit v *.sh souboru wrapperu nastavení v sekci k tomu určené nahoře (obvykle přihlašovací údaje, apod.)
- Založit v TVHeadendu MUX s adresou: "pipe:///home/hts/xxxxx.sh parametry", viz dokumentace konkrétního wrapperu
- Standardně v TVHeadendu promapovat MUXy s kanály, atd..
- Dívat na nově připojený kanál 5

Další plány:
- Přidat skripty pro další OTT providery
- Vytvořit skripty pro IPTV-automatic, které od poskytovatele automaticky stahnou seznam kanálů a tím umožní vytváření MUXů v TVHeadendu automaticky
- SledovaniTV.cz - umožnit ve skriptu vypsat nazvy uzivateli dostupnych kanalu
 
Citovat
#2
@mobilemanic Pěkné řešení, jednoduché. Rozhodně univerzálnější, než stahování celého playlistu, hlavně umožňující získat streamy s vyšší kvalitou. To omezení na dva současně přehrávané streamy zamrzí , ale něco za něco... S dovolení to použiji jako alternativu ke stažení playlistu pro své řešení. 1 Budu mít ale pár dotazů. Snad budeš ochotný odpovědět...

Id jsem našel rychle, ale nepřišel jsme na to, kde či jak zjistit autentizační token?
Jaký formát má mít název kanálu? Jdou použít běžné názvy z playlistu? Tedy "ČT1" nebo "Prima Cool", apod. To asi ne, co?

Hned vzápětí mě napadlo řešení, jak "eliminovat" to omezení na dva kanály. Současně do Tvheadend vložit jak kanály z playlistu, tak získané přímo "tvou" metodou. Těm druhým nastavit vyšší prioritu. Pak by vždy dva první programy spuštěné v Tvheadend jely ve vysoké kvalitě, ty další pak v té, pro kterou jsou odkazy v playlistu.
Client/TV Server: Asrock Beebox+LE 8.2.5+Tvheadend 4.2 (4x DVB-T UPC - 7 MUX/51 kanálů, OTT - 45 MUX/Kanálů),  Clients: RPi 2+LE 8.2.5 2xW10+Kodi 17.6, Android Mobile+TVHClient+Yatse NAS: Asustor
 
Citovat
#3
JiRo: věděl jsem, kdo se ozve první.. :-)) možná bychom to měli nějak dát dohromady, abychom oba nedělali dvakrát to samé..

SledovaniTV:
K těm parametrům - musím to tam ještě dopsat, ale teď na to nějak nemám sílu... Tedy zatím jen nástřel narychlo:
- ID je vidět v GUI SledovaniTV.cz
- autentizační token k tomu ID je vidět v odesílaných Cookies, když to pustíš v prohlížeči (cookie device_auth)
- názvy kanálu z vlc playlistu by měly být správné, ale ty v cestě na konci - před příponou .vlc. Nebo jdou ještě zjistit na webu z jmen souboru obrázků v seznamu kanálů (např. [Only registered and activated users can see links Click here to register]) - celý ten systém včetně toho seznamu kanálů na webu a obrázků to zřejmě bude řízené z jedné stejné databáze kanálů.
 
Citovat
#4
@mobilemanic Tak jsem to chtěl ráno před cestou do práce narychlo vyzkoušet a chtěl si stáhnout playlist jednoho kanálu a hned narazil na to, jak získat ten zatracený autentizační token. Jednak mi není úplně jasná tvoje rada, kam sáhnout v případ prohlížeče (cookie device_auth jako nápověda mi nestačí 10). A i kdybych věděl jak na to u prohlížeče, tak jak ho získat u LibreELEC, kde stejně žádný prohlížeč nemám. Narychlo jsme to zkusil přes curl,  přihlásil se přes něj ke sledovani.cz, získal soubor cookie, ale ani jeden z řetězců, který tam vidím a mohl by být něčím, co se dá prohlásit za Id, asi oním Id nebude. Teď už na to čas nemám, musím frčet, ale zkus mi poradit víc...

Jinak, pod dojmem tvého infomace o omezení na 2 současně přehrávané kanály, jsem pojal podezření a cvičně si před ulehnutí pustil nahráván 5 kanálů přes adresy z playlistu a ráno zjistil, že patrně nějakou podobnou restrikci možná zavedli i tady. Z pěti kanálů jich necelých 20 minut času nahrávání přežil jen jediný. Musím to ještě zanalyzovat, zda je skutečně "vykopli" oni. Ale ani bych se nedivil, kdyby se takovému využívání svých služeb začali bránit.
Client/TV Server: Asrock Beebox+LE 8.2.5+Tvheadend 4.2 (4x DVB-T UPC - 7 MUX/51 kanálů, OTT - 45 MUX/Kanálů),  Clients: RPi 2+LE 8.2.5 2xW10+Kodi 17.6, Android Mobile+TVHClient+Yatse NAS: Asustor
 
Citovat
#5
JiRo: Nene, je to planý poplach, špatně jsem to otestoval. Vycházel jsem z toho, že v podmínkách jsou "dvě zařízení současně". Ale co teče do jednoho konkrétního zařízení se pak už neřeší, ani v podmínkách. Pokud tam je nějaké omezení, tak o něm v tuto chvíli nevím. Lze to vyzkoušet jednoduše otevřením více záložek v tom samém prohlížeči a spuštěním různých programů, hrajou všechny. Pro takové to "domácí nahrávání" je tedy služba (zatím) vhodná.
 
Citovat
#6
@mobilemanic Pozor, mě jde taky spustit 5 streamů současně (5 proto, protože to mám nastavení v parametrech sítě), ale po čase mi 4 vždycky spadnou.
Client/TV Server: Asrock Beebox+LE 8.2.5+Tvheadend 4.2 (4x DVB-T UPC - 7 MUX/51 kanálů, OTT - 45 MUX/Kanálů),  Clients: RPi 2+LE 8.2.5 2xW10+Kodi 17.6, Android Mobile+TVHClient+Yatse NAS: Asustor
 
Citovat
#7
SledovaniTV.cz - vydána nová verze 2, umožňuje registraci zařízení (přímo spuštěním skriptu nebo ručně přes prohlížeč), dále přidává nějaké kontroly a vylepšuje dokumentaci

JiRo: použiju tradiční blbou odpověď - mně to nedělá :-D
 
Citovat
#8
Aktuálně: v tuto chvíli na to bohužel mám naprosté minimum času, v zásobě mám funkční implementace ještě dalších poskytovatelů, bohužel v tuto chvíli nevím kdy to dokážu pročistit a zveřejnit. Každopádně v případě zájmu písněte sem, k dispozici je KUKI, LepšíTV a ZapniTV. Samozřejmě lze udělat i cokoliv dalšího, jen bohužel teď ten čas... Undecided
 
Citovat
#9
Skvělá práce mobilemanic. Moc bych se přimlouval za Zapni.TV. Hodila by se mi i klidně rozdělaná verze, kterou si doupravím.
Jinak se mi moc líbí nápad, jak to máš naimplementované.
 
Citovat
#10
@mobilemanic @JiRo pani, rad by som sa zorientoval v temach "Připojení CZ/SK poskytovatelů OTT IPTV k TVHeadendu" a "Tvheadend a placená IPTV - idea řešení".

Rad by som otestoval pripadne prispel s navrhmi / nazormi do rieseni, ktore riesenie je aktualne a pracujete na nom ?
 
Citovat
#11
@anokdeto Za mne je to tak, že patrně téma "Tvheadend a placená IPTV - idea řešení" uzavřu a nebudu v jeho dalším rozvoji pokračovat (nemám na to čas). Mám ho sice funkční, ale nedělá nic jiného, než že pouze stahuje playlisty a řeší jejich jednoduché zpracování, vč. vytvoření druhých playlistů s voláním "streamerů". Je to pojaté poněkud monstrózně - společná část, včetně logování, a pak individuální adresáře pro scripty a data jednotlivých porviderů. Ačkoliv je to napsané v sh shellu, instaluje a nastavuje se to jako Kodi addon, pro plánování spouštění to používá systemd. Funguje to tedy na stejném principu, který např. používá addon WebGrab++ v LE. Z toho důvodu to může být instalované pouze na Kodi běžící v LE/OE a asi by to mělo fungovat i v Linuxu.

Umí to Zapni.tv a Sledovanitv.cz (mohlo by to tedy asi umět i Sledovanitv.sk), které jsem otestoval a zatím ještě platím a provozuji ho, i když spíše jen pro studijní a testovací účely. Pro mou potřebu mi úplně stačí pár programů z DVB-T UPC.

Původní myšlenka byla vytvořit univerzální řešení a pak do něj přidávat jednotlivé providery. Protože jsem programátor amatér (naposledy jsem profesionálně programoval před 30 roky a to pouze v assembleru a pouze real-time aplikace pro řízení v energetice), je to napsané velmi neuměle. Navíc jsme se na začátku poněkud nešťastně rozhodl, že to bude napsané v obyčejném sh shellu, takže je jasné, že to žádný programátorský zázrak není.

@mobilemanic navrhoval spojit síly, ale já si myslím, že tomuto tématu už nemůžu nic dalšího přinést. To, co jsme se díky tomuto tématu naučil, se týkalo hlavně samotného Tvheadendu a toho, jak ho používat a to je věc jiná a vlastně teď už celkem všeobecně známá.
Client/TV Server: Asrock Beebox+LE 8.2.5+Tvheadend 4.2 (4x DVB-T UPC - 7 MUX/51 kanálů, OTT - 45 MUX/Kanálů),  Clients: RPi 2+LE 8.2.5 2xW10+Kodi 17.6, Android Mobile+TVHClient+Yatse NAS: Asustor
 
Citovat
#12
Moje řešení má velké plány, ale nestíhám to... Principem je nainstalovat TVHeadend na jakýkoliv linux server a pomocí dvou bash skriptů (zajišťujících podporu konkrétního poskytovatele) stáhnout seznam kanálů, které budou do TVHeadendu automaticky nainstalovány, a druhý skript zajistí funkčnost samotného přehrávání...

Tedy takové univerzální řešení. Bohužel v tuto chvíli je zveřejněn jen druhý skript pro jednoho poskytovatele, zbytek jsou jen nezveřejněné drafty, neboť to momentálně časově nedávám.
 
Citovat
#13
(12.7.2018, 10:35)mobilemanic Napsal(a): Moje řešení má velké plány, ale nestíhám to... Principem je nainstalovat TVHeadend na jakýkoliv linux server a pomocí dvou bash skriptů (zajišťujících podporu konkrétního poskytovatele) stáhnout seznam kanálů, které budou do TVHeadendu automaticky nainstalovány, a druhý skript zajistí funkčnost samotného přehrávání...

Tedy takové univerzální řešení. Bohužel v tuto chvíli je zveřejněn jen druhý skript pro jednoho poskytovatele, zbytek jsou jen nezveřejněné drafty, neboť to momentálně časově nedávám.

@mobilemanic snazim sa pouzit tvoj skript, ktory si napisal a testovat, ale z nejakeho dovodu (pristupove prava?) mi vykazuje chyby pri prehladavani muxu, takze som postupne identifikoval zavadu az som sa dostal na tento problem preco mi skript nefunguje, popis:

Configuration -> DVB inputs -> Muxes, cast URL:
Kód:
pipe:///storage/downloads/sledovanitv.sh

Skrip sledovanitv.sh vypada nasledovne (XZY su upravene data):
Kód:
#!/bin/bash
ffmpeg -i "http://31.47.108.4:7909/moderntv/stream/prima/40-hls/live-media.m3u8?_cdn_session=XZY&_cdn_timestamp=XZY&_cdn_token=XZY" -f mpegts -vcodec copy -acodec copy pipe:1

Ked spustim skenovanie v tvheadend, dostavam chyby:
Kód:
2018-08-10 19:37:00.075 spawn: Executing "/storage/downloads/sledovanitv.sh"
2018-08-10 19:37:00.087 spawn: Executing "/storage/downloads/sledovanitv.sh"
2018-08-10 19:37:00.099 spawn: Executing "/storage/downloads/sledovanitv.sh"
2018-08-10 19:37:00.111 spawn: Executing "/storage/downloads/sledovanitv.sh"
2018-08-10 19:37:00.123 spawn: Executing "/storage/downloads/sledovanitv.sh"
2018-08-10 19:37:00.135 spawn: Executing "/storage/downloads/sledovanitv.sh"
2018-08-10 19:37:00.147 spawn: Executing "/storage/downloads/sledovanitv.sh"
2018-08-10 19:37:00.159 spawn: Executing "/storage/downloads/sledovanitv.sh"
2018-08-10 19:37:00.171 spawn: Executing "/storage/downloads/sledovanitv.sh"
2018-08-10 19:37:00.183 spawn: Executing "/storage/downloads/sledovanitv.sh"
2018-08-10 19:37:00.194 mpegts: pipe:///storage/downloads/sledovanitv.sh in IPTV - scan no data, failed
 
Ak spustim skrip zo shellu (root), tak to ide v poriadku:
Kód:
CoreELEC:~/downloads # sh sledovanitv.sh
ffmpeg version 8.95.0 Copyright (c) 2000-2018 the FFmpeg developers
 built with gcc 8.1.0 (GCC)
 configuration: --enable-ffmpeg --disable-ffplay --enable-ffprobe --enable-static --disable-shared --enable-gpl --enable-nonfree --disable-doc --enable-avresample --disable-lzma --disable-alsa --arch=arm --cpu=cortex-a53 --cross-prefix=/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/bin/armv8a-libreelec-linux-gnueabi- --enable-cross-compile --sysroot=/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/armv8a-libreelec-linux-gnueabi/sysroot --sysinclude=/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/armv8a-libreelec-linux-gnueabi/sysroot/usr/include --target-os=linux --nm=/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/bin/armv8a-libreelec-linux-gnueabi-nm --ar=/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/bin/armv8a-libreelec-linux-gnueabi-ar --as=/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/bin/armv8a-libreelec-linux-gnueabi-gcc --cc=/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/bin/armv8a-libreelec-linux-gnueabi-gcc --ld=/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/bin/armv8a-libreelec-linux-gnueabi-gcc --pkg-config=/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/bin/pkg-config --host-cc=/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/bin/host-gcc --host-cflags='-O2 -Wall -pipe -I/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/include -Wno-format-security' --host-ldflags='-Wl,-rpath,/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/lib -L/home/adamg/CoreELEC/build.CoreELEC-S905.arm-8.95.0/toolchain/lib' --host-extralibs=-lm --extra-cflags='-march=armv8-a+crc -mtune=cortex-a53 -mabi=aapcs-linux -Wno-psabi -Wa,-mno-warn-deprecated -mcpu=cortex-a53 -mfloat-abi=hard -mfpu=neon-fp-armv8 -fomit-frame-pointer -Wall -pipe -Os ' --extra-ldflags='-march=armv8-a+crc -mtune=cortex-a53 -Wl,--as-needed' --extra-libs= --enable-pic --enable-openssl --enable-hardcoded-tables
 libavutil      56. 14.100 / 56. 14.100
 libavcodec     58. 18.100 / 58. 18.100
 libavformat    58. 12.100 / 58. 12.100
 libavdevice    58.  3.100 / 58.  3.100
 libavfilter     7. 16.100 /  7. 16.100
 libavresample   4.  0.  0 /  4.  0.  0
 libswscale      5.  1.100 /  5.  1.100
 libswresample   3.  1.100 /  3.  1.100
 libpostproc    55.  1.100 / 55.  1.100
frame=  503 fps=171 q=-1.0 Lsize=    6948kB time=00:00:20.13 bitrate=2826.2kbits/s speed=6.83x

Ak vynecham skript a zapisem formou pipe a skenujem tiez funguje:
Kód:
pipe:///storage/.kodi/addons/tools.ffmpeg-tools/bin/ffmpeg -i "http://31.47.108.4:7909/moderntv/stream/prima/40-hls/live-media.m3u8?_cdn_session=XZY&_cdn_timestamp=XZY&_cdn_token=XZY" -f mpegts -vcodec copy -acodec copy pipe:1

Takze nefunguje jedine ked v URL odkazujem cez pipe na skript, predpokladam nejaky problem s opravnenim, shell spustam ako root ale sluzba tvheadend je spustena ako uzivatel hts a group video
Kód:
/usr/bin/tvheadend -f -p /var/run/tvheadend.pid -u hts -g video

Ako upravit skript alebo pipe aby som vramci tvheadend mohol pouzivat pipe na skript ?

Vdaka
 
Citovat
#14
@rasti A zkusil jsi ve skriptu použít /usr/bin/ffmpeg nebo případně to /storage/.kodi/addons/tools.ffmpeg-tools/bin/ffmpeg?
BTW, proč vůbec používáš to ffmpeg z ffmpeg-tools když ffmpeg v systému instalovaný máš a funguje.
Client/TV Server: Asrock Beebox+LE 8.2.5+Tvheadend 4.2 (4x DVB-T UPC - 7 MUX/51 kanálů, OTT - 45 MUX/Kanálů),  Clients: RPi 2+LE 8.2.5 2xW10+Kodi 17.6, Android Mobile+TVHClient+Yatse NAS: Asustor
 
Citovat
#15
@JiRo v CoreELEC defaultne nie je ffmpeg resp. musel som ho doinstalovat cez napr. KODI addon tj. teraz ho mam dostupny ako pises na adrese /storage/.kodi/addons/tools.ffmpeg-tools/bin/ffmpeg

Skusal som ho spustit v skripte ako ffmpeg tak aj /storage/.kodi/addons/tools.ffmpeg-tools/bin/ffmpeg a stejna chyba.

Moze to mat spojitost ze tvheadend je spusteny pod uzivatelom hts a ja mam v coreelec root resp. ako to zverifikovat ? V systeme samozrejme uzivatel hts neexistuje.

Nevies ako zistit ake prava ma tvheadend sluzba, ci ma prava spustit vramci skriptu napr. ffmpeg ?
U teba funguje spustanie skript s ffmpeg cez pipe v IPTV URL ?
 
Citovat
#16
@mobilemanic malinko som zjednodusil tvoj skrip resp. mozes aktualizovat svoju verziu ak ti to pride vhodne

Tvoja posledna verzia:
Kód:
address=http://sledovanitv.cz/playback/channel/${program}?format=m3u8
playlist=$(wget -q -O - --header="Cookie: device_id=${conf_deviceid}; device_auth=${conf_devauthid}; streamQuality=${quality}" ${address})
stream=$(echo ${playlist} | sed -e "s/\ /\n/g" | sed -n 3p)
ffmpeg -re -fflags +genpts -i "${stream}" -f mpegts -vcodec copy -acodec copy pipe:1

Nova verzia, optimalizacia (vyuzivam len parametry ffmpeg-u resp. obisiel som potrebu wget a sed):
Kód:
ffmpeg -re -fflags +genpts -headers "Cookie: device_id=${conf_deviceid}; device_auth=${conf_devauthid}; streamQuality=${quality}"$'\r\n' -i http://sledovanitv.cz/playback/channel/${program}?format=m3u8 -f mpegts -vcodec copy -acodec copy pipe:1

@JiRo optimalizaciou som vyriesil, ze mozem spustat ffmpeg s cookies cez pipe priamo v tvheadende, ale musim vsetky parametr upravovat v dlhom prikaze a ja som lenivy tipek 5
Kód:
pipe:///storage/.kodi/addons/tools.ffmpeg-tools/bin/ffmpeg -re -fflags +genpts -headers "Cookie: device_id=XXXXXX; device_auth=YYYYYY; streamQuality=40"$'\r\n' -i http://sledovanitv.cz/playback/channel/primafamily?format=m3u8 -f mpegts -vcodec copy -acodec copy pipe:1
Poznamka: device_id a device_auth su len vymyslene z dovodu prihlasovacich udajov

Zatial sa mi nepodarilo vyriesit problem spustania skriptu. Ked ffmpeg s vyplnenymi parametrami mam v skripte a spustim ho zo shellu, funguje bez problemov, akonahle ten samy skript pouzijem cez pipe v tvheadend tak len chyby...ak mate niekdo radu ako spustit skript cez tvheadend pripadne kde je problem, dajte vediet
 
Citovat
#17
@rasti Nejsme znalec Linuxu a tak nedokážu posoudit do jaké míry je možné to co píšeš, že spouštíš Tvheadend s právy uživatele hts, když takový uživatel v CoreELEC není. To by snad nemělo být ani možné, ne? Já mám zkušenosti s LibreELEC a tam existuje pouze uživatel root a všechny aplikace se také po root-em spouští. Co ti brání spustit Tvheadend pod root-em? Podle mne by to vyřešilo všechny problémy. Jinak user-a spuštěných procesů zjistíš ve výpisu ps.

Píšeš, že ffmpeg v CoreELEC není nainstalován. To se mi nezdá. Uvádíš příklad spuštění scriptu sledovanitv.sh po root-em, a tam je jasně vidět, že se ffmpeg spustí.
Client/TV Server: Asrock Beebox+LE 8.2.5+Tvheadend 4.2 (4x DVB-T UPC - 7 MUX/51 kanálů, OTT - 45 MUX/Kanálů),  Clients: RPi 2+LE 8.2.5 2xW10+Kodi 17.6, Android Mobile+TVHClient+Yatse NAS: Asustor
 
Citovat
#18
(12.8.2018, 12:25)JiRo Napsal(a): Píšeš, že ffmpeg v CoreELEC není nainstalován. To se mi nezdá. Uvádíš příklad spuštění scriptu sledovanitv.sh po root-em, a tam je jasně vidět, že se ffmpeg spustí.

#JiRo ja som len chcel tym povedat, ze v defaulte nie je v CoreELEC ffmpeg (ani vramci /usr/bin ani KODI ani nikde inde) co som na zaciatku nevedel, takze v CoreELEC je ho potrebne doinstalovat.

Co sa tyka tych prav, mozno pomoze mobilemanic pripadne budem skusat dalej....

(12.8.2018, 12:25)JiRo Napsal(a): @rasti Nejsme znalec Linuxu a tak nedokážu posoudit do jaké míry je možné to co píšeš, že spouštíš Tvheadend s právy uživatele hts, když takový uživatel v CoreELEC není. To by snad nemělo být ani možné, ne? Já mám zkušenosti s LibreELEC a tam existuje pouze uživatel root a všechny aplikace se také po root-em spouští. Co ti brání spustit Tvheadend pod root-em? Podle mne by to vyřešilo všechny problémy. Jinak user-a spuštěných procesů zjistíš ve výpisu ps.
 @JiRo celkovom zaujimava poznamka co sa tyka uzivatela a tvheadend, vid dole, vsetky procesy v CoreELEC su spustene uzivatelom root, ale tvheadend uzivatelom 1.
Kód:
25747 root      0:00 [kworker/0:2]
25757 root      0:01 [kworker/3:2]
25840 root      0:00 [kworker/0:1H]
32246 1         1:01 /storage/.kodi/addons/service.tvheadend42/bin/tvheadend -f -p /var/run/tvheadend.pid -u hts -g video
32272 1         1:02 /storage/.kodi/addons/service.tvheadend42/bin/tvheadend -f -p /var/run/tvheadend.pid -u hts -g video
CoreELEC:~ #

Daj mi vediet aky uzivatel spusta tvheadend u teba...
 
Citovat
#19
@rasti Já mám LibreELEC (LE) a tam se Tvheadend spouští pod root. Ale spouštění Tvheadend je v LE řešeno trochu jinak než v CE. EDIT: Není! Spouštění Tvheadend je v CE řešeno shodně s LE. Jak jsem napsal, nejsem znalec Linuxu a netuším, co to znamená, když se proces spustí pod neexistujícím user-em. Každopádně, ten výpis ps ukazuje, že to asi možné je. Otázka je, jaké to má další důsledky či omezení. Jaká práva například takový proces asi má? BTW zaráží mě, proč tam ten Tvheadend máš 2x.
Client/TV Server: Asrock Beebox+LE 8.2.5+Tvheadend 4.2 (4x DVB-T UPC - 7 MUX/51 kanálů, OTT - 45 MUX/Kanálů),  Clients: RPi 2+LE 8.2.5 2xW10+Kodi 17.6, Android Mobile+TVHClient+Yatse NAS: Asustor
 
Citovat
#20
(12.8.2018, 14:14)JiRo Napsal(a): @rasti Já mám LibreELEC (LE) a tam se Tvheadend spouští pod root. Ale spouštění Tvheadend je v LE řešeno trochu jinak než v CE. Jak jsem napsal, nejsem znalec Linuxu a netuším, co to znamená, když se proces spustí pod neexistujícím user-em. Každopádně, ten výpis ps ukazuje, že to asi možné je. Otázka je, jaké to má další důsledky či omezení. Jaká práva například takový proces asi má? BTW zaráží mě, proč tam ten Tvheadend máš 2x.

@JiRo vdaka za info ohladne LibreELEC, v CoreELEC je tiez spustana ako root, ale mne sa sluzba spustala pod neexistujucim uzivatelom a este viacnasobne (ako to je mozne uz nepatram, ale robil som kopu zmien, takze...). Aktualne som to upravil a vypada to uz spravne...
Kód:
2988 root      0:06 /storage/.kodi/addons/service.tvheadend42/bin/tvheadend -B -C -u root -g video -c /storage/.kodi/userdata/addon_data/service.tvheadend42

Spustanie skriptu sa mi nepodarilo opravit, aj napriek tomu, ze uz uzivatel je spravny, je tam dalsia chyba a uz nepatram.

Dolezite je, ak bude niekto potrebovat pouzit sledovanitv cez tvheadend nemusi pouzivat skript, staci pipe a ffmpeg s doplnenim udajov ako pisal mobilemanic: id zariadenia, autentifikacny token zariadenia, nazov programu a ocakavana kvalita programu
Kód:
pipe:///storage/.kodi/addons/tools.ffmpeg-tools/bin/ffmpeg -re -fflags +genpts -headers "Cookie: device_id=XXXX; device_auth=YYYY; streamQuality=XX"$'\r\n' -i http://sledovanitv.cz/playback/channel/XXX?format=m3u8 -f mpegts -vcodec copy -acodec copy pipe:1
 
Citovat
  


Přejít na fórum:


Prochází: 2 host(ů)