#インストール
brew install ffmpeg
#いっぱいオプション入れるとき
brew reinstall ffmpeg --with-vpx --with-vorbis --with-libvorbis --with-vpx --with-vorbis --with-theora --with-libogg --with-libvorbis --with-gpl --with-version3 --with-nonfree --with-postproc --with-libaacplus --with-libass --with-libcelt --with-libfaac --with-libfdk-aac --with-libfreetype --with-libmp3lame --with-libopencore-amrnb --with-libopencore-amrwb --with-libopenjpeg --with-openssl --with-libopus --with-libschroedinger --with-libspeex --with-libtheora --with-libvo-aacenc --with-libvorbis --with-libvpx --with-libx264 --with-libxvid
brew install youtube-dl
#フォーマット変換
##mov ファイルから mp4
ffmpeg -i movie.mov -vcodec copy -acodec cop out.mp4
#フレームレートの操作
1秒間に10フレームに変更
ffmpeg -i movie.mov -r 10 movie.mov
#動画から静止画を取り出す
#旧バージョン
ffmpeg -i aaa.mov -ss 1 -vframes 1 -f image2 %04d.png
#新バージョン
ffmpeg -i aaa.mov -ss 1 -r 1 -f image2 %04d.png
#youtube-dlからのffmpegのmp3変換
youtube-dl https://www.youtube.com/watch?v=MTxBotYsPXgI
ffmpeg -i movie.mp4 movie.mp3
圧縮(フレームレート下げる)
ffmpeg -i hoge.mov -r 30 hoge.mov
圧縮(コーデック変える)
ffmpeg -i [hoge].mp4 -f mp4 -vcodec libx264 512k [hoge]圧縮版.mp4
リサイズ
ffmpeg -i [hoge].mp4 -s 1280x720 [hoge].mp4
#udpストリーム
ffmpeg -i hoge.mp4 -f mpegts "udp://127.0.0.1:2000"
#ffplay
一回入れちゃってる場合は消して入れる。
brew uninstall ffmpeg
or
brew uninstall --ignore-dependencies ffmpeg
ffplayと共に入れる。ビルドするので時間かかる。
brew install ffmpeg --with-sdl2
参考
https://steemit.com/mac/@manero666/how-to-install-ffmpeg-on-mac-osx-with-ffplay
#用語
##コーデック
符号化方式を使ってデータのエンコード(符号化)とデコード(復号)を双方向にできる装置やソフトウェアなど。(wikiより)動画では圧縮方式がいくつかある。
##コンテナフォーマット
音楽ファイルや動画ファイルやその他のファイルを圧縮したり保持できる標準化されたフォーマット。
動画であればmp4など。
https://ja.wikipedia.org/wiki/%E3%82%B3%E3%83%B3%E3%83%86%E3%83%8A%E3%83%95%E3%82%A9%E3%83%BC%E3%83%9E%E3%83%83%E3%83%88#.E7.94.BB.E5.83.8F.E3.82.B3.E3.83.B3.E3.83.86.E3.83.8A
#mp4フォーマット
H.264とは
https://sgforum.impress.co.jp/article/987
https://www.itu.int/ITU-T/recommendations/rec.aspx?rec=7255
http://koboldtodragon.hatenablog.com/entry/2016/10/28/002550
https://ygoto3.com/posts/streaming-technology-basics-for-frontend-engineers/
rtspを再生する
brew install ffmpeg --with-sdl2
or
brew reinstall ffmpeg --with-sdl2
ffplay -max_dey 500000 -rtsp_transport udp rtsp://wowzaec2demo.streamlock.net/vod/mp4:BigBuckBunny_115k.mov
トラブルシューティング
数年に1回アップデートが必要
$ brew reinstall libvmaf
$ xcode-select --install
$ brew reinstall ffmpeg
#参考
https://yuichon.com/2016/02/ffmpeg-install/
http://blog.denivip.ru/index.php/2013/10/how-to-live-stream-video-as-you-shoot-it-in-ios/?lang=en
スライド
https://slhck.info/ffmpeg-encoding-course/#/12
チップス
https://gist.github.com/revolunet/57a84ae4353615561b0a
フィルタ
http://nico-lab.net/how_to_use_frei0r_filer_with_ffmpeg/
ソースを見て勉強する