Howdy: GStreamer warnings on Archlinux

Created on 7 Aug 2019  路  11Comments  路  Source: boltgolt/howdy

These messages come out every time when howdy scans my face:

[ WARN:0] global /build/opencv/src/opencv-4.1.1/modules/videoio/src/cap_gstreamer.cpp (1756) handleMessage OpenCV | GStreamer warning: Embedded video playback halted; module source reported: Could not read from resource.
[ WARN:0] global /build/opencv/src/opencv-4.1.1/modules/videoio/src/cap_gstreamer.cpp (886) open OpenCV | GStreamer warning: unable to start pipeline
[ WARN:0] global /build/opencv/src/opencv-4.1.1/modules/videoio/src/cap_gstreamer.cpp (480) isPipelinePlaying OpenCV | GStreamer warning: GStreamer: pipeline have not been created

However, the scan is working properly.

My environment:

# uname -a
Linux t480s 5.2.6-arch1-1-ARCH #1 SMP PREEMPT Sun Aug 4 14:58:49 UTC 2019 x86_64 GNU/Linux

Packages versions:
extra/gstreamer 1.16.0-2 (1.9 MiB 18.0 MiB) (Installed)
extra/opencv 4.1.1-1 (30.1 MiB 174.9 MiB) (Installed)
aur/howdy 2.5.0-1 (+5 0.66%) (Out-of-date 2019-05-26) (Installed)
dependency arch

All 11 comments

Can confirm this report.

[ WARN:0] global /build/opencv/src/opencv-4.1.1/modules/videoio/src/cap_gstreamer.cpp (1756) handleMessage OpenCV | GStreamer warning: Embedded video playback halted; module source reported: Could not read from resource.
[ WARN:0] global /build/opencv/src/opencv-4.1.1/modules/videoio/src/cap_gstreamer.cpp (886) open OpenCV | GStreamer warning: unable to start pipeline
[ WARN:0] global /build/opencv/src/opencv-4.1.1/modules/videoio/src/cap_gstreamer.cpp (480) isPipelinePlaying OpenCV | GStreamer warning: GStreamer: pipeline have not been created

I also can confirm this

:+1:

Can confirm on the 2.5.1 version installed by makepkg the PKGBUILD from this git repo

  • System versions
Manjaro XFCE 18.0.4
Linux mibrony-pc 4.19.69-1-MANJARO #1 SMP PREEMPT Thu Aug 29 08:51:46 UTC 2019 x86_64 GNU/Linux
  • Packages versions
extra/gstreamer 1.16.0-2 (1.9 MiB 18.0 MiB) (Installed)
extra/opencv 4.1.1-1 (30.1 MiB 174.9 MiB) (Installed)
aur/howdy 2.5.0-1 (+6 1.12%) (Out-of-date 2019-05-26) (Installed: 2.5.1-1)

Anyone who confirmed this with same enviorment like acelot's or mine should use the +1 reaction emoji. Don't add a new comment, which will spam the inbox of the developer

If you really want to make a comment, at least post useful info like _your environment_ so you're contributing

+1

@a3v01d please read the comment above yours


I can't find much about it online, but it seems to be an issue with the library OpenCV uses. There's not much i can do except hope that it gets patched soon, i'm not even sure where to report this

I did a little digging here and there, and I found a temporary solution:
Set environment variables:

export OPENCV_LOG_LEVEL=ERROR

in /etc/enviorment or .profile or .(whatever shell)rc will make the warning disappear

According to opencv issue #14535, OpenCV has an API that control loglevel, but it's not exposed to python(cv2) yet, and the opencv binary in the official arch repo package is build on WARN level (which is by default). But it can be set thru environment variables.
Things like this might be inappropriate to be written into PKGBUILD, I would suggest (or try myself) editing the archWiki and include this.

I've updated the Howdy archwiki page. I tried my best but English is not my mother tongue. I'm semi-confident but it'll be fine if you want to do some editting :P

@boltgolt @acelot I think this issue can be closed since there's nothing more can be done other than a temporary workaround. I'll notice you by commenting on this issue again when the logging API get exposed to the python-cv2.

Howdy is an amazing project, keep up the good work! :)

Closing, as suggested by @Slept-Warrior

@Slept-Warrior
Can you please elaborate a bit more how you added export OPENCV_LOG_LEVEL=ERROR in /etc/environment?
I'm facing the same error but howdy is working OK. I tried sudo nano /etc/enviorment then added OPENCV_LOG_LEVEL=ERROR line but still when I run sudo howdy test it gives me the error. I think I didn't do it in the right way.

@Sobuj53 it's an environment variable, which means it will only apply the next time that file is used. For instance, if you're editing ~/.bashrc, it'll apply to new bash shell that you opened after the editing. Thus, to make /etc/environment applied globally, you need to logout&login or reboot.
This can be explained here if you're interested

Was this page helpful?
0 / 5 - 0 ratings