[arch-commits] Commit in frei0r-plugins/trunk (PKGBUILD frei0r-plugins-opencv3.patch)

Antonio Rojas arojas at archlinux.org
Fri Mar 11 07:03:37 UTC 2016


    Date: Friday, March 11, 2016 @ 08:03:37
  Author: arojas
Revision: 166023

opencv 3.1 rebuild

Added:
  frei0r-plugins/trunk/frei0r-plugins-opencv3.patch
Modified:
  frei0r-plugins/trunk/PKGBUILD

------------------------------+
 PKGBUILD                     |   15 +++++++++---
 frei0r-plugins-opencv3.patch |   50 +++++++++++++++++++++++++++++++++++++++++
 2 files changed, 61 insertions(+), 4 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2016-03-11 06:52:09 UTC (rev 166022)
+++ PKGBUILD	2016-03-11 07:03:37 UTC (rev 166023)
@@ -3,7 +3,7 @@
 
 pkgname=frei0r-plugins
 pkgver=1.4
-pkgrel=3
+pkgrel=4
 pkgdesc="A minimalistic plugin API for video sources and filters"
 arch=(i686 x86_64)
 url="http://www.piksel.org/frei0r"
@@ -11,13 +11,20 @@
 depends=('gcc-libs' 'gavl>=1.0.0' 'opencv>=2.4.3')
 makedepends=('doxygen')
 options=('!emptydirs')
-source=(https://files.dyne.org/frei0r/releases/$pkgname-$pkgver.tar.gz)
-md5sums=('202375d1bcb545c1b6eb8f34e0260ec5')
+source=(https://files.dyne.org/frei0r/releases/$pkgname-$pkgver.tar.gz frei0r-plugins-opencv3.patch)
+md5sums=('202375d1bcb545c1b6eb8f34e0260ec5'
+         '52d21eee99b5f38a97b905c5243e9143')
 
+prepare() {
+  cd $pkgname-$pkgver
+# Fix build with opencv 3 (Gentoo)
+  patch -p2 -i ../frei0r-plugins-opencv3.patch
+}
+
 build() {
   cd "$srcdir/$pkgname-$pkgver"
   ./configure --prefix=/usr
-  make
+  make -j1
 }
 
 package() {

Added: frei0r-plugins-opencv3.patch
===================================================================
--- frei0r-plugins-opencv3.patch	                        (rev 0)
+++ frei0r-plugins-opencv3.patch	2016-03-11 07:03:37 UTC (rev 166023)
@@ -0,0 +1,50 @@
+--- ./frei0r-plugins-1.4/src/filter/facedetect/facedetect.c.opencv3	2013-02-24 14:43:22.000000000 +0100
++++ ./frei0r-plugins-1.4/src/filter/facedetect/facedetect.c	2015-07-08 12:44:30.987056878 +0200
+@@ -211,8 +211,8 @@ CvSeq* detect_and_draw( IplImage* img, C
+ 
+   double scale = 1.3;
+   IplImage* gray = cvCreateImage( cvSize(img->width,img->height), 8, 1 );
+-  IplImage* small_img = cvCreateImage( cvSize( cvRound (img->width/scale),
+-                                               cvRound (img->height/scale)),
++  IplImage* small_img = cvCreateImage( cvSize( cvRound ((double)img->width/scale),
++                                               cvRound ((double)img->height/scale)),
+                                        8, 1 );
+   int i;
+ 
+--- ./frei0r-plugins-1.4/src/filter/facedetect/facedetect.cpp.opencv3	2013-02-24 14:43:22.000000000 +0100
++++ ./frei0r-plugins-1.4/src/filter/facedetect/facedetect.cpp	2015-07-08 12:48:32.754615885 +0200
+@@ -259,11 +259,11 @@ private:
+     {
+         double scale = this->scale == 0? 1.0 : this->scale;
+         CvScalar colors[5] = {
+-            {{cvRound(color[0].r * 255), cvRound(color[0].g * 255), cvRound(color[0].b * 255), cvRound(alpha * 255)}},
+-            {{cvRound(color[1].r * 255), cvRound(color[1].g * 255), cvRound(color[1].b * 255), cvRound(alpha * 255)}},
+-            {{cvRound(color[2].r * 255), cvRound(color[2].g * 255), cvRound(color[2].b * 255), cvRound(alpha * 255)}},
+-            {{cvRound(color[3].r * 255), cvRound(color[3].g * 255), cvRound(color[3].b * 255), cvRound(alpha * 255)}},
+-            {{cvRound(color[4].r * 255), cvRound(color[4].g * 255), cvRound(color[4].b * 255), cvRound(alpha * 255)}},
++            CvScalar(cvRound(color[0].r * 255), cvRound(color[0].g * 255), cvRound(color[0].b * 255), cvRound(alpha * 255)),
++            CvScalar(cvRound(color[1].r * 255), cvRound(color[1].g * 255), cvRound(color[1].b * 255), cvRound(alpha * 255)),
++            CvScalar(cvRound(color[2].r * 255), cvRound(color[2].g * 255), cvRound(color[2].b * 255), cvRound(alpha * 255)),
++            CvScalar(cvRound(color[3].r * 255), cvRound(color[3].g * 255), cvRound(color[3].b * 255), cvRound(alpha * 255)),
++            CvScalar(cvRound(color[4].r * 255), cvRound(color[4].g * 255), cvRound(color[4].b * 255), cvRound(alpha * 255)),
+         };
+         
+         for (int i = 0; i < (objects ? objects->total : 0); i++)
+@@ -287,14 +287,14 @@ private:
+                 }
+             case 1:
+                 {
+-                    CvBox2D box = {{center.x, center.y}, {r->width / scale, (r->height / scale) * 1.2}, 90};
++                    CvBox2D box = CvBox2D(CvPoint2D32f(center.x, center.y), CvSize2D32f(r->width / scale, (r->height / scale) * 1.2), 90);
+                     cvEllipseBox(image, box, colors[i % 5], thickness, linetype);
+                     break;
+                 }
+             case 2:
+                 {
+-                    CvPoint pt1 = {r->x / scale, r->y / scale};
+-                    CvPoint pt2 = {(r->x + r->width) / scale, (r->y + r->height) / scale};
++                    CvPoint pt1 = CvPoint(r->x / scale, r->y / scale);
++                    CvPoint pt2 = CvPoint((r->x + r->width) / scale, (r->y + r->height) / scale);
+                     cvRectangle(image, pt1, pt2, colors[i % 5], thickness, linetype);
+                     break;
+                 }



More information about the arch-commits mailing list