MLT
7.32.0
|
Property Animation class definition. More...
#include "mlt_animation.h"
#include "mlt_factory.h"
#include "mlt_profile.h"
#include "mlt_properties.h"
#include "mlt_tokeniser.h"
#include <float.h>
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
Data Structures | |
struct | animation_node_s |
private animation list node More... | |
struct | mlt_animation_s |
Property Animation class. More... | |
Typedefs | |
typedef struct animation_node_s * | animation_node |
animation list node pointer More... | |
Enumerations | |
enum | ease_type { ease_in , ease_out , ease_inout } |
Easing functions. More... | |
Functions | |
static double | back_interpolate (double y1, double y2, double t, ease_type ease) |
static double | bounce_interpolate (double y1, double y2, double t, ease_type ease) |
static double | circular_interpolate (double y1, double y2, double t, ease_type ease) |
static mlt_time_format | default_time_format () |
static double | elastic_interpolate (double y1, double y2, double t, ease_type ease) |
static double | exponential_interpolate (double y1, double y2, double t, ease_type ease) |
static int | interpolate_item (mlt_animation_item item, mlt_animation_item p[], double fps, mlt_locale_t locale) |
static double | interpolate_value (double x0, double y0, double x1, double y1, double x2, double y2, double x3, double y3, double t, mlt_keyframe_type type) |
static const char * | keyframe_type_to_str (mlt_keyframe_type t) |
static void | mlt_animation_clear_string (mlt_animation self) |
static double | power_interpolate (double y1, double y2, double t, double order, ease_type ease) |
static double | sinusoidal_interpolate (double y1, double y2, double t, ease_type ease) |
static mlt_keyframe_type | str_to_keyframe_type (const char *s) |
Variables | |
struct { | |
const char * s | |
mlt_keyframe_type t | |
} | keyframe_type_map [] |
Keyframe type to string mapping. More... | |
Property Animation class definition.
Copyright (C) 2004-2023 Meltytech, LLC
This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version.
This library is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details.
You should have received a copy of the GNU Lesser General Public License along with this library; if not, write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
typedef struct animation_node_s* animation_node |
animation list node pointer
enum ease_type |
Easing functions.
The following easing functions are based on Robert Penner's Easing Functions http://robertpenner.com/easing/
Enumerator | |
---|---|
ease_in | |
ease_out | |
ease_inout |
|
inlinestatic |
|
inlinestatic |
|
inlinestatic |
|
static |
|
inlinestatic |
|
inlinestatic |
|
static |
|
inlinestatic |
|
static |
|
static |
|
inlinestatic |
|
inlinestatic |
|
static |
struct { ... } keyframe_type_map[] |
Keyframe type to string mapping.
Used for serialization and deserialization of keyframe types
const char* s |