Byly vyhlášeny výsledky letošní volby vedoucí/ho projektu Debian (DPL, Wikipedie). Poprvé povede Debian žena. Novou vedoucí je Sruthi Chandran. Letos byla jedinou kandidátkou. Kandidovala již v letech 2020, 2021, 2024 a 2025. Na konferenci DebConf19 měla přednášku Is Debian (and Free Software) gender diverse enough?
Byla vydána nová verze 10.3 z Debianu vycházející linuxové distribuce DietPi pro (nejenom) jednodeskové počítače. Přehled novinek v poznámkách k vydání. Přidána byla podpora Orange Pi 4 LTS. Přibyl balíček Prometheus.
Implementace VPN softwaru WireGuard (Wikipedie) pro Windows, tj. WireGuard pro Windows a WireGuardNT, dospěly do verze 1.0.
V Pekingu dnes proběhl 2. ročník půlmaratonu humanoidních robotů. První 3 místa obsadili roboti Honor Lightning v různých týmech. Nový rekord autonomního robota je 50 minut a 26 sekund. Operátorem řízený robot to zvládl i s pádem za 48 minut a 19 sekund. Řízení roboti měli časovou penalizaci 20 %. Před rokem nejrychlejší robot zvládl půlmaraton za 2 hodiny 40 minut a 42 sekund. Aktuální lidský rekord drží Jacob Kiplimo z Ugandy s časem 57 minut a 20 sekund [𝕏].
Stanislav Fort, vedoucí vědecký pracovník z Vlčkovy 'kyberbezpečnostní' firmy AISLE, zkoumal dopady Anthropic Mythos (nový AI model od Anthropicu zaměřený na hledání chyb, který před nedávnem vyplašil celý svět) a předvedl, že schopnosti umělé inteligence nejsou lineárně závislé na velikosti nebo ceně modelu a dokázal, že i některé otevřené modely zvládly v řadě testů odhalit ve zdrojových kódech stejné chyby jako Mythos (například FreeBSD CVE-2026-4747) a to s výrazně nižšími provozními náklady.
Federální návrh zákona H.R.8250 'Parents Decide Act', 13. dubna předložený demokratem Joshem Gottheimerem a podpořený republikánkou Elise Stefanik coby spolupředkladatelkou (cosponsor), by v případě svého schválení nařizoval všem výrobcům operačních systémů při nastavování zařízení ověřovat věk uživatelů a při používání poskytovat tento věkový údaj aplikacím třetích stran. Hlavní rozdíl oproti kalifornskému zákonu AB 1043 a kolorádskému SB26-051 je ten, že federální návrh by platil rovnou pro celé USA.
Qwen (čínská firma Alibaba Cloud) představila novou verzi svého modelu, Qwen3.6‑35B‑A3B. Jedná se o multimodální MoE model s 35 miliardami parametrů (3B aktivních), nativní kontextovou délkou až 262 144 tokenů, 'silným multimodálním vnímáním a schopností uvažování' a 'výjimečnou schopností agentického kódování, která se může měřit s mnohem rozsáhlejšími modely'. Model a dokumentace jsou volně dostupné na Hugging Face, případně na čínském Modelscope. Návod na spuštění je už i na Unsloth.
Sniffnet, tj. multiplatformní (Windows, macOS a Linux) open source grafická aplikace pro sledování internetového provozu, byl vydán ve verzi 1.5. V přehledu novinek je vypíchnuta identifikace aplikací komunikujících po síti.
V programovacím jazyce Go naprogramovaná webová aplikace pro spolupráci na zdrojových kódech pomocí gitu Forgejo byla vydána ve verzi 15.0 (Mastodon). Forgejo je fork Gitei.
Současně se SUSECON 2026 proběhne příští čtvrtek v Praze také komunitní Open Developer Summit (ODS) zaměřený na open source a openSUSE. Akce se koná ve čtvrtek 23. 4. (poslední den SUSECONu) v Hilton Prague (místnost Berlin 3) a je zcela zdarma, bez nutnosti registrace na SUSECON. Na programu jsou témata jako automatizace (AutoYaST), DevOps, AI v terminálu, bezpečnost, RISC-V nebo image-based systémy. Všichni jste srdečně zváni.
Pokud jste ještě nečetli první díl, možná by stálo zato začít tam.
V mnoha případech videoadaptér příliš možností vstupu a výstupu nenabízí. Například řadič kamery může nabízat samotnou kameru a nic moc dalšího. V jiných případech je však situace komplikovanější. TV karta může mít několik vstupů odpovídajících různým konektorům na desce; může mít dokonce i více tunerů schopných nezávislého fungování. Tyto vstupy někdy mívají odlišné charakteristiky; některé mohou být schopny naladit širší rozsah video standardů než ostatní. Totéž platí pro výstupy.
Je zřejmé, že aby mohla aplikace videoadaptér plně využívat, musí mít možnost se dozvědět o dostupných vstupech a výstupech a zároveň ji musí být umožněno si zvolit ten, se kterým si přeje pracovat. Pro tento účel nabízí Video4Linux2 API tři různá ioctl() volání pro vstupy a tři pro výstupy. Ovladače by měly implementovat všechny tři (pro každou z podporovaných funkcí). U jednoduchého hardwaru jde většinou o jednoduchý kód. Kromě toho by ovladače měly poskytovat rozumné výchozí hodnoty nastavené po zapnutí. Co by však ovladače dělat neměly, to je reset informací o vstupu a výstupu po ukončení aplikace; podobně jako u dalších video parametrů by tato nastavení měla zůstat zachována.
Než se však dostaneme k podrobnostem o vstupech a výstupech, musíme se podívat na video standardy. Tyto standardy popisují, jak je videosignál formátován pro přenos - rozlišení, počet snímků za vteřinu atd. Většinou jsou standardy určovány příslušnými úřady v každé zemi. Na světě se používají tři hlavní typy video standardů: NTSC (používán převážně v Severní Americe), PAL (většina Evropy, Afrika a Asie) a SECAM (Francie, Rusko, části Afriky). V různých zemích se však standardy mírně liší a některá zařízení jsou v tomto ohledu přizpůsobivější než jiná.
Vrstva V4L2 reprezentuje video standardy pomocí typu v4l2_std_id, což je 64bitová maska. Každá varianta je pak jeden bit masky. Takže "standard" NTSC je V4L2_STD_NTSC_M s hodnotou 0x1000, ale japonská varianta je V4L2_STD_NTSC_M_JP (0x2000). Pokud si zařízení poradí se všemi variantami NTSC, může nastavit typ standardu V4L2_STD_NTSC, který má nastaveny všechny relevantní bity. Podobné sady bitů jsou k dispozici pro varianty PAL a SECAM. Vizte kompletní seznam.
Pro uživatelský prostor poskytuje V4L2 ioctl() příkaz (VIDIOC_ENUMSTD), který aplikaci umožňuje zjistit, které standardy zařízení implementuje. Ovladač nemusí na takovou otázku odpovídat přímo - místo toho prostě naplní pole tvnorm struktury video_device všemi standardy, které podporuje. Vrstva V4L2 pak pro aplikaci vyčlení podporované standardy. Příkaz VIDIOC_G_STD, používaný pro zjišťování toho, který standard je právě aktivní, je v rámci vrstvy V4L2 také obsluhován vracením příslušné hodnoty v poli current_norm struktury video_device. Při spuštění by měl ovladač inicializovat current_norm, aby odpovídalo skutečnosti; některé aplikace jsou zmateny, pokud není nějaký standard nastaven - ačkoliv samy žádný nenastavovaly.
Pokud si chce aplikace vyžádat určitý standard, použije volání VIDIOC_S_STD, které je ovladači předáno prostřednictvím:
int (*vidioc_s_std) (struct file *file, void *private_data,
v4l2_std_id std);
Ovladač by měl hardware naprogramovat tak, aby použil daný standard a vrátil nulu (nebo záporný chybový kód). Vrstva V4L2 se postará o nastavení current_norm na novou hodnotu.
Aplikace by mohla chtít vědět, jaký signál vlastně hardware na svém vstupu vidí. Odpověď lze nalézt pomocí VIDIOC_QUERYSTD, který k ovladači přistupuje takto:
int (*vidioc_querystd) (struct file *file, void *private_data,
v4l2_std_id *std);
Ovladač by měl toto pole vyplnit co nejpodrobněji. Pokud hardware neposkytuje moc informací, pole std by mělo ukazovat některý ze standardů, které by to mohly být.
Za zmínku ještě stojí jedna věc: všechna video zařízení musí podporovat (nebo alespoň tvrdit, že podporují) přinejmenším jeden standard. Video standardy sice nedávají smysl u kamer, které nejsou vázány na nějaké konkrétní předpisy, ale neexistuje žádný standard, který by říkal "Jsem kamera a umím skoro všechno, co si můžeš přát". Takže vrstva V4L2 má několik ovladačů, které tvrdí, že vracejí buď PAL nebo NTSC data.
Aplikace pro získávání videa začne očíslováním dostupných video vstupů pomocí příkazu VIDIOC_ENUMINPUT. V rámci vrstvy V4L2 bude tento příkaz převeden na volání odpovídajícího zpětného volání ovladače:
int (*vidioc_enum_input)(struct file *file, void *private_data,
struct v4l2_input *input);
V tomto volání je file to otevřené video zařízení a private_data je soukromé pole nastavené ovladačem. Skutečné informace jsou předávány struktuře input; má několik polí, která nás zajímají:
Za normálních okolností nastaví ovladač všechna uvedená pole a vrátí nulu. Je-li index mimo rozsah podporovaných vstupů, bude vrácena -EINVAL; nic moc dalšího už se u tohoto volání pokazit nemůže.
Když chce aplikace aktuální vstup změnit, obdrží ovladač volání svého zpětného volání vidioc_s_input():
int (*vidioc_s_input) (struct file *file, void *private_data,
unsigned int index);
Hodnota index má stejný význam jako předtím - určuje vstup, o který má aplikace zájem. Ovladač by měl hardware naprogramovat tak, aby tento vstup použil a vrátil nulu. Další možné hodnoty jsou -EINVAL (v případě nesmyslného indexového čísla) nebo -EIO (pro potíže s hardwarem). Toto zpětné volání by ovladače měly implementovat i v případě, že podporují jen jediný vstup.
K dispozici je také zpětné volání pro zjištění toho, který vstup je právě aktivní:
int (*vidioc_g_input) (struct file *file, void *private_data,
unsigned int *index);
V tomto případě ovladač nastaví *index na indexové číslo právě aktivního vstupu.
Proces číslování a vybírání výstupů je velmi podobný jako u vstupů, takže popis bude stručnější. Zpětné volání pro očíslování výstupů vypadá takto:
int (*vidioc_enumoutput) (struct file *file, void *private_data
struct v4l2_output *output);
Pole struktury v4l2_output jsou:
K dispozici jsou rovněž zpětná volání pro nastavování a zjišťování aktuálního nastavení výstupů; odpovídají zpětným voláním u vstupů:
int (*vidioc_g_output) (struct file *file, void *private_data,
unsigned int *index);
int (*vidioc_s_output) (struct file *file, void *private_data,
unsigned int index);
Všechna zařízení, která podporují výstup videa, by měla mít každé z těchto tří zpětných volání definována - i když je možný jen jediný výstup.
Jsou-li tyto metody po ruce, může V4L2 aplikace zjistit, které vstupy a výstupy jsou na daném zařízení dostupné, a vybrat si z nich. Trochu komplikovanější je pak určování, jaký druh video dat těmito vstupy a výstupy teče. Další díl tohoto seriálu se zaměří na video formáty a to, jak se na video formátu dohodnout s uživatelským prostředím.
Nástroje: Tisk bez diskuse
Tiskni
Sdílej: