Linuxで写真のコレクションからタイムラプスビデオを作成するにはどうすればよいですか?


19

Ubuntuの下で、写真のコレクションからタイムラプスを作成したい。HDビデオを作成し、理想的にはサウンドトラックを追加したいと思います。


私はそれを見ていません。この質問を削除して、そこに回答を投稿できます。それは大丈夫ですか?
フレデリコシャルドン

これがこれに最適なスタック交換サイトであるかどうかはわかりません。私がしたことを共有したいだけです。
フレデリコシャルドン

askubuntu.comにも同様の質問があります。回答の大部分は執筆時点でここで説明されていますが、もちろん将来的には変更される可能性があります。
アナキャット

回答:


11

Ffmpegがそれを行います。画像があるimg001.jpg, img002.jpg, img003.jpg, ...場合は、コマンドラインで次の操作を行います。

ffmpeg -i img*.jpg output.mpeg

ffmpeg --helpmanページやWebには、さらに多くのオプションがあります。これらにより、フレームレートと出力形式を制御できます。


これを使用すると、.jpg出力ファイルのような後者のファイルが考慮されるため、エラーが発生します。私は得ますFile 'DSCF6134.JPG' already exists. Overwrite ? [y/N]-それほど素晴らしくありません。私の解決策は、ファイルリストを生成し\ls *.JPG | sed "s/^/file '/;s/$/'/" > files.txt、それをロードすることffmpeg -f concat -i files.txt output.mpegでした。
-anarcat

:画像を上書きしようとせずに、他のffmpegのバージョン以下のバージョンの作品でffmpeg -pattern_type glob -i "picture*.jpg" output.mpeg
パトリック・R.

9

最初に、作成日に基づいてすべての* .JPGファイルの名前を変更します。カメラがファイル名を変更したり、単にそれらを注文したりすることは、どういうわけか私たちの望んでいないことです。ただし、作成日までに名前を変更すると常に機能します。

jhead -n%Y%m%d-%H%M%S *.JPG

その後、このリストをファイルに入れます。

ls -1tr | grep -v files.txt > files.txt

次にmencoderAVI20 fpsを使用してビデオを作成します。これにより、通常、合計されたすべての画像と同じサイズの巨大なビデオファイルが生成されることに注意してください。

mencoder -nosound -noskip -oac copy -ovc copy -o output.avi -mf fps=20 'mf://@files.txt'

私は通常、カメラの最低解像度(5 MP)でタイムラプス用に写真を撮ります。適切な1080pビデオを生成するために、画像はまず幅1920ピクセルにリコールされ、次に高さ1080にトリミングされます。このように、私は写真のコンテンツを変更せず、切り抜くだけです:

ffmpeg -i output.avi -y -sameq -vf scale=1920:1440,crop=1920:1080 output-final.avi

メンコーダーを使用して写真をまとめるのはsegmentation fault、ffmpegを使用したからです。


segfaultの場合、ffmpegのバージョンを知っていると便利です。
-Unapiedra

私のように3:2(私のD750静止画は6016x4016)で撮影し、16:9(4kビデオの場合)3840x2160で必要な場合は、FFMPEGを使用してビデオをピラーボックスにし、このコマンドで両側に黒い路面電車線を埋め込みます-ffmpeg -i output.avi -qscale 0 -vf "scale = 3840:2160:force_original_aspect_ratio = decrease、pad = 3840:2160:(ow-iw)/ 2:(oh-ih)/ 2" output-final.avi-ビデオ大きくなりますが、これはダウンスケーリングなので品質の損失はありません
ロブ

あなたにはffmpeg、コマンド、-sameqオプションは今に置き換えている-qscale 0
transang

3

Blenderは、モーションタイムラプス(ハイパーラプス)または不安定な映像を扱う場合に適したソリューションです。モーショントラッキング機能があるため、タイムラプス全体で追跡する固定点を選択できます。回転の問題も修正できます。



0

メンコーダーを使用できます。オプションは非常に明示的です:

  • すべての画像ファイルをリストします。

それらがすべて現在のディレクトリに順序付けられた名前であり、ファイル/tmp/files.txtにリストが必要な場合:

ls -1 *jpg > /tmp/files.txt

  • 適切なオプションでmencoderを使用してください。

出力ファイルを30fpsの/tmp/test.aviにしたい場合:

mencoder -nosound -ovc lavc -lavcopts vcodec=mpeg4 -o /tmp/test.avi -mf type=jpeg:fps=30 mf://@/tmp/files.txt


0

このチュートリアルでAdd Slideshow Clip説明されているように、Kdenliveはメニューを使用してタイムラプスを生成することもできます。

同じサイトによるとOpenshotには同様の機能がありますが、「バグが多すぎる」ためお勧めしません。それでも、お好みのビデオエディターであれば、適切な名前のファイル(001.jpgからNNN.jpg)のシーケンスをOpenshotウィンドウにドラッグアンドドロップして、タイムラプスとしてインポートすることもできます。


このガイドは2014年のものです。OpenShotはここ数年で多くのことが証明されており、現在でははるかに信頼性が高くなっています。
vclaw
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.