Gst-launch-1.0 and Windows

Linux:

$ gst-launch-1.0 filesrc location=test.mp3 ! decodebin ! audioconvert ! audioresample ! autoaudiosink
Leitung wird auf PAUSIERT gesetzt ...
...

io…

Windows (wine) / Win10 (VB):

>gst-launch-1.0 filesrc location=test.mp3 ! decodebin ! audioconvert ! audioresample ! autoaudiosink
ERROR: pipeline could not be constructed: no element "filesrc".
$

Same problem here:

>gst-launch-1.0 playbin uri=https://gstreamer.freedesktop.org/data/media/sintel_trailer-480p.webm
ERROR: pipeline could not be constructed: no element "playbin".

Why does it work under Linux but refuses to work under Windows?

How did you install GStreamer on Windows?

first I installed the following

https://gstreamer.freedesktop.org/data/pkg/windows/1.24.7/msvc/gstreamer-1.0-msvc-x86_64-1.24.7.msi

I have now managed to do the following: if I switch to the bin folder and run gst-launch there, it runs without errors. Regardless of whether in the VB or with wine.

:~/.wine/drive_c/gstreamer/1.0/msvc_x86_64/bin$ wine gst-launch-1.0 filesrc location=test.mp3 ! decodebin ! audioconvert ! audioresample ! autoaudiosink
Use Windows high-resolution clock, precision: 1 ms
Setting pipeline to PAUSED ...
...

But if I start it from a different folder in the following example bin/test, I am bombarded with errors again.

$ wine cmd
Microsoft Windows 10.0.19043

C:\gstreamer\1.0\msvc_x86_64\bin\test>..\gst-launch-1.0 filesrc location=..\test.mp3 ! decodebin ! audioconvert ! audioresample ! autoaudiosink
Use Windows high-resolution clock, precision: 1 ms
Setting pipeline to PAUSED ...
011c:err:combase:RoGetActivationFactory Failed to find library for L"Windows.ApplicationModel.Core.CoreApplication"
ERROR: from element /GstPipeline:pipeline0/GstFileSrc:filesrc0: Resource not found.

But if I start it from a different folder in the following example bin/test, I am bombarded with errors again.

I’ve come one step further.

I’ve adjusted the following line in .bashrc.

export WINEPATH="$WINEPATH;C:\gstreamer\1.0\msvc_x86_64\bin"

Now at least this works, and all the plugins are listed, just like they are under Linux.

wine gst-inspect-1.0`

But gst-launch still doesn’t work.

wine gst-launch-1.0 playbin uri=https://gstreamer.freedesktop.org/data/media/sintel_trailer-480p.webm

There is the following error:

Use Windows high-resolution clock, precision: 1 ms Setting pipeline to PAUSED ... Pipeline is PREROLLING ... Got context from element 'source': gst.soup.session=context, session=(GstSoupSession )NULL;
Got context from element 'd3d11videosin018c:err:combase:RoGetActivationFactory Failed to find library for L"Windows.ApplicationModel.Core.CoreApplication" k0': gst.d3d11.device.handle=context, device=(GstD3D11Device)"\(GstD3D11Device\)\ d3d11device1", adapter= (uint)0, adapter -luid=(gint64)1008, device-id=(uint)354, vendor-id=(uint)32902, hardware=(boolean)true, description=(string)"Intel\(R\)\ HD\ Graphics\ 4000";
Redistribute latency...
Redistribute latency...
ERROR: from element /GstPlayBin:playbin0/GstPlaySink:playsink/GstBin:vbin/GstD3D11VideoSink:d3d11videosink0: Cannot determine render format
Additional debug info:
Failed to prepare d3d11window
ERROR: pipeline doesn't want to preroll.
Setting pipeline to NULL ...
Freeing pipeline ...

Even a simple mp3 doesn’t work.

What else am I doing wrong?