SlideShare a Scribd company logo
1
AMCREST HTTP API FOR IP CAMERAS
Version 1.51
2
3
1.Preface
This document details the API of Amcrest video products. Programmers can access and configure Amcrest video products using this API.
2.Catalog
Document History........................................................................................................................................................Error! Bookmark not defined.
1.Preface....................................................................................................................................................................................................................3
2.Catalog....................................................................................................................................................................................................................3
3.HTTP API Transaction..............................................................................................................................................................................................9
3.1Transaction ...................................................................................................................................................................................................9
3.2Authentication............................................................................................................................................................................................10
4.Camera..................................................................................................................................................................................................................11
4.1Stream ........................................................................................................................................................................................................11
4.1.1 GetStream.......................................................................................................................................................................................11
4.1.2 GetMaxExtraStreamCounts.............................................................................................................................................................11
4.1.3 GetSnapshot ...................................................................................................................................................................................11
4.1.4 GetVideo.........................................................................................................................................................................................12
4.1.5 PlayBack..........................................................................................................................................................................................12
4.1.6 LoadFile...........................................................................................................................................................................................12
4.1.7 GetStream By Http..........................................................................................................................................................................13
4.1.8 Playback By Http .............................................................................................................................................................................13
4.2VideoColor..................................................................................................................................................................................................14
4.2.1 GetVideoColorConfig......................................................................................................................................................................14
4.2.2 SetVideoColorConfig.......................................................................................................................................................................14
4.3VideoInOptions...........................................................................................................................................................................................15
4.3.1 GetVideoInputCaps.........................................................................................................................................................................15
4.3.2 GetVideoInOptionsConfig...............................................................................................................................................................17
4.3.3 SetVideoInOptionsConfig................................................................................................................................................................19
4.4VideoEncode...............................................................................................................................................................................................24
4.4.1 GetVideoConfigCaps.......................................................................................................................................................................24
4.4.2 Resolution.......................................................................................................................................................................................25
4.4.3 GetVideoEncodeConfig...................................................................................................................................................................26
4.4.4 SetVideoEncodeConfig ...................................................................................................................................................................27
4.5AudioEncode...............................................................................................................................................................................................28
4.5.1 GetAudioConfigCaps.......................................................................................................................................................................28
4.5.2 GetAudioEncodeConfig...................................................................................................................................................................28
4.5.3 SetAudioEncodeConfig....................................................................................................................................................................29
4.6 SnapEncode ...............................................................................................................................................................................................30
4
4.6.1 GetSnapConfigCaps.........................................................................................................................................................................30
4.6.2 GetSnapEncodeConfig ....................................................................................................................................................................30
4.6.3 SetSnapEncodeConfig .....................................................................................................................................................................31
4.7ChannelTitle ...............................................................................................................................................................................................32
4.7.1 GetChannelTitleConfig....................................................................................................................................................................32
4.7.2 SetChannelTitleConfig ....................................................................................................................................................................32
4.8VideoStandard............................................................................................................................................................................................32
4.8.1 GetVideoStandardConfig ................................................................................................................................................................32
4.8.2 SetVideoStandardConfig.................................................................................................................................................................33
4.9VideoWidget...............................................................................................................................................................................................33
4.9.1 GetVideoWidgetConfig...................................................................................................................................................................33
4.9.2 SetVideoWidgetConfig ...................................................................................................................................................................34
4.10VideoIn .....................................................................................................................................................................................................36
4.10.1 getCollect......................................................................................................................................................................................36
4.11VideoOut ..................................................................................................................................................................................................36
4.11.1 GetVideoOutConfig.......................................................................................................................................................................36
4.11.2 SetVideoOutConfig .......................................................................................................................................................................37
4.12FlashLight..................................................................................................................................................................................................37
4.12.1 GetFlashLightConfig ......................................................................................................................................................................37
4.12.2 SetFlashLightConfig.......................................................................................................................................................................38
5.NetWork ...............................................................................................................................................................................................................38
5.1NetInterfaces ..............................................................................................................................................................................................38
5.1.1 GetInterfaces...................................................................................................................................................................................38
5.2BasicConfig..................................................................................................................................................................................................39
5.2.1 GetBasicConfig................................................................................................................................................................................39
5.2.2 SetBasicConfig.................................................................................................................................................................................39
5.3PPPoE..........................................................................................................................................................................................................40
5.3.1 GetPPPoEConfig..............................................................................................................................................................................40
5.3.2 SetPPPoEConfig...............................................................................................................................................................................40
5.4DDNS...........................................................................................................................................................................................................41
5.4.1 GetDDNSConfig...............................................................................................................................................................................41
5.4.2 SetDDNSConfig................................................................................................................................................................................41
5.5Email...........................................................................................................................................................................................................42
5.5.1 GetEmailConfig ...............................................................................................................................................................................42
5.5.2 SetEmailConfig................................................................................................................................................................................42
5.6Wlan ...........................................................................................................................................................................................................43
5.6.1 GetWlanConfig................................................................................................................................................................................43
5.6.2 SetWlanConfig ................................................................................................................................................................................43
5.6.3 ScanWlanDevices............................................................................................................................................................................44
5.7UPnP ...........................................................................................................................................................................................................45
5.7.1 GetUPnPConfig ...............................................................................................................................................................................45
5.7.2 SetUPnPConfig................................................................................................................................................................................45
5.7.3 GetUPnPStatus................................................................................................................................................................................46
5.8NTP .............................................................................................................................................................................................................46
5
5.8.1 GetNTPConfig..................................................................................................................................................................................46
5.8.2 SetNTPConfig ..................................................................................................................................................................................46
5.9RTSP............................................................................................................................................................................................................47
5.9.1 GetRTSPConfig ................................................................................................................................................................................47
5.9.2 SetRTSPConfig.................................................................................................................................................................................48
6.Events ...................................................................................................................................................................................................................49
6.1EventHandler ..............................................................................................................................................................................................49
6.1.1 GetEventHandler.............................................................................................................................................................................49
6.1.2 SetEventHandler .............................................................................................................................................................................50
6.2Alarm ..........................................................................................................................................................................................................52
6.2.1 GetAlarmConfig ..............................................................................................................................................................................52
6.2.2 SetAlarmConfig ...............................................................................................................................................................................52
6.2.3 GetAlarmOutConfig.........................................................................................................................................................................52
6.2.4 SetAlarmOutConfig .........................................................................................................................................................................53
6.2.5 GetInSlots........................................................................................................................................................................................53
6.2.6 GetOutSlots.....................................................................................................................................................................................53
6.2.7 GetInState.......................................................................................................................................................................................53
6.2.8 GetOutState ....................................................................................................................................................................................54
6.2.9 GetChannelInState..........................................................................................................................................................................54
6.2.10 GetChannelOutState.....................................................................................................................................................................54
6.3MotionDetect .............................................................................................................................................................................................54
6.3.1 GetMotionDetectConfig..................................................................................................................................................................54
6.3.2 SetMotionDetectConfig ..................................................................................................................................................................55
6.4BlindDetect .................................................................................................................................................................................................56
6.4.1 GetBlindDetectConfig .....................................................................................................................................................................56
6.4.2 SetBlindDetectConfig......................................................................................................................................................................56
6.5LossDetect ..................................................................................................................................................................................................57
6.5.1 GetLossDetectConfig.......................................................................................................................................................................57
6.5.2 SetLossDetectConfig .......................................................................................................................................................................57
6.6LoginFailureAlarm.......................................................................................................................................................................................57
6.6.1 GetLoginFailureAlarmConfig...........................................................................................................................................................57
6.6.2 SetLoginFailureAlarmConfig............................................................................................................................................................57
6.7 StorageAbnormal.......................................................................................................................................................................................58
6.7.1 GetStorageNotExistConfig...............................................................................................................................................................58
6.7.2 SetStorageNotExistConfig ...............................................................................................................................................................58
6.7.3 Get StorageFailureConfig ................................................................................................................................................................58
6.7.4 Set StorageFailureConfig.................................................................................................................................................................58
6.7.5 GetStorageLowSpaceConfig............................................................................................................................................................59
6.7.6 SetStorageLowSpaceConfig.............................................................................................................................................................59
6.8 NetAbnormal .............................................................................................................................................................................................59
6.8.1 GetNetAbortConfig .........................................................................................................................................................................59
6.8.2 SetNetAbortConfig..........................................................................................................................................................................59
6.8.3 GetIPConflictConfig.........................................................................................................................................................................60
6.8.4 SetIPConflictConfig .........................................................................................................................................................................60
6
6.9 GetEventIndexes ........................................................................................................................................................................................60
6.10 Attach.......................................................................................................................................................................................................61
7.PTZ........................................................................................................................................................................................................................62
7.1PTZConfig....................................................................................................................................................................................................62
7.1.1 GetPTZConfig ..................................................................................................................................................................................62
7.1.2 SetPTZConfig...................................................................................................................................................................................63
7.2PTZControl ..................................................................................................................................................................................................64
7.2.1 GetProtocolList................................................................................................................................................................................64
7.2.2 GetCurrentProtocolCaps.................................................................................................................................................................64
7.2.3 PTZ control commands ...................................................................................................................................................................65
7.3PTZStatus ....................................................................................................................................................................................................68
7.3.1 PTZ GetStatus..................................................................................................................................................................................68
8.Record Snap..........................................................................................................................................................................................................68
8.1Record.........................................................................................................................................................................................................68
8.1.1 GetRecordConfig.............................................................................................................................................................................68
8.1.2 SetRecordConfig..............................................................................................................................................................................69
8.1.3 GetRecordModeConfig ...................................................................................................................................................................69
8.1.4 SetRecordModeConfig ....................................................................................................................................................................69
8.2Snap............................................................................................................................................................................................................70
8.2.1 GetSnapConfig ................................................................................................................................................................................70
8.2.2 SetSnapConfig.................................................................................................................................................................................70
8.3MediaGlobal ...............................................................................................................................................................................................71
8.3.1 GetMediaGlobalConfig....................................................................................................................................................................71
8.3.2 SetMediaGlobalConfig ....................................................................................................................................................................71
8.4Holiday........................................................................................................................................................................................................72
8.4.1 GetHolidayConfig............................................................................................................................................................................72
8.4.2 SetHolidayConfig.............................................................................................................................................................................72
9.System ..................................................................................................................................................................................................................73
9.1General .......................................................................................................................................................................................................73
9.1.1 GetGeneralConfig............................................................................................................................................................................73
9.1.2 SetGeneralConfig ............................................................................................................................................................................73
9.2SystemTime ................................................................................................................................................................................................74
9.2.1 GetCurrentTime..............................................................................................................................................................................74
9.2.2 SetCurrentTime...............................................................................................................................................................................74
9.3Locales ........................................................................................................................................................................................................74
9.3.1 GetLocalesConfig ............................................................................................................................................................................74
9.3.2 SetLocalesConfig .............................................................................................................................................................................75
9.4Language.....................................................................................................................................................................................................76
9.4.1 GetLanguageCaps ...........................................................................................................................................................................76
9.4.2 GetLanguageConfig.........................................................................................................................................................................76
9.4.3 SetLanguageConfig..........................................................................................................................................................................76
9.5AccessFilter.................................................................................................................................................................................................77
9.5.1 GetAccessFilterConfig.....................................................................................................................................................................77
9.5.2 SetAccessFilterConfig......................................................................................................................................................................77
7
9.6AutoMaintain..............................................................................................................................................................................................77
9.6.1 GetAutoMaintainConfig..................................................................................................................................................................77
9.6.2 SetAutoMaintainConfig...................................................................................................................................................................78
9.7UserManager ..............................................................................................................................................................................................79
9.7.1 Group..............................................................................................................................................................................................79
9.7.2 GetGroupInfo..................................................................................................................................................................................79
9.7.3 GetGroupInfoAll..............................................................................................................................................................................79
9.7.4 AddUser ..........................................................................................................................................................................................79
9.7.5 DeleteUser ......................................................................................................................................................................................80
9.7.6 ModifyUser .....................................................................................................................................................................................80
9.7.7 ModifyPassword .............................................................................................................................................................................80
9.7.8 GetUserInfo.....................................................................................................................................................................................81
9.7.9 GetUserInfoAll.................................................................................................................................................................................81
9.7.10 GetActiveUserInfoAll.....................................................................................................................................................................81
9.8System Operation .......................................................................................................................................................................................82
9.8.1 Reboot ............................................................................................................................................................................................82
9.8.2 Shutdown........................................................................................................................................................................................82
9.8.3 GetDeviceType................................................................................................................................................................................82
9.8.4 GetHardwareVersion.......................................................................................................................................................................82
9.8.5 GetSerialNo.....................................................................................................................................................................................82
9.8.6 GetMachineName...........................................................................................................................................................................82
9.8.7 GetSystemInfo.................................................................................................................................................................................83
9.8.8 GetVendor.......................................................................................................................................................................................83
9.8.9 GetSoftwareVersion........................................................................................................................................................................83
9.8.10 GetOnvifVersion............................................................................................................................................................................83
9.9 Log .............................................................................................................................................................................................................83
9.9.1 StartFind .........................................................................................................................................................................................83
9.9.2 DoFind.............................................................................................................................................................................................84
9.9.3 StopFind..........................................................................................................................................................................................84
9.9.4 Clear................................................................................................................................................................................................85
9.10 UserGlobal ...............................................................................................................................................................................................85
9.10.1 GetUserGlobalConfig ....................................................................................................................................................................85
9.10.2 SetUserGlobalConfig .....................................................................................................................................................................85
9.11 IntervideoManager ..................................................................................................................................................................................85
9.11.1 GetCGIVersion...............................................................................................................................................................................85
10.Storage................................................................................................................................................................................................................86
10.1 File Finding ..............................................................................................................................................................................................86
10.1.1 Create............................................................................................................................................................................................86
10.1.2 StartFind .......................................................................................................................................................................................86
10.1.3 FindNextFile..................................................................................................................................................................................87
10.1.4 Close .............................................................................................................................................................................................87
10.1.5 Destroy..........................................................................................................................................................................................88
10.2 Storage Device .........................................................................................................................................................................................88
10.2.1 GetStorageDeviceCollect ..............................................................................................................................................................88
8
10.2.2 getDeviceAllInfo............................................................................................................................................................................88
10.2.3 setStorageDevice ..........................................................................................................................................................................88
10.2.4 getCaps .........................................................................................................................................................................................89
10.3 Work Group .............................................................................................................................................................................................89
10.3.1 GetWorkGroupCollect...................................................................................................................................................................89
10.4 Work Directory.........................................................................................................................................................................................89
10.4.1 GetWorkDirectoryCollect..............................................................................................................................................................89
10.5 NAS ..........................................................................................................................................................................................................90
10.5.1 GetNASConfig ...............................................................................................................................................................................90
10.5.2 SetNASConfig ................................................................................................................................................................................90
10.6 Storage Point............................................................................................................................................................................................91
10.6.1 GetRecordStoragePointConfig ......................................................................................................................................................91
10.6.2 SetRecordStoragePointConfig .......................................................................................................................................................91
10.6.3 GetStorageGroupConfig................................................................................................................................................................92
10.6.4 SetStorageGroupConfig.................................................................................................................................................................92
11.Audio ..................................................................................................................................................................................................................92
11.1 Audio MIME type.....................................................................................................................................................................................92
11.2 Post Audio................................................................................................................................................................................................93
11.2.1 Example for singlepart ..................................................................................................................................................................93
11.2.2 Example for multipart ...................................................................................................................................................................93
11.3 Get Audio.................................................................................................................................................................................................94
11.3.1 Example for singlepart ..................................................................................................................................................................94
11.3.2 Example for multipart ...................................................................................................................................................................94
11.4 Audio Input ..............................................................................................................................................................................................95
11.4.1 getCollect......................................................................................................................................................................................95
11.5 Audio Output ...........................................................................................................................................................................................95
11.5.1 getCollect......................................................................................................................................................................................95
12.Appendix.............................................................................................................................................................................................................95
12.1 Stream Format.........................................................................................................................................................................................95
13.VedioInput ..........................................................................................................................................................................................................98
13.1 AdjustFocus..............................................................................................................................................................................................98
13.2 AdjustFocusContinuously.........................................................................................................................................................................98
13.3 AutoFocus ................................................................................................................................................................................................98
13.4 GetFocusStatus ........................................................................................................................................................................................99
14. SD Camera .........................................................................................................................................................................................................99
14.1 VideoInWhiteBalance ..............................................................................................................................................................................99
14.1.1 GetVideoInWhiteBalance .............................................................................................................................................................99
14.2.2 SetVideoInWhiteBalance ............................................................................................................................................................100
14.2 VideoInExposure....................................................................................................................................................................................100
14.2.1 GetVideoInExposure...................................................................................................................................................................100
14.2.2 SetVideoInExposure....................................................................................................................................................................102
14.3 VideoInDenoise ..................................................................................................................................................................................103
14.3.1 GetVideoInDenoise.....................................................................................................................................................................103
14.3.2 SetVideoInDenoise .....................................................................................................................................................................104
9
14.4 VideoInDayNight ................................................................................................................................................................................104
14.4.1 GetVideoInDayNight...................................................................................................................................................................104
14.4.2 SetVideoInDayNight....................................................................................................................................................................105
14.5 VideoInFocus ........................................................................................................................................................................................105
14.5.1 GetVideoInFocus.........................................................................................................................................................................105
14.5.2 SetVideoInFocus .........................................................................................................................................................................106
14.6 VideoInZoom ........................................................................................................................................................................................106
14.6.1 GetVideoInZoom.........................................................................................................................................................................106
14.6.2 SetVideoInZoom .........................................................................................................................................................................107
14.7 VideoInSharpness..............................................................................................................................................................................107
14.7.1 GetVideoInSharpness .................................................................................................................................................................107
14.7.2 SetVideoInSharpness ..................................................................................................................................................................107
14.8 VideoInColor.........................................................................................................................................................................................108
14.8.1 GetVideoInColor .........................................................................................................................................................................108
14.8.2 SetVideoInColor..........................................................................................................................................................................109
14.9 VideoInRotate.......................................................................................................................................................................................109
14.9.1 GetVideoInRotate .......................................................................................................................................................................109
14.9.2 SetVideoInRotate........................................................................................................................................................................110
14.10 VideoInMode......................................................................................................................................................................................110
14.10.1 GetVideoInMode ......................................................................................................................................................................110
14.10.2 SetVideoInMode.......................................................................................................................................................................111
15. VideoAnalyse...................................................................................................................................................................................................112
15.1 VideoAnalyseRule..................................................................................................................................................................................112
15.1.1 GetVideoAnalyseRule .................................................................................................................................................................112
15.1.2 SetVideoAnalyseRule..................................................................................................................................................................112
16 TrafficSnap ........................................................................................................................................................................................................116
16.1 getParkingSpaceStatus...........................................................................................................................................................................116
3. HTTP API Transaction
3.1 Transaction
The HTTP API Transaction starts from a request from a client Application, usually a web browser. The request is processed by the web
server on the Amcrest product, then sends the response back to the client application. The HTTP request is taken in GET form. If the request is
successful, the Amcrest product will return a HTTP header contains 200 OK. The HTTP Body will contain actual data or error message if an error
occurs.
For convenience, we use some short words to instead the long expressions. The follows are several regulations:
1. The italics and bold will be replaced by the value behind the symbol “=”.
2. The URL must follow the standard way of writing a URL.(RFC_3986:Uniform Resource Identifiers (URI) Generic Syntax);that is ,spaces
and other reserved characters (“;”, “/”, “?”, “:”, “@”, “=”, “+”, “,” and “$”) within a <paramName> or a <paramValue> must be replaced
10
with %<ASCII hex>.For example ,the blank must be instead with %20.
3. To describe the range of the configuration, we use some symbols such as “[]”, “{}” and so on. For example: ”[0-100]” denotes a
integer not less than 0 and not larger than 100. “{0,1,2,3}” denotes the valid value of a integer among 0,1,2 and 3.
4. In the request and response, we use “[]” to denote an array. The index is usually a integer and start form 0.
5. The parameter value has several types: string, integer, bool and float.Integer is 32 bits. The range of bool is “true” and “false”.
The below is an example of a transaction:
Request GET http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoColor
Description Get VideoColor configuration.
Response HTTP/1.1 200 OK
Content-Type:text/plain
head.Brightness=50
head.Contrast=50
head.Hue=50
head.Saturation=50
head.TimeSection=1 00:00:00-24:00:00
Comment In above table, head= table.VideoColor[ChannelNo][ColorConfigNo]
ChannelNo = video channel index,
colorConfigNo = color config index.
0 = Color Config 1
1 = Color Config 2
…
We can also request the single config.
For example:
Request :
GET http://10.7.2.4/cgi-bin/configManager.cgi?action=getConfig&name=VideoColor[0][0].Brightness
Response:
HTTP/1.1 200 OK
Content-Type:text/plain
table.VideoColor[0][0].Brightness=50
3.2 Authentication
The Amcrest video product supplies two authentication ways: basic authentication and digest authentication. If the http request does not
have “Authorization”, the Amcrest video product returns a 401, utill the http request has a legal authentication.
For example:
1. When basic authentication, the Amcrest video product response:
401 Unauthorized
WWW-Authenticate: Basic realm=”XXXXXX”
Then the client encode the username and password with base64, send the following request:
Authorization: Basic VXZVXZ.
2. When digest authentication, the Amcrest video product response:
WWW-Authenticate: Digest realm="DH_00408CA5EA04", nonce="000562fdY631973ef04f77a3ede7c1832ff48720ef95ad",
11
stale=FALSE, qop="auth";
The client calculates the digest using username, password, nonce, realm and URI with MD5, then send the following request:
Authorization: Digest username="admin", realm="DH_00408CA5EA04", nc=00000001,cnonce="0a4f113b",qop="auth"
nonce="000562fdY631973ef04f77a3ede7c1832ff48720ef95ad",uri="cgi-bin/global.login?userName=admin",
response="65002de02df697e946b750590b44f8bf"
4. Camera
Camera API allows application to configure and view Amcrest video product settings.
4.1 Stream
4.1.1 GetStream
URL Syntax rtsp://<username>:<password>@<ip>:<port>/cam/realmonitor?channel=<channelNo>&subtype=<typeNo>
Comment <username>: a valid user’s username.
<password> :user’s password.
<ip> :the IP address of the Amcrest video product.
<port >:the default port is 554. It can be omitted. It can be obtained in 5.10.1 GetRTSPConfig.
<channelNo> :the channel number. It starts from 1.
<typeNo> :the stream type. The <typeNo> of main stream is 0, extra stream 1 is 1, extra stream 2 is 2.The extra stream
counts can be obtained in 4.1.2 GetMaxStreamCounts. The stream must be enabled by setting head.VideoEnable to
true in 4.4.4 SetVideoEncodeConfig.
For example, we request the extra stream 1 of channel 1, the URL is:
rtsp://admin:admin@10.7.6.67:554/cam/realmonitor?channel=1&subtype=1.
The IP Camera supports both TCP and UDP transmission forms.
It also supplies basic authentication and digest authentication ways. The authentication process is similar with 3.2
Authentication.
4.1.2 GetMaxExtraStreamCounts
URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getProductDefinition&name=MaxExtraStream
Response table.MaxExtraStream=1
Comment In above table, the range of table.MaxExtraStream is {1,2,3}
4.1.3 GetSnapshot
URL Syntax http://<ip>/cgi-bin/snapshot.cgi? [channel=<channelNo>]
12
Response A picture encoded by jpg
Comment The channel number is default 0 if the request is not carried the param.
4.1.4 GetVideo
URL Syntax http://<ip>/cgi-bin/mjpg/video.cgi?[channel=<channelNo>]&subtype=<typeNo>
Response video stream encoded by mjpg
Return:
HTTP Code:200 OK
Content-Type:multipart/x-mixed-replace;boundary=<boundary>
Body:
--<boundary>
Content-Type:image/jpeg
Content-Length:<image size>
<JPEG image data>
--<boundary>
Comment The channel number is default 0 if the request is not carried the param.
subtype : Definition in 4.1.1 GetStream
4.1.5 PlayBack
URL Syntax rtsp://<username>:<password>@<ip>:<port>/<filename>
Response It’s similar with 4.1.1 GetStream.
For example:
rtsp://admin:admin@10.7.6.67:554//mnt/sd/2012-07-13/001/dav/09/09.30.37-09.30.47[R][0@0][0].dav
4.1.6 LoadFile
URL Syntax http://<ip>/cgi-bin/RPC_Loadfile/<filename>
Response HTTP Code: 200 OK
Content-Type: Application/octet-stream
Content-Length:<fileLength>
Body:
<data>
<data>
For example:
http://10.61.5.117/cgi-bin/RPC_Loadfile/mnt/sd/2012-07-13/001/dav/09/09.30.37-09.30.47[R][0@0][0].dav
13
4.1.7 GetStream By Http
URL Syntax http://<ip>/cgi-bin/realmonitor.cgi?action=getStream&channel=<channelNo>&subtype=<typeNo>
Response HTTP Code: 200 OK
Content-Type: Application/octet-stream
Body:
<data>
<data>
Comment Compared to 4.1.1 GetStream using RTSP, it is another way of get stream. This is a way to use http
protocol to get realmonitor stream. The data format is shown in appendix.
4.1.8 Playback By Http
URL Syntax http://<ip>/cgi-bin/playBack.cgi?action=getStream&channel=<channelNo>&subtype=<typeNo>&startTime=<startTime>&
endTime=<endTime>
Response HTTP Code: 200 OK
Content-Type: Application/octet-stream
Body:
streamId=<streamId>rn
<data>
<data>
Comment Compared to 4.1.5 Playback using RTSP, it is another way of get playback stream. This is a way to use
http protocol to get playback stream. The data format is shown in appendix.
URL Syntax http://<ip>/cgi-bin/playBack.cgi?action=control&streamId=<streamId>&cmd=<cmd>&<paramName>=<paramValue>[&<
paramName>=<paramValue>...]
Response OK or ERROR
Comment Control the playback stream
Cmd=play
Speed=<speed> optional, default speed=1,if speed > 0, play back forward, else if speed < 0, playback
backward(param iframe is ignored, only support iframe playback backward);
Iframe=<iframe> optional, default iframe=0, if iframe=1, playback I frame only;
seekTime=<seekTime> seek time, optional, default playback from the stream current point;
cmd=pause
pause the playback stream;
cmd=cancel
14
cancel the playback stream, and destroy the streamed;
This is the cgi to control playback stream, used to control the stream which built by “action=getStream”.
4.2 VideoColor
4.2.1 GetVideoColorConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoColor
Response head.Brightness=50
head.Contrast=50
head.Hue=50
head.Saturation=50
head.TimeSection=1 00:00:00-24:00:00
Comment In above table, head= table.VideoColor[ChannelNo][ColorConfigNo]
ChannelNo = video channel index,
colorConfigNo = color config index.
0 = Color Config 1
1 = Color Config 2
…
4.2.2 SetVideoColorConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Response OK or ERROR
Comment In below table, head=VideoColor[ChannelNo][ColorConfigNo]
ChannelNo = video channel index,
colorConfigNo = color config index,
0 = Color Config 1
1 = Color Config 2
…
ParamName ParamValue type Description
head.Brightness integer Brightness, range is [0-100]
head.Contrast integer Contrast, range is [0-100]
head.Hue integer Hue
head.Saturation integer Saturation
head.TimeSection string Effective time for this video color config.
Format is: mask starttime endtime
Mask range is {0, 1}.
15
Mask 0 – this video config is not effective
Mask 1 - this config is effective
Starttime/Endtime format like 11:00:00.
Example:
0 01:00:00-02:00:00, means this config is not effective.
1 01:00:00-02:00:00, means this config is effective between 01:00:00 and 02:00:00
4.3 VideoInOptions
4.3.1 GetVideoInputCaps
URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action=getCaps&channel=<channelNo>
Description Get video input capabilities, channelNo is video in channel index.
Response caps.Backlight=true
caps.ChipID=0
caps.CoverCount=0
caps.CoverType=0
caps.CustomManualExposure=true
caps.DayNightColor=true
caps.DownScaling=true
caps.Exposure=9
caps.ExternalSyncInput=true
caps.FlashAdjust=true
caps.Flip=true
caps.Gain=true
caps.GainAuto=true
caps.HorizontalBinning=1
caps.InfraRed=false
caps.Iris=false
caps.IrisAuto=false
caps.LadenBitrate=750000
caps.LimitedAutoExposure=true
caps.MaxHeight=1200
caps.MaxWidth=1600
caps.Mirror=false
caps.NightOptions=false
caps.ReferenceLevel=false
caps.Rotate90=false
caps.SetColor=true
caps.SignalFormats=Inside,720p,1080p
16
caps.SyncChipChannels=false
caps.TitleCount=0
caps.UpScaling=false
caps.VerticalBinning=1
caps.WhiteBalance=2
Field in response Value type Description
Backlight bool True: support backlight
ChipID String ID of chips in this channel
CoverCount integer The maximum cover region count.
CoverType integer 0: don’t support cover
1: support realtime cover
2: support non-realtime cover
CustomManualExposure bool, true: support use defined manual exposure time
DayNightColor bool true: support color alternate between day and night.
DownScaling bool true: support down scaling, binning mode not included.
Exposure integer Exposure grade. 0 – don’t support exposure control.
ExternalSyncInput bool true: support HD signal external synchronization.
FlashAdjust bool true: support flash adjust
Flip bool true: support picture flip.
Gain bool true: support gain control.
GainAuto bool true: support auto gain.
HorizontalBinning integer Horizontal/Vertical pixel binning mask,
1 – support 2 pixel binning,
2 – support 3 pixel binning
4 - support 4 pixel binning
…
2^n – support n+2 pixel binning
VerticalBinning integer
InfraRed bool true: support Infra compensation
Iris bool true: support Iris adjust
IrisAuto bool true: support auto Iris adjust
LadenBitrate integer Unit is Kbps.
Maximum value of video stream bitrate, 16bpp, not in binning mode.
LimitedAutoExposure bool true: support auto exposure with time limit.
MaxHeight integer Maximum video height
MaxWidth integer Maximum video width
Mirror bool true: support picture mirror.
NightOptions bool true: support night options.
ReferenceLevel bool true: support reference level.
Rotate90 bool true: support clockwise/anticlockwise 90°rotate
SetColor bool true: support color set.
SignalFormats string It’s a string contains supported video input signal formats for this channel. Signal formats
17
are separated by comma.
Range is {Inside, BT656, 720p,1080p, 1080i, 1080sF, 1_3M}
Inside – inside input.
1_3M - 1280*960
SyncChipChannels bool True: channels in same chip should be synchronized. Synchronized means video resolution
of these channels should be the same.
TitleCount integer Maximum count of blending titles.
UpScaling bool true: support up scaling.
WhiteBalance integer Range is {0, 1, 2, 3}
0 – don’t support white balance.
1 – support auto white balance
2 - support auto and pre defined white balance.
3 - support auto, pre defined and user defined white balance
4.3.2 GetVideoInOptionsConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInOptions
Description Video in options contain Backlight, ExposureSpeed, DayNightColor. DayOptions, NightOptions, NormalOptions and so on
Response head.Backlight=0
head.DayNightColor=false
head.ExposureSpeed=0
head.ExposureValue1=0.100000
head.ExposureValue2=80.000000
head.ExternalSync=0
head.ExternalSyncPhase=0
head.FlashControl.Mode=0
head.FlashControl.Pole=0
head.FlashControl.Value=0
head.FlashControl.PreValue=0
head.Flip=false
head.Gain=50
head.GainAuto=true
head.IrisAuto=false
head.Mirror=false
head.NightOptions.AntiFlicker=0
head.NightOptions.Backlight=0
head.NightOptions.BacklightRegion[0]=3096
head.NightOptions.BacklightRegion[1]=3096
head.NightOptions.BacklightRegion[2]=5096
head.NightOptions.BacklightRegion[3]=5096
18
head.NightOptions.BrightnessThreshold=50
head.NightOptions.DayNightColor=2
head.NightOptions.ExposureMode=0
head.NightOptions.ExposureSpeed=0
head.NightOptions.ExposureValue1=0
head.NightOptions.ExposureValue2=40
head.NightOptions.ExternalSyncPhase=125
head.NightOptions.Flip=false
head.NightOptions.Gain=50
head.NightOptions.GainAuto=true
head.NightOptions.GainBlue=50
head.NightOptions.GainGreen=50
head.NightOptions.GainMax=50
head.NightOptions.GainMin=0
head.NightOptions.GainRed=50
head.NightOptions.GlareInhibition=0
head.NightOptions.IrisAuto=true
head.NightOptions.Mirror=false
head.NightOptions.Profile=3
head.NightOptions.ReferenceLevel=50
head.NightOptions.Rotate90=0
head.NightOptions.SunriseHour=0
head.NightOptions.SunriseMinute=0
head.NightOptions.SunriseSecond=0
head.NightOptions.SunsetHour=23
head.NightOptions.SunsetMinute=59
head.NightOptions.SunsetSecond=59
head.NightOptions.SwitchMode=4
head.NightOptions.WhiteBalance=Auto
head.NightOptions.WideDynamicRange=0
head.NightOptions.WideDynamicRangeMode=0
head.NormalOptions.AntiFlicker=0
head.NormalOptions.Backlight=0
head.NormalOptions.BacklightRegion[0]=3096
head.NormalOptions.BacklightRegion[1]=3096
head.NormalOptions.BacklightRegion[2]=5096
head.NormalOptions.BacklightRegion[3]=5096
head.NormalOptions.BrightnessThreshold=50
head.NormalOptions.DayNightColor=1
head.NormalOptions.ExposureMode=0
head.NormalOptions.ExposureSpeed=0
head.NormalOptions.ExposureValue1=0
head.NormalOptions.ExposureValue2=40
head.NormalOptions.ExternalSyncPhase=125
19
head.NormalOptions.Flip=false
head.NormalOptions.Gain=50
head.NormalOptions.GainAuto=true
head.NormalOptions.GainBlue=50
head.NormalOptions.GainGreen=50
head.NormalOptions.GainMax=50
head.NormalOptions.GainMin=0
head.NormalOptions.GainRed=50
head.NormalOptions.GlareInhibition=0
head.NormalOptions.IrisAuto=true
head.NormalOptions.Mirror=false
head.NormalOptions.Profile=0
head.NormalOptions.ReferenceLevel=50
head.NormalOptions.Rotate90=0
head.NormalOptions.SunriseHour=0
head.NormalOptions.SunriseMinute=0
head.NormalOptions.SunriseSecond=0
head.NormalOptions.SunsetHour=23
head.NormalOptions.SunsetMinute=59
head.NormalOptions.SunsetSecond=59
head.NormalOptions.SwitchMode=0
head.ReferenceLevel=50
head.ReferenceLevelEnable=false
head.Rotate90=0
head.SignalFormat=BT656
head.WhiteBalance=Disable
Comment In above table, head = table.VideoInOptions[ChannelNo]
ChannelNo = video channel index.
4.3.3 SetVideoInOptionsConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head =VideoInOptions[ChannelNo]
ChannelNo = video channel index.
For example:
Auto Exposure:
http://172.29.2.33/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].ExposureMode=0
&VideoInOptions[0].ExposureSpeed=0
Low Noice:
http://172.29.2.33/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].ExposureMode=1
&VideoInOptions[0].ExposureSpeed=0&VideoInOptions[0].GainMin=0
& VideoInOptions[0].GainMax=60
20
Low Motion Blur:
http://172.29.2.33/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].ExposureMode=2
&VideoInOptions[0].ExposureSpeed=0&VideoInOptions[0].GainMin=0
& VideoInOptions[0].GainMax=50&VideoInOptions[0].ExposureValue1=0
& VideoInOptions[0].ExposureValue2=20
Manual:
http://172.29.2.33/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].ExposureMode=4
&VideoInOptions[0].ExposureSpeed=32&VideoInOptions[0].GainMin=0
& VideoInOptions[0].GainMax=50&VideoInOptions[0].ExposureValue1=40
& VideoInOptions[0].ExposureValue2=40
Response OK or ERROR
ParamName ParamValue
type
Description
head.Backlight integer Range is [0-n]
n depends on capability in 4.3.1 GetVideoInputCaps
0 – backlight closed.
1 – backlight grade 1
…
n – backlight grade n
head.DayNightColor integer Range is {0,1,2}
0: always multicolor
1: autoswitch along with brightness,
2: always monochrome
head.ExposureMode integer Range is {0,1,2, 4}
0: AutoExposure
1: Gain first
2: Exposure first
4:Manual.
head.ExposureSpeed integer Range is [0-n+1]
n depends on capability in 4.3.1 GetVideoInputCaps
0: AutoExposure
1-n-1: manual Exposure grade
n: AutoExposure with time limit.
n+1:manualExposure with user-defined time
(n is supported maximum exposure grade )
head.ExposureValue1 float Range is [0.1-80], unit is millisecond
If ExposureSpeed is 0(AutoExposure enable), it’s lower limit of AutoExposure
time, otherwise it’s time of manualExposure
head.ExposureValue2 float Range is [0.1-80], unit is millisecond
Upper limit of AutoExposure time, should be bigger than ExposureValue1
head.ExternalSync integer Range is {0,1}
External Synchronous
21
0: Internal Synchronization
1: External Synchronous
head.ExternalSyncPhase integer Range is [0°-360°]
External Synchronous Signal Phase
head.FlashControl.Mode integer Range is {0,1,2}
0:forbid flash
1:always flash
2:auto flash
head.FlashControl.Pole integer Range is {0,1, 2, 3}
Trigger mode:
0:low level
1:high level
2: rising-edge
3:falling-edge
head.FlashControl.Value integer Range is [0-15]
Flashlight time-unit:
0 - 0us,
1 - 64us,
2 - 128us,
3 – 192us
...
15 - 960us
head.FlashControl.PreValue integer Range is [0-100]
It’s threshold of brightness value, if brightness is less than this value, flash light
begin to work.
head.Flip bool true: enable video flip function
false: disable video flip function
head.Gain integer Range is [0-100]
If GainAuto is true, it’s upper limit of auto gain, else it’s the fixed gain adjust
value.
head.GainBlue integer Range is [0-100]
Gain for blue value, Value is effective when WhiteBalance is “Custom.”
head.GainRed integer Range is [0-100]
Gain for red value, Value is effective when WhiteBalance is “Custom.”
head.GainGreen integer Range is [0-100]
Gain for green value, Value is effective when WhiteBalance is “Custom.”
head.GainAuto bool true: GainAuto
false: No GainAuto
head.IrisAuto bool true: IrisAuto
false: No IrisAuto
head.Mirror bool true: enable video mirror function
false: disable video mirror function
head.WhiteBalance String Range is {Disable, Auto, Custom, Sunny, Cloudy, Home, Office, Night}
22
White balance Mode
head.ReferenceLevel integer Range is [0-100]
The expected average brightness level of video frames.
head.Rotate90 integer Range is {0,1,2}
Video rotation:
0: No rotate
1: clockwise rotate 90°
2: anticlockwise rotate 90°
head.SignalFormat String Range is {Inside, BT656, 720p, 1080p, 1080i, 1080sF}
Input Signal Mode
head.AntiFlicker integer Range is {0,1,2}
AntiFlicker mode:
0: Outdoor
1: 50 Hz AntiFlicker
2: 60 Hz AntiFlicker
head.GlareInhibition integer Range is [0-100]
GlareInhibition:
0: Close GlareInhibition.
head.NightOptions.BrightnessThreshold integer NightOptions contain a set of parameters used when brightness is not enough.
Range is [0-100]
when brightness is less than the BrightnessThreshold, parameters change to
Nightoptions.
head.NightOptions.IrisAuto bool true: IrisAuto
false: No IrisAuto
head.NightOptions.SunriseHour integer Range is [00-23]
Sunrise hour.
head.NightOptions.SunriseMinute integer Range is [00-59]
Sunrise minute
head.NightOptions.SunriseSecond integer Range is [00-59]
Sunrise second
head.NightOptions.SunsetHour integer Sunset time. Its range is same with sunrise time, and it should be after sunrise
time.
NightOptions are used if time is after sunset time and before sunrise time.
head.NightOptions.SunsetMinute integer
head.NightOptions.SunsetSecond integer
head.NightOptions.SwitchMode integer Range is {0,1,2}
0: NoSwitch,always use day options;
1: Switch depends on brightness;
2: Switch depends on time, switch to NightOptions when time is after sunset
time and before sunrise.
3: NoSwitch,always use NightOptions;
4:No switch,always use NormalOptions.
head.NightOptions.Profile integer Range is {0,1,2,3}
0: use temporary day options;
1: use temporary NightOptions;
23
2: use temporary NormalOptions;
3:depends on head.NightOptions.SwitchMode.
head.NightOptions.ExposureSpeed integer Range is the same as relevant items of day options in this table.
Example:
Value range of head.NightOptions.ExposureSpeed is the same with
head. ExposureSpeed
head.NightOptions.ExposureValue1 float
head.NightOptions.ExposureValue2 float
head.NightOptions.Gain integer
head.NightOptions.GainAuto bool
head.NightOptions.GainBlue integer
head.NightOptions.GainGreen integer
head.NightOptions.GainRed integer
head.NightOptions.WhiteBalance String
head.NightOptions.ReferenceLevel integer
head.NightOptions.ExternalSyncPhase integer
head.NightOptions.AntiFlicker integer
head.NightOptions.Backlight integer
head.NightOptions.DayNightColor integer
head.NightOptions.ExposureMode integer
head.NightOptions.GlareInhibition integer
head.NightOptions.Mirror integer
head.NightOptions.Flip integer
head.NightOptions.Rotate90 integer
head.NomalOptions.BrightnessThreshold integer NomalOptions contain a set of parameters similar with NightOptions.
Range is the same as relevant items of NightOptions in this table.head.NormalOptions.IrisAuto bool
head.NormalOptions.SunriseHour integer
head.NormalOptions.SunriseMinute integer
head.NormalOptions.SunriseSecond integer
head.NormalOptions.SunsetHour integer
head.NormalOptions.SunsetMinute integer
head.NormalOptions.SunsetSecond integer
head.NormalOptions.ExposureSpeed integer
Head.NormalOptions.ExposureValue1 float
head.NormalOptions.ExposureValue2 float
head.NormalOptions.Gain integer
head.NormalOptions.GainAuto bool
head.NormalOptions.GainBlue integer
head.NormalOptions.GainGreen integer
head.NormalOptions.GainRed integer
head.NormalOptions.WhiteBalance String
head.NormalOptions.ReferenceLevel integer
head.NormalOptions.ExternalSyncPhase integer
head.NormalOptions.AntiFlicker integer
head.NormalOptions.Backlight integer
24
head.NormalOptions.DayNightColor integer
head.NormalOptions.ExposureMode integer
head.NormalOptions.GlareInhibition integer
head.NormalOptions.Mirror integer
head.NormalOptions.Flip integer
head.NormalOptions.Rotate90 integer
4.4 VideoEncode
4.4.1 GetVideoConfigCaps
URL Syntax http://<ip>/cgi-bin/encode.cgi?action=getConfigCaps&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Description Get video config capibilities. The description of <paramName> and <paramValue> is the same as 4.4.4
SetVideoEncodeConfig.
For example:
http://192.168.1.108/cgi-bin/encode.cgi?action=getConfigCaps&
Encode[0].MainFormat[0].Video.Width=1920&Encode[0].MainFormat[0].Video.Height=1080
Response headMain.Video.BitRateOptions=448,2560
headMain.Video.CompressionTypes=H.264,MJPG
headMain.Video.FPSMax=25
headMain.Video.ResolutionTypes=2048 x 1536,1080,SXGA, 1280 x 960,720,D1,CIF
headExtra.Video.BitRateOptions=80,448
headExtra.Video.CompressionTypes=H.264,MJPG
headExtra.Video.FPSMax=25
headExtra.Video.ResolutionTypes=D1,CIF
headSnap.Video.CompressionTypes=H.264,MJPG
headSnap.Video.ResolutionTypes=2048 x 1536,1080,SXGA, 1280 x 960,720,D1,CIF
Comment In above table:
Channel: video channel index
RecordType:
0 = regular record
1 = motion detection record
2 = alarm record
ExtraStream:
0 = extra stream 1
1 = extra stream 2
2 = extra stream 3
SnapType:
0 = regular snapshot
1 = motion detection snapshot
2 = alarm snapshot
25
Abbreviations in below table:
headMain= caps[Channel].MainFormat[RecordType]
headExtra = caps[Channel].ExtraFormat[ExtraStream]
headSnap = caps[Channel].SnapFormat[SnapType]
Field in respons Value range Description
BitRateOptions string Before comma is minimum bit rate. (kbps), after comma is maximum bit rate.(kbps)
BitRateOptions=80,448
80 is minimum bitrate, 448 is maximum.
CompressionTypes
string
It contains all supported video compression types separated by comma.
Range is {MPEG4, MPEG2, MPEG1, MJPG, H.263, H.264}
FPSMax integer Maximum FPS.
ResolutionTypes
string
It contains all supported video resolutions.
Range is in 4.4.2 Resolution.
4.4.2 Resolution
Fixed Resolution Name Size in PAL Size in NTSC
"D1" 704 x 576 704 x 480
"HD1" 352 x 576 352 x 480
"BCIF" 704 x 288 704 x 240
"CIF" 352 x 288 352 x 240
"QCIF" 176 x 144 176 x 120
"VGA" 640 x 480
"QVGA" 320 x 240
"SVCD" 480 x 480
"QQVGA" 160 x 128
"SVGA" 800 x 592
"XVGA" 1024 x 768
"WXGA" 1280 x 800
"SXGA" 1280 x 1024
"WSXGA" 1600 x 1024
"UXGA" 1600 x 1200
"WUXGA" 1920 x 1200
"ND1" 240 x 192
"720" 1280 x 720
"1080" 1920 x 1080
"1280x960" 1280 x 960 (1.3 Mega Pixels)
"1872x1408" 1872 x 1408 (2.5 Mega Pixels)
"3744x1408" 3744 x 1408 (5 Mega Pixels)
26
"2048x1536" 2048 x 1536 (3 Mega Pixels)
"2432x2048" 2432 x 2048 (5 Mega Pixels)
"1216x1024" 1216 x 1024 (1.2 Mega Pixels)
"1408x1024" 1408 x 1024 (1.5 Mega Pixels)
"3296x2472" 3296 x 2472 (8 Mega Pixels)
"2560x1920" 2560 x 1920 (5 Mega Pixels)
"960H", 960 x 576 960 x 480
"DV720P" 960 x 720
4.4.3 GetVideoEncodeConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Encode
Response headMain.Video.BitRate=8192
headMain.Video.BitRateControl=CBR
headMain.Video.Compression=H.264
headMain.Video.FPS=25
headMain.Video.GOP=50
headMain.Video.Height=1200
headMain.Video.Profile=Main
headMain.Video.Quality=4
headMain.Video.Width=1600
headMain.VideoEnable=true
headExtra.Video.BitRate=8192
headExtra.Video.BitRateControl=CBR
headExtra.Video.Compression=H.264
headExtra.Video.FPS=25
headExtra.Video.GOP=50
headExtra.Video.Height=1200
headExtra.Video.Profile=Main
headExtra.Video.Quality=4
headExtra.Video.Width=1600
headExtra.VideoEnable=true
Comment Channel: video channel index
RecordType:
0 = regular record
1 = motion detection record
2 = alarm record
ExtraStream:
0 = extra stream 1
1 = extra stream 2
2 = extra stream 3
27
Abbreviations in above table:
headMain= table.Encode[Channel].MainFormat[RecordType]
headExtra =table.Encode[Channel].ExtraFormat[ExtraStream]
4.4.4 SetVideoEncodeConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Channel: video channel index
RecordType:
0 = regular record
1 = motion detection record
2 = alarm record
ExtraStream:
0 = extra stream 1
1 = extra stream 2
2 = extra stream 3
Abbreviation in below table:
head=Encode[Channel].MainFormat[RecordType] (or)
Encode[Channel].ExtraFormat[ExtraStream]
Response OK or ERROR
ParamName ParamValue type Description
head.Video.BitRate integer Unit is Kbps
Range depends on capability in 4.4.1 GetVideoConfigCaps
head.Video.BitRateControl string Range is {CBR,VBR}
CBR: constant bitrate
VBR: variable bitrate, available when Video.Compression=H264
head.Video.Compression String Range is {MPEG4,MPEG2, MPEG1,MJPG,H.263,H.264}
Depends on capacity in 4.4.1 GetVideoConfigCaps
head.Video.FPS float Range is [0.2-30]. Frames per second.
< 1.0: several seconds/frame, FPS=0.3333: 3 seconds per frame.
>1.0: several frames/second. FPS=3: 3 frames per second.
head.Video.GOP integer Range is [1-100].
Group of picture, it’s the interval of I Frame,
Example: GOP=50, means there is one I frame every 49 P or B frames
head.Video.Height integer Video height
head.Video.Width integer Video Width
head.Video.Profile String Range is { Baseline, Main , Extended , High }
Only when video compression is H.264, it’s effective.
head.Video.Quality integer Range is [1-6].
28
Image Quality, available when Video.BitRateControl=VBR
1: worst quality
6: best quality
head.VideoEnable bool True: enable video
4.5 AudioEncode
4.5.1 GetAudioConfigCaps
URL Syntax http://<ip>/cgi-bin/encode.cgi?action=getConfigCaps
Comment The angle brackets below denotes a array
Response caps[0].ExtraFormat[0].Audio.CompressionTypes=PCM,G.711A,G.711Mu
caps[0].ExtraFormat[1]….
…
caps[0].MainFormat[0].Audio.CompressionTypes=PCM,G.711A,G.711Mu
caps[0].MainFormat[1]…
…
Field in respons Value range Description
CompressionTypes
string
It contains all supported audio compression types, separated by comma.
Range is {PCM, ADPCM, G.711A, G.711Mu, G.726, G.729, MPEG2, AMR}
4.5.2 GetAudioEncodeConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Encode
Response headMain.Audio.Bitrate=64
headMain.Audio.Compression=G.711A
headMain.Audio.Depth=16
headMain.Audio.Frequency=44000
headMain.Audio.Mode=0
headMain.AudioEnable=false
headExtra.Audio.Bitrate=64
headExtra.Audio.Compression=G.711A
headExtra.Audio.Depth=16
headExtra.Audio.Frequency=44000
headExtra.Audio.Mode=0
headExtra.AudioEnable=false
Comment Channel: video channel index
RecordType:
29
0 = regular record
1 = motion detection record
2 = alarm record
ExtraStream:
0 = extra stream 1
1 = extra stream 2
2 = extra stream 3
Abbreviations in above table:
headMain=table.Encode[Channel].MainFormat[RecordType]
headExtra=table.Encode[Channel].ExtraFormat[ExtraStream]
4.5.3 SetAudioEncodeConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Channel: video channel index
RecordType:
0 = regular record
1 = motion detection record
2 = alarm record
ExtraStream:
0 = extra stream 1
1 = extra stream 2
2 = extra stream 3
Abbreviations in below table:
head=Encode[Channel].MainFormat[RecordType] (or)
Encode[Channel].ExtraFormat[ExtraStream]
Response OK or ERROR
ParamName ParamValue type Description
head.Audio.Bitrate integer Unit is kbps
Range depends on capacity in 4.5.1 GetAudioConfigCaps
head.Audio.Compression string Range depends on capacity in 4.5.1 GetAudioConfigCaps
head.Audio.Depth integer Audio sampling depth
head.Audio.Frequency integer Audio sampling frequency
head.Audio.Mode integer Range is {0,1,2,3,4,5,6,7}
Audio encode mode.
0: 4.75kbps,
1: 5.15 kbps,
30
2: 5.9 kbps,
3: 6.7 kbps,
4: 7.4 kbps,
5: 7.95 kbps,
6: 10.2 kbps,
7: 12.2 kbps,
head.AudioEnable bool Enable/Disable audio
4.6 SnapEncode
4.6.1 GetSnapConfigCaps
URL Syntax http://<ip>/cgi-bin/encode.cgi?action=getConfigCaps
Comment Channel: video channel index
SnapType:
0 = regular snapshot
1 = motion detection snapshot
2 = alarm snapshot
Response caps[Channel].SnapFormat[SnapType].Video.CompressionTypes=H.264,MJPG
caps[Channel].SnapFormat[SnapType].Video.ResolutionTypes=3M,1080,SXGA,1_3M,720,D1,CIF
Field in respons Value range Description
CompressionTypes
string
It contains all supported video compression types separated by comma.
Range is {MPEG4, MPEG2, MPEG1, MJPG, H.263, H.264}
ResolutionTypes
string
It contains all supported video resolutions, separated by comma.
Range is {D1, HD1, BCIF, CIF, QCIF, VGA, QVGA, SVGA, XVGA, WXGA, SXGA, WSXGA, UXGA,
WUXGA, ND1,720, 1080, 1_3M, 2_5M, 3M, 5M}.
4.6.2 GetSnapEncodeConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Encode [Channel].SnapFormat
Response headSnap.Video.BitRate=384
headSnap.Video.BitRateControl=VBR
headSnap.Video.Compression=H.264
headSnap.Video.FPS=1
headSnap.Video.GOP=50
31
headSnap.Video.Height=576
headSnap.Video.Quality=4
headSnap.Video.Width=704
headSnap.VideoEnable=true
Comment Channel: video channel index
SnapType:
0 = regular snapshot
1 = motion detection snapshot
2 = alarm snapshot
Abbreviations in above table:
headSnap = table.Encode[Channel].SnapFormat[SnapType]
4.6.3 SetSnapEncodeConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Channel: video channel index
SnapType:
0 = regular snapshot
1 = motion detection snapshot
2 = alarm snapshot
Abbreviation in below table:
head= Encode[Channel].SnapFormat[SnapType]
Response OK or ERROR
ParamName ParamValue type Description
head.Video.BitRate integer Unit is Kbps
Range depends on capability in 4.3.1 GetVideoInputCaps
head.Video.BitRateControl string Range is {CBR,VBR}
CBR: constant bitrate
VBR: variable bitrate
head.Video.Compression String Range is {MPEG4,MPEG2, MPEG1,MJPG,H.263,H.264}
Depends on capacity in 4.3.1 GetVideoInputCaps
head.Video.FPS float Range is [0.2-30]. The lower limit can be reached 0.00002 with firmware 2.4 and
above.
Frames per second.
< 1.0: several seconds/frame, FPS=0.3333: 3 seconds per frame.
>1.0: several frames/second. FPS=3: 3 frames per second.
head.Video.GOP integer Range is [1-100].
Group of picture, it’s the interval of I Frame,
32
Example: GOP=50, means there is one I frame every 49 P or B frames
head.Video.Height integer Video height
head.Video.Width integer Video Width
head.Video.Quality integer Range is [1-6].
Image Quality, available when Video.BitRateControl=VBR
1: worst quality
6: best quality
head.VideoEnable bool True: enable video
4.7 ChannelTitle
4.7.1 GetChannelTitleConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=ChannelTitle
Comment Get the title of the channel.
In below table, Channel = video channel index
Response table.ChannelTitle[Channel].Name=CAM1
4.7.2 SetChannelTitleConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>
Comment Set the title of the channel.
If VideoWidget[Channel].ChannelTitle.EncodeBlend is true, this title is blended to the video frames.
Please refer to 4.8.2 SetVideoWidget
In below table, Channel : video channel index
Response OK or ERROR
ParamName ParamValue type Description
ChannelTitle[Channel].Name String Channel Name
4.8 VideoStandard
4.8.1 GetVideoStandardConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoStandard
33
Comment
Response table.VideoStandard=PAL
4.8.2 SetVideoStandardConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>
Comment
Response OK or ERROR
ParamName ParamValue type Description
VideoStandard string Range is {PAL,NTSC}
Video Standard
4.9 VideoWidget
4.9.1 GetVideoWidgetConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoWidget
Description VideoWidget config contains ChannelTitle, Covers and TimeTitle parameters, defines the background color, front color and
positions of channel title and time title, and defines the regions which are not visible (cover).
Response head.BackColor[0]=0
head.BackColor[1]=0
head.BackColor[2]=0
head.BackColor[3]=128
head.EncodeBlend=true
head.FrontColor[0]=255
head.FrontColor[1]=255
head.FrontColor[2]=255
head.FrontColor[3]=0
head.Rect[0]=0
head.Rect[1]=8191
head.Rect[2]=0
head.Rect[3]=8191
…
…
Comment Channel: video channel index
CoReg: Cover Region
Covers is an array which sustains multi- Cover regions
0 = region 1
1 = region 2
34
2 = region 3
3 = region 4
head=table.VideoWidget[Channel].ChannelTitle (or)
table.VideoWidget[Channel].Covers[CoReg] (or)
table.VideoWidget[Channel].TimeTitle
table.VideoWidget[Channel].CustomTitle[index]
4.9.2 SetVideoWidgetConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Channel: video channel index
CoReg :Cover region index
Covers is an array which contains multiple cover regions
0 = region 1
1 = region 2
2 = region 3
3 = region 4
headChannelTitle = VideoWidget[Channel].ChannelTitle
headCover = VideoWidget[Channel].Covers[CoReg]
headTimeTitle = VideoWidget[Channel].TimeTitle
headCustomTitle = VideoWidget[Channel].CustomTitle
VideoWidgetConfig contains cover region settings, channel title settings and time title settings.
The italics below will be replaced by the above abbreviations.
Response OK or ERROR
ParamName ParamValue type Description
headCover.BackColor[0]
headCover.BackColor[1]
headCover.BackColor[2]
headCover.BackColor[3]
integer Range is [0-255].
BackColor[0]:red value
BackColor[1]:green value
BackColor[2]:blue value
BackColor[3]: alpha value
headCover.EncodeBlend bool false - widget blend is disabled.
headCover.FrontColor[0]
headCover.FrontColor[1]
headCover.FrontColor[2]
headCover.FrontColor[3]
integer Range is [0-255].
FrontColor[0]:red value
FrontColor[1]:green value
FrontColor[2]:blue value
FrontColor[3]: alpha value
headCover.Rect[0]
headCover.Rect[1]
headCover.Rect[2]
integer Range is [0-8191].
Rect[0]:top left corner x coordinate (left)
Rect[1]:top left corner y coordinate (top)
35
headCover.Rect[3] Rect[2]:bottom right x coordinate (right)
Rect[3]:bottom right y coordinate (bottom)
headChannelTitle.BackColor[0]
headChannelTitle.BackColor[1]
headChannelTitle.BackColor[2]
headChannelTitle.BackColor[3]
integer Range is the same with headCover
headChannelTitle.EncodeBlend bool
headChannelTitle.FrontColor[0]
headChannelTitle.FrontColor[1]
headChannelTitle.FrontColor[2]
headChannelTitle.FrontColor[3]
integer
headChannelTitle.Rect[0]
headChannelTitle.Rect[1]
headChannelTitle.Rect[2]
headChannelTitle.Rect[3]
integer Only use the value of (left,top),the value of (right,bottom) is the same
as (left,top)
Rect[0], Rect[1] are used, and Rect[2] must be same with Rect[0],
Rect[3] must be same with Rect[1].
headTimeTitle.BackColor[0]
headTimeTitle.BackColor[1]
headTimeTitle.BackColor[2]
headTimeTitle.BackColor[3]
integer Range is the same with headChannelTitle
These are configs about time title.
headTimeTitle.EncodeBlend bool
headTimeTitle.FrontColor[0]
headTimeTitle.FrontColor[1]
headTimeTitle.FrontColor[2]
headTimeTitle.FrontColor[3]
integer
headTimeTitle.Rect[0]
headTimeTitle.Rect[1]
headTimeTitle.Rect[2]
headTimeTitle.Rect[3]
integer
headTimeTitle.ShowWeek bool True: Display week within the time title.
headCustomTitle.BackColor[0]
headCustomTitle.BackColor[1]
headCustomTitle.BackColor[2]
headCustomTitle.BackColor[3]
integer Range is the same with headCover
headCustomTitle.EncodeBlend bool
headCustomTitle.FrontColor[0]
headCustomTitle.FrontColor[1]
headCustomTitle.FrontColor[2]
headCustomTitle.FrontColor[3]
integer
headCustomTitle.Rect[0]
headCustomTitle.Rect[1]
headCustomTitle.Rect[2]
headCustomTitle.Rect[3]
integer Range is [0-8191].
Rect[0]:top left corner x coordinate (left)
Rect[1]:top left corner y coordinate (top)
Rect[2]:bottom right x coordinate (right)
Rect[3]:bottom right y coordinate (bottom).
36
PTZPreset.BackColor[0]
PTZPreset.BackColor[1]
PTZPreset.BackColor[2]
PTZPreset.BackColor[3]
integer Range is the same with headCover
PTZPreset.EncodeBlend bool
PTZPreset.FrontColor[0]
PTZPreset.FrontColor[1]
PTZPreset.FrontColor[2]
PTZPreset.FrontColor[3]
integer
PTZPreset.Rect[0]
PTZPreset.Rect[1]
PTZPreset.Rect[2]
PTZPreset.Rect[3]
integer Range is [0-8191].
Rect[0]:top left corner x coordinate (left)
Rect[1]:top left corner y coordinate (top)
Rect[2]:bottom right x coordinate (right)
Rect[3]:bottom right y coordinate (bottom).
4.10 VideoIn
4.10.1 getCollect
URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action=getCollect
Description Get video input channels
Response result=1
4.11 VideoOut
4.11.1 GetVideoOutConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoOut
Description
Response head.Margin[0]=0
head.Margin[1]=0
head.Margin[2]=0
head.Margin[3]=0
head.Color.Brightness=50
head.Color. Contrast =50
head.Color. Satuation =50
head.Color. Hue =50
head.Mode. Width =800
37
head.Mode. Height=600
head.Mode. BPP =16
head.Mode. Format =”Auto”
head.Mode. RefreshRate =60…
…
Comment head = table.VideoOut[channel].
4.11.2 SetVideoOutConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue type Description
head.Margin[0]
head.Margin[1]
head.Margin[2]
head.Margin[3]
integer Margin
head.Color.Brightness integer Brightness
head.Color.Contrast =50 integer Contrast
head.Color.Satuation =50 integer Satuation
head.Color.Hue =50 integer Hue
head.Mode.Width =800
head.Mode.Height=600
integer Resolution
head.Mode.BPP =16 integer
head.Mode.Format =”Auto” string The range is {“Auto”, “TV”, “VGA”, “DVI”}
head.Mode.RefreshRate =60 integer Refresh rate.
4.12 FlashLight
4.12.1 GetFlashLightConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=FlashLight
Description
Response head .Brightness=50
head.Enable=false
head.TimeSection[0][0]=1 00:00:00-23:59:59
head.TimeSection[0][1]=0 00:00:00-23:59:59
…
head.TimeSection[6][5]=0 00:00:00-23:59:59
38
Comment head = table.FlashLight
4.12.2 SetFlashLightConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue type Description
FlashLight.Enable bool Enable
FlashLight.Brightness integer Brightness
FlashLight.TimeSection[wd][ts] string It’s table contains effective time period for flash light everyday.
wd (week day) range is [0-6] (Sunday-Staurday)
ts (time section) range is [0-23], it’s index of timesection table.
Format: mask hh:mm:ss-hh:mm:ss
Mask: {0,1}, hh: [0-24], mm: [00-59], ss: [00-59]
Mask 0: this time section is not used.
Mask 1: this time section is used.
Example:
TimeSection[1][0]=1 12:00:00-18:00:00
Means flash light is effective between 12:00:00 and 18:00:00 at
Monday.
5. Network
5.1 NetInterfaces
5.1.1 GetInterfaces
URL Syntax http://<ip>/cgi-bin/netApp.cgi?action=getInterfaces
Comment Get all of the system network interfaces.
Description for items In below table
Name: network interface name.
“eth0” - wired network interface
“eth2” - wireless network interface
39
“3G” - 3G network interface
Type: “Normal” – wired network
“Wireless” – wireless network
"Auto", "TD-SCDMA", "WCDMA", "CDMA1x", "EDGE", "EVDO" – 3G network types.
Valid: network interface is valid if netInterface[n].Valid is true.
Response netInterface[0].Name=eth0
netInterface[0].Type=Normal
netInterface[0].Valid=true
netInterface[1]….
…
5.2 BasicConfig
5.2.1 GetBasicConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Network
Comment Basic config contains basic network parameters (Default interface, domain name, host name), and configuration of each
network interface.
interface in below table is network interface name, such as eth0, eth2…
Response table.Network.DefaultInterface=eth0
table.Network.Domain=Amcrest
table.Network.Hostname=badak
table.Network.interface.DefaultGateway=10.7.0.1
table.Network.interface.DhcpEnable=false
table.Network.interface.DnsServers[0]=221.123.33.228
table.Network.interface.DnsServers[1]=221.12.1.228
table.Network.interface.IPAddress=10.7.2.3
table.Network.interface.MTU=1500
table.Network.interface.PhysicalAddress=00:10:5c:f2:1c:b4
table.Network.interface.SubnetMask=255.255.0.0
5.2.2 SetBasicConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment interface in below table is network interface name, such as eth0, eth1…
Response OK or ERROR
ParamName ParamValue type Description
40
NetWork.DefaultInterface string Set default network interface when multiple interfaces exist.
Range of interfaces is depends on 5.1.1 GetInterfaces
NetWork.Domain string Domain name.
NetWork.Hostname string Hostname and Domain compose a network address.
Network.interface.DefaultGateway string IP address
Network.interface.DhcpEnable bool Enable/Disable DHCP.
Network.interface.DnsServers[0] string IP address of first DNS server.
Network.interface.DnsServers[1] string IP address of second DNS server.
Network.interface.IPAddress string Interface IP address.
Network.interface.MTU integer Interface MTU.
Network.interface.PhysicalAddress string MAC address of interface.
HEX string in the form of:
xx:xx:xx:xx:xx:xx.
Range of x is [0-9,a-f,A-F]
Example:
00:10:5c:f2:1c:b4
00:10:5C:F2:1C:B5
Network.interface.SubnetMask string Network mask string:
In the form of x.x.x.x, range of x is [0-255]
Example:
255.255.255.0
5.3 PPPoE
5.3.1 GetPPPoEConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=PPPoE
Comment
Response table.PPPoE.Enable=false
table.PPPoE.Password=123456
table.PPPoE.UserName=123456
5.3.2 SetPPPoEConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
41
ParamName ParamValue type Description
PPPoE.Enable bool Enable/Disable PPPoE.
PPPoE.UserName string PPPoE user name.
PPPoE.Password string PPPoE user password.
5.4 DDNS
5.4.1 GetDDNSConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=DDNS
Comment Index below is the DDNS protocol table index, start from 0.
Response table.DDNS[index].Address=www.Amcresttech.com
table.DDNS[index].Enable=true
table.DDNS[index].HostName=www.Amcresttech.com
table.DDNS[index].KeepAlive=10
table.DDNS[index].Password=none
table.DDNS[index].Port=5050
table.DDNS[index].Protocol=AMCREST
table.DDNS[index].UserName=user1
5.4.2 SetDDNSConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Index below is the DDNS protocol table index, start from 0.
Response OK or ERROR
ParamName ParamValue type Description
DDNS[index].Address string DDNS server IP address or name.
DDNS[index].Enable bool Multiple DDNS hostname can be configured, but Only one
hostname can be enabled, others should be disabled.
DDNS[index].HostName String Host name of this device.
DDNS[index].KeepAlive integer Range is [1-65535].
Unit is minutes.
DDNS[index].Password string DDNS user password
DDNS[index].Port integer Range is [1-65535].
Port of DDSN server
DDNS[index].Protocol string Range is {NO-IP DDNS, Dyndns DDNS, AMCREST}.
42
DDSN protocol type
DDNS[index].UserName string DDNS user name
5.5 Email
5.5.1 GetEmailConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Email
Comment
Response table.Email.Address=www.Amcresttech.com
table.Email.Anonymous=true
table.Email.AttachEnable=true
table.Email.AttachmentEnable=true
table.Email.Enable=true
table.Email.HealthReport.Enable=false
table.Email.HealthReport.Interval=61
table.Email.Password=123456
table.Email.Port=26
table.Email.Receivers[0]=x@Amcresttech.com
table.Email.Receivers[1]=y@Amcresttech.com
table.Email.Receivers[2]=z@Amcresttech.com
table.Email.SendAddress=x@Amcresttech.com
table.Email.SslEnable=false
table.Email.Title=DVRMessage
table.Email.UserName=anonymitty
5.5.2 SetEmailConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue type Description
Email.Address string SMTP server IP address or name.
Email.Anonymous bool Enable/Disable anonymous email.
Email.AttachEnable bool Enable/Disable email attachment
43
Email.AttachmentEnable bool Enable/Disable email attachment
Email.Enable bool Enable/Disable email function
Email.HealthReport.Enable bool Enable/Disable report device status by email.
Email.HealthReport.Interval integer Range is [30-1440].
Unit is minutes
Email.Password string User password of email account.
Email.Port integer Range is [1-65535]
Email.Receivers[0] string Email addresses of 3 receivers.
Email.Receivers[1] string
Email.Receivers[2] string
Email.SendAddress string Sender email address.
Email.SslEnable bool True: enable SSL email.
Email.Title string Title of email.
Email.UserName string User name of email account.
5.6 Wlan
5.6.1 GetWlanConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=WLan
Comment
Response table.WLan.eth2.Enable=true
table.WLan.eth2.Encryption=off
table.WLan.eth2.KeyFlag=false
table.WLan.eth2.KeyID=0
table.WLan.eth2.KeyType=Hex
table.WLan.eth2.Keys[0]=password1
table.WLan.eth2.Keys[1]=password2
table.WLan.eth2.Keys[2]=password3
table.WLan.eth2.Keys[3]=password4
table.WLan.eth2.LinkMode=Auto
table.WLan.eth2.SSID=Amcrest
5.6.2 SetWlanConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
44
Comment interface is name of wireless interface, to get all the network interfaces and their properties, refer to 5.1:NetInterfaces.
Response OK or ERROR
ParamName ParamValue type Description
WLan.interface.Enable bool True: Enable WLan on this interface.
WLan.interface.Encryption string Range is {Off, On, WEP64Bits, WEP128Bits,
WPA-PSK-TKIP, WPA-PSK-CCMP}
Encryption mode.
WLan.interface.KeyFlag bool true: key is configured.
WLan.interface.KeyID integer Range is [0-3]
Indicates which key is used.
0 : WLan.interface.Keys[0] is used.
WLan.interface.KeyType string Range is {Hex, ASCII]
WLan.interface.Keys[0] string For ASCII key type: 64bits encryption key length is 5,
128bits encryption key length is 13, consists of [0-9,
a-z, A-Z]
For HEX key type: 64bits encryption key length is 10,
128bits encryption key length is 26, consists of [0-9,
a-z, A-Z]
WLan.interface.Keys[1] string
WLan.interface.Keys[2] string
WLan.interface.Keys[3] string
WLan.interface.LinkMode string Range is {Auto, Ad-hoc, Infrastructure}.
Auto – select suitable mode automatically.
Ad-hoc – Device with wireless network adapter can
connect to each other without Access Point.
Infrastructure – Integrate wire and wireless LAN
together to share network resource, access point is
need in this mode.
WLan.interface.SSID string
5.6.3 ScanWlanDevices
URL Syntax http://<ip>/cgi-bin/wlan.cgi?action=scanWlanDevices&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Search wifi information
Response Available wifi num and detailed information, for example:
found=1
wlanDevice[0].ApConnected=0
wlanDevice[0].ApMaxBitRate=54000000
wlanDevice[0].ApNetWorkType=255
wlanDevice[0].AuthMode=7
wlanDevice[0].BSSID=28:2c:b2:5c:de:36
wlanDevice[0].EncrAlgr=3
45
wlanDevice[0].LinkMode=0
wlanDevice[0].LinkQuality=31
wlanDevice[0].RSSIQuality=0
wlanDevice[0].SSID=xia_yuguo 13098 Internet
ParamName ParamValue type Description
SSID string Specified SSID, if not include any SSID, all wifi
information will be searched and displayed.
5.7 UPnP
5.7.1 GetUPnPConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=UPnP
Comment Index in below is the UPNP map table index, start from 0.
Response table.UPnP.Enable=true
table.UPnP.MapTable[index].Enable=true
table.UPnP.MapTable[index].InnerPort=80
table.UPnP.MapTable[index].OuterPort=8080
table.UPnP.MapTable[index].Protocol=TCP
table.UPnP.MapTable[index].ServiceName=HTTP
5.7.2 SetUPnPConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Index in below table is UPNP map table index, range is [0-255]
Response OK or ERROR
ParamName ParamValue type Description
UPnP.Enable bool Enable/Disable UPNP feature.
UPnP.MapTable[index].Enable bool Enable/Disable this UPNP map.
UPnP.MapTable[index].InnerPort integer Range is [1-65535].
Inner port number
UPnP.MapTable[index].OuterPort integer Range is [1-65535].
Outer port number.
UPnP.MapTable[index].Protocol string Range is {TCP, UDP]
UPnP.MapTable[index].ServiceName string User defined UPnP service name.
46
5.7.3 GetUPnPStatus
URL Syntax http://<ip>/cgi-bin/netApp.cgi?action=getUPnPStatus
Comment Get UPNP mapping result:
result=1: mapping succeed.
result=0: mapping failed.
Response rsult=1
5.8 NTP
5.8.1 GetNTPConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=NTP
Comment
Response table.NTP.Address=clock.isc.org
table.NTP.Enable=false
table.NTP.Port=38
table.NTP.TimeZone=9
table.NTP.UpdatePeriod=31
5.8.2 SetNTPConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue type Description
NTP.Address string NTP server IP address or name.
NTP.Enable bool Enable/Disable NTP server.
NTP.Port integer Range is [1-65535].
Port of NTP server.
NTP.TimeZone integer Range is [0-32].
0: "GMT+00:00"
47
1: "GMT+01:00"
2: "GMT+02:00"
3: "GMT+03:00"
4: "GMT+03:30"
5: "GMT+04:00"
6: "GMT+04:30"
7: "GMT+05:00"
8: "GMT+05:30"
9: "GMT+05:45"
10: "GMT+06:00"
11: "GMT+06:30"
12: "GMT+07:00"
13: "GMT+08:00"
14: "GMT+09:00"
15: "GMT+09:30"
16: "GMT+10:00"
17: "GMT+11:00"
18: "GMT+12:00"
19: "GMT+13:00"
20: "GMT-01:00"
21: "GMT-02:00"
22: "GMT-03:00"
23: "GMT-03:30"
24: "GMT-04:00"
25: "GMT-05:00"
26: "GMT-06:00"
27: "GMT-07:00"
28: "GMT-08:00"
29: "GMT-09:00"
30: "GMT-10:00"
31: "GMT-11:00"
32: "GMT-12:00"
NTP.UpdatePeriod integer Range is [0-65535], unit is minutes
5.9 RTSP
5.9.1 GetRTSPConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=RTSP
Comment
48
Response table.RTSP.Enable=true
table.RTSP.Port=554
table.RTSP.RTP.EndPort=40000
table.RTSP.RTP.StartPort=20000
5.9.2 SetRTSPConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue type Description
RTSP.Enable bool Enable/Disable RTSP.
RTSP.Port integer RTSP port.
RTSP.RTP.StartPort integer RTP start port.
RTSP.RTP.EndPort integer RTP end port.
5.10 Telnet
5.10.1 GetTelnetConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Telnet
Comment
Response table.Telnet.Enable=true
5.10.2 SetTelnetConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue type Description
Telnet.Enable bool Enable/Disable Telnet.
49
6.Events
6.1 EventHandler
EventHandler is used in alarm and event config in following sections. It contains settings for actions linked with alarm and events. Actions
include record, snapshot, PTZ action, log, mail, alarm out and so on.When alarm or event happen, actions defined in alarm EventHandler and
event EventHandler are executed.
6.1.1 GetEventHandler
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=<handlerName>
Comment < handlerName> can be one of below four formats
Alarm[alarm channel].EventHandler
MotionDetect[video channel]. EventHandler
BlindDetect[video channel]. EventHandler
LossDetect[video channel]. EventHandler
LoginFailureAlarm.EventHandler
Example URL:
http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Alarm[0].EventHandler
can get EventHandler settings of alarm channel 0.
Response
handlerName.EventHandler.AlarmOutChannels[0]=1
handlerName.EventHandler.AlarmOutChannels[1]=1
…
handlerName.EventHandler.AlarmOutEnable=false
handlerName.EventHandler.AlarmOutLatch=10
handlerName.EventHandler.BeepEnable=true
handlerName.EventHandler.Dejitter=0
handlerName.EventHandler.Delay=30
handlerName.EventHandler.LogEnable=true
handlerName.EventHandler.MailEnable=true
handlerName.EventHandler.PtzLink[0][0]=None
handlerName.EventHandler.PtzLink[0][1]=0
handlerName.EventHandler.PtzLink[1][0]=None
handlerName.EventHandler.PtzLink[1][1]=0
…
handlerName.EventHandler.PtzLinkEnable=false
handlerName.EventHandler.RecordChannels[0]=1
50
handlerName.EventHandler.RecordChannels[1]=1
…
handlerName.EventHandler.RecordEnable=true
handlerName.EventHandler.RecordLatch=10
handlerName.EventHandler.SnapshotChannels[0]=1
handlerName.EventHandler.SnapshotChannels[1]=1
…
handlerName.EventHandler.SnapshotEnable=false
handlerName.EventHandler.SnapshotPeriod=3
handlerName.EventHandler.SnapshotTimes=0
handlerName.EventHandler.TimeSection[0][0]=1 01:00:00-24:00:00
handlerName.EventHandler.TimeSection[0][1]=1 01:00:00-24:00:00
…
…
handlerName.EventHandler.TimeSection[6][5]=1 01:00:00-24:00:00
handlerName.EventHandler.TipEnable=true
handlerName.EventHandler. ExAlarmOutEnable=true
handlerName. ExAlarmOutChannels[0] =2
handlerName.ExAlarmOutChannels[1]=3
…
6.1.2 SetEventHandler
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Meaning of handlerName is the same with 6.1.1 GetEventHandler
Response OK or ERROR
paramName paramValue
type
Description
handlerName.EventHandler.AlarmOutChannels[ch] integer Range is {0, 1}, ch is alarm out channel index.
0 – do not output alarm at alarm out channel ch
1 – output alarm at alarm out channel ch
handlerName.EventHandler.AlarmOutEnable bool Enable/Disable alarm out function.
handlerName.EventHandler.AlarmOutLatch Integer Range is [10-300].
Unit is seconds, indicates the time to output alarm after input alarm is
cleared.
handlerName.EventHandler.BeepEnable bool Enable/Disable beep.
handlerName.EventHandler.Dejitter integer Range is [0-255].
Alarm signal dejitter seconds. Alarm signal change during this period is
51
ignored.
handlerName.EventHandler.Delay integer Range is [0-300].
Delay seconds before setting take effect.
handlerName.EventHandler.LogEnable bool Enable/Disable log for alarm.
handlerName.EventHandler.MailEnable bool Enable/Disable mail send for alarm.
handlerName.EventHandler.PtzLink[ch][0] string Range is {None, Preset, Tour, Pattern}
This is PTZ action linked with events. ch is PTZ channel index.
handlerName.EventHandler.PtzLink[ch][1] integer This is the parameter of PtzLink[ch][0],
If PtzLink[ch]][0] is
Preset: this is preset point.
Tour: this is tour path number.
Pattern: this is pattern number.
handlerName.EventHandler.PtzLinkEnable Bool Enable/Disable PTZ link.
handlerName.EventHandler.RecordChannels[ch] Integer Range is {0, 1}
0 – do not record on video channel ch
1 – record. on video channel ch
handlerName.EventHandler.RecordEnable bool Enable/Disable record function.
handlerName.EventHandler.RecordLatch integer Range is [10-300].
Unit is seconds, indicates the time to record after input alarm is cleared..
handlerName.EventHandler.SnapshotChannels[ch] integer Range is {0, 1}
0 – do not snapshot on video channel ch
1 – snapshot on video channel ch
handlerName.EventHandler.SnapshotEnable bool Enable/Disable snapshot function.
handlerName.EventHandler.SnapshotPeriod integer Range is [0-255].
Frames between snapshot.
0 means continuously snapshot for every frame.
handlerName.EventHandler.SnapshotTimes integer Range is [0-65535]
Snapshot times before stop, 0 means don’t stop snapshot.
handlerName.EventHandler.TimeSection[wd][ts] String It’s table contains effective time period for eventHanlder everyday.
wd (week day) range is [0-6] (Sunday-Staurday)
ts (time section) range is [0-23], it’s index of timesection table.
Format: mask hh:mm:ss-hh:mm:ss
Mask: {0,1}, hh: [0-24], mm: [00-59], ss: [00-59]
Mask 0: this time section is not used.
Mask 1: this time section is used.
Example:
TimeSection[1][0]=1 12:00:00-18:00:00
Means EventHandler is effective between 12:00:00 and 18:00:00 at
Monday.
handlerName.EventHandler.TipEnable bool Enable/Disable local message box tip.
handlerName.EventHandler. ExAlarmOutEnable bool
52
handlerName. ExAlarmOutChannels[channels] integer
6.2 Alarm
6.2.1 GetAlarmConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Alarm
Comment
Response table.Alarm[0].Enable=false
table.Alarm[0].EventHandler….(output of EventHandler is described in 6.1.1 GetEventHandler)
table.Alarm[0].Name=Door1
table.Alarm[0].SensorType=NC
table.Alarm[1]….
…
6.2.2 SetAlarmConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, input is external alarm input channel, ch is channel number, wd is weekday index, ts is timesection index.
EventHandler defines parameter of relevant actions when alarm or event happens. It’s also used in following sections about
events.
Response OK or ERROR
ParamName ParamValue type Description
Alarm[input].Enable bool Enable/Disable alarm from a input channel
Alarm[input].EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
Alarm[input].Name string Name of alarm input channel.
Alarm[input].SensorType string Range is {NC, NO].
NC: normal close
NO: normal open
6.2.3 GetAlarmOutConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=AlarmOut
Comment alarmOutChannel below is the alarm out channel index.
Response table.AlarmOut[alarmOutChannel].Mode=0
53
table.AlarmOut[alarmOutChannel].Name=Beep
6.2.4 SetAlarmOutConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Port in below table is alarm out port index, start form 0.
Response OK or ERROR
ParamName ParamValue type Description
AlarmOut[port].Mode integer Range is {0, 1, 2}
0: automatically alarm
1: force alarm
2: close alarm
AlarmOut[port].Name string Alarm out port name.
6.2.5 GetInSlots
URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getInSlots
Comment Get alarm input channel number.
Below response means there are 2 alarm input channels.
Response result=2
6.2.6 GetOutSlots
URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getOutSlots
Comment Get alarm output channel number.
Response result=1
6.2.7 GetInState
URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getInStates
Comment Get alarm input state for all channels.
A bit in the response result indicates a channel alarm states, below result 3 means alarm channel 1 and channel 2 have
alarm now.
54
Response result=3
6.2.8 GetOutState
URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getOutStates
Comment Get alarm output state for all channels.
A bit in the response result indicates a channel. 1 means alarm is present.
Response result=0
6.2.9 GetChannelInState
URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getInStates&channel=<channelNo>
Comment Get alarm input state for channelNo. channelNo starts from 0, and must be less than alarm input channels obtained from
6.2.5 GetInSlots.
Result 1 means alarm is present. Result 0 means alarm is not present.
Response result=1
6.2.10 GetChannelOutState
URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getOutStates&channel=<channelNo>
Comment Get alarm output state for channelNo. channelNo starts from 0, and must be less than alarm output channels obtained
from 6.2.6 GetOutSlots .
Result 1 means alarm is present. Result 0 means alarm is not present.
Response result=0
6.3 MotionDetect
6.3.1 GetMotionDetectConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=MotionDetect
Comment MotionDetect config of a video channel contains Enable, Level, Region and EventHandler.
Response table.MotionDetect[0].Enable=false
table.MotionDetect[0].EventHandler… (output of EventHandler is described in 6.1.1 GetEventHandler)
table.MotionDetect[0].Level=3
table.MotionDetect[0].Region[0]=3932160
table.MotionDetect[0].Region[1]=3932160
55
table.MotionDetect[0].MotionDetectWindow[0].Id=0
table.MotionDetect[0].MotionDetectWindow[0].Name=Region0
table.MotionDetect[0].MotionDetectWindow[0].Sensitive=58
table.MotionDetect[0].MotionDetectWindow[0].Threshold=4
table.MotionDetect[0].MotionDetectWindow[0].Region[0]=3932160
table.MotionDetect[0].MotionDetectWindow[0].Region[1]=3932160
…
…
table.MotionDetect[1]…
…
6.3.2 SetMotionDetectConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Channel: video channel index
LineNum
Index of region, region is divided into lines and each line has several blocks, a line is described by a 32 bit integer, a bit for
a block..
0=Line 1
1=Line 2
…
…
WinNum
Index of detect window, there are 4 detect windows at present. Each window is divided into 18 lines and 22 blocks/line.
MotionDetectWindow is available with firmware 2.212 and above.
RegionIndex
It is similar with LineNum,but is beyond to a detect window.
Head = MotionDetect[Channel]
The italics below will be replaced by the above abbreviations.
Response OK or ERROR
ParamName ParamValue type Description
head.Enable bool Enable/Disable motion detect feature in a channel.
head.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
head.Level integer Range is [1-6].
Sensitivity of motion detection.
1: lowest sensitivity.
6: highest sensitivity.
head.Region[LineNum] integer Currently, region is divided into 18 lines and 22 blocks/line.
A bit describes a block in the line.
Bit = 1: motion in this block is monitored..
This filed is used to compatible with the previous firmware. It can be instead by
56
head. MotionDetectWindow[WinNum].
Example:
MotionDetect[0].Region[0] = 4194303 (0x3FFFFF):: motion in channel 0 line 0’s
22 blocks is monitored.
MotionDetect[0].Region[1] =0: motion in line 1’s 22 blocks is not monitored.
MotionDetect[0].Region[17] = 3: in the last line of channel 0, motion in the left
two blocks is monitored.
head.MotionDetectWindow
[WinNum].Id
integer It is the Id of a detect window.
head.MotionDetectWindow
[WinNum].Name
string It is the name of a detect window.
head.MotionDetectWindow
[WinNum].Sensitive
integer Range is [0-100].
It presents more sensitive if the value is larger.
head.MotionDetectWindow
[WinNum]. Threshold
integer Range is [0-100].
It presents the threshold value when trigger motion detect.
head.MotionDetectWindow
[WinNum]. Region[RegionIndex]
integer It is similar with head.Region[LineNum].
6.4 BlindDetect
6.4.1 GetBlindDetectConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=BlindDetect
Comment Channel: video channel number
head= table.BlindDetect[Channel]
Response head.Enable=false
head.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler)
head.Level=3
6.4.2 SetBlindDetectConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Channel: video channel number
head=BlindDetect[Channel]
Response OK or ERROR
ParamName ParamValue type Description
head.Enable bool Enable/Disable blind detect feature.
head.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
57
head.Level integer Range is [1-6].
Sensitivity of blind detection.
1: lowest sensitivity.
6: highest sensitivity.
6.5 LossDetect
6.5.1 GetLossDetectConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=LossDetect
Comment Channel: video channel number
head=table.BlindDetect[Channel]
Response head.Enable=false
head.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler)
6.5.2 SetLossDetectConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Channel: video channel number
Head = BlindDetect[Channel]
Response OK or ERROR
ParamName ParamValue type Description
head.Enable bool Enable/Disable loss detect feature.
head.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
6.6 LoginFailureAlarm
6.6.1 GetLoginFailureAlarmConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=LoginFailureAlarm
Comment Channel: video channel number
head=table.LoginFailureAlarm
Response head.Enable=false
head.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler)
6.6.2 SetLoginFailureAlarmConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
58
Comment Head=LoginFailureAlarm
Response OK or ERROR
ParamName ParamValue type Description
head.Enable bool Enable/Disable notify LoginFailure event.Now this event can be linked
with send email and alarm out.The max try login times can be configured
in chapter 9.1.2 SetGeneralConfig.
head.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
6.7 StorageAbnormal
6.7.1 GetStorageNotExistConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=StorageNotExist
Comment
Response StorageNotExist.Enable=false
StorageNotExist.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler)
6.7.2 SetStorageNotExistConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue type Description
StorageNotExist.Enable bool Enable/Disable loss detect feature.
StorageNotExist.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
6.7.3 Get StorageFailureConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name= StorageFailure
Comment
Response StorageFailure.Enable=false
StorageFailure.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler)
6.7.4 Set StorageFailureConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
59
Comment
Response OK or ERROR
ParamName ParamValue type Description
StorageFailure.Enable bool Enable/Disable loss detect feature.
StorageFailure.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
6.7.5 GetStorageLowSpaceConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name= StorageLowSpace
Comment
Response StorageLowSpace.Enable=false
StorageLowSpace.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler)
6.7.6 SetStorageLowSpaceConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue type Description
StorageLowSpace.Enable bool Enable/Disable loss detect feature.
StorageLowSpace.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
6.8 NetAbnormal
6.8.1 GetNetAbortConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name= NetAbort
Comment
Response NetAbort.Enable=false
NetAbort.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler)
6.8.2 SetNetAbortConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
60
Comment
Response OK or ERROR
ParamName ParamValue type Description
NetAbort.Enable bool Enable/Disable loss detect feature.
NetAbort.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
6.8.3 GetIPConflictConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name= IPConflict
Comment
Response IPConflict.Enable=false
IPConflict.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler)
6.8.4 SetIPConflictConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue type Description
IPConflict.Enable bool Enable/Disable loss detect feature.
IPConflict.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
6.9 GetEventIndexes
URL Syntax http://<ip>/cgi-bin/eventManager.cgi?action=getEventIndexes&code=<eventCode>
Comment Get channels indexes that event of code eventCode happens.
eventCode includes:
VideoMotion: motion detection event
VideoLoss: video loss detection event
VideoBlind: video blind detection event.
AlarmLocal: alarm detection event.
Response channels[0]=0
channels[1]=2
channels[2]=3
61
…
(This response means event happened on channel 0, channel 2, and channel 3.)
6.10 Attach
URL Syntax http://<ip>/cgi-bin/eventManager.cgi?action=attach&codes=[<eventCode>,<eventCode> ,…]
Comment Get channels indexes that event of code eventCode happens.
eventCode includes:
VideoMotion: motion detection event
VideoLoss: video loss detection event
VideoBlind: video blind detection event.
AlarmLocal: alarm detection event.
CrossLineDetection: tripwire event
CrossRegionDetection: intrusion event
LeftDetection: abandoned object detection
TakenAwayDetection: missing object detection
VideoAbnormalDetection: scene change event
FaceDetection: face detect event
AudioMutation: intensity change
AudioAnomaly: input abnormal
VideoUnFocus: defocus detect event
WanderDetection: loitering detection event
RioterDetection: People Gathering event
ParkingDetection: parking detection event
MoveDetection: fast moving event
MDResult: motion detection data reporting event. The motion detect window contains 18 rows and 22 columns. The
event info contains motion detect data with mask of every row.
Response HTTP Code: 200 OKrn
Cache-Control: no-cachern
Pragma: no-cachern
Expires: Thu, 01 Dec 2099 16:00:00 GMTrn
Connection: closern
Content-Type: multipart/x-mixed-replace; boundary=<bondary>rn
Body:
--<bondary>rn
Content-Type: text/plainrn
Content-Length: <data length>rn
<eventInfo>rnrn
--<bondary>rn
Content-Type: text/plainrn
Content-Length: <data length>rn
<eventInfo>rnrn
62
For example:
HTTP Code: 200 OKrn
Cache-Control: no-cachern
Pragma: no-cachern
Expires: Thu, 01 Dec 2099 16:00:00 GMTrn
Connection: closern
Content-Type: multipart/x-mixed-replace; boundary=myboundaryrnrn
Body:
-- myboundary rn
Content-Type: text/plainrn
Content-Length: 39rn
Code=VideoMotion;action=Start;index=0rnrn
-- myboundary rn
Content-Type: text/plainrn
Content-Length: 38rn
Code=VideoBlind;action=Start;index=0rnrn
-- myboundary rn
Content-Type: text/plainrn
Content-Length: 38rn
Code= AlarmLocal;action=Start;index=0rnrn
-- myboundary rn
Content-Type: text/plainrn
Content-Length: 38rn
Code= MDResult;action=Pulse;index=0;data=61708863,61708863…rnrn
-- myboundary rn
…
7. PTZ
7.1 PTZConfig
7.1.1 GetPTZConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Ptz
Comment Port in below table is PTZ port index, start form 0.
Response table.Ptz[port].Address=8
table.Ptz[port].Attribute[0]=115200
table.Ptz[port].Attribute[1]=8
table.Ptz[port].Attribute[2]=Even
63
table.Ptz[port].Attribute[3]=1
table.Ptz[port].Homing[0]=0
table.Ptz[port].Homing[1]=30
table.Ptz[port].NumberInMatrixs=0
table.Ptz[port].ProtocolName=NONE
7.1.2 SetPTZConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Port in below table is PTZ port index, start form 0.
Response OK or ERROR
ParamName ParamValue type Description
Ptz[port].Address integer Range is [0-255].
Device address, if there are more than one device connected to
this port, distinguish them by this address.
Ptz[port].Attribute[0] integer Range is {1200, 2400 ,4800, 9600, 19200, 38400, 57600,
115200}.
Baudrate
Ptz[port].Attribute[1] integer Range is {4, 5, 6, 7, 8}.
Data bit.
Ptz[port].Attribute[2] string Range is {Even, Mark, None, Odd, Space}.
Parity verification mode.
Ptz[port].Attribute[3] float Range is {1, 1.5, 2}.
Stop bit.
Ptz[port].Homing[0] integer Range is {-1,0-255}
-1: homing is disabled.
[0-255]: preset point number
Ptz[port].Homing[1] integer Range is [0-65535].
No operation timeout, unit is seconds.
After no operation timeout, PTZ go to preset point set in
Ptz[port].Homing[0].
Ptz[port].ProtocolName string PTZ protocol name, depends on PTZ capability,
refer to 7.2.1 GetProtocolList to get the protocol list.
64
7.2 PTZControl
7.2.1 GetProtocolList
URL Syntax http://<ip>/cgi-bin/ptz.cgi?action=getProtocolList
Comment Get PTZ protocol list.
Response contains all support PTZ protocols separated by comma.
Response result=NONE,AD1641M,ADMATRIX,BANKNOTE,DH-CC440,DH-MATRIX,DH-SD1,DH-SD2,HAIYU,HY,LILIN,PANASONIC
7.2.2 GetCurrentProtocolCaps
URL Syntax http://<ip>/cgi-bin/ptz.cgi?action=getCurrentProtocolCaps&channel=<channelNo>
Comment Get PTZ protocol list, channelNo is PTZ channel index.
Response caps.AlarmLen=0
caps.AuxMax=8
caps.AuxMin=1
caps.CamAddrMax=255
caps.CamAddrMin=1
caps.Interval=200
caps.Menu=false
caps.MonAddrMax=255
caps.MonAddrMin=0
caps.Name=DH-SD1
caps.PanSpeedMax=255
caps.PanSpeedMin=1
caps.PatternMax=5
caps.PatternMin=1
caps.PresetMax=80
caps.PresetMin=1
caps.TileSpeedMax=255
caps.TileSpeedMin=1
caps.TourMax=7
caps.TourMin=0
caps.Type=1
Field in response Description
AlarmLen Alarm length in protocol
AuxMax Maximum/Minimum number for auxiliary functions
65
AuxMin
CamAddrMax Maximum/Minimum channel address
CamAddrMin
Menu True or false, support internal menu of the PTZ or not,
MonAddrMax Maximum/Minimum monitor address
MonAddrMin
Name Name of the operation protocol
PanSpeedMax Maximum/Minimum pan speed.
PanSpeedMin
PatternMax Maximum/Minimum pattern path number.
PatternMin
PresetMax Maximum/Minimum preset point number.
PresetMin
TileSpeedMax Maximum/Minimum tile speed.
TileSpeedMin
TourMax Maximum/Minimum tour path number.
TourMin
Type Type of PTZ protocol.
7.2.3 PTZ control commands
URL Syntax http://<ip>/cgi-bin/ptz.cgi?action=[action]&channel=[ch]&code=[code]&arg1=[argstr]& arg2=[argstr]&arg3=[argstr]
Comment This URL is used to start/stop PTZ control command.
action is PTZ control command, it can be start or stop.
ch is PTZ channel range is [0 - n-1], code is PTZ operation, and arg1, arg2, arg3 is the arguments of operation.
Code and argstr values are listed in below table.
Response OK or ERROR
Code Code description arg1 arg2 arg3 arg4
Up Tile up 0 Vertical speed,
range is [1-8]
0 0
Down Tile down 0 Vertical speed,
range is [1-8]
0 0
Left Pan left 0 Vertical speed,
range is [1-8]
0 0
Right Pan right 0 Vertical speed,
range is [1-8]
0 0
ZoomWide Zoom out 0 multiple 0 0
ZoomTele Zoom in 0 multiple 0 0
FocusNear Focus near 0 multiple 0 0
FocusFar Focus far 0 multiple 0 0
66
IrisLarge Aperture larger 0 multiple 0 0
IrisSmall Aperture smaller 0 multiple 0 0
GotoPreset Go to PTZ preset point 0 Preset point
number
0 0
SetPreset Set PTZ preset point 0 Preset point
number
0 0
ClearPreset Clear PTZ preset point 0 Preset point
number
0 0
LampWaterClear 1: open
2: close
0 0 0
StartTour Start PTZ tour Tour path
number
0 1: start
2: automatically
3: stop
0
LeftUp Pan left and tile up Vertical speed,
range is [1-8]
Horizontal speed,
range is [1-8]
0 0
RightUp Pan right and tile up Vertical speed,
range is [1-8]
Horizontal speed,
range is [1-8]
0 0
LeftDown Pan left and tile down Vertical speed,
range is [1-8]
Horizontal speed,
range is [1-8]
0 0
RightDown Pan right and tile down Vertical speed,
range is [1-8]
Horizontal speed,
range is [1-8]
0 0
AddTour Add preset point to tour path Tour path
number
Preset point
number
0 0
DelTour Delete preset point from tour
path
Tour path
number
Preset point
number
0 0
ClearTour Clear tour path Tour path
number
0 0 0
AutoPanOn Start pan rotate 0 0 0 0
AutoPanOff Stop pan rotate 0 0 0 0
SetLeftLimit Set left limit. 0 0 0 0
SetRightLimit Set right limit. 0 0 0 0
AutoScanOn Start auto scan. 0 0 0 0
AutoScanOff Stop auto scan. 0 0 0 0
SetPatternBegin Begin pattern path set. Pattern number 0 0 0
SetPatternEnd End pattern path set. Pattern number 0 0 0
StartPattern Run pattern path Pattern number 0 0 0
StopPattern Stop pattern path Pattern number 0 0 0
ClearPattern Clear pattern path Pattern number 0 0 0
AlarmSearch Search alarm. 0 0 0 0
Position Go to position Horizontal
position
Vertical position Zoom change 0
AuxOn Auxiliary function on, auxiliary
function is defined in product
0 0 0 0
67
definition document.
AuxOff Auxiliary function off 0 0 0 0
Menu 0 0 0 0
Exit 0 0 0 0
Enter 0 0 0 0
Esc 0 0 0 0
MenuUp 0 0 0 0
MenuDown 0 0 0 0
MenuLeft 0 0 0 0
MenuRight 0 0 0 0
Reset Restore default configuration. 0 0 0 0
SetPresetName Preset point
number (1 byte)
Preset point title. 0 0
AlarmPtz Alarm linked PTZ. External alarm
input channel.
Link type:
1: go to preset
point
2: auto scan
3: tour
Argument of link
type:
Link type = 1,
this is preset point
number
Link type = 2,
this is auto scan
path
Link type = 3,
this is tour path
0
LightController Control the light on/off. Address of light
controller
Light number switch 0
PositionABS Go to ABS position Horizontal angle:
0°-360°
Vertical
angle :0°-90°
Zoom in mutiple Speed[1-8], not
must
PositionReset Use current direction as
reference.
0 0 0 0
UpTele up + TELE Speed [1-8] 0 0 0
DownTele down + TELE Speed [1-8] 0 0 0
LeftTele left + TELE Speed [1-8] 0 0 0
RightTele right + TELE Speed [1-8] 0 0 0
LeftUpTele leftup + TELE Speed [1-8] 0 0 0
LeftDownTele leftdown + TELE Speed [1-8] 0 0 0
RigjtUpTele rightup + TELE Speed [1-8] 0 0 0
RightDownTele rightdown + TELE Speed [1-8] 0 0 0
UpWide up + WIDE Speed [1-8] 0 0 0
DownWide down + WIDE Speed [1-8] 0 0 0
LeftWide left + WIDE Speed [1-8] 0 0 0
RightWide right + WIDE Speed [1-8] 0 0 0
LeftUpWide leftup + WIDE Speed [1-8] 0 0 0
LeftDownWide leftdown + WIDE Speed [1-8] 0 0 0
68
RightUpWide rightup + WIDE Speed [1-8] 0 0 0
RightDownWide rightdown + WIDE Speed [1-8] 0 0 0
Continuously
Move Continuously
Horizontal Speed
[-8-8]
Vertical Speed
[-8-8]
Zoom Speed [-8-8] Timeout
Relatively
Move Relatively
Relatively angle:
0°-360°
Relatively
angle :0°-90°
Relatively Zoom
7.3 PTZStatus
7.3.1 PTZ GetStatus
URL Syntax http://<ip>/cgi-bin/ptz.cgi?action=getStatus
Comment This URL is used to get PTZStatus.
Response status.UTC=6538920
status.MoveStatus=Idle
status.ZoomStatus=Idle
status.PresetID=10
status.Position=120,12,2
8. RecordSnap
8.1 Record
8.1.1 GetRecordConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Record
Comment Channel in below table is video channel number, weekday range is [0-6] (Sunday - Saturday).
Record config contains pre record time and record time sections of every day.
Response table.Record[channel].PreRecord=6
table.Record[channel].HolidayEnable=true
table.Record[channel].TimeSection[weekday][0]=1 00:00:00-24:00:00
table.Record[channel].TimeSection[weekday][1]=0 02:00:00-24:00:00
table.Record[channel].TimeSection[weekday][2]=0 03:00:00-24:00:00
table.Record[channel].TimeSection[weekday][3]=0 04:00:00-24:00:00
table.Record[channel].TimeSection[weekday][4]=0 05:00:00-24:00:00
table.Record[channel].TimeSection[weekday][5]=0 06:00:00-24:00:00
69
8.1.2 SetRecordConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table: ch = channel index, wd = week day index, ts = time section index
Response OK or ERROR
ParamName ParamValue type Description
Record[ch].PreRecord integer Range is [0-300].
Prerecord seconds, 0 means no prerecord.
ch (Channel number) starts form 0
Record[ch]. HolidayEnable bool Record or not when a day is a holiday setted is chapter 8.4 Holiday.
Record[ch].TimeSection[wd][ts] string wd (week day) range is [0-6] (Sunday - Staurday)
ts (time section) range is [0-23], timesection table index.
Format: mask hh:mm:ss-hh:mm:ss
Mask: [0-65535], hh: [0-24], mm: [0-59], ss: [0-59]
Mask indicates record type by bits:
Bit0: regular record
Bit1: motion detection record
Bit2: alarm record
Bit3: card record
Example:
Set record time to every Sunday all day. Record type is motion detection and alarm.
URL should be:
http://<ip>/cgi-bin/configManager.cgi?action=setConfig&name=Record[0].TimeSection[0][0]&table=6 00:00:00-24:00:00
In this example, “6 00:00:00-24:00:00” means motion detection and alarm record all day (6 = 4 & 2, alarm is 4, motion detection is 2.).
8.1.3 GetRecordModeConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=RecordMode
Comment Get record mode for video channels. channel in below table is video channel number.
Response table.RecordMode[channel].Mode=0
8.1.4 SetRecordModeConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment channel in below table is video channel index, start form 0.
70
Response OK or ERROR
ParamName ParamValue type Description
RecordMode[channel].Mode integer Range is {0, 1, 2}.
0: automatically record
1: manually record
2: stop record.
8.2 Snap
8.2.1 GetSnapConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Snap
Comment Channel in below table is video channel number, weekday range is [0-6] (Sunday - Saturday).
Response table.Snap [channel].HolidayEnable=true
table.Snap[channel].TimeSection[weekday][0]=1 00:00:00-24:00:00
table.Snap[channel].TimeSection[weekday][1]=0 02:00:00-24:00:00
table.Snap[channel].TimeSection[weekday][2]=0 03:00:00-24:00:00
table.Snap[channel].TimeSection[weekday][3]=0 04:00:00-24:00:00
table.Snap[channel].TimeSection[weekday][4]=0 05:00:00-24:00:00
table.Snap[channel].TimeSection[weekday][5]=0 06:00:00-24:00:00
8.2.2 SetSnapConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table: ch = channel index, wd = week day index, ts = time section index
Response OK or ERROR
ParamName ParamValue type Description
Snap [ch].HolidayEnable bool Snap or not when a day is a holiday setted is chapter 8.4 Holiday.
Snap[ch].TimeSection[wd][ts] string wd (week day) range is [0-6] (Sunday- Staurday)
ts (time section) range is [0-23], it’s timesection table index.
Format: mask hh:mm:ss-hh:mm:ss
Mask: [0-65535], hh: [0-24], mm: [0-59], ss: [0-59]
Mask indicates record type by bits:
Bit0: regular snapshot
71
Bit1: motion detection snapshot
Bit2: alarm snapshot
Bit3: card snapshot
8.2.3 attachFileProc
URL Syntax http://<ip>/cgi-bin/snapManager.cgi?action=attachFileProc&Flags[0]=Event&Events=[<eventCode>,<eventCode> ,…]
Comment Get channels indexes that event of code eventCode happens.
Flag[0]:Event
eventCode includes:
All: all event.
VideoMotion: motion detection event
VideoLoss: video loss detection event
VideoBlind: video blind detection event.
AlarmLocal: alarm detection event.
All intelligent event include CrossLineDetection,..eg
Response <Jpeg data>
8.3 MediaGlobal
8.3.1 GetMediaGlobalConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=MediaGlobal
Description
Response table.MediaGlobal.SnapFormatAs=MainFormat
8.3.2 SetMediaGlobalConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment It presents obtaining snap stream from Main stream or extra stream.
Response OK or ERROR
ParamName ParamValue type Description
MediaGlobal.SnapFormatAs string The range is {“MainFormat”, “ExtraFormat”}
72
8.4 Holiday
8.4.1 GetHolidayConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Holiday
Description Get holiday config for record or snap.
Response table.Holiday.MonthMask[0]=3
table.Holiday.MonthMask[1]=0
table.Holiday.MonthMask[2]=0
table.Holiday.MonthMask[3]=0
table.Holiday.MonthMask[4]=0
table.Holiday.MonthMask[5]=0
table.Holiday.MonthMask[6]=0
table.Holiday.MonthMask[7]=0
table.Holiday.MonthMask[8]=0
table.Holiday.MonthMask[9]= 1610612739
table.Holiday.MonthMask[10]=0
table.Holiday.MonthMask[11]=0
8.4.2 SetHolidayConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment monthIndex presents the index of a month. 0 presents January, 1 presents February, 11 presents December.
Response OK or ERROR
ParamName ParamValue type Description
Holiday.MonthMask[monthIndex] integer It is the mask of a month.Every bit present a day. For example, 0x0001
presents the first day of a month is holiday.0x0002 presents the second
day of a month is holiday, 0x0003 presents the first day and second day
of a month is holiday.
73
9. System
9.1 General
9.1.1 GetGeneralConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=General
Comment
Response table.General.MachineName=Amcrest001
table.General. LocalNo=8
table.General. MachineAddress=”binjiangqv jiangnandadao weiyelu”
table.General. MachineGroup=”jiaojing yidui
table.General.LockLoginEnable=true
table.General.LockLoginTimes=3
table.General.LoginFailLockTime=1800
9.1.2 SetGeneralConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue type Description
General.MachineName string Device name or serial number.
General. LocalNo integer
General. MachineAddress string
General. MachineGroup string
General. LockLoginEnable bool Whether support lock login times setting.
General. LockLoginTimes integer Max try times of login failed, when exceeding the
times the device will be locked and alarm.
General. LoginFailLockTime integer Lock login seconds.
74
9.2 SystemTime
9.2.1 GetCurrentTime
URL Syntax http://<ip>/cgi-bin/global.cgi?action=getCurrentTime
Comment The time format is "Y-M-D H-m-S". It’s not be effected by Locales.TimeFormat in 9.3.2 SetLocalesConfig.
Response result = 2011-7-3 21:02:32
9.2.2 SetCurrentTime
URL Syntax http://<ip>/cgi-bin/global.cgi?action=setCurrentTime&time=2011-7-3%2021:02:32
Comment The time format is "Y-M-D H-m-S". It’s not be effected by Locales.TimeFormat in 9.3.2 SetLocalesConfig.
Response OK or ERROR
9.3 Locales
9.3.1 GetLocalesConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Locales
Comment
Response table.Locales.DSTEnable=false
table.Locales.DSTEnd.Day=1
table.Locales.DSTEnd.Hour=0
table.Locales.DSTEnd.Minute=0
table.Locales.DSTEnd.Month=1
table.Locales.DSTEnd.Week=2
table.Locales.DSTEnd.Year=2011
table.Locales.DSTStart.Day=0
table.Locales.DSTStart.Hour=0
table.Locales.DSTStart.Minute=0
table.Locales.DSTStart.Month=1
table.Locales.DSTStart.Week=1
table.Locales.DSTStart.Year=2011
table.Locales.TimeFormat=yyyy-MM-dd HH:mm:ss
75
9.3.2 SetLocalesConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue
type
Description
Locales.DSTEnable bool Enable/Disable DST (daylight saving time)
Locales.DSTEnd.Day integer Range is [0-6] or [1-31]
[0-6]: week day, 0 = Sunday, 6 = Saturday
[1-31]: month day
If Locales.DSTEnd.Week is 0, use month day, otherwise, use week day.
Locales.DSTEnd.Hour integer Range is [0-23]
Locales.DSTEnd.Minute integer Range is [0-59]
Locales.DSTEnd.Month integer Range is [1-12]
Locales.DSTEnd.Week Integer Range is {1,2,3,4,-1,0}.
0 = Use month day
[1,2,3,4,-1]: use week day.
1 = first week, 2 = second, 3 = third, 4 = fourth, -1 = last.
Locales.DSTEnd.Year Integer Range is [2000-2038]
Locales.DSTStart.Day Range is the same with items in Locales.DSTEnd
Locales.DSTStart table and Locales.DSTEnd table together defines the
time range of DST.
Locales.DSTStart.Hour
Locales.DSTStart.Minute
Locales.DSTStart.Month
Locales.DSTStart.Week
Locales.DSTStart.Year
Locales.TimeFormat string Defines time format displayed in video time title.
String form is: year-month-day hour:mm:ss.
Position of year, month and day can be exchanged.
Range of year is {yy, yyyy}
yy = year without century, yyyy = year with century.
Range of month is {M, MM, MMMM}
M = 1 for January, MM = 01 for January, MMMM = Jan for January
Range of day is {d, dd}
d = 1 for first day, dd = 01 for first day
Range of hour is {H, HH, h, hh}
H = 1 for 1:00, HH = 01 for 1:00, range is 0-23
h = 1 for 1:00, hh = 01 for 1:00, time range is 1-12
76
Example:
yyyy-MM-dd HH:mm:ss or
MM-dd-yyyy HH:mm:ss or
dd-M-yy hh:mm:ss
9.4 Language
9.4.1 GetLanguageCaps
URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getLanguageCaps
Comment Get the list of supported languages, response is a string contains languages with comma separated.
Languages include
{English, SimpChinese, TradChinese, Italian, Spanish, Japanese, Russian, French, German]
Response Languages=SimpChinese,English,French
9.4.2 GetLanguageConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Language
Comment Get current system language cofnig.
Response table.Language=SimpChinese
9.4.3 SetLanguageConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment NOTE: After changing language setting, system will automatically reboot!
Response OK or ERROR
ParamName ParamValue type Description
Language string The language range is get from interface in 9.3.1 GetLanguageCaps
77
9.5 AccessFilter
9.5.1 GetAccessFilterConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=AccessFilter
Comment bannedIndex below is the banned IP list index,
trustIndex below is the trust IP list index.
Response table.AccessFilter.BannedList[bannedIndex]=10.6.10.1
table.AccessFilter. TrustList[trustIndex]=1.2.3.4
table.AccessFilter.Enable=false
table.AccessFilter.Type=BannedList
9.5.2 SetAccessFilterConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment Range of index in below table is [0-255]
Response OK or ERROR
ParamName ParamValue type Description
AccessFilter.BannedList[index] string Banned IP address list
AccessFilter.TrustList[index] string Trusted IP address list
AccessFilter.Enable bool Enable/Disable access filter function
AccessFilter.Type string Range is {TrustList, BannedList},
TrustList: Turst list is used, banned list is not used.
BannedList: Banned list is used, turst list is not used.
9.6 AutoMaintain
9.6.1 GetAutoMaintainConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=AutoMaintain
Comment
Response table.AutoMaintain. AutoRebootDay=3
table.AutoMaintain. AutoRebootHour=0
78
table.AutoMaintain. AutoRebootMinute=0
table.AutoMaintain. AutoShutdownDay=1
table.AutoMaintain. AutoShutdownHour=0
table.AutoMaintain. AutoShutdownMinute=0
table.AutoMaintain. AutoStartUpDay=1
table.AutoMaintain. AutoStartUpHour=2
table.AutoMaintain. AutoStartUpMinute=0
9.6.2 SetAutoMaintainConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment
Response OK or ERROR
ParamName ParamValue
type
Description
AutoMaintain. AutoRebootDay integer Range is [-1-7].
Auto restart day.
-1 = never auto restart
0- 6 = Sunday-Saturday
7 = restart every day
AutoMaintain. AutoRebootHour integer Range is [0-23].
Auto restart hour
AutoMaintain. AutoRebootMinute integer Range is [0-59].
Auto restart minute
AutoMaintain. AutoShutdownDay integer Auto reboot time.
Range is same with AutoOpenDay, AutoOpenHour, AutoOpenMinute.AutoMaintain. AutoShutdownHour
AutoMaintain. AutoShutdownMinute
AutoMaintain. AutoStartUpDay integer Auto shutdown time.
Range is same with AutoOpenDay, AutoOpenHour, AutoOpenMinute.AutoMaintain. AutoStartUpHour
AutoMaintain. AutoStartUpMinute
79
9.7 UserManager
9.7.1 Group
There are two user groups: “admin” and “user”. The “admin” group has all the authorities of operating the IP Camera. The “user” group
only has monitor and replay authorities.
9.7.2 GetGroupInfo
URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=getGroupInfo&name=<groupName>
Comment Get group setting with name groupName.
The range of groupName is: “admin” and “user”.
Response group.Name=admin
group.Memo=administrator group
goup. AuthorityList=<authList>
9.7.3 GetGroupInfoAll
URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=getGroupInfoAll
Comment Get information of all groups.
Response group[0].Name=admin
group[0].Memo=administrator group
group[0]. AuthorityList=<authList>
group[1].Name=user
group[1].Memo=user group
group[1]. AuthorityList=<authList>
group[2]….
9.7.4 AddUser
URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=addUser&
user.Name=<userName>&
user.Password=<userPassword>&
user.Memo=<userMemo>&
user.Group=<userGroup>&
user.Reserved=<userReserved>&
user.Sharable=<userSharable>
80
user.AuthList=<authList>
Comment user.Group: string, the range is “admin” and “user”. In different group, the user has different authorities.
user.Sharable: bool, true means allow multi-point login.
User.Reserved: bool, true means this user can’t be deleted.
User.AuthList;.
For example:
Add a user of name operator, password 123456, belongs to group user, and allow multi-point login.
http://<ip>/cgi-bin/userManager.cgi?action=addUser&user.Name=operator&user.Password=123456&user.Group=user&us
er.Sharable=true&user.Reserved=false&user.AuthList= CtrlPanel,ShutDown, Record,Backup
Response OK or ERROR
9.7.5 DeleteUser
URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=deleteUser&name=<userName>
Comment Delete user with name username.
Response OK or ERROR
9.7.6 ModifyUser
URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=modifyUser&
name=<oldUserName>&
user.Name=<userName>&
user.Password=<userPassword>&
user.Memo=<userMemo>&
user.Group=<userGroup>&
user.Reserved=<userReserved>&
user.Sharable=<userSharable>
user.AuthList=<authList>
Comment Value range of parameters in <> is the same with 9.7.4 AddUser
Response OK or ERROR
9.7.7 ModifyPassword
URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=modifyPassword&name=<username>&pwd=<newPwd>&pwdOld=<oldPwd>
Comment Modify user password, old password oldPwd should be supplied, new password is newPwd.
Response OK or ERROR
81
9.7.8 GetUserInfo
URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=getUserInfo&name=<userName>
Comment Get use information with name userName
Response user.Name=admin
user.Memo=admin 's account
user.Group=admin
user.Reserved=true
user.Sharable=true
user. AuthList=<authList>
9.7.9 GetUserInfoAll
URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=getUserInfoAll
Comment Get information of all users.
Response users[0].Group=admin
users[0].Id=1
users[0].Memo=admin 's account
users[0].Name=admin
users[0].Reserved=true
users[0].Sharable=true
users[0]. AuthList=<authList>
users[1].Group=admin
…
9.7.10 GetActiveUserInfoAll
URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=getActiveUserInfoAll
Comment Get active users.
Response users[0].name=admin
users[0].ip=10.43.2.16
users[0].group=admin
users[0].clienttype=web3.0
users[0].logintime=2011-11-08 09:51:03
82
9.8 System Operation
9.8.1 Reboot
URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=reboot
Comment Reboot the device. If successful, response OK. If fail, response ERROR.
Response OK or ERROR
9.8.2 Shutdown
URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=shutdown
Comment Shutdown the device. If successful, response OK. If fail, response ERROR.
Response OK or ERROR
9.8.3 GetDeviceType
URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getDeviceType
Comment Get the device type.
Response type=IPC-HF3300
9.8.4 GetHardwareVersion
URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getHardwareVersion
Comment Get the device hardware version
Response version=1.00
9.8.5 GetSerialNo
URL Syntax http://<ip> /cgi-bin/magicBox.cgi?action=getSerialNo
Comment Get the device serial number
Response sn=YZC0GZ05100020
9.8.6 GetMachineName
URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getMachineName
Comment Get the device machine name.
83
Response name=YZC0GZ05100020
9.8.7 GetSystemInfo
URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getSystemInfo
Comment Get the system information.
Response serialNumber=YZC0GZ05100020
deviceType=IPC-HF3300
hardwareVersion=1.00
9.8.8 GetVendor
URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getVendor
Comment Get the vendor information.
Response vendor=Amcrest
9.8.9 GetSoftwareVersion
URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getSoftwareVersion
Comment Get software information.
Response version=2.212.0000.0.R,build:2013-11-14
9.8.10 GetOnvifVersion
URL Syntax http://<ip>/cgi-bin/intervideoManager.cgi?action=getOnvifVersion
Comment Get onvif version information.
Response version=2.4.1
9.9 Log
9.9.1 StartFind
URL Syntax http://<ip>/cgi-bin/log.cgi?action=startFind&condition.StartTime=<start>&condition.EndTime=<end>
Comment Start to find log, in response, there is a token for further log finding process.
start/end: the start/end time of log. Format is: yyyy-mm-dd hh:mm:ss.
Example:
Find log between 2011-1-1 12:00:00 and 2011-1-10 12:00:00, URL is:
http://<ip>/cgi-bin/log.cgi?action=startFind&condition.StartTime=2011-1-1 12:00:00
84
&condition.EndTime=2011-1-10 12:00:00
Response token=1
9.9.2 DoFind
URL Syntax http://<ip>/cgi-bin/log.cgi?action=doFind&token=<tokenValue>&count=<logCount>
Comment Find log with token tokenValue and count logCount
tokenValue is get by startFind in above section, logCount is the count of logs for this query.
The maximum value of logCount is 100.
Response found=2
items[0].RecNo=789
items[0].Time=2011-05-20 11:59:10
items[0].Type=ClearLog
items[0].User=admin
items[1].Detail.Compression=H.264->MJPG
items[1].Detail.Data=Encode
items[1].RecNo=790
items[1].Time=2011-05-20 11:59:21
items[1].Type=SaveConfig
items[1].User=System
…
Field in Response Description
found Count of found log, found is 0 if no log is found.
User User name
Type Log type
Time Time of this log
RecNo Log number.
Detail Log details.
9.9.3 StopFind
URL Syntax http://<ip>/cgi-bin/log.cgi?action=stopFind&token=<tokenValue>
Comment Stop query log by token tokenValue
Response OK or ERROR
85
9.9.4 Clear
URL Syntax http://<ip>/cgi-bin/log.cgi?action=clear
Comment Clear all the logs.
Response OK or ERROR
9.10 UserGlobal
9.10.1 GetUserGlobalConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=UserGlobal
Comment
Response table.UserGlobal.OnvifLoginCheck=false
9.10.2 SetUserGlobalConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&UserGlobal.OnvifLoginCheck=<flag>
Comment Enable Onvif login check or not, <flag> range is {true, false}
Response OK or ERROR
9.11 IntervideoManager
9.11.1 GetCGIVersion
URL Syntax http://<ip>/cgi-bin/ IntervideoManager.cgi?action=getVersion&Name=CGI
Comment Get CGI version
Response version=1.40
86
10. Storage
10.1 File Finding
10.1.1 Create
URL Syntax http://<ip>/cgi-bin/mediaFileFind.cgi?action=factory.create
Comment Create a media file finder
Response result=08137
10.1.2 StartFind
URL Syntax http://<ip>/cgi-bin/mediaFileFind.cgi?action=findFile&object=<objectId>&condition.Channel=<channel>&condition.StartTime=
<start>&condition.EndTime=<end>&condition.Dirs[0]=<dir>&condition.Types[0]=<type>&condition.Flag[0]=<flag>&condition.E
vents[0]=<event>
Comment Start to find file wth the above condition. If start successfully, return true, else return false.
object : The object Id is got from interface in 10.1.1 Create
condition.Channel: in which channel you want to find the file .
condition.StartTime/condition.EndTime: the start/end time when recording.
condition.Dirs: in which directories you want to find the file. It is an array. The index starts from 0. The range of dir is
{“/mnt/dvr/sda0”, “/mnt/dvr/sda1”}. This condition can be omitted. If omitted, find files in all the directories.
condition.Types: which types of the file you want to find. It is an array. The index starts from 0. The range of type is {“dav”,
“jpg”, “mp4”}. If omitted, find files with all the types.
condition.Flags: which flags of the file you want to find. It is an array. The index starts from 0. The range of flag is {“Timing”,
“Manual”, “Marker”, “Event”, “Mosaic”, “Cutout”}. If omitted, find files with all the flags.
condition.Event: by which event the record file is triggered. It is an array. The index starts from 0. The range of event is
{“AlarmLocal”, “VideoMotion”, “VideoLoss”, “VideoBlind”, “Traffic*”}. This condition can be omitted. If omitted, find files of all
the events.
Example:
Find file in channel 1, in directory “/mnt/dvr/sda0",event type is "AlarmLocal" or "VideoMotion", file type is “dav”, and time
between 2011-1-1 12:00:00 and 2011-1-10 12:00:00 , URL is:
http://<ip>/cgi-bin/mediaFileFind.cgi?action=findFile&object=08137&condition.Channel=1&conditon.Dir[0]=”/mnt/dvr/sda0”&
conditon.Event[0]=AlarmLocal&conditon.Event[1]=VideoMotion&condition.StartTime=2011-1-1%2012:00:00&condition.EndTi
me=2011-1-10%2012:00:00
Response OK or Error
87
10.1.3 FindNextFile
URL Syntax http://<ip>/cgi-bin/mediaFileFind.cgi?action=findNextFile&object=<objectId>&count=<fileCount>
Comment Find the next fileCount files.
The maximum value of fileCount is 100.
Response found=1
items[0]. Channel =1
items[0]. StartTime =2011-1-1 12:00:00
items[0]. EndTime =2011-1-1 13:00:00
items[0]. Type =dav
items[0]. Events[0]=AlarmLocal
items[0]. FilePath =/mnt/dvr/sda0/2010/8/11/dav/15:40:50.jpg
items[0]. Length =790
items[0]. Duration = 3600
items[0].SummaryOffset=2354
tems[0].Repeat=0
items[0].WorkDir=”/mnt/dvr/sda0”
items[0]. Overwrites=5
items[0]. WorkDirSN=0
Field in Response Description
found Count of found file, found is 0 if no file is found.
Channel Channel
StartTime Start Time
EndTime End time
Type File type
Events Event type.
FilePath filepath.
Length File length
Duration Duration time
SummaryOffset Summary offset
Repeat Repeat file number
WorkDir The file’s directory
Overwrites Overwrite times of the work directory
WorkDirSN Workdir No
10.1.4 Close
URL Syntax http://<ip>/cgi-bin/mediaFileFind.cgi?action=close&object=<objectId>
Comment Stop find.
88
Response OK or ERROR
10.1.5 Destroy
URL Syntax http://<ip>/cgi-bin/mediaFileFind.cgi?action=destroy&object=<objectId>
Comment Destroy the media file finder.
Response OK or ERROR
10.2 Storage Device
10.2.1 GetStorageDeviceCollect
URL Syntax http://<ip>/cgi-bin/storageDevice.cgi?action=factory.getCollect
Comment Get all the storage device names
Response A list of all device names
list[0]=”/dev/sda0”
list[1]=”/dev/sda1”
list[2]=”/dev/sg1”
10.2.2 getDeviceAllInfo
URL Syntax http://<ip>/cgi-bin/storageDevice.cgi?action=getDeviceAllInfo
Comment Get all the storage device infos
Response list[0].Detail[0].IsError=false
list[0].Detail[0].Pointer=27023434
list[0].Detail[0].TotalBytes=0
list[0].Detail[0].Type=ReadWrite
list[0].Detail[0].UsedBytes=0
list[0].Pointer=22347602
list[0].State=Success
10.2.3 setStorageDevice
URL Syntax http://<ip>/cgi-bin/storageDevice.cgi?action=setDevice&pointer=xxx&type=xxx
Comment Set to storage device wth the above condition. If set successfully, return true, else return false. type: Range is {Lock, UnLock,
FormatPatition, UnMount }. pointer: The object Id is got from cgi API(cgi-bin/storageDevice.cgi?action=getDeviceAllInfo).If
type is Lock or UnLock, pointer is list[0].Detail[0].Pointer, If If type is FormatPatition or UnMount, pointer is list[0].Pointer.
89
Response OK or Error:No SD Card
*After formation operation, the device would reboot.
10.2.4 getCaps
URL Syntax http://<ip>/cgi-bin/storage.cgi?action=getCaps
Description Get storage caps
Response caps.IsLocalStore= true
caps.IsRemoteStore=true
capsSupportRemoteLimit=false
…see Storage Capabilities
10.3 Work Group
10.3.1 GetWorkGroupCollect
URL Syntax http://<ip>/cgi-bin/workGroup.cgi?action=factory.getCollect
Comment Get all the work group names
Response A list of all device names
list [0]=”group1”
list [1]=”group2”
list [2]=”group3”
10.4 Work Directory
10.4.1 GetWorkDirectoryCollect
URL Syntax http://<ip>/cgi-bin/workDirectory.cgi?action=factory.getCollect
Comment Get the all work derictory names
Response A list of all work directory names
list [0]=”dir1”
list [1]=”dir2”
list [2]=”dir3”
90
10.5 NAS
10.5.1 GetNASConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=NAS
Comment Return all the directories on the NAS server.
Response table.NAS[0].Name=” FTP1”
table.NAS[0].Enable = true
table.NAS[0].Protocol =”FTP”
table.NAS[0].Address =”www.Amcresttech.com”
table.NAS[0].Port =21
table.NAS[0].UserName =”anonymity”
table.NAS[0].Password =”none”
table.NAS[0].Directory =”share”
10.5.2 SetNASConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table:
Head =NAS[index]
Index: The index of the NAS Server
Response OK or ERROR
ParamName ParamValue type Description
Head.Name string NAS name.
Head .Enable bool Enable/Disable the NAS.
Head. Protocol string The range is {“FTP”, “SMB”}
Head. Address string The IP address or host name.
Head .Port integer NAS port.
Head.UserName string NAS username.
Head .Password string NAS password.
Head .Directory string Directory name.
91
10.6 Storage Point
10.6.1 GetRecordStoragePointConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=RecordStoragePoint
Comment
Response table.RecordStoragePoint [0].TimingRecord.Local =”local”
table.RecordStoragePoint [0].TimingRecord. Redundant =” Redundant”
table.RecordStoragePoint [0].TimingRecord. Remote =” FTP”
table.RecordStoragePoint [0].TimingRecord. AutoSync = false
table.RecordStoragePoint [0].TimingRecord. AutoSyncRange =0
table.RecordStoragePoint [0].TimingRecord. LocalForEmergency =false
table.RecordStoragePoint [0].TimingRecord. CompressBefore =15
10.6.2 SetRecordStoragePointConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table:
ch = channel index,
recType :The range is {“TimingRecord”,” VideoDetectRecord”,” AlarmRecord”,” EventRecord”,” TimingSnapShot”,”
VideoDetectSnapShot”,” AlarmSnapShot”,” EventSnapShot”}
Response OK or Error
ParamName ParamValue type Description
RecordStoragePoint [ch].[recType].Local string Local directory name.
RecordStoragePoint [ch].[recType]. Redundant string Redundant directory name.
RecordStoragePoint [ch].[recType]. Remote string Remote directory name.
RecordStoragePoint [ch].[recType]. AutoSync bool When remote directory recovers, auto synchronize local
directory to remote directory or not.
RecordStoragePoint [ch].[recType]. AutoSyncRange integer From the remote directory recovering time, how long the
data needs to be synchronized. The unit is hour. If it is 0, all
the data needs to be synchronized.
RecordStoragePoint [ch].[recType]. LocalForEmergency bool When the remote directory is unusable, save the data the
local directory or not.
RecordStoragePoint [ch].[recType]. CompressBefore integer How many days data will be compressed.
92
10.6.3 GetStorageGroupConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=StorageGroup
Comment
Response table.StorageGroup[0]. Name=”ReadWrite”
table.StorageGroup[0]. Memo =” For Reading & Writing Files”
table.StorageGroup[0]. FileHoldTime =0
table.StorageGroup[0]. OverWrite =true
table.StorageGroup[0]. Channels[0]. MaxPictures =1000
table.StorageGroup[0]. Channels[0]. Path =”/mnt/dvr/sda0”
10.6.4 SetStorageGroupConfig
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table:
Index = StorageGroup index
ch = channel index
Response OK or Error
ParamName ParamValue type Description
StorageGroup[Index]. Name string Storage group name.
StorageGroup[Index]. Memo string Storage group memo.
StorageGroup[Index]. FileHoldTime integer How many days the file will be hold.
StorageGroup[Index]. OverWrite bool Over write or not when there is not enough storage.
StorageGroup[Index]. Channels[ch]. MaxPictures Integer The max pictures beyond which the old pictures will be over
written. If it is 0, the old pictures will be not over written.
StorageGroup[Index]. Channels[ch]. Path string The channel path.
11. Audio
11.1 Audio MIME type
MIME Description
Audio/PCM
Audio/ADPCM
Audio/G.711A
Audio/G.711Mu
Audio/G.726
Audio/G.729
93
Audio/MPEG2
Audio/AMR
Audio/AAC
11.2 Post Audio
URL Syntax http://<ip>/cgi-bin/audio.cgi?action=postAudio&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment paramValue as below table.
Response OK or ERROR
ParamName ParamValue type Description
httptype string singlepart:HTTP content is a continuous flow of audio
packets
multipart:HTTP content type is
multipart/x-mixed-replace,and each audio packet ends
with a boundary string
channel integer The audio channel
11.2.1 Example for singlepart
The RUL of transmit a singlepart、channel 1 audio stream(encoded with G.711 A-law) is:
http: //<ip>/cgi-bin/audio.cgi?action=postAudio&httptype=singlepart&channel=1
example:
POST /cgi-bin/audio.cgi?action=postAudio&httptype=singlepart&channel=1 HTTP/1.1
Content-Type: Audio/G.711A
Content-Length:9999999
<Audio data>
<Audio data>
11.2.2 Example for multipart
The RUL of transmit a multipart、channel 1 audio stream(encoded with G.711 A-law) is:
http: //<ip>/cgi-bin/audio.cgi?action=postAudio&httptype= multipart &channel=1
example:
POST /cgi-bin/audio.cgi?action=postAudio&httptype= multipart &channel=1 HTTP/1.1
Content-Type: multipart/x-mixed-replace; boundary=<boundary>
--<boundary>
Content-Type: Audio/G.711A
94
Content-Length: 800
<Audio data>
--<boundary>
11.3 Get Audio
URL Syntax http://<ip>/cgi-bin/audio.cgi?action=getAudio&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment paramValue as below table.
Response OK or ERROR
ParamName ParamValue type Description
httptype string singlepart:HTTP content is a continuous flow of audio
packets
multipart:HTTP content type is
multipart/x-mixed-replace,and each audio packet ends
with a boundary string
channel integer The audio channel
11.3.1 Example for singlepart
The RUL of Request a singlepart、channel 1 audio stream(encoded with G.711 A-law) is:
http: //<ip>/cgi-bin/audio.cgi?action=getAudio&httptype=singlepart&channel=1
If the request was successful, the server returns a continuous flow of audio packets.The content type is only set at the beginning of the
connection.
Return:
HTTP Code: 200 OK
Content-Type: Audio/G.711A
Body:
<Audio data>
<Audio data>
11.3.2 Example for multipart
The RUL of Request a multipart、channel 1 audio stream(encoded with G.711 A-law) is:
http: //<ip>/cgi-bin/audio.cgi?action=getAudio&httptype=multipart&channel=1
If the request was successful, the server returns a continuous flow of audio packets. The content type is “multipart/x-mixed-replace” and each
audio packet ends with a boundary string.
95
Return:
HTTP Code: 200 OK
Content-Type: multipart/x-mixed-replace; boundary=<boundary>
--<boundary>
Content-Type: Audio/G.711A
Content-Length: 800
<Audio data>
--<boundary>
11.4 Audio Input
11.4.1 getCollect
URL Syntax http://<ip>/cgi-bin/devAudioInput.cgi?action=getCollect
Comment Get Audio input channel number.
Below response means there are 2 audio input channels.
Response result=2
11.5 Audio Output
11.5.1 getCollect
URL Syntax http://<ip>/cgi-bin/devAudioOutput.cgi?action=getCollect
Comment Get Audio output channel number.
Below response means there are 2 audio output channels.
Response result=2
12. Appendix
12.1 Stream Format
The Stream format is used by 4.1.7 GetStream By Http and 4.1.8 Playback By Http, describes the format of the data stream.
Stream Header:
96
Byte
Order
0 1 2 3 4 5 6 7
Key Flag Type reserved packet length
Byte
Order
8 9 10 11 12 13 14 15
Key channel
Extend header
length
Sequence
Byte
Order
16 17 18 19 20 21 22 23
Key utc utcms reserved
Check
sum
Flag=”DH”;
Type=0x10 means the audio packet;
Type=0x20 means the video packet;
Packet length means the packet total length, contains the packet header, maybe one or more extend header, and the media data;
Extend Header Format
Byte
Order
0 1 2 3 4 5 6 …
Key Type length reserved data
Extend header length must be multiple of 4 bytes;
Audio extend header:
Byte
Order
0 1 2 3 4 5 6 7
Key 0x11 8 reserved
Audio
Type
Tracks
Sample
Freq
reserved
A audio packet must contain the audio extend header;
Audio Type:1 - PCM8;2 - G729;3 - IMA_ADPCM;4 - G711U;5 - G721;6 - PCM8_VWIS;7 - MS_ADPCM;8 - G711A;9 - AMR-NB;10 -
PCM16;11- G723.1;12 – AAC;13 - G726_40;14 - G726_32;15 - G726_24;16 - G726_16
Tracks: Tracks number, support 1 and 2;
Sample Freq: audio sample frequence,1 - 4000;2 - 8000;3 - 11025;4 - 16000;5 - 20000;6 - 22050;7 - 32000;8 - 44100;9 - 48000;
97
Video Extend Header:
Byte
Order
0 1 2 3 4 5 6 7
Key 0x21 16 reserved
Video
Type
Frame
Type
Width
Byte
Order
8 9 10 11 12 13 14 15
Key Height
I Frame
Interval
Frame
Rate
reserved
A video packet must contain the video extend header; Video Type means the video codec type, 1-MPEG4; 2-H.264; Frame Type: 1-I frame;
2-P frame;3-B frame; Width and Height describe the frame width and height by pixel;
Channel Title Extend Header:
Byte
Order
0 1 2 3 4 5 6 …
Key 0x22 len reserved Title …
When a stream begin, or the device channel title changes, the video packet must contain the channel title extend header; If the channel
title is Chinese, it only supports utf8 format.
TimeZone Extend Header:
Byte
Order
0 1 2 3 4 5 6 7
Key 0x31 8 reserved Time Zone
Daylight
saving
time
reserved
When a stream begin, or the TimeZone changes, the video packet must contain the TimeZone extend header; Time Zone[0]:
[-12,12](west time zone 12 to east time zone 12), Time Zone[1] modify the time by minutes; Daylight saving time: 1/0, yes or not in daylight
saving time;
Event Flag Extend Header:
Byte
Order
0 1 2 3 4 5 6 …
Key 0x23 len reserved Event Flag
If the video frame contain one or more event flags, the video packet should contain the Event Flag Extend Header. The event flag means
98
what event had happened by set the bit as 1;
Event Flag: bit0-exterior alarm; bit1-move detect; bit2-video lost.
13. VideoInput
13.1 AdjustFocus
URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action= adjustFocus&focus=<focus>&zoom=<zoom>
Comment focus: float, the range is between 0 and 1; -1 means reset to position 0.
zoom: float, the range is between 0 and 1; -1 means reset to position 0.
Response OK or ERROR
13.2 AdjustFocusContinuously
URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action= adjustFocusContinuously&focus=<focus>&zoom=<zoom>
Comment focus: float, the range is -1 < focus < 1; 0 means stop.
zoom: float, the range is -1 < zoom< 1; 0 means stop.
The value means the moving speed of motor lens, positive value means move forwards, negative value means move
backwards. This command is used to drive the lens move continuously, until it reaches end. When motor is moving, and you
send this command again with focus or zoom parameter as 0, the motor will stop immediately. In this command when you
adjust the focus parameter, the zoom parameter should be -1, and the focus parameter should be -1 when adjust the zoom
parameter.
Example If we want to adjust focus, the API like this:
http://172.30.1.100/cgi-bin/devVideoInput.cgi?action=adjustFocusContinuously&focus=0.02&zoom=-1
and when the motor is moving, we send below command to let it stop:
http://172.30.1.100/cgi-bin/devVideoInput.cgi?action=adjustFocusContinuously&focus=0&zoom=-1
Response OK or ERROR
13.3 AutoFocus
URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action= autoFocus
Comment
Response OK or ERROR
99
13.4 GetFocusStatus
URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action= getFocusStatus
Comment The range of status.Status is “Normal” and “Autofocus”. This command must be continual executed until status.Status is
“Normal”.
Response status.Focus=0.5
status.Zoom=0.5
status.Status=Normal
14. SD Camera
This chapter is only effective with SD Camera.
14.1 VideoInWhiteBalance
14.1.1 GetVideoInWhiteBalance
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInWhiteBalance
Description Get VideoInWhiteBalance capabilities, channelNo is video in channel index.
Response table.VideoInWhiteBalance[0][0].ColorTemperatureLevel=50
table.VideoInWhiteBalance[0][0].GainBlue=50
table.VideoInWhiteBalance[0][0].GainGreen=50
table.VideoInWhiteBalance[0][0].GainRed=50
table.VideoInWhiteBalance[0][0].Mode=ATW
table.VideoInWhiteBalance[0][1].ColorTemperatureLevel=50
table.VideoInWhiteBalance[0][1].GainBlue=50
table.VideoInWhiteBalance[0][1].GainGreen=50
table.VideoInWhiteBalance[0][1].GainRed=50
table.VideoInWhiteBalance[0][1].Mode=Auto
table.VideoInWhiteBalance[0][2].ColorTemperatureLevel=50
table.VideoInWhiteBalance[0][2].GainBlue=50
table.VideoInWhiteBalance[0][2].GainGreen=50
table.VideoInWhiteBalance[0][2].GainRed=50
table.VideoInWhiteBalance[0][2].Mode=Auto
100
14.2.2 SetVideoInWhiteBalance
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head =VideoInOptions[ChannelNo] [ConfigNo]
ChannelNo = video channel index.
ConfigNo=0,1,2; normal,day,night
Response OK or ERROR
ParamName ParamValue
type
Description
head. Mode integer “Auto”,“Indoor", "Outdoor", "ATW", "Manual", "AutoOutdoor"
head. GainRed integer Range is 0-100
head. GainBlue integer Range is 0-100
14.2 VideoInExposure
14.2.1 GetVideoInExposure
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name= VideoInExposure
Description
Response table.VideoInExposure[0][0].AutoGainMax=2
table.VideoInExposure[0][0].Backlight=0
table.VideoInExposure[0][0].Compensation=7
table.VideoInExposure[0][0].DoubleExposure=0
table.VideoInExposure[0][0].Gain=1
table.VideoInExposure[0][0].GlareInhibition=0
table.VideoInExposure[0][0].Iris=10
table.VideoInExposure[0][0].Mode=0
table.VideoInExposure[0][0].RecoveryTime=900
table.VideoInExposure[0][0].Rect[0]=0
table.VideoInExposure[0][0].Rect[1]=0
table.VideoInExposure[0][0].Rect[2]=0
table.VideoInExposure[0][0].Rect[3]=0
table.VideoInExposure[0][0].SlowAutoExposure=0
table.VideoInExposure[0][0].SlowShutter=true
table.VideoInExposure[0][0].SlowSpeed=25
table.VideoInExposure[0][0].Speed=50
101
table.VideoInExposure[0][0].Value1=0.100000
table.VideoInExposure[0][0].Value2=80
table.VideoInExposure[0][0].WideDynamicRange=0
table.VideoInExposure[0][0].WideDynamicRangeMode=0
table.VideoInExposure[0][1].AutoGainMax=2
table.VideoInExposure[0][1].Backlight=0
table.VideoInExposure[0][1].Compensation=14
table.VideoInExposure[0][1].DoubleExposure=0
table.VideoInExposure[0][1].Gain=1
table.VideoInExposure[0][1].GlareInhibition=0
table.VideoInExposure[0][1].Iris=10
table.VideoInExposure[0][1].Mode=2
table.VideoInExposure[0][1].RecoveryTime=900
table.VideoInExposure[0][1].Rect[0]=0
table.VideoInExposure[0][1].Rect[1]=0
table.VideoInExposure[0][1].Rect[2]=0
table.VideoInExposure[0][1].Rect[3]=0
table.VideoInExposure[0][1].SlowAutoExposure=14
table.VideoInExposure[0][1].SlowShutter=true
table.VideoInExposure[0][1].SlowSpeed=25
table.VideoInExposure[0][1].Speed=50
table.VideoInExposure[0][1].Value1=0.100000
table.VideoInExposure[0][1].Value2=80
table.VideoInExposure[0][1].WideDynamicRange=0
table.VideoInExposure[0][1].WideDynamicRangeMode=0
table.VideoInExposure[0][2].AutoGainMax=2
table.VideoInExposure[0][2].Backlight=0
table.VideoInExposure[0][2].Compensation=7
table.VideoInExposure[0][2].DoubleExposure=0
table.VideoInExposure[0][2].Gain=1
table.VideoInExposure[0][2].GlareInhibition=0
table.VideoInExposure[0][2].Iris=10
table.VideoInExposure[0][2].Mode=0
table.VideoInExposure[0][2].RecoveryTime=900
table.VideoInExposure[0][2].Rect[0]=0
table.VideoInExposure[0][2].Rect[1]=0
table.VideoInExposure[0][2].Rect[2]=0
table.VideoInExposure[0][2].Rect[3]=0
table.VideoInExposure[0][2].SlowAutoExposure=0
table.VideoInExposure[0][2].SlowShutter=true
table.VideoInExposure[0][2].SlowSpeed=25
table.VideoInExposure[0][2].Speed=50
table.VideoInExposure[0][2].Value1=0.100000
table.VideoInExposure[0][2].Value2=80
102
table.VideoInExposure[0][2].WideDynamicRange=0
table.VideoInExposure[0][2].WideDynamicRangeMode=0
Comment In above table, head = table.VideoInOptions[ChannelNo]
ChannelNo = video channel index.
14.2.2 SetVideoInExposure
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head = VideoInExposure[ChannelNo][ConfigNo]
ChannelNo = video channel index.
ConfigNo=0,1,2; normal,day,night
Response OK or ERROR
ParamName ParamValue
type
Description
head.Mode integer Range is {0,2,3, 4}
0: AutoExposure
2: Gain first
3: Exposure first
4:Manual.
head.Gain integer Range is 0-15
Head.Iris integer Range is 0-17
head.Speed integer Range is [3,…,3000]
head.Compensation float Range is [0-14],
head.SlowAutoExposure float Range is [0-15]
head.AutoGainMax integer Range is {0,1,2}
0: low
1: middle
2: high
head.SlowShutter integer true: Enable SlowShutter
false: Disable SlowShutter
head.SlowSpeed integer Range is {1,2,3,6,12,25}
0:forbid flash
1:always flash
103
2:auto flash
head.RecoveryTime integer Range is {0,300,900, 3600, 7200}, Unit is second.
0:close
head.WideDynamicRangeMode=1 integer Range is [0,1]
0 –disable,
1 –enable
head.GlareInhibition integer Range is [0,1,2,3]
0:disable
1:low
2:middle
3:high
head.Backlight bool 0: enable Backlight
1: disable Backlight
14.3 VideoInDenoise
14.3.1 GetVideoInDenoise
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInDenoise
Description
Response table.VideoInDenoise[0][0].2DEnable=true
table.VideoInDenoise[0][0].2DLevel=8
table.VideoInDenoise[0][0].3DAutoType.AutoLevel=2
table.VideoInDenoise[0][0].3DAutoType.Mod=8
table.VideoInDenoise[0][0].3DManulType.SnfLevel=0
table.VideoInDenoise[0][0].3DManulType.TnfLevel=0
table.VideoInDenoise[0][0].3DType=Auto
table.VideoInDenoise[0][1].2DEnable=true
table.VideoInDenoise[0][1].2DLevel=8
table.VideoInDenoise[0][1].3DAutoType.AutoLevel=2
table.VideoInDenoise[0][1].3DAutoType.Mod=8
table.VideoInDenoise[0][1].3DManulType.SnfLevel=0
table.VideoInDenoise[0][1].3DManulType.TnfLevel=0
table.VideoInDenoise[0][1].3DType=Auto
table.VideoInDenoise[0][2].2DEnable=true
table.VideoInDenoise[0][2].2DLevel=8
table.VideoInDenoise[0][2].3DAutoType.AutoLevel=2
table.VideoInDenoise[0][2].3DAutoType.Mod=8
table.VideoInDenoise[0][2].3DManulType.SnfLevel=0
table.VideoInDenoise[0][2].3DManulType.TnfLevel=0
table.VideoInDenoise[0][2].3DType=Auto
104
14.3.2 SetVideoInDenoise
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head = VideoInDenoise [ChannelNo] [ConfigNo]
ChannelNo = video channel index.
ConfigNo=0,1,2; normal,day,night
Response OK or ERROR
ParamName ParamValue
type
Description
head.2DEnable integer true: Enable 2D Denoise
false: Disable 2D Denoise
head.2DLevel integer Range is 1-5
head.3DType String “Off”
“Auto”
head .3DAutoType.Mode integer Range is 0-1
14.4 VideoInDayNight
14.4.1 GetVideoInDayNight
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInDayNight
Description
Response table.VideoInDayNight[0][0].BCRDelay=10
table.VideoInDayNight[0][0].ICRDelay=10
table.VideoInDayNight[0][0].Mode=Brightness
table.VideoInDayNight[0][0].Sensitivity=4
table.VideoInDayNight[0][0].Type=Electron
table.VideoInDayNight[0][1].BCRDelay=10
table.VideoInDayNight[0][1].ICRDelay=10
table.VideoInDayNight[0][1].Mode=BlackWhite
table.VideoInDayNight[0][1].Sensitivity=4
table.VideoInDayNight[0][1].Type=Electron
table.VideoInDayNight[0][2].BCRDelay=10
table.VideoInDayNight[0][2].ICRDelay=10
105
table.VideoInDayNight[0][2].Mode=BlackWhite
table.VideoInDayNight[0][2].Sensitivity=4
table.VideoInDayNight[0][2].Type=Electron
14.4.2 SetVideoInDayNight
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head = VideoInDayNight [ChannelNo] [ConfigNo]
ChannelNo = video channel index.
ConfigNo=0,1,2; normal,day,night
Response OK or ERROR
ParamName ParamValue
type
Description
head. Type integer Electron:
Mechanism:
head. Mode integer Auto、Color、BlackWhite
head. Sensitivity integer Range is 0-7
14.5 VideoInFocus
14.5.1 GetVideoInFocus
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInDayNight
Description
Response table.VideoInFocus[0][0].FocusLimit=100
table.VideoInFocus[0][0].FocusLimitSelectMode=Manual
table.VideoInFocus[0][0].IRCorrection=0
table.VideoInFocus[0][0].Mode=3
table.VideoInFocus[0][0].Sensitivity=1
table.VideoInFocus[0][1].FocusLimit=100
table.VideoInFocus[0][1].FocusLimitSelectMode=Manual
table.VideoInFocus[0][1].IRCorrection=0
table.VideoInFocus[0][1].Mode=3
table.VideoInFocus[0][1].Sensitivity=1
table.VideoInFocus[0][2].FocusLimit=100
table.VideoInFocus[0][2].FocusLimitSelectMode=Manual
106
table.VideoInFocus[0][2].IRCorrection=0
table.VideoInFocus[0][2].Mode=3
table.VideoInFocus[0][2].Sensitivity=1
14.5.2 SetVideoInFocus
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head = VideoInDayNight [ChannelNo] [ConfigNo]
ChannelNo = video channel index.
ConfigNo=0,1,2; normal,day,night
Response OK or ERROR
ParamName ParamValue
type
Description
head. Mode integer 2-Auto focus,3-Half auto focus,4-Manual focus
head. FocusLimit integer 100、1000、2000、3000、5000、
head. Sensitivity integer Range is 0,1,2
0-high,1-default,2-low
head. IRCorrection integer 0 :No correcetion; 1:Correction; 2:Auto correction
14.6 VideoInZoom
14.6.1 GetVideoInZoom
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInZoom
Description
Response table.VideoInZoom[0][0].DigitalZoom=true
table.VideoInZoom[0][0].Speed=7
table.VideoInZoom[0][0].ZoomLimit=4
table.VideoInZoom[0][1].DigitalZoom=true
table.VideoInZoom[0][1].Speed=0
table.VideoInZoom[0][1].ZoomLimit=4
table.VideoInZoom[0][2].DigitalZoom=false
table.VideoInZoom[0][2].Speed=7
table.VideoInZoom[0][2].ZoomLimit=4
107
14.6.2 SetVideoInZoom
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head = VideoInZoom [ChannelNo] [ConfigNo]
ChannelNo = video channel index.
ConfigNo=0,1,2; normal,day,night
Response OK or ERROR
ParamName ParamValue
type
Description
head. DigitalZoom integer true: Enable DigitalZoom
false: Disable DigitalZoom
head. Speed integer Range is 0-7
14.7 VideoInSharpness
14.7.1 GetVideoInSharpness
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInSharpness
Description
Response table.VideoInSharpness[0][0].Level=4
table.VideoInSharpness[0][0].Mode=1
table.VideoInSharpness[0][0].Sharpness=8
table.VideoInSharpness[0][1].Level=4
table.VideoInSharpness[0][1].Mode=1
table.VideoInSharpness[0][1].Sharpness=8
table.VideoInSharpness[0][2].Level=4
table.VideoInSharpness[0][2].Mode=1
table.VideoInSharpness[0][2].Sharpness=8
14.7.2 SetVideoInSharpness
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head = VideoInSharpness [ChannelNo] [ConfigNo]
ChannelNo = video channel index.
108
ConfigNo=0,1,2; normal,day,night
Response OK or ERROR
ParamName ParamValue
type
Description
head. Sharpness integer Range is 0-15
head. Level integer Range is 0-15
14.8 VideoInColor
14.8.1 GetVideoInColor
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInColor
Description
Response table.VideoInColor[0][0].Brightness=50
table.VideoInColor[0][0].ChromaSuppress=1
table.VideoInColor[0][0].Contrast=50
table.VideoInColor[0][0].Gamma=0
table.VideoInColor[0][0].Hue=50
table.VideoInColor[0][0].Saturation=50
table.VideoInColor[0][0].Style=Standard
table.VideoInColor[0][1].Brightness=50
table.VideoInColor[0][1].ChromaSuppress=1
table.VideoInColor[0][1].Contrast=50
table.VideoInColor[0][1].Gamma=0
table.VideoInColor[0][1].Hue=50
table.VideoInColor[0][1].Saturation=50
table.VideoInColor[0][1].Style=Standard
table.VideoInColor[0][2].Brightness=50
table.VideoInColor[0][2].ChromaSuppress=1
table.VideoInColor[0][2].Contrast=50
table.VideoInColor[0][2].Gamma=0
table.VideoInColor[0][2].Hue=50
table.VideoInColor[0][2].Saturation=50
table.VideoInColor[0][2].Style=Flamboyant
109
14.8.2 SetVideoInColor
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head = VideoInColor [ChannelNo] [ConfigNo]
ChannelNo = video channel index.
ConfigNo=0,1,2; normal,day,night
Response OK or ERROR
ParamName ParamValue
type
Description
head. Style integer Gentle
Standard
Flamboyant
head. Hue integer Range is 0-100
head. Brightness integer Range is 0-100
head. Saturation Range is 0-100
head. ChromaSuppress Range is 0-3
head. Gamma Range is 0-15
14.9 VideoInRotate
14.9.1 GetVideoInRotate
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInRotate
Description
Response table.VideoInRotate[0][0].Flip=false
table.VideoInRotate[0][0].Freeze=false
table.VideoInRotate[0][0].Mirror=false
table.VideoInRotate[0][0].Rotate90=0
table.VideoInRotate[0][0].Stable=false
table.VideoInRotate[0][1].Flip=false
table.VideoInRotate[0][1].Freeze=false
table.VideoInRotate[0][1].Mirror=false
table.VideoInRotate[0][1].Rotate90=0
110
table.VideoInRotate[0][1].Stable=false
table.VideoInRotate[0][2].Flip=false
table.VideoInRotate[0][2].Freeze=false
table.VideoInRotate[0][2].Mirror=false
table.VideoInRotate[0][2].Rotate90=0
table.VideoInRotate[0][2].Stable=false
14.9.2 SetVideoInRotate
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head = VideoInRotate [ChannelNo] [ConfigNo]
ChannelNo = video channel index.
ConfigNo=0,1,2; normal,day,night
Response OK or ERROR
ParamName ParamValue
type
Description
head. Flip integer true: Enable flip function
false: Disable flip function
14.10 VideoInMode
14.10.1 GetVideoInMode
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInMode
Description
Response table.VideoInMode[0].Config[0]=1
table.VideoInMode[0].Mode=0
table.VideoInMode[0].TimeSection[0][0]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[0][1]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[0][2]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[0][3]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[0][4]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[0][5]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[1][0]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[1][1]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[1][2]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[1][3]=0 00:00:00-23:59:59
111
table.VideoInMode[0].TimeSection[1][4]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[1][5]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[2][0]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[2][1]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[2][2]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[2][3]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[2][4]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[2][5]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[3][0]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[3][1]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[3][2]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[3][3]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[3][4]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[3][5]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[4][0]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[4][1]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[4][2]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[4][3]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[4][4]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[4][5]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[5][0]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[5][1]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[5][2]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[5][3]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[5][4]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[5][5]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[6][0]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[6][1]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[6][2]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[6][3]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[6][4]=0 00:00:00-23:59:59
table.VideoInMode[0].TimeSection[6][5]=0 00:00:00-23:59:59
14.10.2 SetVideoInMode
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head = VideoInMode [ChannelNo]
ChannelNo = video channel index.
Response OK or ERROR
ParamName ParamValue Description
112
type
head. Mode integer Range is {0,1}
0: NoSwitch;
1: Switch depends on head.TimeSection.
head. Config integer Mode=0 Config[0]={0、1/2}
Mode=1 Config[1]={ 1 }
Config[2]={ 2 }
head.TimeSection[0][0] integer The time format is "0 H:m: H:m:S "
For example: 0 00:00:00-10:59:59
15. VideoAnalyse
This chapter is only effective with smart IP Camera.
15.1 VideoAnalyseRule
15.1.1 GetVideoAnalyseRule
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoAnalyseRule
Description Get VideoAnalyseRule.
In below table, head =table.VideoAnalyseRule[ChannelNo] [RuleNo]
ChannelNo = video channel index.
RuleNo =rule index.
Response head.Name= line1
head.Type=CrossLineDetection
head.VideoAnalyseRule[0][0].Enable =true
head.VideoAnalyseRule[0][0].EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler)
…
15.1.2 SetVideoAnalyseRule
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head =VideoAnalyseRule[ChannelNo] [RuleNo]
ChannelNo = video channel index.
RuleNo =rule index.
ParamName starts with head.Config is only effective with {“CrossLineDetection”, “CrossRegionDetection”, “LeftDetection”,
“TakenAwayDetection”}
Response OK or ERROR
113
ParamName ParamValue
type
Description
head.Name string Rule name, it must be unique.
head.Type string The range is {“CrossLineDetection”, “CrossRegionDetection”, “LeftDetection”,”
“TakenAwayDetection”,”VideoAbnormalDetection”,“FaceDetection”,
,”AudioMutation”,”AudioAnomaly”,”VideoUnFocus”,”WanderDetection”,”
RioterDetection”,” ParkingDetection”,” MoveDetection”, “NumberStat”}”
head.Enable bool Enable/Disable this rule
head.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
head.Config.DetectLine[0][0] integer The start point of DetectLine 0;
head.Config.DetectLine[0][1] integer The end point of DetectLine 0;
head.Config.DetectLine[1][0] integer The start point of DetectLine 1;
head.Config.DetectLine[1][1] integer The end point of DetectLine 1;
head.Config.Direction string The range is {“LeftToRight”, “RightToLeft”, “Both”}
head.Config .SizeFilter.MaxSize[0] integer Maximum width. The width of the object must not be beyond maximum width.
Adapt to {“CrossLineDetection”, “CrossRegionDetection”, “LeftDetection”,
“TakenAwayDetection”,“FaceDetection”,“WanderDetection”, “RioterDetection”,
“ParkingDetection”, “MoveDetection”}
head.Config .SizeFilter.MaxSize[1] integer Maximum height. The height of the object must not be beyond maximum height.
head.Config .SizeFilter.MinSize[0] integer Minimum width. The width of the object must not be less than minimum width.
head.Config .SizeFilter.MinSize[1] integer Minimum height. The height of the object must not be beyond minimum height.
head.Config.DetectRegion[0][0] integer The start point of DetectRegion 0;
Adapt to {“CrossRegionDetection”, “LeftDetection”, “TakenAwayDetection”,
“WanderDetection”,“RioterDetection”, “ParkingDetection”, “MoveDetection”}
head.Config.DetectRegion[0][1] integer The end point of DetectRegion 0;
head.Config.DetectRegion[1][0] integer The start point of DetectRegion 1;
head.Config.DetectRegion[1][1] integer The end point of DetectRegion 1;
head.Config.DetectRegion[2][0] integer The start point of DetectRegion 2;
head.Config.DetectRegion[2][1] integer The start point of DetectRegion 2;
head.Config. MinDuration integer Range is 1-600, adapt to {“LeftDetection”, “TakenAwayDetection”,
“WanderDetection”}.
Range is 10-300, adapt to {“RioterDetection”}.
Range is 6-300, adapt to {“ParkingDetection”}.
head.Config. Sensitivity integer Range is 1-10, adapt to {“RioterDetection”, “MoveDetection”}.
Head.Config. EnterThreshold integer Range is 0- 100000000, adapt to {“NumberStat”}.
Head.Config. ExitThreshold integer Range is 0- 100000000, adapt to {“NumberStat”}.
Head.Config. InsideThreshold integer Range is 0- 100000000, adapt to {“NumberStat”}.
114
15.2 VideoWidgetNumberStat
15.2.1 GetVideoWidgetNumberStat
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoWidgetNumberStat
Description Get VideoWidgetNumberStat.
In below table, head =table.VideoWidgetNumberStat[ChannelNo]
ChannelNo = video channel index.
Response head.EncodeBlend=true
head.ShowEnterNum=true
head.ShowExitNum=true
head.TextAlign=0
…
15.2.2 SetVideoWidgetNumberStat
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head =VideoWidgetNumberStat[ChannelNo]
ChannelNo = video channel index.
Response OK or ERROR
ParamName ParamValue
type
Description
head.EncodeBlend bool Enable/Disable
head.ShowEnterNum bool Enable/Disable
head.ShowExitNum bool Enable/Disable
head.TextAlign integer 0 for left, 2 for right
15.3 VideoEncodeROI
15.3.1 GetVideoEncodeROI
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoEncodeROI
Description Get VideoEncodeROI.
In below table, head=table.VideoEncodeROI[ChannelNo]
ChannelNo = video channel index.
Response Head.DynamicTrack=false
115
15.3.2 SetVideoEncodeROI
URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
Comment In below table, head=VideoEncodeROI[ChannelNo]
ChannelNo = video channel index.
Response OK or ERROR
ParamName ParamValue
type
Description
head.DynamicTrack bool Enable/Disable
116
16 TrafficSnap
16.1 getParkingSpaceStatus
URL
Syntax
http://<ip>/cgi-bin/trafficSnap.cgi?action=getParkingSpaceStatus&channel=<channelNo>&<paramName>=<paramValue>[&<pa
ramName>=<paramValue>...]
Descripti
on
Get specific parking space(s) status
For example If want to get all parking space status, the url is
http://<ip>/cgi-bin/trafficSnap.cgi?action=getParkingSpaceStatus& condition.Lane[0]=0 & condition.Lane[1]=255
Response A list of parking space status
status[0].Lane=0
status[0].PictureId=5
status[0].TrafficCar.CountInGroup=1
…
status[1].Lane=1
status[1].PictureId=4
status[1].TrafficCar.CountInGroup=1
…
Comment Param :
channelNo :the index of trafficSnap channel
index : The index of type array,start from 0
TrafficCar : the members refer to TrafficCar
ParamName ParamValue type Description
condition.Lane[index] int The Lane value
condition. ResponseLevel int The Level value , refer to conditon
17 TrafficParking
17.1 getAllParkingSpaceStatus
URL
Syntax
http://<ip>/cgi-bin/ trafficParking.cgi?action= getAllParkingSpaceStatus
Descripti
on
Get all valid parking spaces status of one device
For example If want to get all parking space status, the url is
http://<ip>/cgi-bin/trafficParking.cgi?action=getAllParkingSpaceStatus
117
Response A list of parking space status
status[0].Lane=0
status[0].Status = Park
…
status[1].Lane=1
status[1]. Status = NoPark
…
Comment Param :
Status: Park or NoPark
17 VideoDetect
17.1 getCaps
URL Syntax http://<ip>/cgi-bin/devVideoDetect.cgi?action=getCaps&channel=<channelNo>
Response caps.DetectVersion[0]=V1.0
caps.DetectVersion[1]=V3.0
caps.MotionColumns=22
caps.MotionDetectWindow=4
caps.MotionLinkPtzPattern=true
caps.MotionLinkPtzPreset=true
caps.MotionLinkPtzTour=true
caps.MotionResult=1
caps.MotionRows=18
caps.SupportBlind=1
caps.SupportLoss=0
caps.SupportMotion=1
Comment Get video detect capabilities, channelNo is video in channel index. Notice that When your device is using V1.0
V2.0 Motion detection, you can not get any reply while excuting the command.

More Related Content

PPSX
Aufbau principle and its deviations
PPTX
Quantum and-electronic-configuration
PDF
Macedonia de frutas
PPTX
La evolución de la comunicación a través de
PPTX
Peixiongyana5
PDF
When Two Worlds Meet
PPT
Simbolos patrios presentacion
PPT
A new generation of data to monitor landscapes across the tropics
Aufbau principle and its deviations
Quantum and-electronic-configuration
Macedonia de frutas
La evolución de la comunicación a través de
Peixiongyana5
When Two Worlds Meet
Simbolos patrios presentacion
A new generation of data to monitor landscapes across the tropics

Viewers also liked (9)

PPT
Novos antimicrobianos
PDF
SAP Global Certification
PDF
MiPCT 06-12-2013_final
PPTX
Desidratação no Idoso
PDF
SC7 Workshop 2: Space Data for Secure Societies
PPTX
DOC
New microsoft word document
Novos antimicrobianos
SAP Global Certification
MiPCT 06-12-2013_final
Desidratação no Idoso
SC7 Workshop 2: Space Data for Secure Societies
New microsoft word document
Ad

Recently uploaded (20)

PPTX
A Presentation on Artificial Intelligence
PPTX
Machine Learning_overview_presentation.pptx
PDF
MIND Revenue Release Quarter 2 2025 Press Release
PDF
Encapsulation_ Review paper, used for researhc scholars
PDF
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
PDF
Unlocking AI with Model Context Protocol (MCP)
PDF
Chapter 3 Spatial Domain Image Processing.pdf
PDF
Encapsulation theory and applications.pdf
PDF
gpt5_lecture_notes_comprehensive_20250812015547.pdf
PPTX
sap open course for s4hana steps from ECC to s4
PDF
Mobile App Security Testing_ A Comprehensive Guide.pdf
PPTX
Big Data Technologies - Introduction.pptx
PDF
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
PPTX
Digital-Transformation-Roadmap-for-Companies.pptx
PDF
Agricultural_Statistics_at_a_Glance_2022_0.pdf
PDF
Advanced methodologies resolving dimensionality complications for autism neur...
PDF
Assigned Numbers - 2025 - Bluetooth® Document
PDF
Reach Out and Touch Someone: Haptics and Empathic Computing
PPTX
Programs and apps: productivity, graphics, security and other tools
PPT
“AI and Expert System Decision Support & Business Intelligence Systems”
A Presentation on Artificial Intelligence
Machine Learning_overview_presentation.pptx
MIND Revenue Release Quarter 2 2025 Press Release
Encapsulation_ Review paper, used for researhc scholars
Profit Center Accounting in SAP S/4HANA, S4F28 Col11
Unlocking AI with Model Context Protocol (MCP)
Chapter 3 Spatial Domain Image Processing.pdf
Encapsulation theory and applications.pdf
gpt5_lecture_notes_comprehensive_20250812015547.pdf
sap open course for s4hana steps from ECC to s4
Mobile App Security Testing_ A Comprehensive Guide.pdf
Big Data Technologies - Introduction.pptx
Build a system with the filesystem maintained by OSTree @ COSCUP 2025
Digital-Transformation-Roadmap-for-Companies.pptx
Agricultural_Statistics_at_a_Glance_2022_0.pdf
Advanced methodologies resolving dimensionality complications for autism neur...
Assigned Numbers - 2025 - Bluetooth® Document
Reach Out and Touch Someone: Haptics and Empathic Computing
Programs and apps: productivity, graphics, security and other tools
“AI and Expert System Decision Support & Business Intelligence Systems”
Ad

Amcrest cgi sdk_api_3

  • 1. 1 AMCREST HTTP API FOR IP CAMERAS Version 1.51
  • 2. 2
  • 3. 3 1.Preface This document details the API of Amcrest video products. Programmers can access and configure Amcrest video products using this API. 2.Catalog Document History........................................................................................................................................................Error! Bookmark not defined. 1.Preface....................................................................................................................................................................................................................3 2.Catalog....................................................................................................................................................................................................................3 3.HTTP API Transaction..............................................................................................................................................................................................9 3.1Transaction ...................................................................................................................................................................................................9 3.2Authentication............................................................................................................................................................................................10 4.Camera..................................................................................................................................................................................................................11 4.1Stream ........................................................................................................................................................................................................11 4.1.1 GetStream.......................................................................................................................................................................................11 4.1.2 GetMaxExtraStreamCounts.............................................................................................................................................................11 4.1.3 GetSnapshot ...................................................................................................................................................................................11 4.1.4 GetVideo.........................................................................................................................................................................................12 4.1.5 PlayBack..........................................................................................................................................................................................12 4.1.6 LoadFile...........................................................................................................................................................................................12 4.1.7 GetStream By Http..........................................................................................................................................................................13 4.1.8 Playback By Http .............................................................................................................................................................................13 4.2VideoColor..................................................................................................................................................................................................14 4.2.1 GetVideoColorConfig......................................................................................................................................................................14 4.2.2 SetVideoColorConfig.......................................................................................................................................................................14 4.3VideoInOptions...........................................................................................................................................................................................15 4.3.1 GetVideoInputCaps.........................................................................................................................................................................15 4.3.2 GetVideoInOptionsConfig...............................................................................................................................................................17 4.3.3 SetVideoInOptionsConfig................................................................................................................................................................19 4.4VideoEncode...............................................................................................................................................................................................24 4.4.1 GetVideoConfigCaps.......................................................................................................................................................................24 4.4.2 Resolution.......................................................................................................................................................................................25 4.4.3 GetVideoEncodeConfig...................................................................................................................................................................26 4.4.4 SetVideoEncodeConfig ...................................................................................................................................................................27 4.5AudioEncode...............................................................................................................................................................................................28 4.5.1 GetAudioConfigCaps.......................................................................................................................................................................28 4.5.2 GetAudioEncodeConfig...................................................................................................................................................................28 4.5.3 SetAudioEncodeConfig....................................................................................................................................................................29 4.6 SnapEncode ...............................................................................................................................................................................................30
  • 4. 4 4.6.1 GetSnapConfigCaps.........................................................................................................................................................................30 4.6.2 GetSnapEncodeConfig ....................................................................................................................................................................30 4.6.3 SetSnapEncodeConfig .....................................................................................................................................................................31 4.7ChannelTitle ...............................................................................................................................................................................................32 4.7.1 GetChannelTitleConfig....................................................................................................................................................................32 4.7.2 SetChannelTitleConfig ....................................................................................................................................................................32 4.8VideoStandard............................................................................................................................................................................................32 4.8.1 GetVideoStandardConfig ................................................................................................................................................................32 4.8.2 SetVideoStandardConfig.................................................................................................................................................................33 4.9VideoWidget...............................................................................................................................................................................................33 4.9.1 GetVideoWidgetConfig...................................................................................................................................................................33 4.9.2 SetVideoWidgetConfig ...................................................................................................................................................................34 4.10VideoIn .....................................................................................................................................................................................................36 4.10.1 getCollect......................................................................................................................................................................................36 4.11VideoOut ..................................................................................................................................................................................................36 4.11.1 GetVideoOutConfig.......................................................................................................................................................................36 4.11.2 SetVideoOutConfig .......................................................................................................................................................................37 4.12FlashLight..................................................................................................................................................................................................37 4.12.1 GetFlashLightConfig ......................................................................................................................................................................37 4.12.2 SetFlashLightConfig.......................................................................................................................................................................38 5.NetWork ...............................................................................................................................................................................................................38 5.1NetInterfaces ..............................................................................................................................................................................................38 5.1.1 GetInterfaces...................................................................................................................................................................................38 5.2BasicConfig..................................................................................................................................................................................................39 5.2.1 GetBasicConfig................................................................................................................................................................................39 5.2.2 SetBasicConfig.................................................................................................................................................................................39 5.3PPPoE..........................................................................................................................................................................................................40 5.3.1 GetPPPoEConfig..............................................................................................................................................................................40 5.3.2 SetPPPoEConfig...............................................................................................................................................................................40 5.4DDNS...........................................................................................................................................................................................................41 5.4.1 GetDDNSConfig...............................................................................................................................................................................41 5.4.2 SetDDNSConfig................................................................................................................................................................................41 5.5Email...........................................................................................................................................................................................................42 5.5.1 GetEmailConfig ...............................................................................................................................................................................42 5.5.2 SetEmailConfig................................................................................................................................................................................42 5.6Wlan ...........................................................................................................................................................................................................43 5.6.1 GetWlanConfig................................................................................................................................................................................43 5.6.2 SetWlanConfig ................................................................................................................................................................................43 5.6.3 ScanWlanDevices............................................................................................................................................................................44 5.7UPnP ...........................................................................................................................................................................................................45 5.7.1 GetUPnPConfig ...............................................................................................................................................................................45 5.7.2 SetUPnPConfig................................................................................................................................................................................45 5.7.3 GetUPnPStatus................................................................................................................................................................................46 5.8NTP .............................................................................................................................................................................................................46
  • 5. 5 5.8.1 GetNTPConfig..................................................................................................................................................................................46 5.8.2 SetNTPConfig ..................................................................................................................................................................................46 5.9RTSP............................................................................................................................................................................................................47 5.9.1 GetRTSPConfig ................................................................................................................................................................................47 5.9.2 SetRTSPConfig.................................................................................................................................................................................48 6.Events ...................................................................................................................................................................................................................49 6.1EventHandler ..............................................................................................................................................................................................49 6.1.1 GetEventHandler.............................................................................................................................................................................49 6.1.2 SetEventHandler .............................................................................................................................................................................50 6.2Alarm ..........................................................................................................................................................................................................52 6.2.1 GetAlarmConfig ..............................................................................................................................................................................52 6.2.2 SetAlarmConfig ...............................................................................................................................................................................52 6.2.3 GetAlarmOutConfig.........................................................................................................................................................................52 6.2.4 SetAlarmOutConfig .........................................................................................................................................................................53 6.2.5 GetInSlots........................................................................................................................................................................................53 6.2.6 GetOutSlots.....................................................................................................................................................................................53 6.2.7 GetInState.......................................................................................................................................................................................53 6.2.8 GetOutState ....................................................................................................................................................................................54 6.2.9 GetChannelInState..........................................................................................................................................................................54 6.2.10 GetChannelOutState.....................................................................................................................................................................54 6.3MotionDetect .............................................................................................................................................................................................54 6.3.1 GetMotionDetectConfig..................................................................................................................................................................54 6.3.2 SetMotionDetectConfig ..................................................................................................................................................................55 6.4BlindDetect .................................................................................................................................................................................................56 6.4.1 GetBlindDetectConfig .....................................................................................................................................................................56 6.4.2 SetBlindDetectConfig......................................................................................................................................................................56 6.5LossDetect ..................................................................................................................................................................................................57 6.5.1 GetLossDetectConfig.......................................................................................................................................................................57 6.5.2 SetLossDetectConfig .......................................................................................................................................................................57 6.6LoginFailureAlarm.......................................................................................................................................................................................57 6.6.1 GetLoginFailureAlarmConfig...........................................................................................................................................................57 6.6.2 SetLoginFailureAlarmConfig............................................................................................................................................................57 6.7 StorageAbnormal.......................................................................................................................................................................................58 6.7.1 GetStorageNotExistConfig...............................................................................................................................................................58 6.7.2 SetStorageNotExistConfig ...............................................................................................................................................................58 6.7.3 Get StorageFailureConfig ................................................................................................................................................................58 6.7.4 Set StorageFailureConfig.................................................................................................................................................................58 6.7.5 GetStorageLowSpaceConfig............................................................................................................................................................59 6.7.6 SetStorageLowSpaceConfig.............................................................................................................................................................59 6.8 NetAbnormal .............................................................................................................................................................................................59 6.8.1 GetNetAbortConfig .........................................................................................................................................................................59 6.8.2 SetNetAbortConfig..........................................................................................................................................................................59 6.8.3 GetIPConflictConfig.........................................................................................................................................................................60 6.8.4 SetIPConflictConfig .........................................................................................................................................................................60
  • 6. 6 6.9 GetEventIndexes ........................................................................................................................................................................................60 6.10 Attach.......................................................................................................................................................................................................61 7.PTZ........................................................................................................................................................................................................................62 7.1PTZConfig....................................................................................................................................................................................................62 7.1.1 GetPTZConfig ..................................................................................................................................................................................62 7.1.2 SetPTZConfig...................................................................................................................................................................................63 7.2PTZControl ..................................................................................................................................................................................................64 7.2.1 GetProtocolList................................................................................................................................................................................64 7.2.2 GetCurrentProtocolCaps.................................................................................................................................................................64 7.2.3 PTZ control commands ...................................................................................................................................................................65 7.3PTZStatus ....................................................................................................................................................................................................68 7.3.1 PTZ GetStatus..................................................................................................................................................................................68 8.Record Snap..........................................................................................................................................................................................................68 8.1Record.........................................................................................................................................................................................................68 8.1.1 GetRecordConfig.............................................................................................................................................................................68 8.1.2 SetRecordConfig..............................................................................................................................................................................69 8.1.3 GetRecordModeConfig ...................................................................................................................................................................69 8.1.4 SetRecordModeConfig ....................................................................................................................................................................69 8.2Snap............................................................................................................................................................................................................70 8.2.1 GetSnapConfig ................................................................................................................................................................................70 8.2.2 SetSnapConfig.................................................................................................................................................................................70 8.3MediaGlobal ...............................................................................................................................................................................................71 8.3.1 GetMediaGlobalConfig....................................................................................................................................................................71 8.3.2 SetMediaGlobalConfig ....................................................................................................................................................................71 8.4Holiday........................................................................................................................................................................................................72 8.4.1 GetHolidayConfig............................................................................................................................................................................72 8.4.2 SetHolidayConfig.............................................................................................................................................................................72 9.System ..................................................................................................................................................................................................................73 9.1General .......................................................................................................................................................................................................73 9.1.1 GetGeneralConfig............................................................................................................................................................................73 9.1.2 SetGeneralConfig ............................................................................................................................................................................73 9.2SystemTime ................................................................................................................................................................................................74 9.2.1 GetCurrentTime..............................................................................................................................................................................74 9.2.2 SetCurrentTime...............................................................................................................................................................................74 9.3Locales ........................................................................................................................................................................................................74 9.3.1 GetLocalesConfig ............................................................................................................................................................................74 9.3.2 SetLocalesConfig .............................................................................................................................................................................75 9.4Language.....................................................................................................................................................................................................76 9.4.1 GetLanguageCaps ...........................................................................................................................................................................76 9.4.2 GetLanguageConfig.........................................................................................................................................................................76 9.4.3 SetLanguageConfig..........................................................................................................................................................................76 9.5AccessFilter.................................................................................................................................................................................................77 9.5.1 GetAccessFilterConfig.....................................................................................................................................................................77 9.5.2 SetAccessFilterConfig......................................................................................................................................................................77
  • 7. 7 9.6AutoMaintain..............................................................................................................................................................................................77 9.6.1 GetAutoMaintainConfig..................................................................................................................................................................77 9.6.2 SetAutoMaintainConfig...................................................................................................................................................................78 9.7UserManager ..............................................................................................................................................................................................79 9.7.1 Group..............................................................................................................................................................................................79 9.7.2 GetGroupInfo..................................................................................................................................................................................79 9.7.3 GetGroupInfoAll..............................................................................................................................................................................79 9.7.4 AddUser ..........................................................................................................................................................................................79 9.7.5 DeleteUser ......................................................................................................................................................................................80 9.7.6 ModifyUser .....................................................................................................................................................................................80 9.7.7 ModifyPassword .............................................................................................................................................................................80 9.7.8 GetUserInfo.....................................................................................................................................................................................81 9.7.9 GetUserInfoAll.................................................................................................................................................................................81 9.7.10 GetActiveUserInfoAll.....................................................................................................................................................................81 9.8System Operation .......................................................................................................................................................................................82 9.8.1 Reboot ............................................................................................................................................................................................82 9.8.2 Shutdown........................................................................................................................................................................................82 9.8.3 GetDeviceType................................................................................................................................................................................82 9.8.4 GetHardwareVersion.......................................................................................................................................................................82 9.8.5 GetSerialNo.....................................................................................................................................................................................82 9.8.6 GetMachineName...........................................................................................................................................................................82 9.8.7 GetSystemInfo.................................................................................................................................................................................83 9.8.8 GetVendor.......................................................................................................................................................................................83 9.8.9 GetSoftwareVersion........................................................................................................................................................................83 9.8.10 GetOnvifVersion............................................................................................................................................................................83 9.9 Log .............................................................................................................................................................................................................83 9.9.1 StartFind .........................................................................................................................................................................................83 9.9.2 DoFind.............................................................................................................................................................................................84 9.9.3 StopFind..........................................................................................................................................................................................84 9.9.4 Clear................................................................................................................................................................................................85 9.10 UserGlobal ...............................................................................................................................................................................................85 9.10.1 GetUserGlobalConfig ....................................................................................................................................................................85 9.10.2 SetUserGlobalConfig .....................................................................................................................................................................85 9.11 IntervideoManager ..................................................................................................................................................................................85 9.11.1 GetCGIVersion...............................................................................................................................................................................85 10.Storage................................................................................................................................................................................................................86 10.1 File Finding ..............................................................................................................................................................................................86 10.1.1 Create............................................................................................................................................................................................86 10.1.2 StartFind .......................................................................................................................................................................................86 10.1.3 FindNextFile..................................................................................................................................................................................87 10.1.4 Close .............................................................................................................................................................................................87 10.1.5 Destroy..........................................................................................................................................................................................88 10.2 Storage Device .........................................................................................................................................................................................88 10.2.1 GetStorageDeviceCollect ..............................................................................................................................................................88
  • 8. 8 10.2.2 getDeviceAllInfo............................................................................................................................................................................88 10.2.3 setStorageDevice ..........................................................................................................................................................................88 10.2.4 getCaps .........................................................................................................................................................................................89 10.3 Work Group .............................................................................................................................................................................................89 10.3.1 GetWorkGroupCollect...................................................................................................................................................................89 10.4 Work Directory.........................................................................................................................................................................................89 10.4.1 GetWorkDirectoryCollect..............................................................................................................................................................89 10.5 NAS ..........................................................................................................................................................................................................90 10.5.1 GetNASConfig ...............................................................................................................................................................................90 10.5.2 SetNASConfig ................................................................................................................................................................................90 10.6 Storage Point............................................................................................................................................................................................91 10.6.1 GetRecordStoragePointConfig ......................................................................................................................................................91 10.6.2 SetRecordStoragePointConfig .......................................................................................................................................................91 10.6.3 GetStorageGroupConfig................................................................................................................................................................92 10.6.4 SetStorageGroupConfig.................................................................................................................................................................92 11.Audio ..................................................................................................................................................................................................................92 11.1 Audio MIME type.....................................................................................................................................................................................92 11.2 Post Audio................................................................................................................................................................................................93 11.2.1 Example for singlepart ..................................................................................................................................................................93 11.2.2 Example for multipart ...................................................................................................................................................................93 11.3 Get Audio.................................................................................................................................................................................................94 11.3.1 Example for singlepart ..................................................................................................................................................................94 11.3.2 Example for multipart ...................................................................................................................................................................94 11.4 Audio Input ..............................................................................................................................................................................................95 11.4.1 getCollect......................................................................................................................................................................................95 11.5 Audio Output ...........................................................................................................................................................................................95 11.5.1 getCollect......................................................................................................................................................................................95 12.Appendix.............................................................................................................................................................................................................95 12.1 Stream Format.........................................................................................................................................................................................95 13.VedioInput ..........................................................................................................................................................................................................98 13.1 AdjustFocus..............................................................................................................................................................................................98 13.2 AdjustFocusContinuously.........................................................................................................................................................................98 13.3 AutoFocus ................................................................................................................................................................................................98 13.4 GetFocusStatus ........................................................................................................................................................................................99 14. SD Camera .........................................................................................................................................................................................................99 14.1 VideoInWhiteBalance ..............................................................................................................................................................................99 14.1.1 GetVideoInWhiteBalance .............................................................................................................................................................99 14.2.2 SetVideoInWhiteBalance ............................................................................................................................................................100 14.2 VideoInExposure....................................................................................................................................................................................100 14.2.1 GetVideoInExposure...................................................................................................................................................................100 14.2.2 SetVideoInExposure....................................................................................................................................................................102 14.3 VideoInDenoise ..................................................................................................................................................................................103 14.3.1 GetVideoInDenoise.....................................................................................................................................................................103 14.3.2 SetVideoInDenoise .....................................................................................................................................................................104
  • 9. 9 14.4 VideoInDayNight ................................................................................................................................................................................104 14.4.1 GetVideoInDayNight...................................................................................................................................................................104 14.4.2 SetVideoInDayNight....................................................................................................................................................................105 14.5 VideoInFocus ........................................................................................................................................................................................105 14.5.1 GetVideoInFocus.........................................................................................................................................................................105 14.5.2 SetVideoInFocus .........................................................................................................................................................................106 14.6 VideoInZoom ........................................................................................................................................................................................106 14.6.1 GetVideoInZoom.........................................................................................................................................................................106 14.6.2 SetVideoInZoom .........................................................................................................................................................................107 14.7 VideoInSharpness..............................................................................................................................................................................107 14.7.1 GetVideoInSharpness .................................................................................................................................................................107 14.7.2 SetVideoInSharpness ..................................................................................................................................................................107 14.8 VideoInColor.........................................................................................................................................................................................108 14.8.1 GetVideoInColor .........................................................................................................................................................................108 14.8.2 SetVideoInColor..........................................................................................................................................................................109 14.9 VideoInRotate.......................................................................................................................................................................................109 14.9.1 GetVideoInRotate .......................................................................................................................................................................109 14.9.2 SetVideoInRotate........................................................................................................................................................................110 14.10 VideoInMode......................................................................................................................................................................................110 14.10.1 GetVideoInMode ......................................................................................................................................................................110 14.10.2 SetVideoInMode.......................................................................................................................................................................111 15. VideoAnalyse...................................................................................................................................................................................................112 15.1 VideoAnalyseRule..................................................................................................................................................................................112 15.1.1 GetVideoAnalyseRule .................................................................................................................................................................112 15.1.2 SetVideoAnalyseRule..................................................................................................................................................................112 16 TrafficSnap ........................................................................................................................................................................................................116 16.1 getParkingSpaceStatus...........................................................................................................................................................................116 3. HTTP API Transaction 3.1 Transaction The HTTP API Transaction starts from a request from a client Application, usually a web browser. The request is processed by the web server on the Amcrest product, then sends the response back to the client application. The HTTP request is taken in GET form. If the request is successful, the Amcrest product will return a HTTP header contains 200 OK. The HTTP Body will contain actual data or error message if an error occurs. For convenience, we use some short words to instead the long expressions. The follows are several regulations: 1. The italics and bold will be replaced by the value behind the symbol “=”. 2. The URL must follow the standard way of writing a URL.(RFC_3986:Uniform Resource Identifiers (URI) Generic Syntax);that is ,spaces and other reserved characters (“;”, “/”, “?”, “:”, “@”, “=”, “+”, “,” and “$”) within a <paramName> or a <paramValue> must be replaced
  • 10. 10 with %<ASCII hex>.For example ,the blank must be instead with %20. 3. To describe the range of the configuration, we use some symbols such as “[]”, “{}” and so on. For example: ”[0-100]” denotes a integer not less than 0 and not larger than 100. “{0,1,2,3}” denotes the valid value of a integer among 0,1,2 and 3. 4. In the request and response, we use “[]” to denote an array. The index is usually a integer and start form 0. 5. The parameter value has several types: string, integer, bool and float.Integer is 32 bits. The range of bool is “true” and “false”. The below is an example of a transaction: Request GET http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoColor Description Get VideoColor configuration. Response HTTP/1.1 200 OK Content-Type:text/plain head.Brightness=50 head.Contrast=50 head.Hue=50 head.Saturation=50 head.TimeSection=1 00:00:00-24:00:00 Comment In above table, head= table.VideoColor[ChannelNo][ColorConfigNo] ChannelNo = video channel index, colorConfigNo = color config index. 0 = Color Config 1 1 = Color Config 2 … We can also request the single config. For example: Request : GET http://10.7.2.4/cgi-bin/configManager.cgi?action=getConfig&name=VideoColor[0][0].Brightness Response: HTTP/1.1 200 OK Content-Type:text/plain table.VideoColor[0][0].Brightness=50 3.2 Authentication The Amcrest video product supplies two authentication ways: basic authentication and digest authentication. If the http request does not have “Authorization”, the Amcrest video product returns a 401, utill the http request has a legal authentication. For example: 1. When basic authentication, the Amcrest video product response: 401 Unauthorized WWW-Authenticate: Basic realm=”XXXXXX” Then the client encode the username and password with base64, send the following request: Authorization: Basic VXZVXZ. 2. When digest authentication, the Amcrest video product response: WWW-Authenticate: Digest realm="DH_00408CA5EA04", nonce="000562fdY631973ef04f77a3ede7c1832ff48720ef95ad",
  • 11. 11 stale=FALSE, qop="auth"; The client calculates the digest using username, password, nonce, realm and URI with MD5, then send the following request: Authorization: Digest username="admin", realm="DH_00408CA5EA04", nc=00000001,cnonce="0a4f113b",qop="auth" nonce="000562fdY631973ef04f77a3ede7c1832ff48720ef95ad",uri="cgi-bin/global.login?userName=admin", response="65002de02df697e946b750590b44f8bf" 4. Camera Camera API allows application to configure and view Amcrest video product settings. 4.1 Stream 4.1.1 GetStream URL Syntax rtsp://<username>:<password>@<ip>:<port>/cam/realmonitor?channel=<channelNo>&subtype=<typeNo> Comment <username>: a valid user’s username. <password> :user’s password. <ip> :the IP address of the Amcrest video product. <port >:the default port is 554. It can be omitted. It can be obtained in 5.10.1 GetRTSPConfig. <channelNo> :the channel number. It starts from 1. <typeNo> :the stream type. The <typeNo> of main stream is 0, extra stream 1 is 1, extra stream 2 is 2.The extra stream counts can be obtained in 4.1.2 GetMaxStreamCounts. The stream must be enabled by setting head.VideoEnable to true in 4.4.4 SetVideoEncodeConfig. For example, we request the extra stream 1 of channel 1, the URL is: rtsp://admin:admin@10.7.6.67:554/cam/realmonitor?channel=1&subtype=1. The IP Camera supports both TCP and UDP transmission forms. It also supplies basic authentication and digest authentication ways. The authentication process is similar with 3.2 Authentication. 4.1.2 GetMaxExtraStreamCounts URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getProductDefinition&name=MaxExtraStream Response table.MaxExtraStream=1 Comment In above table, the range of table.MaxExtraStream is {1,2,3} 4.1.3 GetSnapshot URL Syntax http://<ip>/cgi-bin/snapshot.cgi? [channel=<channelNo>]
  • 12. 12 Response A picture encoded by jpg Comment The channel number is default 0 if the request is not carried the param. 4.1.4 GetVideo URL Syntax http://<ip>/cgi-bin/mjpg/video.cgi?[channel=<channelNo>]&subtype=<typeNo> Response video stream encoded by mjpg Return: HTTP Code:200 OK Content-Type:multipart/x-mixed-replace;boundary=<boundary> Body: --<boundary> Content-Type:image/jpeg Content-Length:<image size> <JPEG image data> --<boundary> Comment The channel number is default 0 if the request is not carried the param. subtype : Definition in 4.1.1 GetStream 4.1.5 PlayBack URL Syntax rtsp://<username>:<password>@<ip>:<port>/<filename> Response It’s similar with 4.1.1 GetStream. For example: rtsp://admin:admin@10.7.6.67:554//mnt/sd/2012-07-13/001/dav/09/09.30.37-09.30.47[R][0@0][0].dav 4.1.6 LoadFile URL Syntax http://<ip>/cgi-bin/RPC_Loadfile/<filename> Response HTTP Code: 200 OK Content-Type: Application/octet-stream Content-Length:<fileLength> Body: <data> <data> For example: http://10.61.5.117/cgi-bin/RPC_Loadfile/mnt/sd/2012-07-13/001/dav/09/09.30.37-09.30.47[R][0@0][0].dav
  • 13. 13 4.1.7 GetStream By Http URL Syntax http://<ip>/cgi-bin/realmonitor.cgi?action=getStream&channel=<channelNo>&subtype=<typeNo> Response HTTP Code: 200 OK Content-Type: Application/octet-stream Body: <data> <data> Comment Compared to 4.1.1 GetStream using RTSP, it is another way of get stream. This is a way to use http protocol to get realmonitor stream. The data format is shown in appendix. 4.1.8 Playback By Http URL Syntax http://<ip>/cgi-bin/playBack.cgi?action=getStream&channel=<channelNo>&subtype=<typeNo>&startTime=<startTime>& endTime=<endTime> Response HTTP Code: 200 OK Content-Type: Application/octet-stream Body: streamId=<streamId>rn <data> <data> Comment Compared to 4.1.5 Playback using RTSP, it is another way of get playback stream. This is a way to use http protocol to get playback stream. The data format is shown in appendix. URL Syntax http://<ip>/cgi-bin/playBack.cgi?action=control&streamId=<streamId>&cmd=<cmd>&<paramName>=<paramValue>[&< paramName>=<paramValue>...] Response OK or ERROR Comment Control the playback stream Cmd=play Speed=<speed> optional, default speed=1,if speed > 0, play back forward, else if speed < 0, playback backward(param iframe is ignored, only support iframe playback backward); Iframe=<iframe> optional, default iframe=0, if iframe=1, playback I frame only; seekTime=<seekTime> seek time, optional, default playback from the stream current point; cmd=pause pause the playback stream; cmd=cancel
  • 14. 14 cancel the playback stream, and destroy the streamed; This is the cgi to control playback stream, used to control the stream which built by “action=getStream”. 4.2 VideoColor 4.2.1 GetVideoColorConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoColor Response head.Brightness=50 head.Contrast=50 head.Hue=50 head.Saturation=50 head.TimeSection=1 00:00:00-24:00:00 Comment In above table, head= table.VideoColor[ChannelNo][ColorConfigNo] ChannelNo = video channel index, colorConfigNo = color config index. 0 = Color Config 1 1 = Color Config 2 … 4.2.2 SetVideoColorConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Response OK or ERROR Comment In below table, head=VideoColor[ChannelNo][ColorConfigNo] ChannelNo = video channel index, colorConfigNo = color config index, 0 = Color Config 1 1 = Color Config 2 … ParamName ParamValue type Description head.Brightness integer Brightness, range is [0-100] head.Contrast integer Contrast, range is [0-100] head.Hue integer Hue head.Saturation integer Saturation head.TimeSection string Effective time for this video color config. Format is: mask starttime endtime Mask range is {0, 1}.
  • 15. 15 Mask 0 – this video config is not effective Mask 1 - this config is effective Starttime/Endtime format like 11:00:00. Example: 0 01:00:00-02:00:00, means this config is not effective. 1 01:00:00-02:00:00, means this config is effective between 01:00:00 and 02:00:00 4.3 VideoInOptions 4.3.1 GetVideoInputCaps URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action=getCaps&channel=<channelNo> Description Get video input capabilities, channelNo is video in channel index. Response caps.Backlight=true caps.ChipID=0 caps.CoverCount=0 caps.CoverType=0 caps.CustomManualExposure=true caps.DayNightColor=true caps.DownScaling=true caps.Exposure=9 caps.ExternalSyncInput=true caps.FlashAdjust=true caps.Flip=true caps.Gain=true caps.GainAuto=true caps.HorizontalBinning=1 caps.InfraRed=false caps.Iris=false caps.IrisAuto=false caps.LadenBitrate=750000 caps.LimitedAutoExposure=true caps.MaxHeight=1200 caps.MaxWidth=1600 caps.Mirror=false caps.NightOptions=false caps.ReferenceLevel=false caps.Rotate90=false caps.SetColor=true caps.SignalFormats=Inside,720p,1080p
  • 16. 16 caps.SyncChipChannels=false caps.TitleCount=0 caps.UpScaling=false caps.VerticalBinning=1 caps.WhiteBalance=2 Field in response Value type Description Backlight bool True: support backlight ChipID String ID of chips in this channel CoverCount integer The maximum cover region count. CoverType integer 0: don’t support cover 1: support realtime cover 2: support non-realtime cover CustomManualExposure bool, true: support use defined manual exposure time DayNightColor bool true: support color alternate between day and night. DownScaling bool true: support down scaling, binning mode not included. Exposure integer Exposure grade. 0 – don’t support exposure control. ExternalSyncInput bool true: support HD signal external synchronization. FlashAdjust bool true: support flash adjust Flip bool true: support picture flip. Gain bool true: support gain control. GainAuto bool true: support auto gain. HorizontalBinning integer Horizontal/Vertical pixel binning mask, 1 – support 2 pixel binning, 2 – support 3 pixel binning 4 - support 4 pixel binning … 2^n – support n+2 pixel binning VerticalBinning integer InfraRed bool true: support Infra compensation Iris bool true: support Iris adjust IrisAuto bool true: support auto Iris adjust LadenBitrate integer Unit is Kbps. Maximum value of video stream bitrate, 16bpp, not in binning mode. LimitedAutoExposure bool true: support auto exposure with time limit. MaxHeight integer Maximum video height MaxWidth integer Maximum video width Mirror bool true: support picture mirror. NightOptions bool true: support night options. ReferenceLevel bool true: support reference level. Rotate90 bool true: support clockwise/anticlockwise 90°rotate SetColor bool true: support color set. SignalFormats string It’s a string contains supported video input signal formats for this channel. Signal formats
  • 17. 17 are separated by comma. Range is {Inside, BT656, 720p,1080p, 1080i, 1080sF, 1_3M} Inside – inside input. 1_3M - 1280*960 SyncChipChannels bool True: channels in same chip should be synchronized. Synchronized means video resolution of these channels should be the same. TitleCount integer Maximum count of blending titles. UpScaling bool true: support up scaling. WhiteBalance integer Range is {0, 1, 2, 3} 0 – don’t support white balance. 1 – support auto white balance 2 - support auto and pre defined white balance. 3 - support auto, pre defined and user defined white balance 4.3.2 GetVideoInOptionsConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInOptions Description Video in options contain Backlight, ExposureSpeed, DayNightColor. DayOptions, NightOptions, NormalOptions and so on Response head.Backlight=0 head.DayNightColor=false head.ExposureSpeed=0 head.ExposureValue1=0.100000 head.ExposureValue2=80.000000 head.ExternalSync=0 head.ExternalSyncPhase=0 head.FlashControl.Mode=0 head.FlashControl.Pole=0 head.FlashControl.Value=0 head.FlashControl.PreValue=0 head.Flip=false head.Gain=50 head.GainAuto=true head.IrisAuto=false head.Mirror=false head.NightOptions.AntiFlicker=0 head.NightOptions.Backlight=0 head.NightOptions.BacklightRegion[0]=3096 head.NightOptions.BacklightRegion[1]=3096 head.NightOptions.BacklightRegion[2]=5096 head.NightOptions.BacklightRegion[3]=5096
  • 18. 18 head.NightOptions.BrightnessThreshold=50 head.NightOptions.DayNightColor=2 head.NightOptions.ExposureMode=0 head.NightOptions.ExposureSpeed=0 head.NightOptions.ExposureValue1=0 head.NightOptions.ExposureValue2=40 head.NightOptions.ExternalSyncPhase=125 head.NightOptions.Flip=false head.NightOptions.Gain=50 head.NightOptions.GainAuto=true head.NightOptions.GainBlue=50 head.NightOptions.GainGreen=50 head.NightOptions.GainMax=50 head.NightOptions.GainMin=0 head.NightOptions.GainRed=50 head.NightOptions.GlareInhibition=0 head.NightOptions.IrisAuto=true head.NightOptions.Mirror=false head.NightOptions.Profile=3 head.NightOptions.ReferenceLevel=50 head.NightOptions.Rotate90=0 head.NightOptions.SunriseHour=0 head.NightOptions.SunriseMinute=0 head.NightOptions.SunriseSecond=0 head.NightOptions.SunsetHour=23 head.NightOptions.SunsetMinute=59 head.NightOptions.SunsetSecond=59 head.NightOptions.SwitchMode=4 head.NightOptions.WhiteBalance=Auto head.NightOptions.WideDynamicRange=0 head.NightOptions.WideDynamicRangeMode=0 head.NormalOptions.AntiFlicker=0 head.NormalOptions.Backlight=0 head.NormalOptions.BacklightRegion[0]=3096 head.NormalOptions.BacklightRegion[1]=3096 head.NormalOptions.BacklightRegion[2]=5096 head.NormalOptions.BacklightRegion[3]=5096 head.NormalOptions.BrightnessThreshold=50 head.NormalOptions.DayNightColor=1 head.NormalOptions.ExposureMode=0 head.NormalOptions.ExposureSpeed=0 head.NormalOptions.ExposureValue1=0 head.NormalOptions.ExposureValue2=40 head.NormalOptions.ExternalSyncPhase=125
  • 19. 19 head.NormalOptions.Flip=false head.NormalOptions.Gain=50 head.NormalOptions.GainAuto=true head.NormalOptions.GainBlue=50 head.NormalOptions.GainGreen=50 head.NormalOptions.GainMax=50 head.NormalOptions.GainMin=0 head.NormalOptions.GainRed=50 head.NormalOptions.GlareInhibition=0 head.NormalOptions.IrisAuto=true head.NormalOptions.Mirror=false head.NormalOptions.Profile=0 head.NormalOptions.ReferenceLevel=50 head.NormalOptions.Rotate90=0 head.NormalOptions.SunriseHour=0 head.NormalOptions.SunriseMinute=0 head.NormalOptions.SunriseSecond=0 head.NormalOptions.SunsetHour=23 head.NormalOptions.SunsetMinute=59 head.NormalOptions.SunsetSecond=59 head.NormalOptions.SwitchMode=0 head.ReferenceLevel=50 head.ReferenceLevelEnable=false head.Rotate90=0 head.SignalFormat=BT656 head.WhiteBalance=Disable Comment In above table, head = table.VideoInOptions[ChannelNo] ChannelNo = video channel index. 4.3.3 SetVideoInOptionsConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head =VideoInOptions[ChannelNo] ChannelNo = video channel index. For example: Auto Exposure: http://172.29.2.33/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].ExposureMode=0 &VideoInOptions[0].ExposureSpeed=0 Low Noice: http://172.29.2.33/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].ExposureMode=1 &VideoInOptions[0].ExposureSpeed=0&VideoInOptions[0].GainMin=0 & VideoInOptions[0].GainMax=60
  • 20. 20 Low Motion Blur: http://172.29.2.33/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].ExposureMode=2 &VideoInOptions[0].ExposureSpeed=0&VideoInOptions[0].GainMin=0 & VideoInOptions[0].GainMax=50&VideoInOptions[0].ExposureValue1=0 & VideoInOptions[0].ExposureValue2=20 Manual: http://172.29.2.33/cgi-bin/configManager.cgi?action=setConfig&VideoInOptions[0].ExposureMode=4 &VideoInOptions[0].ExposureSpeed=32&VideoInOptions[0].GainMin=0 & VideoInOptions[0].GainMax=50&VideoInOptions[0].ExposureValue1=40 & VideoInOptions[0].ExposureValue2=40 Response OK or ERROR ParamName ParamValue type Description head.Backlight integer Range is [0-n] n depends on capability in 4.3.1 GetVideoInputCaps 0 – backlight closed. 1 – backlight grade 1 … n – backlight grade n head.DayNightColor integer Range is {0,1,2} 0: always multicolor 1: autoswitch along with brightness, 2: always monochrome head.ExposureMode integer Range is {0,1,2, 4} 0: AutoExposure 1: Gain first 2: Exposure first 4:Manual. head.ExposureSpeed integer Range is [0-n+1] n depends on capability in 4.3.1 GetVideoInputCaps 0: AutoExposure 1-n-1: manual Exposure grade n: AutoExposure with time limit. n+1:manualExposure with user-defined time (n is supported maximum exposure grade ) head.ExposureValue1 float Range is [0.1-80], unit is millisecond If ExposureSpeed is 0(AutoExposure enable), it’s lower limit of AutoExposure time, otherwise it’s time of manualExposure head.ExposureValue2 float Range is [0.1-80], unit is millisecond Upper limit of AutoExposure time, should be bigger than ExposureValue1 head.ExternalSync integer Range is {0,1} External Synchronous
  • 21. 21 0: Internal Synchronization 1: External Synchronous head.ExternalSyncPhase integer Range is [0°-360°] External Synchronous Signal Phase head.FlashControl.Mode integer Range is {0,1,2} 0:forbid flash 1:always flash 2:auto flash head.FlashControl.Pole integer Range is {0,1, 2, 3} Trigger mode: 0:low level 1:high level 2: rising-edge 3:falling-edge head.FlashControl.Value integer Range is [0-15] Flashlight time-unit: 0 - 0us, 1 - 64us, 2 - 128us, 3 – 192us ... 15 - 960us head.FlashControl.PreValue integer Range is [0-100] It’s threshold of brightness value, if brightness is less than this value, flash light begin to work. head.Flip bool true: enable video flip function false: disable video flip function head.Gain integer Range is [0-100] If GainAuto is true, it’s upper limit of auto gain, else it’s the fixed gain adjust value. head.GainBlue integer Range is [0-100] Gain for blue value, Value is effective when WhiteBalance is “Custom.” head.GainRed integer Range is [0-100] Gain for red value, Value is effective when WhiteBalance is “Custom.” head.GainGreen integer Range is [0-100] Gain for green value, Value is effective when WhiteBalance is “Custom.” head.GainAuto bool true: GainAuto false: No GainAuto head.IrisAuto bool true: IrisAuto false: No IrisAuto head.Mirror bool true: enable video mirror function false: disable video mirror function head.WhiteBalance String Range is {Disable, Auto, Custom, Sunny, Cloudy, Home, Office, Night}
  • 22. 22 White balance Mode head.ReferenceLevel integer Range is [0-100] The expected average brightness level of video frames. head.Rotate90 integer Range is {0,1,2} Video rotation: 0: No rotate 1: clockwise rotate 90° 2: anticlockwise rotate 90° head.SignalFormat String Range is {Inside, BT656, 720p, 1080p, 1080i, 1080sF} Input Signal Mode head.AntiFlicker integer Range is {0,1,2} AntiFlicker mode: 0: Outdoor 1: 50 Hz AntiFlicker 2: 60 Hz AntiFlicker head.GlareInhibition integer Range is [0-100] GlareInhibition: 0: Close GlareInhibition. head.NightOptions.BrightnessThreshold integer NightOptions contain a set of parameters used when brightness is not enough. Range is [0-100] when brightness is less than the BrightnessThreshold, parameters change to Nightoptions. head.NightOptions.IrisAuto bool true: IrisAuto false: No IrisAuto head.NightOptions.SunriseHour integer Range is [00-23] Sunrise hour. head.NightOptions.SunriseMinute integer Range is [00-59] Sunrise minute head.NightOptions.SunriseSecond integer Range is [00-59] Sunrise second head.NightOptions.SunsetHour integer Sunset time. Its range is same with sunrise time, and it should be after sunrise time. NightOptions are used if time is after sunset time and before sunrise time. head.NightOptions.SunsetMinute integer head.NightOptions.SunsetSecond integer head.NightOptions.SwitchMode integer Range is {0,1,2} 0: NoSwitch,always use day options; 1: Switch depends on brightness; 2: Switch depends on time, switch to NightOptions when time is after sunset time and before sunrise. 3: NoSwitch,always use NightOptions; 4:No switch,always use NormalOptions. head.NightOptions.Profile integer Range is {0,1,2,3} 0: use temporary day options; 1: use temporary NightOptions;
  • 23. 23 2: use temporary NormalOptions; 3:depends on head.NightOptions.SwitchMode. head.NightOptions.ExposureSpeed integer Range is the same as relevant items of day options in this table. Example: Value range of head.NightOptions.ExposureSpeed is the same with head. ExposureSpeed head.NightOptions.ExposureValue1 float head.NightOptions.ExposureValue2 float head.NightOptions.Gain integer head.NightOptions.GainAuto bool head.NightOptions.GainBlue integer head.NightOptions.GainGreen integer head.NightOptions.GainRed integer head.NightOptions.WhiteBalance String head.NightOptions.ReferenceLevel integer head.NightOptions.ExternalSyncPhase integer head.NightOptions.AntiFlicker integer head.NightOptions.Backlight integer head.NightOptions.DayNightColor integer head.NightOptions.ExposureMode integer head.NightOptions.GlareInhibition integer head.NightOptions.Mirror integer head.NightOptions.Flip integer head.NightOptions.Rotate90 integer head.NomalOptions.BrightnessThreshold integer NomalOptions contain a set of parameters similar with NightOptions. Range is the same as relevant items of NightOptions in this table.head.NormalOptions.IrisAuto bool head.NormalOptions.SunriseHour integer head.NormalOptions.SunriseMinute integer head.NormalOptions.SunriseSecond integer head.NormalOptions.SunsetHour integer head.NormalOptions.SunsetMinute integer head.NormalOptions.SunsetSecond integer head.NormalOptions.ExposureSpeed integer Head.NormalOptions.ExposureValue1 float head.NormalOptions.ExposureValue2 float head.NormalOptions.Gain integer head.NormalOptions.GainAuto bool head.NormalOptions.GainBlue integer head.NormalOptions.GainGreen integer head.NormalOptions.GainRed integer head.NormalOptions.WhiteBalance String head.NormalOptions.ReferenceLevel integer head.NormalOptions.ExternalSyncPhase integer head.NormalOptions.AntiFlicker integer head.NormalOptions.Backlight integer
  • 24. 24 head.NormalOptions.DayNightColor integer head.NormalOptions.ExposureMode integer head.NormalOptions.GlareInhibition integer head.NormalOptions.Mirror integer head.NormalOptions.Flip integer head.NormalOptions.Rotate90 integer 4.4 VideoEncode 4.4.1 GetVideoConfigCaps URL Syntax http://<ip>/cgi-bin/encode.cgi?action=getConfigCaps&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Description Get video config capibilities. The description of <paramName> and <paramValue> is the same as 4.4.4 SetVideoEncodeConfig. For example: http://192.168.1.108/cgi-bin/encode.cgi?action=getConfigCaps& Encode[0].MainFormat[0].Video.Width=1920&Encode[0].MainFormat[0].Video.Height=1080 Response headMain.Video.BitRateOptions=448,2560 headMain.Video.CompressionTypes=H.264,MJPG headMain.Video.FPSMax=25 headMain.Video.ResolutionTypes=2048 x 1536,1080,SXGA, 1280 x 960,720,D1,CIF headExtra.Video.BitRateOptions=80,448 headExtra.Video.CompressionTypes=H.264,MJPG headExtra.Video.FPSMax=25 headExtra.Video.ResolutionTypes=D1,CIF headSnap.Video.CompressionTypes=H.264,MJPG headSnap.Video.ResolutionTypes=2048 x 1536,1080,SXGA, 1280 x 960,720,D1,CIF Comment In above table: Channel: video channel index RecordType: 0 = regular record 1 = motion detection record 2 = alarm record ExtraStream: 0 = extra stream 1 1 = extra stream 2 2 = extra stream 3 SnapType: 0 = regular snapshot 1 = motion detection snapshot 2 = alarm snapshot
  • 25. 25 Abbreviations in below table: headMain= caps[Channel].MainFormat[RecordType] headExtra = caps[Channel].ExtraFormat[ExtraStream] headSnap = caps[Channel].SnapFormat[SnapType] Field in respons Value range Description BitRateOptions string Before comma is minimum bit rate. (kbps), after comma is maximum bit rate.(kbps) BitRateOptions=80,448 80 is minimum bitrate, 448 is maximum. CompressionTypes string It contains all supported video compression types separated by comma. Range is {MPEG4, MPEG2, MPEG1, MJPG, H.263, H.264} FPSMax integer Maximum FPS. ResolutionTypes string It contains all supported video resolutions. Range is in 4.4.2 Resolution. 4.4.2 Resolution Fixed Resolution Name Size in PAL Size in NTSC "D1" 704 x 576 704 x 480 "HD1" 352 x 576 352 x 480 "BCIF" 704 x 288 704 x 240 "CIF" 352 x 288 352 x 240 "QCIF" 176 x 144 176 x 120 "VGA" 640 x 480 "QVGA" 320 x 240 "SVCD" 480 x 480 "QQVGA" 160 x 128 "SVGA" 800 x 592 "XVGA" 1024 x 768 "WXGA" 1280 x 800 "SXGA" 1280 x 1024 "WSXGA" 1600 x 1024 "UXGA" 1600 x 1200 "WUXGA" 1920 x 1200 "ND1" 240 x 192 "720" 1280 x 720 "1080" 1920 x 1080 "1280x960" 1280 x 960 (1.3 Mega Pixels) "1872x1408" 1872 x 1408 (2.5 Mega Pixels) "3744x1408" 3744 x 1408 (5 Mega Pixels)
  • 26. 26 "2048x1536" 2048 x 1536 (3 Mega Pixels) "2432x2048" 2432 x 2048 (5 Mega Pixels) "1216x1024" 1216 x 1024 (1.2 Mega Pixels) "1408x1024" 1408 x 1024 (1.5 Mega Pixels) "3296x2472" 3296 x 2472 (8 Mega Pixels) "2560x1920" 2560 x 1920 (5 Mega Pixels) "960H", 960 x 576 960 x 480 "DV720P" 960 x 720 4.4.3 GetVideoEncodeConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Encode Response headMain.Video.BitRate=8192 headMain.Video.BitRateControl=CBR headMain.Video.Compression=H.264 headMain.Video.FPS=25 headMain.Video.GOP=50 headMain.Video.Height=1200 headMain.Video.Profile=Main headMain.Video.Quality=4 headMain.Video.Width=1600 headMain.VideoEnable=true headExtra.Video.BitRate=8192 headExtra.Video.BitRateControl=CBR headExtra.Video.Compression=H.264 headExtra.Video.FPS=25 headExtra.Video.GOP=50 headExtra.Video.Height=1200 headExtra.Video.Profile=Main headExtra.Video.Quality=4 headExtra.Video.Width=1600 headExtra.VideoEnable=true Comment Channel: video channel index RecordType: 0 = regular record 1 = motion detection record 2 = alarm record ExtraStream: 0 = extra stream 1 1 = extra stream 2 2 = extra stream 3
  • 27. 27 Abbreviations in above table: headMain= table.Encode[Channel].MainFormat[RecordType] headExtra =table.Encode[Channel].ExtraFormat[ExtraStream] 4.4.4 SetVideoEncodeConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Channel: video channel index RecordType: 0 = regular record 1 = motion detection record 2 = alarm record ExtraStream: 0 = extra stream 1 1 = extra stream 2 2 = extra stream 3 Abbreviation in below table: head=Encode[Channel].MainFormat[RecordType] (or) Encode[Channel].ExtraFormat[ExtraStream] Response OK or ERROR ParamName ParamValue type Description head.Video.BitRate integer Unit is Kbps Range depends on capability in 4.4.1 GetVideoConfigCaps head.Video.BitRateControl string Range is {CBR,VBR} CBR: constant bitrate VBR: variable bitrate, available when Video.Compression=H264 head.Video.Compression String Range is {MPEG4,MPEG2, MPEG1,MJPG,H.263,H.264} Depends on capacity in 4.4.1 GetVideoConfigCaps head.Video.FPS float Range is [0.2-30]. Frames per second. < 1.0: several seconds/frame, FPS=0.3333: 3 seconds per frame. >1.0: several frames/second. FPS=3: 3 frames per second. head.Video.GOP integer Range is [1-100]. Group of picture, it’s the interval of I Frame, Example: GOP=50, means there is one I frame every 49 P or B frames head.Video.Height integer Video height head.Video.Width integer Video Width head.Video.Profile String Range is { Baseline, Main , Extended , High } Only when video compression is H.264, it’s effective. head.Video.Quality integer Range is [1-6].
  • 28. 28 Image Quality, available when Video.BitRateControl=VBR 1: worst quality 6: best quality head.VideoEnable bool True: enable video 4.5 AudioEncode 4.5.1 GetAudioConfigCaps URL Syntax http://<ip>/cgi-bin/encode.cgi?action=getConfigCaps Comment The angle brackets below denotes a array Response caps[0].ExtraFormat[0].Audio.CompressionTypes=PCM,G.711A,G.711Mu caps[0].ExtraFormat[1]…. … caps[0].MainFormat[0].Audio.CompressionTypes=PCM,G.711A,G.711Mu caps[0].MainFormat[1]… … Field in respons Value range Description CompressionTypes string It contains all supported audio compression types, separated by comma. Range is {PCM, ADPCM, G.711A, G.711Mu, G.726, G.729, MPEG2, AMR} 4.5.2 GetAudioEncodeConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Encode Response headMain.Audio.Bitrate=64 headMain.Audio.Compression=G.711A headMain.Audio.Depth=16 headMain.Audio.Frequency=44000 headMain.Audio.Mode=0 headMain.AudioEnable=false headExtra.Audio.Bitrate=64 headExtra.Audio.Compression=G.711A headExtra.Audio.Depth=16 headExtra.Audio.Frequency=44000 headExtra.Audio.Mode=0 headExtra.AudioEnable=false Comment Channel: video channel index RecordType:
  • 29. 29 0 = regular record 1 = motion detection record 2 = alarm record ExtraStream: 0 = extra stream 1 1 = extra stream 2 2 = extra stream 3 Abbreviations in above table: headMain=table.Encode[Channel].MainFormat[RecordType] headExtra=table.Encode[Channel].ExtraFormat[ExtraStream] 4.5.3 SetAudioEncodeConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Channel: video channel index RecordType: 0 = regular record 1 = motion detection record 2 = alarm record ExtraStream: 0 = extra stream 1 1 = extra stream 2 2 = extra stream 3 Abbreviations in below table: head=Encode[Channel].MainFormat[RecordType] (or) Encode[Channel].ExtraFormat[ExtraStream] Response OK or ERROR ParamName ParamValue type Description head.Audio.Bitrate integer Unit is kbps Range depends on capacity in 4.5.1 GetAudioConfigCaps head.Audio.Compression string Range depends on capacity in 4.5.1 GetAudioConfigCaps head.Audio.Depth integer Audio sampling depth head.Audio.Frequency integer Audio sampling frequency head.Audio.Mode integer Range is {0,1,2,3,4,5,6,7} Audio encode mode. 0: 4.75kbps, 1: 5.15 kbps,
  • 30. 30 2: 5.9 kbps, 3: 6.7 kbps, 4: 7.4 kbps, 5: 7.95 kbps, 6: 10.2 kbps, 7: 12.2 kbps, head.AudioEnable bool Enable/Disable audio 4.6 SnapEncode 4.6.1 GetSnapConfigCaps URL Syntax http://<ip>/cgi-bin/encode.cgi?action=getConfigCaps Comment Channel: video channel index SnapType: 0 = regular snapshot 1 = motion detection snapshot 2 = alarm snapshot Response caps[Channel].SnapFormat[SnapType].Video.CompressionTypes=H.264,MJPG caps[Channel].SnapFormat[SnapType].Video.ResolutionTypes=3M,1080,SXGA,1_3M,720,D1,CIF Field in respons Value range Description CompressionTypes string It contains all supported video compression types separated by comma. Range is {MPEG4, MPEG2, MPEG1, MJPG, H.263, H.264} ResolutionTypes string It contains all supported video resolutions, separated by comma. Range is {D1, HD1, BCIF, CIF, QCIF, VGA, QVGA, SVGA, XVGA, WXGA, SXGA, WSXGA, UXGA, WUXGA, ND1,720, 1080, 1_3M, 2_5M, 3M, 5M}. 4.6.2 GetSnapEncodeConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Encode [Channel].SnapFormat Response headSnap.Video.BitRate=384 headSnap.Video.BitRateControl=VBR headSnap.Video.Compression=H.264 headSnap.Video.FPS=1 headSnap.Video.GOP=50
  • 31. 31 headSnap.Video.Height=576 headSnap.Video.Quality=4 headSnap.Video.Width=704 headSnap.VideoEnable=true Comment Channel: video channel index SnapType: 0 = regular snapshot 1 = motion detection snapshot 2 = alarm snapshot Abbreviations in above table: headSnap = table.Encode[Channel].SnapFormat[SnapType] 4.6.3 SetSnapEncodeConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Channel: video channel index SnapType: 0 = regular snapshot 1 = motion detection snapshot 2 = alarm snapshot Abbreviation in below table: head= Encode[Channel].SnapFormat[SnapType] Response OK or ERROR ParamName ParamValue type Description head.Video.BitRate integer Unit is Kbps Range depends on capability in 4.3.1 GetVideoInputCaps head.Video.BitRateControl string Range is {CBR,VBR} CBR: constant bitrate VBR: variable bitrate head.Video.Compression String Range is {MPEG4,MPEG2, MPEG1,MJPG,H.263,H.264} Depends on capacity in 4.3.1 GetVideoInputCaps head.Video.FPS float Range is [0.2-30]. The lower limit can be reached 0.00002 with firmware 2.4 and above. Frames per second. < 1.0: several seconds/frame, FPS=0.3333: 3 seconds per frame. >1.0: several frames/second. FPS=3: 3 frames per second. head.Video.GOP integer Range is [1-100]. Group of picture, it’s the interval of I Frame,
  • 32. 32 Example: GOP=50, means there is one I frame every 49 P or B frames head.Video.Height integer Video height head.Video.Width integer Video Width head.Video.Quality integer Range is [1-6]. Image Quality, available when Video.BitRateControl=VBR 1: worst quality 6: best quality head.VideoEnable bool True: enable video 4.7 ChannelTitle 4.7.1 GetChannelTitleConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=ChannelTitle Comment Get the title of the channel. In below table, Channel = video channel index Response table.ChannelTitle[Channel].Name=CAM1 4.7.2 SetChannelTitleConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue> Comment Set the title of the channel. If VideoWidget[Channel].ChannelTitle.EncodeBlend is true, this title is blended to the video frames. Please refer to 4.8.2 SetVideoWidget In below table, Channel : video channel index Response OK or ERROR ParamName ParamValue type Description ChannelTitle[Channel].Name String Channel Name 4.8 VideoStandard 4.8.1 GetVideoStandardConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoStandard
  • 33. 33 Comment Response table.VideoStandard=PAL 4.8.2 SetVideoStandardConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue> Comment Response OK or ERROR ParamName ParamValue type Description VideoStandard string Range is {PAL,NTSC} Video Standard 4.9 VideoWidget 4.9.1 GetVideoWidgetConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoWidget Description VideoWidget config contains ChannelTitle, Covers and TimeTitle parameters, defines the background color, front color and positions of channel title and time title, and defines the regions which are not visible (cover). Response head.BackColor[0]=0 head.BackColor[1]=0 head.BackColor[2]=0 head.BackColor[3]=128 head.EncodeBlend=true head.FrontColor[0]=255 head.FrontColor[1]=255 head.FrontColor[2]=255 head.FrontColor[3]=0 head.Rect[0]=0 head.Rect[1]=8191 head.Rect[2]=0 head.Rect[3]=8191 … … Comment Channel: video channel index CoReg: Cover Region Covers is an array which sustains multi- Cover regions 0 = region 1 1 = region 2
  • 34. 34 2 = region 3 3 = region 4 head=table.VideoWidget[Channel].ChannelTitle (or) table.VideoWidget[Channel].Covers[CoReg] (or) table.VideoWidget[Channel].TimeTitle table.VideoWidget[Channel].CustomTitle[index] 4.9.2 SetVideoWidgetConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Channel: video channel index CoReg :Cover region index Covers is an array which contains multiple cover regions 0 = region 1 1 = region 2 2 = region 3 3 = region 4 headChannelTitle = VideoWidget[Channel].ChannelTitle headCover = VideoWidget[Channel].Covers[CoReg] headTimeTitle = VideoWidget[Channel].TimeTitle headCustomTitle = VideoWidget[Channel].CustomTitle VideoWidgetConfig contains cover region settings, channel title settings and time title settings. The italics below will be replaced by the above abbreviations. Response OK or ERROR ParamName ParamValue type Description headCover.BackColor[0] headCover.BackColor[1] headCover.BackColor[2] headCover.BackColor[3] integer Range is [0-255]. BackColor[0]:red value BackColor[1]:green value BackColor[2]:blue value BackColor[3]: alpha value headCover.EncodeBlend bool false - widget blend is disabled. headCover.FrontColor[0] headCover.FrontColor[1] headCover.FrontColor[2] headCover.FrontColor[3] integer Range is [0-255]. FrontColor[0]:red value FrontColor[1]:green value FrontColor[2]:blue value FrontColor[3]: alpha value headCover.Rect[0] headCover.Rect[1] headCover.Rect[2] integer Range is [0-8191]. Rect[0]:top left corner x coordinate (left) Rect[1]:top left corner y coordinate (top)
  • 35. 35 headCover.Rect[3] Rect[2]:bottom right x coordinate (right) Rect[3]:bottom right y coordinate (bottom) headChannelTitle.BackColor[0] headChannelTitle.BackColor[1] headChannelTitle.BackColor[2] headChannelTitle.BackColor[3] integer Range is the same with headCover headChannelTitle.EncodeBlend bool headChannelTitle.FrontColor[0] headChannelTitle.FrontColor[1] headChannelTitle.FrontColor[2] headChannelTitle.FrontColor[3] integer headChannelTitle.Rect[0] headChannelTitle.Rect[1] headChannelTitle.Rect[2] headChannelTitle.Rect[3] integer Only use the value of (left,top),the value of (right,bottom) is the same as (left,top) Rect[0], Rect[1] are used, and Rect[2] must be same with Rect[0], Rect[3] must be same with Rect[1]. headTimeTitle.BackColor[0] headTimeTitle.BackColor[1] headTimeTitle.BackColor[2] headTimeTitle.BackColor[3] integer Range is the same with headChannelTitle These are configs about time title. headTimeTitle.EncodeBlend bool headTimeTitle.FrontColor[0] headTimeTitle.FrontColor[1] headTimeTitle.FrontColor[2] headTimeTitle.FrontColor[3] integer headTimeTitle.Rect[0] headTimeTitle.Rect[1] headTimeTitle.Rect[2] headTimeTitle.Rect[3] integer headTimeTitle.ShowWeek bool True: Display week within the time title. headCustomTitle.BackColor[0] headCustomTitle.BackColor[1] headCustomTitle.BackColor[2] headCustomTitle.BackColor[3] integer Range is the same with headCover headCustomTitle.EncodeBlend bool headCustomTitle.FrontColor[0] headCustomTitle.FrontColor[1] headCustomTitle.FrontColor[2] headCustomTitle.FrontColor[3] integer headCustomTitle.Rect[0] headCustomTitle.Rect[1] headCustomTitle.Rect[2] headCustomTitle.Rect[3] integer Range is [0-8191]. Rect[0]:top left corner x coordinate (left) Rect[1]:top left corner y coordinate (top) Rect[2]:bottom right x coordinate (right) Rect[3]:bottom right y coordinate (bottom).
  • 36. 36 PTZPreset.BackColor[0] PTZPreset.BackColor[1] PTZPreset.BackColor[2] PTZPreset.BackColor[3] integer Range is the same with headCover PTZPreset.EncodeBlend bool PTZPreset.FrontColor[0] PTZPreset.FrontColor[1] PTZPreset.FrontColor[2] PTZPreset.FrontColor[3] integer PTZPreset.Rect[0] PTZPreset.Rect[1] PTZPreset.Rect[2] PTZPreset.Rect[3] integer Range is [0-8191]. Rect[0]:top left corner x coordinate (left) Rect[1]:top left corner y coordinate (top) Rect[2]:bottom right x coordinate (right) Rect[3]:bottom right y coordinate (bottom). 4.10 VideoIn 4.10.1 getCollect URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action=getCollect Description Get video input channels Response result=1 4.11 VideoOut 4.11.1 GetVideoOutConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoOut Description Response head.Margin[0]=0 head.Margin[1]=0 head.Margin[2]=0 head.Margin[3]=0 head.Color.Brightness=50 head.Color. Contrast =50 head.Color. Satuation =50 head.Color. Hue =50 head.Mode. Width =800
  • 37. 37 head.Mode. Height=600 head.Mode. BPP =16 head.Mode. Format =”Auto” head.Mode. RefreshRate =60… … Comment head = table.VideoOut[channel]. 4.11.2 SetVideoOutConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description head.Margin[0] head.Margin[1] head.Margin[2] head.Margin[3] integer Margin head.Color.Brightness integer Brightness head.Color.Contrast =50 integer Contrast head.Color.Satuation =50 integer Satuation head.Color.Hue =50 integer Hue head.Mode.Width =800 head.Mode.Height=600 integer Resolution head.Mode.BPP =16 integer head.Mode.Format =”Auto” string The range is {“Auto”, “TV”, “VGA”, “DVI”} head.Mode.RefreshRate =60 integer Refresh rate. 4.12 FlashLight 4.12.1 GetFlashLightConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=FlashLight Description Response head .Brightness=50 head.Enable=false head.TimeSection[0][0]=1 00:00:00-23:59:59 head.TimeSection[0][1]=0 00:00:00-23:59:59 … head.TimeSection[6][5]=0 00:00:00-23:59:59
  • 38. 38 Comment head = table.FlashLight 4.12.2 SetFlashLightConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description FlashLight.Enable bool Enable FlashLight.Brightness integer Brightness FlashLight.TimeSection[wd][ts] string It’s table contains effective time period for flash light everyday. wd (week day) range is [0-6] (Sunday-Staurday) ts (time section) range is [0-23], it’s index of timesection table. Format: mask hh:mm:ss-hh:mm:ss Mask: {0,1}, hh: [0-24], mm: [00-59], ss: [00-59] Mask 0: this time section is not used. Mask 1: this time section is used. Example: TimeSection[1][0]=1 12:00:00-18:00:00 Means flash light is effective between 12:00:00 and 18:00:00 at Monday. 5. Network 5.1 NetInterfaces 5.1.1 GetInterfaces URL Syntax http://<ip>/cgi-bin/netApp.cgi?action=getInterfaces Comment Get all of the system network interfaces. Description for items In below table Name: network interface name. “eth0” - wired network interface “eth2” - wireless network interface
  • 39. 39 “3G” - 3G network interface Type: “Normal” – wired network “Wireless” – wireless network "Auto", "TD-SCDMA", "WCDMA", "CDMA1x", "EDGE", "EVDO" – 3G network types. Valid: network interface is valid if netInterface[n].Valid is true. Response netInterface[0].Name=eth0 netInterface[0].Type=Normal netInterface[0].Valid=true netInterface[1]…. … 5.2 BasicConfig 5.2.1 GetBasicConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Network Comment Basic config contains basic network parameters (Default interface, domain name, host name), and configuration of each network interface. interface in below table is network interface name, such as eth0, eth2… Response table.Network.DefaultInterface=eth0 table.Network.Domain=Amcrest table.Network.Hostname=badak table.Network.interface.DefaultGateway=10.7.0.1 table.Network.interface.DhcpEnable=false table.Network.interface.DnsServers[0]=221.123.33.228 table.Network.interface.DnsServers[1]=221.12.1.228 table.Network.interface.IPAddress=10.7.2.3 table.Network.interface.MTU=1500 table.Network.interface.PhysicalAddress=00:10:5c:f2:1c:b4 table.Network.interface.SubnetMask=255.255.0.0 5.2.2 SetBasicConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment interface in below table is network interface name, such as eth0, eth1… Response OK or ERROR ParamName ParamValue type Description
  • 40. 40 NetWork.DefaultInterface string Set default network interface when multiple interfaces exist. Range of interfaces is depends on 5.1.1 GetInterfaces NetWork.Domain string Domain name. NetWork.Hostname string Hostname and Domain compose a network address. Network.interface.DefaultGateway string IP address Network.interface.DhcpEnable bool Enable/Disable DHCP. Network.interface.DnsServers[0] string IP address of first DNS server. Network.interface.DnsServers[1] string IP address of second DNS server. Network.interface.IPAddress string Interface IP address. Network.interface.MTU integer Interface MTU. Network.interface.PhysicalAddress string MAC address of interface. HEX string in the form of: xx:xx:xx:xx:xx:xx. Range of x is [0-9,a-f,A-F] Example: 00:10:5c:f2:1c:b4 00:10:5C:F2:1C:B5 Network.interface.SubnetMask string Network mask string: In the form of x.x.x.x, range of x is [0-255] Example: 255.255.255.0 5.3 PPPoE 5.3.1 GetPPPoEConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=PPPoE Comment Response table.PPPoE.Enable=false table.PPPoE.Password=123456 table.PPPoE.UserName=123456 5.3.2 SetPPPoEConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR
  • 41. 41 ParamName ParamValue type Description PPPoE.Enable bool Enable/Disable PPPoE. PPPoE.UserName string PPPoE user name. PPPoE.Password string PPPoE user password. 5.4 DDNS 5.4.1 GetDDNSConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=DDNS Comment Index below is the DDNS protocol table index, start from 0. Response table.DDNS[index].Address=www.Amcresttech.com table.DDNS[index].Enable=true table.DDNS[index].HostName=www.Amcresttech.com table.DDNS[index].KeepAlive=10 table.DDNS[index].Password=none table.DDNS[index].Port=5050 table.DDNS[index].Protocol=AMCREST table.DDNS[index].UserName=user1 5.4.2 SetDDNSConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Index below is the DDNS protocol table index, start from 0. Response OK or ERROR ParamName ParamValue type Description DDNS[index].Address string DDNS server IP address or name. DDNS[index].Enable bool Multiple DDNS hostname can be configured, but Only one hostname can be enabled, others should be disabled. DDNS[index].HostName String Host name of this device. DDNS[index].KeepAlive integer Range is [1-65535]. Unit is minutes. DDNS[index].Password string DDNS user password DDNS[index].Port integer Range is [1-65535]. Port of DDSN server DDNS[index].Protocol string Range is {NO-IP DDNS, Dyndns DDNS, AMCREST}.
  • 42. 42 DDSN protocol type DDNS[index].UserName string DDNS user name 5.5 Email 5.5.1 GetEmailConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Email Comment Response table.Email.Address=www.Amcresttech.com table.Email.Anonymous=true table.Email.AttachEnable=true table.Email.AttachmentEnable=true table.Email.Enable=true table.Email.HealthReport.Enable=false table.Email.HealthReport.Interval=61 table.Email.Password=123456 table.Email.Port=26 table.Email.Receivers[0]=x@Amcresttech.com table.Email.Receivers[1]=y@Amcresttech.com table.Email.Receivers[2]=z@Amcresttech.com table.Email.SendAddress=x@Amcresttech.com table.Email.SslEnable=false table.Email.Title=DVRMessage table.Email.UserName=anonymitty 5.5.2 SetEmailConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description Email.Address string SMTP server IP address or name. Email.Anonymous bool Enable/Disable anonymous email. Email.AttachEnable bool Enable/Disable email attachment
  • 43. 43 Email.AttachmentEnable bool Enable/Disable email attachment Email.Enable bool Enable/Disable email function Email.HealthReport.Enable bool Enable/Disable report device status by email. Email.HealthReport.Interval integer Range is [30-1440]. Unit is minutes Email.Password string User password of email account. Email.Port integer Range is [1-65535] Email.Receivers[0] string Email addresses of 3 receivers. Email.Receivers[1] string Email.Receivers[2] string Email.SendAddress string Sender email address. Email.SslEnable bool True: enable SSL email. Email.Title string Title of email. Email.UserName string User name of email account. 5.6 Wlan 5.6.1 GetWlanConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=WLan Comment Response table.WLan.eth2.Enable=true table.WLan.eth2.Encryption=off table.WLan.eth2.KeyFlag=false table.WLan.eth2.KeyID=0 table.WLan.eth2.KeyType=Hex table.WLan.eth2.Keys[0]=password1 table.WLan.eth2.Keys[1]=password2 table.WLan.eth2.Keys[2]=password3 table.WLan.eth2.Keys[3]=password4 table.WLan.eth2.LinkMode=Auto table.WLan.eth2.SSID=Amcrest 5.6.2 SetWlanConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
  • 44. 44 Comment interface is name of wireless interface, to get all the network interfaces and their properties, refer to 5.1:NetInterfaces. Response OK or ERROR ParamName ParamValue type Description WLan.interface.Enable bool True: Enable WLan on this interface. WLan.interface.Encryption string Range is {Off, On, WEP64Bits, WEP128Bits, WPA-PSK-TKIP, WPA-PSK-CCMP} Encryption mode. WLan.interface.KeyFlag bool true: key is configured. WLan.interface.KeyID integer Range is [0-3] Indicates which key is used. 0 : WLan.interface.Keys[0] is used. WLan.interface.KeyType string Range is {Hex, ASCII] WLan.interface.Keys[0] string For ASCII key type: 64bits encryption key length is 5, 128bits encryption key length is 13, consists of [0-9, a-z, A-Z] For HEX key type: 64bits encryption key length is 10, 128bits encryption key length is 26, consists of [0-9, a-z, A-Z] WLan.interface.Keys[1] string WLan.interface.Keys[2] string WLan.interface.Keys[3] string WLan.interface.LinkMode string Range is {Auto, Ad-hoc, Infrastructure}. Auto – select suitable mode automatically. Ad-hoc – Device with wireless network adapter can connect to each other without Access Point. Infrastructure – Integrate wire and wireless LAN together to share network resource, access point is need in this mode. WLan.interface.SSID string 5.6.3 ScanWlanDevices URL Syntax http://<ip>/cgi-bin/wlan.cgi?action=scanWlanDevices&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Search wifi information Response Available wifi num and detailed information, for example: found=1 wlanDevice[0].ApConnected=0 wlanDevice[0].ApMaxBitRate=54000000 wlanDevice[0].ApNetWorkType=255 wlanDevice[0].AuthMode=7 wlanDevice[0].BSSID=28:2c:b2:5c:de:36 wlanDevice[0].EncrAlgr=3
  • 45. 45 wlanDevice[0].LinkMode=0 wlanDevice[0].LinkQuality=31 wlanDevice[0].RSSIQuality=0 wlanDevice[0].SSID=xia_yuguo 13098 Internet ParamName ParamValue type Description SSID string Specified SSID, if not include any SSID, all wifi information will be searched and displayed. 5.7 UPnP 5.7.1 GetUPnPConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=UPnP Comment Index in below is the UPNP map table index, start from 0. Response table.UPnP.Enable=true table.UPnP.MapTable[index].Enable=true table.UPnP.MapTable[index].InnerPort=80 table.UPnP.MapTable[index].OuterPort=8080 table.UPnP.MapTable[index].Protocol=TCP table.UPnP.MapTable[index].ServiceName=HTTP 5.7.2 SetUPnPConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Index in below table is UPNP map table index, range is [0-255] Response OK or ERROR ParamName ParamValue type Description UPnP.Enable bool Enable/Disable UPNP feature. UPnP.MapTable[index].Enable bool Enable/Disable this UPNP map. UPnP.MapTable[index].InnerPort integer Range is [1-65535]. Inner port number UPnP.MapTable[index].OuterPort integer Range is [1-65535]. Outer port number. UPnP.MapTable[index].Protocol string Range is {TCP, UDP] UPnP.MapTable[index].ServiceName string User defined UPnP service name.
  • 46. 46 5.7.3 GetUPnPStatus URL Syntax http://<ip>/cgi-bin/netApp.cgi?action=getUPnPStatus Comment Get UPNP mapping result: result=1: mapping succeed. result=0: mapping failed. Response rsult=1 5.8 NTP 5.8.1 GetNTPConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=NTP Comment Response table.NTP.Address=clock.isc.org table.NTP.Enable=false table.NTP.Port=38 table.NTP.TimeZone=9 table.NTP.UpdatePeriod=31 5.8.2 SetNTPConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description NTP.Address string NTP server IP address or name. NTP.Enable bool Enable/Disable NTP server. NTP.Port integer Range is [1-65535]. Port of NTP server. NTP.TimeZone integer Range is [0-32]. 0: "GMT+00:00"
  • 47. 47 1: "GMT+01:00" 2: "GMT+02:00" 3: "GMT+03:00" 4: "GMT+03:30" 5: "GMT+04:00" 6: "GMT+04:30" 7: "GMT+05:00" 8: "GMT+05:30" 9: "GMT+05:45" 10: "GMT+06:00" 11: "GMT+06:30" 12: "GMT+07:00" 13: "GMT+08:00" 14: "GMT+09:00" 15: "GMT+09:30" 16: "GMT+10:00" 17: "GMT+11:00" 18: "GMT+12:00" 19: "GMT+13:00" 20: "GMT-01:00" 21: "GMT-02:00" 22: "GMT-03:00" 23: "GMT-03:30" 24: "GMT-04:00" 25: "GMT-05:00" 26: "GMT-06:00" 27: "GMT-07:00" 28: "GMT-08:00" 29: "GMT-09:00" 30: "GMT-10:00" 31: "GMT-11:00" 32: "GMT-12:00" NTP.UpdatePeriod integer Range is [0-65535], unit is minutes 5.9 RTSP 5.9.1 GetRTSPConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=RTSP Comment
  • 48. 48 Response table.RTSP.Enable=true table.RTSP.Port=554 table.RTSP.RTP.EndPort=40000 table.RTSP.RTP.StartPort=20000 5.9.2 SetRTSPConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description RTSP.Enable bool Enable/Disable RTSP. RTSP.Port integer RTSP port. RTSP.RTP.StartPort integer RTP start port. RTSP.RTP.EndPort integer RTP end port. 5.10 Telnet 5.10.1 GetTelnetConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Telnet Comment Response table.Telnet.Enable=true 5.10.2 SetTelnetConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description Telnet.Enable bool Enable/Disable Telnet.
  • 49. 49 6.Events 6.1 EventHandler EventHandler is used in alarm and event config in following sections. It contains settings for actions linked with alarm and events. Actions include record, snapshot, PTZ action, log, mail, alarm out and so on.When alarm or event happen, actions defined in alarm EventHandler and event EventHandler are executed. 6.1.1 GetEventHandler URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=<handlerName> Comment < handlerName> can be one of below four formats Alarm[alarm channel].EventHandler MotionDetect[video channel]. EventHandler BlindDetect[video channel]. EventHandler LossDetect[video channel]. EventHandler LoginFailureAlarm.EventHandler Example URL: http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Alarm[0].EventHandler can get EventHandler settings of alarm channel 0. Response handlerName.EventHandler.AlarmOutChannels[0]=1 handlerName.EventHandler.AlarmOutChannels[1]=1 … handlerName.EventHandler.AlarmOutEnable=false handlerName.EventHandler.AlarmOutLatch=10 handlerName.EventHandler.BeepEnable=true handlerName.EventHandler.Dejitter=0 handlerName.EventHandler.Delay=30 handlerName.EventHandler.LogEnable=true handlerName.EventHandler.MailEnable=true handlerName.EventHandler.PtzLink[0][0]=None handlerName.EventHandler.PtzLink[0][1]=0 handlerName.EventHandler.PtzLink[1][0]=None handlerName.EventHandler.PtzLink[1][1]=0 … handlerName.EventHandler.PtzLinkEnable=false handlerName.EventHandler.RecordChannels[0]=1
  • 50. 50 handlerName.EventHandler.RecordChannels[1]=1 … handlerName.EventHandler.RecordEnable=true handlerName.EventHandler.RecordLatch=10 handlerName.EventHandler.SnapshotChannels[0]=1 handlerName.EventHandler.SnapshotChannels[1]=1 … handlerName.EventHandler.SnapshotEnable=false handlerName.EventHandler.SnapshotPeriod=3 handlerName.EventHandler.SnapshotTimes=0 handlerName.EventHandler.TimeSection[0][0]=1 01:00:00-24:00:00 handlerName.EventHandler.TimeSection[0][1]=1 01:00:00-24:00:00 … … handlerName.EventHandler.TimeSection[6][5]=1 01:00:00-24:00:00 handlerName.EventHandler.TipEnable=true handlerName.EventHandler. ExAlarmOutEnable=true handlerName. ExAlarmOutChannels[0] =2 handlerName.ExAlarmOutChannels[1]=3 … 6.1.2 SetEventHandler URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Meaning of handlerName is the same with 6.1.1 GetEventHandler Response OK or ERROR paramName paramValue type Description handlerName.EventHandler.AlarmOutChannels[ch] integer Range is {0, 1}, ch is alarm out channel index. 0 – do not output alarm at alarm out channel ch 1 – output alarm at alarm out channel ch handlerName.EventHandler.AlarmOutEnable bool Enable/Disable alarm out function. handlerName.EventHandler.AlarmOutLatch Integer Range is [10-300]. Unit is seconds, indicates the time to output alarm after input alarm is cleared. handlerName.EventHandler.BeepEnable bool Enable/Disable beep. handlerName.EventHandler.Dejitter integer Range is [0-255]. Alarm signal dejitter seconds. Alarm signal change during this period is
  • 51. 51 ignored. handlerName.EventHandler.Delay integer Range is [0-300]. Delay seconds before setting take effect. handlerName.EventHandler.LogEnable bool Enable/Disable log for alarm. handlerName.EventHandler.MailEnable bool Enable/Disable mail send for alarm. handlerName.EventHandler.PtzLink[ch][0] string Range is {None, Preset, Tour, Pattern} This is PTZ action linked with events. ch is PTZ channel index. handlerName.EventHandler.PtzLink[ch][1] integer This is the parameter of PtzLink[ch][0], If PtzLink[ch]][0] is Preset: this is preset point. Tour: this is tour path number. Pattern: this is pattern number. handlerName.EventHandler.PtzLinkEnable Bool Enable/Disable PTZ link. handlerName.EventHandler.RecordChannels[ch] Integer Range is {0, 1} 0 – do not record on video channel ch 1 – record. on video channel ch handlerName.EventHandler.RecordEnable bool Enable/Disable record function. handlerName.EventHandler.RecordLatch integer Range is [10-300]. Unit is seconds, indicates the time to record after input alarm is cleared.. handlerName.EventHandler.SnapshotChannels[ch] integer Range is {0, 1} 0 – do not snapshot on video channel ch 1 – snapshot on video channel ch handlerName.EventHandler.SnapshotEnable bool Enable/Disable snapshot function. handlerName.EventHandler.SnapshotPeriod integer Range is [0-255]. Frames between snapshot. 0 means continuously snapshot for every frame. handlerName.EventHandler.SnapshotTimes integer Range is [0-65535] Snapshot times before stop, 0 means don’t stop snapshot. handlerName.EventHandler.TimeSection[wd][ts] String It’s table contains effective time period for eventHanlder everyday. wd (week day) range is [0-6] (Sunday-Staurday) ts (time section) range is [0-23], it’s index of timesection table. Format: mask hh:mm:ss-hh:mm:ss Mask: {0,1}, hh: [0-24], mm: [00-59], ss: [00-59] Mask 0: this time section is not used. Mask 1: this time section is used. Example: TimeSection[1][0]=1 12:00:00-18:00:00 Means EventHandler is effective between 12:00:00 and 18:00:00 at Monday. handlerName.EventHandler.TipEnable bool Enable/Disable local message box tip. handlerName.EventHandler. ExAlarmOutEnable bool
  • 52. 52 handlerName. ExAlarmOutChannels[channels] integer 6.2 Alarm 6.2.1 GetAlarmConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Alarm Comment Response table.Alarm[0].Enable=false table.Alarm[0].EventHandler….(output of EventHandler is described in 6.1.1 GetEventHandler) table.Alarm[0].Name=Door1 table.Alarm[0].SensorType=NC table.Alarm[1]…. … 6.2.2 SetAlarmConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, input is external alarm input channel, ch is channel number, wd is weekday index, ts is timesection index. EventHandler defines parameter of relevant actions when alarm or event happens. It’s also used in following sections about events. Response OK or ERROR ParamName ParamValue type Description Alarm[input].Enable bool Enable/Disable alarm from a input channel Alarm[input].EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler Alarm[input].Name string Name of alarm input channel. Alarm[input].SensorType string Range is {NC, NO]. NC: normal close NO: normal open 6.2.3 GetAlarmOutConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=AlarmOut Comment alarmOutChannel below is the alarm out channel index. Response table.AlarmOut[alarmOutChannel].Mode=0
  • 53. 53 table.AlarmOut[alarmOutChannel].Name=Beep 6.2.4 SetAlarmOutConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Port in below table is alarm out port index, start form 0. Response OK or ERROR ParamName ParamValue type Description AlarmOut[port].Mode integer Range is {0, 1, 2} 0: automatically alarm 1: force alarm 2: close alarm AlarmOut[port].Name string Alarm out port name. 6.2.5 GetInSlots URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getInSlots Comment Get alarm input channel number. Below response means there are 2 alarm input channels. Response result=2 6.2.6 GetOutSlots URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getOutSlots Comment Get alarm output channel number. Response result=1 6.2.7 GetInState URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getInStates Comment Get alarm input state for all channels. A bit in the response result indicates a channel alarm states, below result 3 means alarm channel 1 and channel 2 have alarm now.
  • 54. 54 Response result=3 6.2.8 GetOutState URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getOutStates Comment Get alarm output state for all channels. A bit in the response result indicates a channel. 1 means alarm is present. Response result=0 6.2.9 GetChannelInState URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getInStates&channel=<channelNo> Comment Get alarm input state for channelNo. channelNo starts from 0, and must be less than alarm input channels obtained from 6.2.5 GetInSlots. Result 1 means alarm is present. Result 0 means alarm is not present. Response result=1 6.2.10 GetChannelOutState URL Syntax http://<ip>/cgi-bin/alarm.cgi?action=getOutStates&channel=<channelNo> Comment Get alarm output state for channelNo. channelNo starts from 0, and must be less than alarm output channels obtained from 6.2.6 GetOutSlots . Result 1 means alarm is present. Result 0 means alarm is not present. Response result=0 6.3 MotionDetect 6.3.1 GetMotionDetectConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=MotionDetect Comment MotionDetect config of a video channel contains Enable, Level, Region and EventHandler. Response table.MotionDetect[0].Enable=false table.MotionDetect[0].EventHandler… (output of EventHandler is described in 6.1.1 GetEventHandler) table.MotionDetect[0].Level=3 table.MotionDetect[0].Region[0]=3932160 table.MotionDetect[0].Region[1]=3932160
  • 55. 55 table.MotionDetect[0].MotionDetectWindow[0].Id=0 table.MotionDetect[0].MotionDetectWindow[0].Name=Region0 table.MotionDetect[0].MotionDetectWindow[0].Sensitive=58 table.MotionDetect[0].MotionDetectWindow[0].Threshold=4 table.MotionDetect[0].MotionDetectWindow[0].Region[0]=3932160 table.MotionDetect[0].MotionDetectWindow[0].Region[1]=3932160 … … table.MotionDetect[1]… … 6.3.2 SetMotionDetectConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Channel: video channel index LineNum Index of region, region is divided into lines and each line has several blocks, a line is described by a 32 bit integer, a bit for a block.. 0=Line 1 1=Line 2 … … WinNum Index of detect window, there are 4 detect windows at present. Each window is divided into 18 lines and 22 blocks/line. MotionDetectWindow is available with firmware 2.212 and above. RegionIndex It is similar with LineNum,but is beyond to a detect window. Head = MotionDetect[Channel] The italics below will be replaced by the above abbreviations. Response OK or ERROR ParamName ParamValue type Description head.Enable bool Enable/Disable motion detect feature in a channel. head.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler head.Level integer Range is [1-6]. Sensitivity of motion detection. 1: lowest sensitivity. 6: highest sensitivity. head.Region[LineNum] integer Currently, region is divided into 18 lines and 22 blocks/line. A bit describes a block in the line. Bit = 1: motion in this block is monitored.. This filed is used to compatible with the previous firmware. It can be instead by
  • 56. 56 head. MotionDetectWindow[WinNum]. Example: MotionDetect[0].Region[0] = 4194303 (0x3FFFFF):: motion in channel 0 line 0’s 22 blocks is monitored. MotionDetect[0].Region[1] =0: motion in line 1’s 22 blocks is not monitored. MotionDetect[0].Region[17] = 3: in the last line of channel 0, motion in the left two blocks is monitored. head.MotionDetectWindow [WinNum].Id integer It is the Id of a detect window. head.MotionDetectWindow [WinNum].Name string It is the name of a detect window. head.MotionDetectWindow [WinNum].Sensitive integer Range is [0-100]. It presents more sensitive if the value is larger. head.MotionDetectWindow [WinNum]. Threshold integer Range is [0-100]. It presents the threshold value when trigger motion detect. head.MotionDetectWindow [WinNum]. Region[RegionIndex] integer It is similar with head.Region[LineNum]. 6.4 BlindDetect 6.4.1 GetBlindDetectConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=BlindDetect Comment Channel: video channel number head= table.BlindDetect[Channel] Response head.Enable=false head.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler) head.Level=3 6.4.2 SetBlindDetectConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Channel: video channel number head=BlindDetect[Channel] Response OK or ERROR ParamName ParamValue type Description head.Enable bool Enable/Disable blind detect feature. head.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler
  • 57. 57 head.Level integer Range is [1-6]. Sensitivity of blind detection. 1: lowest sensitivity. 6: highest sensitivity. 6.5 LossDetect 6.5.1 GetLossDetectConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=LossDetect Comment Channel: video channel number head=table.BlindDetect[Channel] Response head.Enable=false head.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler) 6.5.2 SetLossDetectConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Channel: video channel number Head = BlindDetect[Channel] Response OK or ERROR ParamName ParamValue type Description head.Enable bool Enable/Disable loss detect feature. head.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler 6.6 LoginFailureAlarm 6.6.1 GetLoginFailureAlarmConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=LoginFailureAlarm Comment Channel: video channel number head=table.LoginFailureAlarm Response head.Enable=false head.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler) 6.6.2 SetLoginFailureAlarmConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
  • 58. 58 Comment Head=LoginFailureAlarm Response OK or ERROR ParamName ParamValue type Description head.Enable bool Enable/Disable notify LoginFailure event.Now this event can be linked with send email and alarm out.The max try login times can be configured in chapter 9.1.2 SetGeneralConfig. head.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler 6.7 StorageAbnormal 6.7.1 GetStorageNotExistConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=StorageNotExist Comment Response StorageNotExist.Enable=false StorageNotExist.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler) 6.7.2 SetStorageNotExistConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description StorageNotExist.Enable bool Enable/Disable loss detect feature. StorageNotExist.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler 6.7.3 Get StorageFailureConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name= StorageFailure Comment Response StorageFailure.Enable=false StorageFailure.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler) 6.7.4 Set StorageFailureConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
  • 59. 59 Comment Response OK or ERROR ParamName ParamValue type Description StorageFailure.Enable bool Enable/Disable loss detect feature. StorageFailure.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler 6.7.5 GetStorageLowSpaceConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name= StorageLowSpace Comment Response StorageLowSpace.Enable=false StorageLowSpace.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler) 6.7.6 SetStorageLowSpaceConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description StorageLowSpace.Enable bool Enable/Disable loss detect feature. StorageLowSpace.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler 6.8 NetAbnormal 6.8.1 GetNetAbortConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name= NetAbort Comment Response NetAbort.Enable=false NetAbort.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler) 6.8.2 SetNetAbortConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...]
  • 60. 60 Comment Response OK or ERROR ParamName ParamValue type Description NetAbort.Enable bool Enable/Disable loss detect feature. NetAbort.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler 6.8.3 GetIPConflictConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name= IPConflict Comment Response IPConflict.Enable=false IPConflict.EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler) 6.8.4 SetIPConflictConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description IPConflict.Enable bool Enable/Disable loss detect feature. IPConflict.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler 6.9 GetEventIndexes URL Syntax http://<ip>/cgi-bin/eventManager.cgi?action=getEventIndexes&code=<eventCode> Comment Get channels indexes that event of code eventCode happens. eventCode includes: VideoMotion: motion detection event VideoLoss: video loss detection event VideoBlind: video blind detection event. AlarmLocal: alarm detection event. Response channels[0]=0 channels[1]=2 channels[2]=3
  • 61. 61 … (This response means event happened on channel 0, channel 2, and channel 3.) 6.10 Attach URL Syntax http://<ip>/cgi-bin/eventManager.cgi?action=attach&codes=[<eventCode>,<eventCode> ,…] Comment Get channels indexes that event of code eventCode happens. eventCode includes: VideoMotion: motion detection event VideoLoss: video loss detection event VideoBlind: video blind detection event. AlarmLocal: alarm detection event. CrossLineDetection: tripwire event CrossRegionDetection: intrusion event LeftDetection: abandoned object detection TakenAwayDetection: missing object detection VideoAbnormalDetection: scene change event FaceDetection: face detect event AudioMutation: intensity change AudioAnomaly: input abnormal VideoUnFocus: defocus detect event WanderDetection: loitering detection event RioterDetection: People Gathering event ParkingDetection: parking detection event MoveDetection: fast moving event MDResult: motion detection data reporting event. The motion detect window contains 18 rows and 22 columns. The event info contains motion detect data with mask of every row. Response HTTP Code: 200 OKrn Cache-Control: no-cachern Pragma: no-cachern Expires: Thu, 01 Dec 2099 16:00:00 GMTrn Connection: closern Content-Type: multipart/x-mixed-replace; boundary=<bondary>rn Body: --<bondary>rn Content-Type: text/plainrn Content-Length: <data length>rn <eventInfo>rnrn --<bondary>rn Content-Type: text/plainrn Content-Length: <data length>rn <eventInfo>rnrn
  • 62. 62 For example: HTTP Code: 200 OKrn Cache-Control: no-cachern Pragma: no-cachern Expires: Thu, 01 Dec 2099 16:00:00 GMTrn Connection: closern Content-Type: multipart/x-mixed-replace; boundary=myboundaryrnrn Body: -- myboundary rn Content-Type: text/plainrn Content-Length: 39rn Code=VideoMotion;action=Start;index=0rnrn -- myboundary rn Content-Type: text/plainrn Content-Length: 38rn Code=VideoBlind;action=Start;index=0rnrn -- myboundary rn Content-Type: text/plainrn Content-Length: 38rn Code= AlarmLocal;action=Start;index=0rnrn -- myboundary rn Content-Type: text/plainrn Content-Length: 38rn Code= MDResult;action=Pulse;index=0;data=61708863,61708863…rnrn -- myboundary rn … 7. PTZ 7.1 PTZConfig 7.1.1 GetPTZConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Ptz Comment Port in below table is PTZ port index, start form 0. Response table.Ptz[port].Address=8 table.Ptz[port].Attribute[0]=115200 table.Ptz[port].Attribute[1]=8 table.Ptz[port].Attribute[2]=Even
  • 63. 63 table.Ptz[port].Attribute[3]=1 table.Ptz[port].Homing[0]=0 table.Ptz[port].Homing[1]=30 table.Ptz[port].NumberInMatrixs=0 table.Ptz[port].ProtocolName=NONE 7.1.2 SetPTZConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Port in below table is PTZ port index, start form 0. Response OK or ERROR ParamName ParamValue type Description Ptz[port].Address integer Range is [0-255]. Device address, if there are more than one device connected to this port, distinguish them by this address. Ptz[port].Attribute[0] integer Range is {1200, 2400 ,4800, 9600, 19200, 38400, 57600, 115200}. Baudrate Ptz[port].Attribute[1] integer Range is {4, 5, 6, 7, 8}. Data bit. Ptz[port].Attribute[2] string Range is {Even, Mark, None, Odd, Space}. Parity verification mode. Ptz[port].Attribute[3] float Range is {1, 1.5, 2}. Stop bit. Ptz[port].Homing[0] integer Range is {-1,0-255} -1: homing is disabled. [0-255]: preset point number Ptz[port].Homing[1] integer Range is [0-65535]. No operation timeout, unit is seconds. After no operation timeout, PTZ go to preset point set in Ptz[port].Homing[0]. Ptz[port].ProtocolName string PTZ protocol name, depends on PTZ capability, refer to 7.2.1 GetProtocolList to get the protocol list.
  • 64. 64 7.2 PTZControl 7.2.1 GetProtocolList URL Syntax http://<ip>/cgi-bin/ptz.cgi?action=getProtocolList Comment Get PTZ protocol list. Response contains all support PTZ protocols separated by comma. Response result=NONE,AD1641M,ADMATRIX,BANKNOTE,DH-CC440,DH-MATRIX,DH-SD1,DH-SD2,HAIYU,HY,LILIN,PANASONIC 7.2.2 GetCurrentProtocolCaps URL Syntax http://<ip>/cgi-bin/ptz.cgi?action=getCurrentProtocolCaps&channel=<channelNo> Comment Get PTZ protocol list, channelNo is PTZ channel index. Response caps.AlarmLen=0 caps.AuxMax=8 caps.AuxMin=1 caps.CamAddrMax=255 caps.CamAddrMin=1 caps.Interval=200 caps.Menu=false caps.MonAddrMax=255 caps.MonAddrMin=0 caps.Name=DH-SD1 caps.PanSpeedMax=255 caps.PanSpeedMin=1 caps.PatternMax=5 caps.PatternMin=1 caps.PresetMax=80 caps.PresetMin=1 caps.TileSpeedMax=255 caps.TileSpeedMin=1 caps.TourMax=7 caps.TourMin=0 caps.Type=1 Field in response Description AlarmLen Alarm length in protocol AuxMax Maximum/Minimum number for auxiliary functions
  • 65. 65 AuxMin CamAddrMax Maximum/Minimum channel address CamAddrMin Menu True or false, support internal menu of the PTZ or not, MonAddrMax Maximum/Minimum monitor address MonAddrMin Name Name of the operation protocol PanSpeedMax Maximum/Minimum pan speed. PanSpeedMin PatternMax Maximum/Minimum pattern path number. PatternMin PresetMax Maximum/Minimum preset point number. PresetMin TileSpeedMax Maximum/Minimum tile speed. TileSpeedMin TourMax Maximum/Minimum tour path number. TourMin Type Type of PTZ protocol. 7.2.3 PTZ control commands URL Syntax http://<ip>/cgi-bin/ptz.cgi?action=[action]&channel=[ch]&code=[code]&arg1=[argstr]& arg2=[argstr]&arg3=[argstr] Comment This URL is used to start/stop PTZ control command. action is PTZ control command, it can be start or stop. ch is PTZ channel range is [0 - n-1], code is PTZ operation, and arg1, arg2, arg3 is the arguments of operation. Code and argstr values are listed in below table. Response OK or ERROR Code Code description arg1 arg2 arg3 arg4 Up Tile up 0 Vertical speed, range is [1-8] 0 0 Down Tile down 0 Vertical speed, range is [1-8] 0 0 Left Pan left 0 Vertical speed, range is [1-8] 0 0 Right Pan right 0 Vertical speed, range is [1-8] 0 0 ZoomWide Zoom out 0 multiple 0 0 ZoomTele Zoom in 0 multiple 0 0 FocusNear Focus near 0 multiple 0 0 FocusFar Focus far 0 multiple 0 0
  • 66. 66 IrisLarge Aperture larger 0 multiple 0 0 IrisSmall Aperture smaller 0 multiple 0 0 GotoPreset Go to PTZ preset point 0 Preset point number 0 0 SetPreset Set PTZ preset point 0 Preset point number 0 0 ClearPreset Clear PTZ preset point 0 Preset point number 0 0 LampWaterClear 1: open 2: close 0 0 0 StartTour Start PTZ tour Tour path number 0 1: start 2: automatically 3: stop 0 LeftUp Pan left and tile up Vertical speed, range is [1-8] Horizontal speed, range is [1-8] 0 0 RightUp Pan right and tile up Vertical speed, range is [1-8] Horizontal speed, range is [1-8] 0 0 LeftDown Pan left and tile down Vertical speed, range is [1-8] Horizontal speed, range is [1-8] 0 0 RightDown Pan right and tile down Vertical speed, range is [1-8] Horizontal speed, range is [1-8] 0 0 AddTour Add preset point to tour path Tour path number Preset point number 0 0 DelTour Delete preset point from tour path Tour path number Preset point number 0 0 ClearTour Clear tour path Tour path number 0 0 0 AutoPanOn Start pan rotate 0 0 0 0 AutoPanOff Stop pan rotate 0 0 0 0 SetLeftLimit Set left limit. 0 0 0 0 SetRightLimit Set right limit. 0 0 0 0 AutoScanOn Start auto scan. 0 0 0 0 AutoScanOff Stop auto scan. 0 0 0 0 SetPatternBegin Begin pattern path set. Pattern number 0 0 0 SetPatternEnd End pattern path set. Pattern number 0 0 0 StartPattern Run pattern path Pattern number 0 0 0 StopPattern Stop pattern path Pattern number 0 0 0 ClearPattern Clear pattern path Pattern number 0 0 0 AlarmSearch Search alarm. 0 0 0 0 Position Go to position Horizontal position Vertical position Zoom change 0 AuxOn Auxiliary function on, auxiliary function is defined in product 0 0 0 0
  • 67. 67 definition document. AuxOff Auxiliary function off 0 0 0 0 Menu 0 0 0 0 Exit 0 0 0 0 Enter 0 0 0 0 Esc 0 0 0 0 MenuUp 0 0 0 0 MenuDown 0 0 0 0 MenuLeft 0 0 0 0 MenuRight 0 0 0 0 Reset Restore default configuration. 0 0 0 0 SetPresetName Preset point number (1 byte) Preset point title. 0 0 AlarmPtz Alarm linked PTZ. External alarm input channel. Link type: 1: go to preset point 2: auto scan 3: tour Argument of link type: Link type = 1, this is preset point number Link type = 2, this is auto scan path Link type = 3, this is tour path 0 LightController Control the light on/off. Address of light controller Light number switch 0 PositionABS Go to ABS position Horizontal angle: 0°-360° Vertical angle :0°-90° Zoom in mutiple Speed[1-8], not must PositionReset Use current direction as reference. 0 0 0 0 UpTele up + TELE Speed [1-8] 0 0 0 DownTele down + TELE Speed [1-8] 0 0 0 LeftTele left + TELE Speed [1-8] 0 0 0 RightTele right + TELE Speed [1-8] 0 0 0 LeftUpTele leftup + TELE Speed [1-8] 0 0 0 LeftDownTele leftdown + TELE Speed [1-8] 0 0 0 RigjtUpTele rightup + TELE Speed [1-8] 0 0 0 RightDownTele rightdown + TELE Speed [1-8] 0 0 0 UpWide up + WIDE Speed [1-8] 0 0 0 DownWide down + WIDE Speed [1-8] 0 0 0 LeftWide left + WIDE Speed [1-8] 0 0 0 RightWide right + WIDE Speed [1-8] 0 0 0 LeftUpWide leftup + WIDE Speed [1-8] 0 0 0 LeftDownWide leftdown + WIDE Speed [1-8] 0 0 0
  • 68. 68 RightUpWide rightup + WIDE Speed [1-8] 0 0 0 RightDownWide rightdown + WIDE Speed [1-8] 0 0 0 Continuously Move Continuously Horizontal Speed [-8-8] Vertical Speed [-8-8] Zoom Speed [-8-8] Timeout Relatively Move Relatively Relatively angle: 0°-360° Relatively angle :0°-90° Relatively Zoom 7.3 PTZStatus 7.3.1 PTZ GetStatus URL Syntax http://<ip>/cgi-bin/ptz.cgi?action=getStatus Comment This URL is used to get PTZStatus. Response status.UTC=6538920 status.MoveStatus=Idle status.ZoomStatus=Idle status.PresetID=10 status.Position=120,12,2 8. RecordSnap 8.1 Record 8.1.1 GetRecordConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Record Comment Channel in below table is video channel number, weekday range is [0-6] (Sunday - Saturday). Record config contains pre record time and record time sections of every day. Response table.Record[channel].PreRecord=6 table.Record[channel].HolidayEnable=true table.Record[channel].TimeSection[weekday][0]=1 00:00:00-24:00:00 table.Record[channel].TimeSection[weekday][1]=0 02:00:00-24:00:00 table.Record[channel].TimeSection[weekday][2]=0 03:00:00-24:00:00 table.Record[channel].TimeSection[weekday][3]=0 04:00:00-24:00:00 table.Record[channel].TimeSection[weekday][4]=0 05:00:00-24:00:00 table.Record[channel].TimeSection[weekday][5]=0 06:00:00-24:00:00
  • 69. 69 8.1.2 SetRecordConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table: ch = channel index, wd = week day index, ts = time section index Response OK or ERROR ParamName ParamValue type Description Record[ch].PreRecord integer Range is [0-300]. Prerecord seconds, 0 means no prerecord. ch (Channel number) starts form 0 Record[ch]. HolidayEnable bool Record or not when a day is a holiday setted is chapter 8.4 Holiday. Record[ch].TimeSection[wd][ts] string wd (week day) range is [0-6] (Sunday - Staurday) ts (time section) range is [0-23], timesection table index. Format: mask hh:mm:ss-hh:mm:ss Mask: [0-65535], hh: [0-24], mm: [0-59], ss: [0-59] Mask indicates record type by bits: Bit0: regular record Bit1: motion detection record Bit2: alarm record Bit3: card record Example: Set record time to every Sunday all day. Record type is motion detection and alarm. URL should be: http://<ip>/cgi-bin/configManager.cgi?action=setConfig&name=Record[0].TimeSection[0][0]&table=6 00:00:00-24:00:00 In this example, “6 00:00:00-24:00:00” means motion detection and alarm record all day (6 = 4 & 2, alarm is 4, motion detection is 2.). 8.1.3 GetRecordModeConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=RecordMode Comment Get record mode for video channels. channel in below table is video channel number. Response table.RecordMode[channel].Mode=0 8.1.4 SetRecordModeConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment channel in below table is video channel index, start form 0.
  • 70. 70 Response OK or ERROR ParamName ParamValue type Description RecordMode[channel].Mode integer Range is {0, 1, 2}. 0: automatically record 1: manually record 2: stop record. 8.2 Snap 8.2.1 GetSnapConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Snap Comment Channel in below table is video channel number, weekday range is [0-6] (Sunday - Saturday). Response table.Snap [channel].HolidayEnable=true table.Snap[channel].TimeSection[weekday][0]=1 00:00:00-24:00:00 table.Snap[channel].TimeSection[weekday][1]=0 02:00:00-24:00:00 table.Snap[channel].TimeSection[weekday][2]=0 03:00:00-24:00:00 table.Snap[channel].TimeSection[weekday][3]=0 04:00:00-24:00:00 table.Snap[channel].TimeSection[weekday][4]=0 05:00:00-24:00:00 table.Snap[channel].TimeSection[weekday][5]=0 06:00:00-24:00:00 8.2.2 SetSnapConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table: ch = channel index, wd = week day index, ts = time section index Response OK or ERROR ParamName ParamValue type Description Snap [ch].HolidayEnable bool Snap or not when a day is a holiday setted is chapter 8.4 Holiday. Snap[ch].TimeSection[wd][ts] string wd (week day) range is [0-6] (Sunday- Staurday) ts (time section) range is [0-23], it’s timesection table index. Format: mask hh:mm:ss-hh:mm:ss Mask: [0-65535], hh: [0-24], mm: [0-59], ss: [0-59] Mask indicates record type by bits: Bit0: regular snapshot
  • 71. 71 Bit1: motion detection snapshot Bit2: alarm snapshot Bit3: card snapshot 8.2.3 attachFileProc URL Syntax http://<ip>/cgi-bin/snapManager.cgi?action=attachFileProc&Flags[0]=Event&Events=[<eventCode>,<eventCode> ,…] Comment Get channels indexes that event of code eventCode happens. Flag[0]:Event eventCode includes: All: all event. VideoMotion: motion detection event VideoLoss: video loss detection event VideoBlind: video blind detection event. AlarmLocal: alarm detection event. All intelligent event include CrossLineDetection,..eg Response <Jpeg data> 8.3 MediaGlobal 8.3.1 GetMediaGlobalConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=MediaGlobal Description Response table.MediaGlobal.SnapFormatAs=MainFormat 8.3.2 SetMediaGlobalConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment It presents obtaining snap stream from Main stream or extra stream. Response OK or ERROR ParamName ParamValue type Description MediaGlobal.SnapFormatAs string The range is {“MainFormat”, “ExtraFormat”}
  • 72. 72 8.4 Holiday 8.4.1 GetHolidayConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Holiday Description Get holiday config for record or snap. Response table.Holiday.MonthMask[0]=3 table.Holiday.MonthMask[1]=0 table.Holiday.MonthMask[2]=0 table.Holiday.MonthMask[3]=0 table.Holiday.MonthMask[4]=0 table.Holiday.MonthMask[5]=0 table.Holiday.MonthMask[6]=0 table.Holiday.MonthMask[7]=0 table.Holiday.MonthMask[8]=0 table.Holiday.MonthMask[9]= 1610612739 table.Holiday.MonthMask[10]=0 table.Holiday.MonthMask[11]=0 8.4.2 SetHolidayConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment monthIndex presents the index of a month. 0 presents January, 1 presents February, 11 presents December. Response OK or ERROR ParamName ParamValue type Description Holiday.MonthMask[monthIndex] integer It is the mask of a month.Every bit present a day. For example, 0x0001 presents the first day of a month is holiday.0x0002 presents the second day of a month is holiday, 0x0003 presents the first day and second day of a month is holiday.
  • 73. 73 9. System 9.1 General 9.1.1 GetGeneralConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=General Comment Response table.General.MachineName=Amcrest001 table.General. LocalNo=8 table.General. MachineAddress=”binjiangqv jiangnandadao weiyelu” table.General. MachineGroup=”jiaojing yidui table.General.LockLoginEnable=true table.General.LockLoginTimes=3 table.General.LoginFailLockTime=1800 9.1.2 SetGeneralConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description General.MachineName string Device name or serial number. General. LocalNo integer General. MachineAddress string General. MachineGroup string General. LockLoginEnable bool Whether support lock login times setting. General. LockLoginTimes integer Max try times of login failed, when exceeding the times the device will be locked and alarm. General. LoginFailLockTime integer Lock login seconds.
  • 74. 74 9.2 SystemTime 9.2.1 GetCurrentTime URL Syntax http://<ip>/cgi-bin/global.cgi?action=getCurrentTime Comment The time format is "Y-M-D H-m-S". It’s not be effected by Locales.TimeFormat in 9.3.2 SetLocalesConfig. Response result = 2011-7-3 21:02:32 9.2.2 SetCurrentTime URL Syntax http://<ip>/cgi-bin/global.cgi?action=setCurrentTime&time=2011-7-3%2021:02:32 Comment The time format is "Y-M-D H-m-S". It’s not be effected by Locales.TimeFormat in 9.3.2 SetLocalesConfig. Response OK or ERROR 9.3 Locales 9.3.1 GetLocalesConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Locales Comment Response table.Locales.DSTEnable=false table.Locales.DSTEnd.Day=1 table.Locales.DSTEnd.Hour=0 table.Locales.DSTEnd.Minute=0 table.Locales.DSTEnd.Month=1 table.Locales.DSTEnd.Week=2 table.Locales.DSTEnd.Year=2011 table.Locales.DSTStart.Day=0 table.Locales.DSTStart.Hour=0 table.Locales.DSTStart.Minute=0 table.Locales.DSTStart.Month=1 table.Locales.DSTStart.Week=1 table.Locales.DSTStart.Year=2011 table.Locales.TimeFormat=yyyy-MM-dd HH:mm:ss
  • 75. 75 9.3.2 SetLocalesConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description Locales.DSTEnable bool Enable/Disable DST (daylight saving time) Locales.DSTEnd.Day integer Range is [0-6] or [1-31] [0-6]: week day, 0 = Sunday, 6 = Saturday [1-31]: month day If Locales.DSTEnd.Week is 0, use month day, otherwise, use week day. Locales.DSTEnd.Hour integer Range is [0-23] Locales.DSTEnd.Minute integer Range is [0-59] Locales.DSTEnd.Month integer Range is [1-12] Locales.DSTEnd.Week Integer Range is {1,2,3,4,-1,0}. 0 = Use month day [1,2,3,4,-1]: use week day. 1 = first week, 2 = second, 3 = third, 4 = fourth, -1 = last. Locales.DSTEnd.Year Integer Range is [2000-2038] Locales.DSTStart.Day Range is the same with items in Locales.DSTEnd Locales.DSTStart table and Locales.DSTEnd table together defines the time range of DST. Locales.DSTStart.Hour Locales.DSTStart.Minute Locales.DSTStart.Month Locales.DSTStart.Week Locales.DSTStart.Year Locales.TimeFormat string Defines time format displayed in video time title. String form is: year-month-day hour:mm:ss. Position of year, month and day can be exchanged. Range of year is {yy, yyyy} yy = year without century, yyyy = year with century. Range of month is {M, MM, MMMM} M = 1 for January, MM = 01 for January, MMMM = Jan for January Range of day is {d, dd} d = 1 for first day, dd = 01 for first day Range of hour is {H, HH, h, hh} H = 1 for 1:00, HH = 01 for 1:00, range is 0-23 h = 1 for 1:00, hh = 01 for 1:00, time range is 1-12
  • 76. 76 Example: yyyy-MM-dd HH:mm:ss or MM-dd-yyyy HH:mm:ss or dd-M-yy hh:mm:ss 9.4 Language 9.4.1 GetLanguageCaps URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getLanguageCaps Comment Get the list of supported languages, response is a string contains languages with comma separated. Languages include {English, SimpChinese, TradChinese, Italian, Spanish, Japanese, Russian, French, German] Response Languages=SimpChinese,English,French 9.4.2 GetLanguageConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=Language Comment Get current system language cofnig. Response table.Language=SimpChinese 9.4.3 SetLanguageConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment NOTE: After changing language setting, system will automatically reboot! Response OK or ERROR ParamName ParamValue type Description Language string The language range is get from interface in 9.3.1 GetLanguageCaps
  • 77. 77 9.5 AccessFilter 9.5.1 GetAccessFilterConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=AccessFilter Comment bannedIndex below is the banned IP list index, trustIndex below is the trust IP list index. Response table.AccessFilter.BannedList[bannedIndex]=10.6.10.1 table.AccessFilter. TrustList[trustIndex]=1.2.3.4 table.AccessFilter.Enable=false table.AccessFilter.Type=BannedList 9.5.2 SetAccessFilterConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Range of index in below table is [0-255] Response OK or ERROR ParamName ParamValue type Description AccessFilter.BannedList[index] string Banned IP address list AccessFilter.TrustList[index] string Trusted IP address list AccessFilter.Enable bool Enable/Disable access filter function AccessFilter.Type string Range is {TrustList, BannedList}, TrustList: Turst list is used, banned list is not used. BannedList: Banned list is used, turst list is not used. 9.6 AutoMaintain 9.6.1 GetAutoMaintainConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=AutoMaintain Comment Response table.AutoMaintain. AutoRebootDay=3 table.AutoMaintain. AutoRebootHour=0
  • 78. 78 table.AutoMaintain. AutoRebootMinute=0 table.AutoMaintain. AutoShutdownDay=1 table.AutoMaintain. AutoShutdownHour=0 table.AutoMaintain. AutoShutdownMinute=0 table.AutoMaintain. AutoStartUpDay=1 table.AutoMaintain. AutoStartUpHour=2 table.AutoMaintain. AutoStartUpMinute=0 9.6.2 SetAutoMaintainConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment Response OK or ERROR ParamName ParamValue type Description AutoMaintain. AutoRebootDay integer Range is [-1-7]. Auto restart day. -1 = never auto restart 0- 6 = Sunday-Saturday 7 = restart every day AutoMaintain. AutoRebootHour integer Range is [0-23]. Auto restart hour AutoMaintain. AutoRebootMinute integer Range is [0-59]. Auto restart minute AutoMaintain. AutoShutdownDay integer Auto reboot time. Range is same with AutoOpenDay, AutoOpenHour, AutoOpenMinute.AutoMaintain. AutoShutdownHour AutoMaintain. AutoShutdownMinute AutoMaintain. AutoStartUpDay integer Auto shutdown time. Range is same with AutoOpenDay, AutoOpenHour, AutoOpenMinute.AutoMaintain. AutoStartUpHour AutoMaintain. AutoStartUpMinute
  • 79. 79 9.7 UserManager 9.7.1 Group There are two user groups: “admin” and “user”. The “admin” group has all the authorities of operating the IP Camera. The “user” group only has monitor and replay authorities. 9.7.2 GetGroupInfo URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=getGroupInfo&name=<groupName> Comment Get group setting with name groupName. The range of groupName is: “admin” and “user”. Response group.Name=admin group.Memo=administrator group goup. AuthorityList=<authList> 9.7.3 GetGroupInfoAll URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=getGroupInfoAll Comment Get information of all groups. Response group[0].Name=admin group[0].Memo=administrator group group[0]. AuthorityList=<authList> group[1].Name=user group[1].Memo=user group group[1]. AuthorityList=<authList> group[2]…. 9.7.4 AddUser URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=addUser& user.Name=<userName>& user.Password=<userPassword>& user.Memo=<userMemo>& user.Group=<userGroup>& user.Reserved=<userReserved>& user.Sharable=<userSharable>
  • 80. 80 user.AuthList=<authList> Comment user.Group: string, the range is “admin” and “user”. In different group, the user has different authorities. user.Sharable: bool, true means allow multi-point login. User.Reserved: bool, true means this user can’t be deleted. User.AuthList;. For example: Add a user of name operator, password 123456, belongs to group user, and allow multi-point login. http://<ip>/cgi-bin/userManager.cgi?action=addUser&user.Name=operator&user.Password=123456&user.Group=user&us er.Sharable=true&user.Reserved=false&user.AuthList= CtrlPanel,ShutDown, Record,Backup Response OK or ERROR 9.7.5 DeleteUser URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=deleteUser&name=<userName> Comment Delete user with name username. Response OK or ERROR 9.7.6 ModifyUser URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=modifyUser& name=<oldUserName>& user.Name=<userName>& user.Password=<userPassword>& user.Memo=<userMemo>& user.Group=<userGroup>& user.Reserved=<userReserved>& user.Sharable=<userSharable> user.AuthList=<authList> Comment Value range of parameters in <> is the same with 9.7.4 AddUser Response OK or ERROR 9.7.7 ModifyPassword URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=modifyPassword&name=<username>&pwd=<newPwd>&pwdOld=<oldPwd> Comment Modify user password, old password oldPwd should be supplied, new password is newPwd. Response OK or ERROR
  • 81. 81 9.7.8 GetUserInfo URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=getUserInfo&name=<userName> Comment Get use information with name userName Response user.Name=admin user.Memo=admin 's account user.Group=admin user.Reserved=true user.Sharable=true user. AuthList=<authList> 9.7.9 GetUserInfoAll URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=getUserInfoAll Comment Get information of all users. Response users[0].Group=admin users[0].Id=1 users[0].Memo=admin 's account users[0].Name=admin users[0].Reserved=true users[0].Sharable=true users[0]. AuthList=<authList> users[1].Group=admin … 9.7.10 GetActiveUserInfoAll URL Syntax http://<ip>/cgi-bin/userManager.cgi?action=getActiveUserInfoAll Comment Get active users. Response users[0].name=admin users[0].ip=10.43.2.16 users[0].group=admin users[0].clienttype=web3.0 users[0].logintime=2011-11-08 09:51:03
  • 82. 82 9.8 System Operation 9.8.1 Reboot URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=reboot Comment Reboot the device. If successful, response OK. If fail, response ERROR. Response OK or ERROR 9.8.2 Shutdown URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=shutdown Comment Shutdown the device. If successful, response OK. If fail, response ERROR. Response OK or ERROR 9.8.3 GetDeviceType URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getDeviceType Comment Get the device type. Response type=IPC-HF3300 9.8.4 GetHardwareVersion URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getHardwareVersion Comment Get the device hardware version Response version=1.00 9.8.5 GetSerialNo URL Syntax http://<ip> /cgi-bin/magicBox.cgi?action=getSerialNo Comment Get the device serial number Response sn=YZC0GZ05100020 9.8.6 GetMachineName URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getMachineName Comment Get the device machine name.
  • 83. 83 Response name=YZC0GZ05100020 9.8.7 GetSystemInfo URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getSystemInfo Comment Get the system information. Response serialNumber=YZC0GZ05100020 deviceType=IPC-HF3300 hardwareVersion=1.00 9.8.8 GetVendor URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getVendor Comment Get the vendor information. Response vendor=Amcrest 9.8.9 GetSoftwareVersion URL Syntax http://<ip>/cgi-bin/magicBox.cgi?action=getSoftwareVersion Comment Get software information. Response version=2.212.0000.0.R,build:2013-11-14 9.8.10 GetOnvifVersion URL Syntax http://<ip>/cgi-bin/intervideoManager.cgi?action=getOnvifVersion Comment Get onvif version information. Response version=2.4.1 9.9 Log 9.9.1 StartFind URL Syntax http://<ip>/cgi-bin/log.cgi?action=startFind&condition.StartTime=<start>&condition.EndTime=<end> Comment Start to find log, in response, there is a token for further log finding process. start/end: the start/end time of log. Format is: yyyy-mm-dd hh:mm:ss. Example: Find log between 2011-1-1 12:00:00 and 2011-1-10 12:00:00, URL is: http://<ip>/cgi-bin/log.cgi?action=startFind&condition.StartTime=2011-1-1 12:00:00
  • 84. 84 &condition.EndTime=2011-1-10 12:00:00 Response token=1 9.9.2 DoFind URL Syntax http://<ip>/cgi-bin/log.cgi?action=doFind&token=<tokenValue>&count=<logCount> Comment Find log with token tokenValue and count logCount tokenValue is get by startFind in above section, logCount is the count of logs for this query. The maximum value of logCount is 100. Response found=2 items[0].RecNo=789 items[0].Time=2011-05-20 11:59:10 items[0].Type=ClearLog items[0].User=admin items[1].Detail.Compression=H.264->MJPG items[1].Detail.Data=Encode items[1].RecNo=790 items[1].Time=2011-05-20 11:59:21 items[1].Type=SaveConfig items[1].User=System … Field in Response Description found Count of found log, found is 0 if no log is found. User User name Type Log type Time Time of this log RecNo Log number. Detail Log details. 9.9.3 StopFind URL Syntax http://<ip>/cgi-bin/log.cgi?action=stopFind&token=<tokenValue> Comment Stop query log by token tokenValue Response OK or ERROR
  • 85. 85 9.9.4 Clear URL Syntax http://<ip>/cgi-bin/log.cgi?action=clear Comment Clear all the logs. Response OK or ERROR 9.10 UserGlobal 9.10.1 GetUserGlobalConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=UserGlobal Comment Response table.UserGlobal.OnvifLoginCheck=false 9.10.2 SetUserGlobalConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&UserGlobal.OnvifLoginCheck=<flag> Comment Enable Onvif login check or not, <flag> range is {true, false} Response OK or ERROR 9.11 IntervideoManager 9.11.1 GetCGIVersion URL Syntax http://<ip>/cgi-bin/ IntervideoManager.cgi?action=getVersion&Name=CGI Comment Get CGI version Response version=1.40
  • 86. 86 10. Storage 10.1 File Finding 10.1.1 Create URL Syntax http://<ip>/cgi-bin/mediaFileFind.cgi?action=factory.create Comment Create a media file finder Response result=08137 10.1.2 StartFind URL Syntax http://<ip>/cgi-bin/mediaFileFind.cgi?action=findFile&object=<objectId>&condition.Channel=<channel>&condition.StartTime= <start>&condition.EndTime=<end>&condition.Dirs[0]=<dir>&condition.Types[0]=<type>&condition.Flag[0]=<flag>&condition.E vents[0]=<event> Comment Start to find file wth the above condition. If start successfully, return true, else return false. object : The object Id is got from interface in 10.1.1 Create condition.Channel: in which channel you want to find the file . condition.StartTime/condition.EndTime: the start/end time when recording. condition.Dirs: in which directories you want to find the file. It is an array. The index starts from 0. The range of dir is {“/mnt/dvr/sda0”, “/mnt/dvr/sda1”}. This condition can be omitted. If omitted, find files in all the directories. condition.Types: which types of the file you want to find. It is an array. The index starts from 0. The range of type is {“dav”, “jpg”, “mp4”}. If omitted, find files with all the types. condition.Flags: which flags of the file you want to find. It is an array. The index starts from 0. The range of flag is {“Timing”, “Manual”, “Marker”, “Event”, “Mosaic”, “Cutout”}. If omitted, find files with all the flags. condition.Event: by which event the record file is triggered. It is an array. The index starts from 0. The range of event is {“AlarmLocal”, “VideoMotion”, “VideoLoss”, “VideoBlind”, “Traffic*”}. This condition can be omitted. If omitted, find files of all the events. Example: Find file in channel 1, in directory “/mnt/dvr/sda0",event type is "AlarmLocal" or "VideoMotion", file type is “dav”, and time between 2011-1-1 12:00:00 and 2011-1-10 12:00:00 , URL is: http://<ip>/cgi-bin/mediaFileFind.cgi?action=findFile&object=08137&condition.Channel=1&conditon.Dir[0]=”/mnt/dvr/sda0”& conditon.Event[0]=AlarmLocal&conditon.Event[1]=VideoMotion&condition.StartTime=2011-1-1%2012:00:00&condition.EndTi me=2011-1-10%2012:00:00 Response OK or Error
  • 87. 87 10.1.3 FindNextFile URL Syntax http://<ip>/cgi-bin/mediaFileFind.cgi?action=findNextFile&object=<objectId>&count=<fileCount> Comment Find the next fileCount files. The maximum value of fileCount is 100. Response found=1 items[0]. Channel =1 items[0]. StartTime =2011-1-1 12:00:00 items[0]. EndTime =2011-1-1 13:00:00 items[0]. Type =dav items[0]. Events[0]=AlarmLocal items[0]. FilePath =/mnt/dvr/sda0/2010/8/11/dav/15:40:50.jpg items[0]. Length =790 items[0]. Duration = 3600 items[0].SummaryOffset=2354 tems[0].Repeat=0 items[0].WorkDir=”/mnt/dvr/sda0” items[0]. Overwrites=5 items[0]. WorkDirSN=0 Field in Response Description found Count of found file, found is 0 if no file is found. Channel Channel StartTime Start Time EndTime End time Type File type Events Event type. FilePath filepath. Length File length Duration Duration time SummaryOffset Summary offset Repeat Repeat file number WorkDir The file’s directory Overwrites Overwrite times of the work directory WorkDirSN Workdir No 10.1.4 Close URL Syntax http://<ip>/cgi-bin/mediaFileFind.cgi?action=close&object=<objectId> Comment Stop find.
  • 88. 88 Response OK or ERROR 10.1.5 Destroy URL Syntax http://<ip>/cgi-bin/mediaFileFind.cgi?action=destroy&object=<objectId> Comment Destroy the media file finder. Response OK or ERROR 10.2 Storage Device 10.2.1 GetStorageDeviceCollect URL Syntax http://<ip>/cgi-bin/storageDevice.cgi?action=factory.getCollect Comment Get all the storage device names Response A list of all device names list[0]=”/dev/sda0” list[1]=”/dev/sda1” list[2]=”/dev/sg1” 10.2.2 getDeviceAllInfo URL Syntax http://<ip>/cgi-bin/storageDevice.cgi?action=getDeviceAllInfo Comment Get all the storage device infos Response list[0].Detail[0].IsError=false list[0].Detail[0].Pointer=27023434 list[0].Detail[0].TotalBytes=0 list[0].Detail[0].Type=ReadWrite list[0].Detail[0].UsedBytes=0 list[0].Pointer=22347602 list[0].State=Success 10.2.3 setStorageDevice URL Syntax http://<ip>/cgi-bin/storageDevice.cgi?action=setDevice&pointer=xxx&type=xxx Comment Set to storage device wth the above condition. If set successfully, return true, else return false. type: Range is {Lock, UnLock, FormatPatition, UnMount }. pointer: The object Id is got from cgi API(cgi-bin/storageDevice.cgi?action=getDeviceAllInfo).If type is Lock or UnLock, pointer is list[0].Detail[0].Pointer, If If type is FormatPatition or UnMount, pointer is list[0].Pointer.
  • 89. 89 Response OK or Error:No SD Card *After formation operation, the device would reboot. 10.2.4 getCaps URL Syntax http://<ip>/cgi-bin/storage.cgi?action=getCaps Description Get storage caps Response caps.IsLocalStore= true caps.IsRemoteStore=true capsSupportRemoteLimit=false …see Storage Capabilities 10.3 Work Group 10.3.1 GetWorkGroupCollect URL Syntax http://<ip>/cgi-bin/workGroup.cgi?action=factory.getCollect Comment Get all the work group names Response A list of all device names list [0]=”group1” list [1]=”group2” list [2]=”group3” 10.4 Work Directory 10.4.1 GetWorkDirectoryCollect URL Syntax http://<ip>/cgi-bin/workDirectory.cgi?action=factory.getCollect Comment Get the all work derictory names Response A list of all work directory names list [0]=”dir1” list [1]=”dir2” list [2]=”dir3”
  • 90. 90 10.5 NAS 10.5.1 GetNASConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=NAS Comment Return all the directories on the NAS server. Response table.NAS[0].Name=” FTP1” table.NAS[0].Enable = true table.NAS[0].Protocol =”FTP” table.NAS[0].Address =”www.Amcresttech.com” table.NAS[0].Port =21 table.NAS[0].UserName =”anonymity” table.NAS[0].Password =”none” table.NAS[0].Directory =”share” 10.5.2 SetNASConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table: Head =NAS[index] Index: The index of the NAS Server Response OK or ERROR ParamName ParamValue type Description Head.Name string NAS name. Head .Enable bool Enable/Disable the NAS. Head. Protocol string The range is {“FTP”, “SMB”} Head. Address string The IP address or host name. Head .Port integer NAS port. Head.UserName string NAS username. Head .Password string NAS password. Head .Directory string Directory name.
  • 91. 91 10.6 Storage Point 10.6.1 GetRecordStoragePointConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=RecordStoragePoint Comment Response table.RecordStoragePoint [0].TimingRecord.Local =”local” table.RecordStoragePoint [0].TimingRecord. Redundant =” Redundant” table.RecordStoragePoint [0].TimingRecord. Remote =” FTP” table.RecordStoragePoint [0].TimingRecord. AutoSync = false table.RecordStoragePoint [0].TimingRecord. AutoSyncRange =0 table.RecordStoragePoint [0].TimingRecord. LocalForEmergency =false table.RecordStoragePoint [0].TimingRecord. CompressBefore =15 10.6.2 SetRecordStoragePointConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table: ch = channel index, recType :The range is {“TimingRecord”,” VideoDetectRecord”,” AlarmRecord”,” EventRecord”,” TimingSnapShot”,” VideoDetectSnapShot”,” AlarmSnapShot”,” EventSnapShot”} Response OK or Error ParamName ParamValue type Description RecordStoragePoint [ch].[recType].Local string Local directory name. RecordStoragePoint [ch].[recType]. Redundant string Redundant directory name. RecordStoragePoint [ch].[recType]. Remote string Remote directory name. RecordStoragePoint [ch].[recType]. AutoSync bool When remote directory recovers, auto synchronize local directory to remote directory or not. RecordStoragePoint [ch].[recType]. AutoSyncRange integer From the remote directory recovering time, how long the data needs to be synchronized. The unit is hour. If it is 0, all the data needs to be synchronized. RecordStoragePoint [ch].[recType]. LocalForEmergency bool When the remote directory is unusable, save the data the local directory or not. RecordStoragePoint [ch].[recType]. CompressBefore integer How many days data will be compressed.
  • 92. 92 10.6.3 GetStorageGroupConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=StorageGroup Comment Response table.StorageGroup[0]. Name=”ReadWrite” table.StorageGroup[0]. Memo =” For Reading & Writing Files” table.StorageGroup[0]. FileHoldTime =0 table.StorageGroup[0]. OverWrite =true table.StorageGroup[0]. Channels[0]. MaxPictures =1000 table.StorageGroup[0]. Channels[0]. Path =”/mnt/dvr/sda0” 10.6.4 SetStorageGroupConfig URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table: Index = StorageGroup index ch = channel index Response OK or Error ParamName ParamValue type Description StorageGroup[Index]. Name string Storage group name. StorageGroup[Index]. Memo string Storage group memo. StorageGroup[Index]. FileHoldTime integer How many days the file will be hold. StorageGroup[Index]. OverWrite bool Over write or not when there is not enough storage. StorageGroup[Index]. Channels[ch]. MaxPictures Integer The max pictures beyond which the old pictures will be over written. If it is 0, the old pictures will be not over written. StorageGroup[Index]. Channels[ch]. Path string The channel path. 11. Audio 11.1 Audio MIME type MIME Description Audio/PCM Audio/ADPCM Audio/G.711A Audio/G.711Mu Audio/G.726 Audio/G.729
  • 93. 93 Audio/MPEG2 Audio/AMR Audio/AAC 11.2 Post Audio URL Syntax http://<ip>/cgi-bin/audio.cgi?action=postAudio&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment paramValue as below table. Response OK or ERROR ParamName ParamValue type Description httptype string singlepart:HTTP content is a continuous flow of audio packets multipart:HTTP content type is multipart/x-mixed-replace,and each audio packet ends with a boundary string channel integer The audio channel 11.2.1 Example for singlepart The RUL of transmit a singlepart、channel 1 audio stream(encoded with G.711 A-law) is: http: //<ip>/cgi-bin/audio.cgi?action=postAudio&httptype=singlepart&channel=1 example: POST /cgi-bin/audio.cgi?action=postAudio&httptype=singlepart&channel=1 HTTP/1.1 Content-Type: Audio/G.711A Content-Length:9999999 <Audio data> <Audio data> 11.2.2 Example for multipart The RUL of transmit a multipart、channel 1 audio stream(encoded with G.711 A-law) is: http: //<ip>/cgi-bin/audio.cgi?action=postAudio&httptype= multipart &channel=1 example: POST /cgi-bin/audio.cgi?action=postAudio&httptype= multipart &channel=1 HTTP/1.1 Content-Type: multipart/x-mixed-replace; boundary=<boundary> --<boundary> Content-Type: Audio/G.711A
  • 94. 94 Content-Length: 800 <Audio data> --<boundary> 11.3 Get Audio URL Syntax http://<ip>/cgi-bin/audio.cgi?action=getAudio&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment paramValue as below table. Response OK or ERROR ParamName ParamValue type Description httptype string singlepart:HTTP content is a continuous flow of audio packets multipart:HTTP content type is multipart/x-mixed-replace,and each audio packet ends with a boundary string channel integer The audio channel 11.3.1 Example for singlepart The RUL of Request a singlepart、channel 1 audio stream(encoded with G.711 A-law) is: http: //<ip>/cgi-bin/audio.cgi?action=getAudio&httptype=singlepart&channel=1 If the request was successful, the server returns a continuous flow of audio packets.The content type is only set at the beginning of the connection. Return: HTTP Code: 200 OK Content-Type: Audio/G.711A Body: <Audio data> <Audio data> 11.3.2 Example for multipart The RUL of Request a multipart、channel 1 audio stream(encoded with G.711 A-law) is: http: //<ip>/cgi-bin/audio.cgi?action=getAudio&httptype=multipart&channel=1 If the request was successful, the server returns a continuous flow of audio packets. The content type is “multipart/x-mixed-replace” and each audio packet ends with a boundary string.
  • 95. 95 Return: HTTP Code: 200 OK Content-Type: multipart/x-mixed-replace; boundary=<boundary> --<boundary> Content-Type: Audio/G.711A Content-Length: 800 <Audio data> --<boundary> 11.4 Audio Input 11.4.1 getCollect URL Syntax http://<ip>/cgi-bin/devAudioInput.cgi?action=getCollect Comment Get Audio input channel number. Below response means there are 2 audio input channels. Response result=2 11.5 Audio Output 11.5.1 getCollect URL Syntax http://<ip>/cgi-bin/devAudioOutput.cgi?action=getCollect Comment Get Audio output channel number. Below response means there are 2 audio output channels. Response result=2 12. Appendix 12.1 Stream Format The Stream format is used by 4.1.7 GetStream By Http and 4.1.8 Playback By Http, describes the format of the data stream. Stream Header:
  • 96. 96 Byte Order 0 1 2 3 4 5 6 7 Key Flag Type reserved packet length Byte Order 8 9 10 11 12 13 14 15 Key channel Extend header length Sequence Byte Order 16 17 18 19 20 21 22 23 Key utc utcms reserved Check sum Flag=”DH”; Type=0x10 means the audio packet; Type=0x20 means the video packet; Packet length means the packet total length, contains the packet header, maybe one or more extend header, and the media data; Extend Header Format Byte Order 0 1 2 3 4 5 6 … Key Type length reserved data Extend header length must be multiple of 4 bytes; Audio extend header: Byte Order 0 1 2 3 4 5 6 7 Key 0x11 8 reserved Audio Type Tracks Sample Freq reserved A audio packet must contain the audio extend header; Audio Type:1 - PCM8;2 - G729;3 - IMA_ADPCM;4 - G711U;5 - G721;6 - PCM8_VWIS;7 - MS_ADPCM;8 - G711A;9 - AMR-NB;10 - PCM16;11- G723.1;12 – AAC;13 - G726_40;14 - G726_32;15 - G726_24;16 - G726_16 Tracks: Tracks number, support 1 and 2; Sample Freq: audio sample frequence,1 - 4000;2 - 8000;3 - 11025;4 - 16000;5 - 20000;6 - 22050;7 - 32000;8 - 44100;9 - 48000;
  • 97. 97 Video Extend Header: Byte Order 0 1 2 3 4 5 6 7 Key 0x21 16 reserved Video Type Frame Type Width Byte Order 8 9 10 11 12 13 14 15 Key Height I Frame Interval Frame Rate reserved A video packet must contain the video extend header; Video Type means the video codec type, 1-MPEG4; 2-H.264; Frame Type: 1-I frame; 2-P frame;3-B frame; Width and Height describe the frame width and height by pixel; Channel Title Extend Header: Byte Order 0 1 2 3 4 5 6 … Key 0x22 len reserved Title … When a stream begin, or the device channel title changes, the video packet must contain the channel title extend header; If the channel title is Chinese, it only supports utf8 format. TimeZone Extend Header: Byte Order 0 1 2 3 4 5 6 7 Key 0x31 8 reserved Time Zone Daylight saving time reserved When a stream begin, or the TimeZone changes, the video packet must contain the TimeZone extend header; Time Zone[0]: [-12,12](west time zone 12 to east time zone 12), Time Zone[1] modify the time by minutes; Daylight saving time: 1/0, yes or not in daylight saving time; Event Flag Extend Header: Byte Order 0 1 2 3 4 5 6 … Key 0x23 len reserved Event Flag If the video frame contain one or more event flags, the video packet should contain the Event Flag Extend Header. The event flag means
  • 98. 98 what event had happened by set the bit as 1; Event Flag: bit0-exterior alarm; bit1-move detect; bit2-video lost. 13. VideoInput 13.1 AdjustFocus URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action= adjustFocus&focus=<focus>&zoom=<zoom> Comment focus: float, the range is between 0 and 1; -1 means reset to position 0. zoom: float, the range is between 0 and 1; -1 means reset to position 0. Response OK or ERROR 13.2 AdjustFocusContinuously URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action= adjustFocusContinuously&focus=<focus>&zoom=<zoom> Comment focus: float, the range is -1 < focus < 1; 0 means stop. zoom: float, the range is -1 < zoom< 1; 0 means stop. The value means the moving speed of motor lens, positive value means move forwards, negative value means move backwards. This command is used to drive the lens move continuously, until it reaches end. When motor is moving, and you send this command again with focus or zoom parameter as 0, the motor will stop immediately. In this command when you adjust the focus parameter, the zoom parameter should be -1, and the focus parameter should be -1 when adjust the zoom parameter. Example If we want to adjust focus, the API like this: http://172.30.1.100/cgi-bin/devVideoInput.cgi?action=adjustFocusContinuously&focus=0.02&zoom=-1 and when the motor is moving, we send below command to let it stop: http://172.30.1.100/cgi-bin/devVideoInput.cgi?action=adjustFocusContinuously&focus=0&zoom=-1 Response OK or ERROR 13.3 AutoFocus URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action= autoFocus Comment Response OK or ERROR
  • 99. 99 13.4 GetFocusStatus URL Syntax http://<ip>/cgi-bin/devVideoInput.cgi?action= getFocusStatus Comment The range of status.Status is “Normal” and “Autofocus”. This command must be continual executed until status.Status is “Normal”. Response status.Focus=0.5 status.Zoom=0.5 status.Status=Normal 14. SD Camera This chapter is only effective with SD Camera. 14.1 VideoInWhiteBalance 14.1.1 GetVideoInWhiteBalance URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInWhiteBalance Description Get VideoInWhiteBalance capabilities, channelNo is video in channel index. Response table.VideoInWhiteBalance[0][0].ColorTemperatureLevel=50 table.VideoInWhiteBalance[0][0].GainBlue=50 table.VideoInWhiteBalance[0][0].GainGreen=50 table.VideoInWhiteBalance[0][0].GainRed=50 table.VideoInWhiteBalance[0][0].Mode=ATW table.VideoInWhiteBalance[0][1].ColorTemperatureLevel=50 table.VideoInWhiteBalance[0][1].GainBlue=50 table.VideoInWhiteBalance[0][1].GainGreen=50 table.VideoInWhiteBalance[0][1].GainRed=50 table.VideoInWhiteBalance[0][1].Mode=Auto table.VideoInWhiteBalance[0][2].ColorTemperatureLevel=50 table.VideoInWhiteBalance[0][2].GainBlue=50 table.VideoInWhiteBalance[0][2].GainGreen=50 table.VideoInWhiteBalance[0][2].GainRed=50 table.VideoInWhiteBalance[0][2].Mode=Auto
  • 100. 100 14.2.2 SetVideoInWhiteBalance URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head =VideoInOptions[ChannelNo] [ConfigNo] ChannelNo = video channel index. ConfigNo=0,1,2; normal,day,night Response OK or ERROR ParamName ParamValue type Description head. Mode integer “Auto”,“Indoor", "Outdoor", "ATW", "Manual", "AutoOutdoor" head. GainRed integer Range is 0-100 head. GainBlue integer Range is 0-100 14.2 VideoInExposure 14.2.1 GetVideoInExposure URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name= VideoInExposure Description Response table.VideoInExposure[0][0].AutoGainMax=2 table.VideoInExposure[0][0].Backlight=0 table.VideoInExposure[0][0].Compensation=7 table.VideoInExposure[0][0].DoubleExposure=0 table.VideoInExposure[0][0].Gain=1 table.VideoInExposure[0][0].GlareInhibition=0 table.VideoInExposure[0][0].Iris=10 table.VideoInExposure[0][0].Mode=0 table.VideoInExposure[0][0].RecoveryTime=900 table.VideoInExposure[0][0].Rect[0]=0 table.VideoInExposure[0][0].Rect[1]=0 table.VideoInExposure[0][0].Rect[2]=0 table.VideoInExposure[0][0].Rect[3]=0 table.VideoInExposure[0][0].SlowAutoExposure=0 table.VideoInExposure[0][0].SlowShutter=true table.VideoInExposure[0][0].SlowSpeed=25 table.VideoInExposure[0][0].Speed=50
  • 101. 101 table.VideoInExposure[0][0].Value1=0.100000 table.VideoInExposure[0][0].Value2=80 table.VideoInExposure[0][0].WideDynamicRange=0 table.VideoInExposure[0][0].WideDynamicRangeMode=0 table.VideoInExposure[0][1].AutoGainMax=2 table.VideoInExposure[0][1].Backlight=0 table.VideoInExposure[0][1].Compensation=14 table.VideoInExposure[0][1].DoubleExposure=0 table.VideoInExposure[0][1].Gain=1 table.VideoInExposure[0][1].GlareInhibition=0 table.VideoInExposure[0][1].Iris=10 table.VideoInExposure[0][1].Mode=2 table.VideoInExposure[0][1].RecoveryTime=900 table.VideoInExposure[0][1].Rect[0]=0 table.VideoInExposure[0][1].Rect[1]=0 table.VideoInExposure[0][1].Rect[2]=0 table.VideoInExposure[0][1].Rect[3]=0 table.VideoInExposure[0][1].SlowAutoExposure=14 table.VideoInExposure[0][1].SlowShutter=true table.VideoInExposure[0][1].SlowSpeed=25 table.VideoInExposure[0][1].Speed=50 table.VideoInExposure[0][1].Value1=0.100000 table.VideoInExposure[0][1].Value2=80 table.VideoInExposure[0][1].WideDynamicRange=0 table.VideoInExposure[0][1].WideDynamicRangeMode=0 table.VideoInExposure[0][2].AutoGainMax=2 table.VideoInExposure[0][2].Backlight=0 table.VideoInExposure[0][2].Compensation=7 table.VideoInExposure[0][2].DoubleExposure=0 table.VideoInExposure[0][2].Gain=1 table.VideoInExposure[0][2].GlareInhibition=0 table.VideoInExposure[0][2].Iris=10 table.VideoInExposure[0][2].Mode=0 table.VideoInExposure[0][2].RecoveryTime=900 table.VideoInExposure[0][2].Rect[0]=0 table.VideoInExposure[0][2].Rect[1]=0 table.VideoInExposure[0][2].Rect[2]=0 table.VideoInExposure[0][2].Rect[3]=0 table.VideoInExposure[0][2].SlowAutoExposure=0 table.VideoInExposure[0][2].SlowShutter=true table.VideoInExposure[0][2].SlowSpeed=25 table.VideoInExposure[0][2].Speed=50 table.VideoInExposure[0][2].Value1=0.100000 table.VideoInExposure[0][2].Value2=80
  • 102. 102 table.VideoInExposure[0][2].WideDynamicRange=0 table.VideoInExposure[0][2].WideDynamicRangeMode=0 Comment In above table, head = table.VideoInOptions[ChannelNo] ChannelNo = video channel index. 14.2.2 SetVideoInExposure URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head = VideoInExposure[ChannelNo][ConfigNo] ChannelNo = video channel index. ConfigNo=0,1,2; normal,day,night Response OK or ERROR ParamName ParamValue type Description head.Mode integer Range is {0,2,3, 4} 0: AutoExposure 2: Gain first 3: Exposure first 4:Manual. head.Gain integer Range is 0-15 Head.Iris integer Range is 0-17 head.Speed integer Range is [3,…,3000] head.Compensation float Range is [0-14], head.SlowAutoExposure float Range is [0-15] head.AutoGainMax integer Range is {0,1,2} 0: low 1: middle 2: high head.SlowShutter integer true: Enable SlowShutter false: Disable SlowShutter head.SlowSpeed integer Range is {1,2,3,6,12,25} 0:forbid flash 1:always flash
  • 103. 103 2:auto flash head.RecoveryTime integer Range is {0,300,900, 3600, 7200}, Unit is second. 0:close head.WideDynamicRangeMode=1 integer Range is [0,1] 0 –disable, 1 –enable head.GlareInhibition integer Range is [0,1,2,3] 0:disable 1:low 2:middle 3:high head.Backlight bool 0: enable Backlight 1: disable Backlight 14.3 VideoInDenoise 14.3.1 GetVideoInDenoise URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInDenoise Description Response table.VideoInDenoise[0][0].2DEnable=true table.VideoInDenoise[0][0].2DLevel=8 table.VideoInDenoise[0][0].3DAutoType.AutoLevel=2 table.VideoInDenoise[0][0].3DAutoType.Mod=8 table.VideoInDenoise[0][0].3DManulType.SnfLevel=0 table.VideoInDenoise[0][0].3DManulType.TnfLevel=0 table.VideoInDenoise[0][0].3DType=Auto table.VideoInDenoise[0][1].2DEnable=true table.VideoInDenoise[0][1].2DLevel=8 table.VideoInDenoise[0][1].3DAutoType.AutoLevel=2 table.VideoInDenoise[0][1].3DAutoType.Mod=8 table.VideoInDenoise[0][1].3DManulType.SnfLevel=0 table.VideoInDenoise[0][1].3DManulType.TnfLevel=0 table.VideoInDenoise[0][1].3DType=Auto table.VideoInDenoise[0][2].2DEnable=true table.VideoInDenoise[0][2].2DLevel=8 table.VideoInDenoise[0][2].3DAutoType.AutoLevel=2 table.VideoInDenoise[0][2].3DAutoType.Mod=8 table.VideoInDenoise[0][2].3DManulType.SnfLevel=0 table.VideoInDenoise[0][2].3DManulType.TnfLevel=0 table.VideoInDenoise[0][2].3DType=Auto
  • 104. 104 14.3.2 SetVideoInDenoise URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head = VideoInDenoise [ChannelNo] [ConfigNo] ChannelNo = video channel index. ConfigNo=0,1,2; normal,day,night Response OK or ERROR ParamName ParamValue type Description head.2DEnable integer true: Enable 2D Denoise false: Disable 2D Denoise head.2DLevel integer Range is 1-5 head.3DType String “Off” “Auto” head .3DAutoType.Mode integer Range is 0-1 14.4 VideoInDayNight 14.4.1 GetVideoInDayNight URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInDayNight Description Response table.VideoInDayNight[0][0].BCRDelay=10 table.VideoInDayNight[0][0].ICRDelay=10 table.VideoInDayNight[0][0].Mode=Brightness table.VideoInDayNight[0][0].Sensitivity=4 table.VideoInDayNight[0][0].Type=Electron table.VideoInDayNight[0][1].BCRDelay=10 table.VideoInDayNight[0][1].ICRDelay=10 table.VideoInDayNight[0][1].Mode=BlackWhite table.VideoInDayNight[0][1].Sensitivity=4 table.VideoInDayNight[0][1].Type=Electron table.VideoInDayNight[0][2].BCRDelay=10 table.VideoInDayNight[0][2].ICRDelay=10
  • 105. 105 table.VideoInDayNight[0][2].Mode=BlackWhite table.VideoInDayNight[0][2].Sensitivity=4 table.VideoInDayNight[0][2].Type=Electron 14.4.2 SetVideoInDayNight URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head = VideoInDayNight [ChannelNo] [ConfigNo] ChannelNo = video channel index. ConfigNo=0,1,2; normal,day,night Response OK or ERROR ParamName ParamValue type Description head. Type integer Electron: Mechanism: head. Mode integer Auto、Color、BlackWhite head. Sensitivity integer Range is 0-7 14.5 VideoInFocus 14.5.1 GetVideoInFocus URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInDayNight Description Response table.VideoInFocus[0][0].FocusLimit=100 table.VideoInFocus[0][0].FocusLimitSelectMode=Manual table.VideoInFocus[0][0].IRCorrection=0 table.VideoInFocus[0][0].Mode=3 table.VideoInFocus[0][0].Sensitivity=1 table.VideoInFocus[0][1].FocusLimit=100 table.VideoInFocus[0][1].FocusLimitSelectMode=Manual table.VideoInFocus[0][1].IRCorrection=0 table.VideoInFocus[0][1].Mode=3 table.VideoInFocus[0][1].Sensitivity=1 table.VideoInFocus[0][2].FocusLimit=100 table.VideoInFocus[0][2].FocusLimitSelectMode=Manual
  • 106. 106 table.VideoInFocus[0][2].IRCorrection=0 table.VideoInFocus[0][2].Mode=3 table.VideoInFocus[0][2].Sensitivity=1 14.5.2 SetVideoInFocus URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head = VideoInDayNight [ChannelNo] [ConfigNo] ChannelNo = video channel index. ConfigNo=0,1,2; normal,day,night Response OK or ERROR ParamName ParamValue type Description head. Mode integer 2-Auto focus,3-Half auto focus,4-Manual focus head. FocusLimit integer 100、1000、2000、3000、5000、 head. Sensitivity integer Range is 0,1,2 0-high,1-default,2-low head. IRCorrection integer 0 :No correcetion; 1:Correction; 2:Auto correction 14.6 VideoInZoom 14.6.1 GetVideoInZoom URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInZoom Description Response table.VideoInZoom[0][0].DigitalZoom=true table.VideoInZoom[0][0].Speed=7 table.VideoInZoom[0][0].ZoomLimit=4 table.VideoInZoom[0][1].DigitalZoom=true table.VideoInZoom[0][1].Speed=0 table.VideoInZoom[0][1].ZoomLimit=4 table.VideoInZoom[0][2].DigitalZoom=false table.VideoInZoom[0][2].Speed=7 table.VideoInZoom[0][2].ZoomLimit=4
  • 107. 107 14.6.2 SetVideoInZoom URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head = VideoInZoom [ChannelNo] [ConfigNo] ChannelNo = video channel index. ConfigNo=0,1,2; normal,day,night Response OK or ERROR ParamName ParamValue type Description head. DigitalZoom integer true: Enable DigitalZoom false: Disable DigitalZoom head. Speed integer Range is 0-7 14.7 VideoInSharpness 14.7.1 GetVideoInSharpness URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInSharpness Description Response table.VideoInSharpness[0][0].Level=4 table.VideoInSharpness[0][0].Mode=1 table.VideoInSharpness[0][0].Sharpness=8 table.VideoInSharpness[0][1].Level=4 table.VideoInSharpness[0][1].Mode=1 table.VideoInSharpness[0][1].Sharpness=8 table.VideoInSharpness[0][2].Level=4 table.VideoInSharpness[0][2].Mode=1 table.VideoInSharpness[0][2].Sharpness=8 14.7.2 SetVideoInSharpness URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head = VideoInSharpness [ChannelNo] [ConfigNo] ChannelNo = video channel index.
  • 108. 108 ConfigNo=0,1,2; normal,day,night Response OK or ERROR ParamName ParamValue type Description head. Sharpness integer Range is 0-15 head. Level integer Range is 0-15 14.8 VideoInColor 14.8.1 GetVideoInColor URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInColor Description Response table.VideoInColor[0][0].Brightness=50 table.VideoInColor[0][0].ChromaSuppress=1 table.VideoInColor[0][0].Contrast=50 table.VideoInColor[0][0].Gamma=0 table.VideoInColor[0][0].Hue=50 table.VideoInColor[0][0].Saturation=50 table.VideoInColor[0][0].Style=Standard table.VideoInColor[0][1].Brightness=50 table.VideoInColor[0][1].ChromaSuppress=1 table.VideoInColor[0][1].Contrast=50 table.VideoInColor[0][1].Gamma=0 table.VideoInColor[0][1].Hue=50 table.VideoInColor[0][1].Saturation=50 table.VideoInColor[0][1].Style=Standard table.VideoInColor[0][2].Brightness=50 table.VideoInColor[0][2].ChromaSuppress=1 table.VideoInColor[0][2].Contrast=50 table.VideoInColor[0][2].Gamma=0 table.VideoInColor[0][2].Hue=50 table.VideoInColor[0][2].Saturation=50 table.VideoInColor[0][2].Style=Flamboyant
  • 109. 109 14.8.2 SetVideoInColor URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head = VideoInColor [ChannelNo] [ConfigNo] ChannelNo = video channel index. ConfigNo=0,1,2; normal,day,night Response OK or ERROR ParamName ParamValue type Description head. Style integer Gentle Standard Flamboyant head. Hue integer Range is 0-100 head. Brightness integer Range is 0-100 head. Saturation Range is 0-100 head. ChromaSuppress Range is 0-3 head. Gamma Range is 0-15 14.9 VideoInRotate 14.9.1 GetVideoInRotate URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInRotate Description Response table.VideoInRotate[0][0].Flip=false table.VideoInRotate[0][0].Freeze=false table.VideoInRotate[0][0].Mirror=false table.VideoInRotate[0][0].Rotate90=0 table.VideoInRotate[0][0].Stable=false table.VideoInRotate[0][1].Flip=false table.VideoInRotate[0][1].Freeze=false table.VideoInRotate[0][1].Mirror=false table.VideoInRotate[0][1].Rotate90=0
  • 110. 110 table.VideoInRotate[0][1].Stable=false table.VideoInRotate[0][2].Flip=false table.VideoInRotate[0][2].Freeze=false table.VideoInRotate[0][2].Mirror=false table.VideoInRotate[0][2].Rotate90=0 table.VideoInRotate[0][2].Stable=false 14.9.2 SetVideoInRotate URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head = VideoInRotate [ChannelNo] [ConfigNo] ChannelNo = video channel index. ConfigNo=0,1,2; normal,day,night Response OK or ERROR ParamName ParamValue type Description head. Flip integer true: Enable flip function false: Disable flip function 14.10 VideoInMode 14.10.1 GetVideoInMode URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoInMode Description Response table.VideoInMode[0].Config[0]=1 table.VideoInMode[0].Mode=0 table.VideoInMode[0].TimeSection[0][0]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[0][1]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[0][2]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[0][3]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[0][4]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[0][5]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[1][0]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[1][1]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[1][2]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[1][3]=0 00:00:00-23:59:59
  • 111. 111 table.VideoInMode[0].TimeSection[1][4]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[1][5]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[2][0]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[2][1]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[2][2]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[2][3]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[2][4]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[2][5]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[3][0]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[3][1]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[3][2]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[3][3]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[3][4]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[3][5]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[4][0]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[4][1]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[4][2]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[4][3]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[4][4]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[4][5]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[5][0]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[5][1]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[5][2]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[5][3]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[5][4]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[5][5]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[6][0]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[6][1]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[6][2]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[6][3]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[6][4]=0 00:00:00-23:59:59 table.VideoInMode[0].TimeSection[6][5]=0 00:00:00-23:59:59 14.10.2 SetVideoInMode URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head = VideoInMode [ChannelNo] ChannelNo = video channel index. Response OK or ERROR ParamName ParamValue Description
  • 112. 112 type head. Mode integer Range is {0,1} 0: NoSwitch; 1: Switch depends on head.TimeSection. head. Config integer Mode=0 Config[0]={0、1/2} Mode=1 Config[1]={ 1 } Config[2]={ 2 } head.TimeSection[0][0] integer The time format is "0 H:m: H:m:S " For example: 0 00:00:00-10:59:59 15. VideoAnalyse This chapter is only effective with smart IP Camera. 15.1 VideoAnalyseRule 15.1.1 GetVideoAnalyseRule URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoAnalyseRule Description Get VideoAnalyseRule. In below table, head =table.VideoAnalyseRule[ChannelNo] [RuleNo] ChannelNo = video channel index. RuleNo =rule index. Response head.Name= line1 head.Type=CrossLineDetection head.VideoAnalyseRule[0][0].Enable =true head.VideoAnalyseRule[0][0].EventHandler= (output of EventHandler is described in 6.1.1 GetEventHandler) … 15.1.2 SetVideoAnalyseRule URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head =VideoAnalyseRule[ChannelNo] [RuleNo] ChannelNo = video channel index. RuleNo =rule index. ParamName starts with head.Config is only effective with {“CrossLineDetection”, “CrossRegionDetection”, “LeftDetection”, “TakenAwayDetection”} Response OK or ERROR
  • 113. 113 ParamName ParamValue type Description head.Name string Rule name, it must be unique. head.Type string The range is {“CrossLineDetection”, “CrossRegionDetection”, “LeftDetection”,” “TakenAwayDetection”,”VideoAbnormalDetection”,“FaceDetection”, ,”AudioMutation”,”AudioAnomaly”,”VideoUnFocus”,”WanderDetection”,” RioterDetection”,” ParkingDetection”,” MoveDetection”, “NumberStat”}” head.Enable bool Enable/Disable this rule head.EventHandler Setting of EventHandler is described in 6.1.2 SetEventHandler head.Config.DetectLine[0][0] integer The start point of DetectLine 0; head.Config.DetectLine[0][1] integer The end point of DetectLine 0; head.Config.DetectLine[1][0] integer The start point of DetectLine 1; head.Config.DetectLine[1][1] integer The end point of DetectLine 1; head.Config.Direction string The range is {“LeftToRight”, “RightToLeft”, “Both”} head.Config .SizeFilter.MaxSize[0] integer Maximum width. The width of the object must not be beyond maximum width. Adapt to {“CrossLineDetection”, “CrossRegionDetection”, “LeftDetection”, “TakenAwayDetection”,“FaceDetection”,“WanderDetection”, “RioterDetection”, “ParkingDetection”, “MoveDetection”} head.Config .SizeFilter.MaxSize[1] integer Maximum height. The height of the object must not be beyond maximum height. head.Config .SizeFilter.MinSize[0] integer Minimum width. The width of the object must not be less than minimum width. head.Config .SizeFilter.MinSize[1] integer Minimum height. The height of the object must not be beyond minimum height. head.Config.DetectRegion[0][0] integer The start point of DetectRegion 0; Adapt to {“CrossRegionDetection”, “LeftDetection”, “TakenAwayDetection”, “WanderDetection”,“RioterDetection”, “ParkingDetection”, “MoveDetection”} head.Config.DetectRegion[0][1] integer The end point of DetectRegion 0; head.Config.DetectRegion[1][0] integer The start point of DetectRegion 1; head.Config.DetectRegion[1][1] integer The end point of DetectRegion 1; head.Config.DetectRegion[2][0] integer The start point of DetectRegion 2; head.Config.DetectRegion[2][1] integer The start point of DetectRegion 2; head.Config. MinDuration integer Range is 1-600, adapt to {“LeftDetection”, “TakenAwayDetection”, “WanderDetection”}. Range is 10-300, adapt to {“RioterDetection”}. Range is 6-300, adapt to {“ParkingDetection”}. head.Config. Sensitivity integer Range is 1-10, adapt to {“RioterDetection”, “MoveDetection”}. Head.Config. EnterThreshold integer Range is 0- 100000000, adapt to {“NumberStat”}. Head.Config. ExitThreshold integer Range is 0- 100000000, adapt to {“NumberStat”}. Head.Config. InsideThreshold integer Range is 0- 100000000, adapt to {“NumberStat”}.
  • 114. 114 15.2 VideoWidgetNumberStat 15.2.1 GetVideoWidgetNumberStat URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoWidgetNumberStat Description Get VideoWidgetNumberStat. In below table, head =table.VideoWidgetNumberStat[ChannelNo] ChannelNo = video channel index. Response head.EncodeBlend=true head.ShowEnterNum=true head.ShowExitNum=true head.TextAlign=0 … 15.2.2 SetVideoWidgetNumberStat URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head =VideoWidgetNumberStat[ChannelNo] ChannelNo = video channel index. Response OK or ERROR ParamName ParamValue type Description head.EncodeBlend bool Enable/Disable head.ShowEnterNum bool Enable/Disable head.ShowExitNum bool Enable/Disable head.TextAlign integer 0 for left, 2 for right 15.3 VideoEncodeROI 15.3.1 GetVideoEncodeROI URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=getConfig&name=VideoEncodeROI Description Get VideoEncodeROI. In below table, head=table.VideoEncodeROI[ChannelNo] ChannelNo = video channel index. Response Head.DynamicTrack=false
  • 115. 115 15.3.2 SetVideoEncodeROI URL Syntax http://<ip>/cgi-bin/configManager.cgi?action=setConfig&<paramName>=<paramValue>[&<paramName>=<paramValue>...] Comment In below table, head=VideoEncodeROI[ChannelNo] ChannelNo = video channel index. Response OK or ERROR ParamName ParamValue type Description head.DynamicTrack bool Enable/Disable
  • 116. 116 16 TrafficSnap 16.1 getParkingSpaceStatus URL Syntax http://<ip>/cgi-bin/trafficSnap.cgi?action=getParkingSpaceStatus&channel=<channelNo>&<paramName>=<paramValue>[&<pa ramName>=<paramValue>...] Descripti on Get specific parking space(s) status For example If want to get all parking space status, the url is http://<ip>/cgi-bin/trafficSnap.cgi?action=getParkingSpaceStatus& condition.Lane[0]=0 & condition.Lane[1]=255 Response A list of parking space status status[0].Lane=0 status[0].PictureId=5 status[0].TrafficCar.CountInGroup=1 … status[1].Lane=1 status[1].PictureId=4 status[1].TrafficCar.CountInGroup=1 … Comment Param : channelNo :the index of trafficSnap channel index : The index of type array,start from 0 TrafficCar : the members refer to TrafficCar ParamName ParamValue type Description condition.Lane[index] int The Lane value condition. ResponseLevel int The Level value , refer to conditon 17 TrafficParking 17.1 getAllParkingSpaceStatus URL Syntax http://<ip>/cgi-bin/ trafficParking.cgi?action= getAllParkingSpaceStatus Descripti on Get all valid parking spaces status of one device For example If want to get all parking space status, the url is http://<ip>/cgi-bin/trafficParking.cgi?action=getAllParkingSpaceStatus
  • 117. 117 Response A list of parking space status status[0].Lane=0 status[0].Status = Park … status[1].Lane=1 status[1]. Status = NoPark … Comment Param : Status: Park or NoPark 17 VideoDetect 17.1 getCaps URL Syntax http://<ip>/cgi-bin/devVideoDetect.cgi?action=getCaps&channel=<channelNo> Response caps.DetectVersion[0]=V1.0 caps.DetectVersion[1]=V3.0 caps.MotionColumns=22 caps.MotionDetectWindow=4 caps.MotionLinkPtzPattern=true caps.MotionLinkPtzPreset=true caps.MotionLinkPtzTour=true caps.MotionResult=1 caps.MotionRows=18 caps.SupportBlind=1 caps.SupportLoss=0 caps.SupportMotion=1 Comment Get video detect capabilities, channelNo is video in channel index. Notice that When your device is using V1.0 V2.0 Motion detection, you can not get any reply while excuting the command.