6

MLTマルチメディア フレームワークの学習を開始しています。C/C++ で書かれているため、公式ドキュメントには C/C++ のチュートリアルと例があり、Perl バインディングへのリンクはほとんどありません。

Python で MLT を使用したいので、MLT の Python バインディングのチュートリアルを探しています。私はグーグルでたくさん試しましたが、単一のドキュメントページを見つけることができませんでした.

基本的に、いくつかの画像とビデオを結合して 1 つのビデオを作成する必要があり、最終的なビデオにオーディオも追加する必要があります。多くのビデオでこれらすべてをまとめて行う必要があるため、Python でスクリプトを作成しています。MLT のmeltコマンド ライン ユーティリティのスクリプトのサブプロセスを実行するまでは。しかし、そのコマンドはあまりプログラム可能ではありません。

4

2 に答える 2

4

基本的に、C API を学び、それを Python に当てはめる必要があります。C API はオブジェクト ベースであり、参照カウントを使用するため、思ったより簡単です。重要なのは、Python (およびその他の高レベル言語バインディング) が mlt++ C++ ラッパーを使用して SWIG を使用して生成されることを理解することです。C++ ヘッダー ファイルを C ヘッダー ファイルと比較すると、C++ API は単なるシン ラッパーであるため、一方から他方へのマッピングがかなり直接的であることがわかります。次に、サンプルからの mlt Python 呼び出しを C++ ヘッダーと比較して、C++ 名が Python に変換される方法を学習します。最後に、Flowblade のコードと OpenShot 1.x コードを調べて、さらに理解を深めることができます。

于 2014-12-12T19:19:26.093 に答える