1 #ifndef MPLAYER_CMEDIASAMPLE_H 2 #define MPLAYER_CMEDIASAMPLE_H 3 4 #include "interfaces.h" 5 #include "guids.h" 6 7 typedef struct CMediaSample CMediaSample; 8 struct CMediaSample 9 { 10 IMediaSample_vt* vt; 11 DECLARE_IUNKNOWN(); 12 IMemAllocator* all; 13 int size; 14 int actual_size; 15 char* block; 16 char* own_block; 17 int isPreroll; 18 int isSyncPoint; 19 int isDiscontinuity; 20 LONGLONG time_start; 21 LONGLONG time_end; 22 AM_MEDIA_TYPE media_type; 23 int type_valid; 24 void ( *SetPointer) (CMediaSample* This, char* pointer); 25 void ( *ResetPointer) (CMediaSample* This); // FIXME replace with Set & 0 26 }; 27 28 CMediaSample* CMediaSampleCreate(IMemAllocator* allocator, int size); 29 // called from allocator 30 void CMediaSample_Destroy(CMediaSample* This); 31 32 #endif /* MPLAYER_CMEDIASAMPLE_H */ 33