私は最近、タイムラプスビデオを作成し、avconv
を使用するためにたくさんの画像を撮りましたが、これは驚くほど簡単でした(適切なコマンドを調べた後)。
しかし今、私はそれをavconvに渡す前に、Imagemagickのconvert
関数を通して各画像を送りたいと思います。
これは、編集した画像を保存し、これらをavconv
の入力として使用することで実行できます。 ただしスペースをとるため、これは避けたいと思います。
何を私がしたいすることはこのようなものになるでしょう
avconv
に送信します。 }すべての画像に対して繰り返しますタイムラプスビデオを作成するときに、その場で画像を編集するにはどうすればよいですか?
正確にあなたが望むように行うことはできません、そしてあなたは近づくことができます、しかしそれは多くのいじりを必要とします。
また、その背後にある理論的根拠も理解しています。convert
関数の出力を、後で削除できる一時ファイルとして扱いたいので、次の代わりに:
@!/bin/bash
convert -stretch 1280x720 -background none ~/Pictures/MyTimelapseImages/*.jpg ~/tmp/MyTempImages/*.jpg
avconv -i ~/tmp/MyTempImages/*.jpg ~/Videos/MyTimeLapsVideo.mkv
1つのCPUコアで画像変換プロセスを開始し、同時に別のCPUコアでビデオ変換プロセスを開始するそしてavconvによってすでに処理されたファイルを削除する(ディスクスペースを節約するため)
そして、いじくり回すのは後者です。cpulimit
両方avconv
およびconvert
それらがほぼ完全同期していることを確認してから、処理されたファイルをクリーンアップするさらに別のプロセスを作成します。
ですから、そうです。100以上のサーバーファームで1,000ドルを節約したい大企業で働いているなら、それだけの価値があります。あなたのシステムでは?あなた自身のための? 1本の映画ですか?
;-)