2

入力ストリーム (mxf または mov) から生成された mp4 ビデオ ストリームを取得しています。これを行うときに-psnr、H264 パラメータとして使用しています。結果は約です。40または41。

次に、入力と出力を psnr (または ssim) フィルターで比較しています。結果は約。20か21。大きな違いです。この違いの理由を知っている人はいますか?

注: ssim の結果も同様です。1 つ目は ~0.97、2 つ目は ~0.83

PSNR

ffmpeg -i input.mov -codec:v libx264 -psnr -f mp4 output.mp4
PSNR (~40)

ffmpeg -i output.mp4 -i input.mov -filter_complex psnr -f mp4 /dev/null
PSNR (~20)

SSIM

ffmpeg -i input.mov -codec:v libx264 -ssim -f mp4 output.mp4
SSIM (~0.98...)

ffmpeg -i output.mp4 -i input.mov -filter_complex ssim -f mp4 /dev/null
PSNR (~0.83...)
4

2 に答える 2

0

これが ffmpeg psnr フィルター モジュールの問題です。ref ストリームと dis ストリームの間でタイムスタンプとフレームレートを調整しても、異なる psnr&ssim 値が得られます。以下は私の側でのテスト結果です.1つはlibx264ログ出力からのもので、もう1つはffmpeg psnrフィルタによって計算されたものです.

libx264 ログのもの:

[libx264 @ 0x4840c20] PSNR 平均 Y:32.345 U:39.530 V:39.383 平均:33.687 グローバル:33.326 kb/s:943.62

ffmpeg psnr フィルターのテスト結果:

[Parsed_psnr_0 @ 0x33b41e0] PSNR y:32.067442 u:39.500521 v:39.372329 平均:33.447532 最小:31.125177 最大:37.774371

サードパーティ ツールを使用して psnr&ssim 値を計算する場合があり、テスト ツールが同じであることを確認する必要があります。

于 2019-06-03T04:26:10.813 に答える