yoさん
すみませんがヘルプいただければ幸甚です。
ご教授いただきましたArchphileでUPnP/DLNAベースのDual PC構成まで進むことができました。音もかなり良く感謝です。
なお、ご教授いただきたいのはこのarchphileでlighttpdあるいはnginxを動かす方法です。MPADでのカバーアート取得のためHTTP対応させたいのですが、インストールしてもどちらもちゃんと起動できず、です。いろいろとやってはみましたがスタックしてしまいました。Archiphileでは何か制限があるのでしょうか?
Archphileにはympdが仕込まれていてPort80をつかってしまっているので、lighttpdなどを別のPortで動かせば解決しそう思えて実験中なのですが、先に進めない状況です。
nginxのケースではsytempctl start nginxでエラーとなり、systemctl status nginx.serviceで状況確認すると「エラーコードでExitしたよ」という感じです。lighttpd -t -f lighttpd.confではモジュールが無いよって感じです、とほほ。
なお、既にご存知かもしれませんが、yaMPCというMPDクライアントちょっと期待してしまいます。
https://www.openaudiolab.com/yampc/coverart/jp/" target="_blank">https://www.openaudiolab.com/yampc/coverart/jp/
ゴンザエモンさん
archphileも、lighttpdも現用はしていないので、はなはだ頼りない相談相手となります(^^;;;。ympdが動いている状態でlighttpdも動かし、カーバーアートのjpgを取りにいくということが出来るのでしょうか。ympdで表示されない原因を調べることが先のような気がするのですが。
21時追記
ゴンザエモンさんのサイトとリンク先を読んで、ようやく状況を理解しました。
> nginxのケースではsytempctl start nginxでエラーとなり、systemctl status nginx.serviceで状況確認すると「エラーコードでExitしたよ」という感じです。lighttpd -t -f lighttpd.confではモジュールが無いよって感じです、とほほ。
yaMPCを起動しようとしても、上記の問題で、先に進めないということですね。
であれば、nginxであればエラーコードの詳細が、lighttpdであれば無いモジュールの詳細が分かれば、何とかならないでしょうか。
yoさん
こんばんは。早速のご丁寧なレス深謝です。
ympdがJPEG画像の要求を正しくハンドリングしれくれないことまでは掴んでいたのですが、yaMPCのカバーアートに関する情報にてnginxあるいはlighttpdでポート番号を変えるという対応はなるほどなと合点がいきました。(ympd自体の仕様なのか設定で回避できるのはなお不明ですが)
これまでHTTPサービス自体がうまく動かない、ということは初めてでしたので、Arch Linuxの大家であるyoさんにおすがりしてしまいました、、、もう少し状況固めを進めてみますね。
いずれにしてもありがとうございました。
ゴンザエモンさん
ご存じだと思いますが、Arch Linux はローリングアップデートという方式をとっており、最新版を常に更新し続けるという形でメンテされています。従って、対応するパッケージもこのローリングアップデートに対応して、どんどん最新版に更新されているはずです。多分、問題はこのあたりにあるのではないかと思います。
つまり、Archphileはローリングアップデートに対応するような頻繁なアップデートは出来ませんから、当然、ある時点の版を対象に作成されています。パッケージもその時点のものが採用されることになります。従って、既存のパッケージを最新版にする、新しいパッケージを導入するといった場合、Arch Linuxとの不整合が発生する可能性があります。もちろん、この問題は他のディストリビューションでも発生する可能性はあるのですが、特にArch Linux場合、この不整合が発生しやすい筈です。
この問題が発生した場合、解決策は単純でビルドし直すです。
以上は一般論で、ゴンザエモンさんのところで発生している問題がこの件に関連しているかどうかは分かりませんが、ご参考まで。
御健闘をお祈りいたします。
yoさん、
確かではありませんがおそらく問題の根本はyoさんご指摘のところにあるように思います。
pacman -Syu はエラーになりますし、個別にapache、webfsなどもインストールしてみましたが全滅でした。(ympdはdisableで)
ちょっと悔しくはあるのですが現状の当方のスキルでは無理なようなので、本件一旦ギブアップしちゃいます。UPnP/DLNA環境であればMPaDは使いませんし、、、
ありがとうございました。
横から失礼します。
ympdはカバーアートの配信に対応していませんので、ソースの修正が必要です。
カバーアートの配信だけが目的であればArchphileのympdをsymphonic-mpdのympdに差し替えて貰えば実現可能かと思います。
待ち受けポート(例えばTCP80)にアクセスがあった時にサービスを起動し、セッションが切れたらサービスを停止する仕様のため、カバーアート取得のレスポンスはやや遅いかもしれません。
systemdの設定は、ソケットアクティベーション用に修正していただく必要があるかと思います。参考までにsmpdの設定を転載します。
(1) /lib/systemd/system/ympd.service
[Unit]
Description=ympd server daemon
Requires=network.target local-fs.target
After=network-online.target mpd.service
[Service]
EnvironmentFile=/etc/environment <-この行は不要
Type=simple
ExecStart=/usr/local/bin/ympd -h /run/mpd/socket --webport 80 -i 200 --documentroot /var/lib/mpd/music <-この行は修正が必要
User=root
CPUSchedulingPolicy=other
CPUAffinity=3
[Install]
WantedBy=multi-user.target
(2) /lib/systemd/system/ympd.socket
[Socket]
ListenStream=80
Backlog=5
KeepAlive=true
PassCredentials=true
[Install]
WantedBy=sockets.target
パパリウスさん、
あら、、、SMPD大家のご出陣、大変恐縮です。
Archphileのケースではympdの他、mympdというWeb UIベースでカバーアートの表示できるものも試してみました。ympd、mympdどちらもMPaDなどが要求するやり方ではJPG画像の配信はできないようですね。(詳細が判っている訳ではないですが)
このため、他のHTTPサーバーを動かして、デフォルトのポート番号を変更し、MPaD側からはそのポート番号で配信要求を出すように画策してみました。が、ArhcphileではHTTPサーバー
のインストール、稼働自体が何故かうまく行かず、でした。
Arhchphileでのこの状況にスティックしていても仕方ありませんし、スキル習得を兼ねてArchphileで段階を踏んでいるつもりですので、この先はSMPDのお世話になりたいと考えています。
UPnP/DLNA環境ならMPaDは不要なのですが、単体での操作ならやはりMPaDを使いたく、ここはクリアーしておきたいポイントでもあります。冒頭言及させていただきましたyaMPCがMPoD、MPaDの復刻版となりそうなので、操作性が良ければWeb UIから戻ってくる人もいるかもしれません。
皆様
Archphile環境でカバーアート取得できるようになりましたので、解決報告をいたします。
ArchphileでHTTPサーバーを稼働させることは当方のスキル不足でどうやってもできず断念しました。(いろいろやってArchphileをクラッシュさせただけ)
このため、回避方法としては音源ファイルを置いてあるサーバーPCにHTTPサーバーを立て、直接そちらからカバーアート画像をゲットする方法といたしました。この方法だとArchphileが稼働しているPCの負荷低減にもつながりますし、ympdやmympdなどのWeb UIとのバッティングを気にしなくて済むメリットがありました。
当方の音源を置いてあるPCはWindowsベースですので、IISを起動させて、デフォルトルートと物理パスの指定でカバーアートを取得できるようになりました。
取り急ぎ御礼と報告まで。レスいただいた皆さんありがとうございました。