media-libs/mlt: Fix build w/ opencv-3.3
authorAndreas Sturmlechner <asturm@gentoo.org>
Sat, 28 Oct 2017 11:56:32 +0000 (13:56 +0200)
committerAndreas Sturmlechner <asturm@gentoo.org>
Sat, 28 Oct 2017 12:17:15 +0000 (14:17 +0200)
Thanks-to: Serge Gavrilov <serge@pdmi.ras.ru>
Gentoo-bug: https://bugs.gentoo.org/631714
Package-Manager: Portage-2.3.13, Repoman-2.3.4

media-libs/mlt/files/mlt-6.4.1-opencv-3.3.patch [new file with mode: 0644]
media-libs/mlt/mlt-6.4.1-r3.ebuild

diff --git a/media-libs/mlt/files/mlt-6.4.1-opencv-3.3.patch b/media-libs/mlt/files/mlt-6.4.1-opencv-3.3.patch
new file mode 100644 (file)
index 0000000..0a3732d
--- /dev/null
@@ -0,0 +1,33 @@
+From 622ff3acf6256739bd547ade1ceca0e6df5022e6 Mon Sep 17 00:00:00 2001
+From: BoboopTeam <BoboopTeam@users.noreply.github.com>
+Date: Thu, 7 Sep 2017 22:14:48 +0200
+Subject: [PATCH] module: opencv: Remove deleted cv::Tracker::create()
+
+This static method is no longer present in OpenCV API, this workaround should fix compilation against OpenCV 3.3.0 and newer
+---
+ src/modules/opencv/filter_opencv_tracker.cpp | 10 +++++++---
+ 1 file changed, 7 insertions(+), 3 deletions(-)
+
+diff --git a/src/modules/opencv/filter_opencv_tracker.cpp b/src/modules/opencv/filter_opencv_tracker.cpp
+index 48ffb56b..3cfc07d2 100644
+--- a/src/modules/opencv/filter_opencv_tracker.cpp
++++ b/src/modules/opencv/filter_opencv_tracker.cpp
+@@ -111,11 +111,15 @@ static void analyze( mlt_filter filter, cv::Mat cvFrame, private_data* data, int
+               data->algo = mlt_properties_get( filter_properties, "algo" );
+                 if ( data->algo == NULL || !strcmp(data->algo, "" ) )
+                 {
+-                      data->tracker = cv::Tracker::create( "KCF" );
++                      data->tracker = cv::TrackerKCF::create();
++              }
++              else if (!strcmp(data->algo, "MIL" ))
++              {
++                      data->tracker = cv::TrackerMIL::create();
+               }
+               else
+-                {
+-                      data->tracker = cv::Tracker::create( data->algo );
++              {
++                      data->tracker = cv::TrackerBoosting::create();
+               }
+               // Discard previous results
index 0e847602b09cb0974d0c5e9c3624c3a49f3e57a4..68c20792d6f1a82417e29974df323a6e3042cd7e 100644 (file)
@@ -86,6 +86,7 @@ RDEPEND="${COMMON_DEPEND}
 PATCHES=(
        "${FILESDIR}"/${PN}-6.2.0-ruby-link.patch
        "${FILESDIR}"/${P}-libebur128-unbundle.patch
+       "${FILESDIR}"/${P}-opencv-3.3.patch
 )
 
 pkg_setup() {