FFmpeg の設定は次のようになっています:
ffmpeg version N-54790-g1816f55-syslint Copyright (c) 2000-2013 the FFmpeg developers
built on Jul 17 2013 21:34:32 with gcc 4.4.7 (GCC) 20120313 (Red Hat 4.4.7-3)
configuration: --prefix=/usr/local/cpffmpeg --enable-shared --enable-nonfree --enable-gpl --enable-pthreads --enable-libopencore-amrnb --enable-decoder=liba52 --enable-libopencore-amrwb --enable-libfaac --enable-libmp3lame --enable-libtheora --enable-libvorbis --enable-libx264 --enable-libxvid --extra-cflags=-I/usr/local/cpffmpeg/include/ --extra-ldflags=-L/usr/local/cpffmpeg/lib --enable-version3 --extra-version=syslint
libavutil 52. 40.100 / 52. 40.100
libavcodec 55. 18.102 / 55. 18.102
libavformat 55. 12.102 / 55. 12.102
libavdevice 55. 3.100 / 55. 3.100
libavfilter 3. 81.101 / 3. 81.101
libswscale 2. 4.100 / 2. 4.100
libswresample 0. 17.102 / 0. 17.102
libpostproc 52. 3.100 / 52. 3.100
FFmpegを使ってm4aまたはmp3ファイルを変換しようとしています
AAC, Low Complexity Profile (LC)
自分に合ったコマンドラインを見つけるのに本当に苦労しています。私の FFmpeg 設定でも可能ですか?
ありがとう
答え1
AAC-LC は、でサポートされているすべての AAC エンコーダのデフォルトですffmpeg
。
例:
ffmpeg -i input.m4a -codec:a aac output.aac
見るFFmpeg Wiki: AAC エンコーディング ガイド詳細と例についてはこちらをご覧ください。
答え2
FFmpegsのネイティブAACエンコーダ(非フリーのFraunhoferのlibfdk_aacに次ぐ2番目に優れたエンコーダ)を使用して、ADTSコンテナ(.aacファイル)内の任意のフォーマットをAAC-LCに再エンコードするには、https://trac.ffmpeg.org/wiki/Encode/AAC-- ただし、HE-AAC はサポートされていません) の場合は、-strict experimental
(または-strict -2
) も指定する必要があります。
ffmpeg -i input.mp3 -strict experimental -c:a aac -b:a 128k output.aac
m4a/mp4 のソースから .aac に変換する場合、再エンコードする必要さえありません。
ffmpeg -i input.m4a -c:a copy output.aac
注記: FFmpeg は出力ファイル名から出力形式を推測しようとします。ADTS (.aac ファイル) の形式を強制する必要がある場合は、次を使用します-f adts
(例: ファイルではなくパイプ ストリームで作業する場合)。
cat input.wav | ffmpeg -i pipe:0 -c:a aac -c:b 128k -f adts pipe:1 > output.aac