みみず工房掲示板
[リストに戻る] [ホームに戻る] [新規投稿] [thread view] [tree view] [留意事項] [ワード検索] [過去ログ] [管理用]
buildrootでupnpレンダラー(続) - inthedark 2017/02/14(Tue) 09:09 No.5678
 ├ Re: buildrootでupnpレンダラー(続) - yo 2017/02/16(Thu) 08:05 No.5682
 ├ Re: buildrootでupnpレンダラー(続) - yo 2017/02/18(Sat) 09:39 No.5684
 ├ Re: buildrootでupnpレンダラー(続) - yo 2017/02/19(Sun) 08:48 No.5685
 ├ Re: buildrootでupnpレンダラー(続) - kaamura 2017/02/20(Mon) 15:33 No.5686
 ├ Re: buildrootでupnpレンダラー(続) - yo 2017/02/20(Mon) 18:58 No.5687
 ├ Re: buildrootでupnpレンダラー(続) - yo 2017/02/21(Tue) 19:53 No.5688
 ├ Re: buildrootでupnpレンダラー(続) - kaamura 2017/02/22(Wed) 00:03 No.5689
 ├ Re: buildrootでupnpレンダラー(続) - yo 2017/02/22(Wed) 08:07 No.5690
 ├ Re: buildrootでupnpレンダラー(続) - donuts.shop73 2017/02/25(Sat) 10:02 No.5691
 └ Re: buildrootでupnpレンダラー(続) - kaamura 2017/02/26(Sun) 10:48 No.5692

buildrootでupnpレンダラー(続) 投稿者:inthedark 投稿日:2017/02/14(Tue) 09:09 No.5678 home
ご存分に動作報告などなさってください。

inthedark

Re: buildrootでupnpレンダラー(続) 投稿者:yo 投稿日:2017/02/16(Thu) 08:05 No.5682 home
donutsさんのシステムは minidlna を使ってsdカードからの再生を実現しています。
面白いアイディアだな思い、顰みに倣ってみました。楽をするため スクラッチではなく、buildrootを使います。

簡単でしたね。menuconfigで選んで(Target packages -> Networking applications -> にあります)、makeするだけ。
問題はこの後のsdカードに音楽データをおいたディレクトリ(/music)をつくり、それをminidlnaに音楽用データベースとして認識させる方法です。
donutsさんは、lightmpd.confを使い、sdカードを音楽用データベースとしてマウントするというスマートな方法をとっていますが、こちらはそんな腕はないので、普通(?)に /mntにmountして、minidlna.confでmedia_dir=A,/mnt/musicとして認識させるという方法をとりました。
マウントするタイミングとminidlnaの立ち上げのタイミングを合わせるためS60をS98に変更するとか、荒っぽい方法を乱発させて、なんとかクリア。
上手くいきました。

nas再生より音が良いとは思いませんが、きれいな音でなります。音量がやや大きめになる(気がする)のは不思議ですね。再生中断などの問題は発生しません。

Re: buildrootでupnpレンダラー(続) 投稿者:yo 投稿日:2017/02/18(Sat) 09:39 No.5684 home
donutsさんのUPnP版のplayerモードを試してみました。別のスレッドに書きましたが、これはバックエンド側を mpd + polipo という構成で動作する方式のようです。

フロント側には apu2c4 lightmpd upnpgw を使用。confファイルは lightmpd.conf-upnpgwを使いました。

変更部分は
[network]
address=192.168.0.30
だけです。
player部分はディフォルトのままです。
[network:player]
interface=eth1
address=10.0.0.1
netmask=255.255.255.252

これに合わせて、バックエンド側は lightmpd.conf.playerを以下の通り変更しました。
[network]
# interface=eth0
# address=192.168.0.21
# netmask=255.255.255.0
# gateway=192.168.0.0
# nameserver=192.168.0.0
# domain=mydomain.jp
interface=eth0
address=10.0.0.2
netmask=255.255.255.252
gateway=10.0.0.1
nameserver=192.168.0.0
domain=mydomain.jp

ネットワークの接続は apu は eth0 をインタネット側に、eth1を対抗接続(bbg)側に繋ぎます。bbg は同じクロスケーブルの反対側を繋ぎます。

pingで接続を確認。コントロールポイント(Android UPnPlay)でUplightMpdレンダラーの存在を確認。linux版のMinimServerを使い、再生も問題なく行えました。
音はいわずもがなですが、素晴らしいです。これまでのザベストですね。音の響きの空間がリアルに感じられます。

topでフロント側の動作状況を観察しました。当たり前ですが、polipoが動いていますね。
Mem: 137480K used, 3890972K free, 896K shrd, 17328K buff, 17276K cached
CPU: 0.0% usr 0.0% sys 0.0% nic 99.9% idle 0.0% io 0.0% irq 0.0% sirq
Load average: 0.02 0.01 0.00 2/127 296
PID PPID USER STAT VSZ %VSZ CPU %CPU COMMAND
276 1 upmpdcli S 766m 19.4 2 0.0 /usr/bin/upmpdcli -D -c /etc/upmpdcli.conf
293 288 root R 6856 0.1 3 0.0 top
254 1 root S 7232 0.1 0 0.0 /usr/bin/polipo -c /var/lightMPD/etc/polipo.conf pidF
VSZの値からみて、実質的には動いてはいないようですが気になるので、止めてみました。
[polipo]^M
# enable=yes^M
enable=no^M
これで再起動。フロント側からpolipoを排除しました。
何となく音が良くなったような気がしますが、気のせいでしょうね(^^;;;。

まあ、polipoをmpd側に置くのは正解だと思います。

Re: buildrootでupnpレンダラー(続) 投稿者:yo 投稿日:2017/02/19(Sun) 08:48 No.5685 home
もう一つ、donutsさんのシステムからパクッてみました。upmpdcliのアイコンです。通常、このアイコンは操作するコントロールポイント側にレンダラー名と一緒に表示されます。

このアイコンは upmpdcli.conf の iconpath = で指定出来るので、普通のシステムであれば、画像を用意して、そこを指定すれば、okです。しかし、lightmpdの場合、rootfsがリードオンリなので、「そうは問屋が卸さない」のですよね。

donutsさんのシステムでどうやっているか調べてみました。アイコンはsdカードの/lightmpd/iconに置いてあって、これを /var/lightmpd/binにコピーして、iconpath = /var/lightmpd/bin/beagle.png として、表示させているようです。
問題はどこで/var/lightmpd/binにコピーしているか。/etc/init.d/ にはそれらしき痕跡は見当たらないので、多分、syssetup.scm のどこかでやっているのでしょう。

その場所を探して、移植するというのが正しい作法だとは知っているが、面倒。例によって、荒っぽい方法を乱発させることにしました。といっても大したことはなくて、myscript.sh に cpを一行追加するだけですみました。
アイコンはboticの作者mieroさんに敬意を表し、チェコ国旗としました。

Re: buildrootでupnpレンダラー(続) 投稿者:kaamura 投稿日:2017/02/20(Mon) 15:33 No.5686 home
こちらの掲示板に関わるみなさん、初めまして。
kaamuraと申します。

donuts.shop73さん

素晴らしいイメージの提供をありがとうございました。
インストールしスタンドアローンにて聴いております。
素晴らしい音ですね。

NAS4Free+MiniDLNA 1.1.5
BBB
B2R-5100
RBD-02+ HG
LINN Kazoo

のような環境ですが、自分の場合はm4aやmp3を再生することができませんでした。
mpd.confのdecoders pluginsをコメントアウトしたくらいではどうにもならないことは、なんとなく理解しております。
まずは、MPDのビルドから勉強していこうと思っております。

今後ともよろしくお願いします。

Re: buildrootでupnpレンダラー(続) 投稿者:yo 投稿日:2017/02/20(Mon) 18:58 No.5687 home
donutsさんのUPnP版のplayerモードを buildroot を使って、やってみました。
正攻法は、donutsさんがやっているように、lightmpd.conf にパラメータを置いて、syssetup.scmでpolipo.confを生成するというやり方なのですが、移植は楽ではないです。

というわけで、例によって、超手抜き、荒っぽい方法をとることにしました。
要するに、mpdとpolipoだけのuInitrdを作り、conf(lightmpd、mpd、polipo)をdonutsさんのシステムに合わせればいいだろうと考えた。正解でしたね。あっさり、音出し出来ました。

ちょっと躓いたのは mpdのビルドです。
make distcleanでクリアしたのですが、これは output/下の出力保存ファイルをクリアするだけですね。package/配下の Config.inとか *.mk、*.hashなどはそのまま残ります。何をいっているかというと、mpdでrtoptの指定とか、パッチとか、バージョンの指定はそのまま残るのですよね。
「そういうものなのか、とりあえず楽できそうね」と考え、menuconfigでヘルプを参考にしながら、dsd rtopt ffmpeg flac mad vorbis curl alsa tcp_sockets UPnP を選んで、makeしてみました。
作成した uInitrd-br-upnp-adapter を追加して、起動してみましたが、mpdが立ち上がらない。「libopus.so.0がないよ」というエラーになるのですよね。「libopusなんて知らないよ」と思ったがmenuをみたらopusというのがある。これをオンにして、やり直したら、音が出ました。

しかし、今から考えると、この時の正しい作法は「mpdを入れ換える」であったようです。opusというのは音声圧縮の方法のようですが、使っていないので、以前のmpdをビルドする時、間違えて組み込んでしまったのでしょう。従って、そんなものに合わせるのでなく、正しくビルドされたmpdを使うことが正解のはず。
ただ、「覆水盆に帰らず」。いっぺんlibopusを組み込んでしまうと、取り外す方法は make distclean だけなようですよね。まるで足を洗えないヤクザみたいな状態になります(^^;;;。「シャバに戻るには、指を詰めるしかない」という感じですね。
まあ、面倒なので、そのままにしてありますが、ちょっと失敗だったなぁ。

Re: buildrootでupnpレンダラー(続) 投稿者:yo 投稿日:2017/02/21(Tue) 19:53 No.5688 home
kaamuraさん

telenetで入り、確認してみました。
------------------------
# mpd -V
Music Player Daemon 0.20.4

Copyright (C) 2003-2007 Warren Dukes <warren.dukes@gmail.com>
Copyright 2008-2017 Max Kellermann <max.kellermann@gmail.com>
This is free software; see the source for copying conditions. There is NO
warranty; not even MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Database plugins:
simple proxy upnp

Storage plugins:
local curl

Neighbor plugins:
upnp

Decoders plugins:
[oggflac] ogg oga
[flac] flac
[audiofile] wav au aiff aif
[dsdiff] dff
[dsf] dsf
[pcm]
------------------------
となりますので、donutsさんのシステムは mp3、mp4再生に対応していないようですね。

ちなみに、直前のメッセージに書いた僕のシステムは
------------------------
# mpd -V
Music Player Daemon 0.20.4

Copyright (C) 2003-2007 Warren Dukes <warren.dukes@gmail.com>
Copyright 2008-2017 Max Kellermann <max.kellermann@gmail.com>
This is free software; see the source for copying conditions. There is NO
warranty; not even MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

Database plugins:
simple proxy upnp

Storage plugins:
local curl

Decoders plugins:
[mad] mp3 mp2
[vorbis] ogg oga
[oggflac] ogg oga
[flac] flac
[opus] opus ogg oga
[dsdiff] dff
[dsf] dsf
[ffmpeg] 16sv 3g2 3gp 4xm 8svx aa3 aac ac3 afc aif aifc aiff al alaw amr anim apc ape asf atrac au aud avi avm2 avs bap bfi c93 cak cin cmv cpk daud dct divx dts dv dvd dxa eac3 film flac flc fli fll flx flv g726 gsm gxf iss m1v m2v m2t m2ts m4a m4b m4v mad mj2 mjpeg mjpg mka mkv mlp mm mmf mov mp+ mp1 mp2 mp3 mp4 mpc mpeg mpg mpga mpp mpu mve mvi mxf nc nsv nut nuv oga ogm ogv ogx oma ogg omg opus psp pva qcp qt r3d ra ram rl2 rm rmvb roq rpl rvc shn smk snd sol son spx str swf tak tgi tgq tgv thp ts tsp tta xa xvid uv uv2 vb vid vob voc vp6 vmd wav webm wma wmv wsaud wsvga wv wve
[pcm]
------------------------
となりますので、これは対応しているのですかね。
「donutsさんのやつがあるからいいか」と思っていましたが、やっぱり公開しますかね。暫くお待ちください。

Re: buildrootでupnpレンダラー(続) 投稿者:kaamura 投稿日:2017/02/22(Wed) 00:03 No.5689 home
yoさん

お返事ありがとうございます。
donutsさんのシステムにおいて、SDカードのmusicフォルダにmp3やm4aファイルをローカルに配置した場合、LINN Kazooでは認識されておりません。flacファイルは認識されております。
こちらについても、MPDのビルド具合が関係しているのでしょうか?
とても興味深いです。

donutsさんだけでなく、yoさんのシステムをも公開していただけるのであれば、こんなにありがたいことはありません。
心待ちにしております。

Re: buildrootでupnpレンダラー(続) 投稿者:yo 投稿日:2017/02/22(Wed) 08:07 No.5690 home
よく分かりませんが、UPnPの世界では、mpd -V で表示されるような情報がコントロールポイントとサーバの間で共有されていて、表示されないということですかね。

Re: buildrootでupnpレンダラー(続) 投稿者:donuts.shop73 投稿日:2017/02/25(Sat) 10:02 No.5691
kaamuraさん yoさん

MiniDLNAに手を入れ、以下の拡張子のみ収集するようにしています。
 .flac
 .fla
 .flc
 .wav
 .dsf
 .dff

Re: buildrootでupnpレンダラー(続) 投稿者:kaamura 投稿日:2017/02/26(Sun) 10:48 No.5692 home
donuts.shop73さん

お返事ありがとうございます。
そういう事だったんですね。
自身の勉強不足を痛感しました。
改めてbuildrootに取り組んでみたいと思います。


- 返信フォーム

Name
E-Mail
Title
Message
WebSite
password (英数字で8文字以内, under 8 alphanumeric characters to delete or correct message)
submit key (投稿時には 投稿キー(文字) を入力してください, please enter characters left)
掲示板用にデータをアップロード出来ます。ログインするにはここをクリック。ヘルプを見るにはここをクリック。
- 記事修正&削除フォーム
処理 No. 暗証キー