bc-sdk
Version:
sdk for baichuan shenzhen, version 1677
1,166 lines • 100 kB
JavaScript
"use strict";
Object.defineProperty(exports, "__esModule", { value: true });
const ffi = require("ffi");
const path = require('path');
const _T = require("./_struct");
exports.renderCallbackFunc = ffi.Function('void', ['int', 'int', _T.P_RENDER_FRAME_DESC, _T.pointer('void')]);
exports.dataCallbackFunc = ffi.Function('void', ['int', 'int', _T.P_DATA_FRAME_DESC, _T.pointer('void')]);
exports.diskStatusCallback = ffi.Function('void', [_T.P_BC_DISK_WARNINIG_DESC, _T.pointer('void')]);
exports.recordStatusCallback = ffi.Function('void', [_T.P_BC_REC_EVENT_DESC, _T.pointer('void')]);
exports.deviceFoundCallback = ffi.Function('void', [_T.P_DEVICE_LOCATION_DESC, _T.pointer('void')]);
const folder = process.env.NODE_ENV === "development" ? process.env.VUE_APP_DIR_PLATFORM_EXTERNALS : __dirname;
function tryLoad(lib) {
try {
ffi.Library(path.join(folder, lib));
}
catch (e) {
console.log('error load --- ' + lib);
console.log(e);
}
}
if (process.platform === "win32") {
tryLoad('vcruntime140');
tryLoad('msvcp140');
tryLoad('BCP2P_API');
tryLoad('IOTCAPIs');
tryLoad('RDTApis');
tryLoad('D3DX9_42');
tryLoad('avutil-55');
tryLoad('swresample-2');
tryLoad('swscale-4');
tryLoad('avcodec-57');
tryLoad('avformat-57');
}
const MFFI = ffi.Library(path.join(folder, 'libBCSDKWrapper'), {
/************************************************************************
*
* Device interfaces
*
************************************************************************/
BCSDK_Open: ['int', ['int', 'int', 'int']],
BCSDK_AddDevice: ['int', [_T.P_DEVICE_LOGIN_DESC, _T.P_DEVICE_CALLBACK_DESC, _T.pointer('int')]],
BCSDK_RemoveDevice: ['int', ['int']],
BCSDK_RemoveAllDevices: ['int', ['void']],
BCSDK_ModifyDevice: ['int', ['int', _T.P_DEVICE_LOGIN_DESC, _T.P_DEVICE_CALLBACK_DESC, _T.pointer('int')]],
BCSDK_GetDeviceCount: ['int', ['void']],
BCSDK_GetDevice: ['int', ['int']],
BCSDK_SetIsInBackground: ['int', ['bool']],
BCSDK_SetNetworkType: ['int', ['int']],
BCSDK_SetAccountCenter: ['int', ['string', 'string', 'string']],
BCSDK_SetShouldLoginWithSignature: ['int', ['int', 'bool']],
BCSDK_SetDeviceNeedAutoOpen: ['int', ['int', 'bool']],
BCSDK_SetDeviceMaxReconnectCount: ['int', ['int', 'int']],
BCSDK_StartDevicesAutoOpen: ['int', ['int']],
BCSDK_StopDevicesAutoOpen: ['int', ['bool']],
BCSDK_DeviceForceOpen: ['int', ['int', 'bool']],
BCSDK_DeviceForceClose: ['int', ['int', 'bool']],
BCSDK_GetDeviceChannelCount: ['int', ['int', _T.pointer('int')]],
BCSDK_GetDeviceLoginMessage: ['int', ['int', _T.P_DEVICE_LOGIN_DESC]],
BCSDK_GetDeviceState: ['int', ['int', _T.pointer('int')]],
BCSDK_SetDeviceExtension: ['int', ['int', _T.pointer('void')]],
BCSDK_GetDeviceExtension: ['int', ['int', _T.pointer(_T.pointer('void'))]]
/************************************************************************
*
* Abilities interfaces
*
************************************************************************/
,
BCSDK_SetAbilityAbout: ['int', ['int', _T.P_DEVICE_ABILITY_ABOUT]],
BCSDK_GetDeviceType: ['int', ['int', _T.pointer('int')]],
BCSDK_GetIsLoginByDefaultPass: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetDeviceNorm: ['int', ['int', _T.pointer('int')]],
BCSDK_GetSupportRF: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportPush: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportReplay: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportReplaySubStream: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportTimingRecord: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportRecordEnable: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportReplaySpeed: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportAlarmVideoMark: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportCoverPreview: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportDeleteRecordFiles: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportPolling: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportAutoNtp: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportWiFi: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportWiFiCfg: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportWiFiTest: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportInitAP: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportFTP: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportFTPTest: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportFTPSubStream: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportFTPExtensionStream: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportFTPPicture: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportFTPEnable: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportFTPAutoDir: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportRTSP: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportRTMP: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportONVIF: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportP2PEnable: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportP2PDomainName: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportP2PPort: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportPppoe: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportSeek: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportIFramePreview: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportIFrameReplay: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportHDD: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportSDCard: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportTimeFormat: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportDateFormat: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportEmailTask: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportEmailNickName: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportEmailInterval: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportEmailEnable: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportPushTask: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportPushEnable: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportCloud: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportCloudCfg: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportCloudSchedule: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportCloudSignatureLoginCfg: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportAccountBind: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportServerControlStreamType: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSmarthomeAbility: ['int', ['int', _T.pointer('int')]],
BCSDK_GetSupportUpgrade: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportOutput: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportVideoLost: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportPTZSetting: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportPerformance: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportAutoUpdate: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportReboot: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportVideoStandard: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportUpnp: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportExceptionCfg: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportLogSearch: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportDDNSCfg: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportMediaPort: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportHttpPort: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportHttpsPort: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportNtp: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportRecSchedule: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportRecSettings: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportRecOverWriteCfg: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportRecPreRecordCfg: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportRecPackDurationCfg: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportRecRecordExtensionCfg: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportRecRecordExtensionTimeList: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetIsWifiIPC: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetIsIPC: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetIsNVR: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetIsBASE: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetHasAdminPermission: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetUserVersion: ['int', ['int', _T.pointer('int')]],
BCSDK_GetPTZMode: ['int', ['int', _T.pointer('int')]],
BCSDK_GetAlarmInPortCount: ['int', ['int', _T.pointer('int')]],
BCSDK_GetAlarmOutPortCount: ['int', ['int', _T.pointer('int')]],
BCSDK_GetDdnsVersion: ['int', ['int', _T.pointer('int')]],
BCSDK_GetAnalogChannelCount: ['int', ['int', _T.pointer('int')]],
BCSDK_GetPushType: ['int', ['int', _T.pointer('int')]]
/*, BCSDK_GetPushSecretCode: ['int', ['int', 'char[]' 'int']] */
,
BCSDK_GetRfVersion: ['int', ['int', _T.pointer('int')]],
BCSDK_GetRfNumbers: ['int', ['int', _T.pointer('int')]],
BCSDK_GetSupportSimModule: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportShowQrcode: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportChinese: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportNasBind: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportNasUnbind: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportNasBindStatusInfo: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportExport: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportImport: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportSyncUTCTime: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetQRAudios: ['int', ['int', _T.P_BC_QR_AUDIOS_INFO]],
BCSDK_GetSupportSamba: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetScheduleVersion: ['int', ['int', _T.pointer('int')]],
BCSDK_GetSupportBuzzer: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportBuzzerTask: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportBuzzerEnable: ['int', ['int', _T.pointer('bool')]],
BCSDK_GetSupportChannelVersion: ['int', ['int', _T.pointer('bool')]]
/************************************************************************
* MARK: Channel abilities
************************************************************************/
,
BCSDK_GetEncodeTable: ['int', ['int', 'int', _T.P_BC_ENC_PROFILE_TABLE]],
BCSDK_GetIsVideoLoss: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportCameraMode: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportExtenStream: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportExtenStreamCfg: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportLEDControl: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIndicatorLight: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportFloodlight: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportFloodlightBrightnessCtrl: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportFloodlightAutoByPreview: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportFloodlightModeConfig: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportPtzSpeed: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportPtzCruise: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportPtzPreset: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportPt: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAutoPt: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportZoomAndFocus: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportZoomAndFocusSliderCfg: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportOnly4Directions: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportGuardPoint: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportPTSelfTestCfg: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAudio: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAutoFocus: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportCropSnap: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportTalk: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportMD: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportMDWithPIR: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportMDTriggerAudio: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportMDTriggerRecord: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportShelterCfg: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetIsBattery: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetIsCharge: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportBatAnalysis: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAudioAlarmEnable: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAudioAlarmSchedule: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportManualRingDown: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportCustomRingtone: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportOsdPadding: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportOsdWaterMark: ['int', ['int', 'int', _T.pointer('bool')]]
// ISP
,
BCSDK_GetSupportIspDayNight: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspAntiFlick: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspExposureMode: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspWhiteBalance: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspBacklight: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIsp3dnr: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspMirror: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspFlip: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspBright: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspContrast: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspSatruation: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspHue: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspSharpen: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspDayNightThreshold: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspBrightDarkRegulate: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportIspFirstFrameStrategy: ['int', ['int', 'int', _T.pointer('bool')]]
// AI
,
BCSDK_GetSupportAI: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAIPeople: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAIVehicle: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAIFace: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAIAnimal: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAIOther: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAIDetectConfig: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportAITrack: ['int', ['int', 'int', _T.pointer('bool')]]
// Timelapse
,
BCSDK_GetSupportTimelapse: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetSupportTimelapseThumbnail: ['int', ['int', 'int', _T.pointer('bool')]]
/************************************************************************
*
* Live interfaces
*
************************************************************************/
,
BCSDK_GetIsLiveOpen: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetLiveStreamType: ['int', ['int', 'int', _T.pointer('int')]],
BCSDK_LiveOpen: ['int', ['int', 'int', 'int', exports.renderCallbackFunc, _T.pointer('void')]],
BCSDK_LiveClose2: ['int', ['int', 'int']],
BCSDK_LiveMute: ['int', ['int', 'int', 'bool']]
/************************************************************************
*
* PTZ interfaces
*
************************************************************************/
,
BCSDK_PTZStop: ['int', ['int', 'int']],
BCSDK_PTZUp: ['int', ['int', 'int', 'int']],
BCSDK_PTZDown: ['int', ['int', 'int', 'int']],
BCSDK_PTZLeft: ['int', ['int', 'int', 'int']],
BCSDK_PTZRight: ['int', ['int', 'int', 'int']],
BCSDK_PTZUpLeft: ['int', ['int', 'int', 'int']],
BCSDK_PTZUpRight: ['int', ['int', 'int', 'int']],
BCSDK_PTZDownLeft: ['int', ['int', 'int', 'int']],
BCSDK_PTZDownRight: ['int', ['int', 'int', 'int']],
BCSDK_PTZZoomIn: ['int', ['int', 'int', 'int']],
BCSDK_PTZZoomOut: ['int', ['int', 'int', 'int']],
BCSDK_PTZFocusFar: ['int', ['int', 'int', 'int']],
BCSDK_PTZFocusNear: ['int', ['int', 'int', 'int']],
BCSDK_PTZIrisOpen: ['int', ['int', 'int', 'int']],
BCSDK_PTZIrisClose: ['int', ['int', 'int', 'int']],
BCSDK_PTZScanAuto: ['int', ['int', 'int', 'int']]
/************************************************************************
*
* Playback interfaces
*
************************************************************************/
,
BCSDK_RecordFilesSearch: ['int', ['int', 'int', 'string', _T.BC_TIME, _T.BC_TIME, 'int', 'int']],
BCSDK_AlarmVideosSearch: ['int', ['int', 'int', _T.BC_TIME, _T.BC_TIME, 'int', 'int']],
BCSDK_PlaybackSeek: ['int', ['int', _T.P_BC_TIME]],
BCSDK_GetPlaybackState: ['int', ['int', 'int', _T.pointer('int')]],
BCSDK_GetIsPlaybackOpen: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_GetPlaybackStreamType: ['int', ['int', 'int', _T.pointer('int')]],
BCSDK_PlaybackOpen: ['int', ['int', 'int', 'string', 'string', 'string', 'string', 'bool', 'float', exports.renderCallbackFunc, _T.pointer('void')]],
BCSDK_PlaybackClose2: ['int', ['int', 'int']],
BCSDK_PlaybackStart: ['int', ['int', 'int']],
BCSDK_PlaybackPause: ['int', ['int', 'int']],
BCSDK_PlaybackStop: ['int', ['int', 'int']],
BCSDK_PlaybackStep: ['int', ['int', 'int']],
BCSDK_PlaybackMute: ['int', ['int', 'int', 'bool']]
/************************************************************************
*
* Talk interfaces
*
************************************************************************/
,
BCSDK_AudioTalkOpen2: ['int', ['int', 'int']],
BCSDK_AudioTalkClose: ['int', ['int', 'int']],
BCSDK_GetAudioTalkState: ['int', ['int', 'int', _T.pointer('int')]]
/************************************************************************
*
* Local Reocrd interfaces
*
************************************************************************/
/**
* Record Callback
*/
,
BCSDK_SetDiskCallbacks: ['int', [exports.diskStatusCallback, _T.pointer('void')]],
BCSDK_SetRecordCallback: ['int', [exports.recordStatusCallback, _T.pointer('void')]]
// -----------------------------------------------------------------------------------------------------------------
// Record Folder
,
BCSDK_SetRecordFolder: ['int', ['string', 'string', 'uint64', 'uint64']]
// -----------------------------------------------------------------------------------------------------------------
// Set Channel Record File Prefixion
// Default is "DeviceName"CH"ChannelIndex"
,
BCSDK_SetRecordFilePrefixion: ['int', ['int', 'int', 'string']]
// -----------------------------------------------------------------------------------------------------------------
// Local Record Schedule
,
BCSDK_SetLocalRecordSchedule: ['int', [_T.BC_REC_SCHE_TABLE_CFG, 'int', 'int', 'int']],
BCSDK_OpenLocalRecordSchedule: ['int', []],
BCSDK_CloseLocalRecordSchedule: ['int', []]
// -----------------------------------------------------------------------------------------------------------------
// Device should record with schedule
// Default is false
,
BCSDK_SetDeviceAcceptLocalRecordSchedule: ['int', ['int', _T.BC_REC_SCHE_DEVICE_CFG]]
// -----------------------------------------------------------------------------------------------------------------
// Recording
,
BCSDK_GetIsRecording: ['int', ['int', 'int', _T.pointer('bool')]]
// -----------------------------------------------------------------------------------------------------------------
// Manual Record
,
BCSDK_GetIsManualRecordOpened: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_OpenManualRecord: ['int', ['int', 'int']],
BCSDK_CloseManualRecord: ['int', ['int', 'int']],
BCSDK_GetLocalRecordState: ['int', ['int', 'int', _T.pointer('int')]]
// -----------------------------------------------------------------------------------------------------------------
// Live Record
,
BCSDK_StartLiveRecord: ['int', ['int', 'int']],
BCSDK_GetLiveRecordState: ['int', ['int', 'int', _T.pointer('int')]],
BCSDK_CutLiveRecord: ['int', ['int', 'int']],
BCSDK_StopLiveRecord: ['int', ['int', 'int']]
// ------------------------------------------------------------------------------------------------------------
// Playback Record (IOS/Android Use)
,
BCSDK_StartPlaybackRecord: ['int', ['int', 'int']],
BCSDK_GetPlaybackRecordState: ['int', ['int', 'int', _T.pointer('int')]],
BCSDK_CutPlaybackRecord: ['int', ['int', 'int']],
BCSDK_StopPlaybackRecord: ['int', ['int', 'int']]
/************************************************************************
*
* Download interfaces
*
************************************************************************/
,
BCSDK_GetIsDownloading: ['int', ['int', _T.pointer('int')]],
BCSDK_StartDownloadFile: ['int', ['int', 'string', 'string', 'string', 'bool', 'int', 'string', 'string']],
BCSDK_StartDownloadByTime: ['int', ['int', 'int', 'string', _T.BC_TIME, _T.BC_TIME, 'bool', 'string', 'string']],
BCSDK_StopDownload: ['int', ['int', 'long']]
/************************************************************************
*
* Remote Config interfaces
*
************************************************************************/
/************************************************************************
* MARK: Device Remote Config
************************************************************************/
/* get remote config state for cmd
*
* @param cmd the BC_CMD_E of witch you want to check it's state
*
* @param state it should not be NULL
* it will get back the state of the cmd
* BCSDK_CONFIG_STATE_NOTREADY
*
*/
,
BCSDK_RemoteConfigState: ['int', ['int', 'int', 'int', _T.pointer('int')]],
BCSDK_RemoteConfigState2: ['int', ['int', 'int', 'int', 'int', _T.pointer('int')]]
/* system version
*
* callback with E_BC_CMD_GET_VERSION
*/
,
BCSDK_RemoteGetVersionInfo: ['int', ['int']]
/* system general
*
* callback with E_BC_CMD_GET_SYS, E_BC_CMD_SET_SYS, E_BC_CMD_SET_DEVICE_NAME
*/
,
BCSDK_RemoteGetSysGeneralCfg: ['int', ['int']],
BCSDK_RemoteSetSysGeneralCfg: ['int', ['int', _T.P_BC_SYS_GENERAL_CFG, 'int']],
BCSDK_RemoteSetDeviceName: ['int', ['int', _T.P_BC_DEVICE_NAME_CFG]]
/* autoReboot
*
* callback with E_BC_CMD_GET_AUTOREBOOT_CFG, E_BC_CMD_SET_AUTOREBOOT_CFG
*/
,
BCSDK_RemoteGetAutoRebootCfg: ['int', ['int']]
// callback with
,
BCSDK_RemoteSetAutoRebootCfg: ['int', ['int', _T.P_BC_AUTOREBOOT_CFG]]
/* factory default
*
* callback with E_BC_CMD_RESTORE
*/
,
BCSDK_RemoteFactoryDefault: ['int', ['int', _T.P_BC_RESTORE_CFG]]
/* record cfg
*
* callback with E_BC_CMD_GET_ADVRECORD, E_BC_CMD_SET_ADVRECORD
*/
,
BCSDK_RemoteGetRecordGenCfg: ['int', ['int']],
BCSDK_RemoteSetRecordGenCfg: ['int', ['int', _T.P_BC_RECORD_GENERAL_CFG, 'int']]
/* email
*
* callback with E_BC_CMD_GET_EMAIL, E_BC_CMD_SET_EMAIL, E_BC_CMD_EMAILTEST
*/
,
BCSDK_RemoteGetMailCfg: ['int', ['int']],
BCSDK_RemoteSetMailCfg: ['int', ['int', _T.P_BC_EMAIL_CFG]],
BCSDK_RemoteEmailTest: ['int', ['int', _T.P_BC_EMAIL_CFG]]
/* output
*
* callback with E_BC_CMD_GET_OUTPUT, E_BC_CMD_SET_OUTPUT
*/
,
BCSDK_RemoteGetOutputCfg: ['int', ['int']],
BCSDK_RemoteSetOutputCfg: ['int', ['int', _T.P_BC_OUTPUT_CFG]]
/* HDDCfg
*
* callback with E_BC_CMD_GET_HDD_CFG
*/
,
BCSDK_RemoteGetHDDCfg: ['int', ['int']]
/* HDD Init
*
* callback with E_BC_CMD_INIT_HDD
*/
,
BCSDK_RemoteInitHdd: ['int', ['int', _T.P_BC_HDD_INIT_CFG]],
BCSDK_RemoteInitSDCard: ['int', ['int', _T.P_BC_HDD_INIT_CFG]]
/* HDD Full
*
* callback with E_BC_CMD_GET_HDDFULL_EXPCFG, E_BC_CMD_SET_HDDFULL_EXPCFG
*/
,
BCSDK_RemoteGetHDDFull: ['int', ['int']],
BCSDK_RemoteSetHDDFull: ['int', ['int', _T.P_BC_EXCEPTION_CFG]]
/* HDD Error
*
* callback with E_BC_CMD_GET_HDDERR_EXPCFG, E_BC_CMD_SET_HDDERR_EXPCFG
*/
,
BCSDK_RemoteGetHDDError: ['int', ['int']],
BCSDK_RemoteSetHDDError: ['int', ['int', _T.P_BC_EXCEPTION_CFG]]
/* Network Disconnect
*
* callback with E_BC_CMD_GET_NETDISCONNECT_EXPCFG, E_BC_CMD_SET_NETDISCONNECT_EXPCFG
*/
,
BCSDK_RemoteGetNetDisconnect: ['int', ['int']],
BCSDK_RemoteSetNetDisconnect: ['int', ['int', _T.P_BC_EXCEPTION_CFG]]
/* IpConflict
*
* callback with E_BC_CMD_GET_IPCONFLICT_EXPCFG, E_BC_CMD_SET_IPCONFLICT_EXPCFG
*/
,
BCSDK_RemoteGetIpConflict: ['int', ['int']],
BCSDK_RemoteSetIpConflict: ['int', ['int', _T.P_BC_EXCEPTION_CFG]]
/* network local
*
* callback with E_BC_CMD_GET_LOCAL, E_BC_CMD_SET_LOCAL
*/
,
BCSDK_RemoteGetNetworkCfg: ['int', ['int']],
BCSDK_RemoteSetNetworkCfg: ['int', ['int', _T.P_BC_LOCAL_CFG]]
/* normalPort
*
* callback with E_BC_CMD_GET_NORMAL_PORT, E_BC_CMD_SET_NORMAL_PORT
*/
,
BCSDK_RemoteGetNetNormalPort: ['int', ['int']],
BCSDK_RemoteSetNetNormalPort: ['int', ['int', _T.P_BC_NET_NORMAL_PORT]]
/* advanced Port
*
* callback with E_BC_CMD_GET_ADVANCED_PORTS, E_BC_CMD_SET_ADVANCED_PORTS
*/
,
BCSDK_RemoteGetNetAdvancedPort: ['int', ['int']],
BCSDK_RemoteSetNetAdvancedPort: ['int', ['int', _T.P_BC_NET_ADVANCED_PORT]]
/* upnpCfg
*
* callback with E_BC_CMD_GET_UPNPSTATE, E_BC_CMD_SET_UPNPSTATE
*/
,
BCSDK_RemoteGetUpnpCfg: ['int', ['int']],
BCSDK_RemoteSetUpnpCfg: ['int', ['int', _T.P_BC_UPNP_CFG]]
/* uid
*
* callback with E_BC_CMD_GET_UID
*/
,
BCSDK_RemoteGetUidInfo: ['int', ['int']]
/* p2p cfg
*
* callback with E_BC_CMD_GET_PTOP_CFG, E_BC_CMD_SET_PTOP_CFG
*/
,
BCSDK_RemoteGetP2PCfg: ['int', ['int']],
BCSDK_RemoteSetP2PCfg: ['int', ['int', _T.P_BC_P2P_CFG]]
/* RF Sensor
*
* callback with E_BC_CMD_GET_RFSENSOR, E_BC_CMD_SET_RFSENSOR
*/
,
BCSDK_RemoteGetRFSensor: ['int', ['int']],
BCSDK_RemoteSetOutArm: ['int', ['int']],
BCSDK_RemoteSetHomeArm: ['int', ['int']],
BCSDK_RemoteSetSleepArm: ['int', ['int']],
BCSDK_RemoteSetDisarm: ['int', ['int']]
/* Alarm In
*
* callback with E_BC_CMD_GET_ALARMINCFG, E_BC_CMD_SET_ALARMINCFG
*/
,
BCSDK_RemoteGetAlarmIn: ['int', ['int', 'int']],
BCSDK_RemoteSetAlarmIn: ['int', ['int', _T.P_BC_ALARM_IN_CFG]]
/* Alarm Out
*
* callback with E_BC_CMD_GET_ALARMOUTCFG, E_BC_CMD_SET_ALARMOUTCFG
*/
,
BCSDK_RemoteGetAlarmOut: ['int', ['int', 'int']],
BCSDK_RemoteSetAlarmOut: ['int', ['int', _T.P_BC_ALARM_OUT_CFG]]
/* RF Alarm Cfg
*
* callback with E_BC_CMD_GET_RF_CFG, E_BC_CMD_SET_RF_CFG, E_BC_CMD_SET_RF_ALARM_STATUS
*/
,
BCSDK_RemoteGetRfAlarmCfg: ['int', ['int', 'int']],
BCSDK_RemoteSetRfAlarmCfg: ['int', ['int', _T.P_BC_RF_ALARM_CFG, 'int']],
BCSDK_RemoteSetRfAlarmStatus: ['int', ['int', _T.P_BC_RF_ALARM_STATUS]]
/* DST
*
* callback with E_BC_CMD_GET_DST, E_BC_CMD_SET_DST
*/
,
BCSDK_RemoteGetDst: ['int', ['int']],
BCSDK_RemoteSetDst: ['int', ['int', _T.P_BC_DST_CFG, 'int']]
/* DDNS
*
* callback with E_BC_CMD_GET_DDNSCFG, E_BC_CMD_SET_DDNSCFG
*/
,
BCSDK_RemoteGetDdns: ['int', ['int']],
BCSDK_RemoteSetDdns: ['int', ['int', _T.P_BC_DDNS_CFG]]
/* NTP
*
* callback with E_BC_CMD_GET_NTPCFG, E_BC_CMD_SET_NTPCFG
*/
,
BCSDK_RemoteGetNtp: ['int', ['int']],
BCSDK_RemoteSetNtp: ['int', ['int', _T.P_BC_NTP_CFG]]
/* PPPOE
*
* callback with E_BC_CMD_GET_PPPOECFG, E_BC_CMD_SET_PPPOECFG
*/
,
BCSDK_RemoteGetPppoe: ['int', ['int']],
BCSDK_RemoteSetPppoe: ['int', ['int', _T.P_BC_PPPOE_CFG]]
/* Online Update
*
* callback with E_BC_CMD_ONLINE_UPDATE
*/
,
BCSDK_RemoteOnlineUpate: ['int', ['int', _T.P_BC_ONLINE_UPDATE]]
/* online updtate status
*
* callback with E_BC_CMD_GET_ONLINE_UPDATE_STATUS
*/
,
BCSDK_RemoteGetOnlineUpdateStatus: ['int', ['int']]
/* Auto Update
*
* callback with E_BC_CMD_GET_AUTO_UPDATE, E_BC_CMD_SET_AUTO_UPDATE
*/
,
BCSDK_RemoteGetAutoUpdateState: ['int', ['int']],
BCSDK_RemoteSetAutoUpdateState: ['int', ['int', _T.P_BC_AUTO_UPDATE]]
/* Online New Firmware
*
* callback with E_BC_CMD_GET_ONLINE_NEW_FIRMWARE
*/
,
BCSDK_RemoteGetOnlineNewFwInfo: ['int', ['int']]
/* Performances
*
* callback with E_BC_CMD_GET_PERFORMANCE
*/
,
BCSDK_RemoteGetPerformances: ['int', ['int']]
/* Wifi
*
* callback with E_BC_CMD_GET_WIFI_SIGNAL, E_BC_CMD_GET_WIFI_INFO,
* E_BC_CMD_SET_WIFI_INFO, E_BC_CMD_WIFI_TEST
*/
,
BCSDK_RemoteGetWifiSignal: ['int', ['int']],
BCSDK_RemoteGetWifiCfg: ['int', ['int']],
BCSDK_RemoteSetWifiCfg: ['int', ['int', _T.P_BC_WIFI_CFG]],
BCSDK_RemoteWifiTest: ['int', ['int', _T.P_BC_WIFI_CFG]]
/* 3g 4g info
*
* callback with E_BC_CMD_GET_3G_4G_INFO
*/
,
BCSDK_RemoteGet3g4gInfo: ['int', ['int']]
/* SIM Module Info
*
* callback with E_BC_CMD_GET_SIM_MODULE_INFO, E_BC_CMD_SET_SIM_MODULE_INFO
*/
,
BCSDK_RemoteGetSimModuleInfo: ['int', ['int']],
BCSDK_RemoteSetSimModuleInfo: ['int', ['int', _T.P_BC_SIM_MODULE_INFO]]
/* Cloud
*
* callback with E_BC_CMD_GET_CLOUD_INFO, E_BC_CMD_BIND_CLOUD, E_BC_CMD_GET_CLOUD_CFG, E_BC_CMD_SET_CLOUD_CFG
*/
,
BCSDK_RemoteGetCloudInfo: ['int', ['int']],
BCSDK_RemoteBindCloud: ['int', ['int', _T.P_BC_BIND_CLOUD]],
BCSDK_RemoteGetCloudCfg: ['int', ['int']],
BCSDK_RemoteSetCloudCfg: ['int', ['int', _T.P_BC_CLOUD_CFG]],
BCSDK_RemoteGetSignatureLoginCfg: ['int', ['int']],
BCSDK_RemoteSetSignatureLoginCfg: ['int', ['int', _T.P_BC_SIGNATURE_LOGIN_CFG]]
/* sync utc time
*
* callback with E_BC_CMD_SYNC_UTC_TIME
*/
,
BCSDK_RemoteSyncUtcTime: ['int', ['int', _T.P_BC_UTC_TIME]]
/* NAS
*
* callback with E_BC_CMD_NAS_GET_BIND_INFO, E_BC_CMD_NAS_BIND, E_BC_CMD_NAS_UNBIND
*/
,
BCSDK_RemoteNasGetBindInfo: ['int', ['int']],
BCSDK_RemoteNasBind: ['int', ['int', _T.P_BC_NAS_BIND]],
BCSDK_RemoteNasUnbind: ['int', ['int', _T.P_BC_NAS_BIND, 'int']]
/* Scan ap
*
* callback with E_BC_CMD_GET_SCAN_AP
*/
,
BCSDK_RemoteGetScanAp: ['int', ['int']]
/* record file days
*
* callback with E_BC_CMD_GET_RECFILEDATE
*/
,
BCSDK_RemoteGetRecFileDaysByChannel: ['int', ['int', _T.P_BC_RECORD_FILE_DAYS_BY_CHN]]
/* user config
*
* callback with E_BC_CMD_GET_USERCFG, E_BC_CMD_SET_USERCFG
*/
,
BCSDK_RemoteGetUserCfg: ['int', ['int']],
BCSDK_RemoteSetUserCfg: ['int', ['int', _T.P_BC_USER_CFG]]
/* set user ability
*
* callback with E_BC_CMD_SET_USER_ALL_ABILITY
*/
,
BCSDK_RemoteInitNewUserAiblity: ['int', ['int', _T.P_BC_USER_FOR_ABILITY]]
/* online user config
*
* callback with E_BC_CMD_GET_USER_ONLINE, E_BC_CMD_SET_USER_ONLINE
*/
,
BCSDK_RemoteGetOnlineUserCfg: ['int', ['int']],
BCSDK_RemoteSetOnlineUserCfg: ['int', ['int', _T.P_BC_USER_ONLINE_CFG]]
/* force user password when first login
*
* callback with E_BC_CMD_FORCE_PASSWORD
*/
,
BCSDK_RemoteForceUserPassword: ['int', ['int', _T.P_BC_FORCE_PWD]]
/* pwd state
*
* callback with E_BC_CMD_GET_BOOTPWD_STATE, E_BC_CMD_SET_BOOTPWD_STATE
*/
,
BCSDK_RemoteGetBootPwdState: ['int', ['int']],
BCSDK_RemoteSetBootPwdState: ['int', ['int', _T.P_BC_BOOT_PWD_STATE]]
/* upgrade firmware
*
* callback with E_BC_CMD_UPGRADE, E_BC_CMD_UPGRADE_PROGRESS
*/
,
BCSDK_RemoteUpgradeFirmware: ['int', ['int', _T.P_BC_UPGRADE_FILE_INFO]]
/* Ftp Cfg
*
* callback with E_BC_CMD_GET_FTPCFG, E_BC_CMD_SET_FTPCFG, E_BC_CMD_FTP_TEST
*/
,
BCSDK_RemoteGetFtpCfg: ['int', ['int']],
BCSDK_RemoteSetFtpCfg: ['int', ['int', _T.P_BC_FTP_CFG]],
BCSDK_RemoteSetFtpTest: ['int', ['int', _T.P_BC_FTP_CFG]]
/* I Frame Support
*/
,
BCSDK_SetDeviceIFramePreview: ['int', ['int', 'bool']],
BCSDK_SetDeviceIFrameReplay: ['int', ['int', 'bool']]
/* Reboot
*
* callback with E_BC_CMD_REBOOT
*/
,
BCSDK_RemoteReboot: ['int', ['int']]
/* Device Sleep
*
* callback with E_BC_CMD_DEVICE_SLEEP
*/
,
BCSDK_RemoteDeviceSleep: ['int', ['int']]
/* export/import configuration file
*
* callback with E_BC_CMD_EXPORT, E_BC_CMD_EXPORT_PROGRESS, E_BC_CMD_IMPORT, E_BC_CMD_IMPORT_PROGRESS
*/
,
BCSDK_RemoteExportConfig: ['int', ['int', _T.P_BC_CONFIG_FILE_INFO]],
BCSDK_RemoteImportConfig: ['int', ['int', _T.P_BC_CONFIG_FILE_INFO]]
/* get log file
*
* callback with E_BC_CMD_GETLOG
*/
,
BCSDK_RemoteGetLogFile: ['int', ['int', _T.P_BC_CONFIG_FILE_INFO]]
/* start alarm report
*
* callback with E_BC_CMD_START_ALARM_REPORT, E_BC_CMD_STOP_ALARM_REPORT
*/
,
BCSDK_RemoteStartAlarmReport: ['int', ['int']],
BCSDK_RemoteStopAlarmReport: ['int', ['int']]
/* push open
*
* callback with E_BC_CMD_PUSH_ADD
*/
,
BCSDK_RemotePushOpen: ['int', ['int', _T.P_BC_PUSH_INFO]]
/*, BCSDK_RemotePushClose: (handle: number, BC_PUSH_INFO *info);*/
/* rtmp operation
*
* callback with E_BC_CMD_RTMP_START, E_BC_CMD_RTMP_STOP
*/
,
BCSDK_RemoteRtmpStart: ['int', ['int', _T.P_BC_RTMP_OPT]],
BCSDK_RemoteRtmpStop: ['int', ['int', _T.P_BC_RTMP_OPT]]
/* covers get
*
* callback with E_BC_CMD_COVER_PREVIEW
*/
/*, BCSDK_RemoteGetCovers: ['int', ['int', _T.P_BC_GET_FILE_COVERS_CFG]]*/
/* files Delete
*
* callback with E_BC_CMD_REC_FILE_DEL
*/
,
BCSDK_DeleteRecFiles: ['int', ['int', _T.P_BC_DEL_REC_FILES]]
/* record enable
*
* callback with E_BC_CMD_GET_RECORD_ENABLE, E_BC_CMD_SET_RECORD_ENABLE
*/
,
BCSDK_RemoteGetRecordEnable: ['int', ['int']],
BCSDK_RemoteSetRecordEnable: ['int', ['int', _T.P_BC_ALARM_OUT_ENABLE_CFG]]
/* Ftp enable
*
* callback with E_BC_CMD_GET_FTP_ENABLE, E_BC_CMD_SET_FTP_ENABLE
*/
,
BCSDK_RemoteGetFtpEnable: ['int', ['int']],
BCSDK_RemoteSetFtpEnable: ['int', ['int', _T.P_BC_ALARM_OUT_ENABLE_CFG]]
/* Email enable
*
* callback with E_BC_CMD_GET_EMAIL_ENABLE, E_BC_CMD_SET_EMAIL_ENABLE
*/
,
BCSDK_RemoteGetEmailEnable: ['int', ['int']],
BCSDK_RemoteSetEmailEnable: ['int', ['int', _T.P_BC_ALARM_OUT_ENABLE_CFG]]
/* push enable
*
* callback with E_BC_CMD_GET_PUSH_ENABLE, E_BC_CMD_SET_PUSH_ENABLE
*/
,
BCSDK_RemoteGetPushEnable: ['int', ['int']],
BCSDK_RemoteSetPushEnable: ['int', ['int', _T.P_BC_ALARM_OUT_ENABLE_CFG]]
/* buzzer enable
*
* callback with E_BC_CMD_GET_BUZZER_ENABLE, E_BC_CMD_SET_BUZZER_ENABLE
*/
,
BCSDK_RemoteGetBuzzerEnable: ['int', ['int']],
BCSDK_RemoteSetBuzzerEnable: ['int', ['int', _T.P_BC_ALARM_OUT_ENABLE_CFG]]
/************************************************************************
* MARK: Channel Remote Config
************************************************************************/
/* encode
*
* callback with E_BC_CMD_GET_COMPRESS, E_BC_CMD_SET_COMPRESS
*/
,
BCSDK_RemoteGetEncCfg: ['int', ['int', 'int']],
BCSDK_RemoteSetEncCfg: ['int', ['int', 'int', _T.P_BC_CHN_ENC_INFO]]
/* osd
*
* callback with E_BC_CMD_GET_OSD, E_BC_CMD_SET_OSD
*/
,
BCSDK_RemoteGetOsdCfg: ['int', ['int', 'int']],
BCSDK_RemoteSetOsdCfg: ['int', ['int', 'int', _T.P_BC_OSD_CFG, 'int']]
/* cameraCfg
*
* callback with E_BC_CMD_GET_CAMERA_CFG, E_BC_CMD_SET_CAMERA_CFG
*/
,
BCSDK_RemoteGetCameraCfg: ['int', ['int', 'int']],
BCSDK_RemoteSetCameraCfg: ['int', ['int', 'int', _T.P_BC_CAMERA_CFG]]
/* Shelter
*
* callback with E_BC_CMD_GET_COVER, E_BC_CMD_SET_COVER
*/
,
BCSDK_RemoteGetShelter: ['int', ['int', 'int']],
BCSDK_RemoteSetShelter: ['int', ['int', 'int', _T.P_BC_COVER_CFG]]
/* record schedule
*
* callback with E_BC_CMD_GET_RECORDSCHED, E_BC_CMD_SET_RECORDSCHED
*/
,
BCSDK_RemoteGetRecordSchedule: ['int', ['int', 'int']],
BCSDK_RemoteSetRecordSchedule: ['int', ['int', 'int', _T.P_BC_RECORD_SCHEDULE_CFG]]
/* PTZ Config
*
* callback with E_BC_CMD_GET_PTZCFG, E_BC_CMD_SET_PTZCFG
*/
,
BCSDK_RemoteGetPtzCfg: ['int', ['int', 'int']],
BCSDK_RemoteSetPtzCfg: ['int', ['int', 'int', _T.P_BC_PTZ_DECODER]]
/* Motion Config
*
* callback with E_BC_CMD_GET_MOTION, E_BC_CMD_SET_MOTION
*/
,
BCSDK_RemoteGetMotionCfg: ['int', ['int', 'int']],
BCSDK_RemoteSetMotionCfg: ['int', ['int', 'int', _T.P_BC_MOTION_CFG, 'int']]
/* AI Config
*
* callback with E_BC_CMD_GET_AI_CFG, E_BC_CMD_SET_AI_CFG
*/
,
BCSDK_RemoteGetAiCfg: ['int', ['int', 'int']],
BCSDK_RemoteSetAiCfg: ['int', ['int', 'int', _T.P_BC_AI_CFG, 'int']]
/* Video Loss
*
* callback with E_BC_CMD_GET_VILOST, E_BC_CMD_SET_VILOST
*/
,
BCSDK_RemoteGetVideoLoss: ['int', ['int', 'int']],
BCSDK_RemoteSetVideoLoss: ['int', ['int', 'int', _T.P_BC_VILOST_CFG]]
/* ptz preset
*
* callback with E_BC_CMD_GET_PRESET, E_BC_CMD_SET_PRESET, E_BC_CMD_GOTO_PRESET
*/
,
BCSDK_RemoteGetPresets: ['int', ['int', 'int']],
BCSDK_RemoteSetPresets: ['int', ['int', 'int', _T.P_BC_PTZ_PRESETS, 'int']],
BCSDK_RemotePresetInvoke: ['int', ['int', 'int', 'int']]
/* ptz guard
*
* callback with E_BC_CMD_GET_GUARD, E_BC_CMD_SET_GUARD
*/
,
BCSDK_RemoteGetGuard: ['int', ['int', 'int']],
BCSDK_RemoteSetGuard: ['int', ['int', 'int', _T.P_BC_GUARD_INFO, 'int']]
/* ptz cruise
*
* callback with E_BC_CMD_GET_CRUISE, E_BC_CMD_SET_CRUISE
*/
,
BCSDK_RemoteGetCruises: ['int', ['int', 'int']],
BCSDK_RemoteSetCruise: ['int', ['int', 'int', _T.P_BC_PTZ_CRUISES]],
BCSDK_RemoteCruiseInvoke: ['int', ['int', 'int', 'int']],
BCSDK_RemoteCruiseStop: ['int', ['int', 'int', 'int']]
/* isp
*
* callback with E_BC_CMD_GET_CAMERA, E_BC_CMD_GET_DEFAULT_CAMERA, E_BC_CMD_SET_CAMERA, E_BC_CMD_SET_ISP_DAY_NIGHT_MODE
*/
,
BCSDK_RemoteGetIspCfg: ['int', ['int', 'int']],
BCSDK_RemoteGetDefaultIspCfg: ['int', ['int', 'int']],
BCSDK_RemoteSetIspCfg: ['int', ['int', 'int', _T.P_BC_ISP_CFG, 'int']],
BCSDK_RemoteSetIspDayNightMode: ['int', ['int', 'int', _T.P_BC_DAY_NIGHT_MODE_CFG]]
/* LED
*
* callback with E_BC_CMD_GET_LED_STATE, E_BC_CMD_SET_LED_STATE
*/
,
BCSDK_RemoteGetLedState: ['int', ['int', 'int']],
BCSDK_RemoteSetLedState: ['int', ['int', 'int', _T.P_BC_LED_LIGHT_STATE, 'int']]
/* Floodlight
*
* callback with E_BC_CMD_FLOODLIGHT_MANUAL, E_BC_CMD_GET_FLOODLIGHT_TASK, E_BC_CMD_SET_FLOODLIGHT_TASK
*/
,
BCSDK_RemoteFloodlightManual: ['int', ['int', 'int', _T.P_BC_FLOODLIGHT_MANUAL, 'int']],
BCSDK_RemoteGetFloodlightTask: ['int', ['int', 'int']],
BCSDK_RemoteSetFloodlightTask: ['int', ['int', 'int', _T.P_BC_FLOODLIGHT_TASK, 'int']]
/* day night threshold
*
* callback with NET_GET_DAY_NIGHT_THRESHOLD_V20, NET_SET_DAY_NIGHT_THRESHOLD_V20
*/
,
BCSDK_RemoteGetDayNightThreshold: ['int', ['int', 'int']],
BCSDK_RemoteSetDayNightThreshold: ['int', ['int', 'int', _T.P_BC_DAY_NIGHT_THRESHOLD_CFG, 'int']]
/* Ftp Task
*
* callback with E_BC_CMD_GET_FTPTASK, E_BC_CMD_SET_FTPTASK
*/
,
BCSDK_RemoteGetFtpTask: ['int', ['int', 'int']],
BCSDK_RemoteSetFtpTask: ['int', ['int', 'int', _T.P_BC_FTP_TASK]]
/* Email Task
*
* callback with E_BC_CMD_GET_EMAIL_TASK, E_BC_CMD_SET_EMAIL_TASK
*/
,
BCSDK_RemoteGetEmailTask: ['int', ['int', 'int']],
BCSDK_RemoteSetEmailTask: ['int', ['int', 'int', _T.P_BC_EMAIL_TASK]]
/* push task
*
* callback with E_BC_CMD_GET_PUSH_TASK, E_BC_CMD_SET_PUSH_TASK
*/
,
BCSDK_RemoteGetPushTask: ['int', ['int', 'int']],
BCSDK_RemoteSetPushTask: ['int', ['int', 'int', _T.P_BC_PUSH_TASK]]
/* audio task
*
* callback with E_BC_CMD_GET_AUDIO_TASK, E_BC_CMD_SET_AUDIO_TASK
*/
,
BCSDK_RemoteGetAudioTask: ['int', ['int', 'int']],
BCSDK_RemoteSetAudioTask: ['int', ['int', 'int', _T.P_BC_AUDIO_TASK]]
/* buzzer task
*
* callback with E_BC_CMD_GET_BUZZER_TASK, E_BC_CMD_SET_BUZZER_TASK
*/
,
BCSDK_RemoteGetBuzzerTask: ['int', ['int', 'int']],
BCSDK_RemoteSetBuzzerTask: ['int', ['int', 'int', _T.P_BC_BUZZER_TASK]]
/* Snap
*
* callback with E_BC_CMD_SNAP
*/
,
BCSDK_RemoteSnap: ['int', ['int', 'int', _T.P_BC_SNAP_INFO]]
/* Config Stream
*/
,
BCSDK_GetIsConfigStreamOpen: ['int', ['int', 'int', _T.pointer('bool')]],
BCSDK_ConfigStreamOpen: ['int', ['int', 'int', exports.renderCallbackFunc, _T.pointer('void')]],
BCSDK_ConfigStreamClose: ['int', ['int', 'int']]
/* Auto Focus
*
* callback with E_BC_CMD_GET_AUTO_FOCUS, E_BC_CMD_SET_AUTO_FOCUS
*/
,
BCSDK_RemoteGetAutoFocus: ['int', ['int', 'int']],
BCSDK_RemoteSetAutoFocus: ['int', ['int', 'int', _T.P_BC_PTZ_AUTO_FOCUS]]
/* Zoom Focus
*
* callback with E_BC_CMD_GET_ZOOM_FOCUS_INFO, E_BC_CMD_START_ZOOM_FOCUS
*/
,
BCSDK_RemoteGetZoomFocusInfo: ['int', ['int', 'int']],
BCSDK_RemoteStartZoomFocus: ['int', ['int', 'int', _T.P_BC_START_ZOOM_FOCUS]]
/* pt power on self test
*
* callback with E_BC_CMD_GET_PT_SELF_TEST_CFG, E_BC_CMD_SET_PT_SELF_TEST_CFG
*/
/*int _BCSDK_ BCSDK_RemoteGetPtSelfTestCfg(H_BC_DEVICE hDevice, int channel);
int _BCSDK_ BCSDK_RemoteSetPtSelfTestCfg(H_BC_DEVICE hDevice, int channel, BC_PT_SELF_TEST_CFG *cfg);
int _BCSDK_ BCSDK_RemoteStartPtSelfTest(H_BC_DEVICE hDevice, int channel);
*/
/* Crop Cfg
*
* callback with E_BC_CMD_GET_CROP_CFG, E_BC_CMD_SET_CROP_CFG
*/
,
BCSDK_RemoteGetCropCfg: ['int', ['int', 'int']],
BCSDK_RemoteSetCropCfg: ['int', ['int', 'int', _T.P_BC_CROP_CFG]]
/* Crop Snap
*
* callback with E_BC_CMD_CROP_SNAP
*/
,
BCSDK_RemoteCropSnap: ['int', ['int', 'int', _T.P_BC_CROP_SNAP_INFO]]
/* Delete Online Device
*
* callback with E_BC_CMD_BASE_DELETE_ONLINE_DEVICE
*/
// int _BCSDK_ BCSDK_RemoteBaseDeleteOnlineDevice(H_BC_DEVICE hDevice, BC_BASE_ONLINE_DEVICE_INFO *onlineDevInfo);
/* base device's RF Cfg
*
* callback with E_BC_CMD_BASE_GET_RF_CFG, E_BC_CMD_BASE_SET_RF_CFG
*/
// int _BCSDK_ BCSDK_RemoteGetBaseRfAlarmCfg(H_BC_DEVICE hDevice, int channel, BC_BASE_RF_ALARM_REQUEST *request);
// int _BCSDK_ BCSDK_RemoteSetBaseRfAlarmCfg(H_BC_DEVICE hDevice, int channel, BC_BASE_RF_ALARM_CFG *rfAlarmCfg);
// int _BCSDK_ BCSDK_RemoteSetBaseRfAlarmStatus(H_BC_DEVICE hDevice, int channel, BC_RF_ALARM_STATUS *rfAlarmStatus);
/* base device's WIFI QRCode
*
* callback with E_BC_CMD_BASE_GET_WIFI_QRCODE, E_BC_CMD_BASE_SET_WIFI_QRCODE
*/
// int _BCSDK_ BCSDK_RemoteGetBaseWifiQRCode(H_BC_DEVICE hDevice);
// int _BCSDK_ BCSDK_RemoteSetBaseWifiQRCode(H_BC_DEVICE hDevice, BC_BASE_WIFI_QRCODE *qrCodeCfg);
/* battery info
*
* callback with E_BC_CMD_GET_BATTERY_INFO
*/
,
BCSDK_RemoteGetBatteryInfo: ['int', ['int', 'int']]
/* battery analysis
*
* callback with E_BC_CMD_GET_BATTERY_ANALYSIS
*/
,
BCSDK_RemoteGetBatteryAnalysis: ['int', ['int', 'int']]
/* ringtone
*
* callback with E_BC_CMD_GET_RINGTONE_FILE_INFO
* E_BC_CMD_GET_RINGTONE_CFG
* E_BC_CMD_SET_RINGTONE_CFG
* E_BC_CMD_MANUAL_RING_DOWN
* E_BC_CMD_MUTE_ALARM_AUDIO
* E_BC_CMD_SAVE_RINGTONE
* E_BC_CMD_IMPORT_RINGTONE
* E_BC_CMD_IMPORT_RINGTONE_PROGRESS
* E_BC_CMD_GET_RINGTONE_ABILITY
*/
,
BCSDK_RemoteGetRingtoneFileInfo: ['int', ['int', 'int']],
BCSDK_RemoteGetRingtoneCfg: ['int', ['int', 'int']],
BCSDK_RemoteSetRingtoneCfg: ['int', ['int', 'int', _T.P_BC_RINGTONE_CFG]],
BCSDK_RemoteManualRingDown: ['int', ['int', 'int', _T.P_BC_MANUAL_RING_DOWN]],
BCSDK_RemoteMuteAlarmAudio: ['int', ['int', 'int', _T.P_BC_MUTE_ALARM_AUDIO]],
BCSDK_RemoteSaveRingtone: ['int', ['int', 'int']],
BCSDK_RemoteImportRingtone: ['int', ['int', 'int', _T.P_BC_RINGTONE_FILE_INFO]],
BCSDK_RemoteGetRingtoneAbility: ['int', ['int', 'int']]
/* version info
*
* callback with E_BC_CMD_GET_CHN_VERSION
*/
,
BCSDK_RemoteGetChannelVersionInfo: ['int', ['int', 'int']]
/* ai detect config
*
* callback with E_BC_CMD_GET_DEF_AI_DETECT_CFG_V20, E_BC_CMD_GET_AI_DETECT_CFG_V20, E_BC_CMD_SET_AI_DETECT_CFG_V20
*/
,
BCSDK_RemoteGetDefaultAIDetectCfg: ['int', ['int', 'int', 'int', 'int']],
BCSDK_RemoteGetAIDetectCfg: ['int', ['int', 'int', 'int', 'int']],
BCSDK_RemoteSetAIDetectCfg: ['int', ['int', 'int', _T.P_BC_AI_DETECT_CFG, 'int']]
/* alarm areas config
*
* callback with E_BC_CMD_SET_ALARM_ARAES_CFG_V20
*/
,
BCSDK_RemoteSetAlarmAreas: ['int', ['int', 'int', _T.P_BC_ALARM_AREAS_CFG]]
/************************************************************************
*
* Search interfaces
*
************************************************************************/
,
BCSDK_AddSearchCallback: ['int', [exports.deviceFoundCallback, _T.pointer('void')]],
BCSDK_RemoveSearchCallback: ['int', [exports.deviceFoundCallback, _T.pointer('void')]]
/* start device search loop with loop time
*
* @param time [2,10]
*
* @return E_NONE, success
* E_ILLEGAL, time is out of [2,10]
*/
,
BCSDK_StartDeviceSearchLoop: ['int', ['int']]
/* stop device search loop
*
*/
,
BCSDK_StopDeviceSearchLoop: ['int', []]
/* start device search once immediately
*
* @return E_NONE, success
* E_UND, failed
*/
,
BCSDK_DeviceSearchOnce: ['int', []]
/* start Song P2P device search once immediately
*
* @return E_NONE, success
* E_UND, failed
*/
,
BCSDK_SongP2PDeviceSearchOnce: ['int', []]
/************************************************************************
*
* Tools interfaces
*
************************************************************************/
,
BCSDK_GetTotalBitrates: ['int', [_T.pointer(ffi.types.longlong)]],
BCSDK_ReInitP2p: ['void', []],
BCSDK_GetP2PType: ['int', ['string', _T.pointer('int')]],
BCSDK_GetSongP2PType: ['int', ['string', _T.pointer('int')]],
BCSDK_GetSongDeviceInfo: ['int', ['string', _T.pointer('int')]],
BCSDK_SongP2PGetDebug: ['int', [_T.P_BC_P2P_DEBUG_INFO]],
BCSDK_XCUID2SongUID: ['int', ['string', _T.P_BC_P2P_UID_INFO]],
BCSDK_SongP2PGetDetail: ['int', [_T.P_BC_P2P_DETAIL_INFO]],
BCSDK_GetDiagnoseLogs: ['int', [_T.P_BC_DIAGNOSE_LOGS_LIST]],
BCSDK_Encrypt: ['int', [_T.P_BC_CRYPT_BUF]],
BCSDK_Decrypt: ['int', [_T.P_BC_CRYPT_BUF]],
BCSDK_GetSpeakerVolume: ['int', [_T.pointer('int')]],
BCSDK_SetSpeakerVolume: ['int', ['int']],
BCSDK_GetDiskFreeSize: ['int', ['string', _T.pointer('ulonglong')]],
BCSDK_GetHasWritePermission: ['int', ['string', _T.pointer('bool')]],
BCSDK_SaveYUVToDisk: ['int', ['string', 'int', 'int', 'int', _T.P_RENDER_VIDEO_PLANE_DESC, _T.P_RENDER_VIDEO_PLANE_DESC, _T.P_RENDER_VIDEO_PLANE_DESC]]
});
class NativeDelegate {
constructor() {
/****************************************************************
*
* Methods for Device
*
**