FFmpegでエンコードした動画をTwitterにあげる
はじめに
ShadowPlayで撮影したゲームの一シーンとかTwitterにあげたいなって時の話
GUIツール入れるのめんどくさいのでFFmpegで任意部分をカットしてエンコードする
環境
- Windows 7 64bit
- ffmpeg version N-81609-g7b3bc36
動画の切り出し
10分30秒から2分切り出す場合
- 入力ファイル
input.mp4 - 出力ファイル名
output.mp4
1$ ffmpeg -ss 00:10:30 -i input.mp4 -t 120 output.mp4
こんな感じで切り出せる
iオプションよりssオプションを前に持ってくることでシーク時間が早くなる
逆にするとファイルの最初から読み出すため動画が長ければ長い程シークに時間を取られる
YouTube等の動画サイトにあげる時はこれで良いがTwitterにあげる際にはもう1つオプションを追加する必要がある
1$ ffmpeg -ss 00:10:30 -i input.mp4 -t 120 -pix_fmt yuv420p output.mp4
これでTwitterの公式サイトの方でD&Dすると動画をアップロードすることが出来る
少し前からFFmpegがCUDA対応してるからそれ込みで使えば多少長くても結構早めに切り出せるかな
こんな感じ
1$ ffmpeg -ss 00:10:30 -i input.mp4 -t 120 -vcodec nvenc -pix_fmt yuv420p output.mp4
もし動画連結するなら
1$ ffmpeg -i input_1.movie -i input_2.movie -filter_complex "concat=n=2:v=1:a=1" output.mp4