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, 動画編集, 小技集

執筆者:

関連記事

no image

第9回:閲覧しているサイトへのリンクタグを生成するブックマークレット

どうしてもっと早く気がつかなかったんだろう、と思うくらい便利なブックマークレットを思い付きました。既出かもしれないけど、公開しておきます。 ブログを書いていると、他のブログのエントリーへのリンクを貼っ …

Re: 第3回:JavaScriptで画像サイズと合ったポップアップウィンドウを開く

[追記:2008/07/04] 更に改良したスクリプトをつくりましたので下記エントリーの方を参照して下さい。 ・Re2: 第3回:JavaScriptで画像サイズと合ったポップアップウィンドウを開く …

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

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

何曜日の何時ころがピークなのか分かりやすいヒートマップ的な分布を出すSQL

ご無沙汰しております。ヤガーです。 すっかりエンジニア的な投稿をしなくなってしまったんですが、食っていかないといけないわけでずっとプログラム書き続けております(笑) 昨今ではプログラミングはどんどん高 …

Topsy API を使ってブログに「つぶやかれ数」を自由にレイアウトする

Twitterの普及にともなって、twitter.com からこのブログにきてくれる人が増えてきました。Twitterとの連携を強化すべく 見ているページをTwitterに投稿するBookmarkle …

スポンサードリンク

スポンサードリンク