X-Git-Url: https://git.sesse.net/?a=blobdiff_plain;f=src%2Fframework%2Fmlt_property.h;h=b6a0d167fd0c430430847fd2e33b297c5d7861b5;hb=993c546b6723726ec74a724bdac5833e58281cf0;hp=f33aa88213e3b3ff8349a729345961b9263b61c4;hpb=b1616107824f9c1b2e83c97d9a8d3b0cc700ef5f;p=mlt diff --git a/src/framework/mlt_property.h b/src/framework/mlt_property.h index f33aa882..b6a0d167 100644 --- a/src/framework/mlt_property.h +++ b/src/framework/mlt_property.h @@ -26,6 +26,17 @@ #include "mlt_types.h" +#if defined(__FreeBSD__) +/* This header has existed since 1994 and defines __FreeBSD_version below. */ +#include +#endif + +#if defined(__GLIBC__) || defined(__DARWIN__) || (__FreeBSD_version >= 900506) +#include +#else +typedef void* locale_t; +#endif + extern mlt_property mlt_property_init( ); extern int mlt_property_set_int( mlt_property self, int value ); extern int mlt_property_set_double( mlt_property self, double value ); @@ -33,14 +44,29 @@ extern int mlt_property_set_position( mlt_property self, mlt_position value ); extern int mlt_property_set_int64( mlt_property self, int64_t value ); extern int mlt_property_set_string( mlt_property self, const char *value ); extern int mlt_property_set_data( mlt_property self, void *value, int length, mlt_destructor destructor, mlt_serialiser serialiser ); -extern int mlt_property_get_int( mlt_property self ); -extern double mlt_property_get_double( mlt_property self ); -extern mlt_position mlt_property_get_position( mlt_property self ); +extern int mlt_property_get_int( mlt_property self, double fps, locale_t ); +extern double mlt_property_get_double( mlt_property self, double fps, locale_t ); +extern mlt_position mlt_property_get_position( mlt_property self, double fps, locale_t ); extern int64_t mlt_property_get_int64( mlt_property self ); extern char *mlt_property_get_string( mlt_property self ); +extern char *mlt_property_get_string_l( mlt_property self, locale_t ); extern void *mlt_property_get_data( mlt_property self, int *length ); extern void mlt_property_close( mlt_property self ); +extern void mlt_property_pass( mlt_property self, mlt_property that ); +extern char *mlt_property_get_time( mlt_property self, mlt_time_format, double fps, locale_t ); + +extern int mlt_property_interpolate( mlt_property self, mlt_property points[], double progress, double fps, locale_t locale, mlt_keyframe_type interp ); +extern double mlt_property_anim_get_double( mlt_property self, double fps, locale_t locale, int position, int length ); +extern int mlt_property_anim_get_int( mlt_property self, double fps, locale_t locale, int position, int length ); +extern char* mlt_property_anim_get_string( mlt_property self, double fps, locale_t locale, int position, int length ); +extern int mlt_property_anim_set_double( mlt_property self, double value, double fps, locale_t locale, int position, int length, mlt_keyframe_type keyframe_type ); +extern int mlt_property_anim_set_int( mlt_property self, int value, double fps, locale_t locale, int position, int length, mlt_keyframe_type keyframe_type ); +extern int mlt_property_anim_set_string( mlt_property self, const char *value, double fps, locale_t locale, int position, int length ); +extern mlt_animation mlt_property_get_animation( mlt_property self ); -extern void mlt_property_pass( mlt_property this, mlt_property that ); +extern int mlt_property_set_rect( mlt_property self, mlt_rect value ); +extern mlt_rect mlt_property_get_rect( mlt_property self, locale_t locale ); +extern int mlt_property_anim_set_rect( mlt_property self, mlt_rect value, double fps, locale_t locale, int position, int length, mlt_keyframe_type keyframe_type ); +extern mlt_rect mlt_property_anim_get_rect( mlt_property self, double fps, locale_t locale, int position, int length ); #endif