Mopidy: mopidyが再生されているときに他の音はありません

作成日 2015年02月03日  ·  9コメント  ·  ソース: mopidy/mopidy

これが厄介な問題かどうかはわかりません。
今日はmopidyをインストールして、音楽を演奏していました。 見れないことに気づいたYouTube動画を見たかった。 私がモピディを殺したとき、それは突然再び働いていました。
私はarchlinuxを使用しています。 この問題は、提供された.serviceファイルを使用し、systemdを使用して起動した場合にのみ発生します。 ターミナルで起動すると、正常に動作します。
私は少なくとも1人の他の人がこの問題をここに文書化していた/持っていることを知ってい
これはarchlinux(systemd)の問題ですか、それともモピッドな問題ですか?

A-docs

最も参考になるコメント

Pulseaudioでは、あるユーザーが別のユーザーのpulseaudioサーバーを介してサウンドを再生することはできません。 起動時にpulseaudioが起動しない場合、サウンドを再生しようとする最初のアプリケーションが自動的に起動します。 したがって、最初にmopidyで再生すると、pulseaudioはmopidyユーザーとして開始され、通常のユーザーとしてサウンドを再生することはできません。

複数のユーザーがサウンドを再生できるようにするためのソリューションは、次のドキュメントに記載されています。
https://wiki.archlinux.org/index.php/Music_Player_Daemon/Tips_and_tricks#Local_.28with_separate_mpd_user.29

これはmpd用なので、mpd.confに関する部分は無視してかまいません。 pulseaudioの設定が必要です。 さらに、正しいpulseaudioサーバーを使用するためにmopidyを設定する必要があります。 これを行うには、これをmopidy構成に入れます。

[audio]
output = pulsesink server=127.0.0.1

全てのコメント9件

pulseaudioを使用していますか?

はい

Pulseaudioでは、あるユーザーが別のユーザーのpulseaudioサーバーを介してサウンドを再生することはできません。 起動時にpulseaudioが起動しない場合、サウンドを再生しようとする最初のアプリケーションが自動的に起動します。 したがって、最初にmopidyで再生すると、pulseaudioはmopidyユーザーとして開始され、通常のユーザーとしてサウンドを再生することはできません。

複数のユーザーがサウンドを再生できるようにするためのソリューションは、次のドキュメントに記載されています。
https://wiki.archlinux.org/index.php/Music_Player_Daemon/Tips_and_tricks#Local_.28with_separate_mpd_user.29

これはmpd用なので、mpd.confに関する部分は無視してかまいません。 pulseaudioの設定が必要です。 さらに、正しいpulseaudioサーバーを使用するためにmopidyを設定する必要があります。 これを行うには、これをmopidy構成に入れます。

[audio]
output = pulsesink server=127.0.0.1

時間があればすぐに試してみます。
まだ質問があります。 systemdを(ユーザーとして)使用してmopidyを開始したが、コマンドラインから自分で開始した場合は問題が発生しないのはなぜですか? 同じユーザーがpulseaudioにアクセスしていませんか?
そして、それは間違いなくどこかに文書化されるべきだと思います...

別の方法で解決しました。
ローカルユーザーとして実行するためのsystemdサービスファイルがここにあります
このファイルを使用しても問題はありません。ここに追加することを検討してください。

かっこいい、これを閉じて、誰かがこれに関してドキュメントに何かを追加する必要がある場合は、再度開いてください。

私自身もこの問題を抱えていましたが、その逆です。 Mopidyは、サウンドをどのように構成しても再生できないようでした。 この解決策を見つけやすくするために、ログで見つけたエラーを投稿します

これは通常の出力からのものです:

ERROR    GStreamer error: state change failed and some element failed to post a proper error message with the reason for the failure. Debug message: gstplaysink.c(2758): gen_audio_chain (): /GstPlayBin2:playbin20/GstPlaySink:playsink

mopedyとgstreamerのデバッグに-vvvを使用すると、次のエラーが見つかりました。

WARN                    alsa pcm_hw.c:1557:snd_pcm_hw_open: alsalib error: open '/dev/snd/pcmC1D0p' failed (-2): No such file or directory
WARN                    alsa pcm_dmix.c:1022:snd_pcm_dmix_open: alsalib error: unable to open slave
WARN                    alsa gstalsasink.c:765:gst_alsasink_open:<alsasink0> error: Could not open audio device for playback.
WARN                    alsa gstalsasink.c:765:gst_alsasink_open:<alsasink0> error: Playback open error on device 'default': No such file or directory

ERROR    2015-02-22 18:26:47,673 [3135:MainThread] mopidy.audio.actor
GStreamer error: state change failed and some element failed to post a proper error message with the reason for the failure. Debug message: gstplaysink.c(2758): gen_audio_chain (): /GstPlayBin2:playbin20/GstPlaySink:playsink

これらのエラーのいくつかは、私が物事を間違った方法で構成したことに起因する可能性がありますが、うまくいけば、誰かを助けるでしょう。

どうもありがとう、trygveaa! Arch wikiでトリックを見つけましたが、パルスシンクを適切に構成できませんでした。 (確かに、それに関する包括的なドキュメントはないようです。)

@trygveaa本当に

このページは役に立ちましたか?
0 / 5 - 0 評価