Heim  >  Artikel  >  Backend-Entwicklung  >  Python schneidet MP3-Segmente alle 30 Sekunden in eins und reduziert die Dateibitrate

Python schneidet MP3-Segmente alle 30 Sekunden in eins und reduziert die Dateibitrate

PHPz
PHPznach vorne
2023-04-12 09:28:021395Durchsuche

MoviePy ist eine Python-basierte Videobearbeitungsbibliothek, die Funktionen zum Erstellen, Bearbeiten, Zusammenführen, Zuschneiden und Konvertieren von Videos bietet. Im Folgenden sind die Hauptfunktionen von MoviePy aufgeführt:

Videobearbeitung: MoviePy kann Videos bearbeiten, Video- und Audiostreams trennen, Video- und Audiosegmente hinzufügen und löschen usw.

Video-Zusammenführung: MoviePy kann mehrere Video- und Audiodateien zu einer zusammenführen.

Videotranskodierung: MoviePy kann Videoformate und Kodierungsmethoden konvertieren, z. B. die Konvertierung von MP4 in AVI oder die Konvertierung der H.264-Kodierung in die H.265-Kodierung usw.

Videobearbeitung: MoviePy kann Video-Spezialeffekte, Animationen, Untertitel usw. hinzufügen, um das Video lebendiger und kreativer zu machen.

Videogenerierung: Verwenden Sie MoviePy, um benutzerdefinierte Videos zu erstellen, z. B. Diashows, Animationen usw.

Videoverarbeitung: MoviePy kann einige Verarbeitungen an Videos durchführen, wie z. B. Zuschneiden, Skalieren, Drehen und Farbanpassung.

Kurz gesagt: MoviePy bietet Python-Entwicklern ein einfaches und benutzerfreundliches Framework zum Verarbeiten von Videos, ohne komplexe Videobearbeitungssoftware erlernen zu müssen. Es ist leistungsstark genug, um die Videoverarbeitung, -bearbeitung und -generierung problemlos zu bewältigen.

In diesem Artikel wird hauptsächlich beschrieben, wie Sie mit moviepy den Audiostream aufteilen und die Bitrate reduzieren.

1. Vorbereitung

Bevor Sie beginnen, müssen Sie sicherstellen, dass Python und Pip erfolgreich auf dem Computer installiert wurden: Super Detaillierte Python-Installationsanleitung, um mit der Installation fortzufahren.

(Optional 1) Wenn Sie Python für die Datenanalyse verwenden, können Sie Anaconda direkt installieren: Anaconda, ein guter Helfer für Python-Datenanalyse und -Mining, verfügt über integriertes Python und Pip.

# 🎜🎜#(optional 2) Darüber hinaus wird die Verwendung des VSCode-Editors empfohlen, der viele Vorteile bietet: Der beste Partner für die Python-Programmierung – VSCode Detaillierte Anleitung.

Bitte wählen Sie eine der folgenden Methoden, um den Befehl zum Installieren von Abhängigkeiten einzugeben:

    Windows-Umgebung Öffnen Sie Cmd (Start-Ausführen-CMD).
  • MacOS-Umgebung Öffnen Sie das Terminal (Befehl+Leertaste, um das Terminal aufzurufen).
  • Wenn Sie den VSCode-Editor oder Pycharm verwenden, können Sie direkt das Terminal am unteren Rand der Benutzeroberfläche verwenden.
  • pip install moviepy
2. 🎜🎜## 🎜🎜#Um die MoviePy-Bibliothek zu verwenden, um die hochgeladene MP3/WAV-Datei alle 30 Sekunden zu schneiden und die Dateibitrate zu reduzieren, können wir die folgenden Schritte ausführen.

Importieren Sie die MoviePy-Bibliothek und andere erforderliche Bibliotheken:

    import os
    from moviepy.editor import *
  • Definieren Sie eine Funktion zum Schneiden der Audiodatei und zum Reduzieren der Bitrate :
    def split_audio_file(filename, split_duration=30, bitrate=16000):
    # 读取音频文件
    audio = AudioFileClip(filename)
    
    # 计算文件总时长和切割点
    total_duration = audio.duration
    split_points = list(range(0, int(total_duration), split_duration))
    split_points.append(int(total_duration))
    filelist = []
    # 切割音频文件并降低码率
    for i in range(len(split_points) - 1):
    start_time = split_points[i]
    end_time = split_points[i+1]
    split_audio = audio.subclip(start_time, end_time)
    split_audio.write_audiofile(f"{os.path.splitext(filename)[0]}_{i}.wav", fps=bitrate)
    filelist.append(f"{os.path.splitext(filename)[0]}_{i}.wav")
    audio.close()
    return filelist
  • Die Funktion akzeptiert drei Parameter: Dateiname stellt den Namen der zu verarbeitenden Audiodatei dar, split_duration stellt dar, wie lange die Datei geteilt werden soll (in Sekunden), Bitrate stellt die Ausgabe dar Coderate eingestellt werden (Einheit ist Bitrate).
In der Funktion lesen wir zunächst die Audiodatei ein und berechnen dann den Schnittpunkt. Dann verwenden wir eine Schleife, um jeden Schnittpunkt zu durchlaufen, die Audiodatei in kleine Dateien zu schneiden, die Bitrate zu reduzieren und sie schließlich als neue Audiodatei auszugeben.

Funktion zum Verarbeiten von Audiodateien aufrufen:

    filename = "your_audio_file.mp3"# 要处理的音频文件名
    split_duration = 30# 按每30秒一个切割文件
    bitrate = "64k"# 设置输出码率为64kbps
    split_audio_file(filename, split_duration, bitrate)
  • Beim Aufruf der Funktion der Name der zu verarbeitenden Audiodatei, die Länge der ausgeschnittenen Datei und des Ausgabecodes. Übergeben Sie einfach die Rate als Parameter an die Funktion. Diese Funktion gibt die verarbeitete Audiodatei in das aktuelle Verzeichnis aus.
3.Mp3-Ausgangsbitrate

Bitte beachten Sie, dass die Ausgangsbitrate nicht zu niedrig eingestellt werden kann. Die Ausgabebitrate von MP3-Dateien wirkt sich auf die Audioqualität und Dateigröße aus. Je höher die Ausgabebitrate, desto besser die Audioqualität, aber auch die Dateigröße. Im Gegenteil: Je niedriger die Ausgabebitrate, desto geringer wird die Audioqualität, aber die Dateigröße wird kleiner.

Die Bitrate einer MP3-Datei bezieht sich auf die Anzahl der pro Sekunde erforderlichen Bits (d. h. Bitrate). Beim Kodieren bestimmt der MP3-Algorithmus die Menge der komprimierten Audiodaten anhand der eingestellten Bitrate und beeinflusst so die Größe und Qualität der Ausgabedatei. Im Allgemeinen führen höhere Bitraten zu einer höheren Audioqualität, beanspruchen aber auch mehr Speicherplatz und Bandbreite.

Wenn die Ausgangsbitrate zu niedrig eingestellt ist, führt dies zu einem deutlichen Verlust der Audioqualität und es können Probleme wie Audiorauschen, Verzerrungen und Abschneiden niedriger Frequenzen auftreten. Wenn die Ausgabebitrate zu hoch eingestellt ist, wird die Dateigröße sehr groß, was die Übertragung und Speicherung erschweren kann.

Daher müssen Sie bei der Auswahl der Ausgabebitrate die Anforderungen an Audioqualität und Dateigröße sowie Übertragungs- und Speicherbeschränkungen je nach Situation abwägen. Im Allgemeinen ist 128 kbps eine häufig verwendete MP3-Ausgabebitrate, die eine bessere Klangqualität und angemessene Dateigrößen erzeugt.

Das obige ist der detaillierte Inhalt vonPython schneidet MP3-Segmente alle 30 Sekunden in eins und reduziert die Dateibitrate. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:51cto.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen