Blog: v7.36.0 released
You can download it from GitHub.
This version adds image processing in linear color on the CPU (previously only Movit). Plus, it extends 10-bit video processing on the CPU to many more services.
Framework
- Added
mlt_image_default_colorspace() - Added
mlt_image_default_trc() - Added
mlt_image_default_primaries() - Added
mlt_color_convert_trc() - Added the
mlt_consumerpropertymlt_color_trcto drive a newcolor_transformnormalizer filter. This sets the color transfer function to use for image/video effects. It is beneficial and correct to use linear color for any pixel mixing whether for blending or interpolation. - Removed
atexit(mlt_factory_close)inmlt_factory_init(). Close the factory yourself if you feel the need to (not generally needed when exiting a process). - Prevent possible crash in
mlt_service_connect_producer(). - Added
mlt_profile_is_valid()andMlt::Profile::is_valid(). - Fixed crash on invalid profile (CVE-2025-65834) in:
mlt_consumer_start()mlt_factory_producer()xmlproducer
Modules
- Drop support for Qt 5.
- Fixed bad color in
lumatransitionβs dissolve (regression in v7.34.0). - Fixed HLG HDR broken in
decklinkconsumer (regression in v7.34.0). - Fixed warnings when flushing audio in the
avformatconsumer. - Added support for
hwaccel=vulkanto theavformatproducer. - Added a
color_transformnormalizer filter to the core module to convert all image/video producers to and from linear color. It is abstract in the core module and drives the following filters:avfilter.zscalesws_colortransformavfilter.scale
- Added filter
sws_colortransformthat is more efficient thanavfilter.swscalebut requires FFmpeg 8. - Changed the default property values of the
nullconsumer:real_time: -1terminate_on_pause: 1
- Changed the
lumaandmovit.lumatransitions to progress linearly with linearcolor_trc. - Fixed the alpha channel dropped by the
xml-clipproducer. - Added
mlt_image_rgba64format to:avcolor_spacefilteravdeinterlacefilteraffinefilter and transitionaudiolevelgraphfilteraudiospectrumfilteraudiowaveformfilterautofadefilteravformatproducer and consumersbox_blurfilterbrightnessfilterpillar_echofiltercolorproducerdropshadowfilterdynamictextfilter (when used withqtext)frei0r.alpha0psfilterfrei0r.alphagradfilterfrei0r.alphaspotfilterfrei0r.bluescreen0rfilterfrei0r.select0rfilterfrei0r.transparencyfiltergpsgraphicfiltergpstextfiltergradientmapfilterhslprimariesfilterhslrangefilterkdenlivetitleproducerlift_gamma_gainfilterlightshowfiltermask_apply(when used withqtblend)movit.convertfilteroutlinefilterqtblendfilter and transitionqtcropfilterqtextproducershapefilterspot_removerfilterstrobefiltersubtitlefilter (when used withqtext)swscalefiltertextfilter (when used withqtext)timeremaplinktimerfilter (when used withqtext)vqmtransition
- Changed the
mask_applyfilter default transition toqtblend. - Removed the maximum for the
alphaproperty on thebrightnessfilter so that you can increase the opacity of an existing alpha channel. - Fixed background image scaling in the
gpsgraphicfilter. - Fix audio artifacts with pcm_s24le in mkv in
avformatproducer.
Other
- Removed bitrate and quality limits in the vp9 and webm
avformatpresets. - Fixed melt on Windows not reading file path/name with extended characters (regression in v7.34.0).
- Fixed building the ruby bindings with Ruby 3.0.
- More fixes for MSVC.
- Removed
win32/strptime.cand replaced with Qt functions. - Stop showing
meltusage on error exit.