Funkwal 1.0


Funkwal 1.0

Projekt Funkwal hat die erste stabile Version veröffentlicht. Im Rahmen der Initiative wird ein kostenloser Server entwickelt, der in Python geschrieben ist und das Django-Framework verwendet, um Musik und Podcasts zu hosten, die über eine Weboberfläche angehört werden können. Clients mit Unterstützung für Subsonic API oder native Funkwhale APIUnd aus anderen Instanzen von FunkwhaleVerwendung Verbundnetzwerkprotokoll von ActivityPub.


Die Benutzerinteraktion mit Audio erfolgt über Bibliotheken und Kanäle: Bibliotheken sind Sammlungen mehrerer Künstler mit einer zufällig erstellten UUID als Adresse, und ein Kanal ist die Diskographie eines einzelnen Künstlers, dem eine für Menschen lesbare Adresse zugewiesen wird; Kanäle können für die Veröffentlichung von Podcasts nützlich sein. Die Arbeit mit Abonnements ähnelt der in einem anderen Projekt - PeerTube: Sie können sowohl den Benutzer als auch seine separat erstellten Kanäle abonnieren. Da der Server mit dem ActivityPub-Protokoll arbeitet, ist es möglich, Abonnements von anderen gängigen Implementierungen zu erhalten, z Mastodon и plerom.

Nachdem Sie eine Bibliothek oder einen Kanal erstellt haben, können Sie Musik hochladen. Der Dateispeicher dafür kann entweder lokal oder remote erfolgen und nutzt die integrierte Unterstützung für Dateisysteme, die auf dem Amazon S3-Protokoll basieren. Sie können jede Datei in einem gängigen Format ohne zusätzliche Transkodierung und ohne Qualitätsverlust hochladen (was beispielsweise bei PeerTube der Fall ist, das auch das Hochladen von Audio unterstützt). Funkwhale liest in Dateien eingebettete Musikmetadaten und Coverbilder und generiert einen Fehler, wenn diese fehlen. Daher wird Benutzern die Verwendung empfohlen MusikBrainz Picard um vor dem Hochladen die richtigen Tags zu schreiben. Außerdem steht eine Schnittstelle zur Bearbeitung von Metadaten nach dem Download zur Verfügung, die in Form von Revisionen mit sichtbarer Änderungshistorie funktioniert.


Von bereits heruntergeladener Musik bis hin zu Bibliotheken und Kanälen können Sie Wiedergabelisten und Radiosender erstellen und Titel als Favoriten markieren. Remote-Benutzer können Zugriff auf Ihre Bibliothek oder Ihren Kanal anfordern, indem sie einfach einen Link dazu in die Suchleiste ihres Servers einfügen. Anonyme Benutzer können Musik über die Weboberfläche hören, sofern dies in den Servereinstellungen erlaubt ist. Registrierte lokale Benutzer können auf alle Musik auf dem Server zugreifen, ohne die Weboberfläche zu verwenden, indem sie sich über anmelden Jeder Client mit Subsonic API-Unterstützung - ein weiterer Musikserver, jetzt unter einer proprietären Lizenz, mit parallel entwickelten Zweigen der alten Codebasis unter einer freien Lizenz, - oder zum Beispiel die native Funkwhale-API, Otter für Android.

Clients können vom Server auch eine transkodierte Version der Titel anfordern (z. B. von FLAC zu MP3 mit einer niedrigeren Bitrate, was weniger Internetverkehr erfordert).

Es besteht die Möglichkeit, RSS-Feeds zu abonnieren, beispielsweise zu den bereits erwähnten Podcasts.

Änderungen in dieser Version:

  • die mindestens erforderliche Python-Version wurde auf 3.6 erhöht;
  • Änderungen in der Client-API, die die Kompatibilität beeinträchtigen;
  • Abschaffung von JSON-Tokens (JWT) zugunsten von OAuth;
  • verbesserter Algorithmus zum Generieren von Vorschauen für Cover;
  • Der Weboberfläche wurde eine Schaltfläche zum Importieren von Musik aus dem Serverdateisystem hinzugefügt.
  • eine Anzeige der Anzahl der Downloads von Titeln und Alben erschien;
  • neue Suchseite;
  • Die „Play“-Schaltfläche bei Titeln und Alben ersetzt jetzt die Warteschlange, anstatt ihr Titel hinzuzufügen.
  • Scrobbel-Unterstützung mit Last.fm API v2.

Source: linux.org.ru

Kommentar hinzufügen