Running GStreamer on on Windows 10 Secure Host Baseline (SHB) with an Host-Based Security System (HBSS)

Yurkanin, David dyurkanin at specialtysystems.com
Tue Jan 11 16:30:11 UTC 2022


HELLO,
I am trying to run GStreamer v1.0 on a workstation with Windows 10 Secure Host Baseline (SHB) with an Host-Based Security System (HBSS).  I have found that the HBSS prevents loading of any dll from outside the current directory in which an .exe is being run ( the .exe is run from a whitelisted directory from a console window).

Note that my .exe using GStreamer pipelines/rtsp runs fine on a regular Windows 10 workstation with admin credentials.

So I have many of the .dlls copied into the .exe directory as follows:


06/02/2021  05:38 AM         1,466,368 gio-2.0-0.dll

12/10/2019  12:59 PM           422,912 glew32.dll

06/02/2021  05:38 AM         1,303,040 glib-2.0-0.dll

06/02/2021  05:38 AM            20,992 gmodule-2.0-0.dll

06/02/2021  05:38 AM           289,280 gobject-2.0-0.dll

06/02/2021  05:59 AM            68,096 gstapp-1.0-0.dll

06/02/2021  05:59 AM           476,160 gstaudio-1.0-0.dll

06/02/2021  05:42 AM           479,232 gstbase-1.0-0.dll

06/02/2021  05:42 AM            95,232 gstnet-1.0-0.dll

06/02/2021  05:59 AM           218,624 gstpbutils-1.0-0.dll

06/02/2021  05:42 AM         1,139,200 gstreamer-1.0-0.dll

06/02/2021  05:59 AM            57,344 gstriff-1.0-0.dll

06/02/2021  05:59 AM           147,456 gstrtp-1.0-0.dll

06/02/2021  05:59 AM           123,392 gstrtsp-1.0-0.dll

06/02/2021  06:07 AM           368,128 gstrtspserver-1.0-0.dll

06/02/2021  05:59 AM            88,576 gstsdp-1.0-0.dll

06/02/2021  05:59 AM           231,424 gsttag-1.0-0.dll

06/02/2021  05:59 AM           710,144 gstvideo-1.0-0.dll



With these dlls I can run my app that uses a GStreamer pipeline for capturing camera video (H264 decoding) and also using the GStreamer rtsp server code to output a video stream, but I still was getting errors trying to load dlls. So I assume GStreamer loads dlls when a particular library element needs it.


When I set the local PATH variable and GST_PLUGIN_PATH variables in a console window running my .exe I can get some functionality working (like the rtsp media_configure() and need_data() method threads) but not all of it (a need_data() argument is a consistent goofy address.  Below is an example of some of the errors:




0:00:04.611150000 30136 000001E629F25960 WARN                 default ges-meta-container.c:237:_set_value:<GESAsset at 000001E629F1EDC0> Could not set value on item: format-version

0:00:04.613680000 30136 000001E629F25960 WARN                 default ges-meta-container.c:237:_set_value:<GESAsset at 000001E629F1EE40> Could not set value on item: format-version

0:00:04.616195000 30136 000001E629F25960 WARN                 default ges-meta-container.c:237:_set_value:<GESAsset at 000001E629F1EEC0> Could not set value on item: format-version

0:00:04.621471000 30136 000001E629F25960 WARN               structure gststructure.c:2332:priv_gst_structure_parse_fields: Failed to find delimiter, r=mimetype

0:00:05.189240000 30136 000001E629F25960 WARN                  ladspa gstladspa.c:508:plugin_init:<plugin90> no LADSPA plugins found, check LADSPA_PATH

0:00:23.973051000 30136 000001E619001000 WARN             mftransform gstmftransform.cpp:552:gst_mf_transform_thread_func:<mftransform3> No available device at index 0

0:00:23.993402000 30136 000001E619001040 WARN             mftransform gstmftransform.cpp:552:gst_mf_transform_thread_func:<mftransform4> No available device at index 0

0:00:24.011978000 30136 000001E619001080 WARN             mftransform gstmftransform.cpp:552:gst_mf_transform_thread_func:<mftransform5> No available device at index 0

0:00:24.064008000 30136 000001E619001080 WARN             mftransform gstmftransform.cpp:552:gst_mf_transform_thread_func:<mftransform6> No available device at index 0

0:00:24.172994000 30136 000001E618FF8E40 WARN             mftransform gstmftransform.cpp:552:gst_mf_transform_thread_func:<mftransform8> No available device at index 1

0:00:24.182256000 30136 000001E618FF8D80 WARN             mftransform gstmftransform.cpp:552:gst_mf_transform_thread_func:<mftransform9> No available device at index 0

0:00:24.832976000 30136 000001E619001080 WARN             mftransform gstmftransform.cpp:552:gst_mf_transform_thread_func:<mftransform11> No available device at index 1

0:00:26.062326000 30136 000001E629F25960 WARN                 default gstnvrtcloader.c:94:gst_nvrtc_load_library: Could not open library nvrtc64_114_0.dll, 'nvrtc64_114_0.dll': The specified module could not be found.

So my question is there a complete list of what dlls GStreamer needs to load and from what expected paths? Has anyone out there had this issue and tried to solve it without admin credentials?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://lists.freedesktop.org/archives/gstreamer-devel/attachments/20220111/d9c27a4c/attachment-0001.htm>


More information about the gstreamer-devel mailing list