Category Archives: Tech

Media center szent grál saga: ne vegyél most TV-t!

házimozi HOWTO komplett workflow-t magyaráz el, a Plex + Logitech Harmony HOWTO pedig a kedvenc TV-re kötött médiafogyasztó alkalmazásom és a Logitech Harmony okos távirányítók házasítását ecseteli. Mindkét postban az XMBC alkalmazásból született Plex media centeré volt a frontend főszerepe, aki pár napja váltott a 0.9.0 verzióra. A 0.9.0-s váltás a Plex Media Server parserei által tömött metadata library teljes megújulását hozta, s ezzel egyidőben megszületett a Plex iOS app is, amely iOS alapú eszközökre teszi lehetővé a media center által látott tartalom streamelését, valamint a desktop Plex frontend alkalmazás távirányítójává alakítja az iOS appot futtató eszközt. A 0.9.0 még bírkózik pár problémával, de bízom benne, hogy hamarosan kinövi ezeket. Sok esetben az ember egy nyitott platformú ingyen alkalmazásnál csak legyintene egyet erre, ám a Plex-es fiúk valami nagy bejelentést tartogattak még a múlt hét végére, amely eloszlatta bennem az ilyen jellegű aggodalmakat. A Plex fejlesztői megállapodtak az LG Electronics-szel, hogy a 2011-től megjelenő egyes LG TV-kben és BluRay lejátszóiban a gyártó integrálni fogja a Plex frontend alkalmazást, ami a Plex Media server által streamelt tartalmakat képes majd az LG eszközein megjeleníteni. Ezzel együtt a dédelgetett, szabadidőben fejlesztett Plex-et a srácok mostantól a saját céges kereteik között, főmunkaidőben fejlesztik és nekiállnak a Plex Media Server több platformra történő portolásának is. Annak ellenére, hogy az LG felkarolta a remek media centert, a fejlesztők nem kötöttek velük kizárólagos szerződést, valamint továbbra is nyitott és ingyenes platformnak tartják meg mind az alkalmazást, mind a plugin API-t. A sok rizsa után íme egy kis sneak peek a most zajló IFA kiállításról: Egy szó mint száz: ha mostanában terveznél TV-t upgrade-elni, megéri megvárni, mire a “Plex powered” LG Smart TV-k ellepik a piacot (arról meg majd egy következő postban beszélgetünk, hogy az LG azon kevés televízió gyártók egyike, aki a készülékei seggére szerelt soros port specifikációját nyíltan letölthetővé teszi, szabad utat engedve ezzel a korrekt épületfelügyeleti integrációnak). ]]>

Mac workflow: vágjunk filmet!

Final Cut Express 4 alkalmazását használom. Ugyan az aktuális iLife csomagban ott van az erre készült korrekt kis iMovie, azonban valami miatt még a Mac-es életem elején felhagytam vele (talán nem tudott frame-re pontosan vágni) és maradt a FCE, amit a mai napig nagyon szeretek.

A probléma

Az Apple az utolsó iMovie/Final Cut release után előállt az “open format timeline”-nak nevezett dologgal, ami nagyjából annyit tesz, hogy konvertálás nélkül keverheted a videovágó software-ben a különböző video codec-ű nyersanyagokat, meg fogja emészteni on the fly. Ez így is van, csak éppenséggel precíz munkához a 2008 late harvest MacBook Pro-n használhatatlan a tömörített nyersanyag, úgyhogy video nyersanyagot konvertálni muszáj. A nagytesó Final Cut Studioban erre ott a beépített Compressor alkalmazás és egy fancy Apple ProRes 422 codec, de ez tegyük fel, hogy nekünk most nem áll rendelkezésre és keressünk helyette ingyenes megoldást. A másik, viszonylag ritkábban jelentkező, éppen azért alattomos kis probléma, mikor az audio sávban használt mp3 “cirpel”, pattog, vagy akár 1-1 frame erejéig kihagy, a teljes rendering után is. A ludas ezúttal is a tömörítés, úgyhogy az audio adatunkat is ki kell, hogy csomagoljuk.

A megoldás #1/2: video konvertálása

A mozink konvertálásához a squared5.com által gyártott ingyenes MPEG Streamclip nevű alkalmazást fogjuk használni, melynek OS X és Windows változata is létezik. Advancedebb arcok persze az ultimate ffmpeg appot használják command line varázslattal, de én lustaságból leragadtam a GUI-s toolnál. Mondjuk pont OS X alatt simán lehetne gyártani egy Folder Action scriptet, ami az erre dedikált “konvertáló pool” jellegű folderbe bedobált file-okat nekiáll ffmpeg-gel azonnal kicsomagoltatni… na, talán egy másik workflow postban megcsináljuk. Az általam termelt video nyersanyag 1920×1080 PAL (=25fps) felbontású, H.264 codec-kel készül a kamera belsejében. A tömörített file-jainkat az MPEG Streamclip az alábbi beállításokkal kóserolja ki szép uncompressed, ám mégis valamennyire tömör formába (=ezt fedi le a beállított Apple Intermediate Codec): mpeg-streamclip-settings-5dmk2 Az MPEG Streamclip egy kötegben végigcsinálja ezt az összes forrásadatunkkal, plusz a folyamat megállítható, meg még sok egyéb fancy dologra képes, amiket nem részletezünk. Persze egy darab ciklus lenne a kötegelt feldolgozás az ffmpeg-et hívó shell scriptnek is, de hát a lustaság nagy úr…

A megoldás #2/2: audio konvertálása

A zenét Quicktime 7 segítségével konvertáljuk AIFF formátumúra, amit a FCE már gond nélkül fogyaszt: quicktime-7-export-to-aiff Ezután más dolgunk már nincs, mint feldolgozni a preparált nyersanyagokat. Have fun!]]>

Új user input device: Apple Magic Trackpad

régóta várom, hogy megjöjjön az eszük, és letegyék az asztalra ezt: Apple-Magic-Trackpad Ma végre letették. Remélem minél előbb elkészül a driver minden létező OS-re, hogy minél több user élhesse meg, milyen fantaszikus user interface-et alkotott a multitouch trackpaddel az emberiség! Update: Boot Camp-es Win* alá már itt is van.]]>

Nem kapni a boltban

fb2 hozta elő az agyamból a dolgot egy naponta látogatott chatszobában: mi, a XXI. század coderei túlságosan el vagyunk kényeztetve. A tech világ eseményei hihetetlen sebességgel ömlenek a feedreaderünkbe, már pusztán a beérkező info szűrése komoly időszeletet köt le az életünkből. Mellette ott a social media, illetve a saját {mikro}blog. Mindezek mellett szép lassan elmaradt a (nálam legalábbis) ~10 éve még sokkal aktívabban létező kódolási vágy. Nem mondom, most is megírom a scripteket a saját kényelmemre, valamint jellemzően C-ben csinálok kisebb, minimalista célsoftware-eket saját magamnak, de nagyobb, átfogóbb, általánosabb alkalmazást már csak business alapon fejlesztek – csak úgy, a világ jobbítására nemigen. Ha ilyenre van igényem, az első eszköz, amihez nyúlok a Google, nem pedig az Xcode vagy a gcc. Pedig tálcán kínálják a jobbnál jobb eszközöket: iOS alá ott az ingyen fejlesztői környezet, amivel a saját telefonomra fejleszthetnék, de az asztali OS X Xcode-ja is adná a komplett Objective C IDE-t (csak győzzem megtanulni). Pedig programozni továbbra is programozom, hisz ebből élek. Megy a VBA, toljuk a home automation szekerét, szóval kódolnivaló van bőven. Mindezekből jöhetne az adekvát válasz, hogy “de pont azért nem kódolsz szabadidődben, mert munkaként is ezt csinálod” – csakhogy nálam ez nem így van. Azon kevés szerencsések közé tartozom (köszönhetően életem első főnökének, aki felmondással fenyegetett meg, ha nem leszek a MEO laborban laboránsból C64 operátor :-)), akiknek a munkája a hobbija. Szeretek adni és imádom, mikor olyat adhatok egy usernek, amitől az ő élete könnyebb lesz. Láttam már olyan felhasználót, aki sírva fakadt, miután felfogta, hogy a neki készült új algoritmus havi 5 nap túlórától szabadítja meg – nagyon megindító pillanat volt, szívből kívánom minden coder társamnak, hogy átélje, minél többször. Szóval szeretem a hobbista munkám és kevésnek érzem a ráfordított időt. Az aikido edzőm mondogatta mindig még kamasz koromban: “ha egyszer elkezdenének időt árulni a boltban, minden pénzem arra költeném”. Milyen igaza volt! ]]>

A nap FAQ-ja

A postot Gaba cimborám nyugodtan tekintheti online hálálkodásnak, hogy rámutatott a bejegyzés alapjául szolgáló Aquapac mini phone 104-es névre hallgató, iPhone kompatibilis tokra. Thanks, Gaba!

  • Q: Befér-e az Aquapac 5 méterig vízálló, szifonhoz fejlesztett passzentos tokjába az iPhone 3GS egy masszívabb tokkal a hátán, mint pl. amilyen a vaddisznó Switch Easy Rebel Serpent iPhone 3G? A: Bele hát!
  • Q: Az érdes hátú tokban tartott szifonnal fennáll-e a friss Aquapac tokba ragadás problémája? A: Dehogy! Az érdes felület nem engedi a szűz fóliát letapadni, a telefon könnyen ki-berámolható a vízhatlan tokból/tokba.
  • Q: Oszt a kapacitív elven működő szifon touch screen teljesen jól működik az Aquapac tokban, vagy lagos lesz a fólia miatt az UI, mint a népdalban a kiscsizma? A: Semennyire sem.
  • Q: Teljesen érthető, torzulásmentes így a beszéd? A: Igen.
  • Q: Hát a back face kamera kilát-e? A: Jóhogy, a gyártó csinált neki snájdig átlátszó ablakot. Teljesen OK a kép.
  • Q: Ha előbb van annyi eszed eFi, hogy utánamenj mindennek, akkor úsztál volna szifonnal 20 percet a delfinek után? A: Naná! De majd legközelebb – nem ez volt az utolsó búvártúra.
  • Q: Vajon könnyebb lesz-e a post létrejötte után az élete a bolygó geek kockahalmazából azoknak, akik egy iPhone 3GS-t, egy Switch Easy Rebel Serpent iPhone 3G-t és egy Aquapac mini phone 104-et szeretnének együtt használni, de ezidáig nem merték, mivel mindenféle aggályaik támadtak? A: Természetesen – ezért írtam le az egészet.
Most látom, hogy a fotó kicsit sárgásra sikerült, de most nincs idő az udpate-re, ezért így marad. A színe ellenére jól láthatóan bizonyítja, hogy milyen pompásan elfér a bumszli (és egyébként éppen ezért nagyon sokat védő) tokkal a szifon a vízhatlan bugyiban.]]>

Mac workflow: házimozi HOWTO

A vas Nálam egy 2. generációs Mac Mini látja el az otthoni média server feladatát. Ezt a perfekt kis Mac-et az Apple épp az elmúlt hetekben tuningolta meg: unibody házba került, vaddisznó GPU-t forrasztottak az alaplapra, akár 8 GB RAM is belefér, 1.3-as, audio jelet is szállítani képes HDMI portot integráltak bele, de ami a legfontosabb: idle állapotában 10 Wattot eszik a kis dög! Sajnos az itthoni ára ijesztően magas (240kHUF), ellenben gyönyörűséges egy szerkezet: Mac Mini mid2010

A CEC pofon

Ha már szó esik az új Mac Miniről, nem állhatom meg, hogy ne osszak ki a gyártónak egy virtuális sallert a CEC kompatibilitás hiánya miatt 2010-ben – ezt nézzük meg kicsit belülről. A HDMI három kommunikációs csatornát definiál: ezek sorjában a DDC, a TMDS és az opcionális CEC:
  • A DDC (=Display Data Channel) a megjelenítő eszközök paramétereit cipeli, mint kontraszt, fényerő.
  • A TMDS (=Transition Minimized Differential Signaling) hordja a képet és a hangot.
  • A CEC (Consumer Electronic Control) lenne felelős az egy HDMI láncba kötött eszközök közös vezérléséért.
HDMI_Connector_PinoutA CEC lényegében egy egy lábas soros busz a HDMI madzagban (a 13. láb az övé, a 17. láb pedig a GND-je), ami arra lenne hivatott, hogy a különböző gyártók készülékei egymás között ezen a buszon beszélgessenek és bármelyikük masterként a többit utasíthassa slave funkciók elvégzésére. Humánra fordítva ez kb. úgy hangzik, hogy a master HDMI eszközöd (jellemzően a TV) távirányítója az összes többi, a HDMI láncba kötött eszközt instruálja, azaz mondjuk a TV távirányítóján levő REC button utasíthatja a HDD rekordered, hogy kapcsoljon be, álljon be ugyanarra a csatornára, amit a TV-n nézel és kezdjen el rögzíteni. Vagy egy másik példa: legyen elég egy darab OFF button megnyomása ahhoz, hogy minden komponens (erősítő, HDD rekorder, TV) kikapcsoljon. Csak hogy lásd, a mocsok gyártók milyen szinten sz@rnak a próbálkozásra, ami a XXI. században eljuttatná a világot a single remote Nirvánába, íme a lista a HDMI-CEC támogatás jelölésére a különböző márkák készülékein:
  • Anynet (Samsung)
  • Aquos Link (Sharp)
  • BRAVIA Sync (Sony)
  • HDMI-CEC (Hitachi)
  • Kuro Link (Pioneer)
  • CE-Link, Regza Link (Toshiba)
  • RIHD (Remote Interactive over HDMI) (Onkyo)
  • SimpLink (LG)
  • HDAVI Control, EZ-Sync, and VIERA Link (Panasonic)
  • EasyLink (Philips)
  • NetCommand for HDMI (Mitsubishi)
Klassz. Ezek után bármilyen eladót kérdezhetsz, ha nem kellően kocka, fogalma nem lesz arról, ki fia-borja az a HDMI-CEC. A CEC dróton (13. láb) tehát bőszen küldhetnénk a Mac Miniről a TV felé a “bekapcsol + csatornát vált + hangerő beállít” commandokat, amint felébresztjük a házi almás media playerünket, de sajna az Apple-t ez egyelőre nem hatja meg. Ha a TV-n van soros port, akkor még mindig nekiállhatunk izmozni némi vezérléssel (egyszer majd lesz erről is post, ígérem), azonban amíg ez nincs, addig marad a Logitech Harmony univerzális távirányító, ami pöpecül képes vezérelni az általam is favorizált media center software-t, a Plexet is (HOWTO erre).

A software

A korrekt média gyűjtemény összeállításához az alábbi alkalmazásokat állítjuk csatasorba:
  • RipIt – egy klikkes DVD archiválás
  • FairMount – DVD mounter, ha nem kell nekünk a RipIt
  • Handbrake – videó formátumok egymásba konvertálása
  • Plex – media center a Mac-re
  • Air Video – video streamer iPhone/iPad-re
  • Rivet – az Air Video kihívója: video/audio/photo streamer iPhone/iPad-re
Mindegyikről érdemes pár szót ejteni, nézzük őket szép sorjában! RipIt RipIt A RipIt rém egyszerű alkalmazás: app elindít, DVD bedug, némi pörgés azt már meg is kaptuk a másolatot a DVD-nkről. Az app jelenleg az 1.5.1-es verziónál jár, a fejlesztő srácok folyamatosan mennek utána a DVD gyártók által alkalmazott másolásvédelmi trükköknek és adják ki az újabbnál újabb release-eket (saját site-jukon áll, hogy ha találnak egy nem rippelhető DVD-t, abból beszereznek egyet és beépítik az alkalmazásukba a fixet, amint lehet). A RipIt képes a DiscIdent DVD azonosító szolgáltatását használni ahhoz, hogy felismerje az épp rippelés alatt álló lemezt. A fejlesztők most kezdenek integrálni bele egy “Compress” névre keresztelt (egyelőre beta) feature-t, ami lényegében a DVD leghosszabb trackjének egy darab MP4 file-lá való konverzióját teszi lehetővé. Azzal sincs gond, ha inkább a full DVD copy mellett maradnál és nem konvertálnád a lemezeidet, akkor megkérheted a RipIt-et, hogy csapja hozzá a DVD folderéhez a .dvdmedia kiterjesztést, amitől OS X alatt a folder tartalmát azonnal az óperenciás rendszerbe épített DVD Player nyitja meg. A RipIt talán legnagyobb vonzereje, hogy a media centernek használt Mac-en futtatva “zsinórban” etetheted az alkalmazást a még be nem grabbelt lemezekkel: az esetek nagy százalékában (=amikor nincs gondja a rippelendő lemezzel) nem kell ránézned az UI-ra, mivel a kiköpött diszkről már látod, hogy adhatod neki az újabb korongot (nota bene: a RipIt a sok cimborám által gyűlölt Growl notifikációra is képes, ami meg akár értesít a munkagépen, ha kész a rip, sőt, push üzenetet küld a telefonomra a Prowl.app segítségével ha kérem, de ez majd egy másik workflow post témája lesz ;)). FairMount A FairMount egy olyan DVD mounter app, ami bármely DVD-t olvasó alkalmazás számára lehetővé teszi a lemez hibamentes olvasását. A FairMount fejlesztői készítik DVDRemaster nevű ripper alkalmazást is – ennek egy része a FairMount, mely a DVDRemasterrel ellentétben ingyenesen szedhető tőlük. A FairMount-tal felcsatolt DVD lemez tartalmát tehát nagy esélyyel akár egy Finder copyval is lemásolhatod a HDD-re – onnantól pedig semmi nem állíthat meg, hogy meg ne etesd a Handbrake-kel. Handbrake A keresztségben a “Kézifék” nevet kapó app az igazi MP4 generátor harcos! Létezik neki remekül scriptelhető, CLI-only verziója is. A HandbrakeCLI hajtására számos script született – ez például rekurzívan végigmegy az inputként specifikált folderben és az ott található összes VIDEO_TS mappa tartalmát könyörtelenül átzúzza mp4-be – cool. A 0.9.4-es Handbrake kiadásban megjelent a várva várt soft subtitle támogatás, melynek segítségével kikapcsolható feliratokat (akár többet is) rendelhetünk a mozi mellé, ráadásul úgy, hogy a felirat jöhet egy külső SRT file-ból. Na, erre nemsokára varrok egy scriptet és közzé is teszem itt, csak türelem 🙂 Plex A Plexről, mint a Mac-es media centerek királyáról már írtam bőven a Logitech Harmonys postban – ami mégis ide kívánkozik, az a Plex “scraper” funkciója, amivel a media librarynk metaadatait lebányássza a netről. Nálam a filmek a /Volumes/video/film/a-film-imdb-syntax-szerinti-neve/filmcim.mp4 hierarchiában laknak. Ez a struktúra ideális a Plex scraper számára, aki szépen a háttérben gyűjtögeti a libraryban megjelent mozikhoz a metaadatot. A folder nevében az invalid folderneveket generáló karaktereket (ilyen OS X alatt a kettőspont) egyszerűen elhagyom – a Plex scraper így is megtalálja őket az adatbázisban: Újmagyarul mondva a /Volumes/video folder a NAS-ról felmountolt AFP share. Igenám, csakhogy mind a Mac Mini, mind a NAS néha bealszanak, a NAS-t firmware update esetén újrabootolom (hosszabb áramszünet esetén az UPS teszi vele ugyanezt), azaz az AFP mount elmúlik. Így volt ez egészen Mac OS X Leopard-ig, amikor jött a megváltó automount! Az automount minden esetben megcsinálja a mountot, amint valamely alkalmazásunk az automount-ra jelölt folder tartalmához nyúlna. Nézzük meg, mi kell a fenti /Volumes/video AFP share automountjához. Első lépésnek csinálj egy bejegyzést a /etc/fstab file-ban (sudo nano /etc/fstab):
mynas:/mozi /Volumes/video url automounted,url==afp://username:password@mynas/mozi 0 0
A fenti példára az alábbiak igazak:
  • mynas: a gép neve, ami a network share-t biztosítja
  • mozi: a network share neve a mynas gépen
  • /Volumes/video: a helyi folder neve, ahova mountoljuk az AFP share-t (=mount point)
  • username: a felhasználó neve a mynas serveren
  • password: a felhasználó jelszava a mynas serveren
Ezután már csak egy sudo automount -vc kell és már kész is a csoda: innentől kezdve az AFP share magától mountolódik, valahányszor szükséged van rá. Air Video Az Air Video volt az első streaming app, amire rátaláltam. Ez az alkalmazás arra képes, hogy egy tetszőleges Mac-en levő videókat iOS alapú eszközökre (iPod Touch, iPhone, iPad) streameljen. Amennyiben nem a natív H.264 kódolású videót kéred tőle, úgy képes a host gépet megkérve konvertálni, sőt, akár on-the-fly konverzióval azonnal rendelkezésre tudja bocsájtani a streamet. Az Air Video iOS alkalmazása fizetős. A konverziót FFmpeg végzi, így a server oldal ingyen van. Az FFmpeg backendnek köszönhetően létezik belőle Linux oldali streaming server port, így háttérMac hiányában is remekül használható az app. Rivet A végére maradt a frissen felfedezett üdvöske, akinek a server oldala egyelőre még csak trial módban fut a munkaMac-en. A Rivet-et ugyanaz a The Little App Factory készíti, aki az előbb már emlegetett RipIt alkalmazást. A Rivet az Air Videohoz képest zenét és képet is kiszolgál a saját iOS kliensének, ráadásul a képeket hajlandó a hagyományos folderen kívül iPhoto és/vagy Aperture libraryból is szedni – ez kell nekem! Számtalanszor fordult már elő, hogy este megmutatnék pár napközben készült képet a családnak, amelyek a frissességükből fakadóan még nincsenek archiválva és csak a munkaMac-en laknak – erre a helyzetre tökéletes megoldást látszik kínálni a Rivet. Licencelés szempontjából a Rivet esetében fordított a helyzet: az iOS kliensek ingyenesek, míg a Mac-only server pénzes. Air Video vs Rivet Ha videóról van szó, még sokáig marad az Air Video a nyeregben: az UI egyszerűen átgondoltabb / átláthatóbb, a streaming hihetetlen zökkenésmentes. A Rivet esetében sajna ugyanezt nem tudom elmondani: a bufferelés lassú, a videóknál hajlamos valami torz aspect ratio-t használni és a kép minősége is hagy kívánnivalót maga után. A Rivet ennek ellenére még marad: ezidáig ő az egyetlen eszköz, amivel a workMac-en lakó fotókat mutogathatom a famíliának. ]]>

Az iPhone/iPad esete a digitális kamerákkal

A feladat: digitális fényképezőgéped LCD képernyőjénél nagyobb felületen ellenőrizni az elkészült kép minőségét, lehetőleg úgy, hogy a kamerát ne kelljen egy computerhez hozzádrótozni. A megoldás elmélete: WiFi kell a kamerába és már megy is. A probléma hardware-es feloldása Monitor funkciónak használjunk ezúttal iPhone-t, vagy iPad-et és nézzük a kamera oldalát. Az alábbi lehetőségekről tudtam ma hajnalig:

  1. Eleve WiFi-vel integrált kamerát használsz.
  2. Eye-Fi SD kártyát teszel az SD kártyát fogadni képes kamerádba, amely WiFi-t ad a kamerádnak a storage funckió mellett.
  3. CompactFlash-only DSLR-hez a szelén árával vetekedő WiFi adaptert vásárolsz (5D Mark II esetén ez >200kHUF – WTF?), már ha a DSLR-edhez kapható ilyen egyáltalán.
Vegyük ebből a legrosszabb esetet: CompactFlash-only DSLR-be kell WiFi-t hegesztenünk. Erre kínál megoldást a SynchroTech CFMulti CompactFlash Type II to Eye-Fi™ + Multi-Card Adapter, ami CF-nek mutat egy belerakott SD kártyát, ráadásul sikeresen tesztelték vele az Eye-Fi kártyáit is. Ha 2010 június 30-ig rendeled, itt egy 4 USD-t érő kupon: 1259098824. Vas kipipálva, már csak WiFi tethering alkalmazás után kell néznünk. Az “App” ShutterSnitch-nek hívják a varázslatot, ami egy 6 EUR-ba kerülő iPhone/iPad alkalmazás. Az app az RGB hisztogramos review funkció mellett email/FTP integrációt, eltérő beállításokra figyelmeztető triggereket, valamint szerkesztési lehetőségeket kínál. warnings_histogram Sajna 63 USD a legolcsóbb FedEx posta a CF adapter kütyüre, de Jofkovék valószínűleg olcsóbban meghozzák.]]>

GIRO számlaszám ellenőrző algoritmus

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#define INPUTLEN 27
int main() {
	char szlaszam[INPUTLEN];
	int o, i, digit, sum, cs, cc;
	int mul[] = {9, 7, 3, 1, 9, 7, 3};
	printf("GIRO számlaszám 00000000-00000000-00000000 alakban: ");
	fgets(szlaszam, INPUTLEN, stdin);
	for (o = 0; o < 19; o += 9) {
		sum = 0;
		for (i = 0; i < 7; i++) {
			digit = szlaszam[o + i] - '0';
			sum += digit * mul[i];
		}
		cs = szlaszam[o + 7] - '0';
		cc = 10 - (sum % 10);
		printf("checksum: stored =  %d vs calculated = %d -- %sVALID\n", cs, cc, ((cs == cc) ? "" : "IN"));
	}
	return 0;
}
]]>