Projekt Funkwhale kiadta az első stabil verziót. A kezdeményezés keretében egy szabad szerver fejlődik, amely Python nyelven, Django keretrendszer használatával készült, zene és podcastok tárolására, amelyeket webes felületen keresztül lehet hallgatni. ügyfelek Subsonic API vagy a natív Funkwhale API támogatásával, és a más Funkwhale példányoktól, használva a ActivityPub decentralizált hálózati protokoll.
A felhasználók az audióval való interakcióját könyvtárak és csatornák révén valósítják meg: a könyvtárak több művész gyűjteményei, amelyek egy véletlenszerűen generált UUID-t használnak címként, míg a csatorna egy adott előadó diskográfiája, amelyhez emberi olvasásra alkalmas cím tartozik; a csatornák hasznosak lehetnek podcastok közzétételére. Az előfizetések kezelése hasonló egy másik projekthez — PeerTube: előfizethet egy felhasználóra és az általa létrehozott csatornákra is. Mivel a szerver az ActivityPub protokollt használja, más népszerű megvalósításokból is lehetséges az előfizetés, például . Nem rossz egy hálózat számára, amelyre „senki sem figyel”. és Pleroma.
A könyvtár vagy csatorna létrehozása után lehetőség nyílik zene feltöltésére. A fájltároló lehet helyi vagy távoli, az Amazon S3 protokollra épülő fájlrendszerek beépített támogatását használva. Bármilyen népszerű formátumú fájlt fel lehet tölteni, további újrakódolás vagy minőségromlás nélkül (ami például a PeerTube-ra is jellemző, amely szintén támogatja az audió feltöltést). A Funkwhale beolvassa a fájlokba beágyazott zenei metaadatokat és borítókat, és azok hiányában hibát jelez. Ezért a felhasználóknak ajánlott használni a MusicBrainz Picard-ot a helyes címkék rögzítésére a feltöltés előtt. Feltételek szerinti felhasználói felület is elérhető a metaadatok szerkesztésére feltöltés után, amely revíziók formájában működik, látható változási előzménnyel.
A már feltöltött zenék a könyvtárakban és csatornákban lejátszási listák, rádióállomások összerakására és a dalok kedvenccé tételére használhatók. A távoli felhasználók hozzáférést kérhetnek a könyvtáradhoz vagy csatornádhoz, ha beszerelik a linket a szerverük keresősávjába. Az anonim felhasználók a webes felületen tudják hallgatni a zenét, ha ez engedélyezve van a szerver beállításaiban. A regisztrált helyi felhasználók teljes hozzáférést nyernek a szerver összes zenéjéhez anélkül, hogy a webes felületet használnák, ha bejelentkeznek. bárki Subsonic API támogatással — egy másik zenei szerver, amely jelenleg egy szabadalmaztatott licenc alatt áll, miközben párhuzamosan fejlesztik a régi kódbázis szabad licencű elágazásait, — vagy az natív Funkwhale API-t, például Otter Androidra.
Az ügyfelek kérhetik a szervertől a zeneszámok transcoded verzióját (például FLAC-ból MP3-ba, alacsonyabb bitrátával, kevesebb internetforgalmat igényelve).
Lehetséges az RSS-hírcsatornákra való feliratkozás, például a már említett podcastokra.
A kiadásban történt változások:
- a minimum Python verzió 3.6-ra emelkedett;
- visszafordíthatatlan változások az ügyfél API-ban;
- a JSON-tokenek (JWT) támogatásának megszüntetése az OAuth javára;
- javított borítóelőnézeti generálási algoritmus;
- a webes felületen lehetőség nyílt zene importálására a szerver fájlrendszeréből;
- megjelent a zeneszámok és albumok letöltéseinek számának megjelenítése;
- új keresési oldal;
- a zeneszámokon és albumokon a "lejátszás" gomb most felváltja a várakozási listát, nem pedig hozzáadja a zeneszámokat;
- last.fm API v2-vel való scrobbling támogatása.
Forrás: linux.org.ru

