Sei sulla pagina 1di 51

NetSDK Manual de programao VERSO 1.4.0.

0 (Build 090926) 2009-01-10

Histria modificao data contedo 2008.10.22 Criar 2009.02.12 Add H264_DVR_SearchDevice para o dispositivo busca em LAN 2009.02.18 Adicione API com a conversa: H264_DVR_StartVoiceCom_MR, H264_DVR_VoiceComSendData, H264_DVR_StopVoiceCom, H264_DVR_SetTalkMode Adicionar IPA 2009.09.26 abaixo: H264_DVR_StartDVRRecord, H264_DVR_StopDVRRecord, H264_DVR_SetSystemDateTime, H264_DVR_GetDVRWorkState, H264_DVR_ClickKey

1. Introduo Geral 1.1 Introduo Este SDK para VANGUARD DVR, servidor de vdeo em rede e etc O texto descreve as funes e interfaces, bem como as relaes entre them.It tambm fornecem demonstrao detalhada. Este pacote inclui duas partes: operao e gesto de equipamentos: operao estado de escuta, um monitor em tempo real, visualizao em tempo real, sobreposio personagem, controle de udio, reproduo de registro e transferncia, armazenamento de dados, controle PTZ, implantao de alarme, o dilogo de voz, gerenciamento de registros, gerenciamento de usurios, a ao em caso de alarme, a porta e com transparncia etc gerenciamento de dispositivos atualizao remota, reiniciar / desligamento remoto, os parmetros de configurao do equipamento, tais como definio geral, alarme, registro, porta serial, imagem, registro, gerenciamento de usurios, o calendrio do dispositivo, deteco de movimento, rede e etc O pacote de desenvolvimento inclui os seguintes arquivos: Arquivo Cabea rede de bibliotecas NetSDK Lib NetSDK.lib NetSDK.dll biblioteca de interface

Assitante biblioteca H264Play.dll assistente de biblioteca Decode Assistente de biblioteca Decode DllDeinterlace.dll hi_h264dec_w.dll assistente de biblioteca Decode 1.2 Aplicabilidade reproduo do monitor em tempo real Suporte, alarme, configurao remota, gerenciamento de log e etc. Suporte TCP rede tramsmisson, 10 conexes TCP Max. Voc pode usar este SDK para se conectar a um dispositivo para desenvolver programa cliente-end, ou voc pode usar a interface callback SDK para desenvolver o programa de servidor, como o fluxo de transferncia de mdia, a reproduo, alarme e etc O cliente suporta resolues de multi-imagem, incluindo QCIF, CIF, 2CIF, HalfD1, D1, VGA (640 480) e etc Quando SDK a reproduo / transferncia, uma sesso ID no pode operar a reproduo e downalod para o mesmo canal ao mesmo tempo.

pode suportar 1.024 usurios se registrem, ao mesmo tempo, 1024-ch visualizao de rede e reproduo ao mesmo tempo. Apoio alarme 1024-ch carregar ao mesmo tempo. E exibio de vdeo de 100 ch

Desig de principia 1.3 Programao Descrio

1, First H264_DVR_Init chamada () para inicializar SDK, quando sair do aplicativo, chamando H264_DVR_Cleanup () para liberar todo recurso ocupado. 2, Most API chamar aps H264_DVR_Init (), antes de H264_DVR_Cleanup (), mas H264_DVR_GetLastError pode ser chamado em qualquer lugar.

Dispositivo de acesso antes da sua, voc ser chamado H264_DVR_Login () primeiro login, voc tambm pode ligar para H264_DVR_LoginEx () para atribuir o seu tipo de cliente logined. Se o login bem sucedido, ir retornar um identificador global, o identificador um canal de sesso, voc pode us-lo para operar o dispositivo. Chame H264_DVR_Logout () para fechar esta sesso.

Funo de callback tem um parmetro: dwUser, elf-definir parmetros, voc pode definir seus dados do proprietrio. 1.4 API chamada de Referncia

O diagrama abaixo descreve uma breve referncia API pedindo aplicao bsica do cliente, e os usurios podem adicionar em outros mdulos de funo de acordo com os requisitos das aplicaes reais. A. Inicializao SDK H264_DVR_Init Inicializao ()

B. Definir retorno para a mensagem de alarme Definir H264_DVR_SetDVRMessCallBack callback ()

C. Entrar em Entrar em H264_DVR_Login () H264_DVR_LoginEx () Assinar mensagem de alarme H264_DVR_SetupAlarmChan ()

D. Operao de dispositivo, get e set parmetro de configurao H264_DVR_GetDevConfig parmetro de configurao () H264_DVR_SetDevConfig () Entrar em busca H264_DVR_FindDVRLog () PTZ controle H264_DVR_PTZControl () H264_DVR_PTZControlEx ()

E. pr-visualizao em tempo real Abra e feche H264_DVR_RealPlay canal de monitor () H264_DVR_StopRealPlay () Callback para salvar os dados do monitor H264_DVR_SetRealDataCallBack ()

F. Reproduo / download Gravar pesquisa H264_DVR_FindFile () H264_DVR_PlayBackByName controle de reproduo () H264_DVR_PlayBackControl () H264_DVR_StopPlayBack ()

Baixar H264_DVR_GetFileByName () H264_DVR_GetDownloadPos () H264_DVR_StopGetFile () G. Controle remoto Atualize H264_DVR_Upgrade () H264_DVR_GetUpgradeState () H264_DVR_CloseUpgradeHandle () Reiniciar / Clear H264_DVR_ControlDVR log () H. Entrar para fora Cancelar se inscrever para mensagem de alarme H264_DVR_CloseAlarmChan () Disconnect H264_DVR_Logout () I. Lanamento SDK recurso SDK sada H264_DVR_Cleanup () 2 Estrutura de Dados Descrio 2.1 Client Estrutura Descrio Tipo de controle / / PTZ typedef enum PTZ_ControlType { TILT_UP = 0, / / UP TILT_DOWN, / / DOWN PAN_LEFT, / / LEFT PAN_RIGTH, / / rigth PAN_LEFTTOP, TOP / / LEFT PAN_LEFTDOWN, / / esquerda para baixo PAN_RIGTHTOP, / / rigth TOP PAN_RIGTHDOWN, / / rigth BAIXO ZOOM_IN, / / ZOOM IN ZOOM_OUT, / / ZOOM OUT FOCUS_FAR, / / FOCUS FAR

FOCUS_NEAR, / / FOCUS NEAR IRIS_OPEN, / / IRIS ABERTO IRIS_CLOSE, / / IRIS FECHAR

EXTPTZ_OPERATION_ALARM, / / ALARME EXTPTZ_LAMP_ON, / / LUZ ABERTO EXTPTZ_LAMP_OFF, / / LUZ FECHAR EXTPTZ_POINT_SET_CONTROL, / / SET POINT PRESET EXTPTZ_POINT_DEL_CONTROL, PONTO PRESET / / CLEAR EXTPTZ_POINT_MOVE_CONTROL, / / GOTO PRESET POINT EXTPTZ_STARTPANCRUISE, / / START PAN CRUISE EXTPTZ_STOPPANCRUISE, / / STOP PAN CRUISE EXTPTZ_SETLEFTBORDER, / / SET borda esquerda EXTPTZ_SETRIGHTBORDER, / / SET borda direita EXTPTZ_STARTLINESCAN, / / START AUTO SCAN EXTPTZ_CLOSELINESCAN, / / PARAR AUTO SCAN EXTPTZ_ADDTOLOOP, / / ADD POINT PRESET A linha de cruzeiro EXTPTZ_DELFROMLOOP, / / DEL ponto predefinido de Cruise Line EXTPTZ_POINT_LOOP_CONTROL, / / INCIO DO CRUZEIRO EXTPTZ_POINT_STOP_LOOP_CONTROL, / / CRUZEIRO PARAR EXTPTZ_CLOSELOOP, / / CRUZEIRO Limpar Line EXTPTZ_FASTGOTO, / / FAST GOTO EXTPTZ_AUXIOPEN, / / AUX ABERTO EXTPTZ_OPERATION_MENU, / / operao do menu EXTPTZ_REVERSECOMM, / / REVER cameral EXTPTZ_OPERATION_RESET, / / / <PTZ REAJUSTE EXTPTZ_TOTAL, };

O cdigo de erro, o retorno por GetLastError typedef enum SDK_RET_CODE

{ H264_DVR_NOERROR = 0, / / nenhum erro H264_DVR_SUCCESS = 1, / / sucesso H264_DVR_SDK_NOTVALID = -10.000, / / invlido pedido H264_DVR_NO_INIT = -10.001, / / SDK no inited H264_DVR_ILLEGAL_PARAM = -10.002, parmetro do usurio / / ilegal H264_DVR_INVALID_HANDLE = -10.003, / / handle nulo H264_DVR_SDK_UNINIT_ERROR = -10.004, / / erro claro SDK H264_DVR_SDK_TIMEOUT = -10.005, / / timeout H264_DVR_SDK_MEMORY_ERROR = -10.006, / H264_DVR_SDK_NET_ERROR erro de memria / = -10.007, erro / / rede H264_DVR_SDK_OPEN_FILE_ERROR = -10.008, arquivo / / open falhar H264_DVR_SDK_UNKNOWNERROR = -10.009, erro / / desconhecido H264_DVR_DEV_VER_NOMATCH = -11.000, / / incompatibilidade de verso H264_DVR_ERROR_GET_DATA = -11.001, / / obtm fail dados (incluindo configurao, informaes de usurio e etc) H264_DVR_OPEN_CHANNEL_ERROR = -11.200, canal / / open falhar H264_DVR_CLOSE_CHANNEL_ERROR = -11.201, canal / / fechar falhar H264_DVR_SUB_CONNECT_ERROR = -11.202, / / open media connet falhar H264_DVR_SUB_CONNECT_SEND_ERROR = -11.203, / / media connet enviar dados falham / / / Cdigo de erro de gerenciamento de usurios H264_DVR_NOPOWER = -11.300, / / no poder H264_DVR_PASSWORD_NOT_VALID = -11.301, / / senha no vlida H264_DVR_LOGIN_USER_NOEXIST = -11.302, / / usurio no existe H264_DVR_USER_LOCKED = -11.303, / / usurio est bloqueado H264_DVR_USER_IN_BLACKLIST = -11.304, / / usurio est em backlist H264_DVR_USER_HAS_USED = -11.305, / / user ter logined H264_DVR_USER_NOT_LOGIN = -11.305, / / no H264_DVR_CONNECT_DEVICE_ERROR login = -11.306, o dispositivo / / talvez no existam / / / Cdigo de erro de gesto de configurao H264_DVR_OPT_RESTART = -11.400, / / necessrio reiniciar a aplicao H264_DVR_OPT_REBOOT = -11.401, / / precisa reiniciar sistema H264_DVR_OPT_FILE_ERROR = -11.402, / / gravar o arquivo falhar H264_DVR_OPT_CAPS_ERROR = -11.403, / / no suporta

H264_DVR_OPT_VALIDATE_ERROR = -11.404, / / validar falhar H264_DVR_OPT_CONFIG_NOT_EXIST = -11.405, / / config no existe H264_DVR_CTRL_PAUSE_ERROR = -11.500, / / pausa falhar };

enum SDK_EventCodeTypes { SDK_EVENT_CODE_INIT = 0, SDK_EVENT_CODE_LOCAL_ALARM = 1, alarme / / local SDK_EVENT_CODE_NET_ALARM, / / rede alarme SDK_EVENT_CODE_MANUAL_ALARM, / alarme / manual SDK_EVENT_CODE_VIDEO_MOTION, / / deteco de movimento SDK_EVENT_CODE_VIDEO_LOSS, / / perda de deteco SDK_EVENT_CODE_VIDEO_BLIND, / deteco / cego SDK_EVENT_CODE_VIDEO_TITLE, SDK_EVENT_CODE_VIDEO_SPLIT, SDK_EVENT_CODE_VIDEO_TOUR, SDK_EVENT_CODE_STORAGE_NOT_EXIST, SDK_EVENT_CODE_STORAGE_FAILURE, SDK_EVENT_CODE_LOW_SPACE, SDK_EVENT_CODE_NET_ABORT, SDK_EVENT_CODE_COMM, SDK_EVENT_CODE_STORAGE_READ_ERROR, SDK_EVENT_CODE_STORAGE_WRITE_ERROR, SDK_EVENT_CODE_NET_IPCONFLICT, SDK_EVENT_CODE_ALARM_EMERGENCY, SDK_EVENT_CODE_DEC_CONNECT, SDK_EVENT_CODE_NR, }; / / Alarme informaes typedef struct SDK_ALARM_INFO { int nChannel;

int iEvent / / / <consulte SDK_EventCodeTypes int iStatus / / / <0: start 1: parar SDK_SYSTEM_TIME sysTime; } SDK_AlarmInfo;

2.1.1 Estrutura de informaes do dispositivo vo definem como abaixo typedef struct _H264_DVR_DEVICEINFO { sSoftWareVersion char [64] / / / <verso do software sHardWareVersion char [64] / / <verso / hardware sEncryptVersion char [64] / / / <verso criptografar SDK_SYSTEM_TIME tmBuildTime ;/ / / <tempo de construo sSerialNumber char [64] / / / <dispositivo de nmero de srie int byChanNum / / / <nmero do canal de vdeo em int iVideoOutChannel / / / <nmero do canal de sada de vdeo int byAlarmInPortNum / / / <nmero do canal de alarme em int byAlarmOutPortNum / / / <nmero do canal de sada de alarme int iTalkInChannel / / / <nmero do canal de conversa em int iTalkOutChannel / / / <nmero do canal de falar para fora int iExtraChannel / / / <nmero do canal adicional int iAudioInChannel / / / <nmero do canal de udio int iCombineSwitch / / / <nmero do canal de combinar } H264_DVR_DEVICEINFO, * LPH264_DVR_DEVICEINFO; 2.1.2 Data de Informao typedef struct {SDK_SYSTEM_TIME int ano ;/ / / <ano int ms ;/ / / <ms, janeiro = 1, fevereiro = 2, e assim por diante. int dia ;/ / / <dia int wday ;/ / / <semana, domingo = 0, segunda-feira = 1, e assim por diante

int hora ;/ / / <hora int minutos ;/ / / <minutos int segundo ;/ / / <segunda int isdst ;/ / / <DST (horrio de vero), bandeira, Sim = 1, No = 0 } SDK_SYSTEM_TIME; 2.1.3 Gravar Informaes do Arquivo / Estrutura de condio / search typedef struct { int nChannelN0 / / canal NO, comeam com 0 int nFileType; tipo / / record H264_DVR_TIME startTime, o tempo / / start H264_DVR_TIME endTime, o tempo / / fim carbonizar szCard [32], o nmero / / carto } H264_DVR_FINDINFO; / / O retorno da estrutura de informao de registro typedef struct { int ch / / / <canal NO, comeam com 0 tamanho int / / / <tamanho do registro (BYTE) sFileName char [108] / / <nome do arquivo / registro SDK_SYSTEM_TIME stBeginTime / / / <hora de incio do registro SDK_SYSTEM_TIME stEndTime / / / <final hora de registo } H264_DVR_FILE_DATA;

struct SDK_COMMATTRI { iDataBits int / / bit de dados: [5,8] iStopBits int / / Stop bit: [0,2] int iParity / / paridade: 0: Nenhum 1: odd 2: at 3: Marca 4: espao

int iBaudRate / / taxa de transmisso: 115200,57600,38400,9600,4800,2400 e assim por diante }; / / Configure srie struct SDK_CONFIG_COMM_X { carbonizar iProtocolName [32] / / Protocolo: "Console" int iPortNo / / N porta SDK_COMMATTRI aCommAttri / / atributo da srie };

struct SDK_STR_CONFIG_PTZ { carbonizar sProtocolName [NET_MAX_PTZ_PROTOCOL_LENGTH]; / / Protocolo int ideviceNo / / PTZ dispositivo NO. iNumberInMatrixs int / / NO. em matrixs int iPortNo; port / / serial NO: [1, 4]. SDK_COMMATTRI dstComm / / atributo da srie };

/ / Todos os canais de protocolo PTZ struct SDK_STR_PTZCONFIG_ALL { SDK_STR_CONFIG_PTZ ptzAll [NET_MAX_CHANNUM]; };

Lista de direito typedef struct _OPR_RIGHT

{ string nome; } OPR_RIGHT;

typedef struct _USER_INFO { int rigthNum; corda direitos [NET_MAX_RIGTH_NUM]; corda strGroupname; corda strmemo; strName string; corda strPassword; bool reservados / / usurio reservados bool compartilhvel / / compartilhvel } USER_INFO;

typedef struct _USER_GROUP_INFO { int rigthNum; cadeia memo; string nome; direitos string [NET_MAX_RIGTH_NUM] / / lista da direita } USER_GROUP_INFO; / / Todos os usurios e estrutura de informao do grupo typedef struct _USER_MANAGE_INFO { int rigthNum; OPR_RIGHT rightList [NET_MAX_RIGTH_NUM]; int GroupNum; USER_GROUP_INFO groupList [NET_MAX_GROUP_NUM];

int UserNum; USER_INFO userList [NET_MAX_USER_NUM]; } USER_MANAGE_INFO;

/ / Modificar usurio typedef struct _CONF_MODIFYUSER { std :: string sUserName; USER_INFO usurio; } CONF_MODIFYUSER;

/ / Modificar grupo typedef struct _CONF_MODIFYGROUP { std :: string sGroupName; Grupo USER_GROUP_INFO; } CONF_MODIFYGROUP;

/ / / Modificar a senha struct _CONF_MODIFY_PSW { std :: string sUserName; std :: string sPassword; std :: string sNewPassword; };

# Define NET_MAX_RETURNED_LOGLIST 1024 / / o item mximo de Log / / / Condio de pesquisa log

struct SDK_LogSearchCondition { int nType / / / <tipo de log: 0: todos 1: Sistema 2: configurar 3: armazenamento 4: alarme 5: ficha 6: conta 7: arquivo int iLogPosition / / / <retorno da ltima posio do item de registro em todo os logs SDK_SYSTEM_TIME stBeginTime / / / <comeam tempo SDK_SYSTEM_TIME stEndTime / / / <tempo do fim }; / / Retorno de pesquisa Identificar struct SDK_LogList { int iNumLog; struct LogItem { carbonizar sType [24] / / / <tipo de registro carbonizar suser [32] / / / <Operador de log sData de char [68] / / </ dados de log SDK_SYSTEM_TIME stLogTime / / / <o tempo de log aconteceu } Logs [NET_MAX_RETURNED_LOGLIST]; }; ento struct SDK_STORAGEDISK { int iPhysicalNo; int iPartNumber; SDK_DriverInformation diPartitions [SDK_MAX_DRIVER_PER_DISK]; }; struct SDK_StorageDeviceInformationAll { int iDiskNumber; SDK_STORAGEDISK vStorageDeviceInfoAll [SDK_MAX_DISK_PER_MACHINE];

};

monitor em tempo real typedef struct { int nChannel, NO / / Channel. nStream int / / 0: crrego principal, 1: fluxo adicional int nMode / / 0: TCP, 1: UDP } H264_DVR_CLIENTINFO, * LPH264_DVR_CLIENTINFO;

2.1.4 Estrutura de configurao Comandos de H264_DVR_GetDevConfig, H264_DVR_SetDevConfig typedef enum _SDK_CONFIG_TYPE { E_SDK_CONFIG_NOTHING = 0, Managerment / / Usurio E_SDK_CONFIG_USER, / informao / usurio, incluindo a lista de energia, lista de usurio e lista de grupos USER_MANAGE_INFO E_SDK_CONFIG_ADD_USER, / / adiciona USER_INFO usurio E_SDK_CONFIG_MODIFY_USER, / / CONF_MODIFYUSER usurio modify E_SDK_CONFIG_DELETE_USER, / / del usurio USER_INFO E_SDK_CONFIG_ADD_GROUP, / / adiciona grupo USER_GROUP_INFO E_SDK_CONFIG_MODIFY_GROUP, / / modify grupo CONF_MODIFYGROUP E_SDK_COFIG_DELETE_GROUP, / / del grupo USER_GROUP_INFO E_SDK_CONFIG_MODIFY_PSW, / / modificar a senha _CONF_MODIFY_PSW

/ Capacidade / dispositivo E_SDK_CONFIG_ABILITY_SYSFUNC = 9, / / suporte de servios de rede SDK_SystemFunctio E_SDK_CONFIG_ABILTY_ENCODE, / / codificar CONFIG_EncodeAbility capacidade

E_SDK_CONFIG_ABILITY_PTZPRO, / / protocolos de PTZ apoio SDK_PTZPROTOCOLFUNC E_SDK_COMFIG_ABILITY_COMMPRO, / / 232 protocolos de apoio SDK_COMMFUNC E_SDK_CONFIG_ABILITY_MOTION_FUNC, / / Motion detectar SDK_MotionDetectFunction E_SDK_CONFIG_ABILITY_BLIND_FUNC, / / Cego deteco SDK_BlindDetectFunction E_SDK_CONFIG_ABILITY_DDNS_SERVER, / / o tipo de servios DDNS apoio SDK_DDNSServiceFunction E_SDK_CONFIG_ABILITY_TALK, / / codificar tipo de sustentao audio

/ / Dispositivo de configurao E_SDK_CONFIG_SYSINFO = 17, / / sistema de informao H264_DVR_DEVICEINFO E_SDK_CONFIG_SYSNORMAL, / / geral SDK_CONFIG_NORMAL E_SDK_CONFIG_SYSENCODE, / / codificar SDK_EncodeConfigAll E_SDK_CONFIG_SYSNET, SDK_CONFIG_NET_COMMON / / rede E_SDK_CONFIG_PTZ, / / PTZ SDK_STR_PTZCONFIG_ALL E_SDK_CONFIG_COMM, / / 232 SDK_CommConfigAll E_SDK_CONFIG_RECORD, / / record SDK_RECORDCONFIG_ALL E_SDK_CONFIG_MOTION, / / deteco de movimento SDK_MOTIONCONFIG E_SDK_CONFIG_SHELTER, / / cego deteco SDK_BLINDDETECTCONFIG_ALL E_SDK_CONFIG_VIDEO_LOSS, / / perda de deteco SDK_VIDEOLOSSCONFIG_ALL E_SDK_CONFIG_ALARM_IN, / / alarme em SDK_ALARM_INPUTCONFIG_ALL E_SDK_CONFIG_ALARM_OUT, / / sada de alarme E_SDK_CONFIG_DISK_MANAGER / / Gerenciamento de disco E_SDK_CONFIG_OUT_MODE, o modo / / out E_SDK_CONFIG_AUTO, / / auto manter SDK_AutoMaintainConfig E_SDK_CONFIG_DEFAULT, / / set default E_SDK_CONFIG_DISK_INFO, / info / disco SDK_StorageDeviceInformationAll E_SDK_CONFIG_LOG_INFO, / / obtm SDK_LogList log E_SDK_CONFIG_NET_IPFILTER, / / servios de rede: preto / branco lista SDK_NetIPFilterConfig E_SDK_CONFIG_NET_DHCP, / / servios de rede: DHCP E_SDK_CONFIG_NET_DDNS, / / servios de rede: DDNS SDK_NetDDNSConfigALL E_SDK_CONFIG_NET_EMAIL, / / servios de rede: SDK_NetEmailConfig EMAIL

E_SDK_CONFIG_NET_MULTICAST, / / servios de rede: SDK_NetMultiCastConfig Multicast E_SDK_CONFIG_NET_NTP, / / servios de rede: NTP SDK_NetNTPConfig E_SDK_CONFIG_NET_PPPOE, / / servios de rede: PPPOE SDK_NetPPPoEConfig E_SDK_CONFIG_NET_DNS, / / servios de rede: DNS SDK_NetDNSConfig E_SDK_CONFIG_NET_FTPSERVER, / / servios de rede: FTP SDK_FtpServerConfig Tempo E_SDK_CONFIG_SYS_TIME, / system / E_SDK_CONFIG_CLEAR_LOG, log / / clear E_SDK_REBOOT_DEV, o dispositivo / / reboot

E_SDK_CONFIG_ABILITY_LANG, / / languages apoio E_SDK_CONFIG_VIDEO_FORMAT, formato / / Vdeo E_SDK_CONFIG_COMBINEENCODE, / / combinar codificar E_SDK_CONFIG_EXPORT, / / config exportao E_SDK_CONFIG_IMPORT, importao / / config E_SDK_LOG_EXPORT, exportao / / log E_SDK_CONFIG_COMBINEENCODEMODE, / / modo de combinar codificar E_SDK_WORK_STATE, estado / / trabalho } SDK_CONFIG_TYPE;

/ / / Tipo de suporte DDNS struct SDK_DDNSServiceFunction { int nTypeNum; carbonizar vDDNSType [NET_MAX_DDNS_TYPE] [64]; }; / / Support / cego detect struct SDK_BlindDetectFunction { int iBlindCoverNum / / / <o nmero de apoio rea da tampa };

/ / / Deteco de movimento struct SDK_MotionDetectFunction { int iGridRow / / / <o nmero de linha int iGridColumn / / / <o nmero de Colum }; / / / 232 protocolos de apoio struct SDK_COMMFUNC { int nProNum / / / <o nmero de protocolo carbonizar vCommProtocol [SDK_COM_TYPES] [32] / / / <nome de protocolo }; / / / Protocolos de PTZ struct SDK_PTZPROTOCOLFUNC { int nProNum; carbonizar vPTZProtocol [100] [NET_MAX_PTZ_PROTOCOL_LENGTH]; }; / / / Codificar a informao struct SDK_EncodeInfo { bool bEnable / / / <enable int iStreamType / / / <tipo de fluxo ver se referir a capture_channel_t bool bHaveAudio / / / < audio apoio unsigned uiCompression int / / / <mscara de capture_comp_t unsigned uiResolution int / / / <mscara de capture_size_t }; / / / Codificar poder struct CONFIG_EncodeAbility

{ int iMaxEncodePower / / / <max codificar poder SDK_EncodeInfo vEncodeInfo [SDK_CHL_FUNCTION_NUM] / / / <codificar a informao SDK_EncodeInfo vCombEncInfo [SDK_CHL_FUNCTION_NUM] / / / <combinar-codificar a informao };

/ / / Sistema de funo struct SDK_SystemFunction { bool vEncodeFunction SDK_ENCODE_FUNCTION_TYPE_NR [] / / / <Encode Funes bool vAlarmFunction SDK_ALARM_FUNCTION_TYPE_NR [] / / / <alarme fucntions bool vNetServerFunction SDK_NET_SERVER_TYPES_NR [] / / / <Funes Net Servidor bool vPreviewFunction SDK_PREVIEW_TYPES_NR [] / / / <Preview Funes };

/ / / <Auto-Manter ambiente struct SDK_AutoMaintainConfig { int iAutoRebootDay / / / <intervalo de dias Auto-reboot int iAutoRebootHour / / / <a hora de reiniciar [0, 23] int iAutoDeleteFilesDays / / / <intervalo de arquivo de gravao Auto-Del [0, 30] }; / / Info Disk struct SDK_STORAGEDISK { int iPhysicalNo; No. / / Fsica int iPartNumber / / Partition nmeros SDK_DriverInformation diPartitions [SDK_MAX_DRIVER_PER_DISK]; }; struct SDK_StorageDeviceInformationAll

{ int iDiskNumber; SDK_STORAGEDISK vStorageDeviceInfoAll [SDK_MAX_DISK_PER_MACHINE]; };

/ / Tipo de ligao PTZ enum PtzLinkTypes { PTZ_LINK_NONE, / / NONE PTZ_LINK_PRESET, / / GOTO PRESET PTZ_LINK_TOUR, / / TOUR PTZ_LINK_PATTERN / / PADRO };

/ / PTZ ligao Configurao struct SDK_PtzLinkConfig { int iType / / ver se referir a PtzLinkTypes int iValue / / valor do tipo de ligao };

/ / Manipulador de evento struct SDK_EventHandler { unsigned int dwRecord / / mscara de bits de registro. Bits por canal unsigned int iRecordLatch; trava / / record: 10 ~ 300 seg. unsigned dwTour int / / mscara de bits de turn. Bits por canal unsigned dwSnapShot int / / mscara de bits de snapshot. Bits por canal unsigned dwAlarmOut int / / mscara de bits de sada de alarme. Bits por canal unsigned dwMatrix int / / mscara de bits de matriz. Bits por canal

int iEventLatch / / intervalo de evento (unidade: seg.) int iAOLatch / / Sada de alarme trava: 10 ~ 300 seg SDK_PtzLinkConfig PtzLink [NET_MAX_CHANNUM] / / PTZ ativao ligao SDK_CONFIG_WORKSHEET horrio / / weeksheet de registro bool bRecordEn / / ativar o sinalizador de registro bool bTourEn / / permitir bandeira da turn bool bSnapEn / / ativar o sinalizador de snapshot bool bAlarmOutEn / / ativar o sinalizador de alarme fora bool bPtzEn / / ativar o sinalizador de ligao PTZ bool bTip / / ativar o sinalizador de dica de tela bool BMail / / ativar o sinalizador de envio de e-mail bool bMessage / / ativar o sinalizador de envio de mensagem para o centro de alarme bool bBeep / / ativar o sinalizador de aviso sonoro buzzer bool BVoice / / permitir bandeira de ponta voz bool BFTP / / ativar o sinalizador de FTP descarregar bool bMatrixEn / / no usado Blog bool / / ativar o sinalizador de log bool bMessagetoNet / / no usado };

/ / / <Cegos detect struct SDK_BLINDDETECTCONFIG { bool bEnable / / / <enable int iLevel / / / <sensibilidade: 1 ~ 6 SDK_EventHandler hEvent / / / <manipulador de cego detectar evento };

/ / / Todos os canais de cego detectar configurao struct SDK_BLINDDETECTCONFIG_ALL

{ SDK_BLINDDETECTCONFIG vBlindDetectAll [NET_MAX_CHANNUM]; };

/ / / <Alarme em struct SDK_ALARM_INPUTCONFIG { bool bEnable / / / <enable int iSensorType / / / <Tipo de Sensor: Normal ou Normal Aberto Fechar SDK_EventHandler hEvent / / / <manipulador de alarme em }; / / / <Todos os canais de alarme na configurao struct SDK_ALARM_INPUTCONFIG_ALL { SDK_ALARM_INPUTCONFIG vAlarmConfigAll [NET_MAX_CHANNUM]; };

/ / / <Deteco de movimento struct SDK_MOTIONCONFIG { bool bEnable / / <enable int iLevel / / <sensibilidade: [1,6] unsigned int mRegion [NET_MD_REGION_ROW] / / <regies de deteco de movimento, um bit por coluna, regio Max: 18 * 22 SDK_EventHandler hEvent / / <manipulador de deteco de movimento };

/ / / Todos os canais de configurao de movimento de vdeo struct SDK_MOTIONCONFIG_ALL { SDK_MOTIONCONFIG vMotionDetectAll [NET_MAX_CHANNUM];

};

/ / / <Perda de vdeo detectar struct SDK_VIDEOLOSSCONFIG { bool bEnable / / / <enable SDK_EventHandler hEvent / / / <manipulador de eventos }; / / / Todos os canais de configurao de perda de vdeo struct SDK_VIDEOLOSSCONFIG_ALL { SDK_VIDEOLOSSCONFIG vGenericEventConfig [NET_MAX_CHANNUM]; };

/ / / Record tipo de modo enum SDK_RecordModeTypes { SDK_RECORD_MODE_CLOSED, / / / <Fechado SDK_RECORD_MODE_MANUAL, / / / <Manual: recorde o tempo todo SDK_RECORD_MODE_CONFIG, / / / <Configurao: de acordo com SDK_RECORDCONFIG SDK_RECORD_MODE_NR, };

/ / / Recorde < struct SDK_RECORDCONFIG { int iPreRecord / / / <tempo de pr-gravao (Unidade: sec.) bRedundancy bool / / / <recorde redundncia bSnapShot bool / / / <no usados int iPacketLength / / / <comprimento de registro (unidade: minuto) [1, 255]

int iRecordMode; <modo / / / registro, consulte SDK_RecordModeTypes SDK_CONFIG_WORKSHEET wcWorkSheet / / / <planilha unsigned int typeMask [NET_N_WEEKS] [NET_N_TSECT] / / / <mscara do tipo de registro, que corresponde a planilha };

/ / Todos os canais de configurao do registro struct SDK_RECORDCONFIG_ALL { SDK_RECORDCONFIG vRecordConfigAll [NET_MAX_CHANNUM]; };

/ / Configurao Geral typedef struct _SDK_CONFIG_NORMAL { NEW_NET_TIME sysTime / / / <hora do sistema int iLocalNo / / / <dispositivo n : [0, 998] int iOverWrite / / / <quando o disco completo, 0: substituio, 1: stoprecord int iSnapInterval / / / <no usado carbonizar sMachineName [64], o nome / / / <dispositivo int iVideoStartOutPut / / / <no usado int iAutoLogout / / / <auto Sair [0, 120], 0 significa nunca int iVideoFormat / / / <formato de vdeo: 0: PAL, 1: NTSC, 2: SECAM int iLanguage / / / <idioma: 0: Ingls, 1: SimpChinese, 2: TradChinese, 3: italiano, 4: Espanhol, 5: japons, 6: Russo, 7: Frana, 8: Alemo int iDateFormat / / / <formato de data: 0: YYMMDD, 1: MMDDYY, 2: DDMMYY int iDateSeparator / / / <Data separador:. 0:, 1 -, 2: / int iTimeFormat / / / <formato Time: 0: 12, 1: 24 int iDSTRule / / / <DST regra: 0: OFF, 1: ON int iWorkDay / / / <dia de trabalho DSTPoint dDSTStart;

DSTPoint dDSTEnd; } SDK_CONFIG_NORMAL;

/ / Codificar configurao struct SDK_CONFIG_ENCODE { SDK_MEDIA_FORMAT dstMainFmt [SDK_ENCODE_TYPE_NUM]; / stream / main SDK_MEDIA_FORMAT dstExtraFmt [SDK_EXTRATYPES] / / stream extra SDK_MEDIA_FORMAT dstSnapFmt [SDK_ENCODE_TYPE_NUM] / / Snapshot };

/ / Todos canal codificar configurao struct SDK_EncodeConfigAll { SDK_CONFIG_ENCODE vEncodeConfigAll [NET_MAX_CHANNUM]; };

/ / Combinar codificar struct SDK_CombineEncodeConfigAll { SDK_CONFIG_ENCODE vEncodeConfigAll [NET_MAX_COMBINE_NUM]; };

/ / Newwork configurao struct SDK_CONFIG_NET_COMMON { carbonizar HostName [NET_NAME_PASSWORD_LEN] / / / <hostname CONFIG_IPAddress HostIP / / / <IP CONFIG_IPAddress SUBMASK / / / <Netmask CONFIG_IPAddress gateway / / / <NetGateway

port / / / <HTTP; int HttpPort int TCPPort / / / <porta TCP int sslport / / / <no usado int Porta UDP / / / <no usados int maxconn / / / <max connect int MonMode / / / <traduo de protocolo: 0: TCP, 1: UDP, 2: MCAST, s suportam TCP agora MaxBps int / / / <no usados int TransferPlan / / / <poltica de Traduo: 0: AUTO 1: Qualidade em primeiro lugar 2: fluncia em primeiro lugar bUseHSDownLoad bool / / / <bandeira de download de alta velocidade };

Configurao / / PTZ struct SDK_STR_CONFIG_PTZ { carbonizar sProtocolName [NET_MAX_PTZ_PROTOCOL_LENGTH] / / <nome Protocol int ideviceNo / / <dispositivo No. iNumberInMatrixs int / / <No. Na matrixs int iPortNo / / <Porto No. [1, 4] SDK_COMMATTRI dstComm / / <atributo comm }; / / Todos os canais de configurao PTZ struct SDK_STR_PTZCONFIG_ALL { SDK_STR_CONFIG_PTZ ptzAll [NET_MAX_CHANNUM]; }; / / 232 configurao struct SDK_CONFIG_COMM_X { carbonizar iProtocolName [32], o nome / / Protocolo: "Console"

int iPortNo / / N porta SDK_COMMATTRI aCommAttri / / comm atributo };

/ / Todos os canais de configurao 232 struct SDK_CommConfigAll { SDK_CONFIG_COMM_X vCommConfig [SDK_COM_TYPES]; };

/ / / <Fliter IP struct SDK_NetIPFilterConfig { bool Ativar / / / <possibilitar CONFIG_IPAddress BannedList [NET_MAX_FILTERIP_NUM] / / / <lista negra CONFIG_IPAddress TrustList [NET_MAX_FILTERIP_NUM] / / / <lista branca };

/ / / <Multicast struct SDK_NetMultiCastConfig { bool Ativar / / / <possibilitar Servidor SDK_RemoteServerConfig / / / <servidor multicast };

/ / / <Pppoe struct SDK_NetPPPoEConfig {

bool Ativar / / / <possibilitar Servidor SDK_RemoteServerConfig; <servidor / / / PPPOE CONFIG_IPAddress addr / / / <ip comear a partir de discagem PPPOE };

/ / / <DDNS struct SDK_NetDDNSConfig { bool Ativar / / / <possibilitar carbonizar DDNSKey [NET_NAME_PASSWORD_LEN] / / / <o tipo de nome DDNS carbonizar HostName [NET_NAME_PASSWORD_LEN] / / / <hostname Servidor SDK_RemoteServerConfig / / / <servidor DDNS };

/ / / <DDNS struct SDK_NetDDNSConfigALL { SDK_NetDDNSConfig ddnsConfig [5]; };

/ / / <FTP struct {SDK_FtpServerConfig / / / <Enable bool Ativar; / / / <Servidor FTP Servidor SDK_RemoteServerConfig; / / / <Reposio IP do servidor CONFIG_IPAddress SpareIP; / / / <Nome do caminho no servidor FTP RemotePathName char [NET_MAX_PATH_LENGTH];

/ / / <Max arquivo lenght int FileMaxLen; / / / <Carregamento perodos SDK_TIMESECTION UpLoadPeriod [NET_N_MIN_TSECT]; };

/ / / <NTP struct SDK_NetNTPConfig { / / / <Enable bool Ativar; / / / <Servidor NTP Servidor SDK_RemoteServerConfig; / / / <Perodo de atualizao int UpdatePeriod; / / / <Fuso horrio int fuso horrio; }; # Define NET_MAX_EMAIL_TITLE_LEN 64 # Define NET_MAX_EMAIL_RECIEVERS 5 # Define NET_EMAIL_ADDR_LEN 32

/ / / <EMAIL struct SDK_NetEmailConfig { / / / <Enalbe bool Ativar; / / / <Servidor smtp Servidor SDK_RemoteServerConfig;

/ / / <Necessidade SSL? bool bUseSSL; / / / <Endereo do remetente carbonizar SendAddr [NET_EMAIL_ADDR_LEN]; / / / <Receptor Receptores char [NET_MAX_EMAIL_RECIEVERS] [NET_EMAIL_ADDR_LEN]; / / / <Ttulo email Ttulo de char [NET_MAX_EMAIL_TITLE_LEN]; / / Seo / hora < SDK_TIMESECTION Agenda [NET_N_MIN_TSECT]; };

/ / / <DNS struct SDK_NetDNSConfig { CONFIG_IPAddress PrimaryDNS; CONFIG_IPAddress SecondaryDNS; };

Formato / / / udio para conversas de udio struct SDK_AudioInFormatConfig { int iBitRate / / / <bitrate, (unidade: kbps) taxa / / / <amostra (unidade: Hz); iSampleRate int int iSampleBit / / / <amostra bit int iEncodeType / / / <tipo de codificao, consulte consulte AudioEncodeTypes };

/ / / Alarme de status struct SDK_DVR_ALARMSTATE { int iVideoMotion / / / <deteco de movimento status, mscara de bits por canal, bit0 significa canal 1, e assim por diante, 1: 0 alarmante: normal int iVideoBlind, estado de deteco cego / / / <, mscara de bits por canal, bit0 significa canal 1, e assim por diante, 1: 0 alarmante: normal iVideoLoss int / / / <detectar perda de status, mscara de bits por canal, bit0 significa canal 1, e assim por diante, 1: 0 alarmante: normal int iAlarmIn / / / <alarme em status, mscara de bits por canal, bit0 significa canal 1, e assim por diante, 1: 0 alarmante: normal int iAlarmOut / / / <alarme fora status, mscara de bits por canal, bit0 significa canal 1, e assim por diante, 1: 0 alarmante: normal };

/ Status / channel struct SDK_DVR_CHANNELSTATE { bool bRecord / / / <est gravando int iBitrate / / / <taxa de bits };

/ / Status trabalho dispositivo struct SDK_DVR_WORKSTATE { SDK_DVR_CHANNELSTATE vChnState [NET_MAX_CHANNUM]; SDK_DVR_ALARMSTATE vAlarmState; };

2.1.5 teclado Rede definir / / / Valor da chave enum SDK_NetKeyBoardValue

{ SDK_NET_KEY_0, SDK_NET_KEY_1, SDK_NET_KEY_2, SDK_NET_KEY_3, SDK_NET_KEY_4, SDK_NET_KEY_5, SDK_NET_KEY_6, SDK_NET_KEY_7, SDK_NET_KEY_8, SDK_NET_KEY_9, SDK_NET_KEY_10, SDK_NET_KEY_11, SDK_NET_KEY_12, SDK_NET_KEY_13, SDK_NET_KEY_14, SDK_NET_KEY_15, SDK_NET_KEY_16, SDK_NET_KEY_10PLUS, SDK_NET_KEY_UP = 20, / / UP SDK_NET_KEY_DOWN, / / DOWN SDK_NET_KEY_LEFT, / / LEFT SDK_NET_KEY_RIGHT, / / DIREITO SDK_NET_KEY_SHIFT, SDK_NET_KEY_PGUP, / / PAGE UP SDK_NET_KEY_PGDN, / / PAGE DOWN SDK_NET_KEY_RET, / / ENTER SDK_NET_KEY_ESC, / / ESC SDK_NET_KEY_FUNC, / / FUNC SDK_NET_KEY_PLAY, / / PLAY / PAUSE SDK_NET_KEY_BACK, / / BACK SDK_NET_KEY_STOP, / / STOP SDK_NET_KEY_FAST, / / FAST SDK_NET_KEY_SLOW, / / SLOW SDK_NET_KEY_NEXT, / / prxima imagem SDK_NET_KEY_PREV, / / PREV IMAGEM SDK_NET_KEY_REC = 40, / / ENTER RECORDES PAGE SDK_NET_KEY_SEARCH, / / ENTER registro de pesquisa PAGE SDK_NET_KEY_INFO, / / ENTER SYSTEM INFO PAGE SDK_NET_KEY_ALARM, / / ENTER ALARM OUT PAGE SDK_NET_KEY_ADDR, / / ENTER endereo remoto configurao da pgina SDK_NET_KEY_BACKUP, / / entrar na pgina de BACKUP SDK_NET_KEY_SPLIT, / / NEXT SPLIT MODO SDK_NET_KEY_SPLIT1, / / SLPIT MODO 1 SDK_NET_KEY_SPLIT4, / / SLPIT MODO 4

SDK_NET_KEY_SPLIT8, / / SLPIT modo 8 SDK_NET_KEY_SPLIT9, / / SLPIT MODO 9 SDK_NET_KEY_SPLIT16, / / SLPIT MODO 16 SDK_NET_KEY_SHUT, / / SHUTDOWN SDK_NET_KEY_MENU, / / MENU SDK_NET_KEY_PTZ = 60, / / ENTER pgina de controle PTZ SDK_NET_KEY_TELE, / / ZOOM SDK_NET_KEY_WIDE, / / ZOOM + SDK_NET_KEY_IRIS_SMALL, / / ABERTURA SDK_NET_KEY_IRIS_LARGE, / / ABERTURA + SDK_NET_KEY_FOCUS_NEAR, / / FOCUS SDK_NET_KEY_FOCUS_FAR, / / FOCUS + SDK_NET_KEY_BRUSH, / / ESCOVA SDK_NET_KEY_LIGHT, / / LIGHT SDK_NET_KEY_SPRESET, / / SET POINT PRESET SDK_NET_KEY_GPRESET, / / GOTO PRESET POINT SDK_NET_KEY_DPRESET, / / CLEAR ponto predefinido SDK_NET_KEY_PATTERN, / / PADRO SDK_NET_KEY_AUTOSCAN, / / Auto-Scan ON / OFF SDK_NET_KEY_AUTOTOUR, / / AUTO-TOUR ON / OFF SDK_NET_KEY_AUTOPAN, / / AUTO-PAN ON / OFF };

/ / / Teclado estado enum SDK_NetKeyBoardState { SDK_NET_KEYBOARD_KEYDOWN, / / tecla pressionada SDK_NET_KEYBOARD_KEYUP, / / tecla para cima };

struct SDK_NetKeyBoardData { int iValue / / ver se referir a SDK_NetKeyBoardValue int iState / / ver se referir a SDK_NetKeyBoardState }; 3 Definio API 3.1 SDK Inicializao 1. H264_DVR_API longo H264_DVR_GetLastError ();; no ligar para o seguinte interface, voc pode chamar esse fucntion para obter o cdigo de erro.

typedef void (__stdcall * fDisConnect) (longa lLoginID, char * pchDVRIP, nDVRPort longo, longo dwUser no assinado); 2. H264_DVR_API longo H264_DVR_Init (fDisConnect cbDisConnect, muito dwUser no assinado);

cbDisConnect Desligue a funo callback. Trata-se de retorno de chamada sem desligar dispositivo dispositivo de logout com sucesso (H264_DVR_Logout call (), defina-o como 0 quando probem callbacking. [In] dwUser Os dados do usurio

lLoginID Entrar lidar com pchDVRIP IP do dispositivo nDVRPort Porto

dwUser Os dados do usurio, a mesma coisa com os dados do usurio acima, voc tem de entrada.

3. CLIENT_API vazio H264_DVR_Cleanup ();

3.2 Obter estado de alarme typedef bool (__stdcall * fMessCallBack) (longa lLoginID, char * pBuf, dwBufLen unsigned long, long dwUser); H264_DVR_API bool H264_DVR_SetDVRMessCallBack (fMessCallBack cbAlarmcallback, muito luser no assinado); al do dispositivo. Ordem de retorno no importa aqui. Configurao padro SDK no callback.You precisa chamar mensagem de alarme assinatura de interface H264_DVR_SetupAlarmChan (). Aplica-se ao atual estado status.Device alarme definido callbacked cada segundo.

cbAlarmcallback Mensagem callback function.It callback status do dispositivo (como o estado de alarme). Quando for 0, o sistema desativa retorno. [In] luser dados auto-definidas pelo usurio chamada: lLoginID Valor de H264_DVR_Login voltar pBuf Consulte a ver SDK_AlarmInfo dwBufLen comprimento pBuf. Unidade byte.

dwUser Usurio dados auto-definidas

seAlarmChan

4. H264_DVR_API longo H264_DVR_SetupAlarmChan (longa lLoginID);

no. A mensagem callbacked de H264_DVR_SetDVRMessCallBack. armetro: [No] lLoginID Valor de H264_DVR_Login voltar

5. H264_DVR_API bool H264_DVR_CloseAlarmChan (longa lLoginID); ning um dispositivo

[No] lLoginID Valor de H264_DVR_Login voltar

3.3 Registo do Dispositivo 6. H264_DVR_API longo H264_DVR_Login (char * sDVRIP, curto wDVRPort unsigned, char * sUserName, char * sPassword, LPH264_DVR_DEVICEINFO lpDeviceInfo, int * Erro);

administrador pode ser reutilizado.). esta conta pode registras vrias vezes.

[No] sDVRIP dispositivo IP [No] wDVRPort porta do dispositivo [No] sUserName nome de usurio [In] sPassword senha [Out] lpDeviceInfo propriedade do dispositivo. um parmetro de sada. [Out] erro (Quando a funo retornado com xito, o parmetro null.Please se referir ao cdigo de erro.

dispositivo) depois de todas as operaes de registo com sucesso em lata que corresponde ao dispositivo.

7. H264_DVR_API longo H264_DVR_LoginEx (char * sDVRIP, curto wDVRPort unsigned, char * sUserName, char * sPassword, LPH264_DVR_DEVICEINFO lpDeviceInfo, int nType, int * Erro); -se um usurio para porta de extenso do dispositivo. apoiar um usurio especificar dispositivo.

[No] sDVRIP dispositivo IP [No] wDVRPort porta do dispositivo [No] sUserName nome de usurio [In] sPassword senha [Out] lpDeviceInfo propriedade do dispositivo. um parmetro de sada.

[In] nType o tipo como se segue: enum LoginType { LOGIN_TYPE_GUI, / / / <GUI local LOGIN_TYPE_CONSOLE, / / / <Console LOGIN_TYPE_WEB, / / / <WEB LOGIN_TYPE_SNS, / / / <SNS LOGIN_TYPE_MOBIL, / / </ terminal mvel LOGIN_TYPE_NETKEYBOARD, / / / <Netkeyboard LOGIN_TYPE_SERVER, / / / <Servidores do Centro LOGIN_TYPE_AUTOSEARCH, / / / <ferramenta de busca IP LOGIN_TYPE_UPGRADE, / / / <ferramenta de atualizao LOGIN_TYPE_MEGAEYE, / / / <Megaeye LOGIN_TYPE_NR, }; [Out] erro (Quando a funo retornado com xito, o parmetro null.Please se referir ao cdigo de erro.

sing este valor (identificador do dispositivo) todas as operaes depois de logon com xito no cn correspondente ao dispositivo.

8. H264_DVR_API longo H264_DVR_Logout (longa lLoginID)

Parmetro: [No] lLoginID Valor de H264_DVR_Login voltar

3.4 monitor em tempo real 9. H264_DVR_API longo H264_DVR_RealPlay (longa lLoginID, LPH264_DVR_CLIENTINFO lpClientInfo); io API iniciar o Monitor em tempo real.

[No] lLoginID Valor de H264_DVR_Login voltar [No] lpClientInfo Informaes do cliente

VR_StopRealPlay, H264_DVR_SetRealDataCallBack

10. H264_DVR_API bool H264_DVR_StopRealPlay (longa lRealHandle);

[No] lRealHandle Valor de H264_DVR_RealPlay voltar FALSE

11. H264_DVR_API bool H264_DVR_SetRealDataCallBack (longa lRealHandle, fRealDataCallBack cbRealData, muito dwUser); typedef int (* __stdcall fRealDataCallBack) (lRealHandle longo, longo dwDataType, unsigned char * pBuffer, lbufsize longo, longo dwUser); -lhe com os dados do dispositivo Quando cbRealData NULL, fins de retorno de chamada..

[No] lRealHandle Valor de H264_DVR_RealPlay voltar cbRealData uma funo de retorno de chamada para a sada dos dados em tempo real atuais do dispositivo. [In] dwUser

Os dados do usurio rmetros da funo de retorno de chamada: lRealHandle Valor de H264_DVR_RealPlay voltar dwDataType 0: dados originais 1: Os dados do quadro 2: dados yuv 3: dados de udio PCM pBuffer dados de call-back. Toda vez que chamar de volta os dados de diferentes comprimentos de acordo com os diferentes tipos de dados (exceto tipo 0). Outros tipos de dados so baseados em frames, cada vez que ela chama de volta um quadro. dwBufSize comprimento dos dados de retorno de chamada (Unidade: byte).. dwUser Usurio auto-definido

3.5 Reproduo And Download 12. H264_DVR_API longo H264_DVR_FindFile (longa lLoginID, H264_DVR_FINDINFO * lpFindInfo, H264_DVR_FILE_DATA * lpFileData, int lMaxCount, int * findCount, int waittime = 2000);

[No] lLoginID Valor de H264_DVR_Login voltar [No] lpFindInfo Pesquisar condio H264_DVR_FINDINFO [Out] lpFileData Devolvido arquivo information.It registro uma H264_DVR_FILE_DATA

estrutura array. [No] lMaxCount O comprimento do lpFileData (Unidade: BYTE, o valor deve entre 100 ~ 200 * sizeof (H264_DVR_FILE_DATA)) [Out] filecount Devolvido quantidade de arquivos; um parmetro mximo de sada. Voc s pode pesquisar os arquivos de vdeo antes de buffer est cheio [In] waittime Waitting tempo retorno: Sucedido: TRUE, Fail: FALSE API Referncia: H264_DVR_Login, H264_DVR_PlayBackByName, H264_DVR_StopPlayBack, H264_DVR_PlayBackControl, H264_DVR_GetFileByName typedef void (__stdcall * fDownLoadPosCallBack) (lPlayHandle longo, longo lTotalSize, lDownLoadSize longo, longo dwUser) 13. H264_DVR_API longo H264_DVR_PlayBackByName (longa lLoginID, H264_DVR_FILE_DATA * sPlayBackFile, fDownLoadPosCallBack cbDownLoadPos, fRealDataCallBack fDownLoadDataCallBack, muito dwDataUser);

um registro de um tempo, enquanto multi-registros do mesmo canal no pode ser aberto simutaniously.

[No] lLoginID Valor de H264_DVR_Login voltar [No] sPlayBackFile Gravado arquivo de troca de informaes por H264_DVR_FindFile [In] cbDownLoadPos Progress funo call-back [No] fDownLoadDataCallBack Dados da funo call-back vdeo [In] dwUserData Usurio dados auto-definidas

lPlayHandle Valor de H264_DVR_PlayBackByName voltar

dwTotalSize Corrente total tamanho play, unidade KB. dwDownLoadSize Jogado tamanho, a unidade KB. Quando o valor -1, o que significa a reproduo Cureent acabou. dwUser Os dados do usurio, a mesma coisa com os dados do usurio no acima.

H264_DVR_Login, H264_DVR_FindFile, H264_DVR_StopPlayBack, H264_DVR_PlayBackControl

14. H264_DVR_API bool H264_DVR_StopPlayBack (longa lPlayHandle);

[No] lPlayHandle Ala de reproduo, como o valor de retorno de H264_DVR_PlayBackByName

15. H264_DVR_API longo H264_DVR_GetFileByName (longa lLoginID, H264_DVR_FILE_DATA * sPlayBackFile, char * sSavedFileName, fDownLoadPosCallBack cbDownLoadPos = NULL, muito dwDataUser = NULL);

[No] lLoginID O valor de retorno de H264_DVR_Login [No] sPlayBackFile Gravado ponteiro informaes do arquivo. [No] sSavedFileName O nome do arquivo para salvar (caminho completo). [In] cbDownLoadPos

Processo de download do usurio chama auto-definida dados.Por processo de download callback fucntion, consulte H264_DVR_GetDownloadPos [In] dwUserData Baixar processo chama utilizador dados de auto-definidos.

lPlayHandle Valor de H264_DVR_PlayBackByName voltar dwTotalSize Corrente total tamanho play, unidade KB. dwDownLoadSize Jogado tamanho, a unidade KB. Quando o valor -1, o que significa a reproduo Cureent acabou. dwUser Os dados do usurio, a mesma coisa com os dados do usurio no acima.

16. H264_DVR_API bool H264_DVR_StopGetFile (longa lFileHandle);

[No] lFileHandle O valor de retorno de H264_DVR_GetFileByName

17. H264_DVR_API int H264_DVR_GetDownloadPos (longa lFileHandle);

em tempo real. Ela semelhante funo de retorno de download.

[No] lFileHandle O valor de retorno de H264_DVR_GetFileByName

3.6 Controle de reproduo 18. H264_DVR_API bool H264_DVR_PlayBackControl (lPlayHandle longo, longo lControlCode, muito lCtrlValue);

[No] lPlayHandle Jogue manusear, retornar por H264_DVR_GetFileByName [No] lControlCode enum SEDK_PlayBackAction { SDK_PLAY_BACK_PAUSE, / / Pause SDK_PLAY_BACK_CONTINUE, / / Resume SDK_PLAY_BACK_SEEK, / / Procurar };

3.7 Controle de PTZ 19. H264_DVR_API bool H264_DVR_PTZControl (longa lLoginID, int nChannelNo, muito lPTZCommand, bool bStop = false, muito lSpeed = 4)

[No] lLoginID Valor de H264_DVR_Login voltar [No] nChannelNo Canal NO. comeam com 0 [Out] lPTZCommand Comandos, consulte consulte PTZ_ControlType [No] bStop Se parar ou no. Ela se aplica a operao PTZ andlens direo. Quando voc operar outras funes, a entrada desse parmetro como FALSE.

[Out] lSpeed Passo / Velocidade. O valor varia de 1 a 8. 8 tem a maior capacidade de controle (4 por padro). dwStep o valor pr-definido quando voc usa a funo predefinida.

3.8 Configurao do Sistema 20. H264_DVR_API longo H264_DVR_GetDevConfig (longa lLoginID, unsigned long dwCommand, int nChannelNO, char * lpOutBuffer, unsigned long dwOutBufferSize, unsigned long * lpBytesReturned, int waittime = 1000);

[No] lLoginID O valor de retorno de H264_DVR_Login [In] dwCommand Tipo de configurao, por favor, consulte SDK_CONFIG_TYPE [No] nChannelNO Nmero do canal. Definir como -1 para configurar todos os canais. O parmetro nulo se o comando no precisa do nmero do canal. [Out] lpOutBuffer Receba ponteiro do buffer de dados, tamanho do buffer dependem da configurao tamanho da estrutura. [No] dwOutBufferSize Receber dados de buffer comprimento (Unidade: byte) [Out] lpBytesReturned O comprimento de dados efetivamente recebidos. [In] waittime O tempo de espera

21. H264_DVR_API longo H264_DVR_SetDevConfig (longa lLoginID, unsigned long dwCommand, int nChannelNO, char * lpInBuffer, unsigned long dwInBufferSize, int waittime = 1000);

[No] lLoginID O valor de retorno de H264_DVR_Login [In] dwCommand Tipo de configurao, por favor, consulte SDK_CONFIG_TYPE [No] nChannelNO Nmero do canal. Definir como -1 para configurar todos os canais. O parmetro nulo se o comando no precisa do nmero do canal. [In] lpInBuffer Ponteiro do buffer de dados [No] dwInBufferSize Dados tampo comprimento (unidade byte). [In] waittime Waitting tempo retorno: Sucedido: TRUE, Fail: FALSE

3.9 Log Management 22. H264_DVR_API bool H264_DVR_FindDVRLog (longa lLoginID, SDK_LogSearchCondition * pFindParam, SDK_LogList * pRetBuffer, muito lBufSize, int waittime = 2000);

[No] lLoginID O valor de retorno de H264_DVR_Login [No] pFindParam Pesquisar condio, por favor, consulte SDK_LogSearchCondition [No] pRetBuffer O retorno de informaes de log, por favor, consulte SDK_LogList [No] lBufSize O comprimento retorno de informaes de log [In] waittime O tempo de espera

RUE, Fail: FALSE

3.10 Controle Remoto 23. H264_DVR_API bool H264_DVR_ControlDVR (longa lLoginID, int tipo, int waittime = 2000)

[No] lLoginID O valor de retorno de H264_DVR_Login [In] tipo 0: dispositivo reiniciar, 1: log clara

3.11 Atualizao typedef void (__stdcall * fUpgradeCallBack) (lLoginID longo, longo lUpgradechannel, int nTotalSize, int nSendSize, muito dwUser); 24. H264_DVR_API longo H264_DVR_Upgrade (longa lLoginID, char * sFileName, int nType = 0, cbUpgrade fUpgradeCallBack = NULL, muito dwUser = 0);

[No] lLoginID O valor de retorno de H264_DVR_Login [In] sFileName O nome do arquivo de atualizao [In] nType O tipo de arquivo de atualizao enum UpgradeTypes { UPGRADE_TYPES_SYSTEM, / / / <Sistema UPGRADE_TYPES_NR, };

fUpgradeCallBack Callback do progresso upgrade, lUpgradechannel o identificador upgrade, voltar por H264_DVR_Upgrade nTotalSize Atualize comprimento de arquivo, (Unidade: BYTE) nSendSize comprimento dos dados tenham sido atualizados, (unidade: BYTE) [In] dwUser Usurio auto-definir dados

25. H264_DVR_API longo H264_DVR_CloseUpgradeHandle (longa lUpgradeHandle); o parada

[No] lUpgradeID O valor de retorno de H264_DVR_Upgrade

26. H264_DVR_API int H264_DVR_GetUpgradeState (longa lUpgradeHandle) atualizao

[No] lUpgradeHandle O valor de retorno de H264_DVR_Upgrade

27. H264_DVR_API bool H264_DVR_SearchDevice (char * szBuf, int nBufLen, int * pRetLen, nSearchTime int);

[In] szBuf Buffer para receber estrutura SDK_CONFIG_NET_COMMON, voltar a uma estrutura, enquanto que pesquisar um dispositivo. [No] nBufLen szBuf tamanho do buffer [No] pRetLen Retorne o comprimento total estrutura de SDK_CONFIG_NET_COMMON [No] nSearchTime O tempo de espera

3.11 udio Discusso typedef void (__stdcall * pfAudioDataCallBack) (longa lVoiceHandle, char * pDataBuf, longo dwBufSize, byAudioFlag char, muito dwUser); 28. H264_DVR_API longo H264_DVR_StartVoiceCom_MR (longa lLoginID, pfAudioDataCallBack pVcb, Comprida dwDataUser);

Parmetro: [No] lLoginID O valor de retorno de H264_DVR_Login [No] pVcb Interface callback dados auto-definido. [No] dwDataUser Dados auto-definidos. Devolvido a voc atravs da funo callback

Referncia: H264_DVR_VoiceComSendData, H264_DVR_StopVoiceCom, H264_DVR_SetTalkMode

29. H264_DVR_API bool H264_DVR_VoiceComSendData (longa lVoiceHandle, char * pSendBuf, lBufSize longo);

[No] lVoiceHandle Valor de H264_DVR_StartVoiceCom_MR voltar [No] pSendBuf Os dados de udio a ser enviado para fora. [No] lBufSize Comprimento de dados de udio a ser enviado (Unidade: byte).

ferncia: H264_DVR_StartVoiceCom_MR H264_DVR_StopVoiceCom H264_DVR_SetTalkMode

30. H264_DVR_API bool H264_DVR_StopVoiceCom (longa lVoiceHandle);

[No] lVoiceHandle O valor de retorno de H264_DVR_StartVoiceCom_MR

H264_DVR_StartVoiceCom_MR H264_DVR_VoiceComSendData H264_DVR_SetTalkMode

31. H264_DVR_API bool H264_DVR_SetTalkMode (longa lLoginID, SDK_AudioInFormatConfig * pTalkMode); API: conjunto de modo de conversao udio

0 - [in] lLoginID O valor de retorno de H264_DVR_Login 1 - [no] pTalkMode Modo de conversa de udio, ver se referir a SDK_AudioInFormatConfig

H264_DVR_StartVoiceCom_MR H264_DVR_VoiceComSendData H264_DVR_StopVoiceCom 3.12 Modo de Gravao 32. H264_DVR_API bool H264_DVR_StartDVRRecord (longa lLoginID, int nChannelNo, muito lRecordType);

lLoginID o valor de retorno de H264_DVR_Login [No] nChannelNo Canal No., -1 todos os canais [No] lRecordType Modo de gravao, consulte consulte SDK_RecordModeTypes

33. H264_DVR_API bool H264_DVR_StopDVRRecord (longa lLoginID, int nChannelNo);

[No] lLoginID O valor de retorno de H264_DVR_Login [No] nChannelNo Canal No., -1: todos os canais

Referncia: H264_DVR_StartDVRRecord 3.13 Ajuste da hora do sistema 34. H264_DVR_API bool H264_DVR_SetSystemDateTime (longa lLoginID, SDK_SYSTEM_TIME * pSysTime);

[No] lLoginID

O valor de retorno de H264_DVR_Login [No] pSysTime Hora do sistema, ver se referir a SDK_SYSTEM_TIME

3.14 Obter estado Dispositivo 35. H264_DVR_API bool H264_DVR_GetDVRWorkState (longa lLoginID, SDK_DVR_WORKSTATE * pWorkState);

[No] lLoginID O valor de retorno de H264_DVR_Login 0 - [in] pWorkState Estrutura de staus de trabalho, consulte consulte SDK_DVR_WORKSTATE : FALSE

3.15 Teclado Net 36. H264_DVR_API bool H264_DVR_ClickKey (longa lLoginID, SDK_NetKeyBoardData * pKeyBoardData);

[No] lLoginID O valor de retorno de H264_DVR_Login 0 - [in] pKeyBoardData Valor de chave, consulte consulte SDK_NetKeyBoardData

Potrebbero piacerti anche