Portál AbcLinuxu, 30. dubna 2025 13:33

Asciicast

12.12.2024 15:51 | Přečteno: 1109× | Za vším hledej Linux | poslední úprava: 13.12.2024 13:59

Když jsem psal minulý blogpost o kormidelníkovi co najel s lodí Macromedia na útesy Adobe, už jsem měl rozepsaný blogpost jiný. Na jiné téma, ale když už Karkar dal průchod své zvědavosti, pastnu sem jeho úvodní část.

Víte co je na palici? Když se textový obsah terminálové konzole konvertuje do bitmapy a následně publikuje jako animovaný gif, nebo video. Fakt to nechápu, když už víc jak 10 let existuje aplikace, co umí nahrávat a přehrávat události z terminálu do tzv. asciicastu, který lze pauznout, přehrávat tam i zpět, zatím co animované PNG, GIF, ba ani to pitomé animované SVG se během přehrávání nijak ovládat nedají.

Ty bitmapové formáty fungují v podstatě jako klasická plošková animace. Okno terminálu je na pozadí a to v pravidelném intervalu překrývají průhledné vrstvy. Pokud někoho zajímá jak to vypadá, doporučuji otevřít odkazovaný animovaný soubor demo.gif v editoru GIMP. Má 212 vrstev a pozadí se překreslí asi čtyřikrát. Jenže i když je to fakt dobře udělaný animovaný GIF, furt má skoro 15MB! Originální asciicast, který najdete v repozitáři agg má 1,8MB.

Proto mne tak nadchly možnosti aplikace asciinema a dost mne překvapuje, jak málo lidí o ní ví. Dokonce i na tomhle webu pochází většina zmínek ode mne:

A na konkurečním webu root.cz není ani to. Posuďte sami:

O podobných aplikacích, termtosvg a termsvg je na českých portálech, včetně počítačového bulváru zive.cz povědomí čistá nula, proto jsem také váhal má-li vůbec smysl se tady někoho ptát, jestli náhodou neví, jakým způsobem lze z animovaného SVG vyexportovat jeden frame.

Animované SVG, vygenerované přes termsvg má totiž 24MB. A během přehrávání vypadá zrovna tohle upřímně řečeno dost hrozně, ale je to SVG. Jinak je to stejným drátem do oka, jako u těch bitmapový formátů. Animované SVG lze totiž udělat mnoha způsoby a neeexistuje pro to žádný univerzální standard, který by se dal implementovat do Inkscape. Takže když to SVG otevřete v Inkscape, uvidíte jen výchozí frame.

Obě zmíněné aplikace totiž řeší animaci přes jednoduchou transformaci. Jako když si promítáte diáky. Na plátno (terminál) se promítá obsah rámců. Rozdíl je pouze v tom, že termtosvg má zásobník v ose Y, zatím co termsvg v ose X. V atributu animate-duration je celkový čas záznamu a přes keyframes se v pravidelných intervalech volá funkce, která posouvá jednotlivé objekty na „plátno”.

Každý snímek obsahuje plný obsah okna, proto je to SVG tak velké. Jenže jsem nenašel nic přes co by se dalo říct – vyplivni mi snímek, který je vidět v čase T. No tak jsem si holt vyrobil kromě asciiframe (CLI editor asciicastu) také skript svgframe, který to pro mne udělá, ale ještě ani jedno z toho ještě nemá finální podobu. Nicméně, pokud to někoho zajímá více o tom píšu na své wiki.

       

Hodnocení: 50 %

        špatnédobré        

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

Komentáře

Nástroje: Začni sledovat (0) ?Zašle upozornění na váš email při vložení nového komentáře. , Tisk

Vložit další komentář

13.12.2024 00:35 jejda | skóre: 25 | blog: jejda
Rozbalit Rozbalit vše Re: Asciicast
Odpovědět | Sbalit | Link | Blokovat | Admin
už víc jak 10 let existuje aplikace, co umí nahrávat a přehrávat události z terminálu
Co já vím, tak takové věci uměl linux odjakživa. Na unixech je ta fičura prý už od roku 1979. Kdybych ale potřeboval zachovat vizuální kvalitu nebo bych to chtěl přehrávat někde kde není normální terminál, nahrál bych to okno ffmpegem a hotovo. Minutová náhrávka má tak 5-10MB (záleží na velikosti okna a fps). Vytáhnout jeden konkrétní snímek z videa je brnkačka. Kdyby ten terminál bylo potřeba někomu ukazovat na dálku v reálném čase, takové věci myslím umí tmux. S nějakýma gifama nebo SVG se nemá cenu trápit.
13.12.2024 00:41 Want
Rozbalit Rozbalit vše Re: Asciicast
Přečti si prosím stránku na kterou odkazuji úplně na konec. Máš to tam hned zkraje v čem je rozdíl.
13.12.2024 09:20 jejda | skóre: 25 | blog: jejda
Rozbalit Rozbalit vše Re: Asciicast
Zkusil jsem a pěkné docela. Dokonce to zvládá přehrávat takové šílenosti jak je třeba htop nebo mc. To starý scriptreplay neumí. Že v tom nejde krokovat dozadu je škoda. No stejně si moc neumím představit naco by se to kromě hraní si dalo použít. Na výuku je nejlepší obyčejný prohledávatelný text s ukázkovýma příkladama a případně doplňkovým komentářem. Něco ve stylu unix manuálů nebo archwiki. Člověk přitom není v časovém stresu, nasává si informace nelineárně podle svojí potřeby a svojim tempem.
13.12.2024 10:25 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: Asciicast
Že v tom nejde krokovat dozadu je škoda.

To právě umí ten javascriptový přehrávač asciicastu. Proto jsem implementoval ten widget. A umí to i značky, takže nemusíš tápat když v tom hledáš nějakou konkrétní operaci.

No stejně si moc neumím představit naco by se to kromě hraní si dalo použít.

Mimo jiné jako doplněk toho textu. Podívej se kupř. na ten můj odkazovaný diskuzní příspěvek ohledně toho záznamu jak komunikuje curl.

Na výuku je nejlepší obyčejný prohledávatelný text s ukázkovýma příkladama a případně doplňkovým komentářem.

Na výuku snad, ale já potřebuji dokumentovat postupy. Tak, aby je byli schopni zopakovat a pochopit i lidé co se primárně nevěnují IT. Výhodou asciicastu je také to, že si mohu nahrávat co dělám a zpětně si to přehrát, když se k tomu po letech potřebuji vrátit, nebo to chci zdokumentovat tou formou, o jaké se zmiňuješ.

Přečti si diskuzi co probíhá na rootu na téma Poměr cena vs. výkon u seniorních vývojářů.

No. Tak já jsem nastoupil v roce 2008 do černé díry. Předávka proběhla tak, že mi předchůdce předal (bez vysvětlení) několik listů potištěného papíru, oznámil že se stroje laboratorní infrastruktury virtualizují přes XEN a zmizel. Nebyl nikdo, kdo by měl komplexní přehled o IT infrastruktuře celé katedry. Každý znal jen ten svůj kousek mozaiky. Takže první rok, jsem chodil jak v pohádce o kohoutkovi a slepičce abych si ji složil sám.

Bohužel je zcela běžné, že se lidé nahrazují bez toho, že by docházelo k nějakému předání know-how. Když jsem odcházel z úřadu, moc se divili, proč je na to místo pouze jeden zájemce – můj kámoš. Vůbec jim nedošlo, jak moc se toho za těch 5 let změnilo. Já nastupoval na místo webmastera. A za mne hledali administrátora virtualizované citrixové farmy. On byl zvýhodněn jenom tím, že měl mimo představy co ta práce obnáší také moje telefonní číslo.

Podle mne dobrému „seniorovi” záleží na tom, aby „juniory” vytáhnul co nejrychleji na svou úroveň. A kvalitní „junior” nepohrdá cizími zkušenostmi.

Uživatel MalyTomi se v té diskuzi také ptá: „Prosim ta, ako sa predpovedat, co bude o 10-15 rokov? hlavne co sa tyka IT oblasti?”.

Tak já následující tři roky hledal optimální řešení. A to co jsem našel, jede od roku 2012. Tj. 12 let s tím, že jsem ho – podle potřeby a aktuálních požadavků dál rozvíjel. Takže jak vidno, předvídat se to dá. Kdybych na samém počátku nemyslel do budoucna, tak by to nešlo. A OpenIntranet na úřadě jede už 20 let, i když se dnes využívá primárně už jen na monitoring aktuální přítomnosti zaměstnanců, protože větší část IT agendy už převzal Magistrát.

Problém je ale jinde. A to mělo být i původní téma tohoto blogpostu.

13.12.2024 13:43 Donald Truth
Rozbalit Rozbalit vše Re: Asciicast
Odpovědět | Sbalit | Link | Blokovat | Admin
Nas ucitel rikal: Jestli potrebujes spustit terminal pak delas neco fundamentalne spatne.
13.12.2024 13:52 Aleš Kapica | skóre: 52 | blog: kenyho_stesky | Ostrava
Rozbalit Rozbalit vše Re: Asciicast
Bill? Nebo debil? Mimochodem, kde je dnes. V důchodu? Nebo stále někde przní mládež?
14.12.2024 12:01 Radovan
Rozbalit Rozbalit vše Re: Asciicast
Očividně to měl trochu pomatené. Správně to zní:
Jestli potrebujes spustit terminal pak neco delas.
Dej mu přečíst tohle:

https://jug.cz/1409-3/

https://www.root.cz/clanky/komiks-karluv-guru/

Založit nové vláknoNahoru

ISSN 1214-1267, (c) 1999-2007 Stickfish s.r.o.