Visual Enhancer:画像・動画・ライブ再生向けDLSS 5アップスケーリング

Visual Enhancerを紹介します。DLSS 5、RTX Video Super Resolution、HDR、フレーム生成、ライブ再生を組み合わせた、ポータブルなWindowsツールです。

Visual Enhancerが重要な理由

低解像度の画像をアップスケールすること自体は簡単に実演できますが、常に実用的な結果を得るのは困難です。メディアの種類によって必要な処理は異なります。写真にはノイズ除去やディテール再構成が有効な一方、圧縮動画には時間方向のクリーンアップ、フレーム補間、HDR変換、音声を維持した書き出しが必要です。Visual Enhancerは、これらの処理をNVIDIA RTX GPU向けのポータブルなWindowsアプリケーションにまとめています。

このプロジェクトは、単一の「強化」ボタンではなく、設定可能なパイプラインを中心に構築されています。個別のステージを並べ替え、ジョブに必要な処理だけを有効にし、結果をプレビューして、1つのファイルまたはバッチ全体を書き出せます。同じアプリケーションでは、ローカル動画、ダイレクトストリーム、YouTube、Twitch向けのライブ再生も利用できます。

インストール

Visual Enhancerはポータブルアプリケーションとして配布されています。

  1. GitHubリポジトリから最新リリースをダウンロードします。
  2. ZIPアーカイブ全体をフォルダーに展開します。
  3. Visual Enhancer.exeを実行します。

このアプリケーションには、Direct3D 12に対応した64ビット版Windows 11と、互換性のあるNVIDIA GeForce RTX GPUが必要です。NVIDIAを使用するステージには最新のNVIDIAドライバーが必要です。DLSS 5 Neural Renderingの利用可否は、対応ハードウェア、ドライバーのサポート、選択したAI処理GPUでの初期化成功状況によって決まります。

DLSS Frame Generationには、ハードウェアアクセラレータによるGPUスケジューリングを有効にする必要があります。RTX Video Super ResolutionとRTX Video HDRには、それぞれ対応するランタイムが必要です。動画のEWA Lanczosスケーリングには、利用可能なVulkanデバイスとlibplaceboをサポートするFFmpegビルドも必要です。

実験向けに設計されたパイプライン

ImageとVideoには、それぞれ独立したステージリストがあります。ステージは上から下へ実行され、各カードは有効化・無効化でき、別の位置へドラッグできます。初期状態の画像処理順序は次のとおりです。

Denoising → DLSS Neural Rendering → Scaling → DLSS Super Resolution
→ RTX Super Resolution → Coloring → Sharpening

動画パイプラインには、Coloringの前にDLSS Frame Generationも含まれます。これらは利用可能なステージであり、必須のエフェクトではありません。レンダリングでは、有効な各ステージの後に事前チェックを実行し、寸法、フレームレート、ハードウェア性能、HDR互換性を検証します。

この順序は重要です。Video Scaling、DLSS Super Resolution、RTX Super Resolutionは任意の位置でHDR動画を処理できないため、通常はHDR変換の前に実行する必要があります。動画のシャープ化を0以外に設定する場合も、HDR変換より前に配置する必要があります。Frame Generationの目標値は、そのステージに入力されるフレームレートより高くなければなりません。

DLSS 5 Neural Rendering

Neuroframe Engineにより、外部のグラフィックスインジェクターやゲーム用アドオンを使わずに、Visual Enhancer内でDLSS 5 Neural Renderingを直接利用できます。静止画、動画、ライブ再生を処理できます。

設定項目には次のものがあります。

  • NR Style: Default、Natural、Cinematic
  • NR Intensity: 0.00–2.00
  • Local Tone Strength: 0.00–2.00
  • Local Structure Strength: 0.00–2.00
  • Skin Structure Strength: -1.00–2.00
  • Automatic Mask: 顔と肌のマスキング(任意)
  • NR Passes: 1~4回
  • NR Color Strength、Tone Preservation、Face/Skin Protection、Grain Preservation
  • Mask Feather: 出力ピクセル単位で0–128
  • Shimmer Suppression: 動画とライブ向けに0.00–1.00

Neural Renderingステージは、前段のステージから渡された寸法で動作します。入力は少なくとも64×64である必要があり、対応するNeural Rendering処理の上限は7680×4320です。レンダリング前に寸法を変更したい場合は、独立したScalingステージを使用してください。

Detail-Onlyプリセットは、強い色変換を避けて再構成された構造だけを得たい場合に便利です。このプリセットではNR Color Strengthが0.00、Tone Preservationが1.00に設定されますが、その他の設定は編集できます。カスタム画像マスクを使うと、Neural Renderingを適用する範囲を制限できます。同じマスクは、現在のアプリケーションセッション中、Liveでも利用できます。

パスを追加すると累積効果を強められますが、処理時間は増加します。動画では、Shimmer Suppressionによりフレーム間の細かなディテールを安定させ、気になる時間方向のちらつきを抑えられます。

アップスケーリングの選択肢は意図的に分離

Visual Enhancerには、混同すべきでない3種類のアプローチがあります。

  1. Conventional Scalingは、画像ではLanczos4、Area、Bicubic、Bilinear、Nearestなどのフィルターを使用し、動画ではSpline36、Lanczos、Bicubic、Area、Bilinear、EWA Lanczosなどを使用して寸法を変更します。
  2. DLSS Super Resolutionは、1×のDLAA、1.5×のQuality、約1.72×のBalanced、2×のPerformance、3×のUltra Performanceを提供します。Defaultに加えて、プリセットJ、K、L、Mも利用できます。
  3. RTX Video Super Resolutionは、品質レベル1~4と、1×~4×の出力スケーリングに加え、カスタム寸法を提供します。

RTX Video Super Resolutionは、1×サイズでネイティブ解像度の画像を強化できるほか、再構成を適用しながら拡大することもできます。出力寸法は各方向16384ピクセルに制限されます。また、VSRを有効にした場合、カスタム寸法を入力画像より小さくすることはできません。

HDR変換と動画出力

RTX Super Resolutionの動画ステージには、RTX Video HDRも含まれています。VSRとHDRを同時に実行することも、VSRを無効にしてHDRのみを処理することもできます。HDR設定では、コントラストと彩度を0–200、ミドルグレーを10–100、ピーク輝度を400–2000ニットに設定でき、Packed 10-bitまたはPacked 10-bit FP16処理にも対応します。

RTX Video HDRは、すでにHDR化された動画ではなくSDR入力を受け付けます。HDRを書き出すには、10-bit HDR Modeを有効にし、互換性のあるコーデックを選択します。HDRに対応する出力形式には、H.265、AV1、ProRes Proxy、ProRes HQ、FFV1 Lossless RGB 10-bitがあります。

利用可能な動画出力は次のとおりです。

Codec Container Notes
H.264 MP4 CPUまたはNVIDIA NVENC、8ビットSDR
H.265 MKV CPUまたはNVENC、10ビットHDR対応
AV1 MKV CPUまたはNVENC、10ビットHDR対応
ProRes Proxy MOV CPUベースの10ビット4:2:2
ProRes HQ MOV CPUベースの10ビット4:2:2
FFV1 Lossless RGB 10-bit MKV CPUベースの可逆10ビットRGB

デフォルトのコーデックは、NVIDIA NVENCを使用するH.264です。エンコード品質はAuto、Good、Best、Maxから選択できます。ProRes HQとFFV1では、コーデックで固定された品質が使用されます。

23.976~480 FPSのフレーム生成

DLSS Frame Generationは、並べ替え可能なVideoステージです。60、120、144、240、360 FPSを含め、23.976~480 FPSの範囲で目標値を設定し、中間フレームを生成できます。選択した目標値は、ステージに入るフレームレートを上回る必要があります。そうでない場合、事前チェックでパイプラインが拒否されます。

DLSSGエンジンには、Auto、Native DLSSG、Cascadeモードがあります。完全な書き出しを行う前に、選択した動画位置から3秒、5秒、10秒、20秒、30秒のプレビューをレンダリングできます。これは、モーションアーティファクトを確認し、目標フレームレートが適切かどうかを確かめるのに特に役立ちます。

ライブ再生

Liveモードでは、ローカル動画や対応するオンラインソースを視聴しながらNeural Renderingを適用できます。ダイレクトネットワークストリーム、YouTube、Twitchに対応し、再生、音量、ミュート、表示拡大、フルスクリーンモードを操作できます。

Liveの主な設定は次のとおりです。

  • Autoから2160pまでのソース品質
  • 480pから2160pまでの最大入力解像度
  • 1秒、2秒、4秒のセグメント
  • Auto、Source、60、30、24 FPSモード
  • 2~30秒の再生バッファ
  • 25%~200%の独立したLive Scale

Liveには独自のNeural Rendering設定があるため、再生の調整によってImageやVideoのメイン設定が上書きされることはありません。再生中でも、ほとんどのNeural Rendering設定を変更できます。ソース、品質、解像度、セグメント長、目標FPS、バッファ、Live Scaleの変更は、次回Liveを開始したときに反映されます。

プレビュー、バッチ処理、安全な書き出し

統合メディアビューアーは、Split、2-Up、Output比較、100%表示、画像フィット、動画タイムラインのスクラブに対応しています。Realtime Previewでは、対応する変更を自動的に更新できます。また、スマートプレビューキャッシュにより、後段のステージを調整した際に変更されていない中間結果を再利用できます。

本番用途では、バッチキューにファイル、フォルダー、ドラッグ&ドロップしたメディア、クリップボードのビットマップ画像、コピーしたローカルファイル、対応するブラウザー画像URLを追加できます。失敗した項目は再試行でき、完了した項目を消去したり、完成したファイルをExplorerで表示したりできます。各キュー項目には、状態、進捗、経過時間、寸法、処理内容、出力パスが表示されます。

画像はPNG、JPEG、WebP、AVIF、TIFFとして書き出せます。PNGとTIFFは16ビット出力に対応します。動画の書き出しでは、コンテナとコーデックが許す限り、元の音声、メタデータ、チャプターが保持されます。ただし、統合エクスポーターでは字幕ストリームはマッピングされません。画像の書き出しでは元のEXIFメタデータは保持されませんが、デコード時にEXIFの向きを適用し、対応するカラープロファイルを処理し、形式が対応していれば透明度を保持します。

デフォルトでは、完了したファイルはoutputs/に保存され、トラブルシューティング用ログはlogs/に保存されます。既存のファイルが無断で上書きされることはなく、必要に応じて不完全な出力は削除されます。

実用的な開始設定

きれいな静止画の強化を行う場合は、Denoising、DLSS Neural Rendering、適度なSharpeningから始めてください。より高い解像度が必要な場合にのみ、ScalingまたはRTX Super Resolutionを追加します。

古いSDR動画では、次の順序が適切です。

Denoising → DLSS Neural Rendering → RTX Super Resolution/HDR
→ DLSS Frame Generation → Coloring → Sharpening

ソースと事前チェックの要件に応じて調整してください。拡大ではなくHDR変換が目的の場合は、RTX Video HDRを有効にしたままVSRを無効にします。高フレームレート再生では、書き出し前にFrame Generationをプレビューし、選択したコーデックとHDRモードが目的の表示環境に合っていることを確認してください。

プロジェクトの状態とライセンス

リポジトリは主にPython(81.7%)とQML(18.2%)で実装されており、Luaは0.1%を占めています。提供されたリポジトリのスナップショット時点では、1.1kスター、90フォーク、16ウォッチャー、68コミット、14リリース、掲載コントリビューター1名でした。最新リリースはVisual Enhancer v11.0です。

プロジェクト所有の素材はMerserk Source License 1.0の下で配布されています。個人、職業、商用利用が許可されており、処理済み出力の商用利用も含まれます。ライセンスに別段の定めがない限り、再配布、再パッケージ化、リブランド、再販売、サブライセンス、変更ビルドの公開、その他同様の行為には事前の書面による許可が必要です。サードパーティコンポーネントは、それぞれのライセンスに従います。アプリケーションを再配布する前に、LICENSEとTHIRD-PARTY-NOTICESを確認してください。

Visual Enhancerは独立したコミュニティプロジェクトであり、NVIDIAとは提携、後援、承認の関係にありません。NVIDIA、GeForce RTX、DLSS、RTX Videoは、NVIDIA Corporationの商標または登録商標です。

ソース

Merserk/dlss5-visual-enhancer: DLSS 5 Neural Rendering for Images & Video with Frame Generation, RTX Video Super Resolution, HDR, and Live Playback