franco wrote: ↑Sat Nov 30, 2019 5:36 pm
What is DirectShow, I will check out online.
Directshow is the Way not to use DRM
as i say IMHO Windows 10 does "control" if a CAM can be used.
my Table-PC (Miix 310) have 2 x CAM. i can create CAP Windows an see both Device but Connect fail
Code: Select all
// need ot4xb
//
::hHwnd := delegated_eval( {|| capCreateCaptureWindowA("CapWindow",;
dwStyle ,;
0, 0, nWidth, nHeight ,;
::oBild:getHWND() ,;
0 ) } )
// wait for Events ?
* ::DoEvents()
If (::hHwnd <> 0)
//' These calls to SendMessage return integer results but we are ignoring them.
//' ComboBoxDevices is a DropDownList on the default form, populated by
//' a call to EnumerateCaptureDevices
nError := SendMessageA(::hHwnd, WM_CAP_DRIVER_CONNECT, ::nSelect, 0)
if nError = 0
MsgBox("can not connect to capture devices"+CRLF+;
"try disable capture devices and enable it again","Capture Device")
PostAppEvent(xbeP_Activate,,, ::oStop)
SetAppFocus(::oStart)
RETURN
endif
so the old VFW Way do not work with those "Hello"-CAM which can used as Login instead of PW or PIN.
the Way with SWF file seems to use a HTML file and execute via Browser Engine.
Code: Select all
<html>
<body style="overflow: hidden; margin: 0; padding: 0;"
ondragstart="return false;" ondrop="return false;" oncontextmenu="return false;" onmousedown="return false;">
<PARAM NAME="SCALE" VALUE="exactfit">
<embed src="CAMERA.SWF" quality="high" type="application/x-shockwave-flash" width="100%" height="100%"
allowScriptAccess="always" menu="false">
</body>
</html>
i'm not a HTML Expert but that seem "simple" ... is this "safe"
like ActiveX which Firefox, Chrome and Edge does not support for Security i wonder that Flash still is working this way to get Right of using Hardware.
Yes, i have Flash installed but as i know Adobe want to cancel Flash.
---
about your CAM and VLC :
when find CAP Device use enhance Option to get into "Driver" Setup
there you find which Resolution of your CAM / Driver support.
VLC will show all Parameter on last line so copy/paste it to your Code.
you can try a *.BAT to call VLC with these Parameter from Command line or use ActiveX
all those Parameter goes to DirectShow "Filter" or "Codec" which are build-in VLC.
if you want to play a MKV Video with WMP (Windows Media Player) it will say "no Codec"
those "Codes" are Part of M$ but you can use Open Source like FFDSHOW to "overrule" M$
so my own Xbase++ "Player" using WMP Engine via ActiveX and FFDSHOW can capture Picture from Directshow
but it is still Xbase++ Code so you can't use it.
there is a VLC Sample in Extendet Version c:\MiniGUI\SAMPLES\Advanced\VLC\myplayer.prg
have fun