FFmpegはmp3ファイルをフルに、すなわちオーディオとビデオの両方のストリーム(jpeg cover)をコピーしてm4aに変換できますか?


2

私はFFmpegのZeranoeビルドを使います。オーディオストリームに関する限りは、mp3ファイルをm4aファイルにうまく変換できますが、曲アルバムカバーjpegを維持する方法を見つけることはできません。

Stream #0:1: Video: mjpeg, yuvj420p, 200x200 [SAR 120:120 DAR 1:1]

に含まれる output.m4a ファイル。次のコマンドラインを使用すると

ffmpeg.exe -i 09.mp3 -map 0 -codec:a libvo_aacenc -ab 320k -ar 44100 -ac 2 -codec:v copy output.m4a

私は no tag, codec not currently in the container エラー。それでも、ffprobeを .m4a iTunesによって作成されたファイル、そこにあります:

Stream #0:1: Video: mjpeg, yuvj420p, 350x350 [SAR 72:72 DAR 1:1]

それで、ffmpeg変換でカバー曲もコピーする方法はありますか?


1
によると、 FFmpegウィキ libvo_aacenc 最悪のAACエンコーダ(そして最悪のオーディオエンコーダでさえも)です。使ってはいけません libvo_aacenc どんな状況でも。代わりに、 libfdk_aac 可能であれば(libfdk_aacライブラリを含むFFmpegは 再配布不可 あなたは自分でlibfdk_aacでFFmpegを構築しなければなりません、) libfaac 高ビットレートで符号化する場合も同様です。
Meow

回答:


6

私の知る限りでは、FFmpegにアルバムアートワークをMP4コンテナ用に設定するように指示する簡単な方法はありません。 .m4a )しかしあなたは使用することができます AtomicParsley 後でアートワークを追加するには、コマンドラインを使用します。

これがAtomicParsleyのインストール方法です:

  • すべてのオペレーティングシステムはからバイナリを持っています SourceForgeのページ
  • Linuxディストリビューションはそれをパッケージに含めるかもしれません。 apt-get install atomicparsley
  • OS Xから 自作 brew install atomicparsley

しかし最初に、アートワークを抽出する必要があります。 JPEGファイルとして:

ffmpeg -i input.mp3 artwork.jpg

その後、AtomicParsleyを使ってアルバムアートワークを追加します。

AtomicParsley output.m4a --artwork artwork.jpg 

これは元のファイルを上書きするのではなく、代わりに一時ファイルを作成します。 output-temp-15274.m4a。元のファイルを上書きしたい場合は、 --overWrite コマンドのオプション、例:

AtomicParsley output.m4a --artwork artwork.jpg --overWrite

そしてvoilà:


1
素晴らしいアイデア、slhck!実際には、私はmp3 - > m4a変換のためにqaacコマンドラインに切り替えました。オプションとして、アートワークをその場でm4aにインポートすることができます。
user182551

それはすばらしい。 FFmpegにアートワークをコピーさせる方法はよくわかりません。このAFAIKに関するリソースはなく、ビデオのビットストリームをコピーする方法もありません。ところで、あなたが好きなら、あなたはここで答えとしてあなた自身の解決策を投稿することができます。
slhck

0

ありがとうございます。

便利なWindowsバッチファイル

@ECHO OFF REMアルバムカバーアートを抽出し、PNG形式の一時ファイルに300 x 300にサイズ変更する FFMPEG傾斜ハンドルがアートを直接適切にカバーするためのREM ... ffmpeg -i%1 -an -vcodec png -vfスケール= 300:-1 Arttemp .png -y REMタイムアウト30

REMオーディオをAAC LLCに.M4Aコンテナに変換する(Apple "Signed") REM FFMPEGはローパスフィルターを適用しませんが、適用されていません REMは他のパラメータをはるかに制御できますが、テストでは最も厳格でした レムVBRレート(350〜400 Kbps)... ffmpeg -i%1 -acodec aac -ab 512k -ac 2 -vn%2 -y REMタイムアウト30

REMオリジナルファイルから抽出したカバーアート画像を既に適用中 この新しい "AtomicParsley"を使ったREM ... AtomicParsley%2 - アートワーク Arttemp .png --overWrite REMタイムアウト30

REM一時的なカバーアートファイルを削除しています... デル Arttemp .jpg REMタイムアウト30


弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.