diff options
Diffstat (limited to 'source/l/mlt')
-rw-r--r-- | source/l/mlt/mlt-opencv.patch | 55 | ||||
-rwxr-xr-x | source/l/mlt/mlt.SlackBuild | 5 |
2 files changed, 59 insertions, 1 deletions
diff --git a/source/l/mlt/mlt-opencv.patch b/source/l/mlt/mlt-opencv.patch new file mode 100644 index 00000000..bd486a73 --- /dev/null +++ b/source/l/mlt/mlt-opencv.patch @@ -0,0 +1,55 @@ +diff -aurN mlt-6.24.1/src/modules/opencv/filter_opencv_tracker.cpp mlt-6.24.1.mod/src/modules/opencv/filter_opencv_tracker.cpp +--- mlt-6.24.1/src/modules/opencv/filter_opencv_tracker.cpp 2021-01-05 19:15:52.000000000 +0100 ++++ mlt-6.24.1.mod/src/modules/opencv/filter_opencv_tracker.cpp 2021-01-13 10:29:26.314403046 +0100 +@@ -25,7 +25,11 @@ + typedef struct + { + cv::Ptr<cv::Tracker> tracker; +- cv::Rect2d boundingBox; ++#if CV_VERSION_MAJOR < 4 && CV_VERSION_MINOR < 5 ++ cv::Rect2d boundingBox; ++#else ++ cv::Rect boundingBox; ++#endif + char * algo; + mlt_rect startRect; + bool initialized; +@@ -138,7 +142,7 @@ + { + data->tracker = cv::TrackerKCF::create(); + } +-#if CV_VERSION_MAJOR > 3 || (CV_VERSION_MAJOR == 3 && CV_VERSION_MINOR >= 4 && CV_VERSION_REVISION >= 2) ++#if (CV_VERSION_MAJOR > 3 && CV_VERSION_MAJOR < 4 && CV_VERSION_MINOR < 5) || (CV_VERSION_MAJOR == 3 && CV_VERSION_MINOR >= 4 && CV_VERSION_REVISION >= 2) + else if ( !strcmp(data->algo, "CSRT" ) ) + { + data->tracker = cv::TrackerCSRT::create(); +@@ -152,6 +156,7 @@ + { + data->tracker = cv::TrackerMIL::create(); + } ++#if CV_VERSION_MAJOR < 4 && CV_VERSION_MINOR < 5 + else if ( !strcmp(data->algo, "TLD" ) ) + { + data->tracker = cv::TrackerTLD::create(); +@@ -160,6 +165,7 @@ + { + data->tracker = cv::TrackerBoosting::create(); + } ++#endif // CV_VERSION_MAJOR < 4 && CV_VERSION_MINOR < 5 + #else + if ( data->algo == NULL || !strcmp(data->algo, "" ) ) + { +@@ -224,7 +230,12 @@ + if ( data->boundingBox.height <1 ) { + data->boundingBox.height = 50; + } +- if ( data->tracker->init( cvFrame, data->boundingBox ) ) { ++#if CV_VERSION_MAJOR < 4 && CV_VERSION_MINOR < 5 ++ if ( data->tracker->init( cvFrame, data->boundingBox ) ) { ++#else ++ { ++ data->tracker->init( cvFrame, data->boundingBox ); ++#endif + data->initialized = true; + data->analyze = true; + data->last_position = position - 1; diff --git a/source/l/mlt/mlt.SlackBuild b/source/l/mlt/mlt.SlackBuild index 59182265..fffc3a93 100755 --- a/source/l/mlt/mlt.SlackBuild +++ b/source/l/mlt/mlt.SlackBuild @@ -25,7 +25,7 @@ cd $(dirname $0) ; CWD=$(pwd) PKGNAM=mlt VERSION=${VERSION:-$(echo $PKGNAM-*.tar.?z | rev | cut -f 3- -d . | cut -f 1 -d - | rev)} -BUILD=${BUILD:-1} +BUILD=${BUILD:-2} # Automatically determine the architecture we're building on: if [ -z "$ARCH" ]; then @@ -88,6 +88,9 @@ find . \ PYTHONSITEPKG=$(python3 -c "from distutils.sysconfig import get_python_lib; print(get_python_lib())") +# Fix compatibility with newer opencv: +zcat $CWD/mlt-opencv.patch.gz | patch -p1 --verbose || exit 1 + # Configure, build, and install: if [ ! -r configure ]; then if [ -x ./autogen.sh ]; then |