nx_cloud_storage_sdk  1.0
Cloud Storage SDK
camera_plugin_types.h
1 // Copyright 2018-present Network Optix, Inc. Licensed under MPL 2.0: www.mozilla.org/MPL/2.0/
2 
3 
4 #ifndef CAMERA_PLUGIN_TYPES_H
5 #define CAMERA_PLUGIN_TYPES_H
6 
7 
8 namespace nxcip
9 {
10  enum CompressionType
11  {
12  AV_CODEC_ID_NONE,
13  AV_CODEC_ID_MPEG2VIDEO,
14  AV_CODEC_ID_H263,
15  AV_CODEC_ID_MJPEG,
16  AV_CODEC_ID_MPEG4,
17  AV_CODEC_ID_H264,
18  AV_CODEC_ID_THEORA,
19  AV_CODEC_ID_PNG,
20  AV_CODEC_ID_GIF,
21  AV_CODEC_ID_HEVC,
22  AV_CODEC_ID_VP8,
23  AV_CODEC_ID_VP9,
24  #define AV_CODEC_ID_H265 AV_CODEC_ID_HEVC
25 
26  AV_CODEC_ID_MP2 = 0x15000,
27  AV_CODEC_ID_MP3,
28  AV_CODEC_ID_AAC,
29  AV_CODEC_ID_AC3,
30  AV_CODEC_ID_DTS,
31  //raw 16-bit little-endian PCM
32  AV_CODEC_ID_PCM_S16LE,
33  AV_CODEC_ID_PCM_MULAW,
34  AV_CODEC_ID_VORBIS,
35  AV_CODEC_ID_TEXT,
36  AV_CODEC_ID_BIN_DATA,
37  };
38 
40  {
61  AV_PIX_FMT_YUVJ420P,
62  AV_PIX_FMT_NONE,
63  };
64 
65  enum MediaType
66  {
68  AVMEDIA_TYPE_VIDEO,
69  AVMEDIA_TYPE_AUDIO,
71  AVMEDIA_TYPE_SUBTITLE,
73  AVMEDIA_TYPE_NB
74  };
75 
77  {
78  AV_SAMPLE_FMT_NONE = -1,
84 
92 
93 
95  };
96 
97  struct RcOverride
98  {
99  int start_frame;
100  int end_frame;
101  int qscale;
102  float quality_factor;
103  };
104 }
105 
106 #endif //CAMERA_PLUGIN_TYPES_H
VMS Camera Integration Plugin API (c++)
Definition: camera_plugin.h:30
1bpp, 0 is black, 1 is white, in each byte pixels are ordered from the msb to the lsb ...
Definition: camera_plugin_types.h:48
double
Definition: camera_plugin_types.h:83
packed BGRA 8:8:8:8, 32bpp, BGRABGRA...
Definition: camera_plugin_types.h:56
signed 64 bits
Definition: camera_plugin_types.h:90
Y plane only, 8bpp.
Definition: camera_plugin_types.h:50
Number of sample formats. DO NOT USE if linking dynamically.
Definition: camera_plugin_types.h:94
Definition: camera_plugin_types.h:97
Opaque data information usually sparse.
Definition: camera_plugin_types.h:72
MediaType
Definition: camera_plugin_types.h:65
planar YUV 4:2:2, 16bpp, (1 Cr & Cb sample per 2x1 Y samples)
Definition: camera_plugin_types.h:44
planar YUV 4:2:0, 12bpp, 1 plane for Y and 1 plane for the UV components, which are interleaved (firs...
Definition: camera_plugin_types.h:54
unsigned 8 bits
Definition: camera_plugin_types.h:79
planar YUV 4:4:4, 24bpp, (1 Cr & Cb sample per 1x1 Y samples)
Definition: camera_plugin_types.h:46
signed 16 bits
Definition: camera_plugin_types.h:80
unsigned 8 bits, planar
Definition: camera_plugin_types.h:85
signed 32 bits, planar
Definition: camera_plugin_types.h:87
float
Definition: camera_plugin_types.h:82
planar YUV 4:2:0, 12bpp, (1 Cr & Cb sample per 2x2 Y samples)
Definition: camera_plugin_types.h:42
packed RGBA 8:8:8:8, 32bpp, RGBARGBA...
Definition: camera_plugin_types.h:58
signed 32 bits
Definition: camera_plugin_types.h:81
signed 16 bits, planar
Definition: camera_plugin_types.h:86
packed RGB 8:8:8, 24bpp, RGBRGB...
Definition: camera_plugin_types.h:52
double, planar
Definition: camera_plugin_types.h:89
Usually treated as AVMEDIA_TYPE_DATA.
Definition: camera_plugin_types.h:67
signed 64 bits, planar
Definition: camera_plugin_types.h:91
planar YUV 4:2:0, 20bpp, (1 Cr & Cb sample per 2x2 Y & A samples)
Definition: camera_plugin_types.h:60
PixelFormat
Definition: camera_plugin_types.h:39
float, planar
Definition: camera_plugin_types.h:88
SampleFormat
Definition: camera_plugin_types.h:76
Opaque data information usually continuous.
Definition: camera_plugin_types.h:70