Allgemeine Einführung
DiffRhythm ist ein Open-Source-Projekt, das vom ASLP-Labor (Audio, Speech and Language Processing Group, Northwestern Polytechnical University) entwickelt wurde und sich auf die durchgängige Erstellung von Musik durch Technologie der künstlichen Intelligenz konzentriert. Es basiert auf dem Latent-Diffusion-Modell und ist in der Lage, in nur 10 Sekunden einen kompletten Song von bis zu 4 Minuten und 45 Sekunden Länge zu generieren, einschließlich Gesang und Backing Vocals. Das Tool ist nicht nur schnell, sondern auch einfach zu bedienen. Es müssen lediglich Texte und Stilangaben eingegeben werden, um qualitativ hochwertige Musik zu generieren. DiffRhythm hat sich zum Ziel gesetzt, das herkömmliche Modell der Musikgenerierung, das durch hohe Komplexität und lange Generierungszeit gekennzeichnet ist und nur Fragmente der Schmerzpunkte generieren kann, zu lösen und eignet sich für Musikschaffende, Pädagogen und Nutzer in der Unterhaltungsindustrie.
Erfahrung: https://huggingface.co/spaces/ASLP-lab/DiffRhythm
Funktionsliste
- End-to-End-Song-ErstellungText- und Stileingabe: Geben Sie Texte und Stilmerkmale ein, um automatisch einen kompletten Song mit Gesang und Backing-Tracks zu erstellen.
- schnelle InferenzErzeugt einen Song von bis zu 4 Minuten und 45 Sekunden in 10 Sekunden.
- Mit der Melodie synchronisierter TextDie erzeugte Melodie muss natürlich zu den Silben und dem Rhythmus des Textes passen.
- Stil-AnpassungUnterstützung mehrerer Musikstile, um Musik zu erzeugen, die den Bedürfnissen des Benutzers entspricht.
- Open-Source-Unterstützung:: Bereitstellung von Quellcode und Modellen, die es den Benutzern ermöglichen, die Funktionalität anzupassen und zu erweitern.
- Hohe Qualität der AusgabeDie erzeugte Musik hat einen hohen Standard in Bezug auf Klangqualität und Hörbarkeit.
Hilfe verwenden
Ablauf der Installation
DiffRhythm ist ein GitHub-basiertes Open-Source-Projekt, für dessen Installation und Ausführung einige Programmierkenntnisse erforderlich sind. Im Folgenden finden Sie die detaillierten Installationsschritte:
- Vorbereitung der Umwelt
- Stellen Sie sicher, dass Sie Python 3.8 oder höher auf Ihrem Computer installiert haben.
- Installieren Sie Git, um den Code von GitHub herunterzuladen.
- Es wird empfohlen, eine virtuelle Umgebung zu verwenden (z. B.
venv
vielleichtconda
), um Abhängigkeitskonflikte zu vermeiden.
- Projektcode herunterladen
- Öffnen Sie ein Terminal und geben Sie den folgenden Befehl ein, um das DiffRhythm-Repository zu klonen:
git clone https://github.com/ASLP-lab/DiffRhythm.git
- Rufen Sie den Projektkatalog auf:
cd DiffRhythm
- Öffnen Sie ein Terminal und geben Sie den folgenden Befehl ein, um das DiffRhythm-Repository zu klonen:
- Installation von Abhängigkeiten
- Die Projekte bieten in der Regel
Anforderungen.txt
die die erforderlichen Python-Bibliotheken auflistet. - Führen Sie den folgenden Befehl im Terminal aus, um die Abhängigkeit zu installieren:
pip install -r anforderungen.txt
- Wenn Sie diese Datei nicht haben, können Sie Kernbibliotheken wie PyTorch manuell installieren, indem Sie sich auf die Abhängigkeitsnotizen auf der GitHub-Seite oder in der Dokumentation beziehen.
- Die Projekte bieten in der Regel
- Download des vortrainierten Modells
- Die vortrainierten Modelle von DiffRhythm werden normalerweise auf Hugging Face oder anderen Cloud-Speicherplattformen gehostet.
- Interviews ASLP-Labor/DiffRhythmus-Basis Laden Sie die Modelldatei herunter (z. B.
cfm_model.pt
). - Legen Sie die heruntergeladenen Modelldateien in dem angegebenen Ordner im Projektverzeichnis ab (normalerweise in der Dokumentation beschrieben, z. B.
Modelle/
).
- Überprüfen der Installation
- Führen Sie einen einfachen Testbefehl im Terminal aus (den genauen Befehl finden Sie in der README-Datei von GitHub), zum Beispiel:
python main.py --test
- Wenn keine Fehler gemeldet werden, war die Installation erfolgreich.
- Führen Sie einen einfachen Testbefehl im Terminal aus (den genauen Befehl finden Sie in der README-Datei von GitHub), zum Beispiel:
Wie man DiffRhythm verwendet
Die Kernfunktion von DiffRhythm ist die Generierung von Songs durch Eingabe von Texten und Stilangaben. Nachfolgend finden Sie eine detaillierte Beschreibung der Funktionsweise:
1. die Vorbereitung der Inputs
- LiedtextSchreiben Sie einen Liedtext (auf Chinesisch, Englisch usw.) und speichern Sie ihn als Textdatei (z. B.
lyrics.txt
), oder geben Sie ihn direkt in die Befehlszeile ein. - Stil-Tipps:: Bereiten Sie eine kurze Beschreibung des Stils vor, z. B. "Pop-Rock", "klassisches Klavier" oder "elektronische Tanzmusik".
2. die Song-Erstellung
- Öffnen Sie ein Terminal und geben Sie das DiffRhythm-Projektverzeichnis ein.
- Führen Sie den Befehl generate aus (die spezifischen Parameter sind der offiziellen Dokumentation zu entnehmen, der Beispielbefehl lautet wie folgt):
python generate.py --lyrics "lyrics.txt" --style "pop rock" --output "song.wav"
- Parameter Beschreibung:
--lyrics
: Gibt den Pfad der Liedtextdatei an.-Style
: Geben Sie einen Musikstil ein.--output
Gibt den Pfad und den Namen der Ausgabedatei an.
- Warten Sie etwa 10 Sekunden und das Programm erzeugt eine Audiodatei im WAV-Format im angegebenen Pfad.
3. die Kontrolle der Ausgabe
- Sobald die Generierung abgeschlossen ist, finden Sie die
Lied.wav
Datei, spielen Sie sie mit einem beliebigen Audioplayer (z. B. Windows Media Player oder VLC) ab. - Überprüfen Sie, ob der Text mit der Melodie übereinstimmt und ob die Tonqualität den Erwartungen entspricht.
Ausgewählte Funktionen
- End-to-End-Song-ErstellungDiffRhythm generiert komplette Songs in einem Durchgang, eine Segmentierung ist nicht erforderlich. Die Benutzer müssen nur den Text und den Stil angeben, und es sind keine zusätzlichen Parametereinstellungen erforderlich, um das fertige Produkt zu erhalten.
- schnelle InferenzDie Generierungsgeschwindigkeit ist dank der nicht-autoregressiven Struktur und der latenten Diffusionstechnik extrem schnell. Verglichen mit der Generierungszeit traditioneller Modelle, die oft mehrere Minuten dauert, verbessert die 10-Sekunden-Generierung von DiffRhythm die Effizienz erheblich.
- Mit der Melodie synchronisierter TextWenn Sie feststellen, dass die erzeugte Melodie nicht mit dem Text übereinstimmt, können Sie die Anzahl der Silben im Text anpassen oder Beschreibungen wie "klares Tempo" in den Stiltipp einfügen, um die Ausgabe zu optimieren.
- Stil-Anpassung:: Probieren Sie verschiedene Stilvorgaben aus, z. B. "Jazz", "Folk" oder "Hip-Hop", und beobachten Sie, wie sich die Ergebnisse verändern. Je spezifischer die Stilvorgabe ist, desto näher ist die erzeugte Musik an dem, was erwartet wird.
Tipps & Tricks
- Liedtext optimierenKurze Texte lassen sich leichter auf eine Melodie abstimmen als längere, so dass allzu komplexe Phrasen vermieden werden können.
- Stapelverarbeitung:: Schreiben Sie ein einfaches Skript, das in einer Schleife die Aufrufe der
generieren.py
Der Song kann für mehrere Songs auf einmal erstellt werden. - Debug-AusgabeWenn die generierten Ergebnisse nicht zufriedenstellend sind, überprüfen Sie die Protokolldateien (falls vorhanden) oder passen Sie die Modellparameter an (z. B. die Anzahl der Diffusionsschritte), wie in der GitHub-Dokumentation beschrieben.
caveat
- Hardware-VoraussetzungEs wird empfohlen, einen Computer mit einem Grafikprozessor zu verwenden, um die Geschwindigkeit zu erhöhen.
- Open-Source-BeitragWenn Sie gut programmieren können, können Sie das Projekt forken, den Code optimieren oder neue Funktionen hinzufügen und einen Pull Request einreichen.
- Copyright-AlarmGenerierte Musik kann aufgrund von stilistischen Ähnlichkeiten urheberrechtliche Risiken bergen und wird für Studienzwecke oder nicht-kommerzielle Zwecke empfohlen.
Mit diesen Schritten können Sie schnell mit DiffRhythm loslegen und den Prozess der Erstellung eines Songs vom Text bis zum fertigen Lied erleben!