MLT 6.26.0
mlt_producer.h
Go to the documentation of this file.
1
23#ifndef MLT_PRODUCER_H
24#define MLT_PRODUCER_H
25
26#include "mlt_service.h"
27#include "mlt_filter.h"
28#include "mlt_profile.h"
29
70{
73
82
87 void *local;
88 void *child;
89};
90
91/*
92 * Public final methods
93 */
94
95#define MLT_PRODUCER_SERVICE( producer ) ( &( producer )->parent )
96#define MLT_PRODUCER_PROPERTIES( producer ) MLT_SERVICE_PROPERTIES( MLT_PRODUCER_SERVICE( producer ) )
97
98extern int mlt_producer_init( mlt_producer self, void *child );
102extern int mlt_producer_seek( mlt_producer self, mlt_position position );
103extern int mlt_producer_seek_time( mlt_producer self, const char* time );
107extern int mlt_producer_set_speed( mlt_producer self, double speed );
109extern double mlt_producer_get_fps( mlt_producer self );
118extern int mlt_producer_attach( mlt_producer self, mlt_filter filter );
119extern int mlt_producer_detach( mlt_producer self, mlt_filter filter );
121extern mlt_producer mlt_producer_cut( mlt_producer self, int in, int out );
129void mlt_producer_set_creation_time( mlt_producer self, int64_t creation_time );
130
131#endif
abstraction for all filter services
double mlt_producer_get_speed(mlt_producer self)
mlt_position mlt_producer_get_playtime(mlt_producer self)
char * mlt_producer_frame_time(mlt_producer self, mlt_time_format)
int mlt_producer_attach(mlt_producer self, mlt_filter filter)
mlt_position mlt_producer_get_out(mlt_producer self)
int mlt_producer_set_speed(mlt_producer self, double speed)
int mlt_producer_seek(mlt_producer self, mlt_position position)
mlt_position mlt_producer_frame(mlt_producer self)
int mlt_producer_is_cut(mlt_producer self)
int mlt_producer_detach(mlt_producer self, mlt_filter filter)
mlt_position mlt_producer_get_in(mlt_producer self)
mlt_producer mlt_producer_cut(mlt_producer self, int in, int out)
int mlt_producer_clear(mlt_producer self)
mlt_filter mlt_producer_filter(mlt_producer self, int index)
mlt_producer mlt_producer_cut_parent(mlt_producer self)
int mlt_producer_optimise(mlt_producer self)
char * mlt_producer_get_length_time(mlt_producer self, mlt_time_format)
int mlt_producer_seek_time(mlt_producer self, const char *time)
int mlt_producer_is_blank(mlt_producer self)
mlt_producer mlt_producer_new(mlt_profile)
mlt_properties mlt_producer_properties(mlt_producer self)
int mlt_producer_is_mix(mlt_producer self)
mlt_service mlt_producer_service(mlt_producer self)
void mlt_producer_close(mlt_producer self)
double mlt_producer_get_fps(mlt_producer self)
int mlt_producer_set_in_and_out(mlt_producer self, mlt_position in, mlt_position out)
int64_t mlt_producer_get_creation_time(mlt_producer self)
mlt_position mlt_producer_position(mlt_producer self)
void mlt_producer_prepare_next(mlt_producer self)
void mlt_producer_set_creation_time(mlt_producer self, int64_t creation_time)
mlt_position mlt_producer_get_length(mlt_producer self)
int mlt_producer_init(mlt_producer self, void *child)
video output definition
interface declaration for all service classes
mlt_time_format
The time string formats.
Definition mlt_types.h:110
int32_t mlt_position
Definition mlt_types.h:163
struct mlt_frame_s ** mlt_frame_ptr
pointer to Frame object
Definition mlt_types.h:188
struct mlt_producer_s * mlt_producer
pointer to Producer object
Definition mlt_types.h:193
void(* mlt_destructor)(void *)
pointer to destructor function
Definition mlt_types.h:212
Filter abstract service class.
Definition mlt_filter.h:40
Producer abstract service class.
Definition mlt_producer.h:70
mlt_destructor close
the destructor virtual function
Definition mlt_producer.h:84
void * local
instance object
Definition mlt_producer.h:87
int(* get_frame)(mlt_producer, mlt_frame_ptr, int)
Get a frame of data (virtual function).
Definition mlt_producer.h:81
struct mlt_service_s parent
A producer is a service.
Definition mlt_producer.h:72
void * close_object
the object supplied to the close virtual function
Definition mlt_producer.h:85
void * child
the object of a subclass
Definition mlt_producer.h:88
Profile class.
Definition mlt_profile.h:35
Properties class.
Definition mlt_properties.h:37
Service abstract base class.
Definition mlt_service.h:58
void * child
the object of a subclass
Definition mlt_service.h:75