On Tue Mar 30, 2021 at 07:30:30PM +0200, Marc Espie wrote: > Ping ? > > I've got some feedback from zhukov@, that apparently > kdenlive is no longer working, but nothing more. >
I could not detect any problems with a short test. > > No idea whether this is related to the mlt update, or whether kdenlive > was already broken before that update (as kde tends to be a moving target)... > > It's been 2 weeks... can I get some feedback from Vadim OR somebody else ?... > I don't grok the interface to kdenlive. So, besides "it starts", it seems > fine to me. The patch cannot be applied. > > On Sun, Mar 07, 2021 at 02:50:11PM +0100, Marc Espie wrote: > > This makes use of the libebur128 port I posted a few hours ago > > I've had most of this in my dir for a while, I actually got stumped on > > something stupid in shotcut. > > > > I've built and used shotcut with this without issue. I've also built > > kdenlive, but I'm not too familiar with it. > > > > Highlights: > > - uses external libebur > > - fix loads of warnings with clang (these patches haven been sent as > > Issue to upstream) > > > > Please test/okay > > > > Index: Makefile > > =================================================================== > > RCS file: /cvs/ports/multimedia/mlt/Makefile,v > > retrieving revision 1.27 > > diff -u -p -r1.27 Makefile > > --- Makefile 24 Aug 2020 14:09:54 -0000 1.27 > > +++ Makefile 7 Mar 2021 13:47:08 -0000 > > @@ -2,14 +2,14 @@ > > > > COMMENT-main = multimedia transformations framework > > COMMENT-gpl2 = GPLv2-licensed modules for mlt > > -VERSION = 6.22.1 > > +VERSION = 6.24.0 > > DISTNAME = mlt-${VERSION} > > PKGNAME-main = ${DISTNAME} > > PKGNAME-gpl2 = mlt-gpl2-${VERSION} > > > > # XXX versions should be kept in sync together > > -SHARED_LIBS = mlt 3.2 > > -SHARED_LIBS += mlt++ 3.2 > > +SHARED_LIBS = mlt 4.0 > > +SHARED_LIBS += mlt++ 4.0 > > > > CATEGORIES = multimedia devel > > HOMEPAGE = https://www.mltframework.org/ > > @@ -21,12 +21,13 @@ DEBUG_PACKAGES = ${BUILD_PACKAGES} > > PERMIT_PACKAGE = Yes > > > > WANTLIB-main += ${COMPILER_LIBCXX} SDL SDL2 SDL_image X11 avcodec avdevice > > -WANTLIB-main += avfilter avformat avutil c exif fftw3 fontconfig > > gdk-x11-2.0 > > +WANTLIB-main += avfilter avformat avutil c exif fftw3 fontconfig > > WANTLIB-main += gdk_pixbuf-2.0 glib-2.0 gobject-2.0 jack m pango-1.0 > > WANTLIB-main += pangoft2-1.0 sox swresample swscale vorbisfile xml2 > > +WANTLIB-main += ebur128 > > > > WANTLIB += ${COMPILER_LIBCXX} Qt5Core Qt5Gui Qt5Svg Qt5Widgets > > -WANTLIB += Qt5Xml SDL2 exif m mlt samplerate > > +WANTLIB += Qt5Xml SDL2 m mlt samplerate > > > > MASTER_SITES = > > https://github.com/mltframework/mlt/releases/download/v${VERSION}/ > > > > @@ -43,13 +44,14 @@ RUN_DEPENDS-main = audio/ladspa \ > > x11/gtk+3,-guic > > > > LIB_DEPENDS-main = audio/jack \ > > + audio/libebur128 \ > > audio/sox \ > > devel/sdl-image \ > > devel/sdl2 \ > > graphics/ffmpeg \ > > graphics/libexif \ > > math/fftw3 \ > > - x11/gtk+2,-main > > + devel/pango > > > > LIB_DEPENDS-gpl2 = ${BUILD_PKGPATH},-main \ > > ${MODQT5_LIB_DEPENDS} \ > > Index: distinfo > > =================================================================== > > RCS file: /cvs/ports/multimedia/mlt/distinfo,v > > retrieving revision 1.9 > > diff -u -p -r1.9 distinfo > > --- distinfo 24 Aug 2020 14:09:54 -0000 1.9 > > +++ distinfo 7 Mar 2021 13:47:08 -0000 > > @@ -1,2 +1,2 @@ > > -SHA256 (mlt-6.22.1.tar.gz) = o9698LiBHw0gyQLMPfPQXa19P/NtHbFsCnM40NWYmZg= > > -SIZE (mlt-6.22.1.tar.gz) = 1343746 > > +SHA256 (mlt-6.24.0.tar.gz) = O5d8VjIyn8p2NNADQWLfbVt5zeMla6xD57qDU6zO1h4= > > +SIZE (mlt-6.24.0.tar.gz) = 1351427 > > Index: patches/patch-src_framework_Makefile > > =================================================================== > > RCS file: /cvs/ports/multimedia/mlt/patches/patch-src_framework_Makefile,v > > retrieving revision 1.5 > > diff -u -p -r1.5 patch-src_framework_Makefile > > --- patches/patch-src_framework_Makefile 24 Aug 2020 14:09:54 -0000 > > 1.5 > > +++ patches/patch-src_framework_Makefile 7 Mar 2021 13:47:08 -0000 > > @@ -20,7 +20,17 @@ Index: src/framework/Makefile > > else > > NAME = libmlt$(LIBSUF) > > TARGET = $(NAME).$(version) > > -@@ -100,10 +102,12 @@ all: $(TARGET) > > +@@ -92,18 +94,20 @@ OBJS += ../win32/win32.o ../win32/strptime.o > > + SRCS += ../win32/win32.c ../win32/strptime.c > > + endif > > + > > +-CFLAGS += $(RDYNAMIC) -DPREFIX_DATA="\"$(mltdatadir)\"" > > -DPREFIX_LIB="\"$(moduledir)\"" > > ++CFLAGS += -DPREFIX_DATA="\"$(mltdatadir)\"" > > -DPREFIX_LIB="\"$(moduledir)\"" > > + > > +-LDFLAGS += $(LIBDL) -lpthread -lm > > ++LDFLAGS += $(RDYNAMIC) $(LIBDL) -lpthread -lm > > + > > + all: $(TARGET) > > > > $(TARGET): $(OBJS) > > $(CC) $(SHFLAGS) -o $@ $(OBJS) $(LDFLAGS) > > Index: patches/patch-src_framework_mlt_property_c > > =================================================================== > > RCS file: > > /cvs/ports/multimedia/mlt/patches/patch-src_framework_mlt_property_c,v > > retrieving revision 1.4 > > diff -u -p -r1.4 patch-src_framework_mlt_property_c > > --- patches/patch-src_framework_mlt_property_c 24 Aug 2020 14:09:54 > > -0000 1.4 > > +++ patches/patch-src_framework_mlt_property_c 7 Mar 2021 13:47:08 > > -0000 > > @@ -7,22 +7,7 @@ locale functions from dumping core! > > Index: src/framework/mlt_property.c > > --- src/framework/mlt_property.c.orig > > +++ src/framework/mlt_property.c > > -@@ -90,8 +90,12 @@ struct mlt_property_s > > - mlt_property mlt_property_init( ) > > - { > > - mlt_property self = calloc( 1, sizeof( *self ) ); > > -- if ( self ) > > -- pthread_mutex_init( &self->mutex, NULL ); > > -+ if ( self ) { > > -+ pthread_mutexattr_t attr; > > -+ pthread_mutexattr_init(&attr); > > -+ pthread_mutexattr_settype(&attr, PTHREAD_MUTEX_RECURSIVE); > > -+ pthread_mutex_init( &self->mutex, &attr ); > > -+ } > > - return self; > > - } > > - > > -@@ -311,7 +315,7 @@ static int time_clock_to_frames( mlt_property self, co > > +@@ -315,7 +315,7 @@ static int time_clock_to_frames( mlt_property self, co > > s = copy; > > pos = strrchr( s, ':' ); > > > > @@ -31,7 +16,7 @@ Index: src/framework/mlt_property.c > > char *orig_localename = NULL; > > if ( locale ) > > { > > -@@ -353,7 +357,7 @@ static int time_clock_to_frames( mlt_property self, co > > +@@ -357,7 +357,7 @@ static int time_clock_to_frames( mlt_property self, co > > seconds = strtod( s, NULL ); > > } > > > > @@ -40,7 +25,7 @@ Index: src/framework/mlt_property.c > > if ( locale ) { > > // Restore the current locale > > setlocale( LC_NUMERIC, orig_localename ); > > -@@ -529,7 +533,7 @@ static double mlt_property_atof( mlt_property self, do > > +@@ -533,7 +533,7 @@ static double mlt_property_atof( mlt_property self, do > > if ( locale ) > > result = strtod_l( value, &end, locale ); > > else > > @@ -49,7 +34,7 @@ Index: src/framework/mlt_property.c > > char *orig_localename = NULL; > > if ( locale ) { > > // Protect damaging the global locale from a temporary > > locale on another thread. > > -@@ -547,7 +551,7 @@ static double mlt_property_atof( mlt_property self, do > > +@@ -551,7 +551,7 @@ static double mlt_property_atof( mlt_property self, do > > if ( end && end[0] == '%' ) > > result /= 100.0; > > > > @@ -58,7 +43,7 @@ Index: src/framework/mlt_property.c > > if ( locale ) { > > // Restore the current locale > > setlocale( LC_NUMERIC, orig_localename ); > > -@@ -775,7 +779,7 @@ char *mlt_property_get_string_l_tf( mlt_property self, > > +@@ -779,7 +779,7 @@ char *mlt_property_get_string_l_tf( mlt_property self, > > } > > else if ( ! ( self->types & mlt_prop_string ) ) > > { > > @@ -67,7 +52,7 @@ Index: src/framework/mlt_property.c > > // TODO: when glibc gets sprintf_l, start using it! For now, > > hack on setlocale. > > // Save the current locale > > #if defined(__APPLE__) > > -@@ -821,7 +825,7 @@ char *mlt_property_get_string_l_tf( mlt_property self, > > +@@ -825,7 +825,7 @@ char *mlt_property_get_string_l_tf( mlt_property self, > > self->types |= mlt_prop_string; > > self->prop_string = self->serialiser( self->data, > > self->length ); > > } > > @@ -76,7 +61,7 @@ Index: src/framework/mlt_property.c > > // Restore the current locale > > setlocale( LC_NUMERIC, orig_localename ); > > free( orig_localename ); > > -@@ -1033,7 +1037,7 @@ static void time_clock_from_frames( int frames, > > double > > +@@ -1037,7 +1037,7 @@ static void time_clock_from_frames( int frames, > > double > > > > char *mlt_property_get_time( mlt_property self, mlt_time_format format, > > double fps, locale_t locale ) > > { > > @@ -85,7 +70,7 @@ Index: src/framework/mlt_property.c > > char *orig_localename = NULL; > > #endif > > int frames = 0; > > -@@ -1046,7 +1050,7 @@ char *mlt_property_get_time( mlt_property self, > > mlt_ti > > +@@ -1050,7 +1050,7 @@ char *mlt_property_get_time( mlt_property self, > > mlt_ti > > if ( format == mlt_time_frames ) > > return mlt_property_get_string_l( self, locale ); > > > > @@ -94,7 +79,7 @@ Index: src/framework/mlt_property.c > > // Use the specified locale > > if ( locale ) > > { > > -@@ -1105,7 +1109,7 @@ char *mlt_property_get_time( mlt_property self, > > mlt_ti > > +@@ -1109,7 +1109,7 @@ char *mlt_property_get_time( mlt_property self, > > mlt_ti > > else // Use smpte drop frame by default > > time_smpte_from_frames( frames, fps, self->prop_string, 1 ); > > > > @@ -103,7 +88,7 @@ Index: src/framework/mlt_property.c > > // Restore the current locale > > if ( locale ) > > { > > -@@ -1149,7 +1153,7 @@ static int is_property_numeric( mlt_property self, > > loc > > +@@ -1153,7 +1153,7 @@ static int is_property_numeric( mlt_property self, > > loc > > if ( locale ) > > strtod_l( self->prop_string, &p, locale ); > > else > > @@ -112,7 +97,7 @@ Index: src/framework/mlt_property.c > > char *orig_localename = NULL; > > if ( locale ) { > > // Protect damaging the global locale from a temporary > > locale on another thread. > > -@@ -1165,7 +1169,7 @@ static int is_property_numeric( mlt_property self, > > loc > > +@@ -1169,7 +1169,7 @@ static int is_property_numeric( mlt_property self, > > loc > > > > strtod( self->prop_string, &p ); > > > > @@ -121,7 +106,7 @@ Index: src/framework/mlt_property.c > > if ( locale ) { > > // Restore the current locale > > setlocale( LC_NUMERIC, orig_localename ); > > -@@ -1650,7 +1654,7 @@ mlt_rect mlt_property_get_rect( mlt_property self, > > loc > > +@@ -1654,7 +1654,7 @@ mlt_rect mlt_property_get_rect( mlt_property self, > > loc > > char *p = NULL; > > int count = 0; > > > > @@ -130,7 +115,7 @@ Index: src/framework/mlt_property.c > > char *orig_localename = NULL; > > if ( locale ) { > > // Protect damaging the global locale from a temporary > > locale on another thread. > > -@@ -1702,7 +1706,7 @@ mlt_rect mlt_property_get_rect( mlt_property self, > > loc > > +@@ -1706,7 +1706,7 @@ mlt_rect mlt_property_get_rect( mlt_property self, > > loc > > count ++; > > } > > > > Index: patches/patch-src_melt_Makefile > > =================================================================== > > RCS file: patches/patch-src_melt_Makefile > > diff -N patches/patch-src_melt_Makefile > > --- /dev/null 1 Jan 1970 00:00:00 -0000 > > +++ patches/patch-src_melt_Makefile 7 Mar 2021 13:47:08 -0000 > > @@ -0,0 +1,17 @@ > > +$OpenBSD$ > > + > > +Index: src/melt/Makefile > > +--- src/melt/Makefile.orig > > ++++ src/melt/Makefile > > +@@ -3,9 +3,9 @@ include ../../config.mak > > + OBJS = melt.o \ > > + io.o > > + > > +-CFLAGS += -I.. $(RDYNAMIC) -DVERSION=\"$(version)\" > > ++CFLAGS += -I.. -DVERSION=\"$(version)\" > > + > > +-LDFLAGS += -L../framework -lmlt -lpthread > > ++LDFLAGS += $(RDYNAMIC) -L../framework -lmlt -lpthread > > + > > + SRCS := $(OBJS:.o=.c) > > + > > Index: patches/patch-src_mlt++_Makefile > > =================================================================== > > RCS file: /cvs/ports/multimedia/mlt/patches/patch-src_mlt++_Makefile,v > > retrieving revision 1.5 > > diff -u -p -r1.5 patch-src_mlt++_Makefile > > --- patches/patch-src_mlt++_Makefile 24 Aug 2020 14:09:54 -0000 > > 1.5 > > +++ patches/patch-src_mlt++_Makefile 7 Mar 2021 13:47:08 -0000 > > @@ -13,6 +13,18 @@ Index: src/mlt++/Makefile > > else > > TARGET = $(NAME).$(version) > > SONAME = $(NAME).$(soversion) > > +@@ -19,9 +23,9 @@ endif > > + ifneq (, $(shell $(CXX) --version | grep -is -e g++ -e clang)) > > + CXXFLAGS += -std=c++11 > > + endif > > +-CXXFLAGS += -I.. $(RDYNAMIC) -DVERSION=\"$(version)\" -fvisibility=hidden > > ++CXXFLAGS += -I.. -DVERSION=\"$(version)\" -fvisibility=hidden > > + > > +-LDFLAGS := -L../framework -lmlt $(LDFLAGS) > > ++LDFLAGS := $(RDYNAMIC) -L../framework -lmlt $(LDFLAGS) > > + ifeq ($(targetos), Linux) > > + LDFLAGS += -Wl,--version-script=mlt++.vers > > + endif > > @@ -58,10 +62,12 @@ all: $(TARGET) > > > > $(TARGET): $(OBJS) > > Index: patches/patch-src_modules_qt_Makefile > > =================================================================== > > RCS file: /cvs/ports/multimedia/mlt/patches/patch-src_modules_qt_Makefile,v > > retrieving revision 1.4 > > diff -u -p -r1.4 patch-src_modules_qt_Makefile > > --- patches/patch-src_modules_qt_Makefile 26 Apr 2019 13:39:16 -0000 > > 1.4 > > +++ patches/patch-src_modules_qt_Makefile 7 Mar 2021 13:47:08 -0000 > > @@ -3,7 +3,7 @@ XXX Dirty hack > > Index: src/modules/qt/Makefile > > --- src/modules/qt/Makefile.orig > > +++ src/modules/qt/Makefile > > -@@ -34,6 +34,10 @@ ifdef USE_FFTW > > +@@ -35,6 +35,10 @@ ifdef USE_FFTW > > CFLAGS += -DUSE_FFTW > > endif > > > > Index: pkg/PLIST-main > > =================================================================== > > RCS file: /cvs/ports/multimedia/mlt/pkg/PLIST-main,v > > retrieving revision 1.11 > > diff -u -p -r1.11 PLIST-main > > --- pkg/PLIST-main 24 Aug 2020 14:09:54 -0000 1.11 > > +++ pkg/PLIST-main 7 Mar 2021 13:47:08 -0000 > > @@ -93,6 +93,7 @@ share/mlt/core/filter_audiomap.yml > > share/mlt/core/filter_audiowave.yml > > share/mlt/core/filter_brightness.yml > > share/mlt/core/filter_channelcopy.yml > > +share/mlt/core/filter_choppy.yml > > share/mlt/core/filter_crop.yml > > share/mlt/core/filter_data_show.yml > > share/mlt/core/filter_fieldorder.yml > > @@ -194,6 +195,7 @@ share/mlt/plus/filter_lift_gamma_gain.ym > > share/mlt/plus/filter_loudness.yml > > share/mlt/plus/filter_loudness_meter.yml > > share/mlt/plus/filter_lumakey.yml > > +share/mlt/plus/filter_pillar_echo.yml > > share/mlt/plus/filter_rgblut.yml > > share/mlt/plus/filter_sepia.yml > > share/mlt/plus/filter_spot_remover.yml > > @@ -416,6 +418,7 @@ share/mlt/profiles/vcd_pal > > share/mlt/profiles/vertical_hd_30 > > share/mlt/profiles/vertical_hd_60 > > share/mlt/qt/ > > +share/mlt/qt/filter_qtcrop.yml > > share/mlt/qt/filter_qtext.yml > > share/mlt/sdl/ > > share/mlt/sdl/consumer_sdl.yml >