お題 mp4動画をチャプターごとに分割して音声ファイルにする。
追記:ワンライナーで分割するシェルスクリプトはこちら
ffmpegとmkvtookとmp4v2をインストール
$ brew install ffmpeg
$ brew install mkvtoolnix
$ brew install mp4v2
下ごしらえ、動画をチャプターに分割が重いので、事前に音声のみにする。(-vnはビデオなし、音声もこの時点でエンコード5.1ch > ステレオとかしても良いかも)
$ ffmpeg -i org.mp4 -vn -acodec copy tmp.mp4
mkvtoolnixについてくるmkvmergeコマンドで分割
$ mkvmerge -o output.mkv --split chapters:all tmp.mp4
今回音声コーデックがaacだったのですが、拡張子aacだとiTuneに取り込めず、m4aに
音声が5.1chとかだとm4aへ変換でエラーになるので、その場合は -ac 2 とかつけてステレオにしてあげるビットレートも-ab 480kとか指定してあげる
(今回はaacだったのでそのまま -acodec copyで流し込むだけ)
$ ffmpeg -i output-001.mkv -vn -acodec copy output-001.m4a
mp4v2のツールでタグ編集
$ mp4tags -A "アルバム名" -a "アーティスト名" -albumartist "アルバムアーティスト名" -t トラックNo 対象ファイル