X-Git-Url: http://research.m1stereo.tv/gitweb?a=blobdiff_plain;f=src%2Fframework%2Fmlt_types.h;h=a0e377dad42163b2e253e720d3fc472cee366a28;hb=e6c03148e1dc3b0e363c9f304b3ed93fbc1a91a9;hp=baf1b9925b000e2ceb8565a2894674586d0ad546;hpb=fdff32bbd09ff13df3a3a12896690a4950b7d0d0;p=melted diff --git a/src/framework/mlt_types.h b/src/framework/mlt_types.h index baf1b99..a0e377d 100644 --- a/src/framework/mlt_types.h +++ b/src/framework/mlt_types.h @@ -23,12 +23,54 @@ #include -typedef double mlt_timecode; +#include "mlt_pool.h" + +typedef enum +{ + mlt_image_none = 0, + mlt_image_rgb24, + mlt_image_rgb24a, + mlt_image_yuv422, + mlt_image_yuv420p +} +mlt_image_format; + +typedef enum +{ + mlt_audio_none = 0, + mlt_audio_pcm +} +mlt_audio_format; + +typedef enum +{ + mlt_whence_relative_start, + mlt_whence_relative_current, + mlt_whence_relative_end +} +mlt_whence; + +typedef enum +{ + invalid_type, + unknown_type, + producer_type, + playlist_type, + tractor_type, + multitrack_type, + filter_type, + transition_type, + consumer_type, + field_type +} +mlt_service_type; + +typedef int32_t mlt_position; typedef struct mlt_frame_s *mlt_frame, **mlt_frame_ptr; typedef struct mlt_properties_s *mlt_properties; +typedef struct mlt_event_struct *mlt_event; typedef struct mlt_service_s *mlt_service; typedef struct mlt_producer_s *mlt_producer; -typedef struct mlt_manager_s *mlt_manager; typedef struct mlt_playlist_s *mlt_playlist; typedef struct mlt_multitrack_s *mlt_multitrack; typedef struct mlt_filter_s *mlt_filter; @@ -36,9 +78,20 @@ typedef struct mlt_transition_s *mlt_transition; typedef struct mlt_tractor_s *mlt_tractor; typedef struct mlt_field_s *mlt_field; typedef struct mlt_consumer_s *mlt_consumer; +typedef struct mlt_parser_s *mlt_parser; +typedef struct mlt_deque_s *mlt_deque; +typedef struct mlt_geometry_s *mlt_geometry; +typedef struct mlt_geometry_item_s *mlt_geometry_item; typedef void ( *mlt_destructor )( void * ); typedef char *( *mlt_serialiser )( void *, int length ); +#define MLT_SERVICE(x) ( ( mlt_service )( x ) ) +#define MLT_PRODUCER(x) ( ( mlt_producer )( x ) ) +#define MLT_MULTITRACK(x) ( ( mlt_multitrack )( x ) ) +#define MLT_PLAYLIST(x) ( ( mlt_playlist )( x ) ) +#define MLT_TRACTOR(x) ( ( mlt_tractor )( x ) ) +#define MLT_FILTER(x) ( ( mlt_filter )( x ) ) +#define MLT_TRANSITION(x) ( ( mlt_transition )( x ) ) #endif