2017-03-01 14 views
2

私はAndroidアプリケーションを開発していますが、ファイル変換にはffmpegを使用しています。
私はバイナリファイルをできるだけスリムにしたいのですが、私は多くの入力フォーマットと出力フォーマットを持っていないので、私の操作はかなりベーシックです。もちろん、APKを膨らませてはいけません。FFmpeg - Auxオーディオストリームを保存するために必要なmuxer

私のプログラムでは、ffmpegがファイルを受信し、オーディオストリーム(-acodec copy)をコピーすると、オーディオストリームは常にaac(mp4a)になります。私が必要とするのは、ストリームをファイルに保存することです。
私のコマンドは次のようになります:ffmpeg -i {Input} -vn -acodec copy output.aac

ファイルをmuxingするためにどのようなmuxerが必要ですか?私はflv,mp3,movを試しましたが、私はいつも
Unable to find a suitable output format for 'output.aac'を得るので、これらのオプションは間違っています。
ストリームコピーbtwのエンコーダは必要ありません。

サイドノート:このコマンドは完全にffmpegをインストールすると問題なく動作しますが、どのmuxerを使用するのか分かりません。通常のffmpegを実行して使用しているマルチプレクサを出力する方法がある場合は、それも動作します。

+2

これはかなり変です。 .aacはadtsヘッダーを持つ生のaacフレームです。 Ffmpegはそれを処理できるはずです。 -f rawまたは-r adtsを試してください。 – szatmary

+4

あなたはadts muxerが必要です: '-f adts' – Mulvya

+1

これはうまくいきました。答えを加えてください。私はそれを受け入れます。 –

答えて

0

AACの一般的なファイル形式は、BMFF/MOV/MP4/M4Aです。 m4aファイル拡張子を指定すると、FFmpegが自動的に処理します。

ffmpeg -i {input} -vn -acodec copy output.m4a 

ムルバが提案したように、生のAACだけが必要な場合は、ADTSをソートの軽量コンテナとして使用できます。

ffmpeg -i {input} -vn -acodec copy -f adts output.aac 
関連する問題