GitHubじゃ!Pythonじゃ!

GitHubからPython関係の優良リポジトリを探したかったのじゃー、でも英語は出来ないから日本語で読むのじゃー、英語社会世知辛いのじゃー

Zulko

moviepy – Pythonによるビデオ編集

投稿日:

Pythonによるビデオ編集 http://zulko.github.io/moviepy/

MoviePy

MoviePy(フルドキュメント )は、カット、連結、タイトル挿入、ビデオ合成(非線形編集)、ビデオ処理、カスタムエフェクトの作成など、ビデオ編集用のPythonライブラリです。 使用例については、 ギャラリーを参照してください。

MoviePyは、GIFを含む最も一般的なオーディオおよびビデオフォーマットを読み書きでき、Windows / Mac / Linux、Python 2.7+および3で動作します。ここではIPythonノートブックで動作します:

この例では、ビデオファイルを開き、t = 50sとt = 60sの間のサブクリップを選択し、画面の中央にタイトルを追加して、結果を新しいファイルに書き込みます。

from moviepy.editor import *

video = VideoFileClip("myHolidays.mp4").subclip(50,60)

# Make the text. Many more options are available.
txt_clip = ( TextClip("My Holidays 2013",fontsize=70,color='white')
             .set_position('center')
             .set_duration(10) )

result = CompositeVideoClip([video, txt_clip]) # Overlay text on video
result.write_videofile("myHolidays_edited.webm",fps=25) # Many options...

インストール

MoviePyはPythonモジュールNumpyimageioDecorator 、tqdmに依存しています。これはMoviePyのインストール時に自動的にインストールされます。 ソフトウェアFFMPEGは、MoviePyの最初の使用中に(imageioによって)自動的にダウンロード/インストールされます(インストールには数秒かかる)。 特定のバージョンのFFMPEGを使用する場合は、 config_defaults.pyの指示に従ってください。 トラブルが発生した場合は、フィードバックを提供してください。

手作業によるインストール: PyPIからソースをダウンロードするか、 GitHubの開発版が必要な場合は、すべてを1つのフォルダに解凍し、端末を開いて次のように入力します。

$ (sudo) python setup.py install

pipでインストール: pipインストールされている場合は、これを端末に入力してください:

$ (sudo) pip install moviepy

setuptoolsez_setupもインストールされていない場合、上記のコマンドは失敗します。 この場合、インストールする前に次のように入力します。

$ (sudo) pip install ez_setup

オプションですが有用な依存関係

あなたはすべての依存関係を持つmoviepyを以下の方法でインストールすることができます:

$ (sudo) pip install moviepy[optional]

ImageMagickは厳密には必須ではありませんが、テキストを組み込む場合には必要です。 また、GIFのバックエンドとしても使用できますが、ImageMagickなしでMoviePyでGIFを作成することもできます。

ImageMagickをインストールすると、Windowsを除いて MoviePyによって自動的に検出されます。 Windowsユーザーは、MoviePyを手作業でインストールする前に、 moviepy/config_defaults.pyを編集してImageMagickバイナリへのパスを提供する必要があります。これはconvertと呼ばれます。 これは次のようになります。

IMAGEMAGICK_BINARY = "C:\\Program Files\\ImageMagick_VERSION\\convert.exe"

PyGameは、ビデオやサウンドのプレビューに必要です(サーバー上でMoviePyを使用する予定があるが、手作業による高度なビデオ編集には不可欠です)。

高度な画像処理を行うには、以下のパッケージが1つまたは複数必要です。

  • Python Imaging Library(PIL)、あるいはそれ以上のブランチピロー
  • Scipy (トラッキング、セグメント化など)は、PILとOpenCVがインストールされていない場合にビデオクリップのサイズを変更するために使用できます。
  • 一部の高度な画像操作にはScikit Imageが必要な場合があります。
  • いくつかの高度な画像操作には、 OpenCV 2.4.6またはより新しいバージョン(パッケージcv2を提供するcv2 )が必要な場合があります。
  • Matplotlib

ImageMagickをインストールすると、MoviePyによってImageMagickが自動的に検出されます(WindowsユーザとUbuntu 16.04LTSユーザを除く)。

Windowsユーザーの方は、MoviePyを手動でインストールする前に、 moviepy/config_defaults.pyファイルに移動し、 magickというImageMagickバイナリのパスを指定してください。 これは次のようになります。

IMAGEMAGICK_BINARY = "C:\\Program Files\\ImageMagick_VERSION\\magick.exe"

ImageMagickの古いバージョンを使用している場合は、実行可能ファイルの名前はmagick.exeなくconvert.exeあることにmagick.execonvert.exe その場合、IMAGEMAGICK_BINARYプロパティはC:\\Program Files\\ImageMagick_VERSION\\convert.exe

Ubuntu 16.04LTSユーザーの場合、MoviePyを端末にインストールした後、moviepyはIMAGEMAGICKを検出しません。 このバグは修正できます。 このディレクトリのファイルを/etc/ImageMagick-6/policy.xmlに変更し、<! – <policy-domain> “path” rights = “none” pattern = “@ *” /> – >ステートメントをコメントアウトします。

PyGameはビデオとサウンドのプレビューに必要です(サーバーでMoviePyを使用する予定があるが、手作業による高度なビデオ編集には不可欠です)。

たとえば、 clip.resizeメソッドを使用するには、Scipy、PIL、Pillow、OpenCVの少なくとも1つがインストールされている必要があります。

ドキュメンテーション

build_docsを実行すると、インストールが必要な追加の依存関係が発生します。

$ (sudo) pip install moviepy[docs]

ドキュメンテーションは、以下を介して生成および表示することができます。

$ python setup.py build_docs

クリーンビルドなど、ドキュメンテーションビルドに追加の引数を渡すことができます。

$ python setup.py build_docs -E

詳細については、 Sphinxのドキュメントを参照してください。

テストの実行

テストスイートは、次の方法で実行できます。

$ python setup.py test

この方法でテストスイートを実行すると、テストの依存関係がインストールされます。 テストスイートを手動で実行することを選択した場合は、次の方法で依存関係をインストールできます。

$ (sudo) pip install moviepy[test]

寄稿

MoviePyは、元々 Zulkoによって書かれ、MITライセンスで公開されたオープンソースソフトウェアです。 このプロジェクトはGitHubでホストされています.GitHubでは、誰もが貢献したり、助けを求めたり、フィードバックを与えたりすることができます。

また、 Reddit (GitHubよりも使用/例の方が優先される)、 Gitterまたはメーリングリストmoviepy@librelist.comでプロジェクトについて議論することもできます。

私たちはTag Wikiで使われているタグのリストを持っています。 「プルリクエスト」タグは明確に定義されており、すべてのPRはこれらのうちの1つに該当する必要があります。 「Issues」タグはそれほど正確ではなく、完全なリストではないかもしれません。

メンテナ







-Zulko
-, , , , ,

執筆者: