2012-02-01 55 views
1

.AMRオーディオと一緒に.PNG入力をループすることによってビデオを生成します。ビデオストリームよりも短いオーディオストリーム

ffmpeg -loop 1 -i slide001.png -i slide001.amr -vcodec rawvideo -acodec pcm_s16le -t 5 slide001.avi 

最終的には、Mencoderを使用して.AVIに参加します。私はFFmpegに参加しようとすると大成功を収めませんでした。

.AMRの実際の継続時間が、たとえば指定した5秒より短いため、.AVIを参加させる時間が来ると、オーディオストリームは(ビデオより先に)同期しなくなるようです。

私は、オーディオを無音でパディングするか、何時かの期間を指定して、自分の.AVIのオーディオとビデオのストリームが同じ長さになるようにする必要があると考えます。

アイデア?

ありがとうございました。

答えて

1

私はffmpegのに加えて中のSOxオーディオプロセッサを使用してこれを解決することになった:私が使用http://sox.sourceforge.net/Main/HomePage

コマンドは

sox slide001.wav slide001padded.wav pad 0 3 

上記でオーディオの最後に沈黙の3Sを追加します。 ffmpegの "-t 5" durationコマンドがビデオ作成で適用されるとき、ビデオとオーディオストリームが同じ長さになるように余分な無音をトリミングします。

これは、オーディオがビデオより短い場合にのみ機能します。オーディオの継続時間がビデオの継続時間以上になるように十分な無音を追加する必要があります。

関連する問題