C# と VB.NET の質問掲示板

ASP.NET、C++/CLI、Java 何でもどうぞ

C# と VB.NET の入門サイト

Re[1]: 動画再生しているコントロールの上で、マウスの軌跡で、線を描く


(過去ログ 126 を表示中)

[トピック内 2 記事 (1 - 2 表示)]  << 0 >>

■74945 / inTopicNo.1)  動画再生しているコントロールの上で、マウスの軌跡で、線を描く
  
□投稿者/ こうじ (1回)-(2015/02/12(Thu) 00:58:09)

分類:[C#] 

お世話になってます。

解決の為のヒントがございましたら、お知恵をお貸しいただけませんでしょうか。

開発環境:Windows 7(x64)
使用言語:Visual studio 2005 c#


実現したい事は、以下の内容です。
--------
1.Form上で、動画を再生します。
2.その再生している動画の上に、マウスの軌跡によって、線を描きたい。
--------

イメージ的には、動画再生している時、コメントを人間が入れたいというものです。
(ここ、確認してほしいという強調するような使われ方)

現在、試してみたことは、

(1)画面に、MediaPlayerコントロールを貼る。(動画再生する為)
(2)MediaPlayerコントロールの動画再生部分の上にかぶせるように、PictureBoxを置く。(BackColor = Color.Transparentで透過)
(3)PictureBoxの親(Parent)に、MediaPlayerコントロールを指定。
   (これをしないと、MediaPlayerコントロールの動画再生部分が透過されない為)
(4)こちらを参考にして、マウスの軌跡によって、線を描く処理をPictureBoxに追加。
   http://homepage3.nifty.com/midori_no_bike/CS/index.html?graphics.131 
    マウスの軌跡を描く
(5)MediaPlayerコントロールのマウスUP,DOWN,MOVEイベントで、PictureBoxのそれぞれのイベントハンドラをCALLするようにコードを書く。
   (これをしないと、MediaPlayerコントロールの動画再生部分でマウスの操作をしても、PictureBoxのそれぞれのイベントハンドラに
    処理が渡ってこなかった為)

結果としては、動画再生部分に、線は描かれませんでした。動画は再生できています。

(3)をしなければ、線は描かれますが、その場合、Parentが、Formになるので、MediaPlayerコントロールの
 動画再生部分は透過されない為、結果、やりたい事が実現できませんでした。

動画再生にMediaPlayerコントロールをこだわりはありませんが、このような事を実現する為のヒントなどをご教授頂ければ幸いです。

以上、よろしくお願いします。




引用返信 編集キー/
■74978 / inTopicNo.2)  Re[1]: 動画再生しているコントロールの上で、マウスの軌跡で、線を描く
□投稿者/ 納豆 (6回)-(2015/02/15(Sun) 20:44:44)
DirectShow を使用して、一コマづつ映像をリアルタイム取得して、
マウスで描画する線の画像を合成して出力するというのはどうでしょう?

MediaPlayerコントロールは、簡単に動画再生できて便利ではありますが、融通は利かないですからね…。
引用返信 編集キー/


トピック内ページ移動 / << 0 >>

このトピックに書きこむ

過去ログには書き込み不可

管理者用

- Child Tree -