Opened 4 months ago

Last modified 7 weeks ago

#14896 assigned enhancement

mlt-7.0.1 (hold for kdenlive)

Reported by: Douglas R. Reno Owned by: Douglas R. Reno
Priority: low Milestone: hold
Component: BOOK Version: git
Severity: normal Keywords:
Cc:

Description (last modified by Douglas R. Reno)

New major version

Change History (7)

comment:1 by Douglas R. Reno, 4 months ago

Owner: changed from blfs-book to Douglas R. Reno
Status: newassigned

comment:2 by Douglas R. Reno, 3 months ago

Description: modified (diff)
Summary: mlt-6.26.0mlt-7.0.0

Now 7.0.0

Main highlights are API changes and the changeover to CMake

comment:3 by Douglas R. Reno, 3 months ago

6.26.0

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.
Modules

    Added support for hwaccel query string parameter to the avformat producer. It accepts the following values:
    vaapi (Linux/BSD), cuda (Linux), videotoolbox (macOS), d3d11va (Windows), dxva2 (Windows)
    Added support for hwaccel_device query string parameter to the avformat producer. This is only used with vaapi (device path) and cuda, d3d11va, or dxva (number).
    Improved the usage of image slice threading in frei0r. This only applies when threads=0 and only works with some frei0r plugins that you must decide yourself.
    Added an ellipse item to kdenlivetitle producer.
    Added support for PNG and GIF as album art in the avformat producer.
    Added BT.2020 color space metadata to the avformat producer.
    Resolved many FFmpeg deprecations in the avformat producer making it possible to support AV1 decoding.
    Added a strobe fitler that periodically makes the alpha channel transparent.
    Added a new typewriter text filter (currently only works with the kdenlivetitle producer).
    Improved sound quality for lower pitch shifts in rbpitch.
    Fixed speed of trick play in the jack, rtaudio, sdl_audio, and sdl2_audio consumers.
    Fixed matrix for independent channels in swresample filter.
    Fixed leading zeros for the timer filter.
    Fixed flickering using affine with a luma transition.
    Fixed a crash using RGBA images in the qimage producer (regression in v6.22.0).
    Fixed brightness filter misbehaves on alpha > 1.
    Fixed writing flac format file does not set its duration in the avformat consumer.
    Fixed an infinite loop in rbpitch filter.
    Fixed ttl in the qimage producer.
    Fixed building with OpenCV 4.5
    Fixed artifacts with multiple HTML qtext filters and frame threading.
    Deprecated the start and end properties on the following (use property animation instead):
        brightness
        panner
        boxblur
        wave
        volume
    Deprecated the following services:
        data_show
        region
        transition filter
        autotrack_rectangle
        motion_est
        slowmotion

Other

    CMake:
        Fixed building without SWIG.
        Added many "MOD_..." options to explictly disable modules.
        Added src/tests and the option BUILD_TESTING, which defaults off.
        All dependency checks moved to top level CMakeLists.txt.
        Install melt man page.
        Install oldfilm SVG files.
        Added src/examples.
        Install framework/metaschema.yaml.
        Fixed plusgpl datadir.
        Added all swwig/ languages.
        Increased C++ standard to C++14.
    Added an AV1 encoding preset.
    Improved documentation of the requirement for C11.
    The minimum version of FFmpeg is v4.0 and Libav is no longer supported.

6.26.1

This version fixes a major regression in version 6.26.0 in the avformat producer to read from network URLs.

7.0.0

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.
Framework

    Added mlt_chain and Mlt::Chain classes.
    Added mlt_link and Mlt::Link classes.
    Added a link value to service type in the service metadata schema.
    Added a boolean animation parameter attribute to the service metadata schema.
    Added mlt_animation_shift_frame() and Mlt::Animation::shift_frames().
    Added mlt_animation_get_string().
    Fixed using a stale cached property animation string.
    Added mlt_image and Mlt::Image classes.
    Remove legacy "height + 1" workaround in image allocation.
    Fixed a crash on setting timewarp speed higher than 23x.
    Added mlt_audio_silence().
    Removed mlt_image_opengl.
    Replaced variadic arguments in mlt_events with new mlt_event_data APIs.
    Removed mlt_geometry APIs.
    Renamed mlt_image_rgb24a as mlt_image_rgba.
    Renamed mlt_image_rgb24 to mlt_image_rgb.
    Renamed mlt_image_glsl to mlt_image_movit.
    Renamed mlt_image_glsl_texture to mlt_image_opengl_texture.
    Removed virtual function mlt_frame::get_alpha_mask().
    Removed mlt_frame_get_alpha_mask().
    Removed deprecated functions:
        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
    Fixed a rounding error calculating display aspect ratio in mlt_profile_from_producer().

Modules

    Added a timeremap link to the core module with animatable map property.
    (Speed can increase or decrease between keyframes including reverse.)
    Added chain and link XML elements to xml module.
    Added "meta.media.has_b_frames" property to avformat producer.
    Removed deprecated modules:
        dv
        gtk2 (not gdk)
        kino
        linsys
        lumas
        motion_est
        swfdec
        videostab
    Removed the following services:
        data_feed filter
        data_show filter
        region filter and transition
        sdl_image
    Converted filters to use new mlt_image class:
        brightness
        imageconver
        mirror
        spot_remover
    Deprecated the audiowave filter.
    Added the ability to build the jackrack module without JACK to get only
    LADSPA producers and filters.
    Deprecated start and end properties for the following filters:
        brightness
        panner
        boxblur
        wave
        volume
    Removed deprecated font property from pango producer.
    Improved album art (attached pic) detection in avformat producer.
    Improved the resample filter to have less artifacts and use less memory.

Other

    CMake: nearly complete rewrite.
    Removed the old configure bash scripts and Makefiles.
    Added -chain and -link options to melt command line.

comment:4 by Douglas R. Reno, 3 months ago

Milestone: 10.2hold
Summary: mlt-7.0.0mlt-7.0.0 (hold for kdenlive)

We need to hold on this for a while.

https://invent.kde.org/multimedia/kdenlive/-/issues/991

Kdenlive is not MLT7 compatible.

For 7.0.0, here are my notes:

MLT-7.0.0 UPDATE NOTES Ticket #14896


Download URL:

HTTP: https://github.com/mltframework/mlt/releases/download/v7.0.0/mlt-7.0.0.tar.gz

Download Size: 1.1 MB MD5SUM: 2c485f981d2fc8f803b5032a272b26a0

Elasped Time: 8.7 Installed Files Size: 28 MB SBU Value: 0.1 SBU

* CHANGE TO CMAKE! * mkdir build cd build cmake -DCMAKE_INSTALL_PREFIX=/usr ..

DEPENDENCY CHANGES:

INSTALLED FILES CHANGES:

  • Change melt to melt-7
  • Change libmlt.so to libmlt-7.so
  • Change libmlt++.so to libmlt++7-.so
  • Change /usr/include/mlt to /usr/include/mlt-7
  • Remove /usr/include/mlt++
  • Change /usr/lib/mlt to /usr/lib/mlt-7
  • Change /usr/share/mlt to /usr/share/mlt-7

TYPO FIXES: NONE

comment:5 by Douglas R. Reno, 3 months ago

Priority: normallow

comment:6 by Douglas R. Reno, 8 weeks ago

Version: SVNgit

Change version to "Git"

comment:7 by Douglas R. Reno, 7 weeks ago

Summary: mlt-7.0.0 (hold for kdenlive)mlt-7.0.1 (hold for kdenlive)

Now 7.0.1. Maybe Kdenlive can use this one?

Note: See TracTickets for help on using tickets.