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.