비디오 인코더 보드 TCP JSON 프로토콜 RTSP API 가이드

RTSP 실시간 오디오 및 비디오 스트림 주소:

  • 체재: RTSP://IP:포트/스트림 번호
  • 기본 포트: 554
  • 스트림 ID: 0 (메인 스트림), 1 (보조 스트림)
  • 예를 들면, 장치 주소에서 서브스트림을 검색하려면 192.168.1.188, URL은 다음과 같습니다:
  • RTSP://192.168.1.1 8 8 :554 / 1

클라이언트 (모바일 앱) TCP 프로토콜을 통해 카메라 매개변수를 획득하고 설정합니다.;

카메라는 TCP 서버 역할을 합니다., 기본 TCP 포트는 8866.

TCP 통신 데이터 형식:

순수 JSON 문자열

카메라 상태 가져오기:

데이터 구조:

              typedef 구조체

              {

                     char s8DevId[64]; // 장치 ID, ID가 설정되지 않은 경우 기본값은 IP입니다..

                     u32 u32Tf레코드; // TF 카드의 녹음 상태, 0: 녹음 안함; 1: 녹음 진행 중

              }JSON_DEV_STATUS_INFO_S;

명령 문자:

              #JS_CMD 정의 _ GET_DEV_STATUS “GetDev상태”

장치의 IP 주소가 다음과 같다고 가정합니다. 192.168.1.188, 클라이언트는 다음 JSON 데이터를 보냅니다.:

{

         ” GetDev상태 “: {       }

}

카메라가 데이터를 성공적으로 수신한 후, 다음 JSON 데이터를 반환했습니다.:

{

         ” GetDev상태 “: {

         ” s8DevId ” : ” 192.168.1.188 ” ,

         “u32Tf레코드” : 0

         }

}

비디오 인코딩 매개변수 획득/설정:

데이터 구조:

              typedef 구조체

              {

u8 u8VideoEncChn;        //0 : 메인 스트림; 1: 보조 스트림;

u8 u8비디오코덱 유형;    // 1:h264 ; 2:p265

u16 u16비디오 너비;              // 비디오 너비

u16 u16비디오높이;       // 비디오 높이

u16 u8프레임 속도;           // 프레임 속도 (1-30)

u16 u8Iframe간격;      // 나는- 프레임 간격 크기 (1-100)

u8 u8비트 전송률 제어 모드; //비트레이트 제어 모드: 0: CBR 1: VBR

u16 u16BitRateKps;         // 비트레이트 크기

char s8VideoSizeName[256]; // 지원되는 해상도 목록 }JSON_VIDEO_ENC_PARAM_S;

명령 문자:

              매개변수 가져오기:

              #JS_CMD_GET_VIDEO_ENC_PARAM 정의 “getVideoEncParam”

              매개변수 설정:

              #JS_CMD_SET_VIDEO_ENC_PARAM 정의 “setVideoEncParam”

예를 들면:

클라이언트는 카메라 기본 비트스트림의 인코딩 매개변수가 포함된 다음 JSON 데이터를 검색합니다.:

{

         ” getVideoEncParam “: {

         ” u8VideoEncChn “: 0

         }

}

카메라가 반환하는 JSON 데이터는 다음과 같습니다.;

{

         ” getVideoEncParam “: {

         ” u8VideoEncChn “: 0,

         “ u8VideoCodecType ” : 1,

         “u16VideoWidth” : 3840,

       ” u16비디오높이 ” : 1080,

       “u8FrameRate” : 30,

         ” u8Iframe간격 ” : 60,

         ” u8비트 전송률 제어 모드 ” : 0,

         “u16BitRateKps” : 4096,

       ” s8VideoSizeName ” : ” 3840×1080,1920×540 “

         }

}

클라이언트는 카메라의 보조 스트림 프레임 속도를 다음으로 설정합니다. 15 JSON 형식의 비트 전송률은 1024K입니다., 다음과 같이:

{

         ” setVideoEncParam “: {

         ” u8VideoEncChn “: 1,

         ” u8프레임 속도 “: 15,

         ” u16BitRateKps “: 1024

         }

}

성공적으로 설정한 후, 카메라가 TRUE를 반환합니다..

오디오 인코딩 매개변수 획득/설정:

데이터 구조:

              typedef 구조체

              {

       u8 u8활성화;             //0: 장애를 입히다; 1: 할 수 있게 하다;

       u32 u32Chn번호; // 1 : 단핵증; 2: 스테레오

   u8 u8인코드 유형; //6 : AAC; 8: G711A; 9: G711U;                        u32 u32샘플 속도; // 샘플링 속도: 8000, 16000, 24000, 32000, 48000

       u8 u8Aout볼륨; // 볼륨 크기: [0–100]                    }JSON_VIDEO_ENC_PARAM_S;

명령 문자:

              매개변수 가져오기:

              #JS_CMD_GET_AUDIO_PARAM 정의 “getAudioParam”

              매개변수 설정:

              #JS_CMD_SET_AUDIO_PARAM 정의 “setAudioParam”

예를 들면:

클라이언트는 카메라 오디오 인코딩 매개변수의 다음 JSON 데이터를 검색합니다.:

{

         ” getAudioParam “: { }

}

카메라가 반환하는 JSON 데이터는 다음과 같습니다.;

{

         ” getAudioParam “: {

         ” u8활성화 “: 1,

         “u32ChnNum” : 1,

         “u8EncodeType” : 8,

       “u32SampleRate” : 8000,

       “u8Aout볼륨” : 80,

                  }

}

카메라 오디오 인코딩에 대한 클라이언트 측 설정은 AAC입니다., 스테레오, 샘플링 속도는 48kHz입니다.. JSON 데이터는 다음과 같습니다:

{

         ” setAudioParam “: {

         “u32ChnNum” : 2,

         “u8EncodeType” : 6,

       “u32SampleRate” : 48000

                  }

}

성공적으로 설정한 후, 카메라가 TRUE를 반환합니다..

비디오 이미지 매개변수 획득/설정:

데이터 구조:

typedef 구조체

{

u8 u8비디오IspChn;           //ISP 채널; [0-4]

u8 u8밝기;              // 명도: [0~100]

u8 u8대비;                 // 명암비: [0~100]

u8 u8색조;                        // 색도: [0~100]

u8 u8채도;              // 채도 수준: [0~100]

u8 u8선명도;                     // 날카로움: [0~100]

}JSON_IMAGE_PARAM_S;

명령 문자:

              매개변수 가져오기:

              #JS_CMD_GET_IMAGE_PARAM 정의 “getImageParam”

              매개변수 설정:

              #JS_CMD_SET_IMAGE_PARAM 정의 “setImageParam”

예를 들면:

클라이언트는 채널에 대한 이미지 매개변수의 다음 JSON 데이터를 검색합니다. 0 카메라 ISP의:

{

         ” getImageParam “: {

                   “u8VideoIspChn” : 0

         }

}

카메라가 반환하는 JSON 데이터는 다음과 같습니다.;

{

         ” getImageParam “: {

         ” u8VideoIspChn “: 0,

         “u8밝기” : 50,

         “u8콘트라스트” : 50,

       “u8Hue” : 50,

       “u8채도” : 50,

         “u8선명도” : 50

                  }

}

카메라 밝기에 대한 클라이언트 측 JSON 데이터 설정은 다음과 같습니다. 53, 대비는 60, 그리고 채도는 56 다음과 같습니다:

{

         ” setImageParam “: {

         “u8VideoIspChn” : 0,

         “u8밝기” : 53,

       “u8콘트라스트” : 60,

       “u8채도” : 56

                  }

}

성공적으로 설정한 후, 카메라가 TRUE를 반환합니다..

TF 카드 정보 검색;

데이터 구조:

typedef 구조체

{

      u32 u32전체 크기;             // 총 크기(MB)

      u32 u32사용된 크기;             // 사용용량단위 (MB)

      u32 u32사용 가능한 크기;             // 사용 가능한 용량(MB)

}JSON_SD_CARD_INFO_S;

매개변수 가져오기:

#JS_CMD_GET_SD_CARD_INFO 정의 “getSdCardInfo”

예를 들면:

클라이언트는 카메라의 TF 카드 정보와 관련하여 다음 JSON 데이터를 검색합니다.:

{

         ” getSdCardInfo “: { }

}

카메라가 반환하는 JSON 데이터는 다음과 같습니다.;

{

         ” getSdCardInfo “: {

         ” u32전체 크기 “: 31254,

         “u32UsedSize” : 20000,

         ” u32사용 가능한 크기 ” : 11254

                  }

}

TF 카드 녹음 구성:

데이터 구조:

typedef 구조체

{

       u8 u8자동녹화활성화;        //1: 녹음 활성화; 0: 녹음 비활성화

      u8 u8RecordStrChn;                // 녹화 스트림 선택: 0: 기본 스트림; 1: 보조 스트림

   u8 u8PreRecordSeconds;               // 사전녹화 시간 [0-10] 초 안에

   u16 u16RecordSecondsPerFile; // 단일 녹음 파일의 지속 시간 [10-1000] 초

}JSON_RECORD_Control_PARAM_S;

매개변수 가져오기:

#JS_CMD_GET_RECORD_Control_PARAM 정의 “getRecordControlParam”

매개변수 설정:

#JS_CMD_SET_RECORD_Control_PARAM 정의 “setRecordControlParam”

예를 들면:

클라이언트는 카메라의 TF 카드 녹화 구성과 관련하여 다음 JSON 데이터를 검색합니다.:

{

         ” getRecordControlParam “: { }

}

카메라가 반환하는 JSON 데이터는 다음과 같습니다.;

{

         ” getRecordControlParam “: {

                   ” u8자동녹화활성화 “: 1,

                   “u8RecordStrChn” : 0,

                   ” u8PrecordSeconds ” : 0,

              ” u16RecordSecondsPerFile ” : 300

                  }

}

유선 네트워크 IP 구성:

데이터 구조:

typedef 구조체

{                                               

u8 u8Dhcp활성화;                  // 0: 고정 IP; 1: DHCP;

문자 s8IP[16];                          //IP 주소

char s8SubMask[16];              // 서브넷 마스크

char s8GateWay[16];              // 게이트웨이 IP

char s8Dns[16];                //DNS 주소

}JSON_NET_PARAM_S;

매개변수 가져오기:

#JS_CMD_GET_NET_IP_PARAM 정의 “getNetIpParam”

매개변수 설정:

#JS_CMD_SET_NET_IP_PARAM 정의 “setNetIpParam”

예를 들면:

클라이언트는 다음과 같이 JSON 데이터를 사용하여 카메라의 IP 정보를 검색합니다.:

{

         ” getNetIpParam “: { }

}

카메라가 반환하는 JSON 데이터는 다음과 같습니다.;

{

         ” getNetIpParam “: {

                   ” u8Dhcp활성화 “: 0,

                   ” s8IP ” : ” 192.168.1.188 ” ,

                   ” s8SubMask ” : ” 255.255.255.0 ” ,

              ” s8GateWay ” : ” 192.168.1.1 ” ,

              ” s8Dns ” : ” 192.168.1.1 “

         }

}

클라이언트는 카메라의 IP 주소로 구성됩니다. 192.168.3.10, 게이트웨이로 192.168.3.1, 그리고 DNS는 192.168.3.1. JSON 데이터는 다음과 같습니다:

{

         ” setNetIpParam “: {

                   ” s8IP ” : ” 192.168.3.10 ” ,

              ” s8GateWay ” : ” 192.168.3.1 ” ,

              ” s8Dns ” : ” 192.168.3.1 “

         }

}

성공적으로 설정한 후, 카메라가 데이터를 반환하지 않습니다, 클라이언트는 새 IP 주소를 사용하여 장치에 다시 연결해야 합니다..

WiFi 매개변수 구성:

클라이언트/앱은 장치에서 찾은 라우터의 SSID 목록을 검색합니다..

                  {

                            “getAPSsidList” :{ }

                  }

                  장치는 SSID 목록을 반환합니다.: 목록에서 연결할 경로 SSID를 선택하세요..

                  STA 모드에서 작동하도록 장치의 Wi-Fi 구성:

         {

                  “setWifiSsidParam”:{

                           “u8모드”: 0,

                           “s8S”: ” yrsx8888 “,

                            “s8PassWd”: “987545598400

                  }

    }

              핫스팟 AP 모드에서 작동하도록 장치의 Wi-Fi를 구성합니다.:

                  {

                            “setWifiSsidParam”:{

                                    “u8모드”: 1

                            }

                  }

                  기기의 Wi-Fi 상태 가져오기:

                  {

                            “getWifiSsidParam” : { }

                  }

시간 동기화:

데이터 구조:    

                  typedef 구조체

                  {

                            u8 u8TimeZone;                        // 시간대 값 RT_TIMEZONE_E

                            char s8DateTime[64];              // 시간 형식: “2019-06-12_12:56:59_3”    

                  }JSON_DATE_TIME_INFO_S;

                  시간대 값의 정의:

typedef 열거형

{

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

RT_TIMEZONE_MidwayIsland사모아 = 1, /* UTC-11:00 */

RT_TIMEZONE_하와이 = 2, /* UTC-10:00 */

RT_TIMEZONE_알래스카 = 3, /* UTC-9:00 */

RT_TIMEZONE_티후아나캘리포니아 = 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_애리조나 = 8, /* UTC-7:00 */

RT_TIMEZONE_서스캐처원 = 9, /* UTC-7:00 */

RT_TIMEZONE_Guaddlajara멕시코시티몬테레이 = 10, /* UTC-6:00 */

RT_TIMEZONE_CentralTimeUSCanada = 11, /* UTC-6:00 */

RT_TIMEZONE_CentralAmerica = 12, /* UTC-6:00 */

RT_TIMEZONE_BogotaLimaQuito = 13, /* UTC-5:00 */

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

RT_TIMEZONE_IndianaEast = 15, /* UTC-5:00 */

RT_TIMEZONE_카라카스 = 16, /* UTC-4:30 */

RT_TIMEZONE_AtlanticTimeCanada = 17, /* UTC-4:00 */

RT_TIMEZONE_GeorgetownLapazSanJuan = 18, /* UTC-4:00 */

RT_TIMEZONE_산티아고 = 19, /* UTC-4:00 */

RT_TIMEZONE_NenfoundLand = 20, /* UTC-3:30 */

RT_TIMEZONE_브라질리아 = 21, /* UTC-3:00 */

RT_TIMEZONE_부에노스아이레스조지타운 = 22, /* UTC-3:00 */

RT_TIMEZONE_그린란드 = 23, /* UTC-3:00 */

RT_TIMEZONE_MidAtlantic = 24, /* UTC-2:00 */

RT_TIMEZONE_CapeVerdeIs = 25, /* UTC-1:00 (카보베르데 공화국) */

RT_TIMEZONE_아조레스 = 26, /* UTC-1:00 (아조레스) */

RT_TIMEZONE_GreenwichMeanTimeDublin에든버러리스본런던 = 27, /* UTC-0:00 */

RT_TIMEZONE_카사블랑카 = 28, /* UTC-0:00 */

RT_TIMEZONE_몬로비아 = 29, /* UTC-0:00 */

RT_TIMEZONE_AmsterdamBerlinBern로마스톡홀름비엔나 = 30, /* UTC+1:00 */

RT_TIMEZONE_Belgrade브라티슬라바부다페스트류블랴나프라하 = 31, /* UTC+1:00 */

RT_TIMEZONE_BrusselsCopenhagenMadridParis = 32, /* UTC+1:00 */

RT_TIMEZONE_SarajevoSkopjeWarsaw자그레브 = 33, /* UTC+1:00 */

RT_TIMEZONE_WestCentralAfrica = 34, /* UTC+1:00 */

RT_TIMEZONE_Rare프리토리아 = 35, /* UTC+2:00 */

RT_TIMEZONE_HelsinkiKyivRigaSofiaTallinnVilnius = 36, /* UTC+2:00 */

RT_TIMEZONE_카이로 = 37, /* UTC+2:00 */

RT_TIMEZONE_민스크 = 38, /* UTC+2:00 */

RT_TIMEZONE_Athens부쿠레슈티이스탄불 = 39, /* UTC+2:00 */

RT_TIMEZONE_예루살렘 = 40, /* UTC+2:00 */

RT_TIMEZONE_바그다드 = 41, /* UTC+3:00 */

RT_TIMEZONE_트빌리시 = 42, /* UTC+3:00 */

RT_TIMEZONE_쿠웨이트리야드 = 43, /* UTC+3:00 */

RT_TIMEZONE_MoscowStPetersburg볼고그라드 = 44, /* UTC+3:00 */

RT_TIMEZONE_나이로비 = 45, /* UTC+3:00 */

RT_TIMEZONE_테헤란 = 46, /* UTC+3:30 */

RT_TIMEZONE_AbuDhabi무스카트 = 47, /* UTC+4:00 */

RT_TIMEZONE_BakuYerevan = 48, /* UTC+4:00 */

RT_TIMEZONE_카불 = 49, /* UTC+4:30 */

RT_TIMEZONE_타슈켄트 = 50, /* UTC+5:00 */

RT_TIMEZONE_에카테린부르크 = 51, /* UTC+5:00 */

RT_TIMEZONE_이슬라마바드카라치 = 52, /* UTC+5:00 */

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

RT_TIMEZONE_카트만두 = 54, /* UTC+5:45 */

RT_TIMEZONE_Almaty노보시비르스크 = 55, /* UTC+6:00 */

RT_TIMEZONE_아스타나다카 = 56, /* UTC+6:00 */

RT_TIMEZONE_랑군 = 57, /* UTC+6:30 */

RT_TIMEZONE_크라스노야르스크 = 58, /* UTC+7:00 */

RT_TIMEZONE_BangkokHanoi자카르타 = 59, /* UTC+7:00 */

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

RT_TIMEZONE_KualaLumpur싱가포르 = 61, /* UTC+8:00 */

RT_TIMEZONE_퍼스 = 62, /* UTC+8:00 */

RT_TIMEZONE_타이베이 = 63, /* UTC+8:00 */

RT_TIMEZONE_IrkutskUlaanBataar = 64, /* UTC+8:00 */

RT_TIMEZONE_Osaka삿포로도쿄 = 65, /* UTC+9:00 */

RT_TIMEZONE_서울 = 66, /* UTC+9:00 */

RT_TIMEZONE_야쿠츠크 = 67, /* UTC+9:00 */

RT_TIMEZONE_애들레이드 = 68, /* UTC+9:30 */

RT_TIMEZONE_브리즈번 = 69, /* UTC+10:00 */

RT_TIMEZONE_블라디보스토크 = 70, /* UTC+10:00 */

RT_TIMEZONE_GuamMoresby = 71, /* UTC+10:00 */

RT_TIMEZONE_호바트 = 72, /* UTC+10:00 */

RT_TIMEZONE_CanberraMelbourne시드니 = 73, /* UTC+10:00 */

RT_TIMEZONE_MagadanSolomon뉴칼레도니아 = 74, /* UTC+11:00 */

RT_TIMEZONE_Auckland웰링턴 = 75, /* UTC+12:00 */

RT_TIMEZONE_FijiKamchatkaMarshallIs = 76, /* UTC+12:00 */

RT_TIMEZONE_누쿠알로파 = 77, /* UTC+13:00 */

RT_TIMEZONE_BUTT

}RT_TIMEZONE_E;

매개변수 가져오기:

#JS_CMD_GET_DEV_DATE_TIME 정의 “GetDevDateTime”

매개변수 설정:

#JS_CMD_SET_DEV_DATE_TIME 정의 “setDevDateTime”

장치 시간 JSON 데이터 가져오기 :

                  {

                            ” GetDevDateTime ” : {}

                  }

장치가 JSON 데이터를 반환합니다.:

                  {

                            ” GetDevDateTime ” : {

                            “u8TimeZone” : 60,

                            “s8날짜시간” : “2020-03-06_12:56:59_3”

                            }

                  }

JSON 데이터는 장치 시간을 목요일로 설정합니다., 행진 12, 2020, ...에서 3:38:30 오후:

                  {

                            ” setDevDateTime ” : {

                                     “s8날짜시간” : “2020-03-12_15:38:30_4”

                            }

                  }

성공적인 설정 시 장치가 TRUE를 반환했습니다..

장비 관리:

기기 재시작을 위한 JSON 데이터:

                            {

                                     ” setSysControlParam ” : {

                                               “u8다시 시작” : 1               

                                     }

                            }

공장 설정 복원을 위한 JSON 데이터:

                            {

                                     ” setSysControlParam ” : {

                                               "u8Reset기본값" : 1              

                                     }

                            }

SD 카드 JSON 데이터 포맷:

                            {

                                     ” setSysControlParam ” : {

                                               “u8FormatSdCard” : 1                              

                                     }

                            }

PTZ 제어:

데이터 구조:

typedef 구조체

{

       u8 u8Cmd;                        // 명령 코드 PTZ_CONTROL_CODE

u8 u8속도;                     // 속도 (1-64)

u8 u8데이터1;                            // 예약된; 이는 사전 설정 위치에 사용됩니다..

u8 u8데이터2;                            // 예약된, 이는 특수 PTZ 명령에 사용됩니다..

}JSON_PTZ_Control_S;

열거형 PTZ_CONTROL_CODE

{

              PTZ_STOP = 0, // 중지

              PTZ_UP=1,          // 쪽으로

              PTZ_DOWN=2,          // 아래에

              PTZ_LEFT=3,              // 왼쪽

              PTZ_RIGHT=4,           // 권리

              PTZ_LEFT_UP=5, // 왼쪽 위

              PTZ_LEFT_DOWN=6, // 왼쪽 하단

              PTZ_RIGHT_UP=7, // 오른쪽 상단

              PTZ_RIGHT_DOWN=8, // 8 : 오른쪽 하단

              PTZ_ZOOM_IN=9, // 9 : 확대

              PTZ_ZOOM_OUT=10, // 10: 축소=10, // 10 : 축소=10

              PTZ_FOCUS_NEAR=11, // 11 : 가까운 곳을 집중적으로

              PTZ_FOCUS_FAR=12, // 12 : 먼 곳에 집중하라

              PTZ_IRIS_ADD=13, // 13 : 조리개 증가

              PTZ_IRIS_REDUCE=14, // 14 : 조리개 감소

              PTZ_GOTO_POINT = 15, // 15 : 프리셋 비트 호출

              PTZ_CLEAR_POINT = 16, // 16 : 프리셋 비트 지우기

              PTZ_PERSET_POINT = 17, // 17 : 프리셋 비트 설정

              PTZ_AUTO_RUN = 18, // 18 : 수평 자동 스캔

};

PTZ 제어:

#JS_CMD_PTZ_Control 정의 “PtzControlCmd”

Ptz가 제어하는 ​​JSON 명령:

  • 의 속도로 아래로 이동 30:

{

         ” PtzControlCmd “: {

         ” u8Cmd “: 2,

         ” u8속도 ” : 30

                  }

}

  • 1. 프리셋 위치 설정 2:

{

         ” PtzControlCmd “: {

         ” u8Cmd “: 17,

         “u8스피드” : 30,   

         “u8데이터1” : 2

                  }

}

TF 카드 파일 검색:

( 1) 같은 날 특정 시간대의 모든 비디오 파일을 검색하는 명령:

{

                  “검색기록파일목록”:{

                            “u32년”:2020, // 년도

                            “u8월”:7,                             // 월

                            “u8Day”:14,                       // 낮

                            “u8StartHour”:0,              // 시작 시간(시간)

                            “u8시작분”:0,                   // 시작 시간(분)

                            “u8EndHour”:23,             // 종료 시간(시간)

                            “u8End분”:59,                  // 종료 시간(분)

                            “u8EncChn”:0,                           // 0 기본값입니다.

                            “u8RecordTye”:0, // 파일 형식: 0: 모든 파일, 1: 예정된 녹음; 2: 알람녹음; 3: 이미지;

                            “u32StartIdx”:0,               // 시작 파일의 시퀀스 번호

                            “u32예상 개수”: 10                 // 요청에 의해 반환된 파일 수, 현재 최대값은 32.

                  }

}

장치에서 반환된 데이터:

{

“검색기록파일목록”: {

“u32RecordFileTotalCount”: 7,                // 이 기간 동안 검색된 총 파일 수

“stRecordFileList”: [        // 경로가 포함된 파일 이름, 파일 크기]

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

]

}

}

JPG 이미지를 수동으로 캡처:

              장치에 다음 명령을 보냅니다..

              {

                            “수동SnapJpg”:{

                            }

                  }

성공적으로 반환되었습니다.:

                  {

                  “수동SnapJpg”: 진실

                   }

PWM 제어로 LED 밝기 조정:

현재 PWM 값을 가져옵니다.:

{

“getPwmParam”:{

          “u32PwmChn”: 0

}

}

성공적으로 반환되었습니다.:

{

“getPwmParam”:{

          “u32PwmChn”:0,

          “u8활성화”:1,

          “u8Duty값”:20

}

}

  • PWM 값 설정:

{

“setPwmParam”:{

          “u32PwmChn”: 0,

          “u8활성화”: 1,

          “u8Duty값”: 60

}

}

성공적으로 반환되었습니다.:

{

“setPwmParam”:진실

}

노트 : u32PwmChn의 기본값은 다음과 같습니다. 0 임의로 변경해서는 안 됩니다.. u8Enable의 값은 다음과 같습니다. 0/1, 어디에 0 PWM 출력을 비활성화하고 1 PWM 출력 가능. u8DutyValue의 값 범위는 다음과 같습니다. 0-100.

17. OSD 텍스트 획득/설정:

(1)   지정된 비디오 채널을 얻습니다., OSD 텍스트 매개변수:

{“getVideoOsdTextInfo”:{

          “u8IspChn”:0,

          “u8TextIdx”:1

}}

성공적으로 반환되었습니다.:

{

“getVideoOsdTextInfo”:{

          “u8IspChn”:0, // 비디오 채널 0, 채우다 0 카메라 한 대에

          “u8TextIdx”:1, // OSD 텍스트 상자의 번호, 여러 텍스트 상자 지원.

          “u8활성화”:0, // 할 수 있게 하다, 0: 표시하지 않음; 1: 디스플레이

          “u16XRatioBase50000”:40000, // 수평 위치의 상대 좌표, 최대값은 다음과 같습니다. 50000.

          “u16YRatioBase50000”:1600, // 수직 위치의 상대 좌표, 최대값은 다음과 같습니다. 50000.

          “u8Fg투명도”:10, // 전경 투명도 [0-255]

          “u8Bg투명도”:255, // 배경 투명도 값 [0-255]

          “u8크기 유형”:1, // 텍스트 크기, 값 범위 [0-3]

          “u32TextColor_BGRA8888”:4294967295, // 텍스트 색상 ARGB888 값

          “aszText”:”” // 텍스트 상자에 콘텐츠 문자열이 표시됩니다.

}

}

(2)   지정된 비디오 채널 설정, OSD 텍스트 매개변수:

{

“setVideoOsdTextInfo”:{

          “u8IspChn”:0,

          “u8TextIdx”:1,

          “u8활성화”:1,

          “u16XRatioBase50000”:40000,

          “u16YRatioBase50000”:1600,

          “u8Fg투명도”:10,

          “u8Bg투명도”:255,

          “u8크기 유형”:1,

          “u32TextColor_BGRA8888”:4294967295,

          “aszText”:”테스트 11111222233334444″

}

}

성공적으로 반환되었습니다.:

{

“setVideoOsdTextInfo”:진실

}

가격대: $118.00 ~을 통해 $178.00
가격대: $98.00 ~을 통해 $158.00
원래 가격은: $199.00.현재 가격은: $130.00.
가격대: $118.00 ~을 통해 $178.00

질문하기

← 뒤로

응답해 주셔서 감사합니다. ✨