MLT 7.30.0
mlt_producer.c File Reference

abstraction for all producer services More...

#include "mlt_producer.h"
#include "mlt_factory.h"
#include "mlt_frame.h"
#include "mlt_log.h"
#include "mlt_parser.h"
#include "mlt_profile.h"
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/stat.h>
#include <sys/types.h>
#include <time.h>
#include <unistd.h>

Data Structures

struct  clip_references
 private to mlt_producer_s, used by mlt_producer_optimise() More...
struct  track_info
 private to mlt_producer_s, used by mlt_producer_optimise() More...

Functions

static int32_t days_from_0 (int32_t year)
static int32_t days_from_1970 (int32_t year)
static int32_t days_from_1jan (int32_t year, int32_t month, int32_t day)
static time_t internal_timegm (struct tm const *t)
static int intersect (clip_references *a, clip_references *b)
static int32_t is_leap (int32_t year)
static void mlt_producer_property_changed (mlt_service owner, mlt_producer self, mlt_event_data)
static void mlt_producer_service_changed (mlt_service owner, mlt_producer self)
static int on_end_multitrack (mlt_parser self, mlt_multitrack object)
static int on_end_track (mlt_parser self)
static int on_start_multitrack (mlt_parser self, mlt_multitrack object)
static int on_start_producer (mlt_parser self, mlt_producer object)
static int on_start_track (mlt_parser self)
static track_infopeek (mlt_parser self)
static track_infopop (mlt_parser self)
static int producer_get_frame (mlt_service self, mlt_frame_ptr frame, int index)
static int push (mlt_parser self, int multitrack, int track, int position)

Detailed Description

abstraction for all producer services

See also
mlt_producer_s

Copyright (C) 2003-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

Function Documentation

◆ days_from_0()

int32_t days_from_0 ( int32_t year)
inlinestatic

◆ days_from_1970()

int32_t days_from_1970 ( int32_t year)
inlinestatic

◆ days_from_1jan()

int32_t days_from_1jan ( int32_t year,
int32_t month,
int32_t day )
inlinestatic

◆ internal_timegm()

time_t internal_timegm ( struct tm const * t)
inlinestatic

◆ intersect()

int intersect ( clip_references * a,
clip_references * b )
static

◆ is_leap()

int32_t is_leap ( int32_t year)
inlinestatic

◆ mlt_producer_property_changed()

void mlt_producer_property_changed ( mlt_service owner,
mlt_producer self,
mlt_event_data  )
static

◆ mlt_producer_service_changed()

void mlt_producer_service_changed ( mlt_service owner,
mlt_producer self )
static

◆ on_end_multitrack()

int on_end_multitrack ( mlt_parser self,
mlt_multitrack object )
static

◆ on_end_track()

int on_end_track ( mlt_parser self)
static

◆ on_start_multitrack()

int on_start_multitrack ( mlt_parser self,
mlt_multitrack object )
static

◆ on_start_producer()

int on_start_producer ( mlt_parser self,
mlt_producer object )
static

◆ on_start_track()

int on_start_track ( mlt_parser self)
static

◆ peek()

track_info * peek ( mlt_parser self)
static

◆ pop()

track_info * pop ( mlt_parser self)
static

◆ producer_get_frame()

int producer_get_frame ( mlt_service self,
mlt_frame_ptr frame,
int index )
static

◆ push()

int push ( mlt_parser self,
int multitrack,
int track,
int position )
static