Ai-movie-clipはオープンソースのインテリジェントビデオ編集システムで、人工知能技術を利用してビデオ編集プロセスを自動化します。このシステムは、ビデオのフレームとコンテンツを深く分析し、ユーザーの特定の要件に応じて、編集、特殊効果の追加、トランジション・アニメーションなどの一連のポストプロダクション作業を自動的に行うことができる。このプロジェクトは、動画をバッチ処理する必要がある、あるいは既存のワークフローにAI編集機能を統合したいと考えている開発者やコンテンツ制作者を対象としている。AliCloud DashScopeとOpenAIのAIモデリング機能を統合し、柔軟なAPIインターフェースを通じてサービスを提供する。ユーザーはコマンドラインから直接操作することも、ウェブサービスとしてデプロイしてさまざまなアプリケーションシナリオで簡単に呼び出すこともでき、映像制作の効率を大幅に向上させる。
機能一覧
- 自動ビデオ分析コンピュータビジョン(CV)と機械学習(ML)モデルを使用してビデオコンテンツを分析し、重要なフレームや被写体を特定します。
- 多彩なテンプレートソーシャルメディア、コマーシャル、教育など様々なシーンに適した様々なビデオスタイルテンプレートが内蔵されています。
- AIコンテンツ生成テキスト生成、画像生成、音声合成(text-to-speech)機能を統合し、ビデオのボイスオーバーやテキスト説明を自動生成することができます。
- 特殊効果とトランジション豊富なビデオエフェクトとトランジションアニメーションライブラリを提供し、編集されたビデオエフェクトをよりプロフェッショナルにします。
- APIサービスFastAPIフレームワークをベースとしたインターフェースを提供し、二次開発やバッチ処理タスクの開発者をサポートします。
- MCPインテグレーション: モデル・コンテキスト・プロトコル(Model Context Protocol)のサポートにより、開発者は異なるAIモデルをより柔軟に拡張・統合できるようになります。
- ハイライト・クリップ視聴データ(Excelファイルなど)に基づき、映像内のハイライトを自動的に識別・編集する機能。
ヘルプの使用
Ai-movie-clipは強力なAIビデオクリップ・フレームワークで、これを使うには、いくつかの環境準備と設定作業を済ませてから、コマンドラインやAPI経由で機能を呼び出す必要がある。
ステップ1:環境要件
インストールを開始する前に、システムが以下の基本要件を満たしていることを確認してください:
- パイソンバージョンは
3.8
またはそれ以上。 - エフエフエムペグこれはオーディオとビデオを処理するための基本的なツールで、システムはビデオのデコード、エンコード、スプライスなどの操作を実行するためにこれを呼び出す必要があります。オペレーティングシステムにインストールし、そのパスがシステム環境変数に追加されていることを確認して、プログラムがどのパスからでも呼び出せるようにしてください。
ffmpeg
命令だ。 - CUDAお使いのコンピュータにNVIDIAグラフィックカードが搭載されている場合は、CUDAツールキットをインストールすることを強くお勧めします。これにより、プログラムがGPUを利用して計算を高速化し、ビデオ解析と処理の速度を大幅に向上させることができます。GPUがない場合、プログラムはデフォルトでCPU上で実行されます。
ステップ2:インストールと設定
- プロジェクトコードの複製
ターミナルかコマンドラインツールを開いてgit
コマンドを使って、プロジェクトのコードをGitHubからローカル・コンピューターにクローンする。git clone https://github.com/LumingMelody/Ai-movie-clip.git
次にプロジェクト・ディレクトリに移動する:
cd Ai-movie-clip
- 依存ライブラリのインストール
プロジェクトのすべてのPython依存ライブラリはrequirements.txt
ファイルを使用してください。ファイルを使用する。pip
必要なライブラリはすべてワンクリックでインストールできます。pip install -r requirements.txt
- 環境変数の設定
これが最も重要なステップだ。プロジェクトは外部のAIサービスやクラウドストレージを呼び出す必要があるため、関連するAPIキーとアクセス認証情報を提供しなければならない。
まず、環境変数テンプレート・ファイルをコピーする。.env.example
と名前を変更する。.env
.cp .env.example .env
次に、テキストエディタを使って、新しく作成した
.env
ファイルを開くと、以下のように表示されるので、手動で記入する必要がある:# 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
この鍵はどうやって手に入れるのですか?
DASHSCOPE_API_KEY
このキーはAliCloudのDashScopeサービスから提供されます。AliCloudのウェブサイトにアクセスし、DashScopeサービスを開き、コンソールでAPI-KEYを作成する必要があります。このサービスは主に、ビデオ分析やコンテンツ生成などのコアAI機能を駆動するために使用されます。OPENAI_API_KEY
このキーはOpenAIプラットフォームから提供され、主にテキスト生成などの言語モデリング関連機能に使用されます。APIキーを作成するには、OpenAIのアカウントが必要です。- OSSコンフィギュレーションこのプロジェクトでは、処理中のビデオクリップと最終的に生成されたファイルを保存するために、AliCloud Object Storage(OSS)を使用します。AliCloud OSSサービスを有効にして、ストレージバケット(Bucket)を作成し、そのストレージバケットのアクセスID(
OSS_ACCESS_KEY_ID
)とキー(OSS_ACCESS_KEY_SECRET
)にストレージバケツの名前を記入しOSS_BUCKET_NAME
.
ステップ3:使い方を学ぶ
Ai-movie-clipは、コマンドラインツールとWeb APIサービスの2つの主な使用方法を提供する。
1.コマンドラインツール(クイックテストやローカルタスク用)
このプロジェクトは main.py
コマンドラインから直接関数を呼び出すことができるスクリプト。
- ビデオを分析するAIに動画ファイルを解析させ、結果をJSON形式で出力させる。
python main.py analyze video.mp4 --output analysis.json
- 自動ビデオ編集指定された期間とスタイルのテンプレートに基づいてビデオを自動的に編集します。
python main.py edit video.mp4 --duration 30 --style "抖音风"
- 利用可能なすべてのコマンドを表示このファイルのコピーは
--help
パラメータを使用すると、サポートされているすべてのコマンドとオプションが表示されます。python main.py --help
2.ウェブAPIサービス(統合および本番環境用)
AIクリップ機能をご自身のウェブサイトやアプリに統合したい場合は、プロジェクト内蔵のAPIサービスをご利用ください。
- APIサーバーの起動ランニング
app.py
ファイルを使用して FastAPI ベースの Web サーバーを起動します。開発とデバッグを容易にするにはuvicorn
コマンドで起動させ、コード変更後にサーバーが自動的に再起動できるようにする。uvicorn app:app --reload
- APIドキュメントへのアクセスサーバーが起動したら、ブラウザで開いてください。
http://localhost:8000/docs
.利用可能なすべてのAPIインターフェース、パラメータ、およびリターンフォーマットの詳細を示すインタラクティブなAPIドキュメントページ(Swagger UIによって生成される)が表示されます。このページから直接インターフェイスをテストすることもできます。 - APIの呼び出し例これらのAPIを呼び出すには、どんなプログラミング言語でも使うことができる。
requests
ライブラリを使用してAPIサンプルを呼び出す。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())
アプリケーションシナリオ
- ソーシャルメディア・コンテンツの自動化
毎日大量の短編動画を公開する必要があるソーシャルメディア運用チームは、Ai-movie-clipを利用することで、長時間の生放送映像やイベント収録、商品紹介動画などを、JitteryやShuttleなどのプラットフォームのスタイルに合わせた短編動画に自動編集し、自動字幕やBGMを付けることができ、コンテンツ制作サイクルを大幅に短縮することができる。 - ビデオクリップのファーストカットを一括処理
AIはすぐにクリップの基本的なバージョンを生成するために、クリップの完全な、安定した映像の内容をフィルタリングすることができ、またはプリセットのスクリプトの要件に応じて、エディタとし、調整と創造的な処理の洗練に基づいて、このように反復的な労働の多くを節約することができます。 - 開発者が統合したビデオ処理機能
独自のアプリケーション(オンライン教育プラットフォーム、マーケティングツール、クラウドフォトアルバムサービスなど)で動画処理機能を提供したい開発者は、APIを通じてAi-movie-clipのサービスを直接呼び出すことができる。開発者は、基盤となる複雑な動画処理やAIモデルの詳細を気にする必要はなく、動画ファイルのパスとクリップの要件をAPIに送信するだけで、最終的な動画製品を得ることができる。
品質保証
- 非常に大きなビデオファイルを扱うには?
このシステムは内部的に自動分割処理機構を備えている。大容量のビデオファイルを処理する場合、プログラムはまず分析・処理のために小さなセグメントに分割し、最後に結果を結合します。設定ファイルconfig.yaml
スライスのサイズは、処理速度とメモリ消費のバランスをとるために調整される。 - どのようなビデオフォーマットに対応していますか?
基礎となるシステムは、ビデオのエンコードとデコードをFFmpegに依存しているため、理論的には、以下のようなFFmpegでサポートされている一般的なビデオフォーマットをすべてサポートしています。MP4
そしてAVI
そしてMOV
そしてMKV
その他 - ビデオ処理を速くするためにはどうすればいいですか?
これを行う最も効率的な方法は、GPUアクセラレーションを使用することです。マシンにNVIDIAグラフィックカードが搭載され、CUDA環境が適切に設定されている場合、システムは計算集約的なタスクにGPUを自動的に利用します。あるいは、GPUアクセラレーションをconfig.yaml
マルチコアCPUリソースを有効に活用するために、同時処理のスレッド数やプロセス数を調整するための設定ファイル。