回答:
ffmpegの新しいバージョンでは、「padtop」および「padbottom」オプションが非推奨になりました。新しいバージョンでこれを行うには、上記と同じ基本ロジックを使用します。私の場合、元のビデオは720x404でしたが、720x480をエンコードしたいのです。上下にパディングします。上記のとおり:
(480-404) / 2 = 38
つまり、上部と下部の両方に38ピクセルをパディングします。「パッド」コマンドは、エンコードするビデオのサイズと、元の位置を左右にどれだけ移動するかを求めます。そう:
-vf pad=720:480:0:38
出力解像度は720x480ではなく720:480として書き込む必要があることに注意してください。
これはffmpegで行うことができます。始める前に、数学の理解に関する次の素晴らしいリソースをお読みください:http : //www.doom9.org/index.html?/aspectratios.htm
最初に、上部と下部のパディング値を計算します。
long=width of original,
skinny=height of orginal
totalPadding = .75*long - skinny
top padding = bottom padding = totalPadding / 2
注:上下のパディングが偶数でない場合は、合計が合計パディングになるように強制します(例:47と53ではなく、48と52で100を取得)
次に、レターボックスバーを追加して、出力ファイルが4x3として認識されるようにします。パディングが上と下の両方で58ピクセルであると仮定します
ffmpeg -i Infile.avi -padtop 58 -padbottom 58 -padcolor 000000 -aspect 4:3 Outfile_letterbox.mpg
「理想」とは、再生デバイスがビデオをストレッチしていることを推測していますか?
理想的な状況は、ビデオに黒いバーを追加することではなく、ビデオを黒いバーで表示することです。ビデオを再エンコードしてバーを追加すると、「1回エンコード」の規則が破られるだけでなく、ビットごとの全体的な品質も低下します余分な、役に立たない情報を追加することによって。
あなたが解決しようとしている問題をさらに説明できますか?
Windowsムービーメーカーには次の機能があります:http : //windowshelp.microsoft.com/Windows/en-US/Help/d7783074-18d6-4f9a-8dfb-e0b1ab6c45e11033.mspx