Společnost JetBrains uvolnila Mellum, tj. svůj velký jazykový model (LLM) pro vývojáře, jako open source. Mellum podporuje programovací jazyky Java, Kotlin, Python, Go, PHP, C, C++, C#, JavaScript, TypeScript, CSS, HTML, Rust a Ruby.
Vývojáři Kali Linuxu upozorňují na nový klíč pro podepisování balíčků. K původnímu klíči ztratili přístup.
V březnu loňského roku přestal být Redis svobodný. Společnost Redis Labs jej přelicencovala z licence BSD na nesvobodné licence Redis Source Available License (RSALv2) a Server Side Public License (SSPLv1). Hned o pár dní později vznikly svobodné forky Redisu s názvy Valkey a Redict. Dnes bylo oznámeno, že Redis je opět svobodný. S nejnovější verzí 8 je k dispozici také pod licencí AGPLv3.
Oficiální ceny Raspberry Pi Compute Modulů 4 klesly o 5 dolarů (4 GB varianty), respektive o 10 dolarů (8 GB varianty).
Byla vydána beta verze openSUSE Leap 16. Ve výchozím nastavení s novým instalátorem Agama.
Devadesátková hra Brány Skeldalu prošla portací a je dostupná na platformě Steam. Vyšel i parádní blog autora o portaci na moderní systémy a platformy včetně Linuxu.
Lidi dělají divné věci. Například spouští Linux v Excelu. Využít je emulátor RISC-V mini-rv32ima sestavený jako knihovna DLL, která je volaná z makra VBA (Visual Basic for Applications).
Revolut nabídne neomezený mobilní tarif za 12,50 eur (312 Kč). Aktuálně startuje ve Velké Británii a Německu.
Společnost Amazon miliardáře Jeffa Bezose vypustila na oběžnou dráhu první várku družic svého projektu Kuiper, který má z vesmíru poskytovat vysokorychlostní internetové připojení po celém světě a snažit se konkurovat nyní dominantnímu Starlinku nejbohatšího muže planety Elona Muska.
Poslední aktualizací začal model GPT-4o uživatelům příliš podlézat. OpenAI jej tak vrátila k předchozí verzi.
Výchozí situace v mém domě nebyla nepodobná tomu, co se najde v domácnostech řady z vás. Ke každé z televizí vede anténní přívod a pokud používáte DLNA nebo něco obdobného, tak ještě ethernet. Leda by vám šířkou pásma postačovala Wi-Fi, kterou ale zase nebývají televize tak často vybavené.
Problém nastal při takovém malém škatulata hejbejte se, kdy bylo nutné přesunout televizi na místo, kde s tím nebylo při návrhu počítáno. Navíc se pořizovala jedna televize navíc pro děti. Otázkou tedy bylo, jak všechny televize zapojit, když je k dispozici jen ethernetová zásuvka (ty jsou všude). Tomuto problému by se dalo předejít tím, že rozvedete anténní přípojky všude, ale to mi kdysi přišlo zbytečné (a ani teď se na tom moc nezměnilo). Rozhodl jsem se tedy rozšířit své „domácí IPTV“ i na televize.
Televizní příjem mám řešený pomocí satelitních antén. Na rozdíl od pozemního vysílání není možné anténní kabely volně rozbočovat, je proto potřeba, aby ke každému přijímači vedl jeden kabel zvlášť. V mém případě jsem řešil přívod čtyř anténních vodičů k serveru, aby bylo možné přijímat čtyři nezávislé transpondéry (multiplexy), aniž bych musel vrtat moc velké díry. Jako ideální řešení se nakonec ukázalo použití čtyřnásobného koaxiálního kabelu, který je díky svému celistvému obalu estetičtější než čtyři volné kabely. Mezi jeho nevýhody pak patří vyšší útlum (u sat. příjmu nemusí vadit) a příliš tenké vodiče, na které se poněkud hůře montuje F konektor.
Druhou klíčovou částí je pořízení příslušné televizní karty do serveru. Jedním způsobem by bylo zaplácat si kartami vícero slotů nebo to tahat přes USB, se kterým mám zase špatné zkušenosti se stabilitou. Já jsem zvolil satelitní kartu TBS6985 se čtyřmi tunery DVB-S2. Výhodou karty je podpora modulací 16APSK a 32APSK (hodí se k příjmu některých transpondérů, které nejsou určené k běžnému příjmu – DTH) nebo podpora vysokých symbolových rychlostí (až 45 Msym/s). Nevýhodou jsou ovladače mimo jádro (naštěstí už open source) a problémy při vyšších přenosech dat, na které naráží lidé s některými hardwarovými konfiguracemi (o tom později). Pokud se vám nechce platit clo z Číny a ještě dlouho čekat, než to projde nechvalně známou celní budovou na Praze 5, tak vám poradím, že se karta dá koupit i z německého e-shopu TBS za cca. 5000 Kč včetně DPH.
A nakonec tu máme otázku přijímačů jako takových. O softwaru jsem měl jasno: XBMC. Pak už to bylo jednoduché – musel jsem najít něco, na čem XBMC dobře poběží. Po zhodnocení různých ukázek na internetu jsem zvolil Raspberry Pi. Jako jednu z velkých výhod považuji podporu HDMI CEC: ovladačem k televizi můžete ovládat nejen televizi, ale i XBMC. Pokud budete Raspberry Pi navíc napájet z USB portu televize, tak se bude XBMC spouštět a vypínat vždy současně s televizí. Přítelkyně a manželky možná ocení, že se krabička s Raspberry Pi dá schovat kamsi za televizi a neleží tam tedy další „krám“.
TBS dodává své open source (nikoliv free software) ovladače v podobě „forku“ stromu V4L media_tree. Jako alternativa slouží některé další stromy, které mohou mít aktuálnější kód z media_tree nebo různé opravy. Pokud si kompilujete vlastní jádro, je lepší si podporu multimediálních zařízení vypnout a mít ji dodanou právě tímto externím kódem. Vyhnete se tak případným konfliktům.
Úspěšné načtení ovladačů a nalezení karty je pak indikováno v dmesg:
[ 2.675672] DVB: registering adapter 0 frontend 0 (TurboSight TBS 6985 DVBS/S2 frontend)... [ 2.675815] DVB: registering new adapter (SAA716x dvb adapter) [ 3.148014] TurboSight TBS 6985 Frontend Attaching... [ 3.228793] TurboSight TBS6985 DVB-S2 card port1 MAC=00:22:ab:90:44:19 [ 3.228796] DVB: registering adapter 1 frontend 0 (TurboSight TBS 6985 DVBS/S2 frontend)... [ 3.228973] DVB: registering new adapter (SAA716x dvb adapter) [ 3.700010] TurboSight TBS 6985 Frontend Attaching... [ 3.780787] TurboSight TBS6985 DVB-S2 card port2 MAC=00:22:ab:90:44:1a [ 3.780790] DVB: registering adapter 2 frontend 0 (TurboSight TBS 6985 DVBS/S2 frontend)... [ 3.780888] DVB: registering new adapter (SAA716x dvb adapter) [ 4.252020] TurboSight TBS 6985 Frontend Attaching... [ 4.332793] TurboSight TBS6985 DVB-S2 card port3 MAC=00:22:ab:90:44:1b [ 4.332797] DVB: registering adapter 3 frontend 0 (TurboSight TBS 6985 DVBS/S2 frontend)...
A pak také v /dev/dvb:
$ ls /dev/dvb adapter0 adapter1 adapter2 adapter3
Při ručním ladění DVB-S2 transpondérů dbejte na to, že karta nepodporuje autodetekci všech parametrů. Proto zadávejte nejen základní údaje (frekvence, polarizace, symbolová rychlost), ale i ty ostatní (FEC, konstelace, rolloff). Pokud rolloff nevíte, zkuste hodnoty 35, 25 a 20, nejčastěji je to 35. Nezapomínejte si při používání scan-s2 správně zvolit adaptér (například čtvrtou kartu argumentem -a 3).
Na serverové straně jsem ozkoušel jak Tvheadend, tak VDR, u kterého jsem nakonec zůstal. Nastavení Tvheadend sice vypadá jako jednodušší díky webovému rozhraní, z dlouhodobého hlediska je ale webové rozhraní spíš na obtíž kvůli své pomalosti (snad exponenciálně závisející na počtu kanálů, které máte). Další výhodou VDR je plugin pro SoftCAM (zatímco Tvheadend se může jen připojit ke keyserveru) nebo odladěnost po mnoha letech vývoje.
Odrazíme se od konfigurace z minulého článku a ukážeme si jen jednu věc navíc. Nastavení přepínače DiSEqC, prováděné v konfiguračním souboru /etc/vdr/diseqc.conf, může být jiné pro každý z tunerů. Stačí oddělit jednotlivé sekce číslem tuneru a dvojtečkou (pozor, čísluje se od jedničky):
1: # odpovídá /dev/dvb/adapter0 #S28.2E:9750/S28.2E:10600/11700/VH%1_1:%| S28.2E 11700 V 9750 t v W15 [E0 10 39 F0] W15 t S28.2E 99999 V 10600 t v W15 [E0 10 39 F0] W15 T S28.2E 11700 H 9750 t V W15 [E0 10 39 F0] W15 t S28.2E 99999 H 10600 t V W15 [E0 10 39 F0] W15 T #S23.5E:9750/S23.5E:10600/11700/VH%1_2:%| S23.5E 11700 V 9750 t v W15 [E0 10 39 F1] W15 t S23.5E 99999 V 10600 t v W15 [E0 10 39 F1] W15 T S23.5E 11700 H 9750 t V W15 [E0 10 39 F1] W15 t S23.5E 99999 H 10600 t V W15 [E0 10 39 F1] W15 T #S1W:9750/S1W:10600/11700/VH%1_3:%| S1W 11700 V 9750 t v W15 [E0 10 39 F2] W15 t S1W 99999 V 10600 t v W15 [E0 10 39 F2] W15 T S1W 11700 H 9750 t V W15 [E0 10 39 F2] W15 t S1W 99999 H 10600 t V W15 [E0 10 39 F2] W15 T 2: # odpovídá /dev/dvb/adapter3 ...
Pokud nemáte na všech tunerech k dispozici ty samé družicové pozice, tak právě pomocí tohoto souboru VDR pozná, jaká stanice je k dispozici na jakém tuneru.
V minulém článku jsme pro streamování TV vysílání z instance VDR používali plugin vdr-streamdev. Ten ale přes síť neposkytuje všechny možnosti VDR, a tak se ke komunikaci mezi XBMC a VDR používá plugin vdr-xvdr (nástupce vdr-vnsi), na straně XBMC pak zase příslušný addon. Pěkné je, že vás addon bude upozorňovat i na různé události (někdo přidal nahrávání pořadu, nahrávání se právě spustilo apod.) Z hlediska nastavování na serveru je důležité hlavně povolit IP rozsah naší sítě:
$ cat /etc/vdr/plugins/xvdr/allowed_hosts.conf 127.0.0.1 10.10.10.0/24
Pro Rapsberry Pi najdete hned několik distribucí určených k provozu XBMC na tomto hardwaru. Nejlepší zkušenosti jsem měl s OpenELEC, i když jsem nakonec skončil u Gentoo (přinejmenším startuje rychleji).
Kromě běžných věcí – například nastavení statické IP adresy, pokud chcete lehce urychlit start – je nutné nastavit addon XVDR. Zde jde o IP adresu VDR a dále pak o zaškrtnutí volby, že se má po přepnutí stanice čekat na I frame (volba určená speciálně pro Raspberry Pi). Dalším vhodným nastavením je zaškrtnutí „Neukládat EPG do databáze“ – podle mého pozorování se sice EPG do databáze stále ukládá, ale nemusíte na dokončení synchronizace před spuštěním TV kanálů čekat (může to trvat opravdu dlouho). Jako poslední zajímavou volbu zmíním možnost nastavit si výchozí obrazovku XBMC právě na televizi, což v kombinaci s nastavením, že se má pustit poslední přehrávaný kanál, napodobí chování klasické televize.
Jelikož RPi nemá vlastní hardwarové hodiny, tak je nutné čas vždy při spuštění systému nechávat synchronizovat proti NTP serveru. Pokud už doma provozujete IPTV server, tak je výhodné si zprovoznit i NTP server – synchronizace RPi tak proběhne výrazně rychleji.
Satelitní tuner TBS6985 (nebo jeho ovladače) trpí zvláštním problémem, kdy při vyšších datových tocích z karty dochází k nahodilému poškozování dat. To se projevuje hláškami TS discontinuity nebo continuity counter error, pokud zkusíte stream přehrávat na počítači. Výrobce tvrdí, že na vině jsou vadné základní desky, někteří ale upozorňují, že na Windows se problém neprojevuje a ostatní hardware (jako síťové karty) funguje na stejném systému pod Linuxem bez problémů. Faktem ale je, že minimálně jeden defekt některých desek se této kartě vyvolat daří, a to zaseknutí přerušení, na které Linux reaguje hláškou irq XX: nobody cared – zdravím tímto ASUS. Naštěstí je možné přerušení z této karty posílat i přes MSI, což bez jakýchkoliv negativních dopadů problém obchází:
$ cat /etc/modprobe.d/tbs.conf options saa716x_tbs-dvb int_type=1
Na Raspberry Pi narážím na dva druhy problémů: napájení a kompatibilita XBMC. S napájením je problém ten, že na cestě k Raspberry Pi se snadno poztrácí část napětí, které je pro stabilní provoz nezbytné. Ačkoliv RPi zapojuji do vysokoodběrového portu v televizi (1 A) a k RPi jako takovému nemám připojeny žádné periferie, horší USB kabel snadno poztrácí i 0,2 V a stejně hloupě se chová i pojistka na RPi, na které podle mých měření mizí klidně dalších 0,15 V.
Důsledek je ten, že pokud je RPi silně vytíženo (CPU i GPU, k tomu provoz na ethernetu a připojené HDMI), k čemuž může docházet hlavně v přehlídce TV stanic se spuštěným náhledem stanice vysílající v HD, tak může napětí (měřeno na GPIO pinech) klesnout i na 4,55 V. To může vést ke krátkodobým výpadkům HDMI, v horších případech k vypnutí ethernetového USB modulu, co je součástí Raspberry Pi. Jako řešení se nabízí vyřadit pojistku a sehnat si lepší USB kabel (což bývá problém poznat).
XBMC vytýkám jediný bug (který jsem už nahlásil), a to, že při přepínání mezi SD a HD stanicemi zapomíná někdy přenastavit zoom, takže třeba najednou máte roztaženou horní levou čtvrtinu vysílání přes obrazovku. To se ná naštěstí obejít ručním nastavením zoomu u HD stanic na „Původní“. Drobností je pak ne úplně intuitivní ovládání dálkovým ovladačem (i když to se prý dá někde v konfiguračním souboru změnit) – ze zapnuté televizní stanice vyskakuji tlačítkem stop (čtvereček), exit nefunguje a return má úplně jiný význam. Výkon Raspberry Pi není úplně optimální, takže některé operace (jako zobrazení kompletního EPG) mohou trvat několik sekund. Celkově se ale dá říct, že XBMC má propracovanější rozhraní než většina set-top boxů, takže podobné nedostatky jsou vyvážené něčím jiným. Oproti řadě set-top boxů ani nestartuje Linux s XBMC o moc déle, což je asi i důsledkem toho, že je Linux na set-top boxech velmi rozšířený.
Výkonností problémy se pak objevují ještě na dvou místech: v rozšířeních (které jsou psané v Pythonu a jsou extrémně pomalé) a při přehrávání HD filmů se zvukem v DTS (kdy jedno z vláken XBMC jednou za několik sekund vytíží CPU natolik, že se zvuk krátce přeruší). Podpora HW dekódování DTS se prý připravuje, možná by ale stačilo, kdyby to nepracovalo tak nárazovitě...
Celkově jsem s tímto řešením moc spokojený. Usnadnilo mi ladění nových stanic, nahrávání pořadů na serveru je elegantní, mám k dispozici i timeshift a zbavil jsem se problému s chybějícími anténními zásuvkami po domě. XBMC navíc funguje lépe než DLNA v televizích, kde například nebylo doposud nijak spolehlivě vyřešeno zobrazování titulků (umí to jen některé televize, které podporují jen některá kódování atp.).
Výhody:
Nevýhody:
Nástroje: Tisk bez diskuse
Tiskni
Sdílej:
Vámi popisované řešení je zajimavé v případech, kdy stačí přijímat a distribuovat data ze čtyřech multiplexů, což většinou nestačí.WTF? Proč by ne? Tady přece neřešíme multicast.
Jak by to vypadalo při použití několika takových karet? (cca 3 kusy) Zvládne to ještě PC?Bez problémů, zátěž je minimální.
Ale i v takovém případě se vyplatí dělat rozvod.Proč? Moje náklady jsou 3x800 + 5000 = 7400 Kč. Kupovat STB, který by odpovídal funkčnosti, kterou v článku popisuji, by bylo cca 3x4000 Kč = 12000 Kč. Navíc TV signál ještě posílám do domácího kina s XBMC (běžné PC), takže tam by musel být zase další přijímač navíc. To už jsme na 16000 Kč.
Rozbočovat signál z LNB pochopitelně lze, je to jen složitější.Ano, ale zpravidla jen na malý počet satelitních pozic. Já jich přijímám aktuálně cca. 6.
Ušetřených 20kKč se ovšem rozplyne v nákladech na energii spotřebovanou serverem za cca 4 roky.Neprovozuju server jen kvůli televizi. Je to jen jedna z mnoha služeb, co tam běží.
Škoda, že ho nepodporují běžné grafické karty. Viděl jsem sice nějaké krabičky, které se vloží mezi PC a televizi/monitor a ty příkazy posílají po USB, ale to bylo řádově dražší než obyčejný IR přijímač, který funguje taky.
Tentokrát už ale nebudeme streamovat ze serveru na počítač, ale ze serveru do televize (respektive do Raspberry Pi).A Raspberry Pi není počítač? Protože o podobné značce televizí jsem ještě neslyšel...
odpojilo by to někoho kdo se už dívá nebo by měl smůlu nově příchozí?Má smůlu nově příchozí. Jinak nahrávání má obvykle vyšší prioritu, takže to naopak někoho vykopne, pokud je to nutné.
Nerozumím jedné věci, jak funguje dekódování, kde je dekódovací karta?To není předmětem tohoto článku. O vdr-sc a oscam tu byly jiné články.
co by se stalo v případě, kdyby klientů bylo pět a ten pátý by se chtěl dívat na jiný mux než ostatní?Dostane chybu "all receivers busy".
Niektore zakladne dosky maju s touto kartou problemy, nenabehne ani bios (bola to nejaka intel doska zo 4 pcie). Na supermicro mainboarde to fungovalo, ked sa zmenili nastavenia v biose (nejaky pcie legaci mod ak si dobre spominam).To mi řekněte, jestli je tohle normální. Já už nejsem ochoten věřit, že by to byl ryze problém těch desek a podezřívám spíš ty karty.
jak v dobách 4 televizních kanálůno já si pamatuji i doby kdy byly jen 2 naše a nic jiného. Po čase ORF1+ORF2 a většinou se pak člověk díval raději na rakušáky než na naše.
dalo najít něco rozumnéhoTo tedy nedalo, aspoň nyní si nevzpomenu na co bych se v těch letech díval. No snad jen na sport (záznam z F1).