Select one of the symbols to view example projects that use it.
 
Outline
#define __GUI_AVI_H
#include "GUI.h"
AVISTATUS
#define AVI_RIFF_ID
#define AVI_AVI_ID
#define AVI_LIST_ID
#define AVI_HDRL_ID
#define AVI_MOVI_ID
#define AVI_STRL_ID
#define AVI_AVIH_ID
#define AVI_STRH_ID
#define AVI_STRF_ID
#define AVI_STRD_ID
#define AVI_VIDS_STREAM
#define AVI_AUDS_STREAM
#define AVI_VIDS_FLAG
#define AVI_AUDS_FLAG
#define AVI_FORMAT_MJPG
GUI_AVI_HANDLE
GUI_AVI_FUNC
tHW_JPEG_Init
tHW_JPEG_DeInit
tHW_JPEG_Draw
GUI_AVI_PARAM
#define PACKED_STRUCT
#define PACKED_STRUCT
AVI_INFO
AVI_HEADER
FRAME_HEADER
LIST_HEADER
AVIH_HEADER
STRH_HEADER
BMP_HEADER
AVIRGBQUAD
STRF_BMPHEADER
STRF_WAVHEADER
AVI_CONTEXT
#define MAKEWORD
#define GUI_AVI_JPEG_INIT
#define GUI_AVI_JPEG_DRAW
#define GUI_AVI_JPEG_DEINIT
#define GUI_AVI_NOTIFICATION_PREDRAW
#define GUI_AVI_NOTIFICATION_POSTDRAW
#define GUI_AVI_NOTIFICATION_START
#define GUI_AVI_NOTIFICATION_STOP
#define GUI_AVI_NOTIFICATION_DELETE
#define GUI_AVI_NOTIFICATION_EOF
GUI_AVI_INFO
GUI_AVI_Create(GUI_AVI_FUNC *);
GUI_AVI_CreateEx(GUI_GET_DATA_FUNC *, GUI_AVI_FUNC *);
GUI_AVI_Start(GUI_AVI_HANDLE, void *, unsigned long);
GUI_AVI_Stop(GUI_AVI_HANDLE);
GUI_AVI_Delete(GUI_AVI_HANDLE);
GUI_AVI_GetFrameIndex(GUI_AVI_HANDLE);
GUI_AVI_GetInfo(GUI_AVI_HANDLE, GUI_AVI_INFO *);
GUI_AVI_GotoFrame(GUI_AVI_HANDLE, unsigned long);
GUI_AVI_Pause(GUI_AVI_HANDLE);
GUI_AVI_Play(GUI_AVI_HANDLE);
GUI_AVI_Show(GUI_AVI_HANDLE, int, int, int);
GUI_AVI_SetDevFunc(GUI_AVI_HANDLE, int, void (*)(void));
GUI_AVI_SelectMode(GUI_AVI_HANDLE, int);
GUI_AVI_SetBuffers(GUI_AVI_HANDLE, unsigned char *, unsigned short, unsigned char *, unsigned short);
Files
loading (3/10)...
SourceVuSTM32 Libraries and SamplesSTemWinModules/videoplayer/GUI_AVI.h
 
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
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
/** ****************************************************************************** * @file GUI_AVI.h * @author MCD Application Team * @brief Header for GUI_AVI.c file ****************************************************************************** * @attention * * Copyright (c) 2017 STMicroelectronics. * All rights reserved. * * This software is licensed under terms that can be found in the LICENSE file * in the root directory of this software component. * If no LICENSE file comes with this software, it is provided AS-IS. * ****************************************************************************** *//* ... */ /* Define to prevent recursive inclusion -------------------------------------*/ #ifndef __GUI_AVI_H #define __GUI_AVI_H #include "GUI.h" #if defined(__cplusplus) extern "C" { /* Make sure we have C-declarations in C++ programs */ #endif /* Exported types ------------------------------------------------------------*/ typedef enum { AVI_OK =0, AVI_RIFF_ERR, AVI_AVI_ERR, AVI_LIST_ERR, AVI_HDRL_ERR, AVI_AVIH_ERR, AVI_STRL_ERR, AVI_STRH_ERR, AVI_STRF_ERR, AVI_MOVI_ERR, AVI_FORMAT_ERR, AVI_STREAM_ERR, ...}AVISTATUS; #define AVI_RIFF_ID 0x46464952 #define AVI_AVI_ID 0x20495641 #define AVI_LIST_ID 0x5453494C #define AVI_HDRL_ID 0x6C726468 #define AVI_MOVI_ID 0x69766F6D #define AVI_STRL_ID 0x6C727473 #define AVI_AVIH_ID 0x68697661 #define AVI_STRH_ID 0x68727473 #define AVI_STRF_ID 0x66727473 #define AVI_STRD_ID 0x64727473 #define AVI_VIDS_STREAM 0x73646976 #define AVI_AUDS_STREAM 0x73647561 #define AVI_VIDS_FLAG 0x6463 #define AVI_AUDS_FLAG 0x7762 #define AVI_FORMAT_MJPG 0x47504A4D 15 defines typedef GUI_HMEM GUI_AVI_HANDLE; typedef void GUI_AVI_FUNC(GUI_AVI_HANDLE havi, int Notification, U32 CurrentFrame); typedef void tHW_JPEG_Init(void); typedef void tHW_JPEG_DeInit(void); typedef U32 tHW_JPEG_Draw (const void * pFileData, U32 DataSize,U32 x0, U32 y0); typedef struct { const U8 * pFileData; I32 FileSize; ...} GUI_AVI_PARAM; #if defined(__GNUC__) #define PACKED_STRUCT struct __packed #else #define PACKED_STRUCT __packed struct #endif typedef PACKED_STRUCT { U32 SecPerFrame; U32 TotalFrame; U32 Width; U32 Height; U32 SampleRate; U16 Channels; U16 AudioBufSize; U16 AudioType; U16 StreamID; U32 StreamSize; U8* VideoFLAG; U8* AudioFLAG; ...}AVI_INFO; typedef struct { U32 RiffID; U32 FileSize; U32 AviID; ...}AVI_HEADER; typedef struct { U32 FrameID; U32 FrameSize; ...}FRAME_HEADER; typedef struct { U32 ListID; U32 BlockSize; U32 ListType; ...}LIST_HEADER; typedef struct { U32 BlockID; U32 BlockSize; U32 SecPerFrame; U32 MaxByteSec; U32 PaddingGranularity; U32 Flags; U32 TotalFrame; U32 InitFrames; U32 Streams; U32 RefBufSize; U32 Width; U32 Height; U32 Reserved[4]; ...}AVIH_HEADER; typedef struct { U32 BlockID; U32 BlockSize; U32 StreamType; U32 Handler; U32 Flags; U16 Priority; U16 Language; U32 InitFrames; U32 Scale; U32 Rate; U32 Start; U32 Length; U32 RefBufSize; U32 Quality; U32 SampleSize; struct { U16 Left; U16 Top; U16 Right; U16 Bottom; ...}Frame; ...}STRH_HEADER; typedef struct { U32 BmpSize; U32 Width; U32 Height; U16 Planes; U16 BitCount; U32 Compression; U32 SizeImage; U32 XpixPerMeter; U32 YpixPerMeter; U32 ClrUsed; U32 ClrImportant; ...}BMP_HEADER; typedef struct { U8 rgbBlue; U8 rgbGreen; U8 rgbRed; U8 rgbReserved; ...}AVIRGBQUAD; typedef struct { U32 BlockID; U32 BlockSize; BMP_HEADER bmiHeader; AVIRGBQUAD bmColors[1]; ...}STRF_BMPHEADER; typedef struct { U32 BlockID; U32 BlockSize; U16 FormatTag; U16 Channels; U32 SampleRate; U32 BaudRate; U16 BlockAlign; U16 Size; ...}STRF_WAVHEADER; typedef struct { AVI_INFO aviInfo; U32 CurrentImage; U32 TimeNextFrame; int xPos, yPos; int DoLoop; GUI_GET_DATA_FUNC * pfGetData; void * pParam; const U8 * pVideoBuffer; U32 VideoBufferSize; const U8 * pAudioBuffer; U32 AudioRdPtr; U32 AudioWdPtr; U32 AudioBufferSize; U32 FileSize; GUI_AVI_FUNC * pfNotify; GUI_TIMER_HANDLE hTimer; U8 SkipMode; U8 AudioSync; tHW_JPEG_Draw * pfDraw; tHW_JPEG_Init * pfJpegInit; tHW_JPEG_Draw * pfJpegDraw; tHW_JPEG_DeInit * pfJpegDeInit; ...} AVI_CONTEXT; #define MAKEWORD(ptr) (U16)(((U16)*((U8*)(ptr))<<8)|(U16)*(U8*)((ptr)+1)) #define MAKEDWORD(ptr) (U32)(((U16)*(U8*)(ptr)|(((U16)*(U8*)(ptr+1))<<8)|\ (((U16)*(U8*)(ptr+2))<<16)|(((U16)*(U8*)(ptr+3))<<24))) ... /********************************************************************* * * AVI callbacks ID *//* ... */ #define GUI_AVI_JPEG_INIT 0 #define GUI_AVI_JPEG_DRAW 1 #define GUI_AVI_JPEG_DEINIT 2 /********************************************************************* * * AVI file support *//* ... */ #define GUI_AVI_NOTIFICATION_PREDRAW 0 /* Immediately before frame is drawn */ #define GUI_AVI_NOTIFICATION_POSTDRAW 1 /* Immediately after a frame is drawn */ #define GUI_AVI_NOTIFICATION_START 2 /* Send when start playing a movie */ #define GUI_AVI_NOTIFICATION_STOP 3 /* avi has stopped */ #define GUI_AVI_NOTIFICATION_DELETE 4 /* avi has been deleted */ #define GUI_AVI_NOTIFICATION_EOF 5 /* end of avi file */ 11 defines typedef struct { int xSize; /* X-size of images */ int ySize; /* Y-size of images */ int msPerFrame; /* Default duration of 1 frame */ U32 NumFrames; /* Number of frames */ ...} GUI_AVI_INFO; GUI_AVI_HANDLE GUI_AVI_Create (GUI_AVI_FUNC * pfNotify); GUI_AVI_HANDLE GUI_AVI_CreateEx (GUI_GET_DATA_FUNC * pfGetData, GUI_AVI_FUNC * pfNotify) ; int GUI_AVI_Start (GUI_AVI_HANDLE havi, void * pParam, U32 FileSize); int GUI_AVI_Stop (GUI_AVI_HANDLE havi); int GUI_AVI_Delete (GUI_AVI_HANDLE havi); U32 GUI_AVI_GetFrameIndex(GUI_AVI_HANDLE havi); int GUI_AVI_GetInfo (GUI_AVI_HANDLE havi, GUI_AVI_INFO * pInfo); int GUI_AVI_GotoFrame (GUI_AVI_HANDLE havi, U32 Frame); int GUI_AVI_Pause (GUI_AVI_HANDLE havi); int GUI_AVI_Play (GUI_AVI_HANDLE havi); int GUI_AVI_Show (GUI_AVI_HANDLE havi, int xPos, int yPos, int DoLoop); void GUI_AVI_SetDevFunc (GUI_AVI_HANDLE havi, int IdFunc, void (* pDriverFunc)(void)); int GUI_AVI_SelectMode (GUI_AVI_HANDLE havi, int Mode); void GUI_AVI_SetBuffers (GUI_AVI_HANDLE havi, U8 *pVidBuff, U16 VidBuffSize, U8 *pAudBuff, U16 AudBuffSize); #if defined(__cplusplus) }extern "C" { ... } #endif /* ... */ #endif /* ifdef __GUI_AVI_H */
Details
Show:
from
Types: Columns:
This file uses the notable symbols shown below. Click anywhere in the file to view more details.