ffmpeg -i ファイル名
又は
ffmpeg -y -i ファイル名
で、出てきた情報の中から、"Stream #"を探す。
Stream #に続いてStreamID、それに続いてvideoかaudioか、video、audioの種類、大きさなどが書かれている。
エンコードするときは
エンコードしたい動画と音声ファイルのstreamIDを"-map"で指定する。
ffmpegのフレームレートは小数点第2位までしか確認していないらしい。
第3位以下がある場合、四捨五入されているみたいだ。
その時は音とずれがでてしまうらしい。
例
ffmpeg -y -i OriginalFileName.mpg -f mp4 -vcodec libx264 -fpre libx264.ffpreset -r 30000/1001 -aspect 16:9 -s 1440x1080 -bufsize 20000k -maxrate 25000k -vsync 1 -acodec libfaac -ac 2 -ar 48000 -ab 128k -map 0.0 -map 0.1 newfilename.mp4
1440x1080が大きいときは
1280x720
480x360
-fpreはプリセットされた設定が書いてあるファイルを読み込むオプション。
2016/05/07追加
Windows版
ダウンロードは
static--------(dllなど、それ自体に全部込み、と思っていればいいみたいだ。)
をダウンロード。
ffmpeg-20160506-git-03fceb7-win64-static.7z
コマンドプロンプトで、ffmpeg.exeの場所まで行き実行する。
コマンドプロンプト内で移動するのは面倒なので、エクスプローラーで開きたい場所まで移動して、そこで、
シフトキーを押しながら右クリック > コマンドウインドウをここで開く
で、任意の場所でコマンドプロンプトを開くことができる。
強制終了はqかCrl+c
例
ffmpeg -y -i OriginalFilename.mpg4 -f mp4 -vcodec hevc -aspect 16:9 -s 1280x720 -map 0:4 -map 0:3 newfilename.mp4
オプション
h.265の指定。----h265はh264(libx264)の後継、2020年くらいからh.266に移っていく予定らしい。
-vcodec hevc
音声の無劣化
-acodec copy
を指定する。
これだけだとコンテナーを変える場合エラーになり、
-bsf aac_adtstoasc
音声の無劣化
-acodec copy
を指定する。
これだけだとコンテナーを変える場合エラーになり、
-bsf aac_adtstoasc
をつけろと言われるので、これをつける。(仕様を合わせるためのオプションらしい。)
ただ、このオプションをつけるとhevcオプションが使えない。
だから、音声が重要な時以外はhevcをつけて、圧縮比優先にした方がいいみたいだ。
0 件のコメント:
コメントを投稿