3

私のpython + djangoプロジェクトで次の操作を実行する必要があります。

  • 同じサイズとビットレートのビデオを結合する
  • ビデオと画像の結合 (画像操作には PIL を使用します: 既存の画像にテキストを書き込みます)
  • ビデオ間のトランジションのフェードイン

Python 用のビデオ編集ライブラリをいくつか知っています: MLT フレームワーク(私のニーズには複雑すぎる)、pygamepymedia (必要なすべての機能が含まれていない)、gstreamer バインディング(ひどいドキュメント)。

ffmpegmencoderまたはtranscodeを使用して、コマンドラインからすべての作業を行うこともできます。

Linuxマシンでそのようなことを行うための最良のアプローチは何ですか.

編集:最終的に私はメルトで作業することを選択しました(mltのコマンドライン)

4

4 に答える 4

0

ffmpegはGNU/Linuxで利用できるので、pexpectsubprocessなどのモジュールで使用するのが最善の解決策です。

于 2011-01-29T12:24:48.203 に答える
0

どのコーデックを使用していますか?

ビデオを圧縮するには、非可逆圧縮と可逆圧縮の 2 つの方法があります。それらを区別するのは簡単です。長さに応じて、非可逆ビデオ ファイルはメガバイトの範囲にあり、可逆 (非圧縮を含む) はギガバイトの範囲にあります。

ここでは単純化しすぎます。ビデオ ファイルの編集は、フィルムの断片を接着するだけのフィルム編集とは大きく異なります。ビットレート、フレームレート、解像度だけではありません。ほとんどの非可逆ビデオ コーデック (MPEG 1-4、Ogg Theora、H.26x、VC-1 など) は、フル フレームで開始し、動きの変化のみを記録します。ビデオを見ると、実際に見ているのは、その上に貼り付けられた変更のレイヤーが次々とある静的なシーンです。フル フレームの後にフル フレームが表示されているように見えますが、ファイル内のデータを見ると、黒い背景とビデオのスクランブル ブロックだけが表示されます。

圧縮されていないか、ロスレス コーデック (HuffYUV、Lagarith、FFV1 など) を使用している場合は、ビデオ ファイルをフィルムと同じように編集できます。ビデオを再エンコードする必要がありますが、ビデオの品質には影響しません。解像度とフレーム レートが同じである限り、カット、コピー、ペーストを自由に行うことができます。ビデオに損失がある場合は、同じ画像を JPEG で何度も保存するのと同じように、ビデオの品質をいくらか落として再エンコードする必要があります。

もう 1 つのオプションは、ビデオのいくつかの部分を MKV のようなコンテナーに入れ、チャプターを使用して部分から部分へジャンプさせることです。これは可能だと言われたことを覚えているようですが、試したことがないので、そうではないかもしれません。

于 2013-01-24T17:45:26.397 に答える
0

ビデオと画像の結合には OpenCV を使用できます。ドキュメント、特に画像/ビデオ I/O 関数を参照してください。

ただし、ライブラリにフェードを行う関数があるかどうかはわかりません。

于 2011-02-01T08:00:22.673 に答える
0

http://avisynth.org/mediawiki/Main_Pageはビデオ用のスクリプト言語です。

于 2011-01-28T05:07:34.100 に答える