locaal-ai / obs-urlsource

OBS plugin to fetch data from a URL or file, connect to an API or AI service, parse responses and display text, image or audio on scene
https://obsproject.com/forum/resources/url-api-source-fetch-live-data-and-display-it-on-screen.1756/
GNU General Public License v2.0
165 stars 22 forks source link

Building on FEDORA issue with libpugixml #56

Closed andersonid closed 10 months ago

andersonid commented 10 months ago

Hello, mate!

I'm trying to build this plugin using the tutorial https://github.com/occ-ai/obs-backgroundremoval/blob/main/docs/BUILDING-FEDORA.md but I'm getting this error:

[35/35] Linking CXX shared module obs-urlsource.so
FAILED: obs-urlsource.so 
: && /usr/bin/c++ -fPIC -O2 -g -DNDEBUG   -shared  -o obs-urlsource.so CMakeFiles/obs-urlsource.dir/obs-urlsource_autogen/mocs_compilation.cpp.o CMakeFiles/obs-urlsource.dir/src/plugin-main.c.o CMakeFiles/obs-urlsource.dir/src/url-source.cpp.o CMakeFiles/obs-urlsource.dir/src/ui/RequestBuilder.cpp.o CMakeFiles/obs-urlsource.dir/src/request-data.cpp.o CMakeFiles/obs-urlsource.dir/src/ui/text-render-helper.cpp.o CMakeFiles/obs-urlsource.dir/src/url-source-info.c.o CMakeFiles/obs-urlsource.dir/src/obs-source-util.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/jsonpointer.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/jsonpath.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/regex.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/xml.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/errors.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/html.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/binary-data.cpp.o  /usr/lib64/libobs-frontend-api.so.29  _deps/libcurl_fetch-src/lib/libcurl.a  libplugin-support.a  /usr/lib64/libobs.so.29  /usr/lib64/libQt6Widgets.so.6.6.0  /usr/lib64/libQt6Gui.so.6.6.0  /usr/lib64/libGLX.so  /usr/lib64/libOpenGL.so  /usr/lib64/libQt6Core.so.6.6.0  /usr/lib64/libssl.so  /usr/lib64/libcrypto.so  /usr/lib64/libz.so  pugixml_build-prefix/lib/libpugixml.a  lexbor_build-prefix/lib/liblexbor_static.a && :
/usr/bin/ld: cannot find pugixml_build-prefix/lib/libpugixml.a: No such file or directory
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.

Could you please help like on obs-localvocal that Is now working on FEDORA?

royshil commented 10 months ago

@andersonid can you try out #57 ? i'm applying the same thing i did for lexbor, which wasnt working on linux (except in Github's CI)

andersonid commented 10 months ago

@andersonid can you try out #57 ? i'm applying the same thing i did for lexbor, which wasnt working on linux (except in Github's CI)

I checked out the 57 pr with Github CLI, tried to build it again and still getting error from libpugixml

 anobre@fedorahome  ~/.../obs-plugins/obs-urlsource   roy.pugixml_build_fix_linux  .github/scripts/build-linux --skip-deps
   =>   Configuring obs-urlsource...
Ignoring COMPILE_WARNING_AS_ERROR target property and CMAKE_COMPILE_WARNING_AS_ERROR variable.
Preset CMake variables:

  ENABLE_FRONTEND_API:BOOL="TRUE"
  ENABLE_QT:BOOL="TRUE"

CMake Deprecation Warning at vendor/jsoncons/CMakeLists.txt:1 (cmake_minimum_required):
  Compatibility with CMake < 3.5 will be removed from a future version of
  CMake.

  Update the VERSION argument <min> value or use a ...<max> suffix to tell
  CMake that the project does not need compatibility with older versions.

-- jsoncons v0.171.0
Config:
 target        = single_include/inja/inja.hpp
 working_dir   = /home/anobre/Downloads/obs-plugins/obs-urlsource/vendor/inja
 include_paths = []
Creating amalgamation:
 - processing "inja/inja.hpp"
...done!

Files processed: ['inja/inja.hpp']
Files included: ['inja/inja.hpp', 'inja/environment.hpp', 'inja/config.hpp', 'inja/template.hpp', 'inja/node.hpp', 'inja/function_storage.hpp', 'inja/utils.hpp', 'inja/exceptions.hpp', 'inja/statistics.hpp', 'inja/parser.hpp', 'inja/lexer.hpp', 'inja/token.hpp', 'inja/renderer.hpp']

-- Configuring done (0.3s)
-- Generating done (0.0s)
-- Build files have been written to: /home/anobre/Downloads/obs-plugins/obs-urlsource/build_x86_64
   =>   Building obs-urlsource...
[2/10] Performing build step for 'pugixml_build'
ninja: no work to do.
[4/10] Performing install step for 'pugixml_build'
[0/1] Install the project...
-- Install configuration: "RelWithDebInfo"
-- Up-to-date: /home/anobre/Downloads/obs-plugins/obs-urlsource/build_x86_64/pugixml_build-prefix/lib64/libpugixml.a
-- Up-to-date: /home/anobre/Downloads/obs-plugins/obs-urlsource/build_x86_64/pugixml_build-prefix/lib64/cmake/pugixml/pugixml-targets.cmake
-- Up-to-date: /home/anobre/Downloads/obs-plugins/obs-urlsource/build_x86_64/pugixml_build-prefix/lib64/cmake/pugixml/pugixml-targets-relwithdebinfo.cmake
-- Up-to-date: /home/anobre/Downloads/obs-plugins/obs-urlsource/build_x86_64/pugixml_build-prefix/lib64/cmake/pugixml/pugixml-config-version.cmake
-- Up-to-date: /home/anobre/Downloads/obs-plugins/obs-urlsource/build_x86_64/pugixml_build-prefix/lib64/cmake/pugixml/pugixml-config.cmake
-- Up-to-date: /home/anobre/Downloads/obs-plugins/obs-urlsource/build_x86_64/pugixml_build-prefix/lib64/pkgconfig/pugixml.pc
-- Up-to-date: /home/anobre/Downloads/obs-plugins/obs-urlsource/build_x86_64/pugixml_build-prefix/include/pugiconfig.hpp
-- Up-to-date: /home/anobre/Downloads/obs-plugins/obs-urlsource/build_x86_64/pugixml_build-prefix/include/pugixml.hpp
[6/10] Performing configure step for 'lexbor_build'
-- Project name: lexbor
-- Build without Threads
-- Lexbor version: 2.3.0
-- Append module: core (1.7.0)
-- Append module: css (1.1.0)
-- Append module: dom (1.6.0)
-- Append module: encoding (2.0.1)
-- Append module: html (2.3.0)
-- Append module: ns (1.2.0)
-- Append module: punycode (1.0.0)
-- Append module: selectors (0.2.0)
-- Append module: tag (1.2.0)
-- Append module: unicode (0.1.0)
-- Append module: url (0.1.0)
-- Append module: utils (0.3.0)
-- CFLAGS:  -O2 -Wall -pedantic -pipe -std=c99 -fPIC
-- CXXFLAGS:  -O2 
-- Feature ASAN: disable
-- Feature Fuzzer: disable
-- Configuring done (0.0s)
-- Generating done (0.0s)
-- Build files have been written to: /home/anobre/Downloads/obs-plugins/obs-urlsource/build_x86_64/lexbor_build-prefix/src/lexbor_build-build
[7/10] Performing build step for 'lexbor_build'
ninja: no work to do.
[8/10] Performing install step for 'lexbor_build'
[0/1] Install the project...
-- Install configuration: "RelWithDebInfo"
[10/10] Linking CXX shared module obs-urlsource.so
FAILED: obs-urlsource.so 
: && /usr/bin/c++ -fPIC -O2 -g -DNDEBUG   -shared  -o obs-urlsource.so CMakeFiles/obs-urlsource.dir/obs-urlsource_autogen/mocs_compilation.cpp.o CMakeFiles/obs-urlsource.dir/src/plugin-main.c.o CMakeFiles/obs-urlsource.dir/src/url-source.cpp.o CMakeFiles/obs-urlsource.dir/src/ui/RequestBuilder.cpp.o CMakeFiles/obs-urlsource.dir/src/request-data.cpp.o CMakeFiles/obs-urlsource.dir/src/ui/text-render-helper.cpp.o CMakeFiles/obs-urlsource.dir/src/url-source-info.c.o CMakeFiles/obs-urlsource.dir/src/obs-source-util.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/jsonpointer.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/jsonpath.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/regex.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/xml.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/errors.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/html.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/binary-data.cpp.o  /usr/lib64/libobs-frontend-api.so.29  _deps/libcurl_fetch-src/lib/libcurl.a  libplugin-support.a  /usr/lib64/libobs.so.29  /usr/lib64/libQt6Widgets.so.6.6.0  /usr/lib64/libQt6Gui.so.6.6.0  /usr/lib64/libGLX.so  /usr/lib64/libOpenGL.so  /usr/lib64/libQt6Core.so.6.6.0  /usr/lib64/libssl.so  /usr/lib64/libcrypto.so  /usr/lib64/libz.so  pugixml_build-prefix/lib/libpugixml.a  lexbor_build-prefix/lib/liblexbor_static.a && :
/usr/bin/ld: cannot find pugixml_build-prefix/lib/libpugixml.a: No such file or directory
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
royshil commented 10 months ago

I can see the problem Pugixml is built into lib64/ but expected at lib/ ... I'll see if I can resolve it on my end somehow

royshil commented 10 months ago

@andersonid can you try it again? i've tried to coerce it to put the lib in lib/ check out the branch on #57

andersonid commented 10 months ago

@andersonid can you try it again? i've tried to coerce it to put the lib in lib/ check out the branch on #57

Hello, @royshil !

I tried again, remove the entire folder, git clone it again, checked out the 57 pr (gh pr checkout 57) and it still showing the error.

[35/35] Linking CXX shared module obs-urlsource.so
FAILED: obs-urlsource.so 
: && /usr/bin/c++ -fPIC -O2 -g -DNDEBUG   -shared  -o obs-urlsource.so CMakeFiles/obs-urlsource.dir/obs-urlsource_autogen/mocs_compilation.cpp.o CMakeFiles/obs-urlsource.dir/src/plugin-main.c.o CMakeFiles/obs-urlsource.dir/src/url-source.cpp.o CMakeFiles/obs-urlsource.dir/src/ui/RequestBuilder.cpp.o CMakeFiles/obs-urlsource.dir/src/request-data.cpp.o CMakeFiles/obs-urlsource.dir/src/ui/text-render-helper.cpp.o CMakeFiles/obs-urlsource.dir/src/url-source-info.c.o CMakeFiles/obs-urlsource.dir/src/obs-source-util.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/jsonpointer.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/jsonpath.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/regex.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/xml.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/errors.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/html.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/binary-data.cpp.o  /usr/lib64/libobs-frontend-api.so.29  _deps/libcurl_fetch-src/lib/libcurl.a  libplugin-support.a  /usr/lib64/libobs.so.29  /usr/lib64/libQt6Widgets.so.6.6.0  /usr/lib64/libQt6Gui.so.6.6.0  /usr/lib64/libGLX.so  /usr/lib64/libOpenGL.so  /usr/lib64/libQt6Core.so.6.6.0  /usr/lib64/libssl.so  /usr/lib64/libcrypto.so  /usr/lib64/libz.so  pugixml_build-prefix/lib/libpugixml.a  lexbor_build-prefix/lib/liblexbor_static.a && :
/usr/bin/ld: libplugin-support.a(plugin-support.c.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: failed to set dynamic section sizes: bad value
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
royshil commented 10 months ago

@andersonid thanks for testing this is a different error, now -fPIC needs to be added to pugixml

andersonid commented 10 months ago

@andersonid thanks for testing this is a different error, now -fPIC needs to be added to pugixml

Like localvocal... Need I wait to pull it again?

royshil commented 10 months ago

@andersonid the work is on #57 pull the branch and give it a try... 🙏

andersonid commented 10 months ago

@royshil yes... I'm working on this branch...

anobre@fedorahome  ~/.../obs-plugins/obs-urlsource   roy.pugixml_build_fix_linux  gh pr checkout 57
Already on 'roy.pugixml_build_fix_linux'
Your branch is up to date with 'origin/roy.pugixml_build_fix_linux'.
Already up to date.
 anobre@fedorahome  ~/.../obs-plugins/obs-urlsource   roy.pugixml_build_fix_linux  git pull
Already up to date.
 anobre@fedorahome  ~/.../obs-plugins/obs-urlsource   roy.pugixml_build_fix_linux  
[35/35] Linking CXX shared module obs-urlsource.so
FAILED: obs-urlsource.so 
: && /usr/bin/c++ -fPIC -O2 -g -DNDEBUG   -shared  -o obs-urlsource.so CMakeFiles/obs-urlsource.dir/obs-urlsource_autogen/mocs_compilation.cpp.o CMakeFiles/obs-urlsource.dir/src/plugin-main.c.o CMakeFiles/obs-urlsource.dir/src/url-source.cpp.o CMakeFiles/obs-urlsource.dir/src/ui/RequestBuilder.cpp.o CMakeFiles/obs-urlsource.dir/src/request-data.cpp.o CMakeFiles/obs-urlsource.dir/src/ui/text-render-helper.cpp.o CMakeFiles/obs-urlsource.dir/src/url-source-info.c.o CMakeFiles/obs-urlsource.dir/src/obs-source-util.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/jsonpointer.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/jsonpath.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/regex.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/xml.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/errors.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/html.cpp.o CMakeFiles/obs-urlsource.dir/src/parsers/binary-data.cpp.o  /usr/lib64/libobs-frontend-api.so.29  _deps/libcurl_fetch-src/lib/libcurl.a  libplugin-support.a  /usr/lib64/libobs.so.29  /usr/lib64/libQt6Widgets.so.6.6.0  /usr/lib64/libQt6Gui.so.6.6.0  /usr/lib64/libGLX.so  /usr/lib64/libOpenGL.so  /usr/lib64/libQt6Core.so.6.6.0  /usr/lib64/libssl.so  /usr/lib64/libcrypto.so  /usr/lib64/libz.so  pugixml_build-prefix/lib/libpugixml.a  lexbor_build-prefix/lib/liblexbor_static.a && :
/usr/bin/ld: libplugin-support.a(plugin-support.c.o): relocation R_X86_64_32 against `.rodata.str1.1' can not be used when making a shared object; recompile with -fPIC
/usr/bin/ld: failed to set dynamic section sizes: bad value
collect2: error: ld returned 1 exit status
ninja: build stopped: subcommand failed.
royshil commented 10 months ago

@andersonid yep. i submitetd a patch to the obs-plugintemplate upstream so others don't run into this. https://github.com/obsproject/obs-plugintemplate/pull/100 i've fixed it here on #57 . please pull and try

andersonid commented 10 months ago

@andersonid yep. i submitetd a patch to the obs-plugintemplate upstream so others don't run into this. obsproject/obs-plugintemplate#100 i've fixed it here on #57 . please pull and try

Thanks mate! Now I got it compiled and place it in the folder /home/anobre/.config/obs-studio/plugins/obs-urlsource/bin/64bit and /data (for locale) but I cant see it as a source on the OBS. Localvocal is OK as a filter for audio sources, but urlsource not... 😥 Any consideration for this installation?

royshil commented 10 months ago

@andersonid very strange. can you show the logs from OBS? i want to see if the plugin is loaded

andersonid commented 10 months ago

It wasnt loaded. But its installed on the correct folder like the others that works. I tried /usr/share/obs/obs-plugins/ and /home/anobre/.config/obs-studio/plugins/ As said before, obs-localvocal is working...

11:39:57.780: Platform: Wayland
11:39:57.780: CPU Name: Intel(R) Core(TM) i7-9850H CPU @ 2.60GHz
11:39:57.780: CPU Speed: 4200.666MHz
11:39:57.781: Physical Cores: 6, Logical Cores: 12
11:39:57.781: Physical Memory: 31816MB Total, 3459MB Free
11:39:57.781: Kernel Version: Linux 6.5.10-200.fc38.x86_64
11:39:57.781: Distribution: "Fedora Linux" 38
11:39:57.781: Desktop Environment: GNOME (gnome)
11:39:57.781: Session Type: wayland
11:39:57.783: Qt Version: 6.6.0 (runtime), 6.6.0 (compiled)
11:39:57.783: Portable mode: false
11:39:57.812: OBS 29.1.3 (linux)
11:39:57.812: ---------------------------------
11:39:57.813: ---------------------------------
11:39:57.813: audio settings reset:
11:39:57.813:   samples per sec: 48000
11:39:57.813:   speakers:        2
11:39:57.813:   max buffering:   960 milliseconds
11:39:57.813:   buffering type:  dynamically increasing
11:39:57.829: ---------------------------------
11:39:57.829: Initializing OpenGL...
11:39:57.829: Using EGL/Wayland
11:39:57.867: Initialized EGL 1.5
11:39:57.880: Loading up OpenGL on adapter Intel Mesa Intel(R) UHD Graphics 630 (CFL GT2)
11:39:57.880: OpenGL loaded successfully, version 4.6 (Core Profile) Mesa 23.1.9, shading language 4.60
11:39:57.909: ---------------------------------
11:39:57.909: video settings reset:
11:39:57.909:   base resolution:   1920x1080
11:39:57.909:   output resolution: 1920x1080
11:39:57.909:   downscale filter:  Bilinear
11:39:57.909:   fps:               30/1
11:39:57.909:   format:            NV12
11:39:57.909:   YUV mode:          Rec. 709/Partial
11:39:57.909: NV12 texture support not available
11:39:57.909: P010 texture support not available
11:39:57.911: Audio monitoring device:
11:39:57.911:   name: Default
11:39:57.911:   id: default
11:39:57.911: ---------------------------------
11:39:57.933: Failed to load 'en-US' text for module: 'decklink-captions.so'
11:39:57.955: Failed to load 'en-US' text for module: 'decklink-output-ui.so'
11:39:57.976: A DeckLink iterator could not be created.  The DeckLink drivers may not be installed
11:39:57.976: Failed to initialize module 'decklink.so'
11:39:58.205: [pipewire] Available captures:
11:39:58.205: [pipewire]     - Desktop capture
11:39:58.205: [pipewire]     - Window capture
11:39:58.275: Failed to load 'en-US' text for module: 'obs-backgroundremoval.so'
11:39:58.275: [obs-backgroundremoval] Plugin loaded successfully (version 1.1.7)
11:39:58.444: VAAPI: Failed to initialize display in vaapi_device_h264_supported
11:39:58.444: FFmpeg VAAPI H264 encoding not supported
11:39:58.444: VAAPI: Failed to initialize display in vaapi_device_hevc_supported
11:39:58.444: FFmpeg VAAPI HEVC encoding not supported
11:39:58.510: [obs-localvocal] plugin loaded successfully (version 0.0.7)
11:39:58.627: [obs-websocket] [obs_module_load] you can haz websockets (Version: 5.2.3 | RPC Version: 1)
11:39:58.627: [obs-websocket] [obs_module_load] Qt version (compile-time): 6.6.0 | Qt version (run-time): 6.6.0
11:39:58.627: [obs-websocket] [obs_module_load] Linked ASIO Version: 102801
11:39:58.632: [obs-websocket] [obs_module_load] Module loaded.
11:39:58.725: [vlc-video]: VLC 3.0.20 Vetinari found, VLC video source enabled
11:39:58.749: obs_register_source: Source 'transcription_filter_audio_filter' already exists!  Duplicate library?
11:39:58.749: [obs-localvocal] plugin loaded successfully (version 0.0.7)
11:39:58.749: ---------------------------------
11:39:58.749:   Loaded Modules:
11:39:58.749:     obs-localvocal.so
11:39:58.750:     vlc-video.so
11:39:58.750:     text-freetype2.so
11:39:58.750:     rtmp-services.so
11:39:58.750:     obs-x264.so
11:39:58.750:     obs-websocket.so
11:39:58.750:     obs-webkitgtk.so
11:39:58.750:     obs-vst.so
11:39:58.750:     obs-transitions.so
11:39:58.750:     obs-outputs.so
11:39:58.750:     obs-localvocal.so
11:39:58.750:     obs-libfdk.so
11:39:58.750:     obs-filters.so
11:39:58.750:     obs-ffmpeg.so
11:39:58.750:     obs-backgroundremoval.so
11:39:58.750:     linux-v4l2.so
11:39:58.750:     linux-pulseaudio.so
11:39:58.750:     linux-pipewire.so
11:39:58.750:     linux-jack.so
11:39:58.750:     linux-capture.so
11:39:58.750:     linux-alsa.so
11:39:58.750:     image-source.so
11:39:58.750:     frontend-tools.so
11:39:58.750:     decklink-output-ui.so
11:39:58.750:     decklink-captions.so
11:39:58.750: ---------------------------------
11:39:58.750: ==== Startup complete ===============================================
11:39:58.796: All scene data cleared
11:39:58.796: ------------------------------------------------
11:39:58.799: pulse-input: Server name: 'PulseAudio (on PipeWire 0.3.85) 15.0.0'
11:39:58.800: pulse-input: Audio format: s32le, 48000 Hz, 2 channels
11:39:58.800: pulse-input: Started recording from 'alsa_output.pci-0000_00_1f.3.analog-stereo.monitor' (default)
11:39:58.800: [Loaded global audio device]: 'Desktop Audio'
11:39:58.800: pulse-input: Server name: 'PulseAudio (on PipeWire 0.3.85) 15.0.0'
11:39:58.800: pulse-input: An error occurred while getting the source info!
11:39:58.800: [Loaded global audio device]: 'Mic/Aux'
11:39:58.801: pulse-input: Server name: 'PulseAudio (on PipeWire 0.3.85) 15.0.0'
11:39:58.801: pulse-input: Audio format: s32le, 48000 Hz, 2 channels
11:39:58.801: pulse-input: Started recording from 'alsa_input.pci-0000_00_1f.3.analog-stereo' (default)
11:39:58.801: [obs-localvocal] transcription_filter_defaults
11:39:58.801: [obs-localvocal] transcription filter create
11:39:58.801: [obs-localvocal] Checking if model models/ggml-small.bin exists in data...
11:39:58.802: [obs-localvocal] Model models/ggml-small.bin not found in data.
11:39:58.802: [obs-localvocal] Model path in config: /home/anobre/.config/obs-studio/plugin_config/obs-localvocal/models/ggml-small.bin
11:39:58.802: [obs-localvocal] Model exists in config folder: /home/anobre/.config/obs-studio/plugin_config/obs-localvocal/models/ggml-small.bin
11:39:58.802: [obs-localvocal] Loading whisper model from /home/anobre/.config/obs-studio/plugin_config/obs-localvocal/models/ggml-small.bin
11:39:59.098: [obs-localvocal] Whisper model loaded: AVX = 1 | AVX2 = 0 | AVX512 = 0 | FMA = 1 | NEON = 0 | ARM_FMA = 0 | METAL = 0 | F16C = 1 | FP16_VA = 0 | WASM_SIMD = 0 | BLAS = 0 | SSE3 = 1 | SSSE3 = 1 | VSX = 0 | COREML = 0 | OPENVINO = 0 | 
11:39:59.098: [obs-localvocal] starting whisper thread
11:39:59.104: Switched to scene 'blank'
11:39:59.104: ------------------------------------------------
11:39:59.104: Loaded scenes:
11:39:59.104: - scene 'blank':
11:39:59.104:     - source: 'Audio Input Capture (PulseAudio)' (pulse_input_capture)
11:39:59.104:         - filter: 'LocalVocal Transcription' (transcription_filter_audio_filter)
11:39:59.104: ------------------------------------------------
11:39:59.127: [obs-websocket] [WebSocketServer::onObsLoaded] WebSocket server is enabled, starting...
11:39:59.127: [obs-websocket] [WebSocketServer::Start] Not locked to IPv4 bindings
11:39:59.127: [obs-websocket] [WebSocketServer::ServerRunner] IO thread started.
11:39:59.127: [obs-websocket] [WebSocketServer::Start] Server started successfully on port 4444. Possible connect address: 192.168.15.35
11:39:59.370: adding 42 milliseconds of audio buffering, total audio buffering is now 42 milliseconds (source: Desktop Audio)
11:39:59.370: 
11:40:07.180: [obs-localvocal] [00:03.581 --> 00:06.580] (0.456)  eles não podem te fazer com a sua espada.
11:40:11.891: [obs-localvocal] [00:08.381 --> 00:11.381] (0.447)  eles não podem te fazer com a sua espada.
11:40:16.475: [obs-localvocal] [00:13.091 --> 00:16.091] (0.505)  tchau!
11:40:21.183: [obs-localvocal] [00:17.675 --> 00:20.675] (0.326)  e aí
11:40:25.897: [obs-localvocal] [00:22.383 --> 00:25.383] (0.362)  e aí
11:40:30.775: [obs-localvocal] [00:27.097 --> 00:30.097] (0.430)  o que é isso?
11:40:35.571: [obs-localvocal] [00:31.975 --> 00:34.975] (0.387)  e aí
11:40:40.615: [obs-localvocal] [00:36.771 --> 00:39.771] (0.400)  e...
11:40:45.216: [obs-localvocal] [00:41.815 --> 00:44.815] (0.341)  e aí
11:40:49.942: [obs-localvocal] [00:46.417 --> 00:49.417] (0.357)  e aí
11:40:54.908: [obs-localvocal] [00:51.143 --> 00:54.143] (0.314)  tava em fio, isso?
11:40:59.965: [obs-localvocal] [00:56.109 --> 00:59.109] (0.413)  e aí, com licença, vamos para o fim.
11:41:04.792: [obs-localvocal] [01:01.165 --> 01:04.165] (0.387)  e aí
11:41:09.520: [obs-localvocal] [01:05.993 --> 01:08.993] (0.389)  e aí
11:41:14.624: [obs-localvocal] [01:10.720 --> 01:13.720] (0.391)  e o gravo servido, o salto do servido.
11:41:19.902: [obs-localvocal] [01:15.824 --> 01:18.824] (0.317)  se você quiser, pode fazer um outro.
11:41:24.959: [obs-localvocal] [01:21.102 --> 01:24.102] (0.393)  e não posso lhe dizer o que eu estou falando.
11:41:30.172: [obs-localvocal] [01:26.160 --> 01:29.160] (0.433)  e aí
11:41:34.945: [obs-localvocal] [01:31.373 --> 01:34.373] (0.289)  e aí
11:41:40.113: [obs-localvocal] [01:36.145 --> 01:39.145] (0.361)  e aí
11:41:44.980: [obs-localvocal] [01:41.314 --> 01:44.314] (0.531)  valeu.
11:41:50.103: [obs-localvocal] [01:46.181 --> 01:49.181] (0.390)  e aí
11:41:55.580: [obs-localvocal] [01:51.303 --> 01:54.303] (0.213)  ainda não tem o que fazer com a sua vida.
11:42:01.150: [obs-localvocal] [01:56.780 --> 01:59.780] (0.493)  eu sou um grande perfeita, eu sou um grande perfeita.
11:42:03.943: pulse-input: Stopped recording from 'default'
11:42:03.943: pulse-input: Got 5003 packets with 6003600 frames
11:42:03.944: pulse-input: Server name: 'PulseAudio (on PipeWire 0.3.85) 15.0.0'
11:42:03.944: pulse-input: Audio format: s32le, 48000 Hz, 2 channels
11:42:03.944: pulse-input: Started recording from 'alsa_input.pci-0000_00_1f.3.analog-stereo' (default)
11:42:06.186: [obs-localvocal] transcription_filter_properties
11:42:06.186: [obs-localvocal] whisper_model_path_external modified
11:42:06.291: [obs-localvocal] [02:02.351 --> 02:05.351] (0.339)  e aí
11:42:11.771: [obs-localvocal] [00:00.106 --> 00:03.106] (0.341)  tá? e o rei vai curtir?
11:42:16.944: [obs-localvocal] [00:05.586 --> 00:08.586] (0.382)  e
11:42:22.198: [obs-localvocal] [00:10.760 --> 00:13.760] (0.329)  agradeço a todos os que estão aqui.
11:42:27.312: [obs-localvocal] [00:16.027 --> 00:19.027] (0.474)  o que é isso?
11:42:32.499: [obs-localvocal] [00:21.150 --> 00:24.150] (0.243)  abre o bicho!
11:42:37.435: [obs-localvocal] [00:26.315 --> 00:29.315] (0.367)  e
11:42:42.598: [obs-localvocal] [00:31.250 --> 00:34.250] (0.289)  e os outros nos tornamos nós.
11:42:48.117: [obs-localvocal] [00:36.414 --> 00:39.414] (0.358)  e o que é isso?
11:42:53.514: [obs-localvocal] [00:41.932 --> 00:44.932] (0.411)  e aí
11:42:58.909: [obs-localvocal] [00:47.329 --> 00:50.329] (0.402)  o que é isso?
11:43:04.292: [obs-localvocal] [00:52.725 --> 00:55.725] (0.487)  e assim é, agora que se sabe que ele...
11:43:09.613: ==== Shutting down ==================================================
11:43:09.622: pulse-input: Stopped recording from 'alsa_output.pci-0000_00_1f.3.analog-stereo.monitor'
11:43:09.622: pulse-input: Got 7632 packets with 9158400 frames
11:43:10.114: [obs-localvocal] [00:58.107 --> 01:01.107] (0.690)  e aí, o que é o que é o que é o que é o que é o que é o que é o que é o que é o que
11:43:10.151: [obs-localvocal] whisper context is null
11:43:10.153: [obs-localvocal] whisper context is null
11:43:10.154: [obs-localvocal] whisper context is null
11:43:10.156: [obs-localvocal] whisper context is null
11:43:10.157: [obs-localvocal] whisper context is null
11:43:10.159: [obs-localvocal] whisper context is null
11:43:10.160: [obs-localvocal] whisper context is null
11:43:10.161: [obs-localvocal] whisper context is null
11:43:10.163: [obs-localvocal] whisper context is null
11:43:10.164: [obs-localvocal] whisper context is null
11:43:10.166: [obs-localvocal] whisper context is null
11:43:10.167: [obs-localvocal] whisper context is null
11:43:10.169: [obs-localvocal] whisper context is null
11:43:10.170: [obs-localvocal] whisper context is null
11:43:10.171: [obs-localvocal] whisper context is null
11:43:10.173: [obs-localvocal] whisper context is null
11:43:10.174: [obs-localvocal] whisper context is null
11:43:10.175: [obs-localvocal] whisper context is null
11:43:10.177: [obs-localvocal] whisper context is null
11:43:10.178: [obs-localvocal] whisper context is null
11:43:10.179: [obs-localvocal] whisper context is null
11:43:10.180: [obs-localvocal] whisper context is null
11:43:10.181: [obs-localvocal] whisper context is null
11:43:10.182: [obs-localvocal] whisper context is null
11:43:10.184: [obs-localvocal] whisper context is null
11:43:10.185: [obs-localvocal] whisper context is null
11:43:10.186: [obs-localvocal] whisper context is null
11:43:10.187: [obs-localvocal] whisper context is null
11:43:10.188: [obs-localvocal] whisper context is null
11:43:10.199: [obs-localvocal] Whisper context is null, exiting thread
11:43:10.199: [obs-localvocal] exiting whisper thread
11:43:10.204: pulse-input: Stopped recording from 'alsa_input.pci-0000_00_1f.3.analog-stereo'
11:43:10.204: pulse-input: Got 2649 packets with 3178800 frames
11:43:10.220: All scene data cleared
11:43:10.220: ------------------------------------------------
11:43:10.283: [obs-localvocal] plugin unloaded
11:43:10.285: [obs-websocket] [obs_module_unload] Shutting down...
11:43:10.285: [obs-websocket] [WebSocketServer::ServerRunner] IO thread exited.
11:43:10.286: [obs-websocket] [WebSocketServer::Stop] Server stopped successfully
11:43:10.286: [obs-websocket] [obs_module_unload] Finished shutting down.
11:43:10.286: [obs-localvocal] plugin unloaded
11:43:10.287: [obs-backgroundremoval] plugin unloaded
11:43:10.305: [Scripting] Total detached callbacks: 0
11:43:10.306: Freeing OBS context data
11:43:10.328: == Profiler Results =============================
11:43:10.328: run_program_init: 1559.45 ms
11:43:10.328:  ┣OBSApp::AppInit: 4.066 ms
11:43:10.328:  ┃ ┗OBSApp::InitLocale: 0.686 ms
11:43:10.328:  ┗OBSApp::OBSInit: 1347.26 ms
11:43:10.328:    ┣obs_startup: 2.218 ms
11:43:10.328:    ┗OBSBasic::OBSInit: 1314.89 ms
11:43:10.328:      ┣OBSBasic::InitBasicConfig: 0.104 ms
11:43:10.328:      ┣OBSBasic::ResetAudio: 0.221 ms
11:43:10.328:      ┣OBSBasic::ResetVideo: 97.605 ms
11:43:10.328:      ┣OBSBasic::InitOBSCallbacks: 0.003 ms
11:43:10.328:      ┣OBSBasic::InitHotkeys: 0.021 ms
11:43:10.328:      ┣obs_load_all_modules2: 838.862 ms
11:43:10.328:      ┃ ┣obs_init_module(decklink-captions.so): 0 ms
11:43:10.328:      ┃ ┣obs_init_module(decklink-output-ui.so): 0 ms
11:43:10.328:      ┃ ┣obs_init_module(decklink.so): 0.095 ms
11:43:10.328:      ┃ ┣obs_init_module(frontend-tools.so): 72.058 ms
11:43:10.328:      ┃ ┣obs_init_module(image-source.so): 0.007 ms
11:43:10.328:      ┃ ┣obs_init_module(linux-alsa.so): 0.002 ms
11:43:10.328:      ┃ ┣obs_init_module(linux-capture.so): 0 ms
11:43:10.329:      ┃ ┣obs_init_module(linux-jack.so): 0.002 ms
11:43:10.329:      ┃ ┣obs_init_module(linux-pipewire.so): 1.061 ms
11:43:10.329:      ┃ ┣obs_init_module(linux-pulseaudio.so): 0.003 ms
11:43:10.329:      ┃ ┣obs_init_module(linux-v4l2.so): 0.111 ms
11:43:10.329:      ┃ ┣obs_init_module(obs-backgroundremoval.so): 0.05 ms
11:43:10.329:      ┃ ┣obs_init_module(obs-ffmpeg.so): 1.008 ms
11:43:10.329:      ┃ ┃ ┗nvenc_check: 0.516 ms
11:43:10.329:      ┃ ┣obs_init_module(obs-filters.so): 0.021 ms
11:43:10.329:      ┃ ┣obs_init_module(obs-libfdk.so): 0.001 ms
11:43:10.329:      ┃ ┣obs_init_module(obs-localvocal.so): 0.039 ms
11:43:10.329:      ┃ ┣obs_init_module(obs-outputs.so): 0.003 ms
11:43:10.329:      ┃ ┣obs_init_module(obs-transitions.so): 0.006 ms
11:43:10.329:      ┃ ┣obs_init_module(obs-vst.so): 0.009 ms
11:43:10.329:      ┃ ┣obs_init_module(obs-webkitgtk.so): 0.005 ms
11:43:10.329:      ┃ ┣obs_init_module(obs-websocket.so): 5.097 ms
11:43:10.329:      ┃ ┣obs_init_module(obs-x264.so): 0.002 ms
11:43:10.329:      ┃ ┣obs_init_module(rtmp-services.so): 0.558 ms
11:43:10.329:      ┃ ┣obs_init_module(text-freetype2.so): 0.011 ms
11:43:10.329:      ┃ ┣obs_init_module(vlc-video.so): 2.708 ms
11:43:10.329:      ┃ ┗obs_init_module(obs-localvocal.so): 0.048 ms
11:43:10.329:      ┣OBSBasic::InitService: 0.972 ms
11:43:10.329:      ┣OBSBasic::ResetOutputs: 0.12 ms
11:43:10.329:      ┣OBSBasic::CreateHotkeys: 0.018 ms
11:43:10.329:      ┣OBSBasic::InitPrimitives: 0.043 ms
11:43:10.329:      ┗OBSBasic::Load: 353.277 ms
11:43:10.329: obs_hotkey_thread(25 ms): min=0 ms, median=0.001 ms, max=0.035 ms, 99th percentile=0.002 ms, 100% below 25 ms
11:43:10.329: audio_thread(Audio): min=0.006 ms, median=0.074 ms, max=0.455 ms, 99th percentile=0.23 ms
11:43:10.329: obs_graphics_thread(33.3333 ms): min=0.026 ms, median=0.252 ms, max=287.27 ms, 99th percentile=0.668 ms, 99.9827% below 33.333 ms
11:43:10.329:  ┣tick_sources: min=0 ms, median=0.008 ms, max=287.21 ms, 99th percentile=0.021 ms
11:43:10.329:  ┣output_frame: min=0.011 ms, median=0.088 ms, max=2.745 ms, 99th percentile=0.212 ms
11:43:10.329:  ┃ ┗gs_context(video->graphics): min=0.011 ms, median=0.088 ms, max=2.743 ms, 99th percentile=0.211 ms
11:43:10.329:  ┃   ┣render_video: min=0.007 ms, median=0.025 ms, max=0.197 ms, 99th percentile=0.062 ms
11:43:10.329:  ┃   ┃ ┗render_main_texture: min=0.005 ms, median=0.022 ms, max=0.194 ms, 99th percentile=0.054 ms
11:43:10.329:  ┃   ┗gs_flush: min=0.001 ms, median=0.058 ms, max=2.698 ms, 99th percentile=0.137 ms
11:43:10.329:  ┗render_displays: min=0.001 ms, median=0.135 ms, max=0.952 ms, 99th percentile=0.39 ms
11:43:10.329: =================================================
11:43:10.329: == Profiler Time Between Calls ==================
11:43:10.329: obs_hotkey_thread(25 ms): min=25.015 ms, median=25.087 ms, max=26.901 ms, 99.987% within ±2% of 25 ms (0% lower, 0.0130327% higher)
11:43:10.329: obs_graphics_thread(33.3333 ms): min=12.726 ms, median=33.333 ms, max=287.274 ms, 99.8959% within ±2% of 33.333 ms (0.0520562% lower, 0.0520562% higher)
11:43:10.329: =================================================
11:43:10.334: Number of memory leaks: 1
royshil commented 10 months ago

@andersonid it never attempts to load the plugin. are you positive you're placing it in the right folder?

andersonid commented 10 months ago

@andersonid it never attempts to load the plugin. are you positive you're placing it in the right folder?

I believe, yes... As I said... I tried to put it in /usr/share/obs/obs-plugins/ and /home/anobre/.config/obs-studio/plugins/ like I did with obs-localvocal and its working.

andersonid commented 10 months ago

Double checked, mate.

 anobre@fedorahome  .../obs-plugins/obs-urlsource  ls -laR
.:
total 0
drwxr-xr-x. 1 root root  14 Nov 23 06:50 .
drwxr-xr-x. 1 root root 580 Nov 23 06:50 ..
drwxr-xr-x. 1 root root  10 Nov 23 06:49 bin
drwxr-xr-x. 1 root root  12 Nov 23 06:51 data

./bin:
total 0
drwxr-xr-x. 1 root root 10 Nov 23 06:49 .
drwxr-xr-x. 1 root root 14 Nov 23 06:50 ..
drwxr-xr-x. 1 root root 32 Nov 23 06:53 64bit

./bin/64bit:
total 35728
drwxr-xr-x. 1 root root       32 Nov 23 06:53 .
drwxr-xr-x. 1 root root       10 Nov 23 06:49 ..
-rwxr-xr-x. 1 root root 36584336 Nov 23 06:53 obs-urlsource.so

./data:
total 0
drwxr-xr-x. 1 root root 12 Nov 23 06:51 .
drwxr-xr-x. 1 root root 14 Nov 23 06:50 ..
drwxr-xr-x. 1 root root 18 Nov 23 06:51 locale

./data/locale:
total 0
drwxr-xr-x. 1 root root 18 Nov 23 06:51 .
drwxr-xr-x. 1 root root 12 Nov 23 06:51 ..
-rw-r--r--. 1 root root  0 Nov 23 06:51 en-US.ini
 anobre@fedorahome  .../obs-plugins/obs-urlsource  pwd
/usr/share/obs/obs-plugins/obs-urlsource

And from logs, the plugin wont be loaded. (compiled again and tried to install it in /usr folder and tried in the /home)

06:53:13.283: ---------------------------------
06:53:13.283:   Loaded Modules:
06:53:13.283:     vlc-video.so
06:53:13.283:     text-freetype2.so
06:53:13.283:     rtmp-services.so
06:53:13.283:     obs-x264.so
06:53:13.283:     obs-websocket.so
06:53:13.283:     obs-webkitgtk.so
06:53:13.283:     obs-vst.so
06:53:13.283:     obs-transitions.so
06:53:13.283:     obs-outputs.so
06:53:13.283:     obs-localvocal.so
06:53:13.283:     obs-libfdk.so
06:53:13.283:     obs-filters.so
06:53:13.283:     obs-ffmpeg.so
06:53:13.283:     obs-backgroundremoval.so
06:53:13.283:     linux-v4l2.so
06:53:13.283:     linux-pulseaudio.so
06:53:13.283:     linux-pipewire.so
06:53:13.283:     linux-jack.so
06:53:13.283:     linux-capture.so
06:53:13.283:     linux-alsa.so
06:53:13.283:     image-source.so
06:53:13.283:     frontend-tools.so
06:53:13.283:     decklink-output-ui.so
06:53:13.283:     decklink-captions.so
06:53:13.283: ---------------------------------
royshil commented 10 months ago

I don't know why it doesn't load But usually the logs say that it tries to load a plugin and fails and what's the reason. It's earlier in the logs You can find the place where LocalVocal is loaded and around that look for urlsource

andersonid commented 10 months ago

I don't know why it doesn't load But usually the logs say that it tries to load a plugin and fails and what's the reason. It's earlier in the logs You can find the place where LocalVocal is loaded and around that look for urlsource

I will keep trying. But as said... the localvocal is in the right place and urlsouce is being installed in the same path. Also, the full log do not show anything about loading fail for the urlsouce. Seems like its not identified as a plugin. Nothing was shown about it on the logs.

😥

andersonid commented 10 months ago

Now working!!!! Unlike localvocal, it cannot be installed in /usr but in /home and I had to force the "owner" change in the directory

image