Sign in to follow this  
Followers 0
Westi

Network camera window

1 post in this topic

Many IP cameras need to install an ActiveX component (i.e. "VatDec.cab" includes VATDecoder.dll) to view the livevideostream.

The camera's internal server creates a script like this:

<script language=Javascript>

if ((navigator.appName == "Microsoft Internet Explorer")&&(navigator.platform != "MacPPC"))

{

document.write("<OBJECT ID=\"VAtCtrl\" WIDTH=362 HEIGHT=310 name=\"VAtCtrl\"");

document.write("CLASSID=CLSID:210D0CBC-8B17-48D1-B294-1A338DD2EB3A");

document.write("CODEBASE=\"http://111.111.111.111/VatDec.cab#version=1,0,0,50\">");

document.write("<PARAM NAME=\"Url\" VALUE=\"http://111.111.111.111/cgi-bin/control.cgi\">");

document.write("<PARAM NAME=\"VSize\" VALUE=\"SIF\">");

document.write("<PARAM NAME=\"Language\" VALUE=\"en\">");

document.write("<PARAM NAME=\"Deblocking\" VALUE=\"true\">");

document.write("<PARAM NAME=\"DisplayTimeFormat\" VALUE=\"1\">");

document.write("<PARAM NAME=\"DigitalZoomEnableChk\" VALUE=\"true\">");

document.write("<PARAM NAME=\"DigitalZoomEdit\" VALUE=\"true\">");

document.write("</OBJECT>");

}

</SCRIPT>

111.111.111.111 is only an example for camera's IP

Needed TypeLibrary of VATDecoder.dll is:

_IVitaminCtrlEvents Interface

Interface GUID={AAFC5C2B-889A-41BB-8BB7-982AF0B53E29};

VatCtrl Class

Class GUID={210D0CBC-8B17-48D1-B294-1A338DD2EB3A};

IVatCtrl Interface

Interface GUID={00595B6A-41B8-481D-BBA3-9E860322FCA1};

function GetIDsOfNames(riid:^GUID; rgszNames:^^I1; cNames:UINT; lcid:UI4; out rgdispid:^I4);

function Invoke(dispidMember:I4; riid:^GUID; lcid:UI4; wFlags:UI2; pdispparams:^DISPPARAMS; out pvarResult:^variant; out pexcepinfo:^EXCEPINFO; out puArgErr:^UINT);

property-get & put Url: BSTR;

property-get & put RemoteIPAddr: BSTR;

property-get & put CurrentControlCam: I4;

property-get & put GetMDParmUrl: BSTR;

property-get & put SetMDParmUrl: BSTR;

property-get & put MDEditMode: bool;

property-get & put ClickEventHandler: EClickEventHandler;

property-get & put WheelEventHandler: bool;

property-get & put DigitalZoomEdit: bool;

property-get & put DigitalZoomEnableChk: bool;

property-get & put RemoteID: I4;

property-get & put VSize: BSTR;

property-get & put ControlPort: I4;

property-get & put Language: BSTR;

property-get & put Stretch: bool;

property-get & put Deblocking: bool;

property-get & put UserDateFormat: bool;

property-get & put DisplayTimeFormat: EDisplayTimeFormat;

property-get & put ControlType: EControlType;

property-get & put DisplayErrorMsg: bool;

property-get & put ConnectionProtocol: EConnProtocol;

property-get & put MediaType: EMediaType;

property-get AudioBitRate: I4;

property-get FrameRate: I4;

property-get VideoBitRate: I4;

property-get & put ReadSettingByParam: bool;

property-get & put IgnoreBorder: bool;

property-get & put IgnoreCaption: bool;

property-get & put DisplayMotionFrame: bool;

My steps for now to create my own gui:

1. create embedded ActiveX-Gui with controls and object "VATDecoder.VatCtrl.1"

2. copied VATDecoder.dll to systemdir and register

How to call/submit the needed parameters to VATDecoder.dll and "VATDecoder.VatCtrl.1"

Share this post


Link to post
Share on other sites



Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0