Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

gstreamer: Plugins are not found #10559

Closed
fuzzy-id opened this issue Oct 23, 2015 · 10 comments
Closed

gstreamer: Plugins are not found #10559

fuzzy-id opened this issue Oct 23, 2015 · 10 comments
Labels
2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md

Comments

@fuzzy-id
Copy link
Contributor

After installing gstreamer and gst_plugins_good running gst-inspect-0.10 doesn't show the additional plugins.

Anyway, one can set GST_PLUGIN_PATH to e.g. $HOME/.nix-profile/lib/gstreamer-0.10 and the plugins are properly loaded.

@jagajaga
Copy link
Member

jagajaga commented Mar 6, 2016

Wasn't this fixed yet?

@fpletz
Copy link
Member

fpletz commented Mar 8, 2016

Doesn't work for me on master.

@vcunat
Copy link
Member

vcunat commented Mar 8, 2016

I think it's questionable whether this is desirable.

We've had a similar discussion about python packages. In the case of similar plugins there's also the possibility that the version combination might make them incompatible; upstream packages typically assume that the packaging system ensures consistency, so this may result in ugly failures.

rasendubi added a commit to rasendubi/nixpkgs that referenced this issue Jul 1, 2016
There were a couple of issue before the application run normally.

The first one is GConf error:
https://nixos.org/wiki/Solve_GConf_errors_when_running_GNOME_applications

The second one is absence of gst plugins:
NixOS#10559
@mdorman
Copy link
Contributor

mdorman commented Sep 7, 2016

It seems like we still need some solution to this; we're shipping stuff that can't work:

mdorman@aching:~$ gst-play-1.0 foo
Failed to create 'playbin' element. Check your GStreamer installation.

That's with all the plugin packages and everything installed. Add to the environment, though:

mdorman@aching:~$ GST_PLUGIN_SYSTEM_PATH_1_0=~/.nix-profile/lib/gstreamer-1.0 gst-play-1.0 foo
Press 'k' to see a list of keyboard shortcuts.
Now playing /home/mdorman/foo
ERROR Resource not found. for file:///home/mdorman/foo
ERROR debug information: gstfilesrc.c(530): gst_file_src_start (): /GstPlayBin:playbin/GstURIDecodeBin:uridecodebin0/GstFileSrc:source:
No such file "/home/mdorman/foo"
Reached end of play list.

@cx405
Copy link

cx405 commented Mar 14, 2018

I have same thing here, 17.09.

gst-play-1.0 foo
Failed to create 'playbin' element. Check your GStreamer installation.

I am also affected by this bug: #27050, which was closed but the problem still happening.

I noticed that most people with this bug have 2+ soundcards. Does it apply here? I am so frustrated that I am thinking about going gentoo..

@Dan-Theriault
Copy link

Dan-Theriault commented Apr 7, 2018

Similar thing here, 18.03.

I want to use mopidy with pulseaudio. The usual way of doing this is to put something like:

[Audio]
sink=pulsesink

in the mopidy configuration.

This gives me the following errors (from the service journal):

Apr 07 00:19:02 specere mopidy[20142]: WARNING  Found fatal audio configuration errors:
Apr 07 00:19:02 specere mopidy[20142]: WARNING    audio/sink unknown config key.

pulsesink is included in the pulseaudio gstreamer plugin, which appears in the gst-plugins-good list here.
gst-plugins-good is a buildInput of mopidy.

This behavior seems broken.

EDIT: The problem was that the config key needs to be output, not sink -- and that I need to get more sleep.

@cx405
Copy link

cx405 commented Apr 7, 2018

I want to report that my issue was not this bug, but bug in KDE plugin system #27050, which was only present in 17.09 release (not present in 18.03) and for 17.09 the community helped me craft a workaround.

It seems that the bug applies to gst-play-1.0, and it needs a wrapper to actually see the environment, as in the post of @mdorman.

@bachp
Copy link
Member

bachp commented Jan 18, 2019

I was experimenting with gst-inspect-1.0 on current master (197c393). And it only dsiplays 1 plugin:

gst-inspect-1.0
staticelements:  bin: Generic bin
staticelements:  pipeline: Pipeline object

Total count: 1 plugin, 2 features

I installed all of the following in my environment.systemPackages:

gst_all_1.gstreamer
gst_all_1.gstreamer.dev 
gst_all_1.gst-plugins-base 
gst_all_1.gst-plugins-good 
gst_all_1.gst-plugins-bad 
gst_all_1.gst-plugins-ugly 
gst_all_1.gst-libav

What I would expect is for gst-inspect-1.0 from gst_all_1.gstreamer.dev to list all the plugins.

Also setting GST_PLUGIN_SYSTEM_PATH_1_0=~/.nix-profile/lib/gstreamer-1.0 doesn't help as ~/.nix-profile/lib/gstreamer-1.0 doesn't even exist.

Is there something I'm missing?

EDIT: GST_PLUGIN_SYSTEM_PATH_1_0=/run/current-system/sw/lib/gstreamer-1.0/ works. Now I'm wondering if there is a way to make this more seamless?

EDIT2: Apperently the GST_PLUGIN_SYSTEM_PATH_1_0 is already properly set in gstreamer/core/default.nix to:

wrapProgram "$prog" --suffix GST_PLUGIN_SYSTEM_PATH : "\$(unset _tmp; for profile in \$NIX_PROFILES; do _tmp="\$profile/lib/gstreamer-1.0''$\{_tmp:+:\}\$_tmp"; done; printf "\$_tmp")"

However for some reason it gets replaced in the final file the " get replaces by ' which causes the expasion to fail.

export GST_PLUGIN_SYSTEM_PATH=$GST_PLUGIN_SYSTEM_PATH${GST_PLUGIN_SYSTEM_PATH:+':'}'$(unset _tmp; for profile in $NIX_PROFILES; do _tmp=$profile/lib/gstreamer-1.0${_tmp:+:}$_tmp; done; printf $_tmp)'

It is probably an issue with wrapProgram.

EDIT3: Issue might be caused by this: #31497

@stale
Copy link

stale bot commented Jun 3, 2020

Thank you for your contributions.

This has been automatically marked as stale because it has had no activity for 180 days.

If this is still important to you, we ask that you leave a comment below. Your comment can be as simple as "still important to me". This lets people see that at least one person still cares about this. Someone will have to do this at most twice a year if there is no other activity.

Here are suggestions that might help resolve this more quickly:

  1. Search for maintainers and people that previously touched the related code and @ mention them in a comment.
  2. Ask on the NixOS Discourse.
  3. Ask on the #nixos channel on irc.freenode.net.

@stale stale bot added the 2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md label Jun 3, 2020
@bachp
Copy link
Member

bachp commented Jun 3, 2020

I think this was fixed in #54340

@bachp bachp closed this as completed Jun 3, 2020
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
2.status: stale https://github.com/NixOS/nixpkgs/blob/master/.github/STALE-BOT.md
Projects
None yet
Development

No branches or pull requests

8 participants