News

v7.20.0 released

Oct 1, 2023

You can download it from GitHub.

Framework

  • Fixed “blank” in a playlist does not have audio normalization filters.
  • Fixed serializing mlt_color transparent black as “#00000000” when the property was set using an integer or mlt_color.
  • Fixed 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.
  • Fixed Mlt::Chain leaking memory.

Modules

  • Added a blank producer to the core module.
  • Added keywords to gpstext filter:
    • #gps_cadence#
    • #gps_grade_degrees#
    • #gps_grade_percentage#
    • #gps_temperature#
  • Added some color_styles to the gpsgraphic filter:
    • 10 = color by speed (max 100 km/h)
    • 11 = color by grade (max 90 degrees)
    • 12 = color by grade (max 20 degrees)
  • Added more unit formats to legend_unit property of gpsgraphic filter:
    • mmin or m/min
    • ftmin or ft/min
  • Added keywords to dynamictext filter:
    • #basename#
    • #filename#
  • Fixed installing filter_audioseam.yml.
  • Added an avlink link to the avformat module for FFmpeg filters that can benefit from future frames such as adeclick.
  • Added the preserve_alpha property to the box_blur filter.
  • Fixed loading service metadata for the qt6 and glaxnimate-qt6 modules.
  • Fixed a crash when changing the rotate property in avformat producer with interlace video.
  • Add 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.
  • Fixed a possible crash in the avformat producer’s mlt_producer_probe virtual function.
  • Updated the glaxnimate module to version 0.5.4.
  • Fixed the sdl2 consumer crashing with the Linux radeonsi_dri driver and showing only all black with the Linux nvidia driver.

Other

  • Fix compiling on Android (not supported by the core developers).
  • Changed the avformat consumer FLAC preset to use the flac format.
  • Fixed the melt Shift+H and Shift+L keyboard shortcuts when the SDL2 window has focus.

v7.18.0 released

Jul 28, 2023

You can download it from GitHub.

Framework

  • Added mlt_audio_free_data().
  • Added meta.playlist.clip_position and meta.playlist.clip_length properties to mlt_playlist.
  • Fixed mlt_frame_get_audio fails on mlt_audio_none.

Modules

  • Added two audio filters to core module to be used on a playlist/track:
    • audioseam
    • autofade
  • Fixed a crash in vidstab filter on image format change.
  • Fixed font weight in qtext filter on Qt 6.
  • Fixed yuv420p not working in rescale filter.
  • Fixed text shadow outline in kdenlivetitle producer.
  • Fixed crash when changing the profile with count producer.
  • Fixed constructor corruption in frei0r module.
  • Fixed deinterlace link was added to invalid producer in xml producer.
  • Fixed producers not indicating progressive scan video:
    • kdenlivetitle
    • pango
    • qimage
    • qtext
  • Fixed video scan mode detection in avformat producers that only indicate on their container format and not on frames such as Ut Video in Matroska.
  • Fixed very large images in qimage producer on Qt 6.
  • Fixed seeking on clips that use speed_map in timeremap link.
  • Fixed a color level problem with sRGB inputs in the movit module.
  • Fixed avformat producer’s deallocation function for AVCodecContext.
  • Fixed field order of qtblend and frei0r.cairoblend transitions.
  • Changed the avformat producer seek_threshold default to 64.
  • Updated ebur128 filter to version 1.2.6.

v7.16.0 released

May 7, 2023

You can download it from GitHub.

Framework

  • Added a chain_normalizers.ini to the data directory.
  • Added New C functions to support deinterlacer links:
    • 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()
  • Added support for loading a filter as a link via mlt_link_filter_init().
  • Added enum 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
  • Added new 10-bit YUV members to enum mlt_image_format:
    • mlt_image_yuv420p10
    • mlt_image_yuv444p10
  • Fixed a deadlock and improved quality of start of playback when mlt_consumer property prefill is greater than 1.
  • Fixed a couple of data races in mlt_events and mlt_consumer.
  • Fixed a crash in mlt_frame_clone() with movit and the mask_start filter.

Modules

  • Fixed regressions in version 7.14.0:
    • memory and thread count usage in swresample and resample links
    • automatic profile support in melt
    • crash in count producer
  • Upgraded the glaxnimate git submodule to version 0.5.3.
  • Added avformat/avdeinterlace (default) and xine/deinterlace links.
  • Fixed deinterlacing in the multi and qglsl consumers.
  • Added 10-bit video support to movit.convert filter.
  • Several things in the avformat producer:
    • Fixed artifacts decoding raw FLAC audio.
    • Fixed a potential crash on mlt_producer_probe().
    • Fixed seeking on music with album art.
    • Fixed possible infinite loop on end-of-file.
    • Fixed a potential deadlock.
    • Fixed chroma bleeding on interlaced yuv420p.
    • Fixed color_range or force_full_range sometimes not working.
    • Fixed autorotate property not working with a chain.
    • Added audio caching.
    • Deprecated the mute_on_pause property.
  • Fixed FFmpeg version 6 compilation error.
  • Fixed rendering the text outline in kdenlivetitle producer.
  • Fixed 'movit.rect property animation.
  • Fixed corrupt video in crop filter when mlt_image_yuv420p requested.
  • Fixed possible null pointer crashes in some audio filters:
    • audiolevel
    • volume
    • loudness
  • Fixed a possible roi assert crash in opencv.tracker filter.
  • Added support for “Nano” algo to the opencv.tracker filter.
  • Added the property fix_background_alpha to the luma transition.

Other

  • Added -query links to melt command line.
  • Added avformat consumer presets for 10-bit video:
    • AV1
    • DNxHR-HQ
    • FFV1
    • ProRes 422
    • ProRes 444
    • ProRes HQ
    • x264-high10
    • x265-main10
  • Added a clang-format target to CMake and reformatted all code.
  • Added warnings as errors with some exceptions to CMake with Debug build type and gcc.
  • Fixed numerous warnings throughout the code.

v7.14.0 released

Mar 6, 2023

You can download it from GitHub.

Framework

  • Added functions to get detailed info about a producer more directly (without having to get a frame and get its image in the case of avformat producer, for example):
    • mlt_producer_probe()
    • Mlt::Producer::probe()
  • Added functions to add normalizer links to chains (based on a chain_loader.ini configuration data file:
    • mlt_chain_attach_normalizers()
    • Mlt::Chain::attach_normalizers()
  • Changed locale_t to mlt_locale_t to avoid redefinition on some systems (e.g. clang/llvm on win32).
  • Fixed the value provided with event “consumer-thread-join” to be mlt_event_data_thread as documented.
  • Fixed mlt_image_format_planes() for mlt_image_yuv420p.

Modules

  • Added a swresample link to the avformat module.
  • Added a resample link to the resample module.
  • Fixed compatibility of avformat module with FFmpeg version 6.
  • Fixed rotoscoping filter when request image size different than profile.
  • Fixed timeremap link breaking crop filter.
  • Fixed audio/video sync in avformat producer when the video start time is not 0.
  • Improved seeking on a WMA audio file in avformat producer.
  • Optimization to set AVDISCARD_ALL on disinterested streams in avformat producer.
  • Added separate demuxing thread in avformat producer.
  • Added filtergraph property to the avformat producer.
  • Fixed filter movit.convert’s CPU image converter in mlt_tractor and mlt_frame_clone().
  • Fixed using movit module with mlt_chain.
  • Fixed 10-bit full range YUV color input with Movit.
  • Fixed aspect ratio issues in qtblend filter transform.
  • Fixed the movit.luma transition.
  • Changed the qglsl consumer to use an OpenGL core profile version 3.2 context to make it compatible with recent Movit versions.
  • Upgraded glaxnimate git submodule to version 0.5.2.
  • Fixed xml producer incorrectly adds a path prefix to a consumer producer.
  • Fixed using opencv.tracker filter with mlt_chain.
  • Added interlace-aware chroma conversion from mlt_image_yuv422 to yuv420p in the avformat consumer.
  • Added the speed_map property to the timeremap link.
  • Fixed the loader producer not injecting the consumer producer when a xml producer changes the frame rate.
  • Fixed ‘loader’ producer corrupts the profile colorspace and description when it injects a consumer producer.
  • Added a loader-nogl producer to the core module based on loader but prevents adding movit-based filters.
  • Changed count producer to take an optional string argument with the name of a loader producer.
  • Fixed yadif deinterlace not working in a mlt_chain.
  • Fixed the bob, weave, greedy, onefield deinterlace filter methods on x86-64 architecture.

Other

  • Fixed SWIG python shadow functions for mlt7.
  • Added CMake build option MOD_GLAXNIMATE_QT6.

v7.12.0 released

Nov 19, 2022

You can download it from GitHub.

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!

Framework

  • Added new color animation APIs:
    • 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)

Modules

  • Updated the following services to support animation of color properties:
    • frei0r (any color parameter in any frei0r plugin)
    • chroma
    • chroma_hold
    • audiolevelgraph
    • audiospectrum
    • audiowaveform
    • gpsgraphic
    • gpstext
    • qtcrop
    • qtext
  • Added discontinuity_reset property to dynamic_loudness filter.
  • Fixed qtblend transition not blending with an opaque rgba image.
  • Added support for the “finer” engine in Rubberband version 3.
  • Fixed crash in frei0r.cairoblend when threads property not set.

Other

  • Fixed leaking the xml producer in melt when the XML contains a consumer element but no profile information.
  • Fixed symbol not found error in rtaudio consumer.

Search

Subscribe

Subscribe to News via RSS.

Recent Posts

About

MLT enables you to author, manage, and run multitrack audio/video compositions.
See our Hall of Fame
Copyright © 2008-2025 by Meltytech, LLC.

Social Links