Problems while loading the Plugins for GStreamer

classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

Problems while loading the Plugins for GStreamer

abhishingane
Hello All,

I am getting a below message while running a GStreamer program in visual
studio 2017.

(Project1.exe:6936): GStreamer-WARNING **: 10:25:54.762: Failed to load
plugin 'C:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstwavparse.dll':
'C:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstwavparse.dll': The
specified module could not be found.

This is for all the DLL's present in
*C:\gstreamer\1.0\x86_64\lib\gstreamer-1.0* folder.

I have set all the necessary environment variables and property sheets also.
but still, I am unable to resolve this issue.
please help.



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel
Reply | Threaded
Open this post in threaded view
|

Re: Problems while loading the Plugins for GStreamer

David Ing
That error message suggests that it can find  libgstwavparse.dll but it cannot be loaded.  The most likely reason why it fails to load is that there is some dependency which it needs but which is not available.  (Other reasons may be possible.)

I don't have this problem on my system.  I can execute `gst-inspect-1.0 wavparse` and I get a full description of the plugin (which means it loaded properly).   I am using Gstreamer 1.16.1-msvc on Windows 10.  I installed it using the runtime installer and development installer.  I was careful to install everything (the default options may not install everything IIRC).

I do not use the VS property sheets which are found in `%GSTREAMER_1_0_ROOT_X86_64%\share\vs\2010` (I recommend you avoid using them).  I can tell you that these property sheets are very old, and I think they force the user to use a very old version of the msvcrt which you probably don't want to use in any modern application.  (It is possible that something in these property sheets is actually interfering with your ability to load some dependencies.)  If you use the `msvc` binaries (which I recommend) then there is no reason to use an old version of the CRT (the default version provided by vs2017 would be fine).

I have written a vs2017 program that pulls in gstreamer.  My technique was to create a nuget package which encapsulates all the gstreamer binaries and I use the following property sheet:

<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <ImportGroup Label="PropertySheets">
  </ImportGroup>

  <PropertyGroup Label="UserMacros">
    <GstreamerVersion>1.16.1-msvc-r0</GstreamerVersion>
    <GstreamerPackageFolder>$(SolutionDir)packages\Panopto.Native.Gstreamer.$(GstreamerVersion)</GstreamerPackageFolder>
    <GstreamerIncludeFolder>$(GstreamerPackageFolder)\include\gstreamer-1.0</GstreamerIncludeFolder>
    <GlibIncludeFolder>$(GstreamerPackageFolder)\include\glib-2.0</GlibIncludeFolder>
  </PropertyGroup>
 
  <PropertyGroup Label="UserMacros" Condition="'$(Platform)'=='x64'">
    <GstreamerDllFolder>$(GstreamerPackageFolder)\dll\windows-x86_64</GstreamerDllFolder>
    <GstreamerLibFolder>$(GstreamerPackageFolder)\libs\windows-x86_64</GstreamerLibFolder>
  </PropertyGroup>
  <PropertyGroup Label="UserMacros" Condition="'$(Platform)'=='Win32'">
  <GstreamerDllFolder>$(GstreamerPackageFolder)\dll\windows-x86</GstreamerDllFolder>
    <GstreamerLibFolder>$(GstreamerPackageFolder)\libs\windows-x86</GstreamerLibFolder>
  </PropertyGroup>

  <ItemDefinitionGroup>
    <ClCompile>
      <AdditionalIncludeDirectories>$(GlibIncludeFolder);$(GstreamerIncludeFolder);%(AdditionalIncludeDirectories)</AdditionalIncludeDirectories>
    </ClCompile>
    <Link>
      <AdditionalLibraryDirectories>$(GstreamerLibFolder);$(GstreamerDllFolder);%(AdditionalLibraryDirectories)</AdditionalLibraryDirectories>
      <AdditionalDependencies>ges-1.0.lib;glib-2.0.lib;gobject-2.0.lib;gstbase-1.0.lib;gstcontroller-1.0.lib;gstpbutils-1.0.lib;gstreamer-1.0.lib;intl.lib;%(AdditionalDependencies)</AdditionalDependencies>
    </Link>
  </ItemDefinitionGroup>

  <ItemGroup />
</Project>

On Sat, Dec 14, 2019 at 3:59 AM abhishingane <[hidden email]> wrote:
Hello All,

I am getting a below message while running a GStreamer program in visual
studio 2017.

(Project1.exe:6936): GStreamer-WARNING **: 10:25:54.762: Failed to load
plugin 'C:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstwavparse.dll':
'C:\gstreamer\1.0\x86_64\lib\gstreamer-1.0\libgstwavparse.dll': The
specified module could not be found.

This is for all the DLL's present in
*C:\gstreamer\1.0\x86_64\lib\gstreamer-1.0* folder.

I have set all the necessary environment variables and property sheets also.
but still, I am unable to resolve this issue.
please help.



--
Sent from: http://gstreamer-devel.966125.n4.nabble.com/
_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel

_______________________________________________
gstreamer-devel mailing list
[hidden email]
https://lists.freedesktop.org/mailman/listinfo/gstreamer-devel