Allgemeine Einführung
Auto-Audio-Book ist ein Open-Source-Projekt, das auf GitHub gehostet wird. Es durchsucht automatisch neue Inhalte von Webseiten und wandelt sie in Hörbücher mit mehreren Charakterstimmen um. Der Entwickler zqq-nuli hat es in Python 3.10+ geschrieben, kombiniert mit großen Modellen (wie dem Zwillinge und CosyVoice2-0.5B) zur Implementierung von Textverarbeitung und Sprachsynthese. Das Projekt unterstützt nicht nur grundlegende Text-zu-Audio-Funktionen, sondern unterscheidet auch Charaktere in einem Roman und weist verschiedene Stimmen zu, um hörspielartige Effekte zu erzeugen. Der Code ist öffentlich zugänglich und kann von den Benutzern heruntergeladen und verändert werden. Mit Stand vom 24. März 2025 befindet sich das Projekt noch in der Entwicklung, die grafische Benutzeroberfläche ist noch nicht ganz ausgereift, aber der gesamte Prozess kann über die Befehlszeile ausgeführt werden, was für Technikbegeisterte und Hörbuchproduzenten geeignet ist.
Funktionsliste
- KriechromanAutomatisches Herunterladen des Inhalts von Romankapiteln von bestimmten Websites.
- Erzeugung von DialognachrichtenKI einsetzen, um Texte zu analysieren und zwischen Figuren und Dialogen zu unterscheiden.
- Voiceover mit mehreren Zeichen: Weisen Sie fiktiven Charakteren, Nebendarstellern, Sprechern und zufälligen Synchronisationen verschiedene Stimmen zu.
- Audio-ErzeugungKonvertierung von Text in das MP3-Format für Hörbücher mit Unterstützung für Multi-Thread-Beschleunigung.
- Management-ToolsBietet eine grafische Benutzeroberfläche (GUI) für die Verwaltung von neuen Daten und Audiodateien.
- quelloffen und erweiterbarBenutzer können den Code ändern, um neue Funktionen hinzuzufügen oder Effekte zu optimieren.
Hilfe verwenden
Auto-Audio-Book erfordert eine gewisse technische Grundlage zur Installation und Nutzung. Im Folgenden finden Sie eine detaillierte Installations- und Bedienungsanleitung, die Ihnen hilft, ein Hörbuch von Grund auf zu erstellen.
Einbauverfahren
- Vorbereitung der Umwelt
- Installieren Sie Python 3.10 oder höher, heruntergeladen von https://www.python.org/downloads/.
- Montage
ffmpeg
Für Windows laden Sie es von https://ffmpeg.org/download.html herunter, und für Mac verwenden Sie dasbrew install ffmpeg
Linux mitsudo apt install ffmpeg
. - (Optional) Installieren Sie MongoDB für die GUI-Verwaltung neuer Daten, laden Sie es von https://www.mongodb.com/try/download/community herunter.
- So prüfen Sie die Umgebung: Geben Sie in der Befehlszeile
python --version
im Gesang antwortenffmpeg -version
Stellen Sie sicher, dass die Version korrekt angezeigt wird.
- Code herunterladen
- Klonen Sie das Projekt lokal mit Git:
git clone https://github.com/zqq-nuli/auto-audio-book.git
- Rufen Sie den Projektkatalog auf:
cd auto-audio-book
- Klonen Sie das Projekt lokal mit Git:
- Erstellen einer virtuellen Umgebung
- ausnutzen
uv
Erstellen einer virtuellen Umgebung (vorherige Installation erforderlich)uv
verwenden.pip install uv
):uv venv --python 3.10
- Aktivieren Sie die Umwelt:
- Fenster:
.\.venv\Scripts\activate
- Mac/Linux:
source .venv/bin/activate
- Fenster:
- ausnutzen
- Installation von Abhängigkeiten
- Installieren Sie die erforderlichen Bibliotheken in der virtuellen Umgebung:
uv add -r requirements.txt
- Wenn ein Mangel besteht an
requirements.txt
kann die Kernbibliothek manuell installiert werden:pip install requests gTTS PyPDF2 pymongo
- Installieren Sie die erforderlichen Bibliotheken in der virtuellen Umgebung:
- Konfigurieren des API-Schlüssels
- eine Kopie machen von
.env.example
Datei ist.env
::copy .env.example .env # Windows cp .env.example .env # Mac/Linux
- Compiler
.env
Datei den Big Model API-Schlüssel ein, z. B. den Schlüssel für Gemini, der bei der entsprechenden Plattform angefordert werden kann.
- eine Kopie machen von
Verwendungsschritte
- einen Roman verfassen
- Wählen Sie einen fiktiven Standort (z. B. https://m.ilwxs.com/), das Projekt unterstützt standardmäßig ungeschützte Standorte.
- Führen Sie das Crawl-Skript aus:
python app/getBookList.py
- Rufen Sie dann die Liste der Kapitel auf und speichern Sie den Inhalt:
python app/getZjList.py python app/saveBooks.py
- Generierung von Dialogmeldungen
- Verarbeiten Sie Kapitel mit KI, um zwischen Personen und Dialogen zu unterscheiden:
python app/saveBookJson.py
- Die Ausgabe wird als JSON-Datei für die spätere Nachvertonung gespeichert.
- Verarbeiten Sie Kapitel mit KI, um zwischen Personen und Dialogen zu unterscheiden:
- Charakterstimmen konfigurieren
- Führen Sie das Script aus, um die Rollentabelle zu erstellen:
python app/createUser.py
- Manuelle Zuweisung von Stimmen für die Hauptfigur und den Sprecher (unterstützt Modelle wie CosyVoice2-0.5B). Andere Charaktere können nach dem Zufallsprinzip zugewiesen werden:
- Individuelle Stimmen für Figuren mit mehr als 50 Zeilen.
- Weniger als 50 Sätze mit der Stimme des Erzählers.
- Führen Sie das Script aus, um die Rollentabelle zu erstellen:
- Audio generieren
- Führen Sie das Skript zur Audiogenerierung aus:
python app/createAudio.py
- Unterstützt Multithreading-Beschleunigung, z. B. 20 Threads:
python app/createAudio.py --threads 20
- Die Ausgabe ist eine MP3-Datei, die im Projektverzeichnis gespeichert wird.
- Führen Sie das Skript zur Audiogenerierung aus:
- Audio verwalten (optional)
- Sortieren von Audio mit GUI-Tools:
python gui/gui.py
- Oder löschen Sie Himalaya-Einträge im Stapel:
python gui/gui2.py
- Sortieren von Audio mit GUI-Tools:
Hinweis zum Betrieb
- Optimierung der EffizienzEin Computer kann 300 Kapitel pro Nacht mit einem einzigen Thread bearbeiten. Tests zeigen, dass 5 Rechner mit je 20 Threads 2000 Kapitel in 5 Stunden erstellen können.
- FehlererkennungWenn Sie ein Kapitel verpasst haben, überprüfen Sie das Netz oder führen Sie das entsprechende Kapitelskript erneut aus.
- Modellbedingte EinschränkungenDas auf Silizium basierende Modell ist IP-begrenzt und erfordert Server-Hijacking für Parallelität auf mehreren Computern.
Beispiel Prozess
Angenommen, Sie konvertieren einen Roman:
- Kriechen Sie durch den Roman So-und-so von https://m.ilwxs.com/ und speichern Sie Kapitel.
- Erzeugen Sie Dialogbotschaften und identifizieren Sie Protagonist A und Erzähler.
- Konfiguration A mit männlicher chinesischer Stimme, Erzähler mit weiblicher Stimme, andere zufällig.
- Multithreading-Generierung ausführen, um
chapter1.mp3
usw.
Nach Fertigstellung kann es auf Plattformen wie Himalaya hochgeladen werden. Ein Beispiel für das fertige Produkt finden Sie unter https://www.ximalaya.com/album/88023000.
Anwendungsszenario
- Produktion von Hörbüchern
Verwandeln Sie Webromane in Hörbücher mit mehreren Charakteren und laden Sie sie auf Plattformen hoch, um sie zu teilen oder zu verkaufen. - Lernexperiment
Technikbegeisterte nutzen es, um Crawling, KI und Audioverarbeitungstechniken zu erlernen. - Persönliche Unterhaltung
Machen Sie Ihre Lieblingsromane zu Hörbüchern und hören Sie sie jederzeit und überall.
QA
- Welche großen Modelle werden unterstützt?
Unterstützt derzeit Gemini und CosyVoice2-0.5B, Sie müssen selbst einen API-Schlüssel beantragen. - Warum werden einige Kapitel nicht erstellt?
Es könnte sich um einen Netzwerkausfall oder einen Crawl-Fehler handeln, prüfen Sie die Protokolle und führen Sie das entsprechende Kapitel erneut aus. - Wie kann ich die Audioqualität verbessern?
Das Standardmodell hat eine begrenzte Wirkung, es kann durch eine andere TTS-Engine ersetzt werden, eine Codeänderung ist erforderlich.