萌えハッカーニュースリーダー

2025/10/16 19:57 When you opened a screen shot of a video in Paint, the video was playing in it

出典: https://devblogs.microsoft.com/oldnewthing/20251014-00/?p=111681
hakase
博士

ロボ子、今日はWindows 98時代の面白い話をするのじゃ。

roboko
ロボ子

Windows 98ですか、博士。それはまた懐かしいですね。どんなお話ですか?

hakase
博士

当時のメディアプレーヤーでビデオのスクリーンショットを撮って、ペイントに貼り付けると、ペイントの中でビデオが再生されるという、不思議な現象があったらしいのじゃ!

roboko
ロボ子

えっ、ペイントの中でビデオが再生されるんですか!?それは一体どういう仕組みなんですか?

hakase
博士

当時のメディアプレーヤーは、ビデオピクセルを直接画面に描画するのではなく、まずビデオを表示したい場所に緑色を描画していたのじゃ。そして、ビデオピクセルをグラフィックカードと共有されるグラフィックスサーフェスにレンダリングし、グラフィックカードに、緑色のピクセルを共有グラフィックスサーフェスからのピクセルで置き換えるように指示していたのじゃ。

roboko
ロボ子

なるほど。緑色のピクセルを置き換えることで、ビデオを表示していたんですね。でも、なぜそんな回りくどい方法を?

hakase
博士

共有グラフィックスサーフェスがユーザーのメインディスプレイと同じピクセル形式である必要がないという利点があったからのじゃ。それに、完全なペイントサイクルを経由せずにコンテンツを更新できたのじゃ。

roboko
ロボ子

ピクセル形式の違いを吸収しつつ、効率的に表示するためだったんですね。

hakase
博士

そう言うことじゃ。当時のメディアプレーヤープログラムは、DirectDrawを介してグラフィックカードとネゴシエートし、これらの特別なグラフィックサーフェス(オーバーレイと呼ばれる)を取得し、代替ピクセルとして使用するように構成していたのじゃ。

roboko
ロボ子

DirectDrawですか。懐かしい響きです。オーバーレイという技術を使っていたんですね。

hakase
博士

スクリーンショットを撮ると、Windowsがビデオカードにデスクトップのコンテンツとして与えたピクセルが取得されるのじゃ。オーバーレイがアクティブな場合、これらはビデオカードから出力されてモニターに送られるピクセルとは異なるのじゃ。

roboko
ロボ子

つまり、スクリーンショットには、オーバーレイによるピクセル置換前の緑色のピクセルが記録されていたんですね。

hakase
博士

その通り!Paintなどの画像ビューアに画像をロードすると、Windowsはそれらの緑色のピクセルをビデオカードに送信するのじゃ。メディアプレーヤーがまだ実行されている場合、そのオーバーレイはまだアクティブであり、Paintをメディアプレーヤーウィンドウと同じ場所に配置すると、Paintの緑色のピクセルがアクティブなビデオのピクセルに変わるのじゃ。

roboko
ロボ子

なるほど!Paintに表示された緑色の部分が、メディアプレーヤーのオーバーレイによってビデオに置き換えられて、あたかもPaintの中でビデオが再生されているように見えたんですね!

hakase
博士

そういうことじゃ!ただ、オーバーレイには、ウィンドウがメディアプレーヤーの上に移動し、緑色のピクセルがある場合、ビデオがその別のウィンドウで再生されるという問題もあったのじゃ。

roboko
ロボ子

別のウィンドウでビデオが再生されるとは、面白い現象ですね。

hakase
博士

今では、ビデオレンダリングはオーバーレイを使用せず、コンテンツはウィンドウに関連付けられたグラフィックサーフェスにレンダリングされるのじゃ。デスクトップコンポジターがすべてのウィンドウのグラフィックコンテンツを取得し、それらを組み合わせてモニターに送信される完全なデスクトップイメージを形成するのじゃ。

roboko
ロボ子

デスクトップコンポジターのおかげで、ウィンドウを移動してもオーバーレイが遅れるようなことはなくなったんですね。

hakase
博士

そうじゃな。技術の進歩は素晴らしいのじゃ。昔の技術を知ることで、今の技術のありがたみがわかるというものじゃ。

roboko
ロボ子

本当にそうですね。博士、今日も勉強になりました!

hakase
博士

ところでロボ子、もし私が緑色のペンキをかぶったら、ロボ子のディスプレイに私が映るかのじゃ?

roboko
ロボ子

博士、それはオーバーレイとは全く関係ありません!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search