Skip to content

HDRScope for Windows 1.0.1

Choose a tag to compare

@okaz-code okaz-code released this 07 Sep 02:36
· 4 commits to master since this release

アプリアイコンを追加しました。機能の変更はありません。v1.0.0 はアイコンが移植されておらず、Windows標準のアプリアイコンのままでした。

図案はmacOS版と同じです。暗い角丸背景(連続曲率に近い超楕円)に加算合成したR/G/Bのにじみ、その上に白い測定用レティクル。中央のセルはアプリ内の測定枠と同じ「黒の太線+白の細線」で描いています。64px未満では細い線が消えるため、リングだけの簡略版になります。macOS版との違いは余白だけで、全アプリ共通のグリッドという慣習がWindowsにはないため9%から4%に詰めています。

画像素材にも外部ツールにも依存せず、tools\make-icon.cmd が計算だけで16 / 20 / 24 / 32 / 40 / 48 / 64 / 128 / 256 px を描いて .ico を作ります。

ファイルのバージョン情報(VERSIONINFO)も入れたので、プロパティに製品名とバージョンが出るようになりました。


以下はv1.0.0から変わっていません。

使い方

HDRScope.exe を落として実行するだけです。インストール不要、DLLの同梱も、Visual C++ 再頒布可能パッケージも要りません。画面収録の許可設定も不要です。

コード署名をしていないため、Microsoft Defender SmartScreen に止められます。「詳細情報」→「実行」で起動できます。気になる場合はソースからビルドしてください(build.cmd --test)。

できること

  • ウィンドウをHDRのままキャプチャして、拡張リニアsRGB(Rec.709原色・D65、1.0 = SDR基準白)でRGBを測る
  • 1超えも負値もクリップしない。縮小表示時は面積加重平均、拡大時は最近傍
  • 測定用の32bit float TIFF(macOS版とバイト構成互換)と、表示用のHDR JPEG XR(Windowsフォトが HDR 表示する)で保存
  • TIFF / JPEG XR / HEIC / HEIF / PNG / JPEG を開いて同じ条件で測定
  • 表示上限を読み取るテストパターン2種(固定の×30と、ディスプレイのヘッドルームに合わせて刻みを決めるもの)
  • --diagnose で環境確認、--inspect でファイルの測定、どちらもGUIなしで使えます

Windowsでの値の扱い

WindowsのコンポジタはscRGBで合成します。scRGBは1.0 = 80 nit固定で、SDR白はそこにありません(「SDRコンテンツの明るさ」が決めるSDR白レベルの位置に来ます)。実測でも純白のSDRウィンドウはscRGB 3.000000で返りました(SDR白240 nitの環境)。

macOS版と同じ意味の数値にするため、キャプチャ値をSDR白レベル÷80で割ってから保持します。使った係数はキャプチャのたびにステータス行に出ます。詳細はREADMEの「scRGBとSDR基準白」を参照してください。

動作要件

Windows 11(Windows.Graphics.Capture が使えること)。HDR表示の確認にはHDR対応ディスプレイが必要ですが、測定・保存・読み込み自体はSDR環境でも動きます。

検証

自己テスト276アサーション、およびmacOS版と同一の Tests/verify_tiff.py による独立検証を通しています。macOS版が書いたfloat TIFFとPQ HEICを読み、階調が0.3〜1.1%以内で一致することも実機で確認済みです。詳細はREADMEの「検証記録」を参照してください。