Wie mische ich Audiodateien mit Python?

9

Ich möchte grundlegende Audiomischungen in Python machen.

Um ein Beispiel zu nennen: Ich möchte zwei MP3-Dateien aufnehmen und sie zusammenfügen und eine MP3-Datei zurückgeben. Ein anderes Beispiel: Ich möchte die ersten zehn Sekunden einer MP3-Datei aufnehmen und sie am Anfang einer anderen MP3-Datei hinzufügen.

Was ist der beste Weg, um diese Aufgaben zu erfüllen? Ich würde gerne eingebaute Python-Funktionen wie Audioop verwenden, aber finde keine guten Tutorials oder Beispielcode da draußen für die Verwendung der eingebauten Funktionen.

Ich gehe durch die Dokumente, aber ich bin ziemlich verwirrt und kann nicht herausfinden, wie man solche Dinge macht. Ich bin mir nicht einmal sicher, ob die Python-Bibliotheken mp3s mögen. Die meisten Sachen, die ich angeschaut habe, scheinen sich auf WAV-Dateien zu beziehen. Also, wenn das der Fall ist, denke ich, eine Nachfolgefrage wäre, gibt es eine einfache Möglichkeit, ein MP3 in ein WAV für die Manipulation und wieder zurück zu konvertieren?

    
user439299 02.10.2011, 23:14
quelle

3 Antworten

14

Sie können dies ganz einfach mit pydub tun:

%Vor%     
Jiaaro 08.12.2012, 21:58
quelle
1

Sie können einen Teil des Codes im Projekt python audiotools überprüfen. Es ist eine Sammlung von Befehlszeilendienstprogrammen, die ein gemeinsames Python-Paket verwenden. Es gibt ein Dienstprogramm, das in Audiotools enthalten ist ( trackcat ), das zwei oder mehr Audiospuren enthalten kann. ein anderer ( tracksplit ) kann eine Audiospur teilen (mit einer .cue-Datei). Diese und die zahlreichen anderen enthaltenen Dienstprogramme können mit Audiodateien verschiedener Kodierungen, einschließlich MP3, arbeiten.

    
intuited 02.10.2011 23:29
quelle
0

Wie ich das in der Vergangenheit gemacht habe, benutze einfach den Subprozess . und ruft sox auf.

z. subprocess.call(["sox", "in.1.mp3", "in.2.mp3", "out.mp3"])

    
Matt Williamson 03.10.2011 00:24
quelle

Tags und Links