web-dev-qa-db-ja.com

WMAをAppleエコシステム互換形式(mp3、m4a、aac)に変換する

私のライブラリ全体がmp3、aac、またはm4aで構成されているため、別の形式に変換したい数百のwmaファイルがあり、すべてAppleポータブルデバイス、および私はこれらのデバイスとのインターフェースとしてiTunesを使用しています。したがって、ffmpeg、realplayer、mediamonkey、iTunesはすべてwmaを他の形式に変換できることを知っていますが、私の質問は(i)最適な「ワークフロー」を最小化品質の低下と(ii)どのターゲットフォーマット/コーデックを使用するか、しかし私は最良の方法を見つけようとします。私は考えることができます:

  1. ffmpegを使用した直接変換(ただし、どの設定を使用するか?192 kbps以上を使用すると役立つか、これは無意味であり、実際には元のファイルとまったく同じビットレート、つまり128 kbpsを使用する方がよいでしょうか?Quidサンプリングレート、44.1以上?

  2. 中間形式(wavまたはflac)で変換するため、最初のステップですべての可能なオーディオ情報が抽出され、2番目のステップで再度エンコードされます。

  3. 私はmp3とm4A(またはaac)の間で中立ですが、これは同じコーデックのファイル拡張子が異なるだけだと理解しましたか?)、wmaをどちらかに変換することで違いがありますか? (私は特定のmp3対m4aの質問を知っています ここ 、それで私の質問は本当にwmaをソースファイルとして持つことに関連しています。

Wmaファイルには次のプロパティがあります:Windows Media Audio V8-128 kbps、44.1 kHz、2チャネル、16ビット

1
Peter K.

適切なエンコーディングオプションを備えた適切なエンコーダ実装を使用してください。次に、実験して、何が許容できるかを確認します。

Libfdk_aacを使用するAAC

これは、ffmpegでサポートされている最高のAACエンコーダーです。ただし、GPLと互換性がないと見なされるため、 コンパイル する必要があります(ただし、[GPLに違反している]ビルドを見つけることができる場合があります)。 VBRの例:

ffmpeg -i input.wma -c:a libfdk_aac -vbr 5 output.m4a

ネイティブFFmpegAACエンコーダーを使用したAAC

ネイティブのFFmpegAACエンコーダーはまともですが、libfdk_aacと同じくらい良い音を出すのに十分なビットを与える必要があります。ビットレートを試してみてください(-b:a)あなたに受け入れられる何かを得るための価値。 CBRの例(VBRはまだそれほど良くありません):

ffmpeg -i input.wma -c:a aac -b:a 192k output.m4a

ffmpegがこのエンコーダーが「実験的」であると不平を言っている場合は、古くなっているため、更新する必要があります。

Libmp3lameを使用したMP3

MP3の場合、最良の選択はlibmp3lameです。 VBRの例:

ffmpeg -i input.wma -c:a libmp3lame -q:a 2 output.mp3

こちらもご覧ください


Q&A

ffmpegを使用した直接変換?

はい。 ffmpegはほぼすべてをデコードでき、メタデータを保持でき、多くのエンコーダーとフォーマットをサポートし、実行内容を制御でき、ループに入れてディレクトリ内のすべてのファイルをエンコードできます(その部分簡単なスクリプトが必要です)。

しかし、どの設定を使用するのですか? 192 kbps以上を使用すると役に立ちますか、それともこれは無意味ですか?

エンコーダーと、VBRまたはCBRのどちらが必要かによって異なります。詳細、詳細、および例については、「関連項目」リンクを参照してください。

元のファイルとまったく同じビットレート、つまり128 kbpsを実際に使用する方がよいでしょうか?

ユーザーがこれを行おうとしているのをよく見かけますが、同じビットレートを再利用することは最適ではありません。オリジナルをエンコードした人が彼らが何をしているのか知っていることをどうやって知っていますか?エンコーダー自体がくだらないかどうかをどうやって知るのですか?エンコーダによって効率が異なります。各フォーマット自体の違いを考慮することが重要です。また、不可逆入力の再エンコードに関しては、ファイルが元のファイルとは異なることに注意する必要があります。データが壊れており、元のファイルには存在しないアーティファクトが含まれているため、同じエンコーダーと同じビットレートを使用している場合でもこれらのアーティファクトはファイルの一部であるため、再エンコードする必要があり、出力が低下します。

Quidのサンプリングレートも44.1以上ですか?

サンプリングレートは気にしないでください。 ffmpegは、入力と同じレートを使用します。

中間フォーマット(wavまたはflac)で変換するので、最初のステップですべての可能なオーディオ情報が抽出され、次に2番目のステップで再度エンコードされますか?

これは不要な手順です。 ffmpeg will とにかくオーディオを生のPCMオーディオに完全にデコードします なので、事前に行う必要はありません。

私はmp3とm4A(またはaac)の間で中立ですが、これは同じコーデックのファイル拡張子が異なるだけだと理解しましたか?)、wmaをどちらかに変換することで違いがありますか? (私はここで特定のmp3とm4aの質問を知っているので、私の質問は本当にwmaをソースファイルとして持つことに関連しています。)

ソースがWMAであるかどうかは関係ありません。お好みのデバイスまたはソフトウェアでより適切にサポートされている出力形式を使用してください。 Apple製品はMP3とAACの両方をサポートしていると思います。また、M4AコンテナのAACオーディオが「ライブラリ」で使用されていると思いますので、その組み合わせを使用する可能性があります。

4
llogan