목차
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”:진실
}
CVBS HDMI에서 IP 인코더
CVBS HDMI에서 IP 인코더
아날로그 CVBS AV 비디오-이더넷 IP 비디오 스트림 변환기 보드 인코더 지원 UDP RTSP 낮은 대기 시간
CVBS HDMI에서 IP 인코더

질문하기
응답해 주셔서 감사합니다. ✨