MLT 7.8.0
mlt_multitrack.h
Go to the documentation of this file.
1
23#ifndef MLT_MULITRACK_H
24#define MLT_MULITRACK_H
25
26#include "mlt_producer.h"
27
32{
35};
36
37typedef struct mlt_track_s *mlt_track;
38
48{
52 int size;
53 int count;
54};
55
56#define MLT_MULTITRACK_PRODUCER( multitrack ) ( &( multitrack )->parent )
57#define MLT_MULTITRACK_SERVICE( multitrack ) MLT_PRODUCER_SERVICE( MLT_MULTITRACK_PRODUCER( multitrack ) )
58#define MLT_MULTITRACK_PROPERTIES( multitrack ) MLT_SERVICE_PROPERTIES( MLT_MULTITRACK_SERVICE( multitrack ) )
59
64extern int mlt_multitrack_connect( mlt_multitrack self, mlt_producer producer, int track );
65extern int mlt_multitrack_insert( mlt_multitrack self, mlt_producer producer, int track );
66extern int mlt_multitrack_disconnect( mlt_multitrack self, int track );
72
73#endif
74
struct mlt_track_s * mlt_track
Definition: mlt_multitrack.h:37
abstraction for all producer services
int32_t mlt_position
Definition: mlt_types.h:181
mlt_whence
The relative time qualifiers.
Definition: mlt_types.h:147
Event class.
Definition: mlt_events.c:61
Multitrack class.
Definition: mlt_multitrack.h:48
void mlt_multitrack_close(mlt_multitrack self)
Close this instance and free its resources.
Definition: mlt_multitrack.c:648
mlt_producer mlt_multitrack_producer(mlt_multitrack self)
Get the producer associated to this multitrack.
Definition: mlt_multitrack.c:83
mlt_position mlt_multitrack_clip(mlt_multitrack self, mlt_whence whence, int index)
Determine the clip point.
Definition: mlt_multitrack.c:468
int size
Definition: mlt_multitrack.h:52
int mlt_multitrack_insert(mlt_multitrack self, mlt_producer producer, int track)
Insert a producer to a given track.
Definition: mlt_multitrack.c:254
int mlt_multitrack_count(mlt_multitrack self)
Get the number of tracks.
Definition: mlt_multitrack.c:359
mlt_multitrack mlt_multitrack_init()
Construct and initialize a new multitrack.
Definition: mlt_multitrack.c:45
mlt_track * list
Definition: mlt_multitrack.h:51
mlt_properties mlt_multitrack_properties(mlt_multitrack self)
Get the properties associated this multitrack.
Definition: mlt_multitrack.c:109
struct mlt_producer_s parent
We're extending producer here.
Definition: mlt_multitrack.h:50
int mlt_multitrack_disconnect(mlt_multitrack self, int track)
Remove the N-th track.
Definition: mlt_multitrack.c:312
int count
Definition: mlt_multitrack.h:53
void mlt_multitrack_refresh(mlt_multitrack self)
Initialize position related information.
Definition: mlt_multitrack.c:120
mlt_producer mlt_multitrack_track(mlt_multitrack self, int track)
Get an individual track as a producer.
Definition: mlt_multitrack.c:375
mlt_service mlt_multitrack_service(mlt_multitrack self)
Get the service associated this multitrack.
Definition: mlt_multitrack.c:96
int mlt_multitrack_connect(mlt_multitrack self, mlt_producer producer, int track)
Connect a producer to a given track.
Definition: mlt_multitrack.c:196
Producer abstract service class.
Definition: mlt_producer.h:70
Properties class.
Definition: mlt_properties.h:40
Service abstract base class.
Definition: mlt_service.h:58
Track class used by mlt_multitrack_s.
Definition: mlt_multitrack.h:32
mlt_event event
Definition: mlt_multitrack.h:34
mlt_producer producer
Definition: mlt_multitrack.h:33