• Vítejte na XBMC-Kodi.cz
  • Česko-slovenská komunita fanoušků XBMC/Kodi
Vítejte návštevníku! Přihlášení Registrace


Hodnocení tématu:
  • 5 Hlas(ů) - 3.4 Průměr
  • 1
  • 2
  • 3
  • 4
  • 5
Připojení CZ/SK poskytovatelů OTT IPTV k TVHeadendu
#61
@otava5 Je to typ řešení, které jsem si pro sebe (a také v popisu) označil jako "onthefly", tedy "za letu". Adresa streamu (či lépe manifestu, protože jde o HLS) se získá requestem na server služby přímo ve streameru. Je to vidět v této části streamer.sh:
Kód:
json=$(wget -qO - --header "X-NanguTv-Access-Token:${access_token}" --header "X-NanguTv-Device-Id:${device_id}" "https://app.o2tv.cz/sws/server/streaming/uris.json?serviceType=LIVE_TV&deviceType=${device_type}&streamingProtocol=${streaming_protocol}&subscriptionCode=${subscription}&resolutiom=${resolution}&channelKey=${channel}&encryptionType=NONE")
Tedy, úplně správně řečeno je to tak, že server vrací json data, ve kterých může být (a také je) více manifestů. V tomto ohledu jim to ale moc nefunguje. I když v requestu zadávám požadavek na "HD", vrací mi to zpravidla manifesty pro HD i SD. Prohledávat json data v sh scripru by ale trvalo moc dlouho, proto vždycky vezmu ten první (index 0 v jq '.[0].uri') a natvrdo změním v adrese případné "_sd_" na "_hd_" (a naopak, pokud je požadavek na SD kvalitu). Zatím to tak funguje, samozřejmě, pokud změní strukturu názvů, bude třeba to změnit taky.
 
Citovat
#62
Jj pak mi to docvaklo jste rychlejší 1
ale stejně po zadaní do TVH:
Kód:
2019-05-13 11:40:42.321 [   INFO] spawn: Executing "/storage/.kodi/userdata/o2tv.sh/streamer.sh"
2019-05-13 11:40:42.332 [   INFO] subscription: 0462: "192.168.1.108 [ admin | Kodi Media Center ]" subscribing on channel "HBO", weight: 150, adapter: "IPTV", network: "IPTV", mux: "tvh.m3u - HBO", service: "HBO", profile="htsp", hostname="192.168.1.108", username="admin", client="Kodi Media Center"
2019-05-13 11:40:42.553 [  ERROR] spawn: wget: server returned error: HTTP/1.1 404 Not Found
2019-05-13 11:40:42.953 [  ERROR] spawn: ffmpeg version 9.0.1-7-g874a3e4 Copyright (c) 2000-2018 the FFmpeg developers
2019-05-13 11:40:42.953 [  ERROR] spawn:   built with gcc 8.2.0 (GCC)
2019-05-13 11:40:42.953 [  ERROR] spawn:   configuration: --enable-ffmpeg --disable-ffplay --enable-ffprobe --enable-static --disable-shared --enable-gpl --disable-nonfree --disable-doc --enable-avresample --disable-lzma --disable-alsa --arch=arm --cpu=cortex-a53 --cross-prefix=/home/adamg/CoreELEC/build.CoreELEC-Amlogic.arm-9.0-devel/toolchain/bin/armv8a-libreelec-linux-gnueabi- --enable-cross-compile --sysroot=/home/adamg/CoreELEC/build.CoreELEC-Amlogic.arm-9.0-devel/toolchain/armv8a-libreelec-linux-gnueabi/sysroot --sysinclude=/home/adamg/CoreELEC/build.CoreELEC-Amlogic.arm-9.0-devel/toolchain/armv8a-libreelec-linux-gnueabi/sysroot/usr/include --target-os=linux --nm=/home/adamg/CoreELEC/build.CoreELEC-Amlogic.arm-9.0-devel/toolchain/bin/armv8a-libreelec-linux-gnueabi-nm --ar=/home/adamg/CoreELEC/build.CoreELEC-Amlogic.arm-9.0-devel/toolchain/bin/armv8a-libreelec-linux-gnueabi-ar --as=/home/adamg/CoreELEC/build.CoreELEC-Amlogic.arm-9.0-devel/toolchain/bin/armv8a-libreelec-linux-gnueabi-gcc --cc=/home/adamg/CoreELEC/build.CoreELEC-Amlogic.a
2019-05-13 11:40:42.954 [  ERROR] spawn:   libavutil      56. 22.100 / 56. 22.100
2019-05-13 11:40:42.954 [  ERROR] spawn:   libavcodec     58. 35.100 / 58. 35.100
2019-05-13 11:40:42.954 [  ERROR] spawn:   libavformat    58. 20.100 / 58. 20.100
2019-05-13 11:40:42.955 [  ERROR] spawn:   libavdevice    58.  5.100 / 58.  5.100
2019-05-13 11:40:42.955 [  ERROR] spawn:   libavfilter     7. 40.101 /  7. 40.101
2019-05-13 11:40:42.955 [  ERROR] spawn:   libavresample   4.  0.  0 /  4.  0.  0
2019-05-13 11:40:42.955 [  ERROR] spawn:   libswscale      5.  3.100 /  5.  3.100
2019-05-13 11:40:42.955 [  ERROR] spawn:   libswresample   3.  3.100 /  3.  3.100
2019-05-13 11:40:42.955 [  ERROR] spawn:   libpostproc    55.  3.100 / 55.  3.100
2019-05-13 11:40:42.960 [  ERROR] spawn: -vcodec: No such file or directory
nejde spustit.... 10 ve streamer.sh nemám v "prog=" zadáno nic píšeš není třeba 1

@johnyzh94: tobě funguje streamer.sh v TVH?
 
Citovat
#63
@otava5 Hmm, to vypadá, že do ffmpeg jde prázdný řetězec, protože neprojde request na server služby. Hele, dá se to docela dobře ladit tak, že si uděláš kopii streamer.sh, v něm vyhodíš na konci parametrů ffmpeg ten pipe:1 (to je důležité, protože jinak ti na konzoli vyjede ten stream) a pak si spustíš tu kopii streamer.sh s parametry převzatými z nějakého kanálu v playlist a můžeš si tam udělat různé testovací výpisy, měnit natvrdo parametry toho requestu, atp.

V prog nemusíš mít nic, pokud ti jde ffmpeg spustit z konzole jen zadáním ffmpeg (tzn. je součástí OS jako standardní úloha v .../bin/). Pokud je doinstalovaná (jako např. v LE 9.x), pak tam musíš zadat cestu do adresáře, kde je instalována). Ale u tebe to zjevně funguje, viz. log, kde je vidět, že se ti ffmpeg spustí. Bohužel je ale jméno vstupního souboru prázdné, proto ti také ffmpeg o něco dále píše "-vcodec: No such file or directory", protože v parametrech to pak vypadá "... -i -v..." a on to -v pak chápe jako jméno souboru nebo cesty).

Ale ještě před tím jedna otázka, máš v playlist ponechané jen ty kanály, které máš skutečně zaplacené?
 
Citovat
#64
Len taka poznamka. Nebolo by odveci k tym scriptom pridat nejaky config subor nacitavat z neho udaje, nech nemusim kazdy script zvlast upravovat

mam rovnaky problem ako otava5
 
Citovat
#65
@johnyzh94 Jistě, to by šlo, ale už se dostáváme od jednoduchého scriptu k něčemu složitějšímu. Tomu se chci vyhnout. Ono, pokud to bude fungovat, tak ta práce zeditovat kód je vždy jen na chvíli.

To, že to nefunguje, to je teď daleko důležitější. Nevím, jak se to stalo, ale vloudila se další chybička. Asi nějaké skvrny na slunci, či co? Nebo spíše to, že toho mám rozdělaného plno a v různých verzích a tady mi to skutečně uteklo. Já doufám, že je to poslední chyba.

Verze 0.2.2 s novou verzí steramer.sh uložím do původního příspěvku. Pro rychlou opravu stačí ve streamer.sh místo ...resolutiom=${resolution}... nahradit ...resolution=${resolution}...
 
Citovat
#66
@Client pořád hází chybu:
wget: server returned error: HTTP/1.1 472 Unknown + vcodec
 
Citovat
#67
(13.5.2019, 13:06)Client Napsal(a): @johnyzh94 Jistě, to by šlo, ale už se dostáváme od jednoduchého scriptu k něčemu složitějšímu. Tomu se chci vyhnout. Ono, pokud to bude fungovat, tak ta práce zeditovat kód je vždy jen na chvíli.

To, že to nefunguje, to je teď daleko důležitější. Nevím, jak se to stalo, ale vloudila se další chybička. Asi nějaké skvrny na slunci, či co? Nebo spíše to, že toho mám rozdělaného plno a v různých verzích a tady mi to skutečně uteklo. Já doufám, že je to poslední chyba.

Verze 0.2.2 s novou verzí steramer.sh uložím do původního příspěvku. Pro rychlou opravu stačí ve streamer.sh místo ...resolutiom=${resolution}... nahradit ...resolution=${resolution}...

po uprave resolutioM streamer funguje
 
Citovat
#68
@johnyzh94 Uff, to jsem si oddechl. Chlapi, moc se omlouvám. Fakt jsem nějak zazmatkoval a asi tam nakopíroval nějaký mezistav. Ještě se zeptám. Tys to už adaptoval na Orange TV? Mohl bys to také zveřejnit?
 
Citovat
#69
Nic sa nestalo, od toho tu je komunita :)
Este nie, v priebehu vecera/zajtrajska to bude.
 
Citovat
#70
@Client: aha tak například HBO / Cinemax funguje jak není v playlistu diakritika ale třeba ČT1 mi nefunguje protože diakritika.... Není tam nějaká chybka ve tvoření playlistu u programů s diakritikou?
toto nejde: pipe:///storage/.kodi/userdata/o2tv.sh/streamer.sh ČT1%20HD ct1hd
toto jde: pipe:///storage/.kodi/userdata/o2tv.sh/streamer.sh HBO%20HD hbohd
mám full nabídku...
 
Citovat
#71
@otava5 Zkusím ověřit, ale tohle až skutečně doma večer.
 
Citovat
#72
Mam balik sport a ČT Sport s diakritikou mi funguje.
 
Citovat
#73
Musel jsem prohnat ČTčka přes UrlDecode a již i mě to jde....
Kód:
pipe:///storage/.kodi/userdata/o2tv.sh/streamer.sh %C4%8CT1%20HD ct1hd
@Client udělal bys pro mě změnu ve playlist scriptu? 6

Jde udělat změna v playlist.sh na:
id=$(echo ${channel} | jq '.channelKey' | tr -d '"' | sed 's/ /%20/g' | sed 's/Č/%C4%8C/g'
Ale je to nepraktické co pak č,š,Ž  1
 
Citovat
#74
@otava5 Ono asi v tomto případě bude záležet i na systému. Ideální by bylo použít iconv, ale ten např. v LE a OE není. Udělám si tedy konverzní tabulku pro sed.
 
Citovat
#75
@otava5 Můžeš to prosím vyzkoušet? Opravená verze playlist.o2tv-0.3 uložena do https://www.xbmc-kodi.cz/prispevek-prehled-skriptu-pro-ott-iptv-v-tvheadend?pid=67399#pid67399.
 
Citovat
#76
@Client: ano výborně verze 0.3 funkční na CoreElecu 9.xx...
Uměl by jsi udělat i T-Mobile ??? 6
 
Citovat
#77
@otava5 Objednal jsem si T-Mobile TV službu. Předpokládám, že ji za 14 dní vrátím, takže to snad během té doby stihnu.
 
Citovat
#78
@Client potvrzuji funkcnost sportpacku s pouzitymi inicialy z predchoziho playlist doplnku.skvela prace a vsiml jsem si,ze uz nevypadava zvuk(mikrovypadky),coz v minulosti delalo
Rpi3-raspios-tvh+hyperion  ,  Kiii pro-Coreelec 9.2.8-tvh+sat (testy),  Ugoos X3 Pro dualboot ATV/CoreElec
 
Citovat
#79
@ericek74 Díky za info. To potěší, že se s tím "nebabrám" zbytečně. Co se týče těch mikrovýpadků zvuku, to podle mne s novým způsobem generace playlistu nesouvisí. To je prostě náhoda, že jim to začalo fungovat lépe ve stejný okamžik.
 
Citovat
#80
Ty mikrovýpadky jsem pozoroval u HLS streamu typu STB (1080i). Horší kvality typu PC nebo Tablet byly v pořádku. Jejich streamovací server to enkódoval s chybami, nebyl to korektní HLS stream, měl s tím problém i VLC, a když jsem si patlal malou webovou aplikaci na přehrávání O2 TV pro mé kamarády, tak s tím měl problém každý javascriptový HLS přehrávač. Pokud jsem upravil ten O2TVPlaylist script od Pavůčka a v HTTP requestu požádal místo HLS o DASH stream, tak ten byl enkódován korektně bez mikrovýpadků.

Můj odhad je, že ten stream pro settopboxy typu HLS neprovozovali, ten jejich server nám to posílá když si o to požádáme, ale sami používali buď DASH, nebo pro uživatele v jejich O2 síti multicast vysílání a HLS pouze pro prohlížeče v 720p co neumí DASH.

Ale díky moc za tip, vyzkouším to s tím HLS! Takhle mi na iOS šlo v prohlížeči jen max. 720p.
SZ nepoužívejte na dotazy, které se hodí pro všechny. Pouze pokud chcete abych něco někde doplnil, opravil.
_____
i3 Haswell + Arch Linux + Docker (Tvheadend + WG + Home-Assistant + Deconz + LetsEncrypt ) + Samba Share
Apple TV (Infuse, TvhClient), Apollo Lake Mini PC (Kodi 18.4)
 
Citovat
  


Přejít na fórum:


Prochází: 3 host(ů)