Eine Python-basierte Pipeline zur automatischen Optimierung von Audioaufnahmen mit detaillierter Performance-Analyse. Die Pipeline führt verschiedene Audiooptimierungen durch und liefert einen ausführlichen Bericht über den Verarbeitungsprozess.
-
Audio-Formatstandardisierung
- Konvertierung zu Mono
- Anpassung der Abtastrate (Sample Rate)
- Standardisierung des Audioformats
-
Rauschunterdrückung
- Intelligente Erkennung und Reduzierung von Hintergrundgeräuschen
- Anpassbare Parameter für die Rauschunterdrückung
-
Frequenzoptimierung
- Bandpass-Filterung für den Sprachbereich (300-3400 Hz)
- Butterworth-Filter für sanfte Frequenzübergänge
-
Lautstärkenormalisierung
- EBU R128 Standard
- Konsistente Lautstärke über alle Aufnahmen
-
Performance-Analyse
- Detaillierte Zeitmessung für jeden Verarbeitungsschritt
- Speicherverbrauchsanalyse
- Ausführlicher Verarbeitungsbericht
- Repository klonen:
git clone https://github.com/yourusername/audio-optimization-pipeline.git
cd audio-optimization-pipeline- Virtuelle Umgebung erstellen und aktivieren:
python -m venv venv
source venv/bin/activate # Linux/Mac
# oder
venv\Scripts\activate # Windows- Abhängigkeiten installieren:
pip install -r requirements.txt-
Audiodatei in das
data/sample_audioVerzeichnis legen -
Pipeline ausführen:
python main.py- Die optimierte Audiodatei wird im
data/test_resultsVerzeichnis gespeichert
Die Pipeline durchläuft folgende Schritte:
-
Audioeinlesung
- Unterstützt WAV-Format
- Automatische Erkennung von Mono/Stereo
-
Formatstandardisierung
- Konvertierung zu Mono wenn nötig
- Anpassung der Abtastrate auf 16kHz
-
Rauschunterdrückung
- Statistische Analyse des Audiosignals
- Intelligente Rauschfilterung
-
Frequenzfilterung
- Fokussierung auf den Sprachbereich
- Entfernung störender Frequenzen
-
Lautstärkenormalisierung
- Anpassung auf -23 LUFS (EBU R128)
- Verbesserung der Hörbarkeit
Die Pipeline generiert einen detaillierten Bericht mit:
- Verarbeitungszeit pro Schritt
- Speicherverbrauch
- Gesamtverarbeitungszeit
- Audio-Informationen (Länge, Kanäle, Sample Rate)
Beispiel-Output:
=== Performanceanalyse der Audioverarbeitung ===
Audio Information:
- Sample Rate: 44100 Hz
- Länge: 98.48 Sekunden
- Kanäle: 2 -> 1 (Mono-Konvertierung)
Verarbeitungszeiten:
- Audioeinlesung: 0.03 Sekunden
- Formatstandardisierung: 0.56 Sekunden
- Rauschunterdrückung: 1.51 Sekunden
- Frequenzfilterung: 0.03 Sekunden
- Lautstärkenormalisierung: 0.05 Sekunden
- Speichern: 0.04 Sekunden
Gesamtverarbeitungszeit: 2.22 Sekunden
audio-optimization-pipeline/
│
├── data/
│ ├── sample_audio/ # Eingabe-Audiodateien
│ └── test_results/ # Optimierte Ausgaben
│
├── src/
│ ├── __init__.py
│ └── audio_optimizer.py # Hauptverarbeitungsklasse
│
├── main.py # Ausführungsskript
├── requirements.txt # Projektabhängigkeiten
└── README.md # Projektdokumentation
- soundfile
- noisereduce
- scipy
- pyloudnorm
- numpy
- psutil
- Unterstützung für weitere Audioformate (MP3, OGG, etc.)
- Grafische Benutzeroberfläche
- Batch-Verarbeitung mehrerer Dateien
- Anpassbare Optimierungsparameter via Konfigurationsdatei
- Spektralanalyse und Visualisierung
- API für die Integration in andere Projekte
MIT License - siehe LICENSE Datei für Details.
Beiträge sind willkommen! Bitte lesen Sie CONTRIBUTING.md für Details zum Prozess für Pull Requests.