3

YUV形式の非圧縮ビデオのセットがあります。

FFmpegトランスコーディングを使用して、これらのyuvファイルからさまざまな形式と解像度でいくつかの派生コピーを取得しました。(YUV ----> X派生コピー)

また、yuvを同じ解像度のAVIにトランスコードし、AVIをマスターとして扱う同じ派生(トランスコード)ビデオのセットを取得しました。(AVIs ----> X派生コピー)

ここで、AVIから派生した場合のトランスコードされたビデオの品質をYUVから派生した場合の品質と比較したいと思います。

FFmpegを使用してこれを行う方法はありますか?どのように?そうでない場合は、これを行うための優れたオープンソースソフトウェアを提案してください。

ありがとう

4

1 に答える 1

3

時間があれば、これは私が過去に行ったことです。1. ffmpeg を使用して、両方のビデオ ファイルをコンポーネント フレームに分割します (最初にディスク容量があることを確認してください)。

ffmpeg -i file1.avi -f image2 file1-%015d.bmp
ffmpeg -i file2.avi -f image2 file2-%015d.bmp
  1. imagemagick比較を使用して、各フレームの違いを判断します (NNNNNN を ffmpeg が提供したフレーム数に置き換えます)。
{1..NNNNNN} の FNAME の場合。行う
    比較 file1-$FNAME.bmp file2-$FNAME.bmp tmp.png
    比較 -metric PSNR file1-$FNAME.bmp file2-$FNAME.bmp tmp.png >> 結果
終わり
  1. ファイルの結果をスプレッドシートで開き、平均、std-dev などを計算します。これにより、ファイルがどの程度異なるかがわかります。
于 2012-11-16T08:34:01.353 に答える