ページ 11

動画の裏写り?

Posted: 2009年8月06日(木) 05:45
by lbfuvab
さっき謎の現象が起こったのですが、原因が判る方がいらっしゃったら教えてください。
説明も難しいのですが、再生している動画が写り込む?と言う風な物です。

再現方法は

VLC media playerで動画を再生し、一時停止してVLCのウィンドウに重なる様にペイントを開く。

そして(R,G,B)=(0,0,1)でペイントのキャンバスを塗りつぶすとVLCで再生していた動画が写り込む。

・・・といった具合です。

Re:動画の裏写り?

Posted: 2009年8月06日(木) 05:53
by sizuma
原因の分からない人ですが。

OSのプロセス管理上でのバグなんじゃないでしょうか?
分かる人いるんですかね??

Re:動画の裏写り?

Posted: 2009年8月06日(木) 13:18
by asd
VLC media playerを使用しているわけではないので未検証ですが、同様の動作を経験したことがありますので投稿してみます。

おそらくオーバーレイが有効になっているがためにその現象が起きていると思います。
VLC media playerの設定でオーバーレイを無効にしてみてはいかがでしょうか?

VLC media playerのどの設定なのかは少し調べないと分かりませんが参考になれば^^;

Re:動画の裏写り?

Posted: 2009年8月06日(木) 14:44
by lbfuvab
>>asd様

オーバーレイを無効にしたところ裏写りしなくなりました(^0^)/

一体どういう原理なんでしょう?

Re:動画の裏写り?

Posted: 2009年8月06日(木) 15:41
by YuO
> オーバーレイを無効にしたところ裏写りしなくなりました(^0^)/
> 一体どういう原理なんでしょう?

私はDirectXまわりは詳しくないので,間違っていたらごめんなさい&指摘をお願いします。


MSDN: DirectX 用語集
http://msdn.microsoft.com/ja-jp/library ... %20surface
MSDN: IDirectDrawVideo::UseOverlayStretch
http://msdn.microsoft.com/ja-jp/library/cc355950.aspx
MSDN: Overlay Surface Overview
http://msdn.microsoft.com/en-us/library/aa916217.aspx

MSDNからざっと拾ってみました。
# 最後のはMobile/CE用ですが。

オーバーレイサーフェイスはプライマリーサーフェイスよりも手前に描画されます。
そのため,従来のGDI/GDI+等にオーバーレイサーフェイスが上書きされたのでしょう。
PrintScreenもプライマリーサーフェイスには何も描かれていないため,0,つまり黒くなったのだと思います。

Site: WDDM, DWM: pros and cons - NyaRuRuの日記
http://d.hatena.ne.jp/NyaRuRu/20061202/p2
でNyaruruさんがオーバーレイAPIとDWMが両立できないと書かれていますし,
Windows Vista以降のOS (Aero有効) であれば,起きないのではないかと思います。

Re:動画の裏写り?

Posted: 2009年8月06日(木) 17:32
by YuO
調べている間に読んだ別のサイトの話と混線していました。


誤) PrintScreenもプライマリーサーフェイスには何も描かれていないため,0,つまり黒くなったのだと思います。
正) (削除)

Re:動画の裏写り?

Posted: 2009年8月06日(木) 21:13
by lbfuvab
>>YuO様
今試した所確かにPrintScreenは何も写りませんでした。

後、やっぱり純粋な黒ではダメみたいです。

Re:動画の裏写り?

Posted: 2009年8月08日(土) 00:36
by roo
こんばんはー

自分もWin32APIでMCIデバイスを用いて簡易メディアプレーヤーを作ろうとした際
同じような現象が起きましたー

不思議ですよねー