7 #pragma once // NOLINT(build/header_guard)
10 #if __cplusplus >= 201103L || (defined(_MSC_VER) && _MSC_VER >= 1800)
18 #define KEY_PLAYER_REAL_TIME_STREAM_ANALYZE_DURATION "analyze_duration"
24 #define KEY_PLAYER_ENABLE_AUDIO "enable_audio"
30 #define KEY_PLAYER_ENABLE_VIDEO "enable_video"
36 #define KEY_PLAYER_ENABLE_SEARCH_METADATA "enable_search_metadata"
42 #define KEY_PLAYER_SEI_FILTER_TYPE "set_sei_filter_type"
49 static const uint8_t kMaxCharBufferLength = 50;
54 enum MEDIA_PLAYER_STATE {
57 PLAYER_STATE_IDLE = 0,
63 PLAYER_STATE_OPEN_COMPLETED,
72 PLAYER_STATE_PLAYBACK_COMPLETED,
75 PLAYER_STATE_PLAYBACK_ALL_LOOPS_COMPLETED,
81 PLAYER_STATE_PAUSING_INTERNAL = 50,
84 PLAYER_STATE_STOPPING_INTERNAL,
87 PLAYER_STATE_SEEKING_INTERNAL,
90 PLAYER_STATE_GETTING_INTERNAL,
93 PLAYER_STATE_NONE_INTERNAL,
96 PLAYER_STATE_DO_NOTHING_INTERNAL,
99 PLAYER_STATE_FAILED = 100,
105 enum MEDIA_PLAYER_ERROR {
108 PLAYER_ERROR_NONE = 0,
111 PLAYER_ERROR_INVALID_ARGUMENTS = -1,
114 PLAYER_ERROR_INTERNAL = -2,
117 PLAYER_ERROR_NO_RESOURCE = -3,
120 PLAYER_ERROR_INVALID_MEDIA_SOURCE = -4,
123 PLAYER_ERROR_UNKNOWN_STREAM_TYPE = -5,
126 PLAYER_ERROR_OBJ_NOT_INITIALIZED = -6,
129 PLAYER_ERROR_CODEC_NOT_SUPPORTED = -7,
132 PLAYER_ERROR_VIDEO_RENDER_FAILED = -8,
135 PLAYER_ERROR_INVALID_STATE = -9,
138 PLAYER_ERROR_URL_NOT_FOUND = -10,
141 PLAYER_ERROR_INVALID_CONNECTION_STATE = -11,
144 PLAYER_ERROR_SRC_BUFFER_UNDERFLOW = -12,
147 PLAYER_ERROR_INTERRUPTED = -13,
154 enum MEDIA_PLAYER_PLAYBACK_SPEED {
157 PLAYBACK_SPEED_ORIGINAL = 100,
160 PLAYBACK_SPEED_50_PERCENT = 50,
163 PLAYBACK_SPEED_75_PERCENT = 75,
166 PLAYBACK_SPEED_125_PERCENT = 125,
169 PLAYBACK_SPEED_150_PERCENT = 150,
172 PLAYBACK_SPEED_200_PERCENT = 200,
179 enum MEDIA_STREAM_TYPE {
182 STREAM_TYPE_UNKNOWN = 0,
185 STREAM_TYPE_VIDEO = 1,
188 STREAM_TYPE_AUDIO = 2,
191 STREAM_TYPE_SUBTITLE = 3,
198 enum MEDIA_PLAYER_EVENT {
201 PLAYER_EVENT_SEEK_BEGIN = 0,
204 PLAYER_EVENT_SEEK_COMPLETE = 1,
207 PLAYER_EVENT_SEEK_ERROR = 2,
210 PLAYER_EVENT_VIDEO_PUBLISHED = 3,
213 PLAYER_EVENT_AUDIO_PUBLISHED = 4,
216 PLAYER_EVENT_AUDIO_TRACK_CHANGED = 5,
219 PLAYER_EVENT_BUFFER_LOW = 6,
222 PLAYER_EVENT_BUFFER_RECOVER = 7,
225 PLAYER_EVENT_FREEZE_START = 8,
228 PLAYER_EVENT_FREEZE_STOP = 9,
295 enum MEDIA_PLAYER_METADATA_TYPE {
298 PLAYER_METADATA_TYPE_UNKNOWN = 0,
301 PLAYER_METADATA_TYPE_SEI = 1,