* [Buildroot] [PATCH 1/1] package/freeswitch: add opencv3 optional dependency
@ 2020-10-17 13:10 Fabrice Fontaine
2020-10-18 8:05 ` Yann E. MORIN
0 siblings, 1 reply; 2+ messages in thread
From: Fabrice Fontaine @ 2020-10-17 13:10 UTC (permalink / raw)
To: buildroot
opencv3 is an optional dependency since version 1.8.1 and
https://github.com/signalwire/freeswitch/commit/6483ab8b65886465863584e8dcfee57084030b9c
Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
---
...ions-mod_cv-mod_cv.cpp-fix-build-wit.patch | 44 +++++++++++++++++++
package/freeswitch/Config.in | 3 ++
package/freeswitch/freeswitch.mk | 5 +++
3 files changed, 52 insertions(+)
create mode 100644 package/freeswitch/0001-src-mod-applications-mod_cv-mod_cv.cpp-fix-build-wit.patch
diff --git a/package/freeswitch/0001-src-mod-applications-mod_cv-mod_cv.cpp-fix-build-wit.patch b/package/freeswitch/0001-src-mod-applications-mod_cv-mod_cv.cpp-fix-build-wit.patch
new file mode 100644
index 0000000000..cd0a3ab4c2
--- /dev/null
+++ b/package/freeswitch/0001-src-mod-applications-mod_cv-mod_cv.cpp-fix-build-wit.patch
@@ -0,0 +1,44 @@
+From 575409a14e62f73e83309daf8ff6642a235f250c Mon Sep 17 00:00:00 2001
+From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+Date: Fri, 16 Oct 2020 23:06:36 +0200
+Subject: [PATCH] src/mod/applications/mod_cv/mod_cv.cpp: fix build with opencv
+ 3.4.9
+MIME-Version: 1.0
+Content-Type: text/plain; charset=UTF-8
+Content-Transfer-Encoding: 8bit
+
+Use cvScalar instead of CV_RGB to avoid the following build failure with
+opencv 3.4.9:
+
+mod_cv.cpp:693:24: error: conversion from ?cv::Scalar {aka cv::Scalar_<double>}? to non-scalar type ?CvScalar? requested
+ CvScalar col = CV_RGB((float)255 * object_neighbors / max_neighbors, 0, 0);
+ ^
+
+Indeed, CV_RGB is defined as cv::Scalar instead of cvScalar since
+version 3.4.2 and
+https://github.com/opencv/opencv/commit/7f9253ea0a9fe2635926379420002dbf0c3fce0f
+
+It should be noted that CV_RGB(r,g,b) = cvScalar(b,g,r,0)
+
+Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+[Upstream status: https://github.com/signalwire/freeswitch/pull/914]
+---
+ src/mod/applications/mod_cv/mod_cv.cpp | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/src/mod/applications/mod_cv/mod_cv.cpp b/src/mod/applications/mod_cv/mod_cv.cpp
+index 582f925abf..bbec755e91 100644
+--- a/src/mod/applications/mod_cv/mod_cv.cpp
++++ b/src/mod/applications/mod_cv/mod_cv.cpp
+@@ -690,7 +690,7 @@ void detectAndDraw(cv_context_t *context)
+ //printf("WTF %d\n", object_neighbors);
+ //cout << "Detected " << object_neighbors << " object neighbors" << endl;
+ const int rect_height = cvRound((float)img.rows * object_neighbors / max_neighbors);
+- CvScalar col = CV_RGB((float)255 * object_neighbors / max_neighbors, 0, 0);
++ CvScalar col = cvScalar(0, 0, (float)255 * object_neighbors / max_neighbors, 0);
+ rectangle(img, cvPoint(0, img.rows), cvPoint(img.cols/10, img.rows - rect_height), col, -1);
+
+ parse_stats(&context->nestDetected, nestedObjects.size(), context->skip);
+--
+2.28.0
+
diff --git a/package/freeswitch/Config.in b/package/freeswitch/Config.in
index fc8b4bf7e7..a2bb6f4fb0 100644
--- a/package/freeswitch/Config.in
+++ b/package/freeswitch/Config.in
@@ -14,6 +14,9 @@ config BR2_PACKAGE_FREESWITCH
select BR2_PACKAGE_OPENCV_LIB_HIGHGUI if BR2_PACKAGE_OPENCV
select BR2_PACKAGE_OPENCV_LIB_IMGPROC if BR2_PACKAGE_OPENCV
select BR2_PACKAGE_OPENCV_LIB_OBJDETECT if BR2_PACKAGE_OPENCV
+ select BR2_PACKAGE_OPENCV3_LIB_HIGHGUI if BR2_PACKAGE_OPENCV3
+ select BR2_PACKAGE_OPENCV3_LIB_IMGPROC if BR2_PACKAGE_OPENCV3
+ select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT if BR2_PACKAGE_OPENCV3
select BR2_PACKAGE_OPENSSL
select BR2_PACKAGE_PCRE
select BR2_PACKAGE_SOFIA_SIP
diff --git a/package/freeswitch/freeswitch.mk b/package/freeswitch/freeswitch.mk
index fe10bc1fa1..e4438e5f04 100644
--- a/package/freeswitch/freeswitch.mk
+++ b/package/freeswitch/freeswitch.mk
@@ -279,6 +279,11 @@ FREESWITCH_DEPENDENCIES += opencv
FREESWITCH_ENABLED_MODULES += applications/mod_cv
endif
+ifeq ($(BR2_PACKAGE_OPENCV3),y)
+FREESWITCH_DEPENDENCIES += opencv3
+FREESWITCH_ENABLED_MODULES += applications/mod_cv
+endif
+
ifeq ($(BR2_PACKAGE_POSTGRESQL),y)
FREESWITCH_CONF_ENV += \
ac_cv_path_PG_CONFIG=$(STAGING_DIR)/usr/bin/pg_config
--
2.28.0
^ permalink raw reply related [flat|nested] 2+ messages in thread
* [Buildroot] [PATCH 1/1] package/freeswitch: add opencv3 optional dependency
2020-10-17 13:10 [Buildroot] [PATCH 1/1] package/freeswitch: add opencv3 optional dependency Fabrice Fontaine
@ 2020-10-18 8:05 ` Yann E. MORIN
0 siblings, 0 replies; 2+ messages in thread
From: Yann E. MORIN @ 2020-10-18 8:05 UTC (permalink / raw)
To: buildroot
Fabrice, All,
On 2020-10-17 15:10 +0200, Fabrice Fontaine spake thusly:
> opencv3 is an optional dependency since version 1.8.1 and
> https://github.com/signalwire/freeswitch/commit/6483ab8b65886465863584e8dcfee57084030b9c
>
> Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
Applied to master, thanks.
Regards,
Yann E. MORIN.
> ---
> ...ions-mod_cv-mod_cv.cpp-fix-build-wit.patch | 44 +++++++++++++++++++
> package/freeswitch/Config.in | 3 ++
> package/freeswitch/freeswitch.mk | 5 +++
> 3 files changed, 52 insertions(+)
> create mode 100644 package/freeswitch/0001-src-mod-applications-mod_cv-mod_cv.cpp-fix-build-wit.patch
>
> diff --git a/package/freeswitch/0001-src-mod-applications-mod_cv-mod_cv.cpp-fix-build-wit.patch b/package/freeswitch/0001-src-mod-applications-mod_cv-mod_cv.cpp-fix-build-wit.patch
> new file mode 100644
> index 0000000000..cd0a3ab4c2
> --- /dev/null
> +++ b/package/freeswitch/0001-src-mod-applications-mod_cv-mod_cv.cpp-fix-build-wit.patch
> @@ -0,0 +1,44 @@
> +From 575409a14e62f73e83309daf8ff6642a235f250c Mon Sep 17 00:00:00 2001
> +From: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> +Date: Fri, 16 Oct 2020 23:06:36 +0200
> +Subject: [PATCH] src/mod/applications/mod_cv/mod_cv.cpp: fix build with opencv
> + 3.4.9
> +MIME-Version: 1.0
> +Content-Type: text/plain; charset=UTF-8
> +Content-Transfer-Encoding: 8bit
> +
> +Use cvScalar instead of CV_RGB to avoid the following build failure with
> +opencv 3.4.9:
> +
> +mod_cv.cpp:693:24: error: conversion from ?cv::Scalar {aka cv::Scalar_<double>}? to non-scalar type ?CvScalar? requested
> + CvScalar col = CV_RGB((float)255 * object_neighbors / max_neighbors, 0, 0);
> + ^
> +
> +Indeed, CV_RGB is defined as cv::Scalar instead of cvScalar since
> +version 3.4.2 and
> +https://github.com/opencv/opencv/commit/7f9253ea0a9fe2635926379420002dbf0c3fce0f
> +
> +It should be noted that CV_RGB(r,g,b) = cvScalar(b,g,r,0)
> +
> +Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
> +[Upstream status: https://github.com/signalwire/freeswitch/pull/914]
> +---
> + src/mod/applications/mod_cv/mod_cv.cpp | 2 +-
> + 1 file changed, 1 insertion(+), 1 deletion(-)
> +
> +diff --git a/src/mod/applications/mod_cv/mod_cv.cpp b/src/mod/applications/mod_cv/mod_cv.cpp
> +index 582f925abf..bbec755e91 100644
> +--- a/src/mod/applications/mod_cv/mod_cv.cpp
> ++++ b/src/mod/applications/mod_cv/mod_cv.cpp
> +@@ -690,7 +690,7 @@ void detectAndDraw(cv_context_t *context)
> + //printf("WTF %d\n", object_neighbors);
> + //cout << "Detected " << object_neighbors << " object neighbors" << endl;
> + const int rect_height = cvRound((float)img.rows * object_neighbors / max_neighbors);
> +- CvScalar col = CV_RGB((float)255 * object_neighbors / max_neighbors, 0, 0);
> ++ CvScalar col = cvScalar(0, 0, (float)255 * object_neighbors / max_neighbors, 0);
> + rectangle(img, cvPoint(0, img.rows), cvPoint(img.cols/10, img.rows - rect_height), col, -1);
> +
> + parse_stats(&context->nestDetected, nestedObjects.size(), context->skip);
> +--
> +2.28.0
> +
> diff --git a/package/freeswitch/Config.in b/package/freeswitch/Config.in
> index fc8b4bf7e7..a2bb6f4fb0 100644
> --- a/package/freeswitch/Config.in
> +++ b/package/freeswitch/Config.in
> @@ -14,6 +14,9 @@ config BR2_PACKAGE_FREESWITCH
> select BR2_PACKAGE_OPENCV_LIB_HIGHGUI if BR2_PACKAGE_OPENCV
> select BR2_PACKAGE_OPENCV_LIB_IMGPROC if BR2_PACKAGE_OPENCV
> select BR2_PACKAGE_OPENCV_LIB_OBJDETECT if BR2_PACKAGE_OPENCV
> + select BR2_PACKAGE_OPENCV3_LIB_HIGHGUI if BR2_PACKAGE_OPENCV3
> + select BR2_PACKAGE_OPENCV3_LIB_IMGPROC if BR2_PACKAGE_OPENCV3
> + select BR2_PACKAGE_OPENCV3_LIB_OBJDETECT if BR2_PACKAGE_OPENCV3
> select BR2_PACKAGE_OPENSSL
> select BR2_PACKAGE_PCRE
> select BR2_PACKAGE_SOFIA_SIP
> diff --git a/package/freeswitch/freeswitch.mk b/package/freeswitch/freeswitch.mk
> index fe10bc1fa1..e4438e5f04 100644
> --- a/package/freeswitch/freeswitch.mk
> +++ b/package/freeswitch/freeswitch.mk
> @@ -279,6 +279,11 @@ FREESWITCH_DEPENDENCIES += opencv
> FREESWITCH_ENABLED_MODULES += applications/mod_cv
> endif
>
> +ifeq ($(BR2_PACKAGE_OPENCV3),y)
> +FREESWITCH_DEPENDENCIES += opencv3
> +FREESWITCH_ENABLED_MODULES += applications/mod_cv
> +endif
> +
> ifeq ($(BR2_PACKAGE_POSTGRESQL),y)
> FREESWITCH_CONF_ENV += \
> ac_cv_path_PG_CONFIG=$(STAGING_DIR)/usr/bin/pg_config
> --
> 2.28.0
>
> _______________________________________________
> buildroot mailing list
> buildroot at busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
--
.-----------------.--------------------.------------------.--------------------.
| Yann E. MORIN | Real-Time Embedded | /"\ ASCII RIBBON | Erics' conspiracy: |
| +33 662 376 056 | Software Designer | \ / CAMPAIGN | ___ |
| +33 561 099 427 `------------.-------: X AGAINST | \e/ There is no |
| http://ymorin.is-a-geek.org/ | _/*\_ | / \ HTML MAIL | v conspiracy. |
'------------------------------^-------^------------------^--------------------'
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2020-10-18 8:05 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2020-10-17 13:10 [Buildroot] [PATCH 1/1] package/freeswitch: add opencv3 optional dependency Fabrice Fontaine
2020-10-18 8:05 ` Yann E. MORIN
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox