Guía de API RTSP del protocolo TCP JSON de la placa codificadora de video

Dirección de transmisión de audio y vídeo RTSP en tiempo real:

  • Formato: rtsp://ip:número de puerto/flujo
  • Puerto predeterminado: 554
  • ID de transmisión: 0 (corriente principal), 1 (corriente secundaria)
  • Por ejemplo, para recuperar la subtransmisión de la dirección del dispositivo 192.168.1.188, la URL es:
  • rtsp://192.168.1.1 8 8 :554 / 1

el cliente (aplicación móvil) obtiene y establece los parámetros de la cámara a través del protocolo TCP;

La cámara actúa como un servidor TCP., siendo el puerto TCP predeterminado 8866.

Formato de datos de comunicación TCP:

cadena JSON pura

Obtener el estado de la cámara:

estructura de datos:

              estructura typedef

              {

                     carácter s8DevId[64]; // ID del dispositivo, El valor predeterminado es IP si no se establece ningún ID..

                     u32 u32TfRegistro; // Estado de grabación de la tarjeta TF, 0: sin grabación; 1: grabación en progreso

              }JSON_DEV_STATUS_INFO_S;

personajes de comando:

              #definir JS_CMD_GET_DEV_STATUS “Obtener estado de desarrollo”

Suponiendo que la dirección IP del dispositivo sea 192.168.1.188, el cliente envía los siguientes datos JSON:

{

         ” Obtener estado de desarrollo “: {       }

}

Después de que la cámara recibió correctamente los datos, devolvió los siguientes datos JSON:

{

         ” Obtener estado de desarrollo “: {

         ” s8DevId ” : ” 192.168.1.188 ” ,

         “u32TfRegistro” : 0

         }

}

Adquisición/configuración de parámetros de codificación de vídeo:

estructura de datos:

              estructura typedef

              {

u8 u8VideoEncChn;        //0 : corriente principal; 1: corriente secundaria;

u8 u8VideoCodecTipo;    // 1:h264 ; 2:p265

u16 u16Ancho de vídeo;              // Ancho del vídeo

u16 u16VideoAltura;       // Altura del vídeo

u16 u8Velocidad de fotogramas;           // Cuadros por segundo (1-30)

u16 u8IframeIntervalo;      // yo- tamaño del intervalo de cuadro (1-100)

u8 u8Modo de control de velocidad de bits; //Modo de control de velocidad de bits: 0: CBR 1: VBR

u16 u16BitRateKps;         // Tamaño de la tasa de bits

char s8VideoSizeName[256]; // Lista de resoluciones soportadas }JSON_VIDEO_ENC_PARAM_S;

personajes de comando:

              Obtener parámetros:

              #definir JS_CMD_GET_VIDEO_ENC_PARAM “getVideoEncParam”

              Configuración de parámetros:

              #definir JS_CMD_SET_VIDEO_ENC_PARAM “setVideoEncParam”

Por ejemplo:

El cliente recupera los siguientes datos JSON que contienen los parámetros de codificación del flujo de bits principal de la cámara.:

{

         ” getVideoEncParam “: {

         ” u8VideoEncChn “: 0

         }

}

Los datos JSON devueltos por la cámara son los siguientes;

{

         ” getVideoEncParam “: {

         ” u8VideoEncChn “: 0,

         “u8VideoCodecType” : 1,

         “ u16AnchoVideo ” : 3840,

       ” u16VideoAltura ” : 1080,

       “u8FrameRate” : 30,

         ” u8IframeIntervalo ” : 60,

         ” u8Modo de control de velocidad de bits ” : 0,

         “u16BitRateKps” : 4096,

       ” s8VideoTamañoNombre ” : ” 3840×1080,1920×540 “

         }

}

El cliente establece la velocidad de fotogramas de la transmisión secundaria de la cámara en 15 y la tasa de bits a 1024K en formato JSON, como sigue:

{

         ” setVideoEncParam “: {

         ” u8VideoEncChn “: 1,

         ” u8Velocidad de fotogramas “: 15,

         ” u16BitRateKps “: 1024

         }

}

Después de una configuración exitosa, la cámara devuelve VERDADERO.

Adquisición/configuración de parámetros de codificación de audio:

estructura de datos:

              estructura typedef

              {

       u8 u8Habilitar;             //0: Desactivar; 1: Permitir;

       u32 u32NúmChn; // 1 : Mononucleosis infecciosa; 2: Estéreo

   u8 u8EncodeType; //6 : AAC; 8: G711A; 9: G711U;                        u32 u32Tasa de muestra; // Tasa de muestreo: 8000, 16000, 24000, 32000, 48000

       u8 u8AoutVolumen; // Tamaño del volumen: [0–100]                    }JSON_VIDEO_ENC_PARAM_S;

personajes de comando:

              Obtener parámetros:

              #definir JS_CMD_GET_AUDIO_PARAM “obtenerAudioParam”

              Configuración de parámetros:

              #definir JS_CMD_SET_AUDIO_PARAM “setAudioParam”

Por ejemplo:

El cliente recupera los siguientes datos JSON de los parámetros de codificación de audio de la cámara.:

{

         ” obtenerAudioParam “: { }

}

Los datos JSON devueltos por la cámara son los siguientes;

{

         ” obtenerAudioParam “: {

         ” u8Habilitar “: 1,

         “ u32NumChn ” : 1,

         “u8EncodeType” : 8,

       “u32Tasa de muestra” : 8000,

       “u8AoutVolumen” : 80,

                  }

}

La configuración del lado del cliente para la codificación de audio de la cámara es AAC, estéreo, y una frecuencia de muestreo de 48kHz. Los datos JSON son los siguientes.:

{

         ” setAudioParam “: {

         “ u32NumChn ” : 2,

         “u8EncodeType” : 6,

       “u32Tasa de muestra” : 48000

                  }

}

Después de una configuración exitosa, la cámara devuelve VERDADERO.

Adquisición/configuración de parámetros de imagen de vídeo:

estructura de datos:

estructura typedef

{

u8 u8VideoIspChn;           //canal ISP; [0-4]

u8 u8Brillo;              // Brillo: [0~100]

u8 u8Contraste;                 // relación de contraste: [0~100]

u8 u8Tono;                        // cromaticidad: [0~100]

u8 u8Saturación;              // nivel de saturación: [0~100]

u8 u8Nitidez;                     // Nitidez: [0~100]

}JSON_IMAGE_PARAM_S;

personajes de comando:

              Obtener parámetros:

              #definir JS_CMD_GET_IMAGE_PARAM “getImageParam”

              Configuración de parámetros:

              #definir JS_CMD_SET_IMAGE_PARAM “establecerImageParam”

Por ejemplo:

El cliente recupera los siguientes datos JSON de los parámetros de imagen para el canal 0 del ISP de la cámara:

{

         ” getImageParam “: {

                   “u8VideoIspChn” : 0

         }

}

Los datos JSON devueltos por la cámara son los siguientes;

{

         ” getImageParam “: {

         ” u8VideoIspChn “: 0,

         “ u8Brillo ” : 50,

         “u8Contraste” : 50,

       “u8Hue” : 50,

       “ u8Saturación ” : 50,

         “u8Nitidez” : 50

                  }

}

La configuración de datos JSON del lado del cliente para el brillo de la cámara es 53, el contraste es 60, y la saturación es 56 es como sigue:

{

         ” establecerImageParam “: {

         “u8VideoIspChn” : 0,

         “ u8Brillo ” : 53,

       “u8Contraste” : 60,

       “ u8Saturación ” : 56

                  }

}

Después de una configuración exitosa, la cámara devuelve VERDADERO.

Recuperación de información de la tarjeta TF;

estructura de datos:

estructura typedef

{

      u32 u32Tamaño total;             // Tamaño total en MB

      u32 u32UsadoTamaño;             // Unidad de capacidad usada (MEGABYTE)

      u32 u32DisponibleTamaño;             // Capacidad disponible en MB

}JSON_SD_CARD_INFO_S;

Obtener parámetros:

#definir JS_CMD_GET_SD_CARD_INFO “obtener información de tarjeta SD”

Por ejemplo:

El cliente recupera los siguientes datos JSON con respecto a la información de la tarjeta TF de la cámara:

{

         ” obtener información de tarjeta SD “: { }

}

Los datos JSON devueltos por la cámara son los siguientes;

{

         ” obtener información de tarjeta SD “: {

         ” u32Tamaño total “: 31254,

         “ u32TamañoUsado ” : 20000,

         ” u32Tamaño disponible ” : 11254

                  }

}

Configuración de grabación de tarjeta TF:

estructura de datos:

estructura typedef

{

       u8 u8AutoRecordEnable;        //1: Habilitar grabación; 0: Desactivar grabación

      u8 u8RecordStrChn;                // Selección de secuencia de grabación: 0: flujo primario; 1: corriente secundaria

   u8 u8PreGrabaciónSegundos;               // Tiempo de pregrabación [0-10] en segundos

   u16 u16GrabarSegundosPorArchivo; // Duración de un único archivo de grabación [10-1000] segundos

}JSON_RECORD_CONTROL_PARAM_S;

Obtener parámetros:

#definir JS_CMD_GET_RECORD_CONTROL_PARAM “getRecordControlParam”

Configuración de parámetros:

#definir JS_CMD_SET_RECORD_CONTROL_PARAM “setRecordControlParam”

Por ejemplo:

El cliente recupera los siguientes datos JSON sobre la configuración de grabación de la tarjeta TF de la cámara:

{

         ” getRecordControlParam “: { }

}

Los datos JSON devueltos por la cámara son los siguientes;

{

         ” getRecordControlParam “: {

                   ” u8AutoRecordEnable “: 1,

                   “u8RecordStrChn” : 0,

                   ” u8PrecordarSegundos ” : 0,

              ” u16Grabarsegundosporarchivo ” : 300

                  }

}

Configuración IP de red cableada:

estructura de datos:

estructura typedef

{                                               

u8 u8DhcpEnable;                  // 0: IP estática; 1: DHCP;

carácter s8IP[16];                          //Recopilamos varios tipos diferentes de información para diversos fines para brindarle y mejorar nuestro Servicio.

char s8SubMask[16];              // Máscara de subred

char s8GateWay[16];              // IP de puerta de enlace

carbón s8Dns[16];                //dirección DNS

}JSON_NET_PARAM_S;

Obtener parámetros:

#definir JS_CMD_GET_NET_IP_PARAM “getNetIpParam”

Configuración de parámetros:

#definir JS_CMD_SET_NET_IP_PARAM “setNetIpParam”

Por ejemplo:

El cliente recupera la información IP de la cámara utilizando datos JSON de la siguiente manera:

{

         ” getNetIpParam “: { }

}

Los datos JSON devueltos por la cámara son los siguientes;

{

         ” getNetIpParam “: {

                   ” u8DhcpEnable “: 0,

                   ” s8IP ” : ” 192.168.1.188 ” ,

                   ” s8SubMáscara ” : ” 255.255.255.0 ” ,

              ” Puerta de enlace s8 ” : ” 192.168.1.1 ” ,

              ” s8Dns ” : ” 192.168.1.1 “

         }

}

El cliente está configurado con la dirección IP de la cámara como 192.168.3.10, puerta de enlace como 192.168.3.1, y DNS como 192.168.3.1. Los datos JSON son los siguientes.:

{

         ” setNetIpParam “: {

                   ” s8IP ” : ” 192.168.3.10 ” ,

              ” Puerta de enlace s8 ” : ” 192.168.3.1 ” ,

              ” s8Dns ” : ” 192.168.3.1 “

         }

}

Después de una configuración exitosa, la cámara no devuelve ningún dato, y el cliente necesita volver a conectarse al dispositivo con la nueva dirección IP.

Configuración de parámetros WiFi:

El cliente/aplicación recupera una lista de SSID de los enrutadores encontrados por el dispositivo.

                  {

                            “obtenerAPSsidList” :{ }

                  }

                  El dispositivo devolverá una lista de SSID.: Seleccione un SSID de ruta de la lista para conectarse.

                  Configure el Wi-Fi de su dispositivo para que funcione en modo STA:

         {

                  “establecerWifiSsidParam”:{

                           “Modo u8”: 0,

                           “s8ss”: ” yrsx8888 “,

                            “s8PassWd”: “987545598400

                  }

    }

              Configure el Wi-Fi del dispositivo para que funcione en modo AP de punto de acceso:

                  {

                            “establecerWifiSsidParam”:{

                                    “Modo u8”: 1

                            }

                  }

                  Obtener el estado de Wi-Fi del dispositivo:

                  {

                            “obtenerWifiSsidParam” : { }

                  }

Sincronización horaria:

estructura de datos:    

                  estructura typedef

                  {

                            u8 u8Zona horaria;                        // Valor de zona horaria RT_TIMEZONE_E

                            char s8FechaHora[64];              // Formato de hora: “2019-06-12_12:56:59_3”    

                  }JSON_DATE_TIME_INFO_S;

                  Definición de valor de zona horaria:

enumeración typedef

{

RT_TIMEZONE_InternationalDateLineWest = 0, /* UTC-12:00 */

RT_TIMEZONE_MidwayIslandSamoa = 1, /* UTC-11:00 */

RT_TIMEZONE_Hawái = 2, /* UTC-10:00 */

RT_TIMEZONE_Alaska = 3, /* UTC-9:00 */

RT_TIMEZONE_TijuanaCalifornia = 4, /* UTC-8:00 */

RT_TIMEZONE_PacificTimeUSCanadá = 5, /* UTC-8:00 */

RT_TIMEZONE_MountainTimeUSCanadá = 6, /* UTC-7:00 */

RT_TIMEZONE_ChihuahuaLapazMazatlán = 7, /* UTC-7:00 */

RT_TIMEZONE_Arizona= 8, /* UTC-7:00 */

RT_TIMEZONE_Saskatchewan = 9, /* UTC-7:00 */

RT_TIMEZONE_GuaddlajaraMexicoCiudadMonterrey = 10, /* UTC-6:00 */

RT_TIMEZONE_CentralTimeUSCanadá = 11, /* UTC-6:00 */

RT_TIMEZONE_CentroAmérica = 12, /* UTC-6:00 */

RT_TIMEZONE_BogotáLimaQuito = 13, /* UTC-5:00 */

RT_TIMEZONE_EasternTimeUSCanada = 14, /* UTC-5:00 */

RT_TIMEZONE_IndianaEste = 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_MedioAtlántico = 24, /* UTC-2:00 */

RT_TIMEZONE_CapeVerdeIs = 25, /* UTC-1:00 (República de Cabo Verde) */

RT_TIMEZONE_Azores = 26, /* UTC-1:00 (Azores) */

RT_TIMEZONE_GreenwichMeanTimeDublinEdimburgoLisboaLondres = 27, /* UTC-0:00 */

RT_TIMEZONE_Casablanca = 28, /* UTC-0:00 */

RT_TIMEZONE_Monrovia = 29, /* UTC-0:00 */

RT_TIMEZONE_AmsterdamBerlínBernaRomaEstocolmoViena = 30, /* UTC+1:00 */

RT_TIMEZONE_BelgradoBratislavaBudapestLjubljanaPraga = 31, /* UTC+1:00 */

RT_TIMEZONE_BruselasCopenhagueMadridParís = 32, /* UTC+1:00 */

RT_TIMEZONE_SarajevoSkopjeVarsoviaZagreb = 33, /* UTC+1:00 */

RT_TIMEZONE_ÁfricaCentralOccidental = 34, /* UTC+1:00 */

RT_TIMEZONE_RarePretoria = 35, /* UTC+2:00 */

RT_TIMEZONE_HelsinkiKievRigaSofíaTallinVilnius = 36, /* UTC+2:00 */

RT_TIMEZONE_El Cairo = 37, /* UTC+2:00 */

RT_TIMEZONE_Minsk = 38, /* UTC+2:00 */

RT_TIMEZONE_AtenasBucarestEstambul = 39, /* UTC+2:00 */

RT_TIMEZONE_Jerusalén = 40, /* UTC+2:00 */

RT_TIMEZONE_Bagdad = 41, /* UTC+3:00 */

RT_TIMEZONE_Tbilisi = 42, /* UTC+3:00 */

RT_TIMEZONE_KuwaitRiad = 43, /* UTC+3:00 */

RT_TIMEZONE_MoscowStPetersburgVolgogrado = 44, /* UTC+3:00 */

RT_TIMEZONE_Nairobi = 45, /* UTC+3:00 */

RT_TIMEZONE_Teherán = 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_Ekaterimburgo = 51, /* UTC+5:00 */

RT_TIMEZONE_IslamabadKarachi = 52, /* UTC+5:00 */

RT_TIMEZONE_ChennaiKolkataMumbaiNuevaDelhi = 53, /* UTC+5:30 */

RT_TIMEZONE_Katmandú = 54, /* UTC+5:45 */

RT_TIMEZONE_AlmatyNovosibirsk = 55, /* UTC+6:00 */

RT_TIMEZONE_AstanaDhaka = 56, /* UTC+6:00 */

RT_TIMEZONE_Rangún = 57, /* UTC+6:30 */

RT_TIMEZONE_Krasnoyarsk = 58, /* UTC+7:00 */

RT_TIMEZONE_BangkokHanoiYakarta = 59, /* UTC+7:00 */

RT_TIMEZONE_BeijingChongqingHongKongUrumqi = 60, /* UTC+8:00 */

RT_TIMEZONE_KualaLumpurSingapur = 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_OsakaSapporoTokio = 65, /* UTC+9:00 */

RT_TIMEZONE_Seúl = 66, /* UTC+9:00 */

RT_TIMEZONE_Yakutsk = 67, /* UTC+9:00 */

RT_TIMEZONE_Adelaida = 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_CanberraMelbourneSídney = 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;

Obtener parámetros:

#definir JS_CMD_GET_DEV_DATE_TIME “ObtenerDevDateTime”

Configuración de parámetros:

#definir JS_CMD_SET_DEV_DATE_TIME “establecerDevDateTime”

Obtener los datos JSON de la hora del dispositivo :

                  {

                            ” ObtenerDevDateTime ” : {}

                  }

El dispositivo devuelve datos JSON:

                  {

                            ” ObtenerDevDateTime ” : {

                            “u8Zona horaria” : 60,

                            “s8FechaHora” : “2020-03-06_12:56:59_3”

                            }

                  }

Los datos JSON establecen la hora del dispositivo en jueves., marzo 12, 2020, a 3:38:30 PM:

                  {

                            ” establecerDevDateTime ” : {

                                     “s8FechaHora” : “2020-03-12_15:38:30_4”

                            }

                  }

El dispositivo devolvió VERDADERO tras una configuración exitosa.

Gestión de equipos:

Datos JSON para reiniciar el dispositivo.:

                            {

                                     ” setSysControlParam ” : {

                                               “u8Reiniciar” : 1               

                                     }

                            }

Datos JSON para restaurar la configuración de fábrica:

                            {

                                     ” setSysControlParam ” : {

                                               “u8Restablecer valor predeterminado” : 1              

                                     }

                            }

Formatear datos JSON de la tarjeta SD:

                            {

                                     ” setSysControlParam ” : {

                                               “u8FormatoSdCard” : 1                              

                                     }

                            }

Control PTZ:

estructura de datos:

estructura typedef

{

       u8 u8Cmd;                        // Código de comando PTZ_CONTROL_CODE

u8 u8Velocidad;                     // Velocidad (1-64)

u8 u8Datos1;                            // Reservado; Esto se utilizará para posiciones preestablecidas..

u8 u8Datos2;                            // Reservado, esto se utilizará para comandos PTZ especiales.

}JSON_PTZ_CONTROL_S;

enumeración PTZ_CONTROL_CODE

{

              PTZ_PARADA = 0, // Detener

              PTZ_UP=1,          // Arriba

              PTZ_DOWN=2,          // abajo

              PTZ_LEFT=3,              // Izquierda

              PTZ_DERECHA=4,           // derecho

              PTZ_LEFT_UP=5, // arriba a la izquierda

              PTZ_LEFT_DOWN=6, // abajo a la izquierda

              PTZ_RIGHT_UP=7, // arriba a la derecha

              PTZ_RIGHT_DOWN=8, // 8 : abajo a la derecha

              PTZ_ZOOM_IN=9, // 9 : Dar un golpe de zoom

              PTZ_ZOOM_OUT=10, // 10: ALEJAR=10, // 10 : ALEJAR=10

              PTZ_FOCUS_NEAR=11, // 11 : Centrándose en lo cercano

              PTZ_FOCUS_FAR=12, // 12 : Centrarse en lo lejos

              PTZ_IRIS_ADD=13, // 13 : aumento de apertura

              PTZ_IRIS_REDUCE=14, // 14 : Apertura reducida

              PTZ_GOTO_POINT = 15, // 15 : Llamar bit preestablecido

              PTZ_CLEAR_POINT = 16, // 16 : Borrar bit preestablecido

              PTZ_PERSET_POINT = 17, // 17 : Establecer bit preestablecido

              PTZ_AUTO_RUN = 18, // 18 : Escaneo automático horizontal

};

Control PTZ:

#definir JS_CMD_PTZ_CONTROL “PtzControlCmd”

Comandos JSON controlados por Ptz:

  • Desplazarse hacia abajo a una velocidad de 30:

{

         ” PtzControlCmd “: {

         ” u8Cmd “: 2,

         ” u8Velocidad ” : 30

                  }

}

  • 1. Establecer posición preestablecida 2:

{

         ” PtzControlCmd “: {

         ” u8Cmd “: 17,

         “u8Velocidad” : 30,   

         “u8Datos1” : 2

                  }

}

Búsqueda de archivos de tarjeta TF:

( 1) Comando para buscar todos los archivos de video dentro de un período de tiempo específico el mismo día:

{

                  “buscar lista de archivos de registros”:{

                            “u32Año”:2020, // año

                            “u8mes”:7,                             // Mes

                            “u8día”:14,                       // Día

                            “u8hora de inicio”:0,              // Hora de inicio en horas

                            “u8InicioMinuto”:0,                   // Hora de inicio en minutos

                            “u8horafinal”:23,             // Hora de finalización en horas

                            “u8FinMinuto”:59,                  // Hora de finalización en minutos

                            “u8EncChn”:0,                           // 0 es el valor predeterminado.

                            “u8RecordTye”:0, // tipo de archivo: 0: Todos los archivos, 1: Grabación programada; 2: Grabación de alarma; 3: Imágenes;

                            “u32InicioIdx”:0,               // El número de secuencia del archivo inicial.

                            “u32Recuento esperado”: 10                 // Número de archivos devueltos por la solicitud, actualmente el valor máximo es 32.

                  }

}

Datos devueltos por el dispositivo.:

{

“buscar lista de archivos de registros”: {

“u32RecordFileTotalCount”: 7,                // Número total de archivos buscados durante este período de tiempo

“stRecordFileList”: [        // Nombre de archivo con ruta, tamaño de archivo]

“/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

]

}

}

Capturar manualmente una imagen JPG:

              Envíe el siguiente comando al dispositivo..

              {

                            “ManualSnapJpg”:{

                            }

                  }

Devuelto con éxito:

                  {

                  “ManualSnapJpg”: verdadero

                   }

El control PWM ajusta el brillo del LED:

Obtener el valor PWM actual:

{

“obtenerPwmParam”:{

          “u32PwmChn”: 0

}

}

Devuelto con éxito:

{

“obtenerPwmParam”:{

          “u32PwmChn”:0,

          “u8Habilitar”:1,

          “u8DeberValor”:20

}

}

  • Establecer el valor de PWM:

{

“establecerPwmParam”:{

          “u32PwmChn”: 0,

          “u8Habilitar”: 1,

          “u8DeberValor”: 60

}

}

Devuelto con éxito:

{

“establecerPwmParam”:verdadero

}

Nota : u32PwmChn por defecto es 0 y no debe cambiarse arbitrariamente. u8Enable tiene un valor de 0/1, dónde 0 desactiva la salida PWM y 1 habilita la salida PWM. u8DutyValue tiene un rango de valores de 0-100.

17. Adquisición/Configuración de Texto OSD:

(1)   Obtener el canal de vídeo especificado, Parámetros de texto OSD:

{“getVideoOsdTextInfo”:{

          “u8IspChn”:0,

          “u8TextIdx”:1

}}

Devuelto con éxito:

{

“getVideoOsdTextInfo”:{

          “u8IspChn”:0, // canal de vídeo 0, llenar 0 para una cámara

          “u8TextIdx”:1, // El número del cuadro de texto OSD., soportando múltiples cuadros de texto.

          “u8Habilitar”:0, // Permitir, 0: no mostrar; 1: monitor

          “u16XRatioBase50000”:40000, // Coordenadas relativas de la posición horizontal., con un valor máximo de 50000.

          “u16YRatioBase50000”:1600, // Coordenadas relativas de la posición vertical., con un valor máximo de 50000.

          “u8FgTransparencia”:10, // Transparencia de primer plano [0-255]

          “u8BgTransparencia”:255, // Valor de transparencia de fondo [0-255]

          “u8TamañoTipo”:1, // Tamaño del texto, Rango de valores [0-3]

          “u32TextColor_BGRA8888”:4294967295, // Color del texto valor ARGB888

          “aszTexto”:”” // El cuadro de texto muestra la cadena de contenido.

}

}

(2)   Establecer el canal de vídeo especificado, Parámetros de texto OSD:

{

“setVideoOsdTextInfo”:{

          “u8IspChn”:0,

          “u8TextIdx”:1,

          “u8Habilitar”:1,

          “u16XRatioBase50000”:40000,

          “u16YRatioBase50000”:1600,

          “u8FgTransparencia”:10,

          “u8BgTransparencia”:255,

          “u8TamañoTipo”:1,

          “u32TextColor_BGRA8888”:4294967295,

          “aszTexto”:”prueba 11111222233334444″

}

}

Devuelto con éxito:

{

“setVideoOsdTextInfo”:verdadero

}

Gama de precios: $118.00 a través de $178.00
Gama de precios: $98.00 a través de $158.00
El precio original era: $199.00.El precio actual es: $130.00.
Gama de precios: $118.00 a través de $178.00

Haz una pregunta

← Volver

Gracias por tu respuesta. ✨