Bug 258694 - multimedia/obs-ndi cannot find libndi
Summary: multimedia/obs-ndi cannot find libndi
Status: New
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: --- Affects Only Me
Assignee: Yuri Victorovich
URL: https://github.com/Palakis/obs-ndi/is...
Keywords:
Depends on:
Blocks:
 
Reported: 2021-09-23 14:42 UTC by Jacob Meadows
Modified: 2022-01-22 22:50 UTC (History)
1 user (show)

See Also:
bugzilla: maintainer-feedback? (yuri)


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Jacob Meadows 2021-09-23 14:42:27 UTC
libndi is installed from packages, and obs-ndi is installed from packages.  Upon starting OBS, message is displayed "NDI™ Runtime not found. Please install libndi on your system.
You can find a copy of libndi for Linux on obs-ndi's GitHub page."
Comment 1 mario felicioni 2022-01-14 16:23:43 UTC
I have the same exact problem,that I have described here :

https://www.reddit.com/r/freebsd/comments/s3vzzi/trying_to_stream_my_ugly_face_with_obsstudio/
Comment 2 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 16:47:36 UTC
(In reply to mario felicioni from comment #1)

Mario,

Does installing libndi (multimedia/libndi) help?


Yuri
Comment 3 mario felicioni 2022-01-14 17:30:08 UTC
did u read the post that I've written on reddit and that I have posted here ? I've already installed the libndi package,but the error persists.
Comment 4 commit-hook freebsd_committer freebsd_triage 2022-01-14 18:06:11 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=391fef9e9f2a873effd31feabbe50ecbf4ec4811

commit 391fef9e9f2a873effd31feabbe50ecbf4ec4811
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-01-14 18:04:27 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-01-14 18:06:01 +0000

    multimedia/obs-ndi: Fix lookup path for libndi.so and add it as dependency

    PR:             258694
    Reported by:    mario felicioni <marietto2008@gmail.com>

 multimedia/obs-ndi/Makefile                          |  3 ++-
 multimedia/obs-ndi/files/patch-src_obs-ndi.cpp (new) | 11 +++++++++++
 2 files changed, 13 insertions(+), 1 deletion(-)
Comment 5 commit-hook freebsd_committer freebsd_triage 2022-01-14 18:07:12 UTC
A commit in branch 2022Q1 references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=5e094f7b1e5b71fa7c7173552e59ae73349732f9

commit 5e094f7b1e5b71fa7c7173552e59ae73349732f9
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-01-14 18:04:27 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-01-14 18:06:38 +0000

    multimedia/obs-ndi: Fix lookup path for libndi.so and add it as dependency

    PR:             258694
    Reported by:    mario felicioni <marietto2008@gmail.com>

    (cherry picked from commit 391fef9e9f2a873effd31feabbe50ecbf4ec4811)

 multimedia/obs-ndi/Makefile                          |  3 ++-
 multimedia/obs-ndi/files/patch-src_obs-ndi.cpp (new) | 11 +++++++++++
 2 files changed, 13 insertions(+), 1 deletion(-)
Comment 6 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 18:07:40 UTC
(In reply to mario felicioni from comment #3)

Mario,

Please update obs-ndi from the port and try again.


Yuri
Comment 7 mario felicioni 2022-01-14 18:23:32 UTC
which version do I need ? I've installed obs-ndi with the command pkg install obs-ndi and I've seen that its version is 4.9.1_1.
Comment 8 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 18:27:31 UTC
(In reply to mario felicioni from comment #7)

You need to:
1. cd /usr/ports/multimedia/obs-ndi
2. git pull
3. make deinstall install

The above assumes that you have the ports tree checked out.
If not, then you need to first run this command as root:
git clone https://git.FreeBSD.org/ports.git /usr/ports


Yuri
Comment 9 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 18:28:45 UTC
That would be 4.9.1_2.
Comment 10 mario felicioni 2022-01-14 18:32:06 UTC
root@marietto:/usr/ports/multimedia/obs-ndi # git pull

fatal: .git is not a git repository
Comment 11 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 18:34:23 UTC
(In reply to mario felicioni from comment #10)

Then you need to re-checkout the ports tree:
$ sudo rm -rf /usr/ports/*
$ sudo git clone https://git.FreeBSD.org/ports.git /usr/ports
Comment 12 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 18:42:00 UTC
(In reply to Yuri Victorovich from comment #11)

You might also need to remove .git since it appears to be invalid:
$ sudo rm -rf /usr/ports/.git
Comment 13 mario felicioni 2022-01-14 18:51:49 UTC
root@marietto:/usr/ports/multimedia/obs-ndi # ls

distinfo        files           Makefile        pkg-descr       pkg-plist
root@marietto:/usr/ports/multimedia/obs-ndi # git pull
already updated.

root@marietto:/usr/ports/multimedia/obs-ndi # make deinstall install
===>  Deinstalling for obs-ndi
===>   Deinstalling obs-ndi-4.9.1_1
Updating database digests format: 100%
Checking integrity... done (0 conflicting)
Deinstallation has been requested for the following 1 packages (of 0 packages in the universe):

Installed packages to be REMOVED:
        obs-ndi: 4.9.1_1

Number of packages to be removed: 1
[1/1] Deinstalling obs-ndi-4.9.1_1...
[1/1] Deleting files for obs-ndi-4.9.1_1: 100%
===>  License GPLv2 accepted by the user
===>   obs-ndi-4.9.1_2 depends on file: /usr/local/sbin/pkg - found
=> Palakis-obs-ndi-4.9.1_GH0.tar.gz doesn't seem to exist in /usr/ports/distfiles/.
=> Attempting to fetch https://codeload.github.com/Palakis/obs-ndi/tar.gz/4.9.1?dummy=/Palakis-obs-ndi-4.9.1_GH0.tar.gz
fetch: https://codeload.github.com/Palakis/obs-ndi/tar.gz/4.9.1?dummy=/Palakis-obs-ndi-4.9.1_GH0.tar.gz: size unknown
fetch: https://codeload.github.com/Palakis/obs-ndi/tar.gz/4.9.1?dummy=/Palakis-obs-ndi-4.9.1_GH0.tar.gz: size of remote file is not known
Palakis-obs-ndi-4.9.1_GH0.tar.gz                       302 kB 2005 kBps    00s
===> Fetching all distfiles required by obs-ndi-4.9.1_2 for building
===>  Extracting for obs-ndi-4.9.1_2
=> SHA256 Checksum OK for Palakis-obs-ndi-4.9.1_GH0.tar.gz.
===>  Patching for obs-ndi-4.9.1_2
===>  Applying FreeBSD patches for obs-ndi-4.9.1_2 from /usr/ports/multimedia/obs-ndi/files
===>   obs-ndi-4.9.1_2 depends on file: /usr/local/bin/cmake - found
===>   obs-ndi-4.9.1_2 depends on executable: ninja - found
===>   obs-ndi-4.9.1_2 depends on package: qt5-buildtools>=5.15.2 - found
===>   obs-ndi-4.9.1_2 depends on package: qt5-qmake>=5.15.2 - found
===>   obs-ndi-4.9.1_2 depends on shared library: libobs.so - found (/usr/local/lib/libobs.so)
===>   obs-ndi-4.9.1_2 depends on shared library: libQt5Core.so - found (/usr/local/lib/qt5/libQt5Core.so)
===>   obs-ndi-4.9.1_2 depends on shared library: libQt5Gui.so - found (/usr/local/lib/qt5/libQt5Gui.so)
===>   obs-ndi-4.9.1_2 depends on shared library: libQt5Widgets.so - found (/usr/local/lib/qt5/libQt5Widgets.so)
===>  Configuring for obs-ndi-4.9.1_2
===>  Performing out-of-source build
/bin/mkdir -p /usr/ports/multimedia/obs-ndi/work/.build
-- The C compiler identification is Clang 11.0.1
-- The CXX compiler identification is Clang 11.0.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- Configuring done
-- Generating done
CMake Warning:
  Manually-specified variables were not used by the project:

    CMAKE_CXX_FLAGS_DEBUG
    CMAKE_C_FLAGS_DEBUG
    CMAKE_C_FLAGS_RELEASE
    CMAKE_SHARED_LINKER_FLAGS
    CMAKE_VERBOSE_MAKEFILE
    THREADS_HAVE_PTHREAD_ARG


-- Build files have been written to: /usr/ports/multimedia/obs-ndi/work/.build
===>  Building for obs-ndi-4.9.1_2
[  8% 1/12] cd /usr/ports/multimedia/obs-ndi/work/.build && /usr/local/bin/cmake -E cmake_autogen /usr/ports/multimedia/obs-ndi/work/.build/CMakeFiles/obs-ndi_autogen.dir/AutogenInfo.json Release && /usr/local/bin/cmake -E touch /usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/timestamp && /usr/local/bin/cmake -E cmake_transform_depfile Ninja gccdepfile /usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 /usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 /usr/ports/multimedia/obs-ndi/work/.build /usr/ports/multimedia/obs-ndi/work/.build /usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/deps /usr/ports/multimedia/obs-ndi/work/.build/CMakeFiles/d/af53cc5fedc6eb8fea9ab874cbbdb4c0909db3bb9a8c8a381af6ea425d10d15c.d
[ 16% 11/12] /usr/bin/c++ -DHAVE_OBSCONFIG_H -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -Dobs_ndi_EXPORTS -I/usr/ports/multimedia/obs-ndi/work/.build -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 -I/usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/include -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/lib/ndi -I/../UI/obs-frontend-api -isystem /usr/local/include/obs -isystem /usr/local/include/qt5 -isystem /usr/local/include/qt5/QtCore -isystem /usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/QtWidgets -isystem /usr/local/include/qt5/QtGui -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11 -Ofast -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -fPIC -mmmx -msse -msse2 -fPIC -std=gnu++11 -MD -MT CMakeFiles/obs-ndi.dir/src/main-output.cpp.o -MF CMakeFiles/obs-ndi.dir/src/main-output.cpp.o.d -o CMakeFiles/obs-ndi.dir/src/main-output.cpp.o -c /usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/main-output.cpp
[ 25% 11/12] /usr/bin/c++ -DHAVE_OBSCONFIG_H -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -Dobs_ndi_EXPORTS -I/usr/ports/multimedia/obs-ndi/work/.build -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 -I/usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/include -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/lib/ndi -I/../UI/obs-frontend-api -isystem /usr/local/include/obs -isystem /usr/local/include/qt5 -isystem /usr/local/include/qt5/QtCore -isystem /usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/QtWidgets -isystem /usr/local/include/qt5/QtGui -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11 -Ofast -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -fPIC -mmmx -msse -msse2 -fPIC -std=gnu++11 -MD -MT CMakeFiles/obs-ndi.dir/src/preview-output.cpp.o -MF CMakeFiles/obs-ndi.dir/src/preview-output.cpp.o.d -o CMakeFiles/obs-ndi.dir/src/preview-output.cpp.o -c /usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/preview-output.cpp
[ 33% 11/12] /usr/bin/c++ -DHAVE_OBSCONFIG_H -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -Dobs_ndi_EXPORTS -I/usr/ports/multimedia/obs-ndi/work/.build -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 -I/usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/include -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/lib/ndi -I/../UI/obs-frontend-api -isystem /usr/local/include/obs -isystem /usr/local/include/qt5 -isystem /usr/local/include/qt5/QtCore -isystem /usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/QtWidgets -isystem /usr/local/include/qt5/QtGui -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11 -Ofast -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -fPIC -mmmx -msse -msse2 -fPIC -std=gnu++11 -MD -MT CMakeFiles/obs-ndi.dir/src/obs-ndi-output.cpp.o -MF CMakeFiles/obs-ndi.dir/src/obs-ndi-output.cpp.o.d -o CMakeFiles/obs-ndi.dir/src/obs-ndi-output.cpp.o -c /usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/obs-ndi-output.cpp
[ 41% 11/12] /usr/bin/c++ -DHAVE_OBSCONFIG_H -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -Dobs_ndi_EXPORTS -I/usr/ports/multimedia/obs-ndi/work/.build -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 -I/usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/include -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/lib/ndi -I/../UI/obs-frontend-api -isystem /usr/local/include/obs -isystem /usr/local/include/qt5 -isystem /usr/local/include/qt5/QtCore -isystem /usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/QtWidgets -isystem /usr/local/include/qt5/QtGui -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11 -Ofast -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -fPIC -mmmx -msse -msse2 -fPIC -std=gnu++11 -MD -MT CMakeFiles/obs-ndi.dir/src/obs-ndi-filter.cpp.o -MF CMakeFiles/obs-ndi.dir/src/obs-ndi-filter.cpp.o.d -o CMakeFiles/obs-ndi.dir/src/obs-ndi-filter.cpp.o -c /usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/obs-ndi-filter.cpp
[ 50% 11/12] /usr/bin/c++ -DHAVE_OBSCONFIG_H -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -Dobs_ndi_EXPORTS -I/usr/ports/multimedia/obs-ndi/work/.build -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 -I/usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/include -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/lib/ndi -I/../UI/obs-frontend-api -isystem /usr/local/include/obs -isystem /usr/local/include/qt5 -isystem /usr/local/include/qt5/QtCore -isystem /usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/QtWidgets -isystem /usr/local/include/qt5/QtGui -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11 -Ofast -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -fPIC -mmmx -msse -msse2 -fPIC -std=gnu++11 -MD -MT CMakeFiles/obs-ndi.dir/src/premultiplied-alpha-filter.cpp.o -MF CMakeFiles/obs-ndi.dir/src/premultiplied-alpha-filter.cpp.o.d -o CMakeFiles/obs-ndi.dir/src/premultiplied-alpha-filter.cpp.o -c /usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/premultiplied-alpha-filter.cpp
[ 58% 11/12] /usr/bin/c++ -DHAVE_OBSCONFIG_H -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -Dobs_ndi_EXPORTS -I/usr/ports/multimedia/obs-ndi/work/.build -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 -I/usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/include -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/lib/ndi -I/../UI/obs-frontend-api -isystem /usr/local/include/obs -isystem /usr/local/include/qt5 -isystem /usr/local/include/qt5/QtCore -isystem /usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/QtWidgets -isystem /usr/local/include/qt5/QtGui -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11 -Ofast -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -fPIC -mmmx -msse -msse2 -fPIC -std=gnu++11 -MD -MT CMakeFiles/obs-ndi.dir/src/obs-ndi-source.cpp.o -MF CMakeFiles/obs-ndi.dir/src/obs-ndi-source.cpp.o.d -o CMakeFiles/obs-ndi.dir/src/obs-ndi-source.cpp.o -c /usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/obs-ndi-source.cpp
/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/obs-ndi-source.cpp:341:12: warning: 4 enumeration values not handled in switch: 'NDIlib_FourCC_video_type_YV12', 'NDIlib_FourCC_video_type_P216', 'NDIlib_FourCC_video_type_PA16'... [-Wswitch]
                        switch (video_frame.FourCC) {
                                ^
/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/obs-ndi-source.cpp:464:16: warning: equality comparison result unused [-Wunused-comparison]
                s->sync_mode == PROP_SYNC_NDI_SOURCE_TIMECODE;
                ~~~~~~~~~~~~~^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/obs-ndi-source.cpp:464:16: note: use '=' to turn this equality comparison into an assignment
                s->sync_mode == PROP_SYNC_NDI_SOURCE_TIMECODE;
                             ^~
                             =
2 warnings generated.
[ 66% 11/12] /usr/bin/c++ -DHAVE_OBSCONFIG_H -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -Dobs_ndi_EXPORTS -I/usr/ports/multimedia/obs-ndi/work/.build -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 -I/usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/include -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/lib/ndi -I/../UI/obs-frontend-api -isystem /usr/local/include/obs -isystem /usr/local/include/qt5 -isystem /usr/local/include/qt5/QtCore -isystem /usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/QtWidgets -isystem /usr/local/include/qt5/QtGui -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11 -Ofast -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -fPIC -mmmx -msse -msse2 -fPIC -std=gnu++11 -MD -MT CMakeFiles/obs-ndi.dir/src/Config.cpp.o -MF CMakeFiles/obs-ndi.dir/src/Config.cpp.o.d -o CMakeFiles/obs-ndi.dir/src/Config.cpp.o -c /usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/Config.cpp
[ 75% 11/12] /usr/bin/c++ -DHAVE_OBSCONFIG_H -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -Dobs_ndi_EXPORTS -I/usr/ports/multimedia/obs-ndi/work/.build -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 -I/usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/include -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/lib/ndi -I/../UI/obs-frontend-api -isystem /usr/local/include/obs -isystem /usr/local/include/qt5 -isystem /usr/local/include/qt5/QtCore -isystem /usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/QtWidgets -isystem /usr/local/include/qt5/QtGui -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11 -Ofast -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -fPIC -mmmx -msse -msse2 -fPIC -std=gnu++11 -MD -MT CMakeFiles/obs-ndi.dir/obs-ndi_autogen/mocs_compilation.cpp.o -MF CMakeFiles/obs-ndi.dir/obs-ndi_autogen/mocs_compilation.cpp.o.d -o CMakeFiles/obs-ndi.dir/obs-ndi_autogen/mocs_compilation.cpp.o -c /usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/mocs_compilation.cpp
[ 83% 11/12] /usr/bin/c++ -DHAVE_OBSCONFIG_H -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -Dobs_ndi_EXPORTS -I/usr/ports/multimedia/obs-ndi/work/.build -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 -I/usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/include -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/lib/ndi -I/../UI/obs-frontend-api -isystem /usr/local/include/obs -isystem /usr/local/include/qt5 -isystem /usr/local/include/qt5/QtCore -isystem /usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/QtWidgets -isystem /usr/local/include/qt5/QtGui -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11 -Ofast -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -fPIC -mmmx -msse -msse2 -fPIC -std=gnu++11 -MD -MT CMakeFiles/obs-ndi.dir/src/forms/output-settings.cpp.o -MF CMakeFiles/obs-ndi.dir/src/forms/output-settings.cpp.o.d -o CMakeFiles/obs-ndi.dir/src/forms/output-settings.cpp.o -c /usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/forms/output-settings.cpp
[ 91% 11/12] /usr/bin/c++ -DHAVE_OBSCONFIG_H -DQT_CORE_LIB -DQT_GUI_LIB -DQT_NO_DEBUG -DQT_WIDGETS_LIB -Dobs_ndi_EXPORTS -I/usr/ports/multimedia/obs-ndi/work/.build -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1 -I/usr/ports/multimedia/obs-ndi/work/.build/obs-ndi_autogen/include -I/usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/lib/ndi -I/../UI/obs-frontend-api -isystem /usr/local/include/obs -isystem /usr/local/include/qt5 -isystem /usr/local/include/qt5/QtCore -isystem /usr/local/lib/qt5/mkspecs/freebsd-clang -isystem /usr/local/include/qt5/QtWidgets -isystem /usr/local/include/qt5/QtGui -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11 -Ofast -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -fPIC -mmmx -msse -msse2 -fPIC -std=gnu++11 -MD -MT CMakeFiles/obs-ndi.dir/src/obs-ndi.cpp.o -MF CMakeFiles/obs-ndi.dir/src/obs-ndi.cpp.o.d -o CMakeFiles/obs-ndi.dir/src/obs-ndi.cpp.o -c /usr/ports/multimedia/obs-ndi/work/obs-ndi-4.9.1/src/obs-ndi.cpp
[100% 12/12] : && /usr/bin/c++ -fPIC -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include -std=c++11 -Ofast -O2 -pipe -fstack-protector-strong -isystem /usr/local/include -fno-strict-aliasing  -isystem /usr/local/include  -fstack-protector-strong -L/usr/local/lib -shared  -o obs-ndi.so CMakeFiles/obs-ndi.dir/obs-ndi_autogen/mocs_compilation.cpp.o CMakeFiles/obs-ndi.dir/src/obs-ndi.cpp.o CMakeFiles/obs-ndi.dir/src/obs-ndi-source.cpp.o CMakeFiles/obs-ndi.dir/src/obs-ndi-output.cpp.o CMakeFiles/obs-ndi.dir/src/obs-ndi-filter.cpp.o CMakeFiles/obs-ndi.dir/src/premultiplied-alpha-filter.cpp.o CMakeFiles/obs-ndi.dir/src/main-output.cpp.o CMakeFiles/obs-ndi.dir/src/preview-output.cpp.o CMakeFiles/obs-ndi.dir/src/Config.cpp.o CMakeFiles/obs-ndi.dir/src/forms/output-settings.cpp.o  -Wl,-rpath,/usr/local/lib/qt5:  /usr/local/lib/libobs.so.0  /usr/local/lib/qt5/libQt5Widgets.so.5.15.2  -lobs-frontend-api  /usr/local/lib/qt5/libQt5Gui.so.5.15.2  /usr/local/lib/qt5/libQt5Core.so.5.15.2 && :
===>  Staging for obs-ndi-4.9.1_2
===>   obs-ndi-4.9.1_2 depends on file: /usr/local/lib/libndi.so - found
===>   Generating temporary packing list
[  0% 1/1] cd /usr/ports/multimedia/obs-ndi/work/.build && /usr/local/bin/cmake -DCMAKE_INSTALL_DO_STRIP=1 -P cmake_install.cmake
-- Install configuration: "Release"
-- Installing: /usr/ports/multimedia/obs-ndi/work/stage/usr/local/lib/obs-plugins/obs-ndi.so
-- Set runtime path of "/usr/ports/multimedia/obs-ndi/work/stage/usr/local/lib/obs-plugins/obs-ndi.so" to "/usr/local/lib/qt5"
-- Installing: /usr/ports/multimedia/obs-ndi/work/stage/usr/local/share/obs/obs-plugins/obs-ndi/locale/ca-ES.ini
-- Installing: /usr/ports/multimedia/obs-ndi/work/stage/usr/local/share/obs/obs-plugins/obs-ndi/locale/en-US.ini
-- Installing: /usr/ports/multimedia/obs-ndi/work/stage/usr/local/share/obs/obs-plugins/obs-ndi/locale/es-ES.ini
-- Installing: /usr/ports/multimedia/obs-ndi/work/stage/usr/local/share/obs/obs-plugins/obs-ndi/locale/fr-FR.ini
-- Installing: /usr/ports/multimedia/obs-ndi/work/stage/usr/local/share/obs/obs-plugins/obs-ndi/locale/ru-RU.ini
-- Installing: /usr/ports/multimedia/obs-ndi/work/stage/usr/local/share/obs/obs-plugins/obs-ndi/locale/zh-CN.ini
====> Compressing man pages (compress-man)
===>  Installing for obs-ndi-4.9.1_2
===>  Checking if obs-ndi is already installed
===>   Registering installation for obs-ndi-4.9.1_2
Installing obs-ndi-4.9.1_2...
root@marietto:/usr/ports/multimedia/obs-ndi # obs
QStandardPaths: runtime directory '/var/run/user/1001' is not owned by UID 0, but a directory permissions 0700 owned by UID 1001 GID 1001
QStandardPaths: runtime directory '/var/run/user/1001' is not owned by UID 0, but a directory permissions 0700 owned by UID 1001 GID 1001
error: Could not create dbus connection: La connessione è chiusa
error: Could not create dbus connection: La connessione è chiusa
Attempted path: share/obs/obs-studio/locale/en-US.ini
Attempted path: /usr/local/share/obs/obs-studio/locale/en-US.ini
Attempted path: share/obs/obs-studio/locale.ini
Attempted path: /usr/local/share/obs/obs-studio/locale.ini
Attempted path: share/obs/obs-studio/locale/it-IT.ini
Attempted path: /usr/local/share/obs/obs-studio/locale/it-IT.ini
info: Using preferred locale 'it-IT'
Attempted path: share/obs/obs-studio/themes/Dark.qss
Attempted path: /usr/local/share/obs/obs-studio/themes/Dark.qss
info: CPU Name: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz
info: CPU Speed: 3600.25MHz
info: Physical Cores: 8, Logical Cores: 16
info: Physical Memory: 31665MB Total, 4203MB Free
info: Kernel Version: FreeBSD 13.0-RELEASE-p6
info: Window System: X11.0, Vendor: The X.Org Foundation, Version: 1.20.13
info: Portable mode: false
Attempted path: share/obs/obs-studio/themes/Dark/no_sources.svg
Attempted path: /usr/local/share/obs/obs-studio/themes/Dark/no_sources.svg
QMetaObject::connectSlotsByName: No matching signal for on_tbar_position_valueChanged(int)
QMetaObject::connectSlotsByName: No matching signal for on_actionShowTransitionProperties_triggered()
QMetaObject::connectSlotsByName: No matching signal for on_actionHideTransitionProperties_triggered()
info: OBS 27.1.3 (freebsd)
info: ---------------------------------
info: ---------------------------------
info: audio settings reset:
        samples per sec: 48000
        speakers:        2
info: ---------------------------------
info: Initializing OpenGL...
info: Loading up OpenGL on adapter Intel Mesa Intel(R) UHD Graphics 630 (CFL GT2)
info: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 21.1.8, shading language 4.60
info: ---------------------------------
info: video settings reset:
        base resolution:   1920x1080
        output resolution: 1280x720
        downscale filter:  Bicubic
        fps:               30/1
        format:            NV12
        YUV mode:          709/Partial
info: NV12 texture support not available
info: Audio monitoring device:
        name: Predefinito
        id: default
info: ---------------------------------
warning: Failed to load 'en-US' text for module: 'decklink-captions.so'
warning: Failed to load 'en-US' text for module: 'decklink-ouput-ui.so'
warning: v4l2loopback not installed, virtual camera disabled
info: FFMPEG VAAPI supported
warning: Failed to load 'it-IT' text for module: 'obs-ndi.so'
info: [obs-ndi] hello ! (version 4.9.1)
info: [obs-ndi] Trying ''
info: [obs-ndi] Trying '/usr/lib'
info: [obs-ndi] Trying '/usr/local/lib'
error: [obs-ndi] Can't find the NDI library
Comment 14 mario felicioni 2022-01-14 19:23:47 UTC
I'm still making some mistake ?
Comment 15 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 19:26:13 UTC
I think libndi.so is a commercial closed-source library. The open-source equivalent from multimedia/libndi isn't compatible with multimedia/obs-ndi for some reason.

I notified the upstream: https://code.videolan.org/jbk/libndi/-/issues/9
and marked this port broken until this issue is resolved.


Yuri
Comment 16 commit-hook freebsd_committer freebsd_triage 2022-01-14 19:26:25 UTC
A commit in branch main references this bug:

URL: https://cgit.FreeBSD.org/ports/commit/?id=61dc21a3030c154c0723a3ec27a172193fb6e890

commit 61dc21a3030c154c0723a3ec27a172193fb6e890
Author:     Yuri Victorovich <yuri@FreeBSD.org>
AuthorDate: 2022-01-14 19:22:18 +0000
Commit:     Yuri Victorovich <yuri@FreeBSD.org>
CommitDate: 2022-01-14 19:25:28 +0000

    multimedia/obs-ndi: Fix libndi.so name in the code and mark BROKEN

    PR:             258694

 multimedia/obs-ndi/Makefile                                   |  4 +++-
 .../obs-ndi/files/patch-lib_ndi_Processing.NDI.Lib.h (new)    | 11 +++++++++++
 2 files changed, 14 insertions(+), 1 deletion(-)
Comment 17 mario felicioni 2022-01-14 19:29:52 UTC
what I'm not able to understand if I'm using not compatible usb cameras or is the bug that makes my usb cameras not compatible. I ask it because in this video tutorial : https://www.youtube.com/watch?v=CmkptnuSS1c&ab_channel=RoboNuggie ; the author didn't find the error and its webcam worked like a charm. So,if I buy that model of webcam,It will work or not ?
Comment 18 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 19:31:12 UTC
> You can find a copy of libndi for Linux on obs-ndi's GitHub page."

A word of caution:

Downloading binaries from random sources like this is a sure way to get your system infected with malware.


Yuri
Comment 19 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 19:34:35 UTC
> what I'm not able to understand if I'm using not compatible usb cameras or is the bug that makes my usb cameras not compatible.

If he says that it is compatible it must be. There's no reason to doubt him.

But this has nothing to do with obs-ndi.
Comment 20 mario felicioni 2022-01-14 19:42:04 UTC
wait wait. maybe when he used that webcam,the bug wasn't there ! so it worked. the bug could be appeared later. Do you think that It could work like this ? man,I would like to buy that model of webcam,but Im also scared that it does not work and if it will be true,I would have lost my money.
Comment 21 mario felicioni 2022-01-14 19:43:48 UTC
I'm trying 3 webcams right now and none of them are working. I don't know what's the reason.
Comment 22 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 19:47:19 UTC
(In reply to mario felicioni from comment #20)

Mario,

This bug in ndi is long-standing, I remember dealing with this 2+ years ago.

But webcams on FreeBSD are supported by webcamd (multimedia/webcamd). They have nothing to do with this bug.

You can ask its maintainer hselasky@FreeBSD.org - he is a very knowledgeable person and he can confirm or deny that this particular webcam actually works fine with webcamd.


Yuri
Comment 23 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 19:47:59 UTC
(In reply to mario felicioni from comment #21)


> I'm trying 3 webcams right now and none of them are working. I don't know what's the reason.


How are you trying them?
Comment 24 mario felicioni 2022-01-14 19:59:27 UTC
I've explained everything on the post that I written on Reddit,at this address :

https://www.reddit.com/r/freebsd/comments/s3vzzi/trying_to_stream_my_ugly_face_with_obsstudio/

in that post I've tried 2 webcams and I've got the same result,but I've also tried with the third webcam and it does not work as well.
Comment 25 mario felicioni 2022-01-14 20:02:48 UTC
these screenshots can help you to understand :

https://ibb.co/y5w7tmx
https://ibb.co/ZMKCvVh
Comment 26 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 20:05:53 UTC
(In reply to mario felicioni from comment #24)

You only mentioned OBS Studio there.

In order to use webcams you need to:
1. install webcamd
2. add 'webcamd_enable="YES"' to /etc/rc.conf
3. add webcam config line (I have 'webcamd_0_flags="-N vendor-0x046d-HD-Pro-Webcam-C920 -S F652B6FF -M 0"') to /etc/rc.conf
4. run 'service webcamd start'

Then you can try if it runs with multimedia/cheese.
Comment 27 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 20:08:55 UTC
Also:
OBS Studio definitely doesn't need NDI to use webcam, webcam works fine here with OBS Studio.
Comment 28 mario felicioni 2022-01-14 20:40:13 UTC
(In reply to Yuri Victorovich from comment #26)

where I can find the S value ? I mean F652B6FF,what is this ?

-S F652B6FF
Comment 29 mario felicioni 2022-01-14 20:42:41 UTC
for example,this is one of my webcam. I can see the vendor id,but not the S as serial number....

ugen0.2: <vendor 0x045e USB camera> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (500mA)
Comment 30 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 21:03:23 UTC
(In reply to mario felicioni from comment #28)

> where I can find the S value ? I mean F652B6FF,what is this ?

This command shows it:
# webcamd -l
Comment 31 mario felicioni 2022-01-14 21:12:14 UTC
root@marietto:/usr/home/marietto # webcamd -l

Available device(s):

webcamd [-d ugen0.2] -N vendor-0x045e-USB-camera -S unknown -M 0
Comment 32 mario felicioni 2022-01-14 21:16:44 UTC
ok. I made some progress,adding this string to rc.conf :

webcamd_0_flags="-N vendor-0x045e-USB-camera -S unknown -M 0"

but still does not work (webcam does not capture anything)

root@marietto:/usr/home/marietto # service webcamd start

Starting webcamd.
webcamd 8703 - - Attached to ugen0.2[0]

root@marietto:/usr/home/marietto # obs

QStandardPaths: runtime directory '/var/run/user/1001' is not owned by UID 0, but a directory permissions 0700 owned by UID 1001 GID 1001
QStandardPaths: runtime directory '/var/run/user/1001' is not owned by UID 0, but a directory permissions 0700 owned by UID 1001 GID 1001
error: Could not create dbus connection: La connessione è chiusa
error: Could not create dbus connection: La connessione è chiusa
Attempted path: share/obs/obs-studio/locale/en-US.ini
Attempted path: /usr/local/share/obs/obs-studio/locale/en-US.ini
Attempted path: share/obs/obs-studio/locale.ini
Attempted path: /usr/local/share/obs/obs-studio/locale.ini
Attempted path: share/obs/obs-studio/locale/it-IT.ini
Attempted path: /usr/local/share/obs/obs-studio/locale/it-IT.ini
info: Using preferred locale 'it-IT'
Attempted path: share/obs/obs-studio/themes/Dark.qss
Attempted path: /usr/local/share/obs/obs-studio/themes/Dark.qss
info: CPU Name: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz
info: CPU Speed: 3600.30MHz
info: Physical Cores: 8, Logical Cores: 16
info: Physical Memory: 31665MB Total, 14140MB Free
info: Kernel Version: FreeBSD 13.0-RELEASE-p6
info: Window System: X11.0, Vendor: The X.Org Foundation, Version: 1.20.13
info: Portable mode: false
Attempted path: share/obs/obs-studio/themes/Dark/no_sources.svg
Attempted path: /usr/local/share/obs/obs-studio/themes/Dark/no_sources.svg
QMetaObject::connectSlotsByName: No matching signal for on_tbar_position_valueChanged(int)
QMetaObject::connectSlotsByName: No matching signal for on_actionShowTransitionProperties_triggered()
QMetaObject::connectSlotsByName: No matching signal for on_actionHideTransitionProperties_triggered()
info: OBS 27.1.3 (freebsd)
info: ---------------------------------
info: ---------------------------------
info: audio settings reset:
        samples per sec: 48000
        speakers:        2
info: ---------------------------------
info: Initializing OpenGL...
info: Loading up OpenGL on adapter Intel Mesa Intel(R) UHD Graphics 630 (CFL GT2)
info: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 21.1.8, shading language 4.60
info: ---------------------------------
info: video settings reset:
        base resolution:   1920x1080
        output resolution: 1280x720
        downscale filter:  Bicubic
        fps:               30/1
        format:            NV12
        YUV mode:          709/Partial
info: NV12 texture support not available
info: Audio monitoring device:
        name: Predefinito
        id: default
info: ---------------------------------
warning: Failed to load 'en-US' text for module: 'decklink-captions.so'
warning: Failed to load 'en-US' text for module: 'decklink-ouput-ui.so'
warning: v4l2loopback not installed, virtual camera disabled
info: FFMPEG VAAPI supported
warning: Failed to load 'it-IT' text for module: 'obs-ndi.so'
info: [obs-ndi] hello ! (version 4.9.1)
info: [obs-ndi] Trying ''
info: [obs-ndi] Trying '/usr/lib'
info: [obs-ndi] Trying '/usr/local/lib'
error: [obs-ndi] Can't find the NDI library
warning: Failed to initialize module 'obs-ndi.so'
info: [obs-websocket] you can haz websockets (version 4.8.0)
info: [obs-websocket] qt version (compile-time): 5.15.2 ; qt version (run-time): 5.15.2
info: [obs-websocket] module loaded!
warning: Failed to load 'en-US' text for module: 'qtwebkit-browser.so'
warning: Failed to load 'it-IT' text for module: 'scrab.so'
warning: Failed to load 'it-IT' text for module: 'v4l2sink.so'
info: VLC found, VLC video source enabled
info: ---------------------------------
info:   Loaded Modules:
info:     vlc-video.so
info:     v4l2sink.so
info:     text-freetype2.so
info:     sndio.so
info:     scrab.so
info:     rtmp-services.so
info:     qtwebkit-browser.so
info:     oss-audio.so
info:     obs-x264.so
info:     obs-websocket.so
info:     obs-vst.so
info:     obs-transitions.so
info:     obs-outputs.so
info:     obs-ndi.so
info:     obs-libfdk.so
info:     obs-filters.so
info:     obs-ffmpeg.so
info:     linux-v4l2.so
info:     linux-pulseaudio.so
info:     linux-jack.so
info:     linux-capture.so
info:     image-source.so
info:     frontend-tools.so
info:     decklink-ouput-ui.so
info:     decklink-captions.so
info: ---------------------------------
info: ==== Startup complete ===============================================
info: All scene data cleared
info: ------------------------------------------------
info: v4l2-input: Start capture from /dev/video0
info: v4l2-input: Input: 0
info: v4l2-input: Resolution: 640x480
info: v4l2-input: Pixelformat: BGR3
info: v4l2-input: Linesize: 1920 Bytes
info: v4l2-input: Framerate: nan fps
info: v4l2-input: /dev/video0: select timeout set to -9223372036854775808us (5x frame periods)
info: Switched to scene 'Scene'
info: ------------------------------------------------
info: Loaded scenes:
info: - scene 'Scene':
info:     - source: 'Dispositivo di acquisizione video (V4L2)' (v4l2_input)
info: ------------------------------------------------
kf.notifications: env says KDE is running but SNI unavailable -- check KDE_FULL_SESSION and XDG_CURRENT_DESKTOP
error: v4l2-input: /dev/video0: select failed
info: v4l2-input: /dev/video0: Stopped capture after 0 frames
info: [obs-websocket] server started successfully on port 4444
info: [obs-websocket] io thread started
Attempted path: share/obs/obs-studio/images/overflow.png
Attempted path: /usr/local/share/obs/obs-studio/images/overflow.png
Comment 33 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 21:19:31 UTC
Does cheese show video?
Comment 34 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 21:24:48 UTC
I reported the issue to OBS Studio: https://github.com/obsproject/obs-studio/issues/5797
Comment 35 mario felicioni 2022-01-14 21:28:46 UTC
yes. cheese works,but it is useless for me,since it can't stream my face on the web.
Comment 36 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 21:37:30 UTC
(In reply to mario felicioni from comment #35)

So your webcam works, and there is a bug in OBS Studio.
Comment 37 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 21:39:21 UTC
There's probably something special about this webcam that they don't support.
Wait for them to address this issue. They are usually fast to respond.
Comment 38 mario felicioni 2022-01-14 22:17:32 UTC
I can also try with another webcam that I have....let's see.
Comment 39 mario felicioni 2022-01-14 22:23:36 UTC
this camera string declared inside the rc.conf :

webcamd_0_flags="-N vendor-0x05a9-product-0xa511 -S unknown -M 0"

also produce this error :

info: v4l2-input: /dev/video0: select timeout set to -9223372036854775808us (5x frame periods)

so,2/2 cameras,the bug seems not tied to a specific camera.
Comment 40 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 22:30:09 UTC
(In reply to mario felicioni from comment #39)

For me obs-studio-27.1.3 prints:
> info: v4l2-input: Start capture from /dev/video0
> info: v4l2-input: Input: 0
> info: v4l2-input: Resolution: 1024x576
> info: v4l2-input: Pixelformat: YUYV
> info: v4l2-input: Linesize: 2048 Bytes
> info: v4l2-input: Framerate: 15.00 fps
> info: v4l2-input: /dev/video0: select timeout set to 333333us (5x frame periods)

This is puzzling...
Comment 41 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 22:33:40 UTC
You can try to delete ~/.config/obs-studio/ and see if this helps.
Comment 42 mario felicioni 2022-01-14 22:59:10 UTC
from this video you can see better what's the last problem with the webcam recognized :

https://drive.google.com/file/d/1WYzwq_okB3T34AET-jf9SKqT3Rp7oMfG/view?usp=sharing
Comment 43 mario felicioni 2022-01-14 23:03:15 UTC
obs is not working well. can u suggest another alternative tool to stream my webcam content over my website at port 80,for example ? I also need to learn how to configure everything by watching or reading a tutorial,please,thanks very much.
Comment 44 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-14 23:54:46 UTC
(In reply to mario felicioni from comment #43)

Mario,

I never observed such distortions in OBS Studio. It seems to work just fine for me.

I think you are using KDE. You may want to try Gnome or XFCE4 to see if the problem would go away. (I use XFCE4.)

I never streamed myself so I don't have suggestions for alternatives, sorry. -(


Yuri
Comment 45 mario felicioni 2022-01-15 00:11:14 UTC
ok. I can try xfce4...
Comment 46 mario felicioni 2022-01-15 13:26:23 UTC
better but not very good....
Comment 47 Yuri Victorovich freebsd_committer freebsd_triage 2022-01-15 17:16:38 UTC
(In reply to mario felicioni from comment #46)

Similar problem on XFCE4?
Comment 48 mario felicioni 2022-01-15 18:00:20 UTC
a little bit.
Comment 49 mario felicioni 2022-01-15 21:08:34 UTC
I think that I've found another bug or the same bug in a different circumstance. But to understand what I'm talking about,you should read this thread :

https://forums.freebsd.org/threads/media-could-not-be-loaded-either-because-the-server-or-network-failed-or-the-format-is-not-supported-error-while-im-trying-to-stream-my-cam-with-obs.83743/#post-551496
Comment 50 mario felicioni 2022-01-22 22:01:21 UTC
Hello. 

I see that there is a fix for the timeout bug. The fix has been produced by the OBS developer,but has been ported to freebsd ?
Comment 51 mario felicioni 2022-01-22 22:31:10 UTC
my webcam works great with the patch for OBS,but the distortions became worse.

you can give a look here : https://ibb.co/GF5vPXt

(im using xfce4).
Comment 52 mario felicioni 2022-01-22 22:38:54 UTC
Despite that it works,the errors are still there :

ugen0.12: <Generic USB2.0 PC CAMERA> at usbus0, cfg=0 md=HOST spd=HIGH (480Mbps) pwr=ON (256mA)
root@marietto:/usr/ports/multimedia/obs-v4l2sink # service webcamd start
Starting webcamd.
webcamd 9271 - - Webcamd is already running for ugen0.12.0
root@marietto:/usr/ports/multimedia/obs-v4l2sink # obs
error: Could not create dbus connection: The connection is closed
error: Could not create dbus connection: The connection is closed
Attempted path: share/obs/obs-studio/locale/en-US.ini
Attempted path: /usr/local/share/obs/obs-studio/locale/en-US.ini
Attempted path: share/obs/obs-studio/locale.ini
Attempted path: /usr/local/share/obs/obs-studio/locale.ini
Attempted path: share/obs/obs-studio/themes/Dark.qss
Attempted path: /usr/local/share/obs/obs-studio/themes/Dark.qss
info: CPU Name: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz
info: CPU Speed: 3600.34MHz
info: Physical Cores: 8, Logical Cores: 16
info: Physical Memory: 31665MB Total, 27568MB Free
info: Kernel Version: FreeBSD 13.0-RELEASE
info: Window System: X11.0, Vendor: The X.Org Foundation, Version: 1.20.13
info: Portable mode: false
Attempted path: share/obs/obs-studio/themes/Dark/no_sources.svg
Attempted path: /usr/local/share/obs/obs-studio/themes/Dark/no_sources.svg
QMetaObject::connectSlotsByName: No matching signal for on_tbar_position_valueChanged(int)
QMetaObject::connectSlotsByName: No matching signal for on_actionShowTransitionProperties_triggered()
QMetaObject::connectSlotsByName: No matching signal for on_actionHideTransitionProperties_triggered()
info: OBS 27.1.3 (freebsd)
info: ---------------------------------
info: ---------------------------------
info: audio settings reset:
        samples per sec: 48000
        speakers:        2
info: ---------------------------------
info: Initializing OpenGL...
info: Loading up OpenGL on adapter Intel Mesa Intel(R) UHD Graphics 630 (CFL GT2)
info: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 21.3.4, shading language 4.60
info: ---------------------------------
info: video settings reset:
        base resolution:   1920x1080
        output resolution: 1280x720
        downscale filter:  Bicubic
        fps:               30/1
        format:            NV12
        YUV mode:          709/Partial
info: NV12 texture support not available
info: Audio monitoring device:
        name: Default
        id: default
info: ---------------------------------
warning: Failed to load 'en-US' text for module: 'decklink-captions.so'
warning: Failed to load 'en-US' text for module: 'decklink-ouput-ui.so'
warning: v4l2loopback not installed, virtual camera disabled
info: FFMPEG VAAPI supported
info: [obs-ndi] hello ! (version 4.9.1)
info: [obs-ndi] Trying ''
info: [obs-ndi] Trying '/usr/lib'
info: [obs-ndi] Trying '/usr/local/lib'
error: [obs-ndi] Can't find the NDI library
warning: Failed to initialize module 'obs-ndi.so'
info: [obs-websocket] you can haz websockets (version 4.8.0)
info: [obs-websocket] qt version (compile-time): 5.15.2 ; qt version (run-time): 5.15.2
info: [obs-websocket] module loaded!
warning: Failed to load 'en-US' text for module: 'qtwebkit-browser.so'
info: VLC found, VLC video source enabled
info: ---------------------------------
info:   Loaded Modules:
info:     vlc-video.so
info:     v4l2sink.so
info:     text-freetype2.so
info:     sndio.so
info:     scrab.so
info:     rtmp-services.so
info:     qtwebkit-browser.so
info:     oss-audio.so
info:     obs-x264.so
info:     obs-websocket.so
info:     obs-vst.so
info:     obs-transitions.so
info:     obs-outputs.so
info:     obs-ndi.so
info:     obs-libfdk.so
info:     obs-filters.so
info:     obs-ffmpeg.so
info:     linux-v4l2.so
info:     linux-pulseaudio.so
info:     linux-jack.so
info:     linux-capture.so
info:     image-source.so
info:     frontend-tools.so
info:     decklink-ouput-ui.so
info:     decklink-captions.so
info: ---------------------------------
info: ==== Startup complete ===============================================
info: All scene data cleared
info: ------------------------------------------------
info: v4l2-input: Start capture from /dev/video0
info: v4l2-input: Input: 0
info: v4l2-input: Resolution: 640x480
info: v4l2-input: Pixelformat: YUYV
info: v4l2-input: Linesize: 1280 Bytes
info: v4l2-input: Framerate: 30.00 fps
info: v4l2-input: /dev/video0: select timeout set to 166666us (5x frame periods)
info: Switched to scene 'Scene'
info: ------------------------------------------------
info: Loaded scenes:
info: - scene 'Scene':
info:     - source: 'Video Capture Device (V4L2)' (v4l2_input)
info: ------------------------------------------------
error: v4l2-input: /dev/video0: select timed out
error: v4l2-input: /dev/video0: failed to log status
info: [obs-websocket] server started successfully on port 4444
info: [obs-websocket] io thread started
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 1074, resource id: 14881480, major code: 40 (TranslateCoords), minor code: 0
error: v4l2-input: /dev/video0: select timed out
error: v4l2-input: /dev/video0: failed to log status
Attempted path: share/obs/obs-studio/images/overflow.png
Attempted path: /usr/local/share/obs/obs-studio/images/overflow.png
error: v4l2-input: /dev/video0: select timed out
error: v4l2-input: /dev/video0: failed to log status
error: v4l2-input: /dev/video0: select timed out
error: v4l2-input: /dev/video0: failed to log status
error: v4l2-input: /dev/video0: select timed out
error: v4l2-input: /dev/video0: failed to log status
error: v4l2-input: /dev/video0: select timed out
error: v4l2-input: /dev/video0: failed to log status
error: v4l2-input: /dev/video0: select timed out
error: v4l2-input: /dev/video0: failed to log status
Comment 53 mario felicioni 2022-01-22 22:50:27 UTC
error is not gone away at all. I made a mistake. I've used the semi working webcam.  

ugen0.9: <vendor 0x05a9 product 0xa511> at usbus0, cfg=0 md=HOST spd=FULL (12Mbps) pwr=ON (500mA)

root@marietto:/usr/ports/multimedia/obs-v4l2sink # obs

error: Could not create dbus connection: The connection is closed
error: Could not create dbus connection: The connection is closed
Attempted path: share/obs/obs-studio/locale/en-US.ini
Attempted path: /usr/local/share/obs/obs-studio/locale/en-US.ini
Attempted path: share/obs/obs-studio/locale.ini
Attempted path: /usr/local/share/obs/obs-studio/locale.ini
Attempted path: share/obs/obs-studio/themes/Dark.qss
Attempted path: /usr/local/share/obs/obs-studio/themes/Dark.qss
info: CPU Name: Intel(R) Core(TM) i9-9900K CPU @ 3.60GHz
info: CPU Speed: 3600.34MHz
info: Physical Cores: 8, Logical Cores: 16
info: Physical Memory: 31665MB Total, 26747MB Free
info: Kernel Version: FreeBSD 13.0-RELEASE
info: Window System: X11.0, Vendor: The X.Org Foundation, Version: 1.20.13
info: Portable mode: false
Attempted path: share/obs/obs-studio/themes/Dark/no_sources.svg
Attempted path: /usr/local/share/obs/obs-studio/themes/Dark/no_sources.svg
QMetaObject::connectSlotsByName: No matching signal for on_tbar_position_valueChanged(int)
QMetaObject::connectSlotsByName: No matching signal for on_actionShowTransitionProperties_triggered()
QMetaObject::connectSlotsByName: No matching signal for on_actionHideTransitionProperties_triggered()
info: OBS 27.1.3 (freebsd)
info: ---------------------------------
info: ---------------------------------
info: audio settings reset:
        samples per sec: 48000
        speakers:        2
info: ---------------------------------
info: Initializing OpenGL...
info: Loading up OpenGL on adapter Intel Mesa Intel(R) UHD Graphics 630 (CFL GT2)
info: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 21.3.4, shading language 4.60
info: ---------------------------------
info: video settings reset:
        base resolution:   1920x1080
        output resolution: 1280x720
        downscale filter:  Bicubic
        fps:               30/1
        format:            NV12
        YUV mode:          709/Partial
info: NV12 texture support not available
info: Audio monitoring device:
        name: Default
        id: default
info: ---------------------------------
warning: Failed to load 'en-US' text for module: 'decklink-captions.so'
warning: Failed to load 'en-US' text for module: 'decklink-ouput-ui.so'
warning: v4l2loopback not installed, virtual camera disabled
info: FFMPEG VAAPI supported
info: [obs-ndi] hello ! (version 4.9.1)
info: [obs-ndi] Trying ''
info: [obs-ndi] Trying '/usr/lib'
info: [obs-ndi] Trying '/usr/local/lib'
error: [obs-ndi] Can't find the NDI library
warning: Failed to initialize module 'obs-ndi.so'
info: [obs-websocket] you can haz websockets (version 4.8.0)
info: [obs-websocket] qt version (compile-time): 5.15.2 ; qt version (run-time): 5.15.2
info: [obs-websocket] module loaded!
warning: Failed to load 'en-US' text for module: 'qtwebkit-browser.so'
info: VLC found, VLC video source enabled
info: ---------------------------------
info:   Loaded Modules:
info:     vlc-video.so
info:     v4l2sink.so
info:     text-freetype2.so
info:     sndio.so
info:     scrab.so
info:     rtmp-services.so
info:     qtwebkit-browser.so
info:     oss-audio.so
info:     obs-x264.so
info:     obs-websocket.so
info:     obs-vst.so
info:     obs-transitions.so
info:     obs-outputs.so
info:     obs-ndi.so
info:     obs-libfdk.so
info:     obs-filters.so
info:     obs-ffmpeg.so
info:     linux-v4l2.so
info:     linux-pulseaudio.so
info:     linux-jack.so
info:     linux-capture.so
info:     image-source.so
info:     frontend-tools.so
info:     decklink-ouput-ui.so
info:     decklink-captions.so
info: ---------------------------------
info: ==== Startup complete ===============================================
info: All scene data cleared
info: ------------------------------------------------
info: v4l2-input: Start capture from /dev/video0
info: v4l2-input: Input: 0
error: v4l2-input: Selected video format not supported
error: v4l2-input: Initialization failed
info: Switched to scene 'Scene'
info: ------------------------------------------------
info: Loaded scenes:
info: - scene 'Scene':
info:     - source: 'Video Capture Device (V4L2)' (v4l2_input)
info: ------------------------------------------------
info: [obs-websocket] server started successfully on port 4444
info: [obs-websocket] io thread started
qt.qpa.xcb: QXcbConnection: XCB error: 3 (BadWindow), sequence: 1074, resource id: 15111344, major code: 40 (TranslateCoords), minor code: 0
Attempted path: share/obs/obs-studio/images/overflow.png
Attempted path: /usr/local/share/obs/obs-studio/images/overflow.png
info: v4l2-input: Found device '' at /dev/video0
info: v4l2-input: Found input 'ov519' (Index 0)
info: v4l2-controls: setting default for Power Line Frequency to 0
info: v4l2-input: Pixelformat: RGB3 (Emulated) (unavailable)
info: v4l2-input: Pixelformat: BGR3 (Emulated) (available)
info: v4l2-input: Pixelformat: YU12 (Emulated) (available)
info: v4l2-input: Pixelformat: YV12 (Emulated) (available)
info: v4l2-input: Stepwise and Continuous framesizes are currently hardcoded
info: v4l2-input: Stepwise and Continuous framerates are currently hardcoded
info: v4l2-input: Pixelformat: RGB3 (Emulated) (unavailable)
info: v4l2-input: Pixelformat: BGR3 (Emulated) (available)
info: v4l2-input: Pixelformat: YU12 (Emulated) (available)
info: v4l2-input: Pixelformat: YV12 (Emulated) (available)
info: v4l2-input: Stepwise and Continuous framesizes are currently hardcoded
info: v4l2-input: Stepwise and Continuous framerates are currently hardcoded
info: v4l2-input: Stepwise and Continuous framesizes are currently hardcoded
info: v4l2-input: Stepwise and Continuous framerates are currently hardcoded
info: v4l2-input: Stepwise and Continuous framerates are currently hardcoded
info: v4l2-input: Stepwise and Continuous framerates are currently hardcoded
info: v4l2-input: Start capture from /dev/video0
info: v4l2-input: Input: 0
info: v4l2-input: Resolution: 640x480
info: v4l2-input: Pixelformat: BGR3
info: v4l2-input: Linesize: 1920 Bytes
info: v4l2-input: Framerate: nan fps
info: v4l2-input: /dev/video0: select timeout set to -9223372036854775808us (5x frame periods)
error: v4l2-input: /dev/video0: select failed
info: v4l2-input: /dev/video0: Stopped capture after 0 frames