Byla vydána OpenIndiana 2026.10. Unixový operační systém OpenIndiana (Wikipedie) vychází z OpenSolarisu (Wikipedie).
Americký výrobce polovodičů onsemi (ON Semiconductor) zrušil plány na rozšíření výroby v rožnovském závodě v Česku za dvě miliardy dolarů (podle aktuálního kurzu zhruba 43,5 mld. Kč). Důvodem je vývoj na trhu.
O víkendu probíhá na FIT VUT v Brně konference OpenAlt 2026 o otevřeném softwaru a datech, IT bezpečnosti, DIY a IoT. Na programu je spousta zajímavých přednášek. Pokud jste v Brně, stavte se. Vstup zdarma. Přednášky lze sledovat i online na VHSky a YouTube.
Qualcomm uzavřel víceletou dohodu se SpaceX. Bude dodávat rádiové technologie, baseband jednotky a software pro plánovanou pozemní 5G síť Starlink Mobile. Výstavba má zahrnovat desítky tisíc základnových stanic v USA. Zahájení nasazování se očekává v roce 2027. Qualcomm dohodu označuje za svůj dosud největší 5G kontrakt.
Google rozšířil Cloud Vulnerability Reward Program. Nově nabízí odměnu až 250 tisíc dolarů za vysoce závažné architektonické bezpečnostní chyby označované jako Root-in-Cloud.
V březnu byla oznámena spolupráce GrapheneOS s Motorolou. Nejnovější vlajka Motorola Signature 27 je první Motorola s oficiální podporou GrapheneOS. GrapheneOS (Wikpedie) je varianta Androidu zaměřující se na bezpečnost a soukromí.
Omarchy (Wikipedie) je linuxová distribuce s dlaždicovým správcem oken Hyprland. Založena je na Arch Linuxu. Vydána byla v nové verzi 4.5.0. Nově také pro Apple Silicon, konkrétně pro M1/M2/M3/Neo MacBooky.
Byla vydána nová stabilní verze 8.3 webového prohlížeče Vivaldi (Wikipedie). Postavena je na Chromiu 156 s bezpečnostními opravami z Chromia 157. Přehled novinek i s náhledy v příspěvku na blogu.
Ne, tento blog opravdu nemá nic společného s vývojem Linuxového jádra :-) Jako "Jaderný blog" jsem jej pojmenoval jen kvůli mé oblibě jaderné fyziky a chemie.
Věnovat se chci především Linuxu a Free Softwaru, prezentovat zde svůj pohled na věc a věnovat se všem palčivým otázkám a problémům, na které narazím. Určitě se zde také objeví články týkající se KDE, jelikož jsem velkým milovníkem tohoto desktopového prostředí a obecně eye-candy (k velké nevůli "pravověrných" Linuxáků ;-)).
No a když už se to tu jmenuje Jaderný blog, možná se někdy dočkáte i nějakého populárně-vědeckého příspěvku, především pokud se bude jednat o nějaké ožehavé aktuální téma...
Máte digitální fotoaparát, který ukládá zvukové záznamy přímo do fotografií (v podobě EXIF dat)? Pokud ano, může se vám hodit můj jednoduchý program wavextract napsaný v Pythonu, který umí z JPEG fotografií tato zvuková data vyextrahovat a uložit jako klasický WAV soubor.
Včera jsem si dával chvilku pauzu mezi učením a chtěl jsem stáhnout fotky z digiťáku. U pár z nich byl i zvukový záznam. Vzpomněl jsem si na svůj už skoro rok starý blogpost Získání zvukového záznamu z EXIF dat, v kterém jsem psal o objevu programu exif-tools schopného extrahovat zvuková data z JPEG obrázků. Tento program byl už léta mrtvý a zapomenutý, ale díky jednomu ze čtenářů se ho podařilo zprovoznit.
Nicméně situace okolo tohoto programu se mi vůbec nelíbila. Zaprvé ho nikdo neudržoval a zadruhé potřeboval vlastní EXIF knihovnu, jejíž název kolidoval s dnes už standardní knihovnou libexif obsaženou snad ve všech distribucích. Navíc u fotek z mého digiťáku HP M307 prováděl extrakci zvuku jaksi pochybně - zvuk byl vyextrahován bez RIFF hlavičky a tak byl problém s jeho přehráváním.
Před nedávnem jsem se tedy (v rámci mého zdokonalování se v Pythonu) rozhodl, že naprogramuji ekvivalent onoho programu. Naštěstí Cčkový kód byl vcelku jednoduchý, a tak jsem během chvilky tušil kde se ona zvuková data v EXIFu schovávají a jak je vydolovat. Napsat na to jednoduchý prográmek v Pythonu byla pro mě otázka asi jen 1 hodiny, hlavně díky využití excelentní Python Imaging Library (PIL), která EXIF data umí parsovat. Pak už šlo jen o to z příslušných segmentů EXIF dat vydolovat RIFF hlavičku a samotná zvuková data.
Pokud by někoho zajímaly přesnějí informace o způsobu uložení těchto zvukových dat (pokud ne, tento odstavec klidně přeskočte
), tak se jedná o data ve FlashPix formátu uložená v APP2 segmentu EXIFu. Specifikace EXIF jsou veřejně dostupné (např. tady: EXIF 2.2), což člověku může hodně pomoct když ví co hledat, avšak specifikace FlashPix formátu veřejně dostupné nejsou, dostupné jsou pouze po zaplacení poplatku (viz. I3A Standards). Samotnou specifikaci FlashPix formátu se mi ovšem i přesto podařilo vygooglit (i když starší verzi), nicméně specifikace FlashPix Audio Extension nikde k mání zdarma ke stažení nebyla. Ovšem díky autorovi onoho původního prastarého programu exif-tools (tedy přesněji utility extract-wave v něm obsažené) a díky KHexEditu to ani nebylo nutné 
Ale abych se vrátil k jádru věci - včera když jsem tenhle svuj prográmek znovu využil jsem si uvědomil, že by bylo opravdu dobré ho konečně zveřejnit (chtěl jsem to udělat už dříve, ale nějak jsem byl línej
). Takže jsem založil projekt na BerliOS.de, stahovat můžete odsud: http://developer.berlios.de/projects/wavextract/
Snad se někomu tenhle prográmek hodí
Testoval jsem ho na fotkách z mého digiťáku HP M307 a také na testovací fotce přiložené k exif-tools (podle EXIFu pořízené digiťákem KODAK DC290) a fungoval naprosto bezchybně (MD5 sumy vytvořených WAV souborů si odpovídaly s MD5 sumami WAV souborů vytvořených proprietárním programem EXIFutils).
Tiskni
Sdílej:
;)
Jak říkám doufám že to někdo vubec využije, u toho mého starého blogpostu moc reakcí nebylo
try:
import Image
except ImportError:
print 'glupy uzivateli PILuj! nebo tak neco...'
Prijde mi to takove "slusnejsi".
na druhou stranu uz je dostupny ebuild, takze kazde slusnejsi distro zavislost vyresi ;)
A když ho nainstalován nemá, tak holt schytá výjimku i s tracebackem, jeho smůla
Ale až vydám další verzi, tohle v ní upravím... takto ošetřené je to asi opravu lepší.
) místo klasické list comprehension tam jak sestavuju ten seznam FlashPix streamů? Pak následně na ten generátor používám ve smyčce for funkci enumerate(), tak jestli enumerate náhodou výhody generátoru oproti seznamu nezlikviduje (že by z něho rovnou udělala klasický seznam).
Ještě zas tolik do detailů Pythonu nevidim
Mohl bych si to sice sám otestovat, ale do toho se mi teď nechce
Ale jak to funguje interně nevím, takže moje otázka zda enumerate() neruší výhody generátoru trvá
- dík