私は2つの.webmファイルを持ち、1つはビデオを含み、もう1つはオーディオです。ビデオとオーディオの両方を含む単一のmp4ファイルを同期して生成する必要があります。ここで私がやろうものです:ビデオ、オーディオの前に0.33sを開始しましたので0.33sによってffmpeg rawフォーマットを使用するとオーディオとビデオが同期しない
ffmpeg -ss 00:00:00.33 -i user_17624_1-1762.webm -i user_17624_2-1767.webm -r 15 output_good.mp4
-ssは - 1762と1767フレーム番号なので、オフに5つのフレーム、15 fpsのです。
これを行うと、ビデオとオーディオがファイル全体で同期する完璧な録音が得られます。
しかし、私はビデオフレームのいくつかの変更を行う必要があります、そして、私はそれを行うことはできませんので、私は元のビデオストリームのバイトを操作する私のCアプリを行う、私はする必要があります最初にRAWにトランスコードし、次に操作して、元の部分からmp4を元に戻します。オーディオとビデオが道オフお互いからであり、またオーバー変動しているように見える場所を記録し、
そうになるffmpeg -ss 00:00:00.33 -i user_17624_1-1762.webm -an -r 15 -f rawvideo -pix_fmt yuv420p -s 1920x1080 ./video.pipe &
ffmpeg -i user_17624_2-1767.webm -vn -ar 44100 -ac 2 -f s16le -acodec pcm_s16le ./audio.pipe &
ffmpeg -an -r 15 -f rawvideo -pix_fmt yuv420p -s 1920x1080 -i ./video.pipe -vn -ar 44100 -ac 2 -f s16le -acodec pcm_s16le -i ./audio.pipe -r 15 output_bad.mp4
:それは問題ではないことを確認するためにチェーンから私のCアプリを削除し、それはつまるところファイルの継続時間。
これらのビデオトランスコーディングで何が間違っていますか?
-async、
ミハイル:)を助けてください、私が試した最初の事はMP4Sにこれら、WEBMファイルを変換し、その後に変換するためにそれらを使用することです生の...それは役に立たなかった。 -g 1の場合でも –