Sommario
Indirizzo del flusso audio e video in tempo reale RTSP:
- Formato: rtsp://ip:numero di porta/flusso
- Porta predefinita: 554
- ID del flusso: 0 (corrente principale), 1 (flusso secondario)
- Per esempio, per recuperare il flusso secondario dall'indirizzo del dispositivo 192.168.1.188, l'URL è:
- rtsp://192.168.1.1 8 8 :554 / 1
Il cliente (App mobile) ottiene e imposta i parametri della fotocamera tramite il protocollo TCP;
La fotocamera funge da server TCP, con la porta TCP predefinita 8866.
Formato dei dati di comunicazione TCP:
stringa JSON pura
Ottieni lo stato della fotocamera:
Struttura dei dati:
struttura typedef
{
char s8DevId[64]; // ID del dispositivo, il valore predefinito è IP se non è impostato alcun ID.
u32 u32TfRegistra; // Stato di registrazione della scheda TF, 0: nessuna registrazione; 1: registrazione in corso
}JSON_DEV_STATUS_INFO_S;
Caratteri di comando:
#definire JS_CMD _ GET_DEV_STATUS “OttieniStatoDev”
Supponendo che l'indirizzo IP del dispositivo sia 192.168.1.188, il client invia i seguenti dati JSON:
{
” OttieniStatoDev “: { }
}
Dopo che la fotocamera ha ricevuto con successo i dati, ha restituito i seguenti dati JSON:
{
” OttieniStatoDev “: {
” s8DevId ” : ” 192.168.1.188 ” ,
“u32TfRegistra” : 0
}
}
Acquisizione/impostazione parametri di codifica video:
Struttura dei dati:
struttura typedef
{
u8 u8VideoEncChn; //0 : corrente principale; 1: flusso secondario;
u8 u8Tipo codec video; // 1:H264 ; 2:p265
u16 u16Larghezza video; // Larghezza del video
u16 u16Altezza video; // Altezza del filmato
u16 u8FrameRate; // Frequenza dei fotogrammi (1-30)
u16 u8IframeIntervallo; // io- dimensione dell'intervallo dei fotogrammi (1-100)
u8 u8Modalità controllo bitrate; //Modalità di controllo del bitrate: 0: CBR 1: VBR
u16 u16BitRateKps; // Dimensioni della velocità in bit
char s8NomeDimensioneVideo[256]; // Elenco delle risoluzioni supportate }JSON_VIDEO_ENC_PARAM_S;
Caratteri di comando:
Ottieni parametri:
#definire JS_CMD_GET_VIDEO_ENC_PARAM “getVideoEncParam”
Impostazione dei parametri:
#definire JS_CMD_SET_VIDEO_ENC_PARAM “setVideoEncParam”
Per esempio:
Il client recupera i seguenti dati JSON contenenti i parametri di codifica del bitstream principale della telecamera:
{
” getVideoEncParam “: {
” u8VideoEncChn “: 0
}
}
I dati JSON restituiti dalla fotocamera sono i seguenti;
{
” getVideoEncParam “: {
” u8VideoEncChn “: 0,
“u8VideoCodecType” : 1,
“u16Larghezza video” : 3840,
” u16Altezza video ” : 1080,
“u8FrameRate” : 30,
” u8IframeIntervallo ” : 60,
” u8BitrateControlMode ” : 0,
“u16BitRateKps” : 4096,
” s8VideoSizeNome ” : ” 3840×1080,1920×540 “
}
}
Il client imposta la frequenza fotogrammi del flusso secondario della telecamera su 15 e il bitrate a 1024K in formato JSON, come segue:
{
” setVideoEncParam “: {
” u8VideoEncChn “: 1,
” u8FrameRate “: 15,
” u16BitRateKps “: 1024
}
}
Dopo la configurazione riuscita, la fotocamera restituisce TRUE.
Acquisizione/impostazione parametri di codifica audio:
Struttura dei dati:
struttura typedef
{
u8 u8Abilita; //0: Disabilita; 1: Abilitare;
u32 u32ChnNum; // 1 : Mono; 2: Stereo
u8 u8Tipocodifica; //6 : AAC; 8: G711A; 9: G711U; u32 u32Frequenza campione; // Tasso di campionamento: 8000, 16000, 24000, 32000, 48000
u8 u8AoutVolume; // Dimensioni del volume: [0–100] }JSON_VIDEO_ENC_PARAM_S;
Caratteri di comando:
Ottieni parametri:
#definire JS_CMD_GET_AUDIO_PARAM “getParam.Audio”
Impostazione dei parametri:
#definire JS_CMD_SET_AUDIO_PARAM “setAudioParam”
Per esempio:
Il client recupera i seguenti dati JSON dei parametri di codifica audio della telecamera:
{
” getParam.Audio “: { }
}
I dati JSON restituiti dalla fotocamera sono i seguenti;
{
” getParam.Audio “: {
” u8Abilita “: 1,
“u32ChnNum” : 1,
“u8EncodeType” : 8,
“ u32 Frequenza campione ” : 8000,
“u8AOutVolume” : 80,
}
}
Le impostazioni lato client per la codifica audio della fotocamera sono AAC, stereo, e una frequenza di campionamento di 48kHz. I dati JSON sono i seguenti:
{
” setAudioParam “: {
“u32ChnNum” : 2,
“u8EncodeType” : 6,
“ u32 Frequenza campione ” : 48000
}
}
Dopo la configurazione riuscita, la fotocamera restituisce TRUE.
Acquisizione/impostazione parametri immagine video:
Struttura dei dati:
struttura typedef
{
u8 u8VideoIspChn; //Canale dell'ISP; [0-4]
u8 u8Luminosità; // Luminosità: [0~100]
u8 u8Contrasto; // Rapporto di contrasto: [0~100]
u8 u8Tonalità; // Cromaticità: [0~100]
u8 u8Saturazione; // Livello di saturazione: [0~100]
u8 u8Nitidezza; // Nitidezza: [0~100]
}JSON_IMAGE_PARAM_S;
Caratteri di comando:
Ottieni parametri:
#definire JS_CMD_GET_IMAGE_PARAM “getImageParam”
Impostazione dei parametri:
#definire JS_CMD_SET_IMAGE_PARAM “setImageParam”
Per esempio:
Il client recupera i seguenti dati JSON dei parametri dell'immagine per il canale 0 dell'ISP della fotocamera:
{
” getImageParam “: {
“u8VideoIspChn” : 0
}
}
I dati JSON restituiti dalla fotocamera sono i seguenti;
{
” getImageParam “: {
” u8VideoIspChn “: 0,
“u8Luminosità” : 50,
“u8Contrasto” : 50,
“u8Hue” : 50,
“u8Saturazione” : 50,
“u8Nitidezza” : 50
}
}
L'impostazione dei dati JSON lato client per la luminosità della fotocamera è 53, il contrasto è 60, e la saturazione lo è 56 è il seguente:
{
” setImageParam “: {
“u8VideoIspChn” : 0,
“u8Luminosità” : 53,
“u8Contrasto” : 60,
“u8Saturazione” : 56
}
}
Dopo la configurazione riuscita, la fotocamera restituisce TRUE.
Recupero delle informazioni sulla carta TF;
Struttura dei dati:
struttura typedef
{
u32 u32Dimensione totale; // Dimensione totale in MB
u32 u32UsatoDimensione; // Unità di capacità utilizzata (MB)
u32 u32DisponibileTaglia; // Capacità disponibile in MB
}JSON_SD_CARD_INFO_S;
Ottieni parametri:
#definire JS_CMD_GET_SD_CARD_INFO “getSdCardInfo”
Per esempio:
Il client recupera i seguenti dati JSON relativi alle informazioni sulla scheda TF della fotocamera:
{
” getSdCardInfo “: { }
}
I dati JSON restituiti dalla fotocamera sono i seguenti;
{
” getSdCardInfo “: {
” u32Dimensione totale “: 31254,
“u32UsatoDimensione” : 20000,
” u32Dimensioni disponibili ” : 11254
}
}
Configurazione della registrazione della scheda TF:
Struttura dei dati:
struttura typedef
{
u8 u8Abilita registrazione automatica; //1: Abilita la registrazione; 0: Disabilita la registrazione
u8 u8RecordStrChn; // Selezione del flusso di registrazione: 0: flusso primario; 1: flusso secondario
u8 u8PreRecordSeconds; // Tempo di pre-registrazione [0-10] in pochi secondi
u16 u16RegistraSecondiPerFile; // Durata di un singolo file di registrazione [10-1000] secondi
}JSON_RECORD_CONTROL_PARAM_S;
Ottieni parametri:
#definire JS_CMD_GET_RECORD_CONTROL_PARAM “getRecordControlParam”
Impostazione dei parametri:
#definire JS_CMD_SET_RECORD_CONTROL_PARAM “setRecordControlParam”
Per esempio:
Il client recupera i seguenti dati JSON relativi alla configurazione di registrazione della scheda TF della fotocamera:
{
” getRecordControlParam “: { }
}
I dati JSON restituiti dalla fotocamera sono i seguenti;
{
” getRecordControlParam “: {
” u8Attiva registrazione automatica “: 1,
“u8RecordStrChn” : 0,
” u8PrecordSecondi ” : 0,
” u16RecordSecondsPerFile ” : 300
}
}
Configurazione IP della rete cablata:
Struttura dei dati:
struttura typedef
{
u8 u8DhcpAbilita; // 0: IP statico; 1: DHCP;
carattere s8IP[16]; //indirizzo IP
char s8SubMask[16]; // Maschera di sottorete
char s8GateWay[16]; // IP del gateway
char s8Dns[16]; //Indirizzo DNS
}JSON_NET_PARAM_S;
Ottieni parametri:
#definire JS_CMD_GET_NET_IP_PARAM “getNetIpParam”
Impostazione dei parametri:
#definire JS_CMD_SET_NET_IP_PARAM “setNetIpParam”
Per esempio:
Il client recupera le informazioni IP della telecamera utilizzando i dati JSON come segue:
{
” getNetIpParam “: { }
}
I dati JSON restituiti dalla fotocamera sono i seguenti;
{
” getNetIpParam “: {
” u8DhcpAbilita “: 0,
” s8IP ” : ” 192.168.1.188 ” ,
” s8SubMask ” : ” 255.255.255.0 ” ,
” s8GateWay ” : ” 192.168.1.1 ” ,
” s8DNS ” : ” 192.168.1.1 “
}
}
Il client è configurato con l'indirizzo IP della telecamera come 192.168.3.10, gateway come 192.168.3.1, e DNS come 192.168.3.1. I dati JSON sono i seguenti:
{
” setNetIpParam “: {
” s8IP ” : ” 192.168.3.10 ” ,
” s8GateWay ” : ” 192.168.3.1 ” ,
” s8DNS ” : ” 192.168.3.1 “
}
}
Dopo la configurazione riuscita, la fotocamera non restituisce alcun dato, e il client deve riconnettersi al dispositivo con il nuovo indirizzo IP.
Configurazione dei parametri WiFi:
Il client/app recupera un elenco di SSID dei router trovati dal dispositivo.
{
“getAPSidList” :{ }
}
Il dispositivo restituirà un elenco di SSID: Selezionare un SSID del percorso dall'elenco a cui connettersi.
Configura il Wi-Fi del tuo dispositivo per funzionare in modalità STA:
{
“setWifiSsidParam”:{
“Modalità u8”: 0,
“s8Ss”: ” yrsx8888 “,
“s8PassWd”: “987545598400
}
}
Configura il Wi-Fi del dispositivo per funzionare in modalità AP hotspot:
{
“setWifiSsidParam”:{
“Modalità u8”: 1
}
}
Ottieni lo stato Wi-Fi del dispositivo:
{
“getWifiSsidParam” : { }
}
Sincronizzazione dell'ora:
Struttura dei dati:
struttura typedef
{
u8 u8Fuso orario; // Valore del fuso orario RT_TIMEZONE_E
char s8DateTime[64]; // Formato ora: “2019-06-12_12:56:59_3”
}JSON_DATE_TIME_INFO_S;
Definizione del valore del fuso orario:
enumerazione typedef
{
RT_TIMEZONE_InternationalDateLineWest = 0, /* UTC-12:00 */
RT_TIMEZONE_MidwayIslandSamoa = 1, /* UTC-11:00 */
RT_TIMEZONE_Hawaii = 2, /* UTC-10:00 */
RT_TIMEZONE_Alaska = 3, /* UTC-9:00 */
RT_TIMEZONE_TijuanaCaliforniano = 4, /* UTC-8:00 */
RT_TIMEZONE_PacificTimeUSCanada = 5, /* UTC-8:00 */
RT_TIMEZONE_MountainTimeUSCanada = 6, /* UTC-7:00 */
RT_TIMEZONE_ChihuahuaLapazMazatlan = 7, /* UTC-7:00 */
RT_TIMEZONE_Arizona = 8, /* UTC-7:00 */
RT_TIMEZONE_Saskatchewan = 9, /* UTC-7:00 */
RT_TIMEZONE_GuaddlajaraMessicoCityMonterrey = 10, /* UTC-6:00 */
RT_TIMEZONE_CentralTimeUSCanada = 11, /* UTC-6:00 */
RT_TIMEZONE_AmericaCentrale = 12, /* UTC-6:00 */
RT_TIMEZONE_BogotaLimaQuito = 13, /* UTC-5:00 */
RT_TIMEZONE_EasternTimeUSCanada = 14, /* UTC-5:00 */
RT_TIMEZONE_IndianaEst = 15, /* UTC-5:00 */
RT_TIMEZONE_Caracas = 16, /* UTC-4:30 */
RT_TIMEZONE_AtlanticTimeCanada = 17, /* UTC-4:00 */
RT_TIMEZONE_GeorgetownLapazSanJuan = 18, /* UTC-4:00 */
RT_TIMEZONE_Santiago = 19, /* UTC-4:00 */
RT_TIMEZONE_NenfoundLand = 20, /* UTC-3:30 */
RT_TIMEZONE_Brasilia = 21, /* UTC-3:00 */
RT_TIMEZONE_BuenosAiresGeorgentown = 22, /* UTC-3:00 */
RT_TIMEZONE_Groenlandia = 23, /* UTC-3:00 */
RT_TIMEZONE_MidAtlantic = 24, /* UTC-2:00 */
RT_TIMEZONE_CapeVerdeIs = 25, /* UTC-1:00 (Repubblica di Capo Verde) */
RT_TIMEZONE_Azzorre = 26, /* UTC-1:00 (Azzorre) */
RT_TIMEZONE_GreenwichMeanTimeDublinoEdimburgoLisbonaLondra = 27, /* UTC-0:00 */
RT_TIMEZONE_Casablanca = 28, /* UTC-0:00 */
RT_TIMEZONE_Monrovia = 29, /* UTC-0:00 */
RT_TIMEZONE_AmsterdamBerlinoBernaRomaStoccolmaVienna = 30, /* UTC+1:00 */
RT_TIMEZONE_BelgradeBratislavaBudapestLubianaPraga = 31, /* UTC+1:00 */
RT_TIMEZONE_BruxellesCopenaghenMadridParigi = 32, /* UTC+1:00 */
RT_TIMEZONE_SarajevoSkopjeVarsaviaZagabria = 33, /* UTC+1:00 */
RT_TIMEZONE_WestCentralAfrica = 34, /* UTC+1:00 */
RT_TIMEZONE_RarePretoria = 35, /* UTC+2:00 */
RT_TIMEZONE_HelsinkiKievRigaSofiaTallinnVilnius = 36, /* UTC+2:00 */
RT_TIMEZONE_Cairo = 37, /* UTC+2:00 */
RT_TIMEZONE_Minsk = 38, /* UTC+2:00 */
RT_TIMEZONE_AteneBucarestIstanbul = 39, /* UTC+2:00 */
RT_TIMEZONE_Gerusalemme = 40, /* UTC+2:00 */
RT_TIMEZONE_Baghdad = 41, /* UTC+3:00 */
RT_TIMEZONE_Tbilisi = 42, /* UTC+3:00 */
RT_TIMEZONE_KuwaitRiyad = 43, /* UTC+3:00 */
RT_TIMEZONE_MoscaSanPietroburgoVolgograd = 44, /* UTC+3:00 */
RT_TIMEZONE_Nairobi = 45, /* UTC+3:00 */
RT_TIMEZONE_Teheran = 46, /* UTC+3:30 */
RT_TIMEZONE_AbuDhabiMuscat = 47, /* UTC+4:00 */
RT_TIMEZONE_BakuYerevan = 48, /* UTC+4:00 */
RT_TIMEZONE_Kabul = 49, /* UTC+4:30 */
RT_TIMEZONE_Tashkent = 50, /* UTC+5:00 */
RT_TIMEZONE_Ekaterinburg = 51, /* UTC+5:00 */
RT_TIMEZONE_IslamabadKarachi = 52, /* UTC+5:00 */
RT_TIMEZONE_ChennaiKolkataMumbaiNewDelhi = 53, /* UTC+5:30 */
RT_TIMEZONE_Kathmandu = 54, /* UTC+5:45 */
RT_TIMEZONE_AlmatyNovosibirsk = 55, /* UTC+6:00 */
RT_TIMEZONE_AstanaDhaka = 56, /* UTC+6:00 */
RT_TIMEZONE_Rangoon = 57, /* UTC+6:30 */
RT_TIMEZONE_Krasnoyarsk = 58, /* UTC+7:00 */
RT_TIMEZONE_BangkokHanoiJakarta = 59, /* UTC+7:00 */
RT_TIMEZONE_BeijingChongqingHongKongUrumqi = 60, /* UTC+8:00 */
RT_TIMEZONE_KualaLumpurSingapore = 61, /* UTC+8:00 */
RT_TIMEZONE_Perth = 62, /* UTC+8:00 */
RT_TIMEZONE_Taipei = 63, /* UTC+8:00 */
RT_TIMEZONE_IrkutskUlaanBataar = 64, /* UTC+8:00 */
RT_TIMEZONE_OsakaSapporoTokyo = 65, /* UTC+9:00 */
RT_TIMEZONE_Seul = 66, /* UTC+9:00 */
RT_TIMEZONE_Yakutsk = 67, /* UTC+9:00 */
RT_TIMEZONE_Adelaide = 68, /* UTC+9:30 */
RT_TIMEZONE_Brisbane = 69, /* UTC+10:00 */
RT_TIMEZONE_Vladivostok = 70, /* UTC+10:00 */
RT_TIMEZONE_GuamMoresby = 71, /* UTC+10:00 */
RT_TIMEZONE_Hobart = 72, /* UTC+10:00 */
RT_TIMEZONE_CanberraMelbourneSydney = 73, /* UTC+10:00 */
RT_TIMEZONE_MagadanSolomonNewCaledonia = 74, /* UTC+11:00 */
RT_TIMEZONE_AucklandWellington = 75, /* UTC+12:00 */
RT_TIMEZONE_FijiKamchatkaMarshallIs = 76, /* UTC+12:00 */
RT_TIMEZONE_Nukualofa = 77, /* UTC+13:00 */
RT_TIMEZONE_BUTT
}RT_TIMEZONE_E;
Ottieni parametri:
#definire JS_CMD_GET_DEV_DATE_TIME “OttieniDevDateTime”
Impostazione dei parametri:
#definire JS_CMD_SET_DEV_DATE_TIME “setDevDateTime”
Ottieni i dati JSON sull'ora del dispositivo :
{
” OttieniDevDateTime ” : {}
}
Il dispositivo restituisce dati JSON:
{
” OttieniDevDateTime ” : {
“u8fuso orario” : 60,
“s8DateTime” : “2020-03-06_12:56:59_3”
}
}
I dati JSON impostano l'ora del dispositivo su giovedì, marzo 12, 2020, a 3:38:30 PM:
{
” setDevDateTime ” : {
“s8DateTime” : “2020-03-12_15:38:30_4”
}
}
Il dispositivo ha restituito TRUE al termine della configurazione.
Gestione delle attrezzature:
Dati JSON per riavviare il dispositivo:
{
” setSysControlParam ” : {
“u8Riavvia” : 1
}
}
Dati JSON per ripristinare le impostazioni di fabbrica:
{
” setSysControlParam ” : {
“u8ReimpostaDefault” : 1
}
}
Formattazione dei dati JSON della scheda SD:
{
” setSysControlParam ” : {
“u8FormatSdCard” : 1
}
}
Controllo PTZ:
Struttura dei dati:
struttura typedef
{
u8 u8Cmd; // Codice comando PTZ_CONTROL_CODE
u8 u8Velocità; // Velocità (1-64)
u8 u8Dati1; // Prenotato; questo verrà utilizzato per le posizioni preimpostate.
u8 u8Dati2; // Prenotato, questo verrà utilizzato per comandi PTZ speciali.
}JSON_PTZ_CONTROL_S;
enum PTZ_CONTROL_CODE
{
PTZ_STOP = 0, // Fermare
PTZ_UP=1, // Su
PTZ_GIÙ=2, // giù
PTZ_SINISTRA=3, // Sinistra
PTZ_DESTRA=4, // destra
PTZ_SINISTRA_UP=5, // in alto a sinistra
PTZ_SINISTRA_GIÙ=6, // in basso a sinistra
PTZ_RIGHT_UP=7, // in alto a destra
PTZ_DESTRA_GIÙ=8, // 8 : in basso a destra
PTZ_ZOOM_IN=9, // 9 : Ingrandisci
PTZ_ZOOM_OUT=10, // 10: ZOOM OUT=10, // 10 : ZOOM OUT=10
PTZ_FOCUS_NEAR=11, // 11 : Concentrarsi sul vicino
PTZ_FOCUS_FAR=12, // 12 : Concentrati su lontano
PTZ_IRIS_ADD=13, // 13 : Aumento dell'apertura
PTZ_IRIS_REDUCE=14, // 14 : Apertura ridotta
PTZ_GOTO_POINT = 15, // 15 : Chiama il bit preimpostato
PTZ_CLEAR_POINT = 16, // 16 : Cancella bit preimpostato
PTZ_PERSET_POINT = 17, // 17 : Imposta il bit preimpostato
PTZ_AUTO_RUN = 18, // 18 : Scansione automatica orizzontale
};
Controllo PTZ:
#definire JS_CMD_PTZ_CONTROL “PtzControlCmd”
Comandi JSON controllati da Ptz:
- Muoversi verso il basso ad una velocità di 30:
{
” PtzControlCmd “: {
” u8Cmd “: 2,
” u8Velocità ” : 30
}
}
- 1. Imposta la posizione preimpostata 2:
{
” PtzControlCmd “: {
” u8Cmd “: 17,
“u8Velocità” : 30,
“u8Dati1” : 2
}
}
Ricerca file della scheda TF:
( 1) Comando per cercare tutti i file video entro un periodo di tempo specifico nello stesso giorno:
{
“searchRecordFileList”:{
“u32Anno”:2020, // anno
“u8mese”:7, // Mese
“u8Giorno”:14, // Giorno
“u8Orainizio”:0, // Ora di inizio in ore
“u8MinutoInizio”:0, // Ora di inizio in minuti
“u8OraFine”:23, // Ora di fine in ore
“u8FineMinuto”:59, // Ora di fine in minuti
“u8EncChn”:0, // 0 è il valore predefinito.
“u8Registra”:0, // Tipo di file: 0: Tutti i file, 1: Registrazione programmata; 2: Registrazione degli allarmi; 3: Immagini;
“u32StartIdx”:0, // Il numero di sequenza del file iniziale
“u32Conteggio previsto”: 10 // Numero di file restituiti dalla richiesta, attualmente il valore massimo è 32.
}
}
Dati restituiti dal dispositivo:
{
“searchRecordFileList”: {
“u32Conteggio totale file record”: 7, // Numero totale di file cercati in questo periodo di tempo
“stRecordFileList”: [ // Nome file con percorso, dimensione del file]
“/dev/disk/0/part0/rec-pic/20200714/0/000_180149_0_0300_2.mp4”, 251649649, “/dev/disk/0/part0/rec-pic/20200714/0/001_180644_0_0169_256.mp4”, 144935215, “/dev/disk/0/part0/rec-pic/20200714/0/002_181001_0_0300_2.mp4”, 251650689, “/dev/disk/0/part0/rec-pic/20200714/0/003_181458_0_0300_2.mp4”, 251657016, “/dev/disk/0/part0/rec-pic/20200714/0/004_181958_0_0300_2.mp4”, 301449467, “/dev/disk/0/part0/rec-pic/20200714/0/005_182458_0_0000_256.mp4”, 37801991, “/dev/disk/0/part0/rec-pic/20200714/0/006_182642_0_0244_256.mp4”, 200069913
]
}
}
Cattura manualmente un'immagine JPG:
Invia il seguente comando al dispositivo.
{
“ManualSnapJpg”:{
}
}
Restituito con successo:
{
“ManualSnapJpg”: VERO
}
Il controllo PWM regola la luminosità del LED:
Ottieni il valore PWM corrente:
{
“getPwmParam”:{
“u32PwmChn”: 0
}
}
Restituito con successo:
{
“getPwmParam”:{
“u32PwmChn”:0,
“u8Abilita”:1,
“u8Valore Dazio”:20
}
}
- Imposta il valore PWM:
{
“setPwmParam”:{
“u32PwmChn”: 0,
“u8Abilita”: 1,
“u8Valore Dazio”: 60
}
}
Restituito con successo:
{
“setPwmParam”:VERO
}
Nota : Il valore predefinito è u32PwmChn 0 e non dovrebbe essere modificato arbitrariamente. u8Enable ha un valore di 0/1, dove 0 disabilita l'uscita PWM e 1 abilita l'uscita PWM. u8DutyValue ha un intervallo di valori di 0-100.
17. Acquisizione/impostazione testo OSD:
(1) Ottieni il canale video specificato, Parametri del testo OSD:
{“getVideoOsdTextInfo”:{
“u8IspChn”:0,
“u8TextIdx”:1
}}
Restituito con successo:
{
“getVideoOsdTextInfo”:{
“u8IspChn”:0, // Canale video 0, riempire 0 per una fotocamera
“u8TextIdx”:1, // Il numero della casella di testo OSD, supporto di più caselle di testo.
“u8Abilita”:0, // Abilitare, 0: non visualizzare; 1: Schermo
“u16XRatioBase50000”:40000, // Coordinate relative della posizione orizzontale, con un valore massimo di 50000.
“u16YRapportoBase50000”:1600, // Coordinate relative della posizione verticale, con un valore massimo di 50000.
“u8FgTrasparenza”:10, // Trasparenza in primo piano [0-255]
“u8BgTrasparenza”:255, // Valore di trasparenza dello sfondo [0-255]
“u8Tipodimensione”:1, // Dimensione del testo, intervallo di valori [0-3]
“u32TextColor_BGRA8888”:4294967295, // Valore ARGB888 del colore del testo
“aszText”:”” // La casella di testo visualizza la stringa del contenuto
}
}
(2) Imposta il canale video specificato, Parametri del testo OSD:
{
“setVideoOsdTextInfo”:{
“u8IspChn”:0,
“u8TextIdx”:1,
“u8Abilita”:1,
“u16XRatioBase50000”:40000,
“u16YRapportoBase50000”:1600,
“u8FgTrasparenza”:10,
“u8BgTrasparenza”:255,
“u8Tipodimensione”:1,
“u32TextColor_BGRA8888”:4294967295,
“aszText”:”prova 11111222233334444″
}
}
Restituito con successo:
{
“setVideoOsdTextInfo”:VERO
}
CVBS HDMI a IP encoder
Encoder IP da CVBS a Ethernet stabile a prova di segnale debole, Blocco del segnale basso
CVBS HDMI a IP encoder
CVBS HDMI a IP encoder

Fai una domanda
Grazie per la risposta. ✨