VOOSMPType.h
1 /************************************************************************
2 VisualOn Proprietary
3 Copyright (c) 2012-2016, VisualOn, Inc. All Rights Reserved
4 
5 All data and information contained in or disclosed by this document are
6 confidential and proprietary information of VisualOn, Inc, and all rights
7 therein are expressly reserved. By accepting this material, the recipient
8 agrees that this material and the information contained therein are held
9 in confidence and in trust. The material may only be used and/or disclosed
10 as authorized in a license agreement controlling such use and disclosure.
11 ************************************************************************/
12 
13 #ifndef __VO_OSMP_TYPE_H__
14 #define __VO_OSMP_TYPE_H__
15 
16 #ifdef _IOS
17 #define EXPORT_API __attribute__((visibility("default")))
18 #else
19 #define EXPORT_API
20 #endif
21 
22 #ifdef __cplusplus
23 extern "C" {
24 #endif /* __cplusplus */
25 
29  typedef enum {
31  VO_OSMP_ERR_NONE = 0X00000000,
33  VO_OSMP_ERR_EOS = 0X00000001,
35  VO_OSMP_ERR_RETRY = 0X00000002,
37  VO_OSMP_ERR_FORMAT_CHANGE = 0X00000003,
39  VO_OSMP_ERR_VIDEO = 0X80000004,
41  VO_OSMP_ERR_AUDIO = 0X80000005,
43  VO_OSMP_ERR_OUTMEMORY = 0X80000006,
45  VO_OSMP_ERR_POINTER = 0X80000007,
47  VO_OSMP_ERR_PARAMID = 0X80000008,
49  VO_OSMP_ERR_STATUS = 0X80000009,
51  VO_OSMP_ERR_IMPLEMENT = 0X8000000A,
53  VO_OSMP_ERR_SMALLSIZE = 0X8000000B,
55  VO_OSMP_ERR_OUT_OF_TIME = 0X8000000C,
57  VO_OSMP_ERR_WAIT_TIME = 0X8000000D,
59  VO_OSMP_ERR_UNKNOWN = 0X8000000E,
61  VO_OSMP_ERR_JNI = 0X8000000F,
63  VO_OSMP_ERR_LICENSE_FAIL = 0X80000011,
65  VO_OSMP_ERR_HTTPS_CA_FAIL = 0X80000012,
67  VO_OSMP_ERR_ARGS = 0X80000013,
69  VO_OSMP_ERR_MULTIPLE_INSTANCES_NOT_SUPPORTED = 0X80000014,
71  VO_OSMP_ERR_UNINITIALIZE = 0X80000101,
72 
73 
75  VO_OSMP_SRC_ERR_OPEN_SRC_FAIL = 0X81000001,
77  VO_OSMP_SRC_ERR_CONTENT_ENCRYPT = 0X81000002,
79  VO_OSMP_SRC_ERR_PLAYMODE_UNSUPPORT = 0X81000003,
81  VO_OSMP_SRC_ERR_ERROR_DATA = 0X81000004,
83  VO_OSMP_SRC_ERR_SEEK_FAIL = 0X81000005,
85  VO_OSMP_SRC_ERR_FORMAT_UNSUPPORT = 0X81000006,
87  VO_OSMP_SRC_ERR_TRACK_NOTFOUND = 0X81000007,
89  VO_OSMP_SRC_ERR_NO_DOWNLOAD_OP = 0X81000008,
91  VO_OSMP_SRC_ERR_NO_LIB_OP = 0X81000009,
93  VO_OSMP_SRC_ERR_OUTPUT_NOTFOUND = 0X8100000A,
95  VO_OSMP_SRC_ERR_CHUNK_SKIP = 0X8100000B,
97  VO_OSMP_SRC_ERR_DIVXUNSUPPORTED = 0X8100000D,
99  VO_OSMP_SRC_ERR_SRC_UNINITIALIZE = 0X80001001,
100 
102  VO_OSMP_RETURN_CODE_MAX = 0xFFFFFFFF,
103  } VO_OSMP_RETURN_CODE;
104 
105 
110  typedef enum {
112  VO_OSMP_RENDER_TYPE_NATIVE_WINDOW = 0x00000001,
114  VO_OSMP_RENDER_TYPE_NATIVE_SURFACE = 0x00000004,
116  VO_OSMP_RENDER_TYPE_DDRAW = 0x00000007,
118  VO_OSMP_RENDER_TYPE_GDI = 0x00000008,
120  VO_OSMP_RENDER_TYPE_D3D = 0x0000000A,
121 
123  VO_OSMP_RENDER_TYPE_MAX = 0xFFFFFFFF,
124  } VO_OSMP_RENDER_TYPE;
125 
126 
132  typedef enum {
137  VO_OSMP_FLAG_SRC_OPEN_SYNC = 0X00000010,
138 
144  VO_OSMP_FLAG_SRC_OPEN_ASYNC = 0X00000020,
145 
150  VO_OSMP_FLAG_SRC_PUSH_BUFFER_FUNCTION = 0X00000040,
151 
153  VO_OSMP_FLAG_SRC_MAX = 0xFFFFFFFF,
154  } VO_OSMP_SRC_FLAG;
155 
156 
161  typedef enum {
163  VO_OSMP_DOWNLOAD_STALL = 0x00000000,
165  VO_OSMP_DOWNLOAD_PROGRESS = 0x00000001,
167  VO_OSMP_DOWNLOAD_SUSPEND = 0x00000002,
169  VO_OSMP_DOWNLOAD_MAX = 0XFFFFFFFF,
170  } VO_OSMP_DOWNLOAD_STATUS;
171 
172 
177  typedef enum {
178  VO_OSMP_SS_NONE = 0X00000000,
180  VO_OSMP_SS_AUDIO = 0X00000001,
182  VO_OSMP_SS_VIDEO = 0X00000002,
184  VO_OSMP_SS_SUBTITLE = 0X00000009,
186  VO_OSMP_SS_MAX = 0XFFFFFFFF,
187  } VO_OSMP_SOURCE_STREAMTYPE;
188 
189 
194  typedef enum {
196  VO_OSMP_STATUS_INITIALIZING = 0X00000000,
198  VO_OSMP_STATUS_LOADING = 0X00000001,
200  VO_OSMP_STATUS_PLAYING = 0X00000002,
202  VO_OSMP_STATUS_PAUSED = 0X00000003,
204  VO_OSMP_STATUS_STOPPED = 0X00000004,
206  VO_OSMP_STATUS_MAX = 0xFFFFFFFF,
207  } VO_OSMP_STATUS;
208 
209 
214  typedef enum {
216  VO_OSMP_ZOOM_LETTERBOX = 0X00000001,
218  VO_OSMP_ZOOM_PANSCAN = 0X00000002,
220  VO_OSMP_ZOOM_FITWINDOW = 0X00000003,
222  VO_OSMP_ZOOM_ORIGINAL = 0X00000004,
224  VO_OSMP_ZOOM_ZOOMIN = 0x00000005,
226  VO_OSMP_ZOOM_MAX = 0xFFFFFFFF,
227  } VO_OSMP_ZOOM_MODE;
228 
229 
234  typedef enum {
236  VO_OSMP_SRC_AUTO_DETECT = 0X00000000,
238  VO_OSMP_SRC_FFLOCAL_MP4 = 0X00000001,
240  VO_OSMP_SRC_FFSTREAMING_RTSP = 0X08000100,
242  VO_OSMP_SRC_FFSTREAMING_SDP = 0X08000200,
244  VO_OSMP_SRC_FFSTREAMING_HLS = 0X08000400,
246  VO_OSMP_SRC_FFSTREAMING_SSSTR = 0X08000800,
248  VO_OSMP_SRC_FFSTREAMING_DASH = 0X08001000,
250  VO_OSMP_SRC_FFSTREAMING_HTTPPD = 0X08002000,
252  VO_OSMP_SRC_FFSTREAMING_PUSHPD = 0X08010000,
254  VO_OSMP_SRC_FFMOVIE_MAX = 0xFFFFFFFF,
255  } VO_OSMP_SRC_FORMAT;
256 
257 
262  typedef enum {
264  VO_OSMP_RATIO_00 = 0X00000000,
266  VO_OSMP_RATIO_11 = 0X00000001,
268  VO_OSMP_RATIO_43 = 0X00000002,
270  VO_OSMP_RATIO_169 = 0X00000003,
272  VO_OSMP_RATIO_21 = 0X00000004,
274  VO_OSMP_RATIO_2331 = 0X00000005,
275 
279  VO_OSMP_RATIO_AUTO = 0X00000006,
281  VO_OSMP_RATIO_ORIGINAL = 0X00000000,
282 
284  VO_OSMP_RATIO_MAX = 0xFFFFFFFF,
285  } VO_OSMP_ASPECT_RATIO;
286 
287 
292  typedef enum {
294  VO_OSMP_VOME2_PLAYER = 0X00000000,
296  VO_OSMP_OMXAL_PLAYER = 0X00000001,
298  VO_OSMP_AV_PLAYER = 0X00000002,
300  VO_OSMP_PLAYER_ENGINE_MAX = 0xFFFFFFFF,
301  } VO_OSMP_PLAYER_ENGINE;
302 
303 
308  typedef enum {
310  VO_OSMP_SRC_PROGRAM_TYPE_LIVE = 0X00000000,
312  VO_OSMP_SRC_PROGRAM_TYPE_VOD = 0X00000001,
314  VO_OSMP_SRC_PROGRAM_TYPE_UNKNOWN = 0X000000FF,
316  VO_OSMP_SRC_PROGRAM_TYPE_MAX = 0xFFFFFFFF,
317  } VO_OSMP_SRC_PROGRAM_TYPE;
318 
319 
324  typedef enum
325  {
327  VO_OSMP_RTSP_CONNECTION_AUTOMATIC = 0X00000000,
329  VO_OSMP_RTSP_CONNECTION_TCP = 0X00000001,
331  VO_OSMP_RTSP_CONNECTION_UDP = 0X00000002,
333  VO_OSMP_RTSP_CONNECTION_MAX = 0xFFFFFFFF,
334  }VO_OSMP_RTSP_CONNECTION_TYPE;
335 
336 
341  typedef enum {
343  VO_OSMP_SRC_VERIFICATION_REQUEST_STRING = 0X00000000,
345  VO_OSMP_SRC_VERIFICATION_USERNAME_PASSWORD = 0X00000001,
347  VO_OSMP_SRC_VERIFICATION_CUSTOMER_DATA = 0X00000002,
349  VO_OSMP_SRC_VERIFICATION_MAX = 0xFFFFFFFF,
350  } VO_OSMP_SRC_VERIFICATION_FLAG;
351 
356  typedef enum
357  {
359  VO_OSMP_DEC_NONE = 0X00000000,
360 
362  VO_OSMP_DEC_VIDEO_SW = 0X00000001,
364  VO_OSMP_DEC_VIDEO_IOMX = 0X00000002,
366  VO_OSMP_DEC_VIDEO_MEDIACODEC = 0X00000004,
368  VO_OSMP_DEC_VIDEO_HARDWARE_AUTO_SELECTED = 0X00000100,
369 
371  VO_OSMP_DEC_AUDIO_SW = 0X00100000,
373  VO_OSMP_DEC_AUDIO_MEDIACODEC = 0X00200000,
374 
376  VO_OSMP_DECODER_TYPE_MAX = 0xFFFFFFFF,
377  } VO_OSMP_DECODER_TYPE;
378 
383  typedef enum {
385  VO_OSMP_MODULE_TYPE_SDK = 0x00000000,
387  VO_OSMP_MODULE_TYPE_DRM_VENDOR_A = 0x00000001,
389  VO_OSMP_MODULE_TYPE_SEI_POST_PROCESS_VIDEO = 0x00000002,
391  VO_OSMP_MODULE_TYPE_MAX = 0xFFFFFFFF,
392  } VO_OSMP_MODULE_TYPE;
393 
398  typedef enum {
400  VO_OSMP_FLAG_SEI_NONE = 0x00000000,
401 
403  VO_OSMP_FLAG_SEI_PIC_TIMING = 0x00000001,
404 
406  VO_OSMP_SEI_INFO_USER_DATA_UNREGISTERED = 0x00000002,
407 
409  VO_OSMP_FLAG_SEI_MAX = 0xFFFFFFFF
410 
411  } VO_OSMP_SEI_INFO_FLAG;
412 
413 
417  typedef enum
418  {
420  VO_OSMP_OUTPUT_CONTROL_TYPE_UNKNOWN = 0x00000001,
422  VO_OSMP_OUTPUT_CONTROL_TYPE_HDCP = 0x00000002,
424  VO_OSMP_OUTPUT_CONTROL_TYPE_ANTI_MIRRORING = 0x00000004,
426  VO_OSMP_OUTPUT_CONTROL_TYPE_CIT_DIGITAL = 0x00000008,
428  VO_OSMP_OUTPUT_CONTROL_TYPE_CIT_ANALOG = 0x00000010,
430  VOO_SMP_OUTPUT_CONTROL_TYPE_DOT = 0x00000020,
432  VO_OSMP_OUTPUT_CONTROL_TYPE_DWIGHT_CAVENDISH = 0x00000040,
434  VO_OSMP_OUTPUT_CONTROL_TYPE_ACP = 0x00000080,
436  VO_OSMP_OUTPUT_CONTROL_TYPE_CGMS_A = 0x00000100,
438  VO_OSMP_OUTPUT_CONTROL_TYPE_HDMI = 0x00000200,
440  VO_OSMP_OUTPUT_CONTROL_TYPE_ALL_DISPLAY = 0x00000400,
441 
443  VO_OSMP_OUTPUT_CONTROL_TYPE_MAX = 0xFFFFFFFF
444 
445  }VO_OSMP_OUTPUT_CONTROL_TYPE;
446 
451  typedef enum {
453  VO_OSMP_AUDIO_CODEC_UNKNOWN = 0x00000000,
455  VO_OSMP_AUDIO_CODEC_DTS = 0x00000016,
457  VO_OSMP_AUDIO_CODEC_DOLBY = 0x00000017,
458 
460  VO_OSMP_AUDIO_CODEC_MAX = 0xFFFFFFFF,
461  }VO_OSMP_AUDIO_CODEC_TYPE;
462 
466  typedef enum {
468  VO_OSMP_DISPLAY_NULL = 0x00000000,
470  VO_OSMP_DISPLAY_PLAYER = 0x00000001,
472  VO_OSMP_DISPLAY_SOURCE = 0x00000002,
474  VO_OSMP_DISPLAY_RENDER = 0x00000003,
475  } VO_OSMP_DISPLAY_TYPE;
476 
477  typedef struct {
478  short top;
479  short left;
480  short bottom;
481  short right;
482  }VO_OSMP_RECT;
483 
487  typedef enum {
489  VO_OSMP_AUDIO_EFFECT_ENDPOINT_SPEAKER = 0x00000001,
491  VO_OSMP_AUDIO_EFFECT_ENDPOINT_HEADPHONE = 0x00000002,
493  VO_OSMP_AUDIO_EFFECT_ENDPOINT_BLUETOOTH = 0x00000003,
495  VO_OSMP_AUDIO_EFFECT_ENDPOINT_OFF = 0x00000004,
496  } VO_OSMP_AUDIO_EFFECT_ENDPOINT_TYPE;
497 
498 
502  typedef enum {
504  VO_OSMP_DRM_KEY_EXPIRED_NO = 0x00000000,
506  VO_OSMP_DRM_KEY_EXPIRED_YES = 0x00000001,
508  VO_OSMP_DRM_KEY_EXPIRED_NOT_PREPARE = 0x00000002,
510  VO_OSMP_DRM_KEY_EXPIRED_ERROR = 0x00000003,
512  VO_OSMP_DRM_KEY_EXPIRED_MAX = 0xFFFFFFFF,
513  } VO_OSMP_DRM_KEY_EXPIRED_STATUS;
514 
515 
519  typedef enum {
521  VO_OSMP_HORIZONTAL_DEFAULT = 0x00000000,
523  VO_OSMP_LEFT = 0x00000001,
525  VO_OSMP_CENTER = 0x00000002,
527  VO_OSMP_RIGHT = 0x00000003,
528 
530  VO_OSMP_HORIZONTAL_MAX = 0xFFFFFFFF,
531  } VO_OSMP_HORIZONTAL;
532 
533 
537  typedef enum {
539  VO_OSMP_VERTICAL_DEFAULT = 0x00000000,
541  VO_OSMP_TOP = 0x00000001,
543  VO_OSMP_MIDDLE = 0x00000002,
545  VO_OSMP_BOTTOM = 0x00000003,
546 
548  VO_OSMP_VERTICAL_MAX = 0xFFFFFFFF,
549  } VO_OSMP_VERTICAL;
550 
554  typedef enum{
556  VO_OSMP_HDCP_NO_CHECK = 0x00000001,
558  VO_OSMP_HDCP_NON_COMPLIANT_DOWNRES = 0x00000002,
560  VO_OSMP_HDCP_NON_COMPLIANT_BLOCK = 0x00000003,
561 
563  VO_OSMP_HDCP_MAX = 0xFFFFFFFF,
564  }VO_OSMP_HDCP_POLICY;
565 
569  typedef enum {
571  VO_OSMP_PREF_STOP_KEEP_LAST_FRAME = 0x00000001,
573  VO_OSMP_PREF_NO_STOP_KEEP_LAST_FRAME = 0x00000002,
575  VO_OSMP_PREF_SEEK_PRECISE = 0x00000003,
577  VO_OSMP_PREF_NO_SEEK_PRECISE = 0x00000004,
579  VO_OSMP_PREF_NO_SELECT_AUDIO_SWITCH_IMMEDIATELY = 0x00000005,
581  VO_OSMP_PREF_SELECT_AUDIO_SWITCH_IMMEDIATELY = 0x00000006,
583  VO_OSMP_PREF_BA_START_DEFAULT = 0x00000007,
585  VO_OSMP_PREF_BA_START_FAST = 0x00000008,
587  VO_OSMP_PREF_DECODE_1ST_FRAME_NORMAL = 0x00000009,
589  VO_OSMP_PREF_DECODE_1ST_FRAME_ASAP = 0x0000000A,
590 
592  VO_OSMP_PREF_PLAYBACK_NO_STAY_AWAKE = 0x0000000B,
594  VO_OSMP_PREF_PLAYBACK_STAY_AWAKE = 0x0000000C,
595 
597  VO_OSMP_PREF_SEI_POST_PROCESS_LOW_RES_ENHANCEMENT_OFF = 0x0000000D,
599  VO_OSMP_PREF_SEI_POST_PROCESS_LOW_RES_ENHANCEMENT_ON = 0x0000000E,
600 
602  VO_OSMP_PREF_CONNECTION_IPV6_PRIOR = 0x00010001,
604  VO_OSMP_PREF_CONNECTION_IPV4_PRIOR = 0x00010002,
605 
606 
607 
609  VO_OSMP_PREF_MAX = 0xFFFFFFFF,
610 
611  } VO_OSMP_PREFERENCE;
612 
613 
614 #ifdef __cplusplus
615 } /* extern "C" */
616 #endif /* __cplusplus */
617 
618 #endif // __VO_OSMP_TYPE_H__
619 
620 
short left
Definition: VOOSMPType.h:479
Definition: VOOSMPType.h:477
short top
Definition: VOOSMPType.h:478
short bottom
Definition: VOOSMPType.h:480
short right
Definition: VOOSMPType.h:481