掲示板システム
ホーム
アクセス解析
カテゴリ
ログアウト
キャプチャーしている動画を2箇所に表示 (ID:99946)
名前
ホームページ(ブログ、Twitterなど)のURL (省略可)
本文
DirectXを用いて、キャプチャー映像を表示しています。 同じ映像を、2箇所に表示したいのですが、可能うまくできません。 下記が現在のプログラムです。 Option Explicit 'カメラのフィルタ名 Private Const CAMERA_FILTER_NAME$ = "Python2 USB WDM Encoder" 'Che-es! SPYZ Private Const CAMERA_OUTPUTPIN_NAME$ = "Video Out" 'フィルタグラフマネージャ Private mGrp As QuartzTypeLib.FilgraphManager 'フィルタグラフマネージャ Private mGrp2 As QuartzTypeLib.FilgraphManager Private Sub Form_Activate() 'グラフマネージャの作成 Set mGrp = New QuartzTypeLib.FilgraphManager 'グラフにキャプチャ(カメラ)フィルタを追加する Dim cameraflt As QuartzTypeLib.IFilterInfo Dim cameraflt2 As QuartzTypeLib.IFilterInfo Set cameraflt = AddFilter(mGrp, CAMERA_FILTER_NAME$) If cameraflt Is Nothing Then MsgBox "カメラ'" + CAMERA_FILTER_NAME + "'が見つかりません。" + vbCrLf + "カメラの名前を確認してください。" Exit Sub End If Set cameraflt2 = AddFilter(mGrp, "Video Renderer") If cameraflt Is Nothing Then MsgBox "カメラ'" + CAMERA_FILTER_NAME + "'が見つかりません。" + vbCrLf + "カメラの名前を確認してください。" Exit Sub End If 'カメラの出力ピンを取得 Dim camerapin As QuartzTypeLib.IPinInfo Dim camerapin2 As QuartzTypeLib.IPinInfo cameraflt.FindPin 0, camerapin cameraflt2.FindPin "VMR Input0", camerapin2 Call camerapin.Connect(camerapin2) 'ビデオサイズ(縦横)を取得 Dim bv As QuartzTypeLib.IBasicVideo Dim vx&, vy& Set bv = mGrp bv.GetVideoSize vx, vy 'ビデオサイズに合わせてウィンドウを調整 Dim winx&, winy& 'ウィンドウの縁サイズ Me.ScaleMode = vbTwips winx = Me.Width - Me.ScaleWidth winy = Me.Height - Me.ScaleHeight Me.Width = winx + vx * Screen.TwipsPerPixelX Me.Height = winy + vy * Screen.TwipsPerPixelY 'ウィンドウ内で動画を再生させる Dim vw As QuartzTypeLib.IVideoWindow Set vw = mGrp vw.WindowStyle = &H40000000 'WS_CHILD vw.SetWindowPosition 0, 0, vx, vy vw.Owner = Me.hWnd '再生 mGrp.Run End Sub 'レジストリに登録されているフィルタをグラフに追加する Public Function AddFilter(ByRef Grp As QuartzTypeLib.FilgraphManager, ByVal FilterName$) As IFilterInfo Dim regflt As QuartzTypeLib.IRegFilterInfo For Each regflt In Grp.RegFilterCollection If regflt.Name = FilterName$ Then regflt.Filter AddFilter Exit Function End If Next End Function
←解決時は質問者本人がここをチェックしてください。
更新する
戻る
掲示板システム
Copyright 2021 Takeshi Okamoto All Rights Reserved.