web-dev-qa-db-ja.com

速度を落とし、タイムスケールを追加するビデオエディター

一部のビデオの速度を落とし、ビデオと時間スケール(ミリ秒)を重ねるために、ビデオエディターが必要です。これらの機能を備えたソフトウェアを推奨できますか?ビデオの速度を落とすことは、時間の字幕ほど重要ではありません。最適な設定(約60 fps?)を使用してGoPro Hero4カメラを使用してすべてのクリップを記録しました。

いくつかの学校プロジェクトの実験で、波面が既知の距離を移動するのに必要な時間を測定しようとしています。

2
ASim128

ここでやりたいことをすべて達成するには、2つのことを順番に行う必要があります。

1。ビデオに正確なタイムスタンプをオーバーレイ

2。元のタイムスタンプを保持しながらビデオを遅くする

ffmpegは drawtext filter を介して時間オーバーレイを提供できます

ステップ1

ffmpeg -i input.mp4 -s 1920x1080 -vf "drawtext=fontfile=/usr/share/fonts/truetype/dejavu/DejaVuSans.ttf:expansion=normal: text='frame %{n}\\: pts=%{pts \\: hms}': fontcolor=white:fontsize=48: x=7: y=7" -vcodec libx264 -vb 2000k -strict -2 -preset ultrafast -f mp4 output.mp4

Fontsizeパラメーターの後にx=パラメーターとy=パラメーターを調整することにより、タイムコードの場所を調整できます。 ffmpegは非常に強力なビデオ処理プログラムであり、すべての異なるオプションを心から知るふりをするつもりはありませんが、それで達成できなかったメディアファイルを扱う必要があることをまだ発見していません。それはffplay media多分 this 以外のプレイヤー

FFMpegのビルド済みバイナリとドキュメントを見つけることができます こちら ffmpegバージョン2.8.10-0ubuntu0.16.04.1を使用しました

ステップ2

ビデオの速度を落とすには、setptsフィルタービデオフィルターを使用します。このフィルターは、各フレームのプレゼンテーションタイムスタンプを変更することで機能するため、上記で説明したタイムオーバーレイの正確なPTSを保持するために、この秒を実行する必要があります。コマンドcp output.mp4 i2.mp4を使用して、元の出力ファイルを新しい入力ファイルにコピーすることから始めます。

ビデオの速度を落とすには、1より大きい係数を使用する必要があります。このフィルターはオーディオに影響を与えないため、次のコマンドで-anスイッチを追加してストリップすることに注意してください。

ffmpeg -i i2.mp4 -an -vf "setpts=2.0*PTS" output.mp4

これにより、オリジナルの1/2の速度でビデオが再生されます(再生に2倍の時間がかかります)。

この回答について不明な点がある場合は、コメントをお寄せください。明確にするために最善を尽くします。

ソース

2
Elder Geek

このような機能を備え、完全なスイートエディターであるエディターをお探しの場合は、Kdenliveをご覧になることをお勧めします。

Kdenliveでのタイムコードオーバーレイ

Kdenliveでビデオを遅くする

そうでなければ、これとこれだけの解決策を探しているなら、 this answer from Elder Geek が欲しいかもしれません。これらのコマンドは、ソースカメラに一貫性がある限り、スクリプト形式でも将来的に調整および再使用できます。

0
Michael Tunnell