SlideShare a Scribd company logo
1 of 17
FFmpeg をつかった動画の作り方
経緯
スマートフォンの性能向上や GoPro のような
ウェアラブルでタフなカメラの台頭、更に携帯
電話網の広帯域化も相まって、撮る・観る双方
の環境が整ってきたにもかかわらず、
編集コストは未だ高いままで、素敵な動画があふ
れる世の中にはまだなっていないので、それを
どうにか解決できないかと思い、身近な動画変
換ツール「 FFmpeg 」をつかっていろいろチャ
レンジしてみました。
FFmpeg ってそもそも何?
FFmpeg は、動画・音声といったマルチメディア
のエンコード・デコード等を行うことができる
オープンソース・ソフトウェア
豊富なメディアフォーマットのサポート
と、 Linux/Windows/Mac といった様々な環境
で動作する
Crevo では動画のサムネイル生成に利用
今回紹介する内容

基本編
− 映像ファイルと音声ファイル連結する
− 音声ファイル同士を連結する
− 複数ファイル同士を連結する

応用編
− 画像ファイルを動画にする
− 音声ファイルを映像に連結する
− 字幕を入れる
基本編
の前に
下準備
インストール
$ brew install ffmpeg <option>
付与可能な option は brew info ffmpeg で調べることができます。
今回は以下のものをオプションに指定しました。
--without-x264 => 動画コーデックに h264 を指定できる
--with-faac    => 音声コーデックに aac を指定できる
--with-libass => 動画に字幕を入れるための ass ファイルを利用でき
る
基本編
動画ファイルを連結する
$ ffmpeg -i [ 入力動画ファイル 1] -i [ 入力動画
ファイル 2] -filter_complex
"concat=n=2:v=1:a=1" [ 出力動画ファイル ]
-i  は入力ファイルを指定
n は連結するファイル数 規定値は 2
v は連結する映像ファイルの可否 規定値は 1
a は連結する音声ファイルの可否 規定値は 0
音声ファイル同士を連結する
$ ffmpeg -i [ 入力音声ファイル 1] -i[ 入力音声
ファイル 2] -filter_complex
"concat=n=2:v=0:a=1" [ 出力ファイル ]
-i  は入力ファイルを指定
n は連結するファイル数 規定値は 2
v は連結する映像ファイルの可否 規定値は 0
a は連結する音声ファイルの可否 規定値は 1
複数の動画ファイルを連結する
$ ffmpeg -i [ 入力動画ファイル 1] -i [ 入力動画
ファイル 2] -i [ 入力動画ファイル 3]
-filter_complex "concat=n=3:v=1:a=1" [ 出力動
画ファイル ]
-i  は入力ファイルを指定
n は連結するファイル数 規定値は 3
v は連結する映像ファイルの可否 規定値は 1
a は連結する音声ファイルの可否 規定値は 1
応用編
画像ファイルを動画にする
$ ffmpeg -r 1 -i img%01d.jpeg [ 出力ファイル ]
-r 1 は 1fps で出力するという意味
img%01d.jpeg は入力ファイル名、この場合 img までは共通の名前で、
以下 %01d は共通の名前以降 1 桁で連番が続くという意味 
音声ファイルを映像に連結する
$ ffmpeg -i [ 入力映像ファイル ] -i [ 入力音声ファ
イル ] -vcodec copy -acodec copy [ 出力ファイ
ル ]
字幕を入れる
$ ffmpeg -i [ 入力ファイル ] -vf ass=[ 字幕設定
ファイル ] [ 出力ファイル ]
 
詳細は Qiita にまとめています
→ http://qiita.com/haruakinosuke/ite
ms/518372ad304c1b71fa38
( 随時更新 )

More Related Content

Similar to FFmpegをつかった動画の作り方

動画像のばらし方
動画像のばらし方動画像のばらし方
動画像のばらし方Kei Kawamura
 
HTML5でできるカメラアプリを実際に体験しよう
HTML5でできるカメラアプリを実際に体験しよう HTML5でできるカメラアプリを実際に体験しよう
HTML5でできるカメラアプリを実際に体験しよう Hideki Akiba
 
より高品質なメディアサービスを目指す ABEMA の技術進化
より高品質なメディアサービスを目指す ABEMA の技術進化より高品質なメディアサービスを目指す ABEMA の技術進化
より高品質なメディアサービスを目指す ABEMA の技術進化Yusuke Goto
 
ハイブリッドアプリについて-PhoneGapアプリ制作の入り口-
ハイブリッドアプリについて-PhoneGapアプリ制作の入り口-ハイブリッドアプリについて-PhoneGapアプリ制作の入り口-
ハイブリッドアプリについて-PhoneGapアプリ制作の入り口-Yossy Taka
 
あにみた!(PHPカンファレンス用資料)
あにみた!(PHPカンファレンス用資料)あにみた!(PHPカンファレンス用資料)
あにみた!(PHPカンファレンス用資料)Hiroyuki Ishiyama
 
いまさら聞けない!HTML5超入門
いまさら聞けない!HTML5超入門いまさら聞けない!HTML5超入門
いまさら聞けない!HTML5超入門Monaca
 
インターネット生放送を支える技術としくみ2015年版
インターネット生放送を支える技術としくみ2015年版インターネット生放送を支える技術としくみ2015年版
インターネット生放送を支える技術としくみ2015年版Yusei Yamanaka
 
OUCC 第1回AfterEffects勉強会
OUCC 第1回AfterEffects勉強会OUCC 第1回AfterEffects勉強会
OUCC 第1回AfterEffects勉強会spring_raining
 
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Monaca
 
もうやりきったと思ってませんか?まだまだやれるEFO-マルチデバイス時代のウェブフォーム顧客体験最適化
もうやりきったと思ってませんか?まだまだやれるEFO-マルチデバイス時代のウェブフォーム顧客体験最適化もうやりきったと思ってませんか?まだまだやれるEFO-マルチデバイス時代のウェブフォーム顧客体験最適化
もうやりきったと思ってませんか?まだまだやれるEFO-マルチデバイス時代のウェブフォーム顧客体験最適化tanakayoshikif-code
 
ULIZA Product Overview
ULIZA Product OverviewULIZA Product Overview
ULIZA Product Overview強 平井
 
Flexでサクッと作れ!Androidアプリ開発のススメ
Flexでサクッと作れ!Androidアプリ開発のススメFlexでサクッと作れ!Androidアプリ開発のススメ
Flexでサクッと作れ!Androidアプリ開発のススメKeisuke Todoroki
 
事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナー事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナーMonaca
 
モバイル&クラウドにおけるイノベーションへの挑戦と実践
モバイル&クラウドにおけるイノベーションへの挑戦と実践モバイル&クラウドにおけるイノベーションへの挑戦と実践
モバイル&クラウドにおけるイノベーションへの挑戦と実践Osaka University
 
Opera Mobile for AndroidのカメラサポートをつかってWebコンテンツにカメラ機能をつけてみたお話
Opera Mobile for AndroidのカメラサポートをつかってWebコンテンツにカメラ機能をつけてみたお話Opera Mobile for AndroidのカメラサポートをつかってWebコンテンツにカメラ機能をつけてみたお話
Opera Mobile for AndroidのカメラサポートをつかってWebコンテンツにカメラ機能をつけてみたお話Akira Ouchi
 

Similar to FFmpegをつかった動画の作り方 (18)

動画像のばらし方
動画像のばらし方動画像のばらし方
動画像のばらし方
 
HTML5でできるカメラアプリを実際に体験しよう
HTML5でできるカメラアプリを実際に体験しよう HTML5でできるカメラアプリを実際に体験しよう
HTML5でできるカメラアプリを実際に体験しよう
 
より高品質なメディアサービスを目指す ABEMA の技術進化
より高品質なメディアサービスを目指す ABEMA の技術進化より高品質なメディアサービスを目指す ABEMA の技術進化
より高品質なメディアサービスを目指す ABEMA の技術進化
 
2014 0212 yamasaki_zemi
2014 0212 yamasaki_zemi2014 0212 yamasaki_zemi
2014 0212 yamasaki_zemi
 
Androidアプリ開発
Androidアプリ開発Androidアプリ開発
Androidアプリ開発
 
ハイブリッドアプリについて-PhoneGapアプリ制作の入り口-
ハイブリッドアプリについて-PhoneGapアプリ制作の入り口-ハイブリッドアプリについて-PhoneGapアプリ制作の入り口-
ハイブリッドアプリについて-PhoneGapアプリ制作の入り口-
 
あにみた!(PHPカンファレンス用資料)
あにみた!(PHPカンファレンス用資料)あにみた!(PHPカンファレンス用資料)
あにみた!(PHPカンファレンス用資料)
 
いまさら聞けない!HTML5超入門
いまさら聞けない!HTML5超入門いまさら聞けない!HTML5超入門
いまさら聞けない!HTML5超入門
 
インターネット生放送を支える技術としくみ2015年版
インターネット生放送を支える技術としくみ2015年版インターネット生放送を支える技術としくみ2015年版
インターネット生放送を支える技術としくみ2015年版
 
OUCC 第1回AfterEffects勉強会
OUCC 第1回AfterEffects勉強会OUCC 第1回AfterEffects勉強会
OUCC 第1回AfterEffects勉強会
 
Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)Phone gap+javascriptスマホアプリ開発(入門編)
Phone gap+javascriptスマホアプリ開発(入門編)
 
もうやりきったと思ってませんか?まだまだやれるEFO-マルチデバイス時代のウェブフォーム顧客体験最適化
もうやりきったと思ってませんか?まだまだやれるEFO-マルチデバイス時代のウェブフォーム顧客体験最適化もうやりきったと思ってませんか?まだまだやれるEFO-マルチデバイス時代のウェブフォーム顧客体験最適化
もうやりきったと思ってませんか?まだまだやれるEFO-マルチデバイス時代のウェブフォーム顧客体験最適化
 
ULIZA Product Overview
ULIZA Product OverviewULIZA Product Overview
ULIZA Product Overview
 
Golang入門
Golang入門Golang入門
Golang入門
 
Flexでサクッと作れ!Androidアプリ開発のススメ
Flexでサクッと作れ!Androidアプリ開発のススメFlexでサクッと作れ!Androidアプリ開発のススメ
Flexでサクッと作れ!Androidアプリ開発のススメ
 
事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナー事例で学ぶHTML5スマフォアプリ開発セミナー
事例で学ぶHTML5スマフォアプリ開発セミナー
 
モバイル&クラウドにおけるイノベーションへの挑戦と実践
モバイル&クラウドにおけるイノベーションへの挑戦と実践モバイル&クラウドにおけるイノベーションへの挑戦と実践
モバイル&クラウドにおけるイノベーションへの挑戦と実践
 
Opera Mobile for AndroidのカメラサポートをつかってWebコンテンツにカメラ機能をつけてみたお話
Opera Mobile for AndroidのカメラサポートをつかってWebコンテンツにカメラ機能をつけてみたお話Opera Mobile for AndroidのカメラサポートをつかってWebコンテンツにカメラ機能をつけてみたお話
Opera Mobile for AndroidのカメラサポートをつかってWebコンテンツにカメラ機能をつけてみたお話
 

FFmpegをつかった動画の作り方