hc
2024-12-19 9370bb92b2d16684ee45cf24e879c93c509162da
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
// Copyright 2019 Fuzhou Rockchip Electronics Co., Ltd. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
 
#ifndef EASYMEDIA_MEDIA_KEY_STRING_H_
#define EASYMEDIA_MEDIA_KEY_STRING_H_
 
#define _STR(s) #s
#define STR(s) _STR(s)
 
#define KEY_PATH "path"
#define KEY_OPEN_MODE "mode"
#define KEY_SAVE_MODE "save_mode"
#define KEY_SAVE_MODE_SINGLE "single_frame"
#define KEY_SAVE_MODE_CONTIN "continuous_frame"
#define KEY_DEVICE "device"
 
#define KEY_NAME "name"
#define KEY_INPUTDATATYPE "input_data_type"
#define KEY_OUTPUTDATATYPE "output_data_type"
 
// image info
#define KEY_PIXFMT "pixel_fomat"
#define KEY_BUFFER_WIDTH "width"
#define KEY_BUFFER_HEIGHT "height"
#define KEY_BUFFER_VIR_WIDTH "virtual_width"
#define KEY_BUFFER_VIR_HEIGHT "virtual_height"
#define KEY_CODECTYPE "codec_type"
 
// (src_left, src_top, src_width, src_height)->(dst_left, dst_top, dst_width,
// dst_height)
#define KEY_RIGHT_DIRECTION "->"
#define KEY_BUFFER_RECT "rect"
#define KEY_BUFFER_ROTATE "rotate"
 
// video info
#define KEY_COMPRESS_QP_INIT "qp_init"
#define KEY_COMPRESS_QP_STEP "qp_step"
#define KEY_COMPRESS_QP_MIN "qp_min"
#define KEY_COMPRESS_QP_MAX "qp_max"
#define KEY_COMPRESS_QP_MAX_I "qp_max_i"
#define KEY_COMPRESS_QP_MIN_I "qp_min_i"
#define KEY_COMPRESS_BITRATE "bitrate"
#define KEY_COMPRESS_BITRATE_MAX "bitrate_max"
#define KEY_COMPRESS_BITRATE_MIN "bitrate_min"
// output frame rate, string formate: "num/den"
// such as: KEY_FPS="30/1".
#define KEY_FPS "framerate"
// input frame rate, string formate: "num/den"
#define KEY_FPS_IN "framerate_in"
#define KEY_LEVEL "level"
#define KEY_VIDEO_GOP "gop"
#define KEY_PROFILE "profile"
#define KEY_ROTATION "rotation"
#define KEY_COMPRESS_RC_QUALITY "rc_quality"
#define KEY_COMPRESS_RC_MODE "rc_mode"
#define KEY_NEED_EXTRA_OUTPUT "need_extra_output"
#define KEY_NEED_EXTRA_MERGE "need_extra_merge"
#define KEY_FULL_RANGE "full_range"
#define KEY_H264_TRANS_8x8 "h264_trans_8x8"
 
#define KEY_JPEG_QFACTOR "jpeg_qfactor"
 
#define KEY_ROI_REGIONS "roi_regions"
 
#define KEY_LOWEST "lowest"
#define KEY_LOWER "lower"
#define KEY_LOW "low"
#define KEY_MEDIUM "medium"
#define KEY_HIGH "high"
#define KEY_HIGHER "higher"
#define KEY_HIGHEST "highest"
 
#define KEY_FIXQP "fixqp"
#define KEY_VBR "vbr"
#define KEY_CBR "cbr"
 
#define KEY_REF_FRM_CFG "reference_frame_config"
 
// mpp special
#define KEY_MPP_GROUP_MAX_FRAMES "fg_max_frames" // framegroup max frame num
#define KEY_MPP_SPLIT_MODE "split_mode"
#define KEY_OUTPUT_TIMEOUT "output_timeout"
 
// move detection
#define KEY_MD_SINGLE_REF "md_single_ref"
#define KEY_MD_ORI_WIDTH "md_orignal_width"
#define KEY_MD_ORI_HEIGHT "md_orignal_height"
#define KEY_MD_DS_WIDTH "md_down_scale_width"
#define KEY_MD_DS_HEIGHT "md_down_scale_height"
#define KEY_MD_ROI_CNT "md_roi_cnt"
#define KEY_MD_ROI_RECT "md_roi_rect"
#define KEY_MD_SENSITIVITY "md_sensitivity"
 
// occlusion detection
#define KEY_OD_WIDTH "od_width"
#define KEY_OD_HEIGHT "od_height"
#define KEY_OD_ROI_CNT "od_roi_cnt"
#define KEY_OD_ROI_RECT "od_roi_rect"
#define KEY_OD_SENSITIVITY "od_sensitivity"
 
// audio info
#define KEY_SAMPLE_FMT "sample_format"
#define KEY_CHANNELS "channel_num"
#define KEY_SAMPLE_RATE "sample_rate"
#define KEY_FRAMES "frame_num"
#define KEY_FLOAT_QUALITY "compress_quality"
 
// v4l2 info
#define KEY_USE_LIBV4L2 "use_libv4l2"
#define KEY_SUB_DEVICE "sub_device"
#define KEY_V4L2_CAP_TYPE "v4l2_capture_type"
#define KEY_V4L2_C_TYPE(t) STR(t)
#define KEY_V4L2_MEM_TYPE "v4l2_mem_type"
#define KEY_V4L2_M_TYPE(t) STR(t)
#define KEY_V4L2_COLORSPACE "v4l2_colorspace"
#define KEY_V4L2_QUANTIZATION "v4l2_quantization"
#define KEY_V4L2_CS(t) STR(t)
 
// rtsp
#define KEY_PORT_NUM "portnum"
#define KEY_USERNAME "username"
#define KEY_USERPASSWORD "userpwd"
#define KEY_CHANNEL_NAME "channel_name"
 
#define KEY_MEM_CNT "mem_cnt"
#define KEY_MEM_TYPE "mem_type"
#define KEY_MEM_ION "ion"
#define KEY_MEM_DRM "drm"
#define KEY_MEM_HARDWARE "hw_mem"
 
#define KEY_MEM_SIZE_PERTIME "size_pertime"
 
#define KEY_LOOP_TIME "loop_time"
 
// flow
#define KEK_THREAD_SYNC_MODEL "thread_model"
#define KEY_ASYNCCOMMON "asynccommon"
#define KEY_ASYNCATOMIC "asyncatomic"
#define KEY_SYNC "sync"
 
#define KEK_INPUT_MODEL "input_model"
#define KEY_BLOCKING "blocking"
#define KEY_DROPFRONT "dropfront"
#define KEY_DROPCURRENT "dropcurrent"
 
#define KEY_INPUT_CACHE_NUM "input_cache_num"
#define KEY_OUTPUT_CACHE_NUM "output_cache_num"
 
#define KEY_OUTPUT_HOLD_INPUT "output_hold_input"
 
// muxer flow
#define KEY_FILE_PREFIX "file_prefix"
#define KEY_FILE_SUFFIX "file_suffix"
#define KEY_FILE_DURATION "file_duration"
#define KEY_FILE_INDEX "file_index"
#define KEY_FILE_TIME "file_time"
#define KEY_MUXER_FFMPEG_AVDICTIONARY "muxer_ffmpeg_avdictionary"
#define KEY_ENABLE_STREAMING "enable_streaming"
 
// drm
#define KEY_CONNECTOR_ID "connector_id"
#define KEY_CRTC_ID "crtc_id"
#define KEY_ENCODER_ID "encoder_id"
#define KEY_PLANE_ID "plane_id"
#define KEY_SKIP_PLANE_IDS "skip_plane_ids"
#define KEY_PLANE_TYPE "plane_type"
#define KEY_OVERLAY "Overlay"
#define KEY_PRIMARY "Primary"
#define KEY_CURSOR "Cursor"
 
#define KEY_FB_ID "FB_ID"
#define KEY_CRTC_X "CRTC_X"
#define KEY_CRTC_Y "CRTC_Y"
#define KEY_CRTC_W "CRTC_W"
#define KEY_CRTC_H "CRTC_H"
#define KEY_SRC_X "SRC_X"
#define KEY_SRC_Y "SRC_Y"
#define KEY_SRC_W "SRC_W"
#define KEY_SRC_H "SRC_H"
#define KEY_ZPOS "ZPOS"
#define KEY_FEATURE "FEATURE"
 
// rknn
#define KEY_DETECT_RECT "detect_rect"
#define KEY_OUTPUT_WANT_FLOAT "rknn_output_want_float"
#define KEY_TENSOR_TYPE "tensor_type"
#define KEY_TENSOR_FMT "tensor_fmt"
#define KEY_NCHW "NCHW"
#define KEY_NHWC "NHWC"
#define KEY_FACE_DETECT_TRACK_FRAME "track_frame"
#define KEY_FACE_DETECT_LANDMARK "detect_landmark"
#define KEY_NEED_HW_DRAW "need_hw_draw"
#define KEY_DRAW_RECT_THICK "draw_rect_thick"
#define KEY_DRAW_MIN_RECT "min_rect"
#define KEY_DRAW_OFFSET_X "offset_x"
#define KEY_DRAW_OFFSET_Y "offset_y"
#define KEY_FRAME_INTERVAL "frame_interval"
#define KEY_SCORE_THRESHOD "score_threshod"
#define KEY_FRAME_RATE "frame_rate"
#define KEY_FRAME_CACHES "frame_caches"
#define KEY_ENABLE "enable"
#define KEY_BODY_PERCENTAGE "percentage"
#define KEY_BODY_DURATION "duration"
#define KEY_ENBALE_FACE_DETECT "enable_face_detect"
#define KEY_ENABLE_FACE_REG "enable_face_reg"
#define KEY_CACHE_SIZE "cache_size"
#define KEY_CLOCK_DELTA "clock_delta"
 
// rockx
#define KEY_ROCKX_MODEL "rockx_model"
#define KEY_DB_PATH "db_path"
 
// throuh_guard
#define KEY_ALLOW_THROUGH_COUNT "allow_through_count"
 
// uvc
#define KEY_UVC_EVENT_CODE "uvc_event_code"
#define KEY_UVC_WIDTH "uvc_width"
#define KEY_UVC_HEIGHT "uvc_height"
#define KEY_UVC_FORMAT "uvc_format"
 
#define KEY_ROCKX_ASYNC_CALLBACK "aysnc_callback_enable"
 
#endif // #ifndef EASYMEDIA_MEDIA_KEY_STRING_H_