MLT 7.8.0
mlt_animation.h
Go to the documentation of this file.
1
23#ifndef MLT_ANIMATION_H
24#define MLT_ANIMATION_H
25
26#include "mlt_types.h"
27#include "mlt_property.h"
28
43{
44 int is_key;
45 int frame;
48};
52extern int mlt_animation_parse(mlt_animation self, const char *data, int length, double fps, locale_t locale );
53extern int mlt_animation_refresh( mlt_animation self, const char *data, int length );
55extern void mlt_animation_set_length( mlt_animation self, int length );
56extern int mlt_animation_parse_item( mlt_animation self, mlt_animation_item item, const char *data );
57extern int mlt_animation_get_item( mlt_animation self, mlt_animation_item item, int position );
59extern int mlt_animation_remove( mlt_animation self, int position );
61extern int mlt_animation_next_key( mlt_animation self, mlt_animation_item item, int position );
62extern int mlt_animation_prev_key( mlt_animation self, mlt_animation_item item, int position );
63extern char *mlt_animation_serialize_cut_tf( mlt_animation self, int in, int out, mlt_time_format );
64extern char *mlt_animation_serialize_cut( mlt_animation self, int in, int out );
68extern int mlt_animation_key_get( mlt_animation self, mlt_animation_item item, int index );
71extern int mlt_animation_key_set_frame( mlt_animation self, int index, int frame );
72extern void mlt_animation_shift_frames( mlt_animation self, int shift );
73extern const char* mlt_animation_get_string( mlt_animation self );
74
75#endif
76
struct mlt_animation_item_s * mlt_animation_item
pointer to an animation item
Definition: mlt_animation.h:49
Property class declaration.
char * locale_t
Definition: mlt_property.h:41
Provides forward definitions of all public types.
mlt_time_format
The time string formats.
Definition: mlt_types.h:127
mlt_keyframe_type
Interpolation methods for animation keyframes.
Definition: mlt_types.h:137
Animation class.
Definition: mlt_animation.h:43
int is_key
a boolean of whether this is a key frame or an interpolated item
Definition: mlt_animation.h:44
int frame
the frame number for this instance of the property
Definition: mlt_animation.h:45
mlt_keyframe_type keyframe_type
the method of interpolation for this key frame
Definition: mlt_animation.h:47
mlt_property property
the property for this point in time
Definition: mlt_animation.h:46
Property Animation class.
Definition: mlt_animation.c:49
const char * mlt_animation_get_string(mlt_animation self)
Get the cached serialization string.
Definition: mlt_animation.c:981
char * mlt_animation_serialize_tf(mlt_animation self, mlt_time_format time_format)
Serialize the animation (with time format).
Definition: mlt_animation.c:792
mlt_animation mlt_animation_new()
Create a new animation object.
Definition: mlt_animation.c:65
int mlt_animation_parse_item(mlt_animation self, mlt_animation_item item, const char *value)
Parse a string representing an animation keyframe=value.
Definition: mlt_animation.c:329
int mlt_animation_prev_key(mlt_animation self, mlt_animation_item item, int position)
Get the keyfame at the position or the next preceding.
Definition: mlt_animation.c:597
int mlt_animation_key_set_frame(mlt_animation self, int index, int frame)
Change the frame number for the N-th keyframe.
Definition: mlt_animation.c:931
char * mlt_animation_serialize_cut_tf(mlt_animation self, int in, int out, mlt_time_format time_format)
Serialize a cut of the animation (with time format).
Definition: mlt_animation.c:632
void mlt_animation_set_length(mlt_animation self, int length)
Set the length of the animation.
Definition: mlt_animation.c:304
void mlt_animation_close(mlt_animation self)
Close the animation and deallocate all of its resources.
Definition: mlt_animation.c:881
void mlt_animation_shift_frames(mlt_animation self, int shift)
Shift the frame value for all nodes.
Definition: mlt_animation.c:961
int mlt_animation_parse(mlt_animation self, const char *data, int length, double fps, locale_t locale)
Parse a string representing an animation.
Definition: mlt_animation.c:184
int mlt_animation_insert(mlt_animation self, mlt_animation_item item)
Insert an animation item.
Definition: mlt_animation.c:470
int mlt_animation_key_get(mlt_animation self, mlt_animation_item item, int index)
Get an animation item for the N-th keyframe.
Definition: mlt_animation.c:846
int mlt_animation_get_length(mlt_animation self)
Get the length of the animation.
Definition: mlt_animation.c:276
int mlt_animation_key_count(mlt_animation self)
Get the number of keyframes.
Definition: mlt_animation.c:825
char * mlt_animation_serialize(mlt_animation self)
Serialize the animation.
Definition: mlt_animation.c:813
int mlt_animation_key_set_type(mlt_animation self, int index, mlt_keyframe_type type)
Change the interpolation for the N-th keyframe.
Definition: mlt_animation.c:899
int mlt_animation_remove(mlt_animation self, int position)
Remove the keyframe at the specified position.
Definition: mlt_animation.c:540
int mlt_animation_refresh(mlt_animation self, const char *data, int length)
Conditionally refresh the animation if it is modified.
Definition: mlt_animation.c:258
int mlt_animation_get_item(mlt_animation self, mlt_animation_item item, int position)
Load an animation item for an absolute position.
Definition: mlt_animation.c:395
void mlt_animation_interpolate(mlt_animation self)
Re-interpolate non-keyframe nodes after a series of insertions or removals.
Definition: mlt_animation.c:77
char * mlt_animation_serialize_cut(mlt_animation self, int in, int out)
Serialize a cut of the animation.
Definition: mlt_animation.c:778
int mlt_animation_next_key(mlt_animation self, mlt_animation_item item, int position)
Get the keyfame at the position or the next following.
Definition: mlt_animation.c:567
Property class.
Definition: mlt_property.c:64