フォーラム › TuneBrowser › コントローラ機能のリクエスト
-
投稿者投稿
-
2020-01-03 05:17 #7522dari88参加者
Tunebrowser + USB DAC + マランツのネットワークレシーバーM-CR612 で音楽を楽しんでいます。
この構成ですと DAC –> レシーバーのADC を経由するので途中でアナログを通ります。楽曲データをレシーバーに直接渡せばD級アンプの直前までフルデジタル処理処理されるので理想的かと思っています。コントローラーアプリをいろいろ試してみましたがどれも中途半端でTunebrowserの操作感と楽しさには到底及びません。Tunebrowserがサーバー兼コントローラーとして機能してネットワークレシーバーに指令できると最高ではないでしょうか。
ご検討をお願いいたします。
2020-01-03 22:34 #7524Tikiキーマスターこんばんわ。
TuneBrowserから他のUPnP Rendererに対して再生を制御したいというご要望は以前からいただいていて (たとえばこちら)、いまも開発は進めています。
1曲再生するというだけであれば大きな問題はないのですが、TuneBrowserの本来の再生処理との統合、曲の切替り時の処理、再生に伴う付帯機能の整合 (Last.fmのScrobbleや再生履歴の管理など…)、あるいは他のコントローラーの操作との競合など、いまはまだ課題も多いです。
また、プロトコルアナライザーなどで調べているかぎりでは、オーディオ機器メーカー純正のコントローラーはUPnPやDLNAではなく機器メーカーあるいはチップメーカー独自のプロトコルで制御しているケースが多いようで、汎用のUPnPで制御しているかぎり、残念ながらそうした純正コントローラーの操作性にはどうしても及ばないところは出てきそうです。そのため、使いものになる動作にできるかどうかの確証もないのですが、気長にお持ちいただければと思います。
2020-02-24 10:40 #7949dari88参加者暇なのでちょっと調べてみました。
以下、TuneBrowseサーバーをTBS、Foover2000サーバーをF2Sと略します。
HEOSアプリ(最近のMarantz/Denonの標準アプリ)
・TBS、F2Sの両方に対応
・サーバーの検出が遅い
・M-CR612のキューをフルにコントロールしている
すぐに再生
今すぐ再生してキューを入れ替え
次に再生
キューの最後に追加BubbleUpnpアプリ
・TBS、F2Sの両方に対応
・M-CR612のキューをコントロールしている
Play
Play next
Play all from her
Enqueue
Enqueue all from her
Enqueue and play
Add to Saved PlaylistHi-Fi Castアプリ
・F2Sに対応。TBSを選択すると意味のあるエラーメッセージを出す。
(Error reading SOAP response message.)
・一曲づつ指令している。M-CR612側にキューは作られない。
・ギャップレス再生ではない。次の曲に変わるときにノイズが出る仰るとおり汎用のUPnPで制御するのではギャップレス再生が出来なかったり厳しそうですね。
しかし、純正ではないBubbleUpnpがキューをコントロールしているのは感心しました。
このあたりはメーカーごと、機種(世代)ごとに制御の方式が違ったり、できることが違ったりするのでしょう。
コントローラー機能を開発するとしても対応する範囲について割り切りが必要だと思います。2020-02-24 10:45 #7950dari88参加者「ネットワークオーディオの本質」と題した2016年の言の葉の穴の逆木一さんの記事は実に的を射ていると思います。
曰く、
・『コントロール』こそがネットワークオーディオの本質である。
・ネットワークオーディオにおいて、ネットワークという要素は空間に制約されないコントロールを実現するためにある。
・この時、大切なのは体験であって、音質ではない。
・サーバーやプレーヤー(PCを含む)の設置場所という制約から解放された状態で、自身のライブラリを縦横無尽に駆け巡り、聴きたい曲を自由自在に聴く。
・視聴位置の椅子に身を預けたまま、あるいはその辺に寝っ転がりながら、音楽再生のあらゆる操作を手元の端末から行う。
・音楽を聴く場所に「居ながらにして」、音楽再生のあらゆる操作が可能になるというのが肝になる。この記事が書かれたのが2016年ですが、未だにこの理想は実現していないと思います。
音楽再生に関わるあらゆる操作を手元で行うにはそもそもスマホやタブレットは不向きで、PCの能力が必要でしょう。
TuneBrowserはあと一歩?でこの理想を実現できるはずです。
その時こそネットワークオーディオがついに完成するのだと思います。2020-02-24 11:14 #7952Tikiキーマスターこんにちわ。
情報とエールをありがとうございます。優先度は下がりがちですが、開発はつづけています。
ご紹介された逆木氏もどこかで述べられていたと思いますが、UPnP/DLNAによる再生は、連続再生という観点で、本格的な音楽再生には不向きだと感じています。Player側にキューを持たせることでその点を改善したのがOpenHomeで、TuneBrowserを対応させるときにも、このやり方なら、という思いがありました (ちなみに、TuneBrowserの内部は、ざっくりというと、再生を行うPlayerと、曲順制御を行うSequencerと、デコードを行うDecoderの3パートで構成されています)。
UPnPで制御するには、おっしゃる通り「コントローラー機能を開発するとしても対応する範囲について割り切りが必要」なのでしょうね。その点をご理解いただけると、すこし気が楽になります(^^;。
2020-02-25 07:42 #7957dari88参加者コントローラーアプリがM-CR612にどのような指示をしているのか興味が湧いてきたので以下の方法でちょっと調べてみました。
・アンドロイドエミュレータとしてNoxPlayerを使用。Android7、ネットワークはブリッジモード。
・NoxPlayerにHEOSとBubbleUpnpアプリをインストール。
・ネットワークプロトコルアナライザーとしてWiresharkをインストール。
・メディアサーバーにはTuneBrowserを使用。
・PC 192.168.11.11、NoxPlayer 192.168.11.103、M-CR612 192.168.11.32で、HEOSアプリである曲を「すぐに再生」した時に送信された内容の一部は以下のようでした。
“urn:schemas-upnp-org:metadata-1-0/DIDL-Lite/”
xmlns:dc=”http://purl.org/dc/elements/1.1/”
xmlns:upnp=”urn:schemas-upnp-org:metadata-1-0/upnp/”
xmlns:dlna=”urn:schemas-dlna-org:metadata-1-0/”
xmlns:aios_media_server=”urn:schemas-denon-com:media-server:metadata-1-0:DIDL-Lite”>
<desc id=”todo” nameSpace=”dc”>
<dc:title>Sonata C Min Adagio</dc:title>
</desc>
<item id=”PTGV:0000019BE37A72F0.00001.0000019BCF84B050″ parentID=”ALBM:0000019BE37A72F0.00001″ restricted=”1″>
<dc:title>けんかをやめて</dc:title>
<upnp:longDescription>1127831230</upnp:longDescription>
<upnp:class>object.item.audioItem.musicTrack</upnp:class>
<dc:creator>竹内まりや</dc:creator>
<upnp:genre>JPop</upnp:genre>
<upnp:album>Impressions</upnp:album>
<upnp:albumArtURI>http://192.168.11.11:10800/Image/9162b775-27d4-4d71-87fe154c6f5036bc.jpg</upnp:albumArtURI>
<res protocolInfo=”http-get:*:audio/mp3:*” duration=”0:04:33″>http://192.168.11.11:10800/TuneID/00009288.mp3</res>
<desc id=”serverID” nameSpace=”urn:schemas-denon-com:metadata/” xmlns:aios=”urn:schemas-denon-com:metadata/”>3997942730</desc>
<desc id=”username” nameSpace=”urn:schemas-denon-com:metadata/” xmlns:aios=”urn:schemas-denon-com:metadata/”></desc>
<desc id=”userAuth” nameSpace=”urn:schemas-denon-com:metadata/” xmlns:aios=”urn:schemas-denon-com:metadata/”></desc>
</item>
<item id=”PTGV:0000019BE37A72F0.00001.0000019BCF84B9B0″ parentID=”ALBM:0000019BE37A72F0.00001″ restricted=”1″>
<dc:title>明日の私</dc:title>
<upnp:longDescription>1737729719</upnp:longDescription>
<upnp:class>object.item.audioItem.musicTrack</upnp:class>
<dc:creator>竹内まりや</dc:creator>
<upnp:genre>JPop</upnp:genre>
<upnp:album>Impressions</upnp:album>
<upnp:albumArtURI>http://192.168.11.11:10800/Image/b9f119f4-23e9-4ac4-ba08b243a50229ee.jpg</upnp:albumArtURI>
<res protocolInfo=”http-get:*:audio/mp3:*” duration=”0:04:49″>http://192.168.11.11:10800/TuneID/00009289.mp3</res>
<desc id=”serverID” nameSpace=”urn:schemas-denon-com:metadata/” xmlns:aios=”urn:schemas-denon-com:metadata/”>3997942730</desc>
<desc id=”username” nameSpace=”urn:schemas-denon-com:metadata/” xmlns:aios=”urn:schemas-denon-com:metadata/”></desc>
<desc id=”userAuth” nameSpace=”urn:schemas-denon-com:metadata/” xmlns:aios=”urn:schemas-denon-com:metadata/”></desc>
</item>
</DIDL-Lite>参考になるかどうか分かりませんが、必要でしたら各種命令実行時の3ノード間の交信全体を保存したWiresharkデータをメールで送ります。お気軽に申し付けください。
2020-02-25 14:35 #7958dari88参加者その後の調査で、BubbleUpnpがM-CR612のキューをコントロールしているというのは小生の錯覚であったことが判明しました。訂正してお詫び申し上げます。
2020-02-25 21:53 #7959Tikiキーマスターこんばんわ。
追加情報と別途お知らせいただいたログ情報も含めまして、ありがとうございます。まだ詳細は確認できていませんが、TuneBrowserでやれそうなことは、大きくは外していないような気がしてきました。
ありがとうございました。
2020-02-26 02:45 #7962dari88参加者そうですか、希望の持てるご回答ありがとうございます。
追加の調査が必要でしたらお気軽にお知らせください。また、もしテスト用のコードを書かれた場合は試験のお手伝いをさせて頂きたく思います。よろしくお願いいたします。2020-02-26 23:44 #7963Tikiキーマスターありがとうございます。
なにかのときにはご協力をお願いすることもあるかと思います。そのときにはどうぞよろしくお願いします。
2022-07-04 20:32 #12265 -
投稿者投稿
- トピック「コントローラ機能のリクエスト」には新しい返信をつけることはできません。