Bot releases are visible (Hide)
mlt_property_is_color()
mlt_property_is_numeric()
mlt_property_is_rect()
mlt_keyframe_smooth_loose
- ~=
(same as old mlt_keyframe_smooth
- Unity Catmull-Rom spline)mlt_keyframe_smooth_natural
- $=
(Centripetal Catmull-Rom spline with natural slope)mlt_keyframe_smooth_tight
- -=
(Centripetal Catmull-Rom spline with 0 slope)mlt_keyframe_sinusoidal_in
- a=
mlt_keyframe_sinusoidal_out
- b=
mlt_keyframe_sinusoidal_in_out
- c=
mlt_keyframe_quadratic_in
- d=
mlt_keyframe_quadratic_out
- e=
mlt_keyframe_quadratic_in_out
- f=
mlt_keyframe_cubic_in
- g=
mlt_keyframe_cubic_out
- h=
mlt_keyframe_cubic_in_out
- i=
mlt_keyframe_quartic_in
- j=
mlt_keyframe_quartic_out
- k=
mlt_keyframe_quartic_in_out
- l=
mlt_keyframe_quintic_in
- m=
mlt_keyframe_quintic_out
- n=
mlt_keyframe_quintic_in_out
- o=
mlt_keyframe_exponential_in
- p=
mlt_keyframe_exponential_out
- q=
mlt_keyframe_exponential_in_out
- r=
mlt_keyframe_circular_in
- s=
mlt_keyframe_circular_out
- t=
mlt_keyframe_circular_in_out
- u=
mlt_keyframe_back_in
- v=
mlt_keyframe_back_out
- w=
mlt_keyframe_back_in_out
- x=
mlt_keyframe_elastic_in
- y=
mlt_keyframe_elastic_out
- z=
mlt_keyframe_elastic_in_out
- A=
mlt_keyframe_bounce_in
- B=
mlt_keyframe_bounce_out
- C=
mlt_keyframe_bounce_in_out
- D=
mlt_service_transition
in Mlt::Producer()
C++ constructor.rotoscoping
filter crash on image with height = 0.qtblend
transition requesting an image of 0 width or height.rtaudio
consumer.createdate
keyword deletes preceeding text in dynamictext
filter.opacity
property to filters that use qtext
:
dynamictext
gpstext
qtext
timer
fade_video
, fade_audio
, and fade_color
properties to autofade
filter.frei0r.measure_pr0be
frei0r.measure_pr0file
frei0r.tehroxx0r
frei0r.alpha0ps_alpha0ps
frei0r.alpha0ps_alphagrad
frei0r.alpha0ps_alphaspot
frei0r.denoise_hqdn3d
avformat
producer with consumer deinterlacer=yadif.qimage
producer color if consumer color_range=pc pix_fmt=yuv444p.ten_bit/ProRes 422
avformat preset produced ProRes 444.YouTube
avformat preset did not output high profile with some hardware encoders.mlt_color
transparent black as "#00000000" when the property was set using an integer or mlt_color
.mlt_chain_set_source()
would always fetch a frame from the producer even if it has "meta.media.frame_rate_num" and "meta.media.frame_rate_den" properties making things slow.Mlt::Chain
leaking memory.blank
producer to the core
module.gpstext
filter:
#gps_cadence#
#gps_grade_degrees#
#gps_grade_percentage#
#gps_temperature#
color_style
s to the gpsgraphic
filter:
legend_unit
property of gpsgraphic
filter:
mmin
or m/min
ftmin
or ft/min
dynamictext
filter:
#basename#
#filename#
filter_audioseam.yml
.avlink
link to the avformat
module for FFmpeg filters that can benefit from future frames such as adeclick
.preserve_alpha
property to the box_blur
filter.qt6
and glaxnimate-qt6
modules.rotate
property in avformat
producer with interlace video.astream
and vstream
properties to avformat producer. Unlike audio_index
and video_index
are absolute indices across the entire array of streams regardless their type, these new 0-based properties are relative to the type audio or video. For example, astream=1 is the second audio stream.avformat
producer's mlt_producer_probe
virtual function.glaxnimate
module to version 0.5.4.sdl2
consumer crashing with the Linux radeonsi_dri driver and showing only all black with the Linux nvidia
driver.avformat
consumer FLAC
preset to use the flac
format.melt
Shift+H and Shift+L keyboard shortcuts when the SDL2 window has focus.mlt_audio_free_data()
.meta.playlist.clip_position
and meta.playlist.clip_length
properties to mlt_playlist
.mlt_frame_get_audio
fails on mlt_audio_none
.audioseam
autofade
vidstab
filter on image format change.qtext
filter on Qt 6.rescale
filter.kdenlivetitle
producer.count
producer.frei0r
module.deinterlace
link was added to invalid producer in xml
producer.kdenlivetitle
pango
qimage
qtext
avformat
producers that only indicateqimage
producer on Qt 6.speed_map
in timeremap
link.movit
module.avformat
producer's deallocation function for AVCodecContext
.qtblend
and frei0r.cairoblend
transitions.avformat
producer seek_threshold
default to 64.ebur128
filter to version 1.2.6.chain_normalizers.ini
to the data directory.mlt_deinterlacer_name()
mlt_deinterlacer_id()
mlt_link_filter_init()
mlt_link_filter_metadata()
mlt_cache_put_frame_audio()
mlt_cache_put_frame_image()
mlt_frame_clone_audio()
mlt_frame_clone_image()
mlt_link_filter_init()
.mlt_deinterlacer
with:
mlt_deinterlacer_none
mlt_deinterlacer_onefield
mlt_deinterlacer_linearblend
mlt_deinterlacer_weave
mlt_deinterlacer_bob
mlt_deinterlacer_greedy
mlt_deinterlacer_yadif_nospatial
mlt_deinterlacer_yadif
mlt_deinterlacer_bwdif
mlt_deinterlacer_estdif
mlt_deinterlacer_invalid
mlt_image_format
:
mlt_image_yuv420p10
mlt_image_yuv444p10
mlt_consumer
property prefill
is greater than 1.mlt_events
and mlt_consumer
.mlt_frame_clone()
with movit and the mask_start
filter.swresample
and resample
linksmelt
count
producerglaxnimate
git submodule to version 0.5.3.avdeinterlace
(default) and xine/deinterlace
links.multi
and qglsl
consumers.movit.convert
filter.avformat
producer:
mlt_producer_probe()
.color_range
or force_full_range
sometimes not working.autorotate
property not working with a chain.mute_on_pause
property.kdenlivetitle
producer.'movit.rect
property animation.crop
filter when mlt_image_yuv420p
requested.audiolevel
volume
loudness
opencv.tracker
filter.algo
to the opencv.tracker
filter.fix_background_alpha
to the luma
transition.-query links
to melt
command line.avformat
consumer presets for 10-bit video:
clang-format
target to CMake and reformatted all code.Debug
build type and gcc.mlt_producer_probe()
Mlt::Producer::probe()
chain_loader.ini
configuration data file:
mlt_chain_attach_normalizers()
Mlt::Chain::attach_normalizers()
locale_t
to mlt_locale_t
to avoid redefinition on some systems (e.g. clang/llvm on win32).mlt_event_data_thread
as documented.mlt_image_format_planes()
for mlt_image_yuv420p
.swresample
link to the avformat module.resample
link to the resample module.rotoscoping
filter when request image size different than profile.timeremap
link breaking crop
filter.avformat
producer when the video start time is not 0.avformat
producer.AVDISCARD_ALL
on disinterested streams in avformat
producer.avformat
producer.filtergraph
property to the avformat
producer.movit.convert
's CPU image converter in mlt_tractor
and mlt_frame_clone()
.movit
module with mlt_chain.qtblend
filter transform.movit.luma
transition.qglsl
consumer to use an OpenGL core profile version 3.2 context to make it compatible with recent Movit versions.glaxnimate
git submodule to version 0.5.2.xml
producer incorrectly adds a path prefix to a consumer
producer.opencv.tracker
filter with mlt_chain
.avformat
consumer.speed_map
property to the timeremap
link.loader
producer not injecting the consumer
producer when a xml
producer changes the frame rate.consumer
producer.loader-nogl
producer to the core module based on loader
but prevents adding movit
-based filters.count
producer to take an optional string argument with the name of a loader producer.yadif
deinterlace not working in a mlt_chain.deinterlace
filter methods on x86-64 architecture.MOD_GLAXNIMATE_QT6
.This version is released soon after 7.10.0 to fix a couple of major new bugs in the popular qtblend
and frei0r.cairoblend
transitions. It also includes new color animation APIs with sensible interpolation!
mlt_property_set_color()
mlt_property_get_color()
mlt_property_anim_set_color()
mlt_property_anim_get_color()
mlt_properties_anim_set_color()
mlt_properties_anim_get_color()
Mlt::Properties::anim_get_color(char const*, int, int)
Mlt::Properties::anim_set(char const*, mlt_color, int, int, mlt_keyframe_type)
frei0r
(any color parameter in any frei0r plugin)chroma
chroma_hold
audiolevelgraph
audiospectrum
audiowaveform
gpsgraphic
gpstext
qtcrop
qtext
discontinuity_reset
property to dynamic_loudness
filter.qtblend
transition not blending with an opaque rgba image.frei0r.cairoblend
when threads
property not set.melt
when the XML contains a consumer
element but no profile information.rtaudio
consumer.The highlight of this version is support for Qt 6.
MLT_REPOSITORY_DENY
environment variable to skip loading a module (colon delimited list of file names without extension, for example "libmltqt").mlt_image_fill_checkerboard()
mlt_image_fill_white()
creation_time
property when creating a chain.mlt_image_rgba_opaque()
.mlt_property.c
.MOD_QT6
and BUILD_TESTS_WITH_QT6
CMake options.qt
module for now and not glaxnimate
(still a work-in-progress).qimage
producer.gps_graphic
filter to the qt
module.format
property in each producer's get_frame method to indicate the producer's default/preferred mlt_image_format to facilitate an optimization in the qtblend
transition when the B frame is opaque and has the same aspect ratio.qt
module.qimage
filter.qtblend
transition has incorrect scaling with consumer scaling.qtblend
transition.luma
transition not updated when resource
property changes.alpha_operation
property to the shape
filter.glaxnimate
git submodule to version 0.5.1.lines
filter in oldfilm
regression in v7.6.0.dbpeak
property to the audiolevel
filter in dB.affine
that animates the rect
property.gdk
module on MinGW.mlt.php
.This highlight of this version is a new glaxnimate producer to render 2D vector art and animation.
mlt_frame_get_alpha_size()
and refactored code to use it.mlt_service_apply_filters()
.glaxnimate
producer to the glaxnimate module.glaxnimate
producer: json, lottie, rawr, tgs.qimage
producer: avif, heic, heif, jxl.color_range
when using the multi
consumer.results
in the loudness
filter.image_mode=blend
in the timeremap
link.swscale
filter with odd size YUV image.choppy
filter may result in black frames with transitions.avfilter
producer for a bug in glibc with _FORTIFY_SOURCE=3
.This version adds image slice-threading to many filters and full support for full range color. All inputs are normalized to and processed at
the range specified by the consumer property color_range
that defaults to tv/mpeg (limited).
Mlt::Animation::next_key()
and previous_key()
with error checking.moduledir
and mltdatadir
variables in the pkg-config file.setlocale()
in mlt_factory_init()
(moved to melt
option -setlocale
).mlt_properties_copy()
and Mlt::Properties::copy()
.mlt_frame
s.deinterlacer
to replace deprecated deinterlace_method
.mlt_slices_size_slice()
helper function.frame_rate_num
or frame_rate_den
in mlt_consumer
.mlt_slices
.audiolevelgraph
video filter to the qt
module.segment_gap
to the audiospectrum
video filter.segments
property to the audiolevelgraph
and audiospectrum
filters.qimage
producer.avformat
producer if the rotate
property is set after first frame is fetched.invert_mask
property to the shape
video filter.avformat
producer to normalize frame rates very close to integer broadcast frames 24/1.001, 30/1.001, and 60/1.001.chroma
and chroma_hold
filters' key
property to a proper type.avformat
producer (with FFmpeg v5)swsscale
(with FFmpeg v5)lift_gamma_gain
shape
charcoal
vignette
wave
threshold
tcolor
sepia
mirror
invert
grain
lines
spot_remover
oldfilm
filter.box_blur
filter to the core module and deprecated the boxblur` filter in the kdenlive module.avfilter.gblur
filter.kdenlivetitle
producer.avformat
when playing in reverse.avformat
producer.avformat
produceravcolor_space
brightness
resize
luma
transitionmovit.convert
charcoal
invert
shape
avformat
producer.avfilter.fspp
filter.dumb-init
to the docker (no need to remember docker run --init
).Published by ddennedy almost 3 years ago
This main highlight of this version is property animation for avfilter!
Mlt::Filter::Filter(Mlt::Filter*)
Mlt::Link::Link(Mlt::Link*)
Mlt::Link::Link(Mlt::Service&)
Mlt::Link::Link(Mlt::Link&)
Mlt::Link::Link(Mlt::Link const&)
Mlt::Link::operator=(Mlt::Link const&)
Mlt::Service::Service(Mlt::Service*)
mlt_animation_serialize_cut_tf()
and mlt_animation_serialize_cut()
to include a trailing keyframe value.avfilter
filters.rotate
property to avformat
producer to override orientation.jackrack
module to silence false LADSPA plugin loading errors.oldfilm
filter when using preview scaling.timeremap
link distorts audio when speed is zero.gpstext
filter.avformat
producer regression in version 7.2.0.matte
transition.This is the first major maintenance release for the new major version 7 rendering it much more production ready. Plus there are a few nice new features.
mlt_properties
as a child of mlt_properties
mlt_property_set_properties()
mlt_property_get_properties()
mlt_properties_set_properties()
mlt_properties_get_properties()
mlt_properties_get_properties_at)(
Mlt::Properties::set()
Mlt::Properties::get_props()
Mlt::Properties::get_props_at()
mlt_transition
upon inserting or removing a track.mlt_profile
until needed in mlt_chain
creation.gpstext
that is similar to dynamictext
based on data in a GPX file.timer
filter.avformat
consumer.opencv_tracker
filter's blur
property.center_bias
of crop
filter not working with use_profile
.mlt_image_format
renames after change in v7.0.0. This primarily affected presets and service metadata.timeremap
link.loader
producer always come first in list.shape
and affine
filters together on color
producer.vidstab
file fails to open.vidstab
filter to save its file in ASCII text mode.decklink
module.avformat
producer.audiowaveform
filter.mask_start
with shape
.dynamictext
filter when used with timeremap
link.timer
filter's new speed
property interaction with start
delay.avformat
producer.timeremap
link.avformat
module with FFmpeg git beyond v4.4 with many deprecations removed.brightness
filter.opencv_tracker
filter.opencv_tracker
on shape_width
= 0.opencv_tracker
filter.composite
transition leaking left border of an image on the right side on uneven width.typerwriter
filter.RELOCATABLE
CMake option for Linux or BSD build.This version is just build fixes for the most immediate problems with the somewhat new but exclusive build system in v7.
DESTDIR
environment variable when creating melt symlink.This is a major new version that breaks API to add a major new feature to the framework: retiming. This is accomplished through new classes mlt_chain
and mlt_link
. And since we are breaking API we decided to clean house by removing deprecations and switching the build system over entirely to CMake. For more information see our migration guide. More documentation about the new chain and link classes is still pending.
mlt_chain
and Mlt::Chain
classes.mlt_link
and Mlt::Link
classes.link
value to service type
in the service metadata schema.animation
parameter attribute to the service metadata schema.mlt_animation_shift_frame()
and Mlt::Animation::shift_frames()
.mlt_animation_get_string()
.mlt_image
and Mlt::Image
classes.timewarp
speed higher than 23x.mlt_audio_silence()
.mlt_image_opengl
.mlt_events
with new mlt_event_data
APIs.mlt_geometry
APIs.mlt_image_rgb24a
as mlt_image_rgba
.mlt_image_rgb24
to mlt_image_rgb
.mlt_image_glsl
to mlt_image_movit
.mlt_image_glsl_texture
to mlt_image_opengl_texture
.mlt_frame::get_alpha_mask()
.mlt_frame_get_alpha_mask()
.mlt_sample_calculator
mlt_sample_calculator_to_now
mlt_channel_layout_name
mlt_channel_layout_id
mlt_channel_layout_channels
mlt_channel_layout_default
mlt_slices_init
mlt_slices_close
mlt_slices_run
mlt_playlist_move_region
Mlt::Playlist::move_region
mlt_profile_from_producer()
.timeremap
link to the core module with animatable map
property.chain
and link
XML elements to xml
module.avformat
producer.dv
gtk2
(not gdk)kino
linsys
lumas
motion_est
swfdec
videostab
data_feed
filterdata_show
filterregion
filter and transitionsdl_image
mlt_image
class:
brightness
imageconver
mirror
spot_remover
audiowave
filter.jackrack
module without JACK to get onlystart
and end
properties for the following filters:
brightness
panner
boxblur
wave
volume
font
property from pango
producer.avformat
producer.resample
filter to have less artifacts and use less memory.-chain
and -link
options to melt
command line.This is the last planned release of major version 6. Version 7 will be released soon and introduce some minor API breakage while removing deprecations. The main new feature in this version is hardware-accellerated decoding! However, this is a basic implementation: It always returns the uncompressed video to the CPU memory with no pipelining to filters. Even when coupled with hardware encoding in the avformat consumer it must transfer the video. Also, there is no automatic software/CPU fallback and no resource management.
hwaccel
query string parameter to the avformat
producer. It accepts the following values:hwaccel_device
query string parameter to the avformat
producer. This is only used with vaapi (device path) and cuda, d3d11va, or dxva (number).frei0r
. This only applies when threads
=0 and only works with some frei0r plugins that you must decide yourself.kdenlivetitle
producer.avformat
producer.avformat
producer.avformat
producer making it possible to support AV1 decoding.strobe
fitler that periodically makes the alpha channel transparent.typewriter
text filter (currently only works with the kdenlivetitle producer).rbpitch
.jack
, rtaudio
, sdl_audio
, and sdl2_audio
consumers.swresample
filter.timer
filter.affine
with a luma
transition.qimage
producer (regression in v6.22.0).brightness
filter misbehaves on alpha
> 1.flac
format file does not set its duration in the avformat
consumer.rbpitch
filter.ttl
in the qimage
producer.qtext
filters and frame threading.start
and end
properties on the following (use property animation instead):
BUILD_TESTING
, which defaults off.plusgpl
datadir.AV1
encoding preset.This version is mostly fixes plus a few new filters.
property-changed
event on mlt_properties_pass_list
.pillar_echo
filter to the plus module.qtcrop
filter to the qt module.html
, resource
, overflow-y
, and _hide
properties to the qtext
filter for rich text.choppy
to the core module.brightness
filter.mlt_image_format=rgb24a
with avformat
consumer.timewarp
producer on sources with non-integer frame rates.avformat
producer.crop
filter with large center_bias
value when use_profile
is 1.freeze
filter.qimage
producer.affine
rect and geomety properties.rbpitch
filter.avformat
producer.sdl
(v1) module to the CMake build.webm
avformat consumer preset.This version fixes bugs associated with the preview scaling introduced in the
previous version.
Framework
mlt_properties_exists()
and Mlt::Properties::property_exists()
.mlt_audio_new()
mlt_audio_close()
mlt_audio_set_values()
mlt_audio_get_values()
mlt_audio_alloc_data()
mlt_audio_calculate_size()
mlt_audio_plane_count()
mlt_audio_plane_size()
mlt_audio_get_planes()
mlt_audio_shrink()
mlt_audio_reverse()
mlt_audio_copy()
mlt_audio_calculate_frame_samples()
mlt_audio_calculate_samples_to_position()
mlt_audio_channel_layout_name()
mlt_audio_channel_layout_id()
mlt_audio_channel_layout_channels()
mlt_audio_channel_layout_default()
Mlt::Audio
C++ class with:
Mlt::Audio::Audio()
Mlt::Audio::Audio(mlt_audio_s*)
Mlt::Audio::~Audio()
Mlt::Audio::data()
Mlt::Audio::set_data(void*)
Mlt::Audio::frequency()
Mlt::Audio::set_frequency(int)
Mlt::Audio::format()
Mlt::Audio::set_format(mlt_audio_format)
Mlt::Audio::samples()
Mlt::Audio::set_samples(int)
Mlt::Audio::channels()
Mlt::Audio::set_channels(int)
Mlt::Audio::layout()
Mlt::Audio::set_layout(mlt_channel_layout)
mlt_consumer_stop()
.Modules
ox
and oy
properties incorrect with preview scaling.affine
rotoscoping
filter.gtk2
module to a new gdk
module:
gtk2
module and no longer enabled by default.linsys
(DVEO SDI) module.sample_fmt
property to the avformat
consumer.mix
transition.text
and qtext
filtersbigsh0t
, distort0r
, and medians
frei0r plugins.meta.media.%d.stream.projection
property the avformat
producer.luma
transition and affine
filter with frame-threading.title="Anonymous Submission"
in xml
consumer.opencv.tracker
filter.composite
transition if luma file fails to load.opengl
module to prevent asserts in Movit.avformat
producer to accept a '?' in argument/resource propertyaffine
filter to be mutable.audio_index
property in the avformat
producer.resample
filter to more resiliant to frequency changes.sdl2_audio
and rtaudio
consumers.timer
filter.timewarp
producer.rbpitch
filter and timewarp
producer
consumer.avformat
consumer to set AVOption color_primaries
based on thecrop
filter.avformat
producer.qimage
to use Qt's internal orientation detection instead of libexif.swresample
and resample
filters - also reduces audio clicks.qimage
producer.libx264rgb
in avformat
consumer.avfilter
s that have the filename
option.avfilter
s dropping the alpha channel: smartblur, vaguedenoiser.resize
filter.affine
filter inside a transition was always nearest neighborlift_gamma_gain
filter to use round values up.Other
-group
applies to an implicit consumer.-quiet
option to melt (implies -silent
but more so).Slide-Deck-H264
Slide-Deck-HEVC
intermediate/MPEG-2
intermediate/MPEG-4
lossless/H.264
docker run
with the --init
option.This version adds support for low resolution preview scaling and adds a
module based on librubberband for audio pitch-shifting.
An official docker image is now available at
https://hub.docker.com/repository/docker/mltframework/melt
Framework
Modules
Other
This version is a general maintenance release with a bunch of fixes, improvements, and additions.
Framework
mlt_consumer
, mlt_deque
, and mlt_property
.LC_ALL
environmant variable on Windows.mlt_factory_init()
not working on Windows.mlt_service_identify()
not reliable in some use cases.Filter()
Filter( const Filter &filter )
Filter& operator=( const Filter &filter )
Producer( const Producer &producer )
Producer& operator=( const Producer &producer )
Properties( const Properties &properties )
Properties& operator=( const Properties &properties )
Service( const Service &service )
Service& operator=( const Service &service )
Transition()
Transition( const Transition &transition )
Transition& operator=( const Transition &transition )
mlt_luma_map_init
mlt_luma_map_new
mlt_luma_map_render
mlt_luma_map_from_pgm
mlt_luma_map_from_yuv422
Modules
rotoscoping
filter.color
producer.sdl
and sdl2
consumers.avformat
producer.movit.flip
filter to the opengl module.consumer
xml element.multi
consumer.avfilter
fails if the image size changes.timer
filter.wave
filter.avformat
producer.avformat
producer.text
filter not working with pango
.dynamictext
with pango
.avfilter
for filters that need position info.avfilter.subtitles
not using the source position.analyze
property to vidstab
filter. When set, analysis only startsaffine
filter with the shape
filter.AVCodecContext.field_order
.avformat
producer to not use the rescale.interp
frame property.reacale.interp
== "nearest", it would relax seeking. Now, seekavfilter
.ladspa
filter on channel count mismatch.composite
and luma
transitions to use mlt_luma_map
.pgm
producer and shape
filter to use mlt_luma_map
.lumas
module to use mlt_luma_map
.lumas
module is now disabled by default and must be explicitly enabled.threshold
filter.cairoblend_mode
filter to the frei0r module to affect afrei0r.cairoblend
transition used to composite/blend tracks.connection_type
: x11 or drmdriver
kernel_driver
timewarp
producer with a colon in the filename.xml
producer.qtblend
filter to not process alpha if no transparency.background_color
property to the qtblend
filter.opencv.tracker
incorrect behavior on cut clips.opencv.tracker
to store absolute frame numbers.opencv.tracker
.alpha_over
property to luma
transition. This addresses a behaviornoimagecache
not working in the avformat
producer.Other
-repository
option to the melt command.Mlt::Event
.