GStreamer missing plugins on Windows

Viewed 1517

I have installed the latest version of gstreamer (v1.16.2) on a Windows 10 with a full installation and testing simple examples I have checked that several common elements are missing.

With a command like:

gst-launch-1.0 videotestsrc ! capsfilter caps=video/x-raw,format=GRAY8 ! videoconvert ! autovideosink

I receive this log:

GST_INIT gst.c:810:init_post: initialized GStreamer successfully
GST_PIPELINE gstparse.c:337:gst_parse_launch_full: parsing pipeline description 'videotestsrc ! capsfilter caps=video/x-raw,format=GRAY8 ! videoconvert ! autovideosink '
GST_ELEMENT_FACTORY gstelementfactory.c:462:gst_element_factory_make: no such element factory "videotestsrc"!
GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "videotestsrc"
GST_ELEMENT_FACTORY gstelementfactory.c:462:gst_element_factory_make: no such element factory "capsfilter"!
GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "capsfilter"
GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@0000000000000000]
GST_ELEMENT_FACTORY gstelementfactory.c:462:gst_element_factory_make: no such element factory "videoconvert"!
GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "videoconvert"
GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@0000000000000000]
GST_ELEMENT_FACTORY stelementfactory.c:462:gst_element_factory_make: no such element factory "autovideosink"!
GST_PIPELINE grammar.y:816:priv_gst_parse_yyparse: no element "autovideosink"
GST_PIPELINE grammar.y:901:priv_gst_parse_yyparse: link has no source [sink=@0000000000000000]

I also have checked that the installer creates a new environment variable GSTREAMER_1_0_ROOT_X86_64 pointing to C:\gstreamer\1.0\x86_64 and it also adds the bin folder to the Path.

Does the MSI installer need any additional step to register its plugins on a Windows Machine ?

1 Answers

Finally I found the issue and it's solution. At least on Windows... Gstreamer generates a bin file with the list of registered plugins. This file is stored in this path

C:\Users\<name_of_user>\AppData\Local\Microsoft\Windows\INetCache\gstreamer-1.0\registry.x86_64.bin

It seems that there was an issue in the first launch and the list of plugins was broken. If you delete this bin file and launch any command over gst-launch-1.0 it checks again all its own plugins and it refreshes that bin file.

Related