The easiest way to try out and learn MLT is by downloading
Shotcut.
You can download it from GitHub.
The highlight of this release is support for FFmpeg 7 and Ambsonic audio.
mlt_repository.MltPushConsumer C++ class.locale.h on any GNU libc platform.spatialaudio module with filters:
ambisonic-decoderambisonic-encoderpixbuf produceropencv_tracker filterdynamictext filterqimage produceravformat producer.distort property not working in movit.rect filter.multi consumer.dynamic_loudness filter maximizing audio gain.mono filter.WAYLAND_DISPLAY to detect a graphical session in the qt
and glaxnimate modules.wave filter distorts if wave = 1 with preview scaling.meta.media.%u.codec.layout property to avformat producer.channel_layout property on the frame for the noise and tone
audio producers.outline maximum for the text and dynamictext filters.-chain from melt.fopen().You can download it from GitHub.
The highlight of this release is support animation easing functions via new keyframe types. Also, new versions of the smooth keyframe type is added that avoids overshoots and cusps.
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:
dynamictextgpstextqtexttimerfade_video, fade_audio, and fade_color properties to autofade
filter.frei0r.measure_pr0befrei0r.measure_pr0filefrei0r.tehroxx0rfrei0r.alpha0ps_alpha0psfrei0r.alpha0ps_alphagradfrei0r.alpha0ps_alphaspotfrei0r.denoise_hqdn3davformat 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.You can download it from GitHub.
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_styles to the gpsgraphic filter:
legend_unit property of gpsgraphic filter:
mmin or m/minftmin or ft/mindynamictext 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.You can download it from GitHub.
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.audioseamautofadevidstab 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.kdenlivetitlepangoqimageqtextavformat producers that only indicate
on their container format and not on frames such as Ut Video in Matroska.qimage 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.You can download it from GitHub.
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_nonemlt_deinterlacer_onefieldmlt_deinterlacer_linearblendmlt_deinterlacer_weavemlt_deinterlacer_bobmlt_deinterlacer_greedymlt_deinterlacer_yadif_nospatialmlt_deinterlacer_yadifmlt_deinterlacer_bwdifmlt_deinterlacer_estdifmlt_deinterlacer_invalidmlt_image_format:
mlt_image_yuv420p10mlt_image_yuv444p10mlt_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 linksmeltcount 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.audiolevelvolumeloudnessopencv.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.