Handbrake: エンコード中にビデオをダウンサンプリングするときに鮮明さを維持するにはどうすればよいでしょうか?

Handbrake: エンコード中にビデオをダウンサンプリングするときに鮮明さを維持するにはどうすればよいでしょうか?

1280x720 解像度のビデオが多数ありますが、それほど高解像度である必要はないので、スペースを節約するために再エンコードして 852x480 にサイズを変更することを考えました。しかし、Handbrake エンコードでは、単にウィンドウのサイズを変更したときに VLC ビデオ プレーヤーで表示されるビデオよりも少しぼやけたビデオになることに気付きました。

そこで、VLC とまったく同じようにビデオのサイズを変更する方法を探しています。これは、Handbrake では見つけることさえできなかった、通常のサイズ変更アルゴリズムやサイズ変更 + シャープ化アルゴリズムよりも実際に品質が向上するためです。しかし、Handbrake を使用してビデオをシャープ化する方法はありますか?

答え1

Handbrake のバージョンやオプション、ソースやトランスコード結果のコーデックやビットレートなどの詳細は提供されていませんが、試しにやってみます。あなたが「鮮明さ」が失われたと言っているのは、3 世代にわたる非可逆ビデオ エンコーディングの結果です。つまり、元のソースの品質を大幅に低下させたために、ぼやけてしまったのです。

まず、期待を管理しましょう。1280x720 から 852x480 に変更すると、ピクセル数が 50% 以上減少しますが、ファイルが 50% 小さくなり、品質基準を満たすようになる可能性は低くなります。同じ元のソースから 2 つのファイルをエンコードする場合はそうかもしれませんが、解像度/ビットレートが高いファイルの方が、ビットレートを下げた/スケーリング/再圧縮したバージョンよりも (任意のサイズのウィンドウに投影した場合) より優れた画像が得られることに驚かないでください。

私の推測では、ビデオは高品質の 720p/1080p ソース (高ビットレート h264 または VC-1、おそらく BluRay) からファイル (720p 中程度のビットレート h264) を経て、この試行されたトランスコード (480p 低ビットレート h264) に変換されたと考えられます。このファイルは、すでに非可逆圧縮アルゴリズムを 2 回通過しており、3 回目の圧縮とビットレートの削減およびスケーリングの組み合わせによって、ファイルの鮮明度が低下したことに驚いているのではないでしょうか。これは常識です。

元のソースにアクセスできる場合は、そこからリッピングすると、品質基準を満たす最小のファイルが確実に得られます。ロスのある世代を 1 つ削除するだけで、はるかに鮮明な結果が得られます。はるかに小さいファイルが本当に重要な場合は (たとえば、16 GB の iPad を購入し、各ビデオの品質ではなくビデオの数を最大化したい場合など)、平均ビデオ ビットレートを任意に設定し、2 パス エンコーディングで時間を無駄にして、ファイルを目標サイズに近づけようとしてください。

しかし、実際に品質を気にするのであれば、x264 設定を「一定品質」に設定し、さまざまな CRF 値 (Constant Rate Factor - 任意の単位)​​ を使用して 30 秒のクリップを複数回レンダリングし、どの CRF 値がニーズを満たすかを経験的に見つける必要があります。HandBrake では CRF に 0 から 51 までの大きなスライダーが提供されますが、妥当な値は 19 から 24 の範囲です (デフォルトは 20)。ソースを選択した後、トグルをチャプターから秒に変更し、比較したい 20 から 30 秒の範囲を選択できます。宛先ファイルの名前を変更し (例: "test-crf20.m4v" など)、[キューに追加] をクリックし、CRF を少し調整して名前を変更し、これを繰り返します。6 つをバッチ レンダリングし、それぞれをサイズ変更された VLC ウィンドウと比較します。劣化していないように見える最小のファイルを選択し、その CRF を使用してビデオ全体をエンコードして、ビデオがまだ「十分に鮮明」な状態で、必要なファイル サイズの節約が得られるかを確認します。

関連情報