Heim > Artikel > Backend-Entwicklung > So verwenden Sie die Python-Audioverarbeitungsbibliothek pydub
Verwenden Sie pip zur Installation (ffmpeg-Abhängigkeiten müssen ebenfalls installiert werden, es wird empfohlen, den Befehl conda zur Installation zu verwenden, Sie müssen die Umgebung nicht konfigurieren):
pip install pydub
from pydub import AudioSegment audio = AudioSegment.from_file("path/to/file")
from pydub.playback import play play(audio)
duration = audio.duration_seconds # 单位为秒
# 前10秒 audio = audio[:10000] # 后10秒 audio = audio[-10000:] # 从第10秒开始到第20秒结束 audio = audio[10000:20000] # 从第10秒开始到结尾 audio = audio[10000:] # 从开始到第10秒audio = audio[:10000]
audio1 = AudioSegment.from_file("path/to/file1") audio2 = AudioSegment.from_file("path/to/file2") audio_combined = audio1 + audio2
audio.export("path/to/new/file", format="mp3")
# 增加10分贝 louder_audio = audio + 10 # 减小10分贝 quieter_audio = audio - 10
4. Audio-Lautstärke anpassen
# 等分分割,按大概每三分钟进行分割 for i in range(1, 1000): if 3.3 >= (audio.duration_seconds / (60 * i)) >= 2.8: number = i break chunks = audio[::int(audio.duration_seconds / number * 1000 + 1)] # 切割 # 保存分割后的音频 for i, chunk in enumerate(chunks): chunk.export("path/to/new/file{}.wav".format(title,i), format="wav")Songs aufteilen im Audio, indem wir leere Töne identifizieren
from pydub import AudioSegment # 读取音频文件 audio = AudioSegment.from_file("path/to/file") # 输出视频时长 print('视频时长:', audio.duration_seconds / 60) # 前后切割 start = int(input('前切割n秒,不切割输入0'))*1000 end = int(input('后切割n秒,不切割输入0'))*1000 if start: audio = audio[start:-end] # 计算合适的分割长度 for i in range(1, 1000): if 3.3 >= (audio.duration_seconds / (60 * i)) >= 2.8: number = i break chunks = audio[::int(audio.duration_seconds / number * 1000 + 1)] # 保存分割后的音频 for i, chunk in enumerate(chunks): print('分割后的时长:', chunk.duration_seconds / 60) chunk.export("path/to/new/file{}.wav".format(i), format="wav")
Alles in allem ist pydub eine sehr praktische Audioverarbeitungsbibliothek, die problemlos Audioverarbeitung, Konvertierung, Zusammenführung und andere Vorgänge durchführen kann. Gleichzeitig verfügt pydub auch über umfangreiche Anwendungsszenarien, z. B. zum Erstellen von Klingeltönen, zum Anpassen der Lautstärke usw. Es ist zu beachten, dass Sie bei der Verwendung von Pydub auf Kompatibilitätsprobleme mit Audioformaten achten müssen. Darüber hinaus können Sie über Pydub auch Vorgänge wie Kodieren, Dekodieren, Mischen und Resampling von Audio durchführen. Nachfolgend finden Sie einige gängige Beispiele für Operationen.
Codieren, Dekodieren, Mischen, Resampling1. Codec
from pydub import AudioSegment # 读取音频文件 audio = AudioSegment.from_file("path/to/file") # 转换为mp3格式并保存 audio.export("path/to/new/file.mp3", format="mp3")
3. Resampling
from pydub import AudioSegment # 读取音频文件 audio1 = AudioSegment.from_file("path/to/file1") audio2 = AudioSegment.from_file("path/to/file2") # 合并音频文件并保存 combined_audio = audio1 + audio2 combined_audio.export("path/to/new/file", format="wav")
Durch Pydub können wir Audio-Codierung, Decodierung, Resampling und andere Vorgänge problemlos durchführen Erweitern Sie die Anwendungsszenarien von pydub. Es ist zu beachten, dass beim Durchführen von Audio-Mischvorgängen sichergestellt werden muss, dass die Abtastrate, die Anzahl der Abtastbits und die Anzahl der Kanäle der beiden Audiodateien gleich sind.
Lassen Sie uns abschließend die Vor- und Nachteile von Pydub zusammenfassen. Vorteile:
Leicht: pydub ist eine leichte Audioverarbeitungsbibliothek, die einfach zu installieren und zu verwenden ist.
Umfangreiche Funktionen: pydub bietet eine Fülle von Audioverarbeitungsfunktionen, darunter Schneiden, Zusammenführen, Konvertieren, Anpassen der Lautstärke, Kodieren und Dekodieren, Mischen, Resampling usw.
Breite Anwendung: Pydub bietet eine breite Palette von Anwendungsszenarien, einschließlich Audioverarbeitung, Klingeltonproduktion, Audioformatkonvertierung, Spracherkennung usw.
Nachteile:
Eingeschränkte Kompatibilität mit Formaten: pydub ist nur begrenzt mit Audioformaten kompatibel und unterstützt nicht alle Audioformate. Das Audio muss vor der Verarbeitung in ein unterstütztes Format konvertiert werden.
Mittelmäßige Leistung: Wenn Pydub große Dateien verarbeitet, ist die Leistung möglicherweise durchschnittlich, was eine gewisse Zeit und Rechenressourcen erfordert.
Unterstützt kein Streaming: Pydub unterstützt kein Streaming und die gesamte Audiodatei muss in den Speicher eingelesen werden, was zu einem großen Speicherbedarf führt.
Zusammenfassend ist Pydub eine funktionsreiche und weit verbreitete Audioverarbeitungsbibliothek. Bei der Verwendung von Pydub müssen Sie auf die Kompatibilitätsprobleme von Audioformaten sowie auf die Leistung und Speichernutzung bei der Verarbeitung großer Dateien achten. Wenn Sie komplexere Audioaufgaben bewältigen müssen, können Sie die Verwendung anderer, professionellerer Audioverarbeitungsbibliotheken in Betracht ziehen.
Das obige ist der detaillierte Inhalt vonSo verwenden Sie die Python-Audioverarbeitungsbibliothek pydub. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!