私はffmpegを使って自分のビデオファイルをflvに変換しています。
私の問題は、私は変換されたflvファイルを持っていたいということ videoCodecId そして audioCodecId = 2これは、変換したファイルにキーフレームを挿入し、それをプログレッシブストリーミングに使用しているからです。
しかし、私はファイルを使用してプログレッシブストリーミングを試してみると videoCodecId = 7 そして auddioCodecId = 10、ファイルを正しく動作させることができません。 (多分私もここで何か悪いことをしている)
私は2つの方法で同じファイルを変換しようとしました:
はじめに
videoCodecId = 7そしてaudioCodecId = 10そのために次のコマンドラインを使用しました。/ usr / local / bin / ffmpeg -i%s -map_meta_data 0:0 -acodec libfaac -ab 96k -ar 44100 -vcodec libx264 -vpre hq -crf 20 - スレッド0 -f flv%s
他の方法は
videoCodecId = 2そしてaudioCodecId = 2(これは望ましいことですが)ビデオ品質に大きく影響します。/ usr / local / bin / ffmpeg -i%s -map_meta_data 0:0 -ab 96k -ar 44100 -crf 20 -f flv%s
そのため、2つ目の方法を使用して変換した後にビデオの品質を向上させることができれば、両方の方法で問題を解決できます。 videoCodecId = 7。
しかし私はYouTubeでもビデオを使用していることをいくつかの記事で読ん videoCodecId = 2 そして audioCodecId = 2。それで、おそらく、彼らもそれをする理由があります。
しかし、私がYouTubeからファイルをダウンロードして、VLCplayerを使ってそのコーデック情報を見るならば、それはビデオコーデックを言います - それぞれ7と10であるmp4aとしてのh264とオーディオ(私が思う)
私は今これに非常に混乱しています。そして数日以来、これを理解しようとしています。
任意の助け、または提案は大歓迎です。