Ai-movie-clip ist ein intelligentes Open-Source-Videobearbeitungssystem, das die Technologie der künstlichen Intelligenz nutzt, um den Videobearbeitungsprozess zu automatisieren. Dieses System ist in der Lage, das Videobild und den Inhalt eingehend zu analysieren und entsprechend den spezifischen Anforderungen des Benutzers automatisch eine Reihe von Nachbearbeitungsarbeiten wie Bearbeitung, Hinzufügen von Spezialeffekten und Animation von Übergängen durchzuführen. Das Projekt richtet sich an Entwickler und Ersteller von Inhalten, die Videos stapelweise bearbeiten oder KI-Bearbeitungsfunktionen in ihre bestehenden Arbeitsabläufe integrieren möchten. Es integriert die KI-Modellierungsfunktionen von AliCloud DashScope und OpenAI und bietet Dienste über eine flexible API-Schnittstelle. Benutzer können es entweder direkt von der Kommandozeile aus bedienen oder als Webservice bereitstellen, um es in verschiedenen Anwendungsszenarien einfach aufrufen zu können und so die Effizienz der Videoproduktion deutlich zu verbessern.
Funktionsliste
- Automatische VideoanalyseAnalysiert Videoinhalte mithilfe von Computer Vision (CV) und Machine Learning (ML) Modellen, um Schlüsselbilder und Themen zu identifizieren.
- Vielseitige VorlagenEine Vielzahl integrierter Videovorlagen, die sich für verschiedene Szenarien eignen, z. B. für soziale Medien, Werbespots, Bildung usw.
- Generierung von KI-InhaltenIntegrierte Funktionen zur Texterstellung, Bilderzeugung und Sprachsynthese (Text-to-Speech), die automatisch Voice-Overs und Textbeschreibungen für Videos erzeugen können.
- Spezialeffekte und ÜbergängeBietet eine reichhaltige Bibliothek von Videoeffekten und Übergangsanimationen, um das bearbeitete Video professioneller wirken zu lassen.
- API-DiensteFastAPI: Bietet eine Schnittstelle, die auf dem FastAPI-Framework basiert, um Entwickler bei sekundären Entwicklungs- und Stapelverarbeitungsaufgaben zu unterstützen.
- MCP-IntegrationUnterstützung für das Model Context Protocol (Model Context Protocol), das Entwicklern mehr Flexibilität bei der Erweiterung und Integration verschiedener KI-Modelle bietet.
- Highlight-ClipsDie Fähigkeit, automatisch Highlights in einem Video zu identifizieren und herauszuschneiden, basierend auf Betrachtungsdaten (z.B. Excel-Dateien).
Hilfe verwenden
Ai-movie-clip ist ein leistungsfähiges KI-Videoclip-Framework. Um es zu verwenden, müssen Sie einige Umgebungsvorbereitungen und Konfigurationsarbeiten durchführen und dann seine Funktionen über die Befehlszeile oder API aufrufen.
Schritt 1: Umweltanforderungen
Vergewissern Sie sich vor Beginn der Installation, dass Ihr System die folgenden Grundvoraussetzungen erfüllt:
- Python: Die Version muss in der
3.8
oder mehr. - FFmpegDies ist ein grundlegendes Werkzeug für die Verarbeitung von Audio- und Videodaten, das vom System aufgerufen werden muss, um Vorgänge wie Dekodierung, Kodierung und Spleißen von Videos durchzuführen. Sie müssen es in Ihrem Betriebssystem installieren und sicherstellen, dass sein Pfad zu den Systemumgebungsvariablen hinzugefügt wurde, damit das Programm es von jedem Pfad aus aufrufen kann.
ffmpeg
Befehl. - CUDAWenn Ihr Computer mit einer NVIDIA-Grafikkarte ausgestattet ist, wird dringend empfohlen, das CUDA-Toolkit zu installieren. Dadurch kann das Programm den Grafikprozessor zur Beschleunigung der Berechnungen nutzen, was die Geschwindigkeit der Videoanalyse und -verarbeitung erheblich erhöht. Dies ist optional, wenn keine GPU vorhanden ist, wird das Programm standardmäßig auf der CPU ausgeführt.
Schritt 2: Installation und Konfiguration
- Projektcode klonen
Öffnen Sie ein Terminal oder ein Befehlszeilentool und verwenden Sie den Befehlgit
Befehl, um den Projektcode von GitHub auf Ihren lokalen Computer zu klonen.git clone https://github.com/LumingMelody/Ai-movie-clip.git
Wechseln Sie dann in das Projektverzeichnis:
cd Ai-movie-clip
- Installation von abhängigen Bibliotheken
Alle Python-Abhängigkeitsbibliotheken des Projekts sind in derrequirements.txt
Datei. Verwenden Sie diepip
Alle erforderlichen Bibliotheken können mit einem Klick installiert werden.pip install -r requirements.txt
- Umgebungsvariablen konfigurieren
Dies ist der wichtigste Schritt. Das Projekt muss externe KI-Dienste und Cloud-Speicher aufrufen, daher müssen Sie die entsprechenden API-Schlüssel und Zugangsdaten bereitstellen.
Kopieren Sie zunächst die Umgebungsvariablen-Vorlagendatei.env.example
und benennen Sie es um.env
.cp .env.example .env
Als Nächstes öffnen Sie mit einem Texteditor diese neu erstellte
.env
Datei sehen Sie folgendes, das Sie manuell ausfüllen müssen:# AI 模型 API 密钥 DASHSCOPE_API_KEY=your_dashscope_api_key_here OPENAI_API_KEY=your_openai_api_key_here # 阿里云对象存储 (OSS) 配置 OSS_ACCESS_KEY_ID=your_oss_access_key_id_here OSS_ACCESS_KEY_SECRET=your_oss_access_key_secret_here OSS_BUCKET_NAME=your_bucket_name_here
Wie komme ich an diese Schlüssel?
DASHSCOPE_API_KEY
Dieser Schlüssel stammt aus dem DashScope-Dienst von AliCloud. Sie müssen die AliCloud-Website besuchen, den DashScope-Dienst öffnen und in der Konsole einen API-KEY erstellen. Dieser Dienst wird hauptsächlich zur Steuerung von KI-Kernfunktionen wie Videoanalyse und Inhaltserstellung verwendet.OPENAI_API_KEY
Dieser Schlüssel stammt von der OpenAI-Plattform und wird hauptsächlich für Sprachmodellierungsfunktionen wie die Texterstellung verwendet. Sie benötigen ein OpenAI-Konto, um den API-Schlüssel zu erstellen.- OSS-KonfigurationDas Projekt verwendet AliCloud Object Storage (OSS), um die Videoclips während der Verarbeitung und die endgültigen generierten Dateien zu speichern. Sie müssen den AliCloud OSS-Dienst aktivieren, einen Speicherbereich (Bucket) erstellen und dann die Zugriffs-ID dieses Speicherbereichs abrufen (
OSS_ACCESS_KEY_ID
) und den Schlüssel (OSS_ACCESS_KEY_SECRET
), und geben Sie den Namen des Speicherbereichs im FeldOSS_BUCKET_NAME
.
Schritt 3: Lernen Sie, wie man
Ai-movie-clip bietet zwei Hauptverwendungsmöglichkeiten: Befehlszeilentools und Web-API-Dienste.
1. die Befehlszeilentools (für schnelle Tests und lokale Aufgaben)
Das Projekt bietet eine main.py
Skripte, die es Ihnen ermöglichen, Funktionen direkt von der Befehlszeile aus aufzurufen.
- Analysieren Sie das VideoAI kann eine Videodatei analysieren und die Ergebnisse im JSON-Format ausgeben.
python main.py analyze video.mp4 --output analysis.json
- Automatische VideobearbeitungAutomatisches Bearbeiten eines Videos basierend auf einer bestimmten Dauer und Stilvorlage.
python main.py edit video.mp4 --duration 30 --style "抖音风"
- Alle verfügbaren Befehle anzeigenSie können eine Kopie dieser Datei über die
--help
Parameter, um alle unterstützten Befehle und Optionen zu sehen.python main.py --help
2. die Web-API-Dienste (für Integrations- und Produktionsumgebungen)
Wenn Sie die KI-Clips in Ihre eigene Website oder App integrieren möchten, können Sie den in das Projekt integrierten API-Dienst nutzen.
- Starten des API-Servers: Laufen
app.py
Datei, um einen FastAPI-basierten Webserver zu starten. Um die Entwicklung und Fehlersuche zu erleichtern, wird empfohlen, die Dateiuvicorn
zu starten, so dass der Server nach Codeänderungen automatisch neu gestartet werden kann.uvicorn app:app --reload
- Zugang zur API-DokumentationNachdem der Server gestartet ist, öffnen Sie ihn in einem Browser.
http://localhost:8000/docs
. Sie erhalten eine interaktive API-Dokumentationsseite (die von der Swagger-Benutzeroberfläche generiert wird), auf der alle verfügbaren API-Schnittstellen, Parameter und Rückgabeformate aufgeführt sind. Sie können die Schnittstelle sogar direkt von dieser Seite aus testen. - Beispiel für den Aufruf der APISie können diese APIs in jeder beliebigen Programmiersprache aufrufen. Hier ein Beispiel mit Python
requests
Bibliothek, um das API-Beispiel aufzurufen.import requests # 假设服务器正在本地运行 base_url = "http://localhost:8000" # 示例1:分析视频 # 需要上传一个本地视频文件 with open("video.mp4", "rb") as f: response = requests.post( f"{base_url}/analyze", files={"file": f}, data={"duration": 30} ) print("分析结果:", response.json()) # 示例2:生成编辑视频 # 提交一个JSON请求,指定视频路径和编辑参数 edit_payload = { "video_path": "path/to/video.mp4", # 注意这里是服务器可访问的文件路径 "template": "douyin", "duration": 30 } response = requests.post(f"{base_url}/edit", json=edit_payload) print("剪辑任务状态:", response.json())
Anwendungsszenario
- Automatisierung von Inhalten für soziale Medien
Social-Media-Teams, die täglich eine große Anzahl von Kurzvideos veröffentlichen müssen, können Ai-movie-clip verwenden, um lange Live-Übertragungen, Veranstaltungsaufzeichnungen oder Produkteinführungsvideos automatisch in Kurzvideos zu schneiden, die dem Stil von Plattformen wie Jittery, Shuttle usw. entsprechen, mit automatischen Untertiteln und Hintergrundmusik, was den Produktionszyklus von Inhalten erheblich verkürzt. - Batch-Erstschnitt von Videoclips
Professionelle Video-Editoren in das Gesicht der massiven Rohmaterial, können Sie dieses Tool für die erste Runde der groben Schnitte zu verwenden.AI kann schnell herauszufiltern, den Inhalt der vollen, stabilen Filmmaterial des Clips, oder nach dem voreingestellten Skript Anforderungen, um eine grundlegende Version des Clips zu generieren, der Editor und dann auf der Grundlage der Verfeinerung der Anpassungen und kreative Verarbeitung, wodurch eine Menge von sich wiederholenden Arbeit zu sparen. - In die Entwicklung integrierte Videoverarbeitungsfunktionen
Entwickler, die in ihren eigenen Anwendungen (z. B. Online-Bildungsplattformen, Marketing-Tools oder Cloud-Fotoalbumdienste) Videoverarbeitungsfunktionen bereitstellen möchten, können die Dienste von Ai-movie-clip direkt über die API aufrufen. Entwickler müssen sich nicht um die zugrundeliegende komplexe Videoverarbeitung und die Details des KI-Modells kümmern, sie müssen lediglich den Videodateipfad und die Clipanforderungen an die API senden, um das endgültige Videoprodukt zu erhalten.
QA
- Wie kann man mit sehr großen Videodateien umgehen?
Das System ist intern mit einem Mechanismus zur automatischen Segmentierungsverarbeitung ausgestattet. Bei der Verarbeitung großer Videodateien schneidet das Programm diese zunächst in kleinere Segmente für die Analyse und Verarbeitung und fügt dann die Ergebnisse zusammen. Sie können die Konfigurationsdateiconfig.yaml
bei dem die Größe des Slice angepasst wird, um ein Gleichgewicht zwischen Verarbeitungsgeschwindigkeit und Speicherbedarf herzustellen. - Welche Videoformate unterstützt das System?
Das zugrundeliegende System basiert auf FFmpeg für die Videokodierung und -dekodierung und unterstützt daher theoretisch alle gängigen Videoformate, die von FFmpeg unterstützt werden, wie z. B.MP4
undAVI
undMOV
undMKV
usw. - Was kann ich tun, um die Videoverarbeitung zu beschleunigen?
Die effizienteste Art, dies zu tun, ist die GPU-Beschleunigung. Wenn Ihr Rechner mit einer NVIDIA-Grafikkarte ausgestattet ist und die CUDA-Umgebung richtig konfiguriert ist, nutzt das System automatisch den Grafikprozessor für rechenintensive Aufgaben. Alternativ dazu können Sie die GPU-Beschleunigung in derconfig.yaml
Konfigurationsdatei zur Anpassung der Anzahl von Threads oder Prozessen für die gleichzeitige Verarbeitung, um die Multi-Core-CPU-Ressourcen besser nutzen zu können.