Here is a diff to update mlt7 to the latest upstream version. Keep
in mind you need multimedia/movit (see ports@) as a new dependency.

All consumers are happy with 7.34.1.

diff --git a/multimedia/mlt7/Makefile b/multimedia/mlt7/Makefile
index 9277b9e04f4..c10f828e363 100644
--- a/multimedia/mlt7/Makefile
+++ b/multimedia/mlt7/Makefile
@@ -1,7 +1,6 @@
 COMMENT-main = multimedia transformations framework
 COMMENT-gpl2 = GPLv2-licensed modules for mlt
-V =            7.32.0
-REVISION =     0
+V =            7.34.1
 DISTNAME =     mlt-${V}
 PKGNAME-main = mlt7-${V}
 PKGNAME-gpl2 = mlt7-gpl2-${V}
@@ -15,22 +14,22 @@ SITES =             
https://github.com/mltframework/mlt/releases/download/v${V}/
 DEBUG_PACKAGES =       ${BUILD_PACKAGES}
 
 # XXX versions should be kept in sync together
-SHARED_LIBS =          mlt-7           5.0
-SHARED_LIBS +=         mlt++-7         5.0
+SHARED_LIBS =          mlt-7           6.0
+SHARED_LIBS +=         mlt++-7         6.0
 
 # GPLv2+, LGPLv2.1+
 # Actually, qimage module could be under GPLv3+ if one more object
 # file gets included, see --enable-gpl3 configure option.
 PERMIT_PACKAGE =       Yes
 
-WANTLIB-main += ${COMPILER_LIBCXX} SDL SDL2 X11 avcodec avdevice avfilter
-WANTLIB-main += avformat avutil c ebur128 exif fftw3 fontconfig freetype
-WANTLIB-main += gdk_pixbuf-2.0 glib-2.0 gobject-2.0 harfbuzz intl jack
-WANTLIB-main += m pango-1.0 pangoft2-1.0 sox_ng swresample swscale vorbis
-WANTLIB-main += vorbisfile xml2
+WANTLIB-main += ${COMPILER_LIBCXX} GL SDL2 X11 avcodec avdevice avfilter
+WANTLIB-main += avformat avutil c ebur128 epoxy exif fftw3 fontconfig
+WANTLIB-main += freetype gdk_pixbuf-2.0 glib-2.0 gobject-2.0 harfbuzz
+WANTLIB-main += intl m movit pango-1.0 pangoft2-1.0 sox_ng swresample
+WANTLIB-main += swscale vorbis vorbisfile xml2
 
-WANTLIB-gpl2 += ${COMPILER_LIBCXX} GL Qt5Core Qt5Gui Qt5Svg Qt5Widgets
-WANTLIB-gpl2 += Qt5Xml Qt6Core Qt6Core5Compat Qt6Gui Qt6Svg Qt6SvgWidgets
+WANTLIB-gpl2 += ${COMPILER_LIBCXX} GL Qt5Core Qt5Gui Qt5Widgets Qt5Xml
+WANTLIB-gpl2 += Qt6Core Qt6Core5Compat Qt6Gui Qt6Svg Qt6SvgWidgets
 WANTLIB-gpl2 += Qt6Widgets Qt6Xml exif fftw3 m mlt++-7 mlt-7 pulse
 WANTLIB-gpl2 += pulse-simple samplerate vidstab
 
@@ -48,13 +47,11 @@ RUN_DEPENDS-main =  audio/ladspa \
                        multimedia/frei0r-plugins \
                        x11/gtk+4,-guic
 
-LIB_DEPENDS-main =     audio/jack \
-                       audio/libebur128 \
+LIB_DEPENDS-main =     audio/libebur128 \
                        audio/sox \
                        devel/pango \
-                       devel/sdl \
-                       devel/sdl2 \
                        graphics/ffmpeg \
+                       multimedia/movit \
                        graphics/gdk-pixbuf2 \
                        graphics/libexif \
                        math/fftw3
@@ -71,8 +68,10 @@ LIB_DEPENDS-gpl2 =   ${BUILD_PKGPATH},-main \
                        x11/qt6/qt5compat \
                        x11/qt6/qtsvg
 
-CONFIGURE_ARGS =       -DMOD_RUBBERBAND=OFF
+CONFIGURE_ARGS =       -DMOD_RUBBERBAND=OFF \
+                       -DMOD_JACKRACK=OFF
 
+CONFIGURE_ARGS +=      -DMOD_QT=ON
 CONFIGURE_ARGS +=      -DMOD_QT6=ON
 
 # melt-7 is enough
diff --git a/multimedia/mlt7/distinfo b/multimedia/mlt7/distinfo
index 8514a031ded..0b82cf40d58 100644
--- a/multimedia/mlt7/distinfo
+++ b/multimedia/mlt7/distinfo
@@ -1,2 +1,2 @@
-SHA256 (mlt-7.32.0.tar.gz) = HKWq3+J5lch5uSU7OkjR3MOxJH6gtWILCH1Y9VIb4Cg=
-SIZE (mlt-7.32.0.tar.gz) = 1790860
+SHA256 (mlt-7.34.1.tar.gz) = QQS4fbPhQ4n4FmaTjBMfcjVkdz/smqGLa/8Ah2HMg4s=
+SIZE (mlt-7.34.1.tar.gz) = 1817867
diff --git a/multimedia/mlt7/patches/patch-src_modules_avformat_common_c 
b/multimedia/mlt7/patches/patch-src_modules_avformat_common_c
deleted file mode 100644
index 4ac6d319452..00000000000
--- a/multimedia/mlt7/patches/patch-src_modules_avformat_common_c
+++ /dev/null
@@ -1,27 +0,0 @@
-Backport 
https://github.com/mltframework/mlt/commit/ae83ceee72a0a39c063b02310f6ce928839712a2
-
-Index: src/modules/avformat/common.c
---- src/modules/avformat/common.c.orig
-+++ src/modules/avformat/common.c
-@@ -367,10 +367,20 @@ void mlt_image_to_avframe(mlt_image image, mlt_frame m
-     avframe->height = image->height;
-     avframe->format = mlt_to_av_image_format(image->format);
-     avframe->sample_aspect_ratio = 
av_d2q(mlt_frame_get_aspect_ratio(mltframe), 1024);
--    ;
-     avframe->pts = mlt_frame_get_position(mltframe);
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+    if (!mlt_properties_get_int(frame_properties, "progressive"))
-+        avframe->flags |= AV_FRAME_FLAG_INTERLACED;
-+    else
-+        avframe->flags &= ~AV_FRAME_FLAG_INTERLACED;
-+    if (mlt_properties_get_int(frame_properties, "top_field_first"))
-+        avframe->flags |= AV_FRAME_FLAG_TOP_FIELD_FIRST;
-+    else
-+        avframe->flags &= ~AV_FRAME_FLAG_TOP_FIELD_FIRST;
-+#else
-     avframe->interlaced_frame = !mlt_properties_get_int(frame_properties, 
"progressive");
-     avframe->top_field_first = mlt_properties_get_int(frame_properties, 
"top_field_first");
-+#endif
-     avframe->color_primaries = mlt_properties_get_int(frame_properties, 
"color_primaries");
-     avframe->color_trc = mlt_properties_get_int(frame_properties, 
"color_trc");
-     avframe->color_range = mlt_properties_get_int(frame_properties, 
"full_range")
diff --git 
a/multimedia/mlt7/patches/patch-src_modules_avformat_consumer_avformat_c 
b/multimedia/mlt7/patches/patch-src_modules_avformat_consumer_avformat_c
deleted file mode 100644
index ce4b554173e..00000000000
--- a/multimedia/mlt7/patches/patch-src_modules_avformat_consumer_avformat_c
+++ /dev/null
@@ -1,40 +0,0 @@
-Backport 
https://github.com/mltframework/mlt/commit/ae83ceee72a0a39c063b02310f6ce928839712a2
-
-Index: src/modules/avformat/consumer_avformat.c
---- src/modules/avformat/consumer_avformat.c.orig
-+++ src/modules/avformat/consumer_avformat.c
-@@ -1923,18 +1923,27 @@ static int encode_video(encode_ctx_t *enc_ctx,
-         avframe->pts = enc_ctx->frame_count;
- 
-         // Set frame interlace hints
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+        if (!mlt_properties_get_int(frame_properties, "progressive"))
-+            avframe->flags |= AV_FRAME_FLAG_INTERLACED;
-+        else
-+            avframe->flags &= ~AV_FRAME_FLAG_INTERLACED;
-+        const int tff = mlt_properties_get_int(frame_properties, 
"top_field_first");
-+        if (tff)
-+            avframe->flags |= AV_FRAME_FLAG_TOP_FIELD_FIRST;
-+        else
-+            avframe->flags &= ~AV_FRAME_FLAG_TOP_FIELD_FIRST;
-+#else
-         avframe->interlaced_frame = !mlt_properties_get_int(frame_properties, 
"progressive");
--        avframe->top_field_first = mlt_properties_get_int(frame_properties, 
"top_field_first");
-+        const int tff = avframe->top_field_first = 
mlt_properties_get_int(frame_properties,
-+                                                                          
"top_field_first");
-+#endif
-         if (mlt_properties_get_int(frame_properties, "progressive"))
-             c->field_order = AV_FIELD_PROGRESSIVE;
-         else if (c->codec_id == AV_CODEC_ID_MJPEG)
--            c->field_order = (mlt_properties_get_int(frame_properties, 
"top_field_first"))
--                                 ? AV_FIELD_TT
--                                 : AV_FIELD_BB;
-+            c->field_order = tff ? AV_FIELD_TT : AV_FIELD_BB;
-         else
--            c->field_order = (mlt_properties_get_int(frame_properties, 
"top_field_first"))
--                                 ? AV_FIELD_TB
--                                 : AV_FIELD_BT;
-+            c->field_order = tff ? AV_FIELD_TB : AV_FIELD_BT;
- 
-         // Encode the image
-         ret = avcodec_send_frame(c, avframe);
diff --git 
a/multimedia/mlt7/patches/patch-src_modules_avformat_filter_avfilter_c 
b/multimedia/mlt7/patches/patch-src_modules_avformat_filter_avfilter_c
deleted file mode 100644
index 664ba21a794..00000000000
--- a/multimedia/mlt7/patches/patch-src_modules_avformat_filter_avfilter_c
+++ /dev/null
@@ -1,27 +0,0 @@
-Backport 
https://github.com/mltframework/mlt/commit/ae83ceee72a0a39c063b02310f6ce928839712a2
-
-Index: src/modules/avformat/filter_avfilter.c
---- src/modules/avformat/filter_avfilter.c.orig
-+++ src/modules/avformat/filter_avfilter.c
-@@ -802,10 +802,21 @@ static int filter_get_image(mlt_frame frame,
-         pdata->avinframe->sample_aspect_ratio = 
(AVRational){profile->sample_aspect_num,
-                                                              
profile->sample_aspect_den};
-         pdata->avinframe->pts = pos;
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+        if (!mlt_properties_get_int(frame_properties, "progressive"))
-+            pdata->avinframe->flags |= AV_FRAME_FLAG_INTERLACED;
-+        else
-+            pdata->avinframe->flags &= ~AV_FRAME_FLAG_INTERLACED;
-+        if (mlt_properties_get_int(frame_properties, "top_field_first"))
-+            pdata->avinframe->flags |= AV_FRAME_FLAG_TOP_FIELD_FIRST;
-+        else
-+            pdata->avinframe->flags &= ~AV_FRAME_FLAG_TOP_FIELD_FIRST;
-+#else
-         pdata->avinframe->interlaced_frame = 
!mlt_properties_get_int(frame_properties,
-                                                                      
"progressive");
-         pdata->avinframe->top_field_first = 
mlt_properties_get_int(frame_properties,
-                                                                    
"top_field_first");
-+#endif
-         pdata->avinframe->color_primaries = 
mlt_properties_get_int(frame_properties,
-                                                                    
"color_primaries");
-         pdata->avinframe->color_trc = 
mlt_properties_get_int(frame_properties, "color_trc");
diff --git 
a/multimedia/mlt7/patches/patch-src_modules_avformat_filter_swscale_c 
b/multimedia/mlt7/patches/patch-src_modules_avformat_filter_swscale_c
deleted file mode 100644
index 387cf28ff10..00000000000
--- a/multimedia/mlt7/patches/patch-src_modules_avformat_filter_swscale_c
+++ /dev/null
@@ -1,21 +0,0 @@
-Backport 
https://github.com/mltframework/mlt/commit/ae83ceee72a0a39c063b02310f6ce928839712a2
-
-Index: src/modules/avformat/filter_swscale.c
---- src/modules/avformat/filter_swscale.c.orig
-+++ src/modules/avformat/filter_swscale.c
-@@ -170,8 +170,15 @@ static int filter_scale(mlt_frame frame,
-         avinframe->height = iheight;
-         avinframe->format = avformat;
-         avinframe->sample_aspect_ratio = 
av_d2q(mlt_frame_get_aspect_ratio(frame), 1024);
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+        if (!mlt_properties_get_int(properties, "progressive"))
-+            avinframe->flags |= AV_FRAME_FLAG_INTERLACED;
-+        if (mlt_properties_get_int(properties, "top_field_first"))
-+            avinframe->flags |= AV_FRAME_FLAG_TOP_FIELD_FIRST;
-+#else
-         avinframe->interlaced_frame = !mlt_properties_get_int(properties, 
"progressive");
-         avinframe->top_field_first = mlt_properties_get_int(properties, 
"top_field_first");
-+#endif
-         av_image_fill_arrays(avinframe->data,
-                              avinframe->linesize,
-                              *image,
diff --git a/multimedia/mlt7/patches/patch-src_modules_avformat_link_avfilter_c 
b/multimedia/mlt7/patches/patch-src_modules_avformat_link_avfilter_c
deleted file mode 100644
index 8cc17529a7d..00000000000
--- a/multimedia/mlt7/patches/patch-src_modules_avformat_link_avfilter_c
+++ /dev/null
@@ -1,27 +0,0 @@
-Backport 
https://github.com/mltframework/mlt/commit/ae83ceee72a0a39c063b02310f6ce928839712a2
-
-Index: src/modules/avformat/link_avfilter.c
---- src/modules/avformat/link_avfilter.c.orig
-+++ src/modules/avformat/link_avfilter.c
-@@ -917,10 +917,21 @@ static int link_get_image(mlt_frame frame,
-         pdata->avinframe->sample_aspect_ratio = 
(AVRational){profile->sample_aspect_num,
-                                                              
profile->sample_aspect_den};
-         pdata->avinframe->pts = pos;
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+        if (!mlt_properties_get_int(frame_properties, "progressive"))
-+            pdata->avinframe->flags |= AV_FRAME_FLAG_INTERLACED;
-+        else
-+            pdata->avinframe->flags &= ~AV_FRAME_FLAG_INTERLACED;
-+        if (mlt_properties_get_int(frame_properties, "top_field_first"))
-+            pdata->avinframe->flags |= AV_FRAME_FLAG_TOP_FIELD_FIRST;
-+        else
-+            pdata->avinframe->flags &= ~AV_FRAME_FLAG_TOP_FIELD_FIRST;
-+#else
-         pdata->avinframe->interlaced_frame = 
!mlt_properties_get_int(frame_properties,
-                                                                      
"progressive");
-         pdata->avinframe->top_field_first = 
mlt_properties_get_int(frame_properties,
-                                                                    
"top_field_first");
-+#endif
-         pdata->avinframe->color_primaries = 
mlt_properties_get_int(frame_properties,
-                                                                    
"color_primaries");
-         pdata->avinframe->color_trc = 
mlt_properties_get_int(frame_properties, "color_trc");
diff --git 
a/multimedia/mlt7/patches/patch-src_modules_avformat_producer_avformat_c 
b/multimedia/mlt7/patches/patch-src_modules_avformat_producer_avformat_c
deleted file mode 100644
index 4ad1d2d1438..00000000000
--- a/multimedia/mlt7/patches/patch-src_modules_avformat_producer_avformat_c
+++ /dev/null
@@ -1,192 +0,0 @@
-Backport 
https://github.com/mltframework/mlt/commit/ae83ceee72a0a39c063b02310f6ce928839712a2
-
-Index: src/modules/avformat/producer_avformat.c
---- src/modules/avformat/producer_avformat.c.orig
-+++ src/modules/avformat/producer_avformat.c
-@@ -335,11 +335,20 @@ static int first_video_index(producer_avformat self)
- 
- static const char *get_projection(AVStream *st)
- {
-+#if LIBAVCODEC_VERSION_INT >= ((60 << 16) + (29 << 8) + 100)
-+    const AVPacketSideData *psd = 
av_packet_side_data_get(st->codecpar->coded_side_data,
-+                                                          
st->codecpar->nb_coded_side_data,
-+                                                          
AV_PKT_DATA_SPHERICAL);
-+    if (psd) {
-+        const AVSphericalMapping *spherical = (const AVSphericalMapping *) 
psd->data;
-+#else
-     const AVSphericalMapping *spherical
-         = (const AVSphericalMapping *) av_stream_get_side_data(st, 
AV_PKT_DATA_SPHERICAL, NULL);
- 
--    if (spherical)
-+    if (spherical) {
-+#endif
-         return av_spherical_projection_name(spherical->projection);
-+    }
-     return NULL;
- }
- 
-@@ -349,7 +358,16 @@ static double get_rotation(mlt_properties properties, 
- {
-     AVDictionaryEntry *rotate_tag = av_dict_get(st->metadata, "rotate", NULL, 
0);
-     int has_rotate_metadata = rotate_tag && *rotate_tag->value && 
strcmp(rotate_tag->value, "0");
-+#if LIBAVCODEC_VERSION_INT >= ((60 << 16) + (29 << 8) + 100)
-+    int32_t *displaymatrix = NULL;
-+    const AVPacketSideData *psd = 
av_packet_side_data_get(st->codecpar->coded_side_data,
-+                                                          
st->codecpar->nb_coded_side_data,
-+                                                          
AV_PKT_DATA_DISPLAYMATRIX);
-+    if (psd)
-+        displaymatrix = (int32_t *) psd->data;
-+#else
-     uint8_t *displaymatrix = av_stream_get_side_data(st, 
AV_PKT_DATA_DISPLAYMATRIX, NULL);
-+#endif
-     double theta = mlt_properties_get_double(properties, "rotate");
-     int has_mlt_rotate = !!mlt_properties_get(properties, "rotate");
- 
-@@ -418,14 +436,7 @@ static AVRational guess_frame_rate(producer_avformat s
-         frame_rate = av_d2q(av_q2d(stream->avg_frame_rate), 1024);
-         fps = av_q2d(frame_rate);
-     }
--    // XXX frame rates less than 1 fps are not considered sane
-     if (isnan(fps) || isinf(fps) || fps < 1.0) {
--        // Get the frame rate from the codec.
--        frame_rate.num = self->video_codec->time_base.den;
--        frame_rate.den = self->video_codec->time_base.num * 
self->video_codec->ticks_per_frame;
--        fps = av_q2d(frame_rate);
--    }
--    if (isnan(fps) || isinf(fps) || fps < 1.0) {
-         // Use the profile frame rate if all else fails.
-         mlt_profile profile = 
mlt_service_profile(MLT_PRODUCER_SERVICE(self->parent));
-         frame_rate.num = profile->frame_rate_num;
-@@ -1580,7 +1591,7 @@ static void get_audio_streams_info(producer_avformat s
- #endif
-                 if (codec_params->sample_rate > self->max_frequency)
-                     self->max_frequency = codec_params->sample_rate;
--                avcodec_close(codec_context);
-+                avcodec_free_context(&codec_context);
-             }
-             pthread_mutex_unlock(&self->open_mutex);
-         }
-@@ -1716,7 +1727,11 @@ static int sliced_h_pix_fmt_conv_proc(int id, int idx,
-     struct SwsContext *sws;
-     struct sliced_pix_fmt_conv_t *ctx = (struct sliced_pix_fmt_conv_t *) 
cookie;
- 
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+    interlaced = ctx->frame->flags & AV_FRAME_FLAG_INTERLACED;
-+#else
-     interlaced = ctx->frame->interlaced_frame;
-+#endif
-     field = (interlaced) ? (idx & 1) : 0;
-     idx = (interlaced) ? (idx / 2) : idx;
-     slices = (interlaced) ? (jobs / 2) : jobs;
-@@ -1865,7 +1880,11 @@ static void convert_image_rgb(producer_avformat self,
-     uint8_t *out_data[4];
-     int out_stride[4];
- 
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+    if (src_pix_fmt == AV_PIX_FMT_YUV420P && (frame->flags & 
AV_FRAME_FLAG_INTERLACED)) {
-+#else
-     if (src_pix_fmt == AV_PIX_FMT_YUV420P && frame->interlaced_frame) {
-+#endif
-         // Perform field-aware conversion for 4:2:0
-         int field_height = height / 2;
-         const uint8_t *in_data[4];
-@@ -2041,8 +2060,13 @@ static int convert_image(producer_avformat self,
- 
-         int sliced = !getenv("MLT_AVFORMAT_SLICED_PIXFMT_DISABLE") && 
src_pix_fmt != ctx.dst_format;
-         if (sliced) {
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+            ctx.slice_w = (width < 1000) ? (256 >> (frame->flags & 
AV_FRAME_FLAG_INTERLACED))
-+                                         : (512 >> (frame->flags & 
AV_FRAME_FLAG_INTERLACED));
-+#else
-             ctx.slice_w = (width < 1000) ? (256 >> frame->interlaced_frame)
-                                          : (512 >> frame->interlaced_frame);
-+#endif
-         } else {
-             ctx.slice_w = width;
-         }
-@@ -2052,10 +2076,18 @@ static int convert_image(producer_avformat self,
- 
-         if (sliced && (last_slice_w % 8) == 0
-             && !(ctx.src_format == AV_PIX_FMT_YUV422P && last_slice_w % 16)) {
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+            c *= (frame->flags & AV_FRAME_FLAG_INTERLACED) ? 2 : 1;
-+#else
-             c *= frame->interlaced_frame ? 2 : 1;
-+#endif
-             mlt_slices_run_normal(c, sliced_h_pix_fmt_conv_proc, &ctx);
-         } else {
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+            c = (frame->flags & AV_FRAME_FLAG_INTERLACED) ? 2 : 1;
-+#else
-             c = frame->interlaced_frame ? 2 : 1;
-+#endif
-             ctx.slice_w = width;
-             for (i = 0; i < c; i++)
-                 sliced_h_pix_fmt_conv_proc(i, i, c, &ctx);
-@@ -2524,7 +2556,11 @@ static int producer_get_image(mlt_frame frame,
-                         // there are I frames, and find_first_pts() fails as 
a result.
-                         // Try to set first_pts here after getting pict_type.
-                         if (self->first_pts == AV_NOPTS_VALUE
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+                            && ((self->video_frame->flags & AV_FRAME_FLAG_KEY)
-+#else
-                             && (self->video_frame->key_frame
-+#endif
-                                 || self->video_frame->pict_type == 
AV_PICTURE_TYPE_I))
-                             self->first_pts = pts;
-                         if (self->first_pts != AV_NOPTS_VALUE)
-@@ -2558,22 +2594,45 @@ static int producer_get_image(mlt_frame frame,
-                 if (mlt_properties_get(properties, "force_progressive")) {
-                     self->progressive = !!mlt_properties_get_int(properties, 
"force_progressive");
-                 } else if (self->video_frame && codec_params) {
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+                    self->progressive = !(self->video_frame->flags & 
AV_FRAME_FLAG_INTERLACED)
-+#else
-                     self->progressive = !self->video_frame->interlaced_frame
-+#endif
-                                         && (codec_params->field_order == 
AV_FIELD_PROGRESSIVE
-                                             || codec_params->field_order == 
AV_FIELD_UNKNOWN);
-                 } else {
-                     self->progressive = 0;
-                 }
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+                if (!self->progressive)
-+                    self->video_frame->flags |= AV_FRAME_FLAG_INTERLACED;
-+                else
-+                    self->video_frame->flags &= ~AV_FRAME_FLAG_INTERLACED;
-+#else
-                 self->video_frame->interlaced_frame = !self->progressive;
-+#endif
-                 // Detect and correct field order
-                 if (mlt_properties_get(properties, "force_tff")) {
-                     self->top_field_first = 
!!mlt_properties_get_int(properties, "force_tff");
-                 } else {
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+                    self->top_field_first = (self->video_frame->flags
-+                                             & AV_FRAME_FLAG_TOP_FIELD_FIRST)
-+#else
-                     self->top_field_first = self->video_frame->top_field_first
-+#endif
-                                             || codec_params->field_order == 
AV_FIELD_TT
-                                             || codec_params->field_order == 
AV_FIELD_TB;
-                 }
-+#if LIBAVUTIL_VERSION_INT >= ((58 << 16) + (7 << 8) + 100)
-+                if (self->top_field_first)
-+                    self->video_frame->flags |= AV_FRAME_FLAG_TOP_FIELD_FIRST;
-+                else
-+                    self->video_frame->flags &= 
~AV_FRAME_FLAG_TOP_FIELD_FIRST;
-+#else
-                 self->video_frame->top_field_first = self->top_field_first;
-+#endif
- #ifdef AVFILTER
-                 if ((self->autorotate || mlt_properties_get(properties, 
"filtergraph"))
-                     && !setup_filters(self) && self->vfilter_graph) {
-@@ -3690,7 +3749,7 @@ static int audio_codec_init(producer_avformat self, in
-         if (codec && avcodec_open2(codec_context, codec, NULL) >= 0) {
-             // Now store the codec with its destructor
-             if (self->audio_codec[index])
--                avcodec_close(self->audio_codec[index]);
-+                avcodec_free_context(&self->audio_codec[index]);
-             self->audio_codec[index] = codec_context;
-             self->audio_index = index;
-         } else {
diff --git a/multimedia/mlt7/patches/patch-src_modules_sdl_CMakeLists_txt 
b/multimedia/mlt7/patches/patch-src_modules_sdl_CMakeLists_txt
index 3cdc93db87c..ede0707d590 100644
--- a/multimedia/mlt7/patches/patch-src_modules_sdl_CMakeLists_txt
+++ b/multimedia/mlt7/patches/patch-src_modules_sdl_CMakeLists_txt
@@ -1,7 +1,7 @@
 Index: src/modules/sdl/CMakeLists.txt
 --- src/modules/sdl/CMakeLists.txt.orig
 +++ src/modules/sdl/CMakeLists.txt
-@@ -19,6 +19,7 @@ if(APPLE)
+@@ -23,6 +23,7 @@ if(APPLE)
    target_link_libraries(mltsdl PRIVATE objc "-framework Foundation")
  elseif(UNIX)
    target_link_libraries(mltsdl PRIVATE X11)
diff --git a/multimedia/mlt7/pkg/PLIST-gpl2 b/multimedia/mlt7/pkg/PLIST-gpl2
index 4230907c0a8..97ba9ee9ab2 100644
--- a/multimedia/mlt7/pkg/PLIST-gpl2
+++ b/multimedia/mlt7/pkg/PLIST-gpl2
@@ -14,15 +14,18 @@ share/mlt-7/plusgpl/
 share/mlt-7/plusgpl/consumer_cbrts.yml
 share/mlt-7/plusgpl/filter_burningtv.yml
 share/mlt-7/plusgpl/filter_lumaliftgaingamma.yml
+share/mlt-7/plusgpl/filter_outline.yml
 share/mlt-7/plusgpl/filter_rotoscoping.yml
 share/mlt-7/qt/
 share/mlt-7/qt/filter_audiolevelgraph.yml
 share/mlt-7/qt/filter_audiospectrum.yml
 share/mlt-7/qt/filter_audiowaveform.yml
+share/mlt-7/qt/filter_dropshadow.yml
 share/mlt-7/qt/filter_gpsgraphic.yml
 share/mlt-7/qt/filter_gpstext.yml
 share/mlt-7/qt/filter_lightshow.yml
 share/mlt-7/qt/filter_qtblend.yml
+share/mlt-7/qt/filter_qtblend_mode.yml
 share/mlt-7/qt/filter_qtcrop.yml
 share/mlt-7/qt/filter_qtext.yml
 share/mlt-7/qt/filter_typewriter.yml
@@ -35,10 +38,12 @@ share/mlt-7/qt6/
 share/mlt-7/qt6/filter_audiolevelgraph.yml
 share/mlt-7/qt6/filter_audiospectrum.yml
 share/mlt-7/qt6/filter_audiowaveform.yml
+share/mlt-7/qt6/filter_dropshadow.yml
 share/mlt-7/qt6/filter_gpsgraphic.yml
 share/mlt-7/qt6/filter_gpstext.yml
 share/mlt-7/qt6/filter_lightshow.yml
 share/mlt-7/qt6/filter_qtblend.yml
+share/mlt-7/qt6/filter_qtblend_mode.yml
 share/mlt-7/qt6/filter_qtcrop.yml
 share/mlt-7/qt6/filter_qtext.yml
 share/mlt-7/qt6/filter_typewriter.yml
diff --git a/multimedia/mlt7/pkg/PLIST-main b/multimedia/mlt7/pkg/PLIST-main
index cfbad3c88c5..8e7c36d6018 100644
--- a/multimedia/mlt7/pkg/PLIST-main
+++ b/multimedia/mlt7/pkg/PLIST-main
@@ -10,6 +10,7 @@ include/mlt-7/framework/mlt_chain.h
 include/mlt-7/framework/mlt_consumer.h
 include/mlt-7/framework/mlt_deque.h
 include/mlt-7/framework/mlt_events.h
+include/mlt-7/framework/mlt_export.h
 include/mlt-7/framework/mlt_factory.h
 include/mlt-7/framework/mlt_field.h
 include/mlt-7/framework/mlt_filter.h
@@ -76,11 +77,10 @@ lib/mlt-7/
 @so lib/mlt-7/libmltdecklink.so
 @so lib/mlt-7/libmltfrei0r.so
 @so lib/mlt-7/libmltgdk.so
-@so lib/mlt-7/libmltjackrack.so
 @so lib/mlt-7/libmltkdenlive.so
+@so lib/mlt-7/libmltmovit.so
 @so lib/mlt-7/libmltoldfilm.so
 @so lib/mlt-7/libmltplus.so
-@so lib/mlt-7/libmltsdl.so
 @so lib/mlt-7/libmltsdl2.so
 @so lib/mlt-7/libmltsox.so
 @so lib/mlt-7/libmltvorbis.so
@@ -165,14 +165,32 @@ share/mlt-7/gdk/
 share/mlt-7/gdk/filter_rescale.yml
 share/mlt-7/gdk/producer_pango.yml
 share/mlt-7/gdk/producer_pixbuf.yml
-share/mlt-7/jackrack/
-share/mlt-7/jackrack/consumer_jack.yml
 share/mlt-7/kdenlive/
 share/mlt-7/kdenlive/filter_boxblur.yml
 share/mlt-7/kdenlive/filter_freeze.yml
 share/mlt-7/kdenlive/filter_wave.yml
 share/mlt-7/kdenlive/producer_framebuffer.yml
 share/mlt-7/metaschema.yaml
+share/mlt-7/movit/
+share/mlt-7/movit/filter_movit_blur.yml
+share/mlt-7/movit/filter_movit_convert.yml
+share/mlt-7/movit/filter_movit_crop.yml
+share/mlt-7/movit/filter_movit_deconvolution_sharpen.yml
+share/mlt-7/movit/filter_movit_diffusion.yml
+share/mlt-7/movit/filter_movit_flip.yml
+share/mlt-7/movit/filter_movit_glow.yml
+share/mlt-7/movit/filter_movit_lift_gamma_gain.yml
+share/mlt-7/movit/filter_movit_mirror.yml
+share/mlt-7/movit/filter_movit_opacity.yml
+share/mlt-7/movit/filter_movit_rect.yml
+share/mlt-7/movit/filter_movit_resample.yml
+share/mlt-7/movit/filter_movit_resize.yml
+share/mlt-7/movit/filter_movit_saturation.yml
+share/mlt-7/movit/filter_movit_vignette.yml
+share/mlt-7/movit/filter_movit_white_balance.yml
+share/mlt-7/movit/transition_movit_luma.yml
+share/mlt-7/movit/transition_movit_mix.yml
+share/mlt-7/movit/transition_movit_overlay.yml
 share/mlt-7/oldfilm/
 share/mlt-7/oldfilm/dust1.svg
 share/mlt-7/oldfilm/dust2.svg
@@ -450,15 +468,8 @@ share/mlt-7/profiles/vcd_ntsc
 share/mlt-7/profiles/vcd_pal
 share/mlt-7/profiles/vertical_hd_30
 share/mlt-7/profiles/vertical_hd_60
-share/mlt-7/qt/filter_dropshadow.yml
-share/mlt-7/qt6/filter_dropshadow.yml
 share/mlt-7/resample/
 share/mlt-7/resample/link_resample.yml
-share/mlt-7/sdl/
-share/mlt-7/sdl/consumer_sdl.yml
-share/mlt-7/sdl/consumer_sdl_audio.yml
-share/mlt-7/sdl/consumer_sdl_preview.yml
-share/mlt-7/sdl/consumer_sdl_still.yml
 share/mlt-7/sdl2/
 share/mlt-7/sdl2/consumer_sdl2.yml
 share/mlt-7/sdl2/consumer_sdl2_audio.yml

Reply via email to