PythonでビデオやアニメーションGIFをプログラム的に生成するには?質問する

PythonでビデオやアニメーションGIFをプログラム的に生成するには?質問する

ビデオを作成したい一連の画像があります。各フレームのフレーム継続時間を指定できれば理想的ですが、固定フレーム レートでも問題ありません。私はこれを wxPython で実行しているので、wxDC にレンダリングしたり、画像を PNG などのファイルに保存したりできます。これらのフレームからビデオ (AVI、MPG など) またはアニメーション GIF を作成できる Python ライブラリはありますか?

編集: すでに PIL を試しましたが、うまくいかないようです。この結論を訂正したり、別のツールキットを提案したりできる人はいますか? このリンクは、PIL に関する私の結論を裏付けているようです:http://www.somethinkodd.com/oddthinking/2005/12/06/python-imaging-library-pil-and-animated-gifs/

ベストアンサー1

visvis の images2gif は PIL/Pillow に問題があり、積極的にメンテナンスされていないため、使用しないことをお勧めします (私は作者なので、そのことはよく知っています)。

代わりに、イメージは、この問題やその他の問題を解決するために開発され、存続する予定です。

簡単で素早い解決策:

import imageio
images = []
for filename in filenames:
    images.append(imageio.imread(filename))
imageio.mimsave('/path/to/movie.gif', images)

より長い映画の場合は、ストリーミング方式を使用します。

import imageio
with imageio.get_writer('/path/to/movie.gif', mode='I') as writer:
    for filename in filenames:
        image = imageio.imread(filename)
        writer.append_data(image)

おすすめ記事