2025. december 3., szerda

Piper tts aktualizálás

 Mivel új videokártyám lett, új Linuxot is telepítettem hozzá. Utánanéztem, hogy a felolvasás terén támadtak-e új lehetőségeim. Az AI alapú szoftverek gombamódra szaporodnak manapság, van néhány ígéretes tts is, csak még nem épült köréjük ökoszisztéma, és pl. nem tudnak magyarul. A Piper tts elég jó hangzású ahhoz, hogy még maradjon.

Most nem lefordított végrehajtható állományt találtam a weboldalán, hanem Python verziót; ezt telepítettem virtuális környezetbe. A leírás szerint az alkalmi parancssori hívásnál gazdaságosabb http szerverként indítani, így csak egyszer tölti be a modellt. Ellenben a meghívása kissé összetettebb, a curl felhasználásával lehetséges. Konfigurálás közben két olyan részlettel kellett megküzdeni, amelyeknek a megoldását talán érdemes közzétenni, mert nem magától értetődő (az én szintemen).

Az egyik abból indul, hogy a Kubuntu 25.10 a pipewire hangrendszert használja. A megfelelő man page alapján összeállítottam a pw-play vélt meghívását, de az undok program néma maradt. Kértem AI-segítséget (a Geminihez szoktam fordulni, mert Google fiókom úgyis van), ő azt gyanította, hogy a megadott paraméterek ütköznek egymással. Adott néhány változatot kipróbálásra, ezek közül csak egy működött.

A másik bonyodalom az említett curl hívás, amely csöppet sem arra termett, hogy json paraméterében változót használjunk. Ez meghaladta az AI tanácsadóm látókörét is, de nem adtam fel, és sikerült megoldást találnom. Őszintén szólva a felhasznált jq programról sohasem hallottam, de az efféle alkalmak arra valók, hogy az ember fejlődjön.


Összefoglalásként a speechd.conf-ban az audio beállítás most

AudioOutputMethod "pipewire"

lett, a piper-pipe ből kihagytam a rate választó logikát, mert nem tervezek 'low' hangot használni, a piper-pipe aktuálisan így néz ki:

#!/bin/bash

curl -X POST -H 'Content-Type: application/json' -d "$(jq -n --arg var "$DATA" '.text = $var')" 127.0.0.1:5000 | \

pw-play --rate 22050 --channels 1 --raw -

wait

Amin nem változtattam, az a korábbi bejegyzésben olvasható


Mikorra mindezen átküzdöttem magam, találtam egy kész lehetőséget is: a pied titulusú programot. https://pied.mikeasoft.com Már nem volt okom kipróbálni. A nevét gyaníthatóan a hammelni patkányfogó ihlette, mert angol nyelvi környezetben az pied piper of hamelin.


2025. június 27., péntek

Gyümölcstorta, ahogyan én szeretem

 Tésztaalapként a kefíres kevertet szoktam alkalmazni. Hasonlít a piskótához, de nem olyan nyögvenyelős.  1 pohár finomliszt, 1 pohár rétesliszt, 1 pohár cukor, 1/2 pohár olaj, 3 tojás, kefír, 1 sütőpor, csipet só, kevés őrölt gyömbér és fahéj. Ez a nagy (450 g) kefíres pohárhoz illeszkedő összetétel, ha más méretű a pohár, a tojás és a sütőpor mennyiségét kb. arányosítjuk; kicsit több tojás nem szokott ártani neki.

A cukrot és a tojásokat elkeverem, hozzáadom az olajat, és a fűszereket. Utána következik a sütőporral elkevert liszt, és a kefír. A kefír elvileg 1 pohár, gyakorlatilag addig szoktam adagolni, amíg a massza önterülő sűrűségűvé nem válik. Mindjárt megy is a tepsibe, mert aztán sűrűsödne.

175 fokon sül, amíg gusztusos színe nem lesz.


A kisült tészta tetejére vaníliapuding kerül. Ehhez a nagyobbacska tepsihez két tasakból.

A pudingra még bőrösödés előtt rárétegezem a gyümölcsöt. A képen látható konkrét esetben magozott meggy. Arra pedig tortazselét csorgatok, hogy összefogja.




2025. február 12., szerda

Mai zenei ajánlatom

 Ezt a videót már régebben is néztem, csak akkor nem jutott eszembe, hogy itt ajánlatba tegyem. Most pótolom. Az afrikai fiatalember hangja csodálatos, szerintem ennél jobb Sarastro-áriát még nem hallottam.



2024. november 28., csütörtök

Karórépa és borscs

 A karórépa (https://hu.wikipedia.org/wiki/Kar%C3%B3r%C3%A9pa) egy régi zöldség, amelynek termesztése eléggé visszaszorult. Ez rám is vonatkozik, idén vetettem először. Leírom a tapasztalataimat, hátha valakinek hasznára lesz.

Először is, fontosnak tartom, hogy ez a növény nem azonos a tarlórépával (amit pl. kerékrépának is szoktak nevezni). Rokonok, mindkettő a káposzta rokonsága, de különböznek. A tarlórépa puhább húsú, az íze pedig a retekhez hasonló. Van benne valami 'ízárnyalat', ami nekem nem jön be. Másrészt a gyökérlégy károsítja, védeni kell ellene. Ezért - bár kipróbáltam - nem tartottam meg termesztésben.

A karórépa húsa keményebb, rostosabb, de annyira fás rostokat, mint amilyenek a karalábéban szoktak előfordulni, nem találtam benne. Lehet, hogy azért, mert elég vizet kapott. Az aromája leginkább a tormáéra hasonlít, de az agresszivitás kihagyásával. Ez nem csíp, és nem könnyeztet. Főzéskor nagyrészt eltűnik, elég gyenge íze lesz, ami nem igazán könyököl ki az ételből. Ez akár előny is lehet, sok mindenbe bele lehet tenni szaporításként. A gyökérlégy, úgy tűnik, nem szereti, eddig nem találtam fertőzöttet. Teszek ide képeket a kísérleti ágyásról, és a terményről.






Amint a metszeten látható, a húsa sárgás színű. Frissen recsegősen szilárd állagú, de azért vágható. Friss karalábéhoz, vagy sárgarépához tudnám hasonlítani. Van ahol látszik, hogy a répán belül előfordulnak üregek, hibás részek. Ezekre kívül semmi jel nem utal, daraboláskor nem árt résen lenni.


Az első, amire használtam hogy puhára főztem, és összetörtem. A skótok egyik nemzeti eledele a haggis with tatties and neeps. A haggis egy hurkaféle, eredetileg birkából. A tatties gyakorlatilag megegyezik a krumplipürével. A neeps pedig a főtt, tört karórépa. Valószínűleg ott is keveredik kissé a két répaféle elnevezése, mert a turnip, amiből a neeps származtatható, a tarlórépa helyi neve. A karórépa neve swede, vagy rutabaga. Az említett hármas teljesen fogyasztható; gyanúm szerint a répa a nehezebben termeszthető krumpli részleges kiváltása érdekében került bele.

A disznótoros mellé eddig párolt céklát szoktam készíteni. A párolt káposztával teljesen egyező módon. A jellege is hasonló, csak céklás ízvilággal. Most kipróbáltam felesben: céklából és karórépából. Mindkettőt finom szálasra gyalulva használom. Működőképes, a cékla íze és színe kissé hígul. De ez nem probléma. És a puhulási idejük jól egybeesik.

Szintén felesben csináltam olyan salátát, hogy szálasra gyalult karórépával és birssel úgy bántam, ahogyan a káposztasalátát csinálja az ember. Nem forráztam, hanem mikróban kapott egy kis hőkezelést, aztán leöntöttem ecetes salátalével, pici őrölt köménnyel fűszerezve. Ez is egy lehetőség. Megjegyzem, erre az volt a motivációm, hogy idén rengeteg birs termett, igyekszem azt is használni.

Székelykáposztába is jó a karórépa. A savanyú káposzta, amit venni szoktam, elég erősen savanyú, és sós. Máskor öblögetéssel szoktam szelídíteni, de tulajdonképpen sajnálom elönteni a hasznos anyagokat tartalmazó levet. A gyalult karórépával lényegében meghígítottam a savanyú káposztát, így nem volt szükség a mosásra. A kész ételből pedig nem lehetett kiérezni a különbséget.

Az (eddig) utolsó kísérleti felhasználás pedig a borscs nevű leves volt. Ukránok, oroszok, lengyelek főzik elsősorban. Valószínűleg olyasmi, mint nálunk a lecsó: mindenki egy kicsit másképp. A neten sok receptet lehet találni; én a saját hajlandóságom szerint néhány féle elolvasása után megalkottam a sajátomat.

Került bele sárgarépa, petrezselyem, savanyú káposzta, cékla, karórépa, három krumpli, kockázott hús, vöröshagyma, fokhagyma, elefánthagyma. A húst a székelykáposztához valóból tettem félre zsiradékon alaposan átpirított állapotban. Felöntöttem vízzel, puhára főztem. A zöldségféléket felaprítottam, a sárgarépát és a céklát olajban, erős lángon megpirítottam. Utána az olajban megfuttattam a hagymákat, minden bekerült a fazékba. Fűszerek: aszalt paradicsom, két kisebb paprika, babérlevél, bors, ételízesítő. Mindent puhára főztem, a végén a félretett savanyúkáposzta-lével beállítottam a savanykás ízt, és tejföllel behabartam.


2024. november 11., hétfő

A személyiség problémáinak tipizálása

A tudományos igényű gondolkodás egyik alapművelete a rendszerezés. Nagyobb mennyiségű ismeret esetén különböző jellemzők alapján csoportosítást végzünk. A csoportosítás akkor hatékony, ha a számításba vett jellemzők segítségével egyértelműen el tudjuk dönteni valamiről, hogy melyik csoportba tartozik.


Ennek a bejegyzésnek az indító motívuma megint Emma McAdam egy videója. Erről van szó: 


Az amerikai pszichológiai gyakorlatban elfogadott séma szerint megkülönböztet 7 típust a szorongásos zavarokon belül. Fogadjuk el kiinduló hipotézisnek, hogy ez helytálló. Tehát egy, vagy több tünet fennállása, kedvező esetben valamely jellemző(k) mérhető alacsony vagy magas értéke alapján hét csoportot tudunk képezni.

Mielőtt azonban ezzel foglalkoznék, elővezetek egy egyszerűbb, könnyebben megfogható analógiát. Egy William H Sheldon nevű pszichológus az emberek testalkatára vonatkozó tipizálási rendszert alkotott. Sokféle mérhető jellemző alapján az egyén kap három mérőszámot 1 és 7 között a három csíralemez dominanciájának jellemzésére. Így a szélsőséges esetek 7 1 1 endomorf, 1 7 1 mezomorf és 1 1 7 ektomorf típusú emberek. Mindez egy ilyen diagramon ábrázolható:


Fontos látni, hogy az emberek többsége nem polarizáltan, hanem keverten hordozza a mérhető jellemzőket. A formáció közepe a 4 4 4, ahol egyensúlyban vannak a három csíralemezből származtatott tulajdonságok. De az is gyakori, hogy az egyik csak kis mértékben tér el ettől.

Ha most visszatérek a szorongásos problémákra, ott nem három, hanem hét polarizált típust különböztetnek meg. Ezt is lehetne valahogy ábrázolni, csak nem egy síkban, hanem térben, úgy, hogy hét csúcspont a lehető legtávolabbra kerüljön egymástól. De könnyen lehet, hogy az euklideszi tér három dimenziója nem is megfelelő, mert nem tudunk benne tetszőleges csoportokat képezni. Inkább hét független matematikai dimenziót kellene használni. És itt is lehetnek olyan esetek, amelyek vegyesen, és különféle arányokban hordozzák a jellemzőket. Hogyan lehet az ilyen kevésbé típusos eseteket diagnosztizálni, aztán kezelni? És hadd fejezzem ki a kétségemet, hogy tényleg csak hét van. Lehetnek még olyanok, amelyek ritkábban fordulnak elő, ezért nem kaptak önálló helyet a tankönyvekben és az irányelvekben. Másrészt a személyiségnek nem csak szorongásos jellegű zavarai lehetnek; hogy csak még kettőt említsek: depresszió, és kényszeres személyiségzavar.

Azok a tulajdonságok, amelyeknek szélsőségesen magas - vagy éppen alacsony - értékei valamely nevesített személyiségzavarra jellemzők, mindenkiben megtalálhatók valamilyen mértékben. És még kapcsolatban is lehetnek, erősíthetik, vagy gyengíthetik egymást. Szóval rengeteg logikai koordináta elképesztő mennyiségű kombinációjával van dolgunk - illetve a szakembereknek.


 

2024. október 31., csütörtök

Rumbledethumps

Ez egy hagyományos skót zöldségétel. Mivel magyarul igen kevés helyen lelhető fel, úgy gondoltam, nem árt, ha közzéteszem. Elég egyszerű, és finom.


A fő alapanyagai a burgonya és a káposzta. Kell még vöröshagyma, zöldhagyma, kevés tej, vaj/margarin, és reszelt sajt, fűszerek.

Nem méregettem, úgyhogy a mennyiségek utólagos becslésen alapulnak. Kb. egy kilogrammnyi káposztával indultam, felszeleteltem. 8 x 0,7 cm volt az irányadó, de a káposztalevelek kanyargása miatt a tolómérő használata nyugodtan mellőzhető; lényeg, hogy nem annyira finom metélt, mint egy káposztasalátához, de nem is nagyobb darabokról van szó. Két fej hagymát a káposztaszeletek vastagságához illően felkockáztam. Itt egy kis egyéni beszúrás következik az eredeti recepthez képest: mivel van ilyenem, felvágtam egy gerezd elefánthagymát is, azt igyekeztem finomra. Továbbá kiegészítettem még az együttest tíz dekányi füstölt szalonnával, kockára vágva. Alkalmas méretű edényben a szalonnát és egy darab margarint hevítettem, amikor a szalonna üveges lett, hozzátettem a hagymát, fűszereztem őrölt borssal és kurkumával. A hagyma is üveges lett, hozzáadtam a káposztát. Időnként megkeverve addig pároltam, amíg a káposzta meg nem puhult.

A másik műveleti ágon kb. 1,5 kg burgonyát megtisztítottam, feldaraboltam, és sós vízben megfőztem, ahogyan püréhez szokás. Egy csokor zöldhagymát finomra vágtam, és 2,5 dl tejben + darab margarinnal megforraltam. A főtt krumplit összetörtem - nem selymesre, hanem szándékosan kissé darabosra hagyva. Hozzákevertem a hagymás tejet, reszelt sajtot, és a megpárolt káposzta zömét.

Tepsi alján a meghagyott káposzta felét elterítettem, utána a krumplis egyveleget, felülre a maradék káposztát. Végül beszórtam reszelt sajttal, és 175 fokos sütőben addig sütöttem, amíg a sajt picit színesedni nem kezdett. Hozzáteszem, hogy a sajt nem Cheddar volt, mint a skótoknál szokás (az nekem megfizethetetlen), hanem trappista, és a négyoldalú reszelő nagyobb lyukú oldalát használtam.





 

2024. május 6., hétfő

Kubuntu 24.04 és Piper tts

 Miután az előző Linux kiadásom már panaszkodott, hogy őhozzá nincsenek további frissítések, telepítettem az április végén megjelent Kubuntu 24.04 rendszert. Ez LTS, azaz hosszú támogatási idejű. A KDE Plasma testreszabása közben előfordult, hogy a kiválasztott téma legközelebb nem jelent meg. De mivel egy korábbi kiadásban már felmerült hasonló probléma a rendszerbeállítások között, most a keresgélést megspórolva átállítottam a nyelvet angolra, és ezt követően hajlandó volt megjegyezni a dekorációs elemek kért megjelenését.

A rendszer működésében eddig semmi említésre érdemeset nem tapasztaltam, szépen teszi a dolgát.

A korábbi bejegyzésben szereplő szövegfelolvasó programot nem telepítettem automatikusan, hanem szétnéztem a neten, van-e érdemleges újdonság. Mint kiderült, a Mycroft AI, amelyhez a mimic3 tts is tartozott, nem kerül további fejlesztésre. Ellenben leltem egy Piper tts nevű hasonló tudású, de talán még jobb hangzású programot. (https://github.com/rhasspy/piper) Ehhez nem kell egy óriáskígyót (Anaconda) belecsavarni a Linuxba, van hozzá kész futtatható állomány, amely néhány könyvtári modul társaságában felolvassa a szöveget. A githubos oldalán ugyan nincs segédlet a beillesztéshez a speech-dispatcher-be, de a mimic3 tapasztalataival felvértezve már nem ijesztett el a feladat. A neten pedig találtam erre vonatkozó leírásokat. Nem linkelem ide, mert mindegyikben van eltérés/hiba, inkább közzéteszem, ami nálam működik.

A speech-dispatcher konfigurációs állományait átmásoltam a saját könyvtáram .config almappájába. A speechd.conf-ban ez alkalommal a Pulse hangrendszert jelöljük meg végrehajtóként:


AudioOutputMethod "pulse"


A hangmodulok szekcióba pedig felvesszük a Piperét:


AddModule "piper-generic" "sd_generic" "piper-generic.conf"


A modules konfigurációs almappában el kell készíteni a piper-generic.conf fájlt, amely így néz ki:


GenericExecuteSynth "env DATA='$DATA\' VOICE=\'$VOICE\' RATE=\'$RATE\' piper-pipe"

GenericCmdDependency "piper-pipe"

AddVoice "en_GB" "FEMALE1" "en_GB-cori-high"

AddVoice "en_US" "FEMALE1" "en_US-lessac-high"

AddVoice "en_US" "FEMALE1" "en_US-ljspeech-high"

AddVoice "en_US" "MALE1" "en_US-ryan-high"

AddVoice "fi_FI" "MALE1" "fi_FI-harri-medium"

AddVoice "hu_HU" "FEMALE1" "hu_HU-berta-medium"

AddVoice "hu_HU" "MALE1" "hu_HU-imre-medium"

DefaultVoice "en_US-ljspeech-high"


Az AddVoice sorokba persze, mindenki azokat a hangokat veszi fel, amelyeket letöltött magának. A piper-pipe egy kis végrehajtható állomány, amely inkább csak arra kell, hogy egy változót a hang minőségétől függően beállítsunk benne. A saját mappám bin-jébe került, így Path-ban van. Így néz ki:


#!/bin/bash

VOICE_PATH=elérési út a hangfájlokhoz

if [[ ${VOICE: -3} = low ]]; then

  ADJ_RATE=16000

else

  ADJ_RATE=22050

fi

ADJ_RATE=$((${RATE::-3} * 30 + $ADJ_RATE))

echo "$DATA" | elérési út a Piperhez/ptts --model $VOICE_PATH/$VOICE.onnx  --output-raw | \

aplay -r $ADJ_RATE -f S16_LE -t raw -

wait


A piper végrehajtható fájlt átneveztem ptts-re, mert olvastam lehetséges névütközésről.


Helyreállt a világ rendje, működik a felolvasás.