2021年6月26日土曜日

OrangePiLiteでI2S Volumio

OrangePi liteはraspberryPiよりも安価に手に入ります。
Alliexpressで買うと送料込みでも2千円程度です。

→・・・・・いま、値段をみたら・・・・軒並み3千円越えでした。安さの優位がなくなるとわざわざこれを使う意味がなくなってしまいます。

購入するまではraspberryPiとGPIOピンコンパチだと思っていました。
実際に買ってみると、OSはラズビアンは使えないし、当然raspberryPi用のVolumioなどの音楽に特化したOSは動きません。

ということはI2S接続でのDAC利用は難しいということになってしまいました。
それで、やむなくI2SにはUSBDDCをつなぎ、USBDACとして利用してきました。

最近になって、やっぱりそれでは面白くないということで、色々調べなおしてみると
OrangePiLiteのGPIOの仕様がみつかりました。


これをみると、I2Sで使うDATA,LRCK,BLCKなどの記載が見えます。
ということは、I2Sもできそうな気になってきました。
とりあえずArmbianでRoon BridgeをインストールしたものでI2S接続をしてみます。

当然ながら!?Roonの設定画面には認識されてきません。USBDACでは自動でデバイスが表示されるんですけどねぇ。。。
やっぱり、I2Sドライバがないと動かないみたいですねぇ^^;

諦めかけつつ、ネットを徘徊していたら。。。。。
なんと、OrangePi用のVolumioを配布しているサイトがあるではないですか!!
これなら、もしかして、うまくいくかもしれません。

Volumio2のリンク

http://www.orangepi.org/orangepibbsen/forum.php?mod=viewthread&tid=4747

ここの中の一番新しい(2021-1-19)のイメージファイルを使った。
Volumio2.861-2021-01-17-orangepilite.7z

解凍するとimgファイルができるので、それをrufus-3.14でSDファイルに書き込む。

あとは型通りにVolumioのセッティングを行う。

すると、プレイバックオプションにI2S Masterの文字が・・・・

raspberryPiのVolumioのようにボードごとに選べるようにはなっていません。

なんだか、なぁ。ほんとうはRPiDACとかあるとよかったのですが、、、
I2S Masterひとつだけです・・・・・

まぁ気を取り直して駄目元でDACとつないでみます。
繋ぐのは、ES9018k2mのお安いDACボードです。


とりあえずの仮設置です。VolumioのプラグインでRoon Bridgeをインストールしておきます。


RoonコントロールにしているPCでRoonの設定画面・Audioでみてみると


おぉ、ちゃんと認識されている。


再生すると・・・・・
ちゃんと音が再生されました)^o^(

いゃぁ、すごいです。これで、お安いOrangePiでもRoon対応の音楽ブレーヤーにできる。

ただし、Volumioを使って普通に再生するときは
ESSのDACを使う場合この設定が必須になります。
最近のRaspberryPi版のVolumioではRPiDACのドライバがあるのでそれにしておけば問題なかったのですが、OrangePiのものにはありません。なのでBitDepthを24あるいは32にしてResamplingしないとノイズの嵐となります・・・・・


とりあえず、コンパクトにまとめるために、中2階立てにしました。

USBDDCがついたままですが、まぁI2Sの切り替えボードを使えばUSBとI2S接続OrangePiLiteとの切り替えができるようになりそうです。

ケーシングを本気で考えようかな・・・・・

追記
OrangePi用のVolumioディストリのリンクはこちらにもあった。こっちのほうが新しいバージョンのものがある。
https://disk.yandex.ru/d/T2f2RFbSet5OUw

追記
Volumioの再生レート確認:hw_params
$cat /proc/asound/card0/pcm0p/sub0/hw_params

2021年6月6日日曜日

debian + Roon Server をdebianの最小インストールで構成(その後)

debian + Roon Server RoonCore作成の概要

  • debian net install ISO からの最小インストール
  • SSHでクライアントから接続
  • Roon Serverを動かすための依存ファイルをインストール
    $su -
    apt install ffmpeg cifs-utils curl
  • Roon Server本体のインストール
    curl -O http://download.roonlabs.com/builds/roonserver-installer-linuxx64.sh
    chmod +x roonserver-installer-linuxx64.sh
    ./roonserver-installer-linuxx64.sh
  • クライアントのRoonControlアプリからRoonCoreの設定
  • 設定:バックアップからファイルを戻す
  • 管理時にないと不便なコマンド、デーモンをインストール
    • sudo command のインストール
    • avahi deamonのインストール

前回 RoonCoreからの応答が突然なくなり、やむなく再構築したのですが、原因はRoonCore側ではなくNASにしているファイルサーバの不具合のせいでした。

このとき、おなじUbuntuディスクトップをインストールするのもちょっと面白くないなと考えて、debianを最小構成でインストールしたのです。

うまく稼働し始めて、一日聴いていたのですが、なんだか音質が良くなった気がするのです。
気のせいと言われればそうかもしれませんが・・・・

気が付いたことなのですが、ピアノの音がなめらかになりました。
音質チェックにも聴いているOscar PetersonのCrcovadoでその思いが強くなりました。
変わったのはOSのUtuntuのDesktopバージョンからdebianの最小インストール構成としただけです。良い影響はCPUのプロセス数が減ったことぐらいしかありませんが・・・・


良い方向へ音質が変わっているようなので、無駄ではなかったようです。
怪我の功名というやつでしょうか(笑)


2021年6月5日土曜日

debian + Roon Server をdebianの最小インストールで構成(RoonCoreの作成)

Roon coreとしてUbuntu20.04のディスクトップ版をインストールして使っていました。

ですが・・・突然・・・・・

このメッセージ・・・・何が起きたのかわかりません。。。
Ubuntuにディスプレイを繋げて見てみるとRoonServer、RAAT Server どちらもプロセスは走っています。なのにみつからないって・・・・

試しにiMacをコアにしてみたら・・・

と表示されます。ということはUbuntuをサーバとしたRoonCoreに不具合があるんだろうと確信してしまいました。
何度か再起動したり、RoonCoreを再インストールしてみたりしましたが、一向に状況は改善しません。
よし、仕方ない・・・OSごと入れ替えてみるか・・・・・

まぁ、今から思えば、それが間違いだったのですが・・・・

ついでに、、Ubuntuのディスクトップみたいに大きなシステムはいらない。。使い慣れた!?debianの最小インストールのみで動かしてみよう。。
プロセスが少なくなれば音質向上につながるかも。
などというよこしまな気持ちが生まれてしまいました。

RoonCoreのサーバにするマシンにdebianをインストール


ということで、debianのnet install のISOファイルをダウンロードします。
ここから最小インストールにつかうイメージを取得します。

あとは、rufus-3.14を使ってISOイメージをUSBに書き込み、PCにインストールします。

BIOSの設定でUSBメモリから起動するように設定して
インストールを開始します。

余計なものは一切入れません。さすがにSSHはないといろいろと面倒なので、それだけはチェックしてインストールしていきます。

RoonCore関連ファイルのインストール


インストールが終わって、RoonCoreに必要なパッケージをインストールします。

$ sudo apt-get install ffmpeg

すごい依存関係のインストール量(笑)

$ sudo apt install cifs-utils
そして
$ sudo apt install curl



やっとRoon Server本体のインストールに移りますが・・・・

$ curl -O http://download.roonlabs.com/builds/roonserver-installer-linuxx64.sh

$ chmod +x roonserver-installer-linuxx64.sh

$ sudo ./roonserver-installer-linuxx64.sh



なぬ!Faildだと・・・・・
どうやら、ネットワークマウント用のcifsがらみのようだ・・・
インストールが終わっているのにないっていわれる。。。
どうしてだろう!?

解決

実はこの時点ではまだsudoをインストールしていなかったため、一般ユーザディレクトリからルートにsuして実行していた。一般ユーザの環境変数が引き継がれたため、マウント関連のコマンドは/sbinとかのいわゆるルートユーザしかアクセスできない場所にあり、みつけられずFaildとなったようだ。キチンとsu - してrootの環境変数でインストール実行したらエラーなく実行されました。

クライアントのWindowsマシンからRoonを立ち上げます。


おぉ、ちゃんとコアが見える。良かった・・・・
ということで、接続して、ライブラリを登録して・・・登録して・・・・・
んn!落ちた。。。

問題発生!!

音楽ファイルを登録してるNASにつなぐと、ディレクトリの登録の所で異常に時間がかかっています。
そして、勝手にRoonCoreが異常終了再起動を繰り返しているようです。

もしやと思い・・・
ファイルサーバを確認してみました。

そうしたら

ZFSでRaidZにしているtank2は無事になようでした。
ですが、sambaサーバの様子がおかしいのです。

Windowsからアクセスしてみると、サーバにアクセスはできるのですが、ディレクトリが開けません。アクセスできない状態になっています。

しかたなく再起動
sambaがどうのこうのと表示されながーい時間かかってやっとこさ再起動。

無事にRoonCoreが動くようになりました。

なんのことはない、RoonCoreにしていたUbuntuサーバは不具合などなかったのです。

ちゃんちゃん(笑)