Creazy!

WEBエンジニア・ヤガーのテック・ガジェットブログ

ffmpeg 動画編集 小技集

Ffmpegで60fps動画を30fpsにスローモーション変換する(映像、音声両方)

投稿日:


FFmpegのオプションはいつまで経っても覚えられないので使ったコマンドは書いとかないと絶対忘れますね。というわけで備忘録。
アクションカメラJVC ADIXXION GC-XA2を買ったのもあって動画を撮る機会が増えましたが、あくまで安い機材で楽しんでいるので手持ちのカメラで取れる素材を加工して使ったりすることが多いです。タイムラプスやスローモーションなど速度を変える動画は面白いんですが、iMovieで単純にスローモーション変換してもゆっくりになるだけでコマ落ち感があります。GC-XA2は1080p60fpsで撮影ができるので、30fpsまで感覚を開ければそれなりにスムーズなスローモーション動画が作れるかなと思ってffmpegのコマンドを探ってみた。


結論からいうと下記のようなコマンドで成功した

ffmpeg -i INPUT.mp4 -r 30 -b:v 4000k -b:a 256k -vf "setpts=2.0*PTS" -af "atempo=0.5" OUTPUT.mp4

-b:v : videoのビットレート。指定しないと荒くなる
-b:a : audioのビットレート。videoを指定したので念のため
-vf : videoのフィルター(setptsはvideoのフレーム数を変更します。元が60fpsを30fpsにするので2.0を指定)
-af : audioのフィルター(atempoはaudioのテンポをそろえます。半分の速度にしたいので0.5を指定)
同じ「スローにする」目的なのに、フレーム数をいじる場合は倍に、テンポをいじる場合は半分にするので混乱しがちです。あとaudioのフレーム数を変更するasetptsというオプションもあったんだけど指定の仕方がわからずうまく行かなかった。
ちなみに、動作確認はMac OS X Yosemite 10.10.3、FFmpegは2.4.2でした。

$ ffmpeg -version
ffmpeg version 2.4.2 Copyright (c) 2000-2014 the FFmpeg developers

-ffmpeg, 動画編集, 小技集

執筆者:

関連記事

MovableTypeにFacebookのOpen Graph protocol(OGP)を対応させる方法

【2012/12/02:追記】 記事本文の最初にでてくる画像URLを抜き出すという目的では、元の正規表現では少々問題があったため修正しました。詳細はMTタグの解説部分のコメントをご確認ください。 ども …

no image

Facebookページのiframe形式タブに切り替える場合は、バグに注意!

【2011/03/23:追記】 セキュアな接続(https)の場合に、iframeタブが表示されない問題が解決されていました。 Facebook Platform .:. Bug 15200 &#82 …

「TwitterFollowBadge」がIEで見れない件の対応方法

なんか、近くで嘆きの声が聞こえた気がするので(w)さらっと書いときます。 TwitterFollowBadgeっていう、ブログのサイド(右か左)にはれるTwitter用のブログパーツがあるんだけど、こ …

no image

第15回:見ているページをAnother HTML-lintで文法チェックするブックマークレット

サイトを作ったら、見た目の確認も重要ですがマークアップの文法チェックも重要です。別にW3C信者という訳ではありませんがSEOの面でもstrictなHTMLの方が良さそうなのでできる限り対応した方が良い …

PostToTwitter v2.0.0公開:自分好みのフォーマットでブログ更新をお知らせ

ボクはこのブログ(MT)の更新通知をTwitterに送るのにエムロジックさんのPostToTwitterプラグインを使わせてもらっています。先日MT5にアップグレードしてからはv1.3.0を使っていた …

スポンサードリンク

スポンサードリンク