asoyajiさん
メールでお話したミュートに関しても、僕のところのalsamixerの結果は「This sound device does not have any controls.」ですから、同じですね。
こうなると初歩的な質問で恐縮ですが、uda2とdacはちゃんと同期がとれているのだろうかとなりますが、いかがでしょうか。
演奏中のcatの結果が僕のところと同じであれば、この可能性もなくなりますね。
uda2or3がWindowsのfoobar2000で音が出るとなると、いよいよ謎だらけですね(^^;;;。
root@voyage:~# cat /proc/asound/cards
0 [EZUSBUDA ]: USB-Audio - EZ_USB(UDA)
Cypress EZ_USB(UDA) at usb-0000:00:12.2-5, high speed
root@voyage:~# cat /proc/asound/card0/pcm0p/sub0/hw_params
access: RW_INTERLEAVED
format: S24_3LE
subformat: STD
channels: 2
rate: 44100 (44100/1)
period_size: 5513
buffer_size: 22050
root@voyage:~# cat /proc/asound/card0/pcm0p/sub0/sw_params
tstamp_mode: NONE
period_step: 1
avail_min: 5513
start_threshold: 16537
stop_threshold: 22050
silence_threshold: 0
silence_size: 0
boundary: 1445068800
root@voyage:~# cat /proc/asound/card0/pcm0p/sub0/status
state: RUNNING
owner_pid : 3464
trigger_time: 269.817344801
tstamp : 333.210454642
delay : 21471
avail : 618
avail_max : 21026
-----
hw_ptr : 2795713
appl_ptr : 2817145
エレコムのシリアルリバースアダプタAD-R9を噛ましましたら見事に通信できました。ありがとうございました。
原因がわかりました。別のUDA2基板に変えたら問題なく音がでました。不思議です。PC直結だと音がでているのです。しかも、交換したのは全く同じUDA2基板です。まさか、最初のUDA2基板が原因とは思いもしませんでした。
何とか解決したようです。いつもこんな調子で独り相撲です。お騒がせしてすみませんでした。
全て解決おめでとうございます。
> PC直結だと音がでているのです。
バーストモードという意味ですか。
> 最初のUDA2基板が原因とは思いもしませんでした。
UDA2基板のリビジョンの問題なのでしょうか。それともハード的な設定or故障という問題なのでしょうか。
いずれにしても不思議ですね。
あと
> エレコムのシリアルリバースアダプタAD-R9を噛ましましたら見事に通信できました。
これでUSBメモリをつないだ時の問題は何が原因か切り分けられると思います。
NEW ALIX の /music に
WindowsPC(内臓HDDの共有フォルダー) //192.168.11.3/music をマウントする場合、コマンドラインで、
#mount //192.168.11.3/music /music
とすれば、問題なくマウントしてくれます。
次にこれを fstab に書き込んで、
//192.168.11.3/music /music cifs username=papa,password=,uid=root,iocharset=utf8 0 0
#mount -a でも問題なくマウントされます。
データベースも現われ、再生、音も出ます。
ことろがです。
再起動すると、全くマウントされていないのです。fstab に書きこんであるのにダメなんです。
fstabの記述、何か間違っているでしょうか?
なんだか基本的なことばかり上手くいきません。とほほ。
シリアルはうまく繋がって何よりです。
fstabに記載してもboot時にnfs(やCIFS)がマウントされない件ですが、以下が全てYESなら、自分が嵌った問題と同じかも知れません。
・fstabに、nfsマウントの設定を追加している。
・boot時は、マウントできない。
・boot後、手動でmount -aすると、うまくマウントできる。
色々調べてみると、nfsが認識可能になるまで 割と時間がかかるようで、ALIX標準で/etc/rc*に設定されている、LANの設定→fstabのマウントまで時間が短すぎるために、マウントするタイミングでNW越しに相手が認識できずマウントが失敗するようです。
自分は小手先ですが、/etc/local (/etc/rc*の一番最後に実行される物で自分で設定を追記可能)だったかな?を追加して、ここにsleep 15とnfsマウントを記載するというやり方で、boot時もマウントできました。
もしご入り用でしたら、今 出先で詳細が書けないため、後ほど具体的に内容をアップします。
ではでは
「mount -a」は出来るのでしたね。となると、tazyさんが書かれている通りだと思います。対応策もtazyさんの方法しかなさそうです。
設定を確認したのでアップします。(ちょっと間違えていました;)
・viなどで、/etc/rc.localを編集して、sleepの後にマウントする設定を追加。
※以下は、自分の例です。mountの所は書き換えてください。
---
root@voyage:~# vi /etc/rc.local
#!/bin/sh -e
#
# rc.local
#
<中略>
# By default this script does nothing.
sleep 10
sudo /bin/mount -t cifs //CATURE/music /music/ -o nounix,credentials=/root/.servercred,iocharset=utf8
exit 0
---
※この /etc/rc.localは、boot時 /etc/rc*.d/S20rc.localよりキックされ実行されます。
ありがとうございます。
・fstabに、nfsマウントの設定を追加している。
・boot時は、マウントできない。
・boot後、手動でmount -aすると、うまくマウントできる。
3つとも当てはまっていましたので、tazyさんの方法をやってみると、見事にマウントできました。感謝感謝です。
fstabの実行がcifsやnfsの認識より早すぎるんですね。こんなことは初めてです。驚きました。
root@voyage:~# vi /etc/rc.local
sleep 10
/bin/mount -t cifs //192.168.11.3/musicbkup /music -o username=papa,password=,uid=root,iocharset=utf8
root@voyage:~# df
Filesystem 1K-blocks Used Available Use% Mounted on
rootfs 15378828 319316 14278304 3% /
udev 10240 0 10240 0% /dev
tmpfs 204368 256 204112 1% /run
/dev/disk/by-label/VOYAGE_FS 15378828 319316 14278304 3% /
tmpfs 5120 4 5116 1% /run/lock
tmpfs 1021824 0 1021824 0% /run/shm
tmpfs 1021824 7916 1013908 1% /tmp
tmpfs 1021824 7916 1013908 1% /var/log
tmpfs 1021824 7916 1013908 1% /var/tmp
tmpfs 1021824 7916 1013908 1% /var/lib/mpd
tmpfs 1021824 7916 1013908 1% /var/lib/alsa
//192.168.11.3/musicbkup 2930134008 1742279472 1187854536 60% /music
成功したようで何よりです。
こういう事例は、自分もNewALIXが初めてでした。
マシンをいじる時間がなかなかとれず、この週末に色々とやってみました。
・まず、yoさんから頂いたヒントを元に、nfsからcifsでのマウントに変えてみました。文字コードがutfベースになる遥か前のことですが、Windows-Linuxマシン-Linuxマシンの間のsambaでの接続は文字化け対策等でじゃまくさい思い出がありました。そのため、Linuxボックス同士は、nfsマウントで使ってきました。
しかし、今回やってみて、あっさりと文字化けもなくcifsでマウントができました。
ただ、24bit/192khzのファイル再生時に発生するノイズでは目立った改善はないようです。(まだ、動作確認途中ですが…)
ノイズ対策という面はともあれ、cifsマウントで文字化け対策に苦労しないことが分かったのが収穫でした。
・もう一つの収穫は、仮にSSDから立ち上がらなくなった場合でも、USBメモリーからのブートの仕方が分かったことです。
購入直後のデフォルト設定では頻繁に起きていた、usb-ddcが見えなくなるという現象は起きなくなりました。
ただ、購入直後、usb-ddcが見えなくなった後、すごくマシンが重くなりどうしようもなく電源アダプターを抜いてシャットダウンさせたりしたためか、fsckをしろとのwarningが出るようになっていました。
それで、fsckを行うためにも、USBメモリーからの起動を行い、内蔵のSSDをアンマウントの状態にする必要がありました。
USBメモリーにVoyage MPDをインストールして立ち上げたところ、どうもSSD側のカーネルを読みにいっているようでした。BIOSの起動段階でF12を選んで明示的にUSBからの立ち上げを選んでも、GrubまではUSBメモリーの側を読み込みに行ってくれるのですが、その後、SSDがマウントされてしまいます。
当初、回避の仕方が分からず戸惑いましたが、Grubの設定ファイル、menu.lstの記述の問題でした。
USBメモリーにVoyage MPDをインストールすると、USBメモリーが一つ目のドライブと想定してmenu.lstが作成されます。
ところが、New AlixにUSBメモリーをさすと、2つ目のドライブsdbとして認識されます。そのズレから生じていた問題でした。
結局、menu.lstで
root(hd1,0)
として、2つ目のドライブであることを指定してやり、
さらに カーネルオプションのところに、
root=/dev/sdb1
を与えてやることで、USBメモリーからの起動ができるようになりました。
これで、とりあえず、色々いじってSSDから立ち上がらなくなっても、USBメモリーで立ち上げて回復させることができるようになりました。(SSD側のシステムを再インストールをして、まっさらな状態から構築し始めました)
ということで、肝心のハイレゾファイルの再生の際のノイズ問題では目立った進展は見いだせていませんが、いざという時の起動の仕方が分かったので、これからもう少しいじってみようと思います。
わたくしは、yoさんのご指導にしたがいブートローダーをext.linuxに替えました。
この場合ですが、USBメモリは、dev/sdc と認識されるので、
extlinux.confで、RTカーネルの場所として、/dev/sdc1と変更すれば、問題なく起動します。
レポートありがとうございました。
> ところが、New AlixにUSBメモリーをさすと、2つ目のドライブsdbとして認識されます。そのズレから生じていた問題でした。
その手は僕も試してみたのですが、esataボリュームを接続すると上手くいかないケースがありました。確実なのはTUさんが書いているブートローダをsyslinuxを使う方法のようです。
いずれにしても、確実にUSBメモリから起動する方法がみつかれば、安心してシステムいじりできますね。
ブート部分をsyslinuxに任せてしまうという方法があったのですね。掲示板で紹介されていたのですが、リンク先まで追いかけていませんでした(^_^;
リンク先を見ていなかったので、回り道をしてしまったみたいです。
最初、rescue系のLinxuをインストールしたのですが、シリアル出力が設定されていなかったからかログイン画面まで辿りつけませんでした。pingを打つと反応は返ってくるので、確かに立ち上がっているのですが、rootのパスワード設定もできないのでsshログインができず…という状態でした。
その後、昨日、書き込んだ通り、Voyage MPDからのUSBブートの方法に辿り着いた次第です。
結果的に、いざと言う場合に再インストールできる環境ができて、安心していじることができるようになりました。
それで、今日、再インストール状態から少しづついじってみて、やっと、ハイレゾファイルの再生の際に生じていた問題解決の糸口が見えてきました。
デフォルトのmpd.confで再生すると、20分ほどするとusb/ddcが見えなくなってしまいますが、ノイズは発生しません。
それで思いついて、audio_buffers_sizeの部分のコメントは残したままにして、buffer_before_playの値を調整してみました。
色々な値を入れて試してみましたが、usb/ddcが見えなくなる場合やノイズが頻繁に出る場合もありました。
当方の環境では、
audio_buffer_sizeはコメントアウトにして、
buffer_before_play=50%
が安定して動作するようです。
まだ、2時間弱の検証ですが、ノイズも出ず、usb/ddcが見えなくなることもなく、再生し続けることができています。
(ちなみに、fstabの方は、nfsに戻しています)
mpd.confでaudio_buffer_sizeをコメントアウトした場合の値は幾らになっているのか分かりませんが、これが一番安定して動作するようです。
以上、対症療法ではありますが、mpd.confのaudio_buffer_size周辺の設定がノイズ対策に効果があったことを報告します。
ご存じかもしれませんが、alsaのバッファ関連のパラメータでbuffer_time、period_timeというのがあります。このパラメータはalsaとデバイス間のバッファーの容量と転送する周期を指定するもので、mpd.confではこの値は無制限ですが、alsaのドライバーにセットする時にドライバー側で上限値を超えている場合は調整しているようです。実際にどれくらいの値がセットされたかは--verbosで分かります。
この値はaudio_outputで指定できますので、例えば
use_mmpa "yes"
buffer_time "2900000"
period_time "1400000"
とすると(デフォルトでは buffer_time "5000";period_time "5000")、outputで時間がかかってdecoderが動けないようなケースに対応することができます。
このあたりのalsaの動きについては
http://d.hatena.ne.jp/propella/20061202/p2" target="_blank">http://d.hatena.ne.jp/propella/20061202/p2
このページに図入りでよく説明されています。
mSSDを入手したので、あたらにVoyageMPDをインストールしようと思うのですが、USBからのブートがうまくいきません。
BIOSブートメニューからF12を押し、1のDVD/CDを選んでも止まってしまい先に進みません。
Searching bootorder for: /rom@genroms/pxeboot.rom
Build date: Apr 5 2014
System memory size: 2017 MB
Press F12 for boot menu.
Select boot device:
1. DVD/CD [USB MSC Drive Optiarc DVD RW AD-7590S 1.U7]
2. AHCI/0: ADATA SP310 ATA-9 Hard-Disk (30533 MiBytes)
3. iPXE (PCI 00:00.0)
4. Payload [setup]
5. Payload [memtest]
Searching bootorder for: HALT
drive 0x000f2500: PCHS=16383/16/63 translation=lba LCHS=1024/255/63 s=62533296
Space available for UMB: c1000-ee800, f0000-f24a0
Returned 253952 bytes of ZoneHigh
e820 map has 6 items:
0: 0000000000000000 - 000000000009fc00 = 1 RAM
1: 000000000009fc00 - 00000000000a0000 = 2 RESERVED
2: 00000000000f0000 - 0000000000100000 = 2 RESERVED
3: 0000000000100000 - 000000007e14e000 = 1 RAM
4: 000000007e14e000 - 000000007f000000 = 2 RESERVED
5: 00000000f8000000 - 00000000f9000000 = 2 RESERVED
enter handle_19:
NULL
Booting from DVD/CD...
Booting from 0000:7c00
ISOLINUX 4.02 debian-20101014 ETCDearly console in setup code
mSSDはまっさらなので、ブートローダをextlinuxに変更する方法は、使えません。
USBのvoyageMPD(LIVECD)から起動し、まっさらなmSSDにインストールする方法はやはりないのでしょうか。
usbメモリのブートローダをextlinux(syslinux)に変更して下さい。詳しくは#4378の
http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=3948#4378" target="_blank">http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=3948#4378
リンク先を参考にして下さい。あとその後のやりとりも参考になると思います。
syslinux3.11がダウンロードできません。webだとダウンロードできるので何か方法があれば教えてください。
root@voyage:~# wget https://www.kernel.org/pub/linux/utils/boot/syslinux/3.xx/syslinux-3.11.tar.bz2" target="_blank">https://www.kernel.org/pub/linux/utils/boot/syslinux/3.xx/syslinux-3.11.tar.bz2
--2014-06-21 16:17:47-- https://www.kernel.org/pub/linux/utils/boot/syslinux/3.xx/syslinux-3.11.tar.bz2" target="_blank">https://www.kernel.org/pub/linux/utils/boot/syslinux/3.xx/syslinux-3.11.tar.bz2
Resolving www.kernel.org (www.kernel.org)... 149.20.4.69, 199.204.44.194, 198.145.20.140, ...
Connecting to www.kernel.org (www.kernel.org)|149.20.4.69|:443... connected.
ERROR: The certificate of `www.kernel.org' is not trusted.
ERROR: The certificate of `www.kernel.org' hasn't got a known issuer.
ftpサイトならwgetできます。
wget ftp://ftp.kernel.org/pub/linux/utils/boot/syslinux/syslinux-6.02.tar.bz2
最新版は6.02のようですね。
ダウンロードできました。ありがとうございました。
ただ、mbr.binをコピーするとありますが、
Copy mbr.bin to the boot dir. This will help with any disk cloning.
cp ./syslinux-3.11/mbr.bin /mnt/boot
cp ./syslinux-3.11/extlinux/extlinux /mnt/boot
syslinux-6.02の中に、mbr.binが見当たりません。mbrの中にもありません。
root@voyage:/tmp/syslinux-6.02# ls
COPYING com32 dosutil gen-id.sh man mtools version
Makefile core dummy.c gpxe mbr now.pl version.pl
NEWS devel efi libfat memdisk sample win
README diag efi32 libinstaller memdump syslinux.spec win32
bios doc efi64 linux mime txt win64
codepage dos extlinux lzo mk utils
root@voyage:/tmp/syslinux-6.02# cd mbr
root@voyage:/tmp/syslinux-6.02/mbr# ls
Makefile altmbr.S gptmbr.S isohdpfx.S mbr.S oldmbr.asm
adjust.h checksize.pl i386 isohdppx.S mbr.ld x86_64
何かいい方法があれば教えてください。たびたびすみません。
cp ./syslinux-6.02/bios/mbr/mbr.bin /mnt/boot
cp ./syslinux-6.02/bios/extlinux/extlinux /mnt/boot
で駄目ですか。展開されるのは6.02です。3.11は6.02に読み替えて下さい。
syslinux-3.11,-6.02どちらも組み込むとプロンプトがinitramfs で止まってしまうのは異常ですか?dfを見ると / ルートがマウントされていません。syslinuxを組み込む前は正常に起動します・
asoyajiさん
まっさらなmSSDにインストールする方法 として APU.1C から PXE で Voyage-MPD の Live-CD を
立ち上げる方法があります。VM を使うんですが、以下にその概要が示されています。
http://ytw.jp/archives/370" target="_blank">http://ytw.jp/archives/370
情報ありがとうございます。
なるほど、そういう手があったのですか。リンク先(日本のalixの代理店)ではVirtualBoxを使う方法が紹介されていますが、VMwarePlayerでも同じことが出来ました。
新規仮想マシンの作成 -> インストーライメージファイル(VoyageMPD 0.92のisoを指定) -> Linux(他のlinux2.6xカーネル) -> 仮想マシン名と格納場所(defaultのまま) -> ディスクサイズ(8GB、単一ファイル) -> ハードウェアをカスタマイズ -> ネットワークアダプタ -> ブリッジ(に変更、物理ネットワークの複製をチェック)
で完了すれば、VoyageMPDのイメージから起動できます(DHCPサーバの停止はルータの簡易サーバであれば、不要のようですね)。後はroot/voyageでログインして
remountrw
/etc/init.d/voyage-pxe start 115200
でpxe起動すれば、NewAlixからログイン(PXE Boot Voyage Linux with a login shell)できました。
これでネットワークにつながれば、インストールできるから、お勧めですね。
> syslinux-3.11,-6.02どちらも組み込むとプロンプトがinitramfs で止まってしまうのは異常ですか?
だと思います。多分grubがextlinuxに上手く切り替わっていないのだと思います。
一応 extlinux.conf を kernel3.0系に書き換えないとブートしなかったので
とりあえず途中までは動作しているのだと思うのですが?
/etc/fstabを書き換えて / がマウントされないか試しましたが失敗でした。
# voyage image
LABEL voyage
KERNEL /boot/vmlinuz-3.12.9-voyage generic.all_generic_ide=1
APPEND vga=0x0f01 initrd=/boot/initrd.img-3.12.9-voyage root=/dev/sda1 ro
generic.all_generic_ide=1オプションも効きません。
ideは使っていないのだから、
> generic.all_generic_ide=1オプションも効きません。
は当然ではないでしょうか。問題はカーネルのビルドかextlinux.confの作成方法に何かのミスがあり、起動できていないことだと思います。
> とりあえず途中までは動作しているのだと思うのですが?
その通りです。最後まで起動が完了していないので、「プロンプトがinitramfs で止まってしまう」のです。この状態からシステムをリカバリすることは通常は困難です。
昨年から、この掲示板で時々お世話になりながら、Voyage MPDを導入しました。
New Alixをいじるにあたって、SSD以外からの起動方法を確保しておかないと、いざという時にこまってしまいますよね。
別の方法の提案ですが、もし、別のLinuxが起動できるマシンか、仮想環境があれば、そのマシンでUSBメモリーにVoyage MPDをインストールして起動してみるという方法もあります。
ただ、インストールしたままの状態だとUSBメモリーを一つ目のドライブと想定した設定ファイルがつくられます。
しかし、New AlixにはSSDがインストールされているので、それが一つ目のドライブとして認識されます。
環境にあわせて、
/boot/grub/menu.lst
というファイルを書き換える必要があります。
このスレッドの最初の方に、私のところで行った方法を書いていますので、ご覧ください。
ありがとうございます。syslinux-3.11,-6.02を組み込まない
状態での起動は正常な事から色々試しての質問でした。
試してみます。
New Alix導入後、なかなか解決できなかったハイレゾファイルの再生時の問題ですが、どうやら何とか解決したみたいです。
当方の環境では、24bit/192khzファイルを再生していると、途中でusb/ddcが見えなくなるか、チリチリというノイズが出る症状に悩まされていました。
fstabやmpd.confをカット&トライでいじることで、2時間くらいは問題なく再生できるように、CD1枚分を聴くのに実用上ほとんど問題はないくらいにはなっていましたが、完全には症状を無くせていませんでした。
週末に時間がとれたので、色々といじっている内に、スパゲティ状態になったので、mpd.confをインストール時のデフォルトに戻してからやってみたところ、問題の症状が出なくなりました。(今のところ、5時間近くの連続再生でも症状が出ていません)
iPadをコントローラー代わりに使っているため、いつもは、インストール直後からソフトウェアVolumeを使えるように設定していましたが、今回、それを忘れて作業を進めました。
これまでと違うのは、このmixer_typeの指定(デフォルトではhardware)くらいなので、これが問題解決のポイントだったのかなと思います。
「ケガの巧妙」みたいな話ですが、とりあえず、楽しく音楽を聴いていられます。
mixer_typeの設定が問題の発生原因かどうかは不明で、あくまで対症療法的な「解決方法」の範囲ですが、当方の環境では、mixer_typeの設定変更が大きな効果があったことを報告します。
先程の件で、追伸です。
yoさんから、
-----------------------------------------------------------
ご存じかもしれませんが、alsaのバッファ関連のパラメータでbuffer_time、period_timeというのがあります。このパラメータはalsaとデバイス間のバッファーの容量と転送する周期を指定するもので、mpd.confではこの値は無制限ですが、alsaのドライバーにセットする時にドライバー側で上限値を超えている場合は調整しているようです。実際にどれくらいの値がセットされたかは--verbosで分かります。
---------------------------------------------------------
とアドバイスを頂いておりましたが、試す時間がなく、先程の報告の通り、mixer_typeの指定変更でとりあえず症状が出なくなりました。
当方の環境では、mpd.confの中のmixer_typeをsoftwareに設定すると問題の症状が出るようになっていたみたいでした。(いつも、インストール直後に迷うことなるsoftwareに書き換えていたので気づきませんでした)
mixer_typeの設定で、mpdというか、alsaの挙動がそんなに違うのかな?という疑問は拭えませんが、とりあえず、症状は出なくなりました。
結局、
・音楽データーのマウントは、cifs
・mpd.confは、インストール直後のデフォルトのままで、audio_buffer_size等もコメントアウトしたまま
という状態です。
yoさん、色々とアドバイスを頂きありがとうございました。
New Alixでのハイレゾ再生ですが、その後、時々、usb/ddcが見えなくなる症状が出ました。
たまに出るくらいなので、実用上はほとんど問題ないのですが、「試しに」と思い、Voyage MPDのcurrentバージョンを入れてみました。
今朝から少し使ってみただけなので、もう少し様子をみないと判断できませんが、安定して再生できているようです。
mixer_typeをsoftwareに設定したりしても、usb/ddcが見えなくなったり、チリっというノイズも出ていません。
kernelのバージョンは3.12.9となっています。Voyage MPDの正規版0.9.2に、自分でビルドした3.12や3.14のカーネルを使っても問題解決しなかったことから、カーネルのバージョン以外にも、変更が加えられているのでは?と思います。
ただ、currentバージョンということで、インストール直後、mpdも立ち上がりませんでした。/var/lib/mpd関連のパーミッションの問題で、調べてみると、グループmpdがつくられていませんでした。
これもインストール方法等によって違うのかも分かりませんが、私の場合は、tarボールを解凍後、./usr/local/sbin/voyage.updateを使ってインストールしました。
ということで、私のところの環境では次版では安定動作ができるのではと、次期正規版のリリースに大いに期待する次第です。
new boticは今のところすこぶる快調なのと、しばらく手が出せそうにない状態ですので、new alix(apu)のkernelで遊んでいました。
3.14.10-rt7までは、yoさんの記事をコピペしてmake-kpkgで作成出来ました。
http://mimizukobo.sakura.ne.jp/articles/articles016.html#029" target="_blank">http://mimizukobo.sakura.ne.jp/articles/articles016.html#029
しかし、3.15.4、3.15.5はどちらも同じ所でエラーが出ます。
WARNING: missing /lib/modules/3.15.5
Device driver support needs thus be built-in linux image!
ERROR: could not open directory /lib/modules/3.15.5: No such file or directory
FATAL: could not search modules: No such file or directory
cp: cannot stat `/lib/modules/3.15.5/modules.dep': そのようなファイルやディレクトリはありません
E: /usr/share/initramfs-tools/hooks/modulesdep failed with return 1.
update-initramfs: failed for /usr/src/linux/linux-3.15.5/debian/linux-image-3.15.5//boot/initrd.img-3.15.5 with 1.
run-parts: /etc/kernel/postinst.d/initramfs-tools exited with return code 1
make[3]: *** [install] エラー 1
make[2]: *** [install] エラー 2
また、これとは別ですが、mpd-dsd-018もエラーが出て作成できません。tinkerさんが BBBのI2S interface(6) で言及されているのと、たぶん同じ現象です。
http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=4764#4770" target="_blank">http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=4764#4770
>SND_PCM_FORMAT_DSD_U8のあたりでエラーが出ます
lintweakerさんは、その部分はまだ完成していないと書かれていますが、コンパイル時のエラーは既に修正されているようです。
https://github.com/lintweaker/mpd-dsd-018/blob/master/NEWS-MPD-DSD" target="_blank">https://github.com/lintweaker/mpd-dsd-018/blob/master/NEWS-MPD-DSD
20-Jun-14
- Preliminary support for native DSD output.
04-Jul-14
- Fixes compile warnings for DSD_U8 in PcmFormat.cxx
これらの現象、問題点はどこでしょう。ご指導よろしくお願いします。
root@bbb:~# uname -a
Linux bbb 3.15.1-botic1 #12 SMP Thu Jun 26 09:26:12 CEST 2014 armv7l GNU/Linux
root@bbb:~/mpd/mpd-dsd-018# ls -l /usr/local/bin
total 18352
-rwxr-xr-x 1 root staff 8537900 8月 17 16:49 mpd
-rwxr-xr-x 1 root staff 9578277 8月 17 16:28 mpd-miero
日付が変ですが、8537900 の mpd が今回新たに作成したものです。ファイルサイズは異なります。
root@bbb:~# cat /proc/asound/version
Advanced Linux Sound Architecture Driver Version k3.15.1-botic1.
Alsaにboticのパッチが当ってないとmake出来ないのでしょうか。
実は僕も只今悪戦苦闘中です。botic環境でlintweakerさんのbotic dsd再生対応の0.18.11はビルドは出来るのですが、実行させようとするffmpegライブラリの不足でエラーになってしまうのですよね。どうもこのあたりが例のflac44.1KHzがノイズまみれになるという障害と絡んでいるのではないかと思っています。
ちなみにlintweakerさんって、mpd公式版のDoP対応のコード責任者のJurgenさんのことですよね。従って、botic版のdsd再生mpd対応にmpd対応の責任者が登場ということになるので、これは鬼に金棒ですね。
どうせ脱線したついでだから(^^;;;、ait dac修理完了しました。i2s接続のdsd再生で快調に鳴っていますので、ご機嫌です。それで質問が一つ。dsd再生を止める時、盛大にノイズがのりませんか。回答はあっちのスレッドの方がいいかもです。
新しいカーネルはtinkerさんにお任せ(^^;;;。
4801で
>mpd-dsd-018もエラーが出て作成できません。
の件です。
mpd-dsd-018の最新版はSND_PCM_FORMAT_DSD_U8関連でエラーが出てコンパイルできません。これはI2S直接接続でのDSD再生に対応するためのコードが6月20日に追加されていますが、まだ未完成らしいのと、7月4日の修正が適切でないようです。
(4801から)
https://github.com/lintweaker/mpd-dsd-018/blob/master/NEWS-MPD-DSD" target="_blank">https://github.com/lintweaker/mpd-dsd-018/blob/master/NEWS-MPD-DSD
20-Jun-14
- Preliminary support for native DSD output.
04-Jul-14
- Fixes compile warnings for DSD_U8 in PcmFormat.cxx
5月26日版まで戻せば作成できました。
root@voyage-mpd:/home/mpd# git clone git://github.com/lintweaker/mpd-dsd-018
root@voyage-mpd:/home/mpd# cd mpd-dsd-018
(140526版に戻す)
root@voyage-mpd:/home/mpd/mpd-dsd-018# git checkout 949082ea4916c36aa888d3cb3677c6d358bcb5ba
戻してからro-optパッチを当てましたら、エラーなくmpd-dsd-018を作成できました。
root@voyage-mpd:~# uname -a
Linux voyage-mpd 3.14.10-rt7 #1 SMP PREEMPT RT Fri Jul 11 02:30:00 JST 2014 i686 GNU/Linux
root@voyage-mpd:~# mpd -V
Music Player Daemon 0.18.11-dsd
ddcはuda2です。96kHz以上のflacでたまにスクラッチノイズがでますが、wavなら176kHzでもほぼノイズなし、dsdの音も良好だと思います。
実はサーバ、クライアント両方にAPUを使用しています。音が好きなのでNFSです。
root@voyage-nfs:~# cat /etc/exports
/Public 192.168.11.0/24(rw,no_subtree_check,all_squash,sync)
root@voyage-mpd:~# cat /etc/fstab
#/dev/hda1 / ext2 defaults,noatime,rw 0 0
proc /proc proc defaults 0 0
tmpfs /tmp tmpfs nosuid,nodev 0 0
#tmpfs /rw tmpfs defaults,size=32M 0 0
192.168.11.102:Public/Music /music nfs rsize=24576,wsize=8192 0 0
#//192.168.11.102/Public/Music /music cifs username=root,password=xxxxx,uid=mpd,file_mode=0666,dir_mode=0766,iocharset=utf8,rsize=130048,wsize=4096 0 0
この状態で、BBBの新boticと同格に近い音になっていると思います。
APUのLANポートは3個もあるので、クロスケーブル直結を試してみようと思っています。
先週 Starter Kit が届き、取り敢えず hpet化とweb等不要サービスを止めて使っていましたが、syu さんの書き込みを見て我慢出来ずに mpd 0.18.11-dsd に入れ替えてみました。default でも解像度と余裕が共存した良い音でしたが、より蛇口を開いた感じの音になりました。これは良いですね♪
久々のmpdビルドでちょこちょこ躓きながらでしたが、いじって音が良くなるとやっぱり楽しいものですね。
New Alix導入以来起きていたハイレゾ再生時の問題の解決の糸口を見いだそうと思い、開発版をインストールしてみたりしました。
開発版のスレッドに記しましたが、自宅の環境(usb/ddc=Hiface Two Pro, dac=Laxman DA-100)では、MPD 0.17系にすることで問題が出なくなりました。
0.9.2では0.18系なのに対して、先週くらいのcurrent版では0.17系で、それでちゃんと再生されることで気づきました。
ということで、正規版に3.12.24のカーネルと、0.17のMPDをインストールすることで、非常に安定して再生できる環境を構築できました。
その後、RTオプションの設定も済ませましたが、こちらも問題なく動作しているようです。
ただ、DSDファイルの再生ができなくなりました。正規版に元々入っているMPDだと、mpd.confにdsd_usb=noを設定するだけで再生はできていました。しかし、0.17系にすると、DSDファイルの再生に入るとストップしてしまいました。
mpd.logを見てみると、ストップする時は、
mixer: Failed to read mixer for 'My ALSA Device': no such mixer control: PCM
とのエラーメッセージがでます。
mixer云々と出ていることから、、mixer_typeをsoftwareからhardwareに変更してみたら、このエラーが止まり、無事、DSD再生もできるようになりました。
mixer_typeで挙動が変わるというのも不思議な感じもしますが、とりあえずの動作報告です。
やはり、新しく導入したマシンが安定して、よい音を出してくれるとうれしいものです(^_^)
bbbではrt-kernel、mpd-dsdにrt-パッチ(yanさん)、.configの軽量化、I/O schedulerのdeadlineへの変更、等が効果的でした。同じことをAPUでもやってみようと試みました。
rt-kernelは最新の3.14.12-rt9をyoさんの解説に従って作成しました。
http://mimizukobo.sakura.ne.jp/articles/articles016.html#037" target="_blank">http://mimizukobo.sakura.ne.jp/articles/articles016.html#037
tinkerさんのように上手に.configを整理整頓することはできませんが、とりあえず影響がなさそうなところから.configを削り、deadlineもconfigで指定しました。私の環境では良くなっていると思います。192/24やdsd128もノイズなく再生可能です。
以下ふたつのファイルを配布しようと思ったのですが、imageが10M超えているのでyoさんのUploaderにハネられてしまいました。10M 未満にsplitしようとしたんですが、上手くいきませんでした。
-rw-r--r-- 1 root root 8668176 7月 18 09:07 linux-headers-3.14.12-rt9-40718_3.14.12-rt9-40718-10.00.Custom_i386.deb
-rw-r--r-- 1 root root 11472560 7月 18 09:00 linux-image-3.14.12-rt9-40718_3.14.12-rt9-40718-10.00.Custom_i386.deb
とりあえず恥かしい中味ですが、.configだけ公開します。ご自由にお使いください。ここから改変した.configを作成された方は、yoさんのUploaderに上げていただけることを期待しています。よろしくお願いします。
http://mimizukobo.sakura.ne.jp/upload/config40718" target="_blank">http://mimizukobo.sakura.ne.jp/upload/config40718
root@voyage-mpd:~# nano /boot/grub/menu.lst
kernel行に console=ttyS0,115200n8 clocksource=hpet を追記します。
--EX.--
title Debian GNU/Linux, kernel 3.14.12-rt9-40718
root (hd0,0)
kernel /boot/vmlinuz-3.14.12-rt9-40718 root=UUID=5032b0ae-633e-476b-9100-f99e4b12c0bb ro console=ttyS0,115200n8 clocksource=hpet
initrd /boot/initrd.img-3.14.12-rt9-40718
-----
root@voyage-mpd:~# uname -a
Linux voyage-mpd 3.14.12-rt9-40718 #1 SMP PREEMPT RT Fri Jul 18 07:32:09 JST 2014 i686 GNU/Linux
root@voyage-mpd:~# cat /sys/block/sda/queue/scheduler
noop [deadline]
root@voyage-mpd:~# cat /sys/devices/system/clocksource/clocksource0/current_clocksource
hpet
root@voyage-mpd:~# mpd -V
Music Player Daemon 0.18.11-dsd
私の場合
root@voyage-mpd:~# nano /etc/mpd.conf
-------
realtime_option {
memlock "yes"
stack_reserve "4096"
heap_reserve "10240"
main_priority "OTHER:0"
player_priority "FIFO:52"
decoder_priority "FIFO:49"
update_priority "OTHER:0"
}
decoder {
plugin "dsdiff"
enabled "yes" # DSD native
}
#
audio_output {
type "alsa"
name "EZ_USB(UDA2)"
device "hw:0,0"
mixer_type "disabled"
priority "FIFO:53"
dsd_usb "yes"
# period_time "1"
}
# audio_buffer_size "4092"
# buffer_before_play "98%"
music_directory "/music"
playlist_directory "/var/lib/mpd/playlists"
db_file "/var/lib/mpd/mpd.db"
log_file "syslog"
pid_file "/run/mpd/mpd.pid"
state_file "/var/lib/mpd/mpdstate"
# user "mpd"
port "6600"
-------
昨夜、dsd128を連続再生させながらkernelを作成させていたら、APUが熱暴走しました。底板にヒートシンクを貼り付けようかと手配中です。
軽量化したlinux-3.14.12rt9-40719dを作成しました。
http://mimizukobo.sakura.ne.jp/upload/config40719d" target="_blank">http://mimizukobo.sakura.ne.jp/upload/config40719d
http://mimizukobo.sakura.ne.jp/upload/linux-image-3.14.12-rt9-40719d_3.14.12-rt9-40719d-10.00.Custom_i386.deb" target="_blank">http://mimizukobo.sakura.ne.jp/upload/linux-image-3.14.12-rt9-40719d_3.14.12-rt9-40719d-10.00.Custom_i386.deb
http://mimizukobo.sakura.ne.jp/upload/linux-headers-3.14.12-rt9-40719d_3.14.12-rt9-40719d-10.00.Custom_i386.deb" target="_blank">http://mimizukobo.sakura.ne.jp/upload/linux-headers-3.14.12-rt9-40719d_3.14.12-rt9-40719d-10.00.Custom_i386.deb
apuで
root@voyage:/root# remountrw
root@voyage:/root# mkdir /home/linux
root@voyage:/root# cd /home/linux
root@voyage:/home/linux# wget http://mimizukobo.sakura.ne.jp/upload/linux-headers-3.14.12-rt9-40719d_3.14.12-rt9-40719d-10.00.Custom_i386.deb" target="_blank">http://mimizukobo.sakura.ne.jp/upload/linux-headers-3.14.12-rt9-40719d_3.14.12-rt9-40719d-10.00.Custom_i386.deb
root@voyage:/home/linux# wget http://mimizukobo.sakura.ne.jp/upload/linux-image-3.14.12-rt9-40719d_3.14.12-rt9-40719d-10.00.Custom_i386.deb" target="_blank">http://mimizukobo.sakura.ne.jp/upload/linux-image-3.14.12-rt9-40719d_3.14.12-rt9-40719d-10.00.Custom_i386.deb
root@voyage:/home/linux# dpkg -i *40719d*.deb
で、たぶん入ると思います。(別環境では未検証)
root@voyage:/home/linux# nano /boot/grub/menu.lst
必要なkernel行の末尾に console=ttyS0,115200n8 clocksource=hpet を追記します。
root@voyage:/home/linux# reboot
root@voyage-mpd:~# uname -a
Linux voyage-mpd 3.14.12-rt9-40719d #4 SMP PREEMPT RT Sun Jul 20 01:31:21 JST 2014 i686 GNU/Linux
私の環境では、.configを大幅にいじっても音の変化幅は少なめですが、細部まで充実した軽快で控えめな音だと思います。私は好みでしたが、どうでしょうか。
192/24flacやdsd128もノイズなく良好に再生出来ました。特に192/24flacやdsd128は現状のbbb new botic よりもかなり良いと思います。
作成方法は、使うものを全部接続してから
root@voyage-mpd:/home/linux/linux-3.14.12# make localmodconfig
localmodconfigで出来たものは
-rw-r--r-- 1 root root 2950860 7月 19 17:19 linux-image-3.14.12-rt9-407183_3.14.12-rt9-407183-10.00.Custom_i386.deb
imageのサイズは大幅に小型化。起動はしましたが snd_usb_audio が入っていないためmpdは走っても音は出ません。
ipv6を削除し、snd_usb_audioを組み込みました。
root@voyage-mpd:~# lsmod
Module Size Used by
rpcsec_gss_krb5 15319 0
nfsd 166991 2
exportfs 2591 1 nfsd
snd_usb_audio 79555 0
snd_usbmidi_lib 13753 1 snd_usb_audio
snd_hwdep 3959 1 snd_usb_audio
snd_rawmidi 12148 1 snd_usbmidi_lib
k10temp 2034 0
sp5100_tco 3744 1
i2c_piix4 6860 0
ohci_pci 2092 0
ohci_hcd 20559 1 ohci_pci
rtc_cmos 6627 0
usb_storage 32558 0
sg 17310 0
ehci_pci 2404 0
ehci_hcd 31289 1 ehci_pci
ahci 19535 1
usbcore 104433 7 snd_usb_audio,usb_storage,ohci_hcd,ohci_pci,snd_usbmidi_lib,ehci_hcd,ehci_pci
libahci 15119 1 ahci
usb_common 1068 1 usbcore
libata 120250 2 ahci,libahci
r8169 41700 0
mii 2759 1 r8169
root@voyage-mpd:/home/linux# ls -l /sys/block/
total 0
lrwxrwxrwx 1 root root 0 7月 20 02:26 sda -> ../devices/pci0000:00/0000:00:11.0/ata1/host0/target0:0:0/0:0:0:0/block/sda
lrwxrwxrwx 1 root root 0 7月 20 02:26 sdb -> ../devices/pci0000:00/0000:00:16.2/usb3/3-1/3-1:1.0/host6/target6:0:0/6:0:0:0/block/sdb
root@voyage-mpd:/home/linux# cat /sys/block/sda/queue/scheduler
noop [deadline]
root@voyage-mpd:/home/linux# cat /sys/block/sdb/queue/scheduler
noop [deadline]
192/24flac再生中のtop。flacはmpdの仕事が大幅に増加します。
top - 02:53:01 up 8 min, 1 user, load average: 0.35, 0.24, 0.13
Tasks: 90 total, 1 running, 89 sleeping, 0 stopped, 0 zombie
%Cpu(s): 4.8 us, 1.4 sy, 0.0 ni, 92.7 id, 0.0 wa, 0.0 hi, 1.1 si, 0.0 st
KiB Mem: 2042704 total, 348672 used, 1694032 free, 540 buffers
KiB Swap: 0 total, 0 used, 0 free, 260136 cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
3657 root 20 0 82240 79m 23m S 8.6 4.0 0:06.68 mpd
1169 root -51 0 0 0 0 S 8.3 0.0 0:33.81 irq/17-ehci_hcd
1171 root -51 0 0 0 0 S 3.3 0.0 0:16.48 irq/17-ehci_hcd
2749 root -51 0 0 0 0 S 2.7 0.0 0:04.66 irq/40-eth0
1172 root -51 0 0 0 0 S 1.0 0.0 0:04.94 irq/17-ehci_hcd
3 root -2 0 0 0 0 S 0.3 0.0 0:00.39 ksoftirqd/0
3779 root -51 0 0 0 0 S 0.3 0.0 0:00.44 irq/4-serial
3827 root 20 0 0 0 0 S 0.3 0.0 0:00.13 kworker/1:1
dsd128再生中
top - 02:56:57 up 12 min, 1 user, load average: 0.02, 0.14, 0.12
Tasks: 90 total, 2 running, 88 sleeping, 0 stopped, 0 zombie
%Cpu(s): 0.7 us, 2.4 sy, 0.0 ni, 95.3 id, 0.2 wa, 0.0 hi, 1.4 si, 0.0 st
KiB Mem: 2042704 total, 526348 used, 1516356 free, 540 buffers
KiB Swap: 0 total, 0 used, 0 free, 436768 cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1169 root -51 0 0 0 0 R 8.6 0.0 0:53.27 irq/17-ehci_hcd
2749 root -51 0 0 0 0 S 5.3 0.0 0:11.96 irq/40-eth0
1171 root -51 0 0 0 0 S 4.0 0.0 0:24.61 irq/17-ehci_hcd
3657 root 20 0 82292 80m 23m S 2.7 4.0 0:25.10 mpd
1172 root -51 0 0 0 0 S 1.3 0.0 0:07.54 irq/17-ehci_hcd
3779 root -51 0 0 0 0 S 0.3 0.0 0:00.53 irq/4-serial
3827 root 20 0 0 0 0 S 0.3 0.0 0:00.51 kworker/1:1
linux-3.14.12rt9-40719dを試してみました。debファイルだとインストールが楽ですね。問題なく動いています。音も素晴らしいと思います。アップロードありがとうございました。
実は「NewAlixはハードが強力になったので、ソフトによるチューニングはそれほど威力を発揮しないな」と思っていまして、カーネルもオリジナルのままで使うことが多いのですが、こうやって丁寧にチューニングされたカーネルはそれなりの効果がありますね。全体的にスッキリ。解像度が上がっているという感じがします。
ところで、折角のrtカーネルなので、ハード/ソフトの優先度設定をするかなと思いますが、ハード側はirq/17-ehci_hcd
というプロセスが三つ動いているので、ややこしいですね。三つともあげようとすると、プロセス名をプロセス番号に変換するシェルスクリプトが必要です。以前bbbの時に作成したものが使えると思います。
> 192/24flacやdsd128もノイズなく良好に再生出来ました。特に192/24flacやdsd128は現状のbbb new botic よりもかなり良いと思います。
これはハードの力による部分が大きいのですかね。やっぱりbbbは非力だから。
NewAlixの場合、ディストリビューションによる音の差は大きいです。arch linuxやtiny-core linuxがお勧めです。やり方はそのうちサイトの方に書き込もうと考えていますが、archの場合は「サルでも・・」と基本的にはいっしょです。tiny-coreはこのサイト
http://tinycorelinux.net/" target="_blank">http://tinycorelinux.net/
を参考にすれば、出来るかと思います。
Voyage MPDで音が出るまで3連休を費やしてしまったのですが
なんとか音出しまでこぎつけましたので最も引っかかったところ
の体験談を聞いてやってください。
トラブル内容:MPDクライアント側にFailed to open deviceと表示され、音が出ない
・MPDは立ち上がっている
・NFSマウントできている
・MPDクライアント2種でサーバー認識できており、再生コマンドも通っている
・ALSAレベルでデバイス認識できている(NI Komplete Audio 6、hw:0)
・speaker-test -c 2 で音が出る
・aplay xxxx.wavで音が出る
mpd.confをどういじっても音が出ずあきらめかけた所に
ふと目にした解決方法が・・・
「mpd.confのAUDIO_OUTPUTをコメントアウトしてMPDに自動認識させる」
見事に音が出ました。明日の仕事に差し障りかねないほど
疲れ果てておりましたが報われました。
でもまったく納得いきません(笑)
ちなみにmpd.confで適正な設定をしようと思った場合
何かやり方はあるのでしょうか・・・?
これは New Alix であるか以前の問題のような気がします。
大文字の AUDIO_OUTPUT が書かれている事も疑問に思いますが(Voyage MPD なら小文字になると思います)、
audio_output の指定の中で明瞭に指定しているデバイスが存在しなければ音は出ません。
device "hw:X,X"の指定が間違っていませんか?指定しているX,Xのデバイスは存在しますか?。
audio_output の指定自身を削除して何が起こるか(デフォルトで何を選択するか)は知りません。何分削除した事はありませんから。
yoさんに(あるいは他の人に)何か教えて貰おうと思ったら、mpd.conf (#で始まる行は削除してあるのが良いです)を提示して添削のお願いをするのが良いのではないですか。
なんといっても、あなたのマシンの中の設定はネットのこちら側からは見る事が出来ません。
audio_outputは小文字ですね、失礼しました。
cat /proc/asound/cards で表示されるデバイスナンバーは0、
mpd.confのaudio_outputの書式もインストール時のままの
device "hw:0,0"で音が出なかったという状況でした。
たとえば私の今接続しているマシンだと
root@voyage:/etc# cat /proc/asound/cards だと
0 [Intel ]: HDA-Intel - HDA Intel
HDA Intel at 0xdff00000 irq 44
1 [UA1EX ]: USB-Audio - UA-1EX
EDIROL UA-1EX at usb-0000:00:1d.2-1, full speed
root@voyage:/etc# aplay -l だと
**** List of PLAYBACK Hardware Devices ****
card 0: Intel [HDA Intel], device 0: 92HD87B1/3 Analog [92HD87B1/3 Analog]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 0: Intel [HDA Intel], device 3: HDMI 0 [HDMI 0]
Subdevices: 1/1
Subdevice #0: subdevice #0
card 1: UA1EX [UA-1EX], device 0: USB Audio [USB Audio]
Subdevices: 1/1
Subdevice #0: subdevice #0
と表示されます。
hw(0,0)だと本体のアナログポート、hw(1,0)だと、USB接続のUA1EXから音が出ます。
hw(card No : device no) で指定すると言うことです。
APU1Cで hw(0,0)が何になるか判りませんが、USBポートだけでも4個有るボードじゃないのですか。
ご自分で音を出したいポートに接続して(或いは繋ぎたいポートを指定して)やって下さい。
これで解決しなかったら・・・これ以上は、APU1Cをお使いの方に聞いてください。
その場合、何を何処に接続なさっているかの情報もお忘れなく。
できました!
root@voyage:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: K6 [Komplete Audio 6], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
以上のデバイスに対しmpd.confでplughwを用いて名前で明示的に
指定してやることで無事に認識できているようです。
audio_output {
type "alsa"
name "NI Komplete Audio 6"
device "plughw:K6,0"
}
やっとすっきりしました。ありがとうございました。
お試しありがとうございます。
>NewAlixはハードが強力になったので、ソフトによるチューニングはそれほど威力を発揮しない
前からyoさんが指摘されていた点ですが、ここまでconfig削っても僅かしか差が出ないのは意外でした。
>ディストリビューションによる音の差は大きい
ハードが強力で音が変わりにくいのなら、ディストリビューションによる差もそれほど出ないような気がするんですが、こっちは変化幅が大きいとすると、voyage特有のオマジナイが効き過ぎて支配的なのかも知れませんね。ここいらをいじってみようかな。
>arch linuxやtiny-core linuxがお勧め
ボチボチやってみます。
> >ディストリビューションによる音の差は大きい
> ハードが強力で音が変わりにくいのなら、ディストリビューションによる差もそれほど出ないような気がするんですが、
これはちょっと書きすぎだったかもしれません。「syuさんの今回のカーネルで出る位の差はありますよ」という意味です。
あと、syuさんに教えて頂いたNewAlixをnasサーバとして使うというのは効きますね。sacdをリッピング用のdiskをNewAlixにつなぎ、i2s接続のbbbで使っていますが、この組み合わせ(NewBoticによるdsd再生)が最高だと思います。自然だけど、迫力のある音がします。音場感も素晴らしいです。
今のところusb接続なのですが、esata接続だともっと効果的ですかね。
linux-3.14.12rt9-40719d アップロードありがとうございました。私も試してみましたが、NFS で DSD64 まで問題なく動いています。音もより"リアル"になって素晴らしいと思います。 default での NFS は、私の環境では少し線が細くてキンキンする感じで好みではなく cifs で使っていたのですが、これは自然で良いと思います。
次は yo さんお勧めのディストリビューションを試してみようと思います。
やり方は簡単で /etc/rc.local に以下の行を追加(exit文の前に入れて下さい)。
nano /etc/rc.local
ps -eLo pid,lwp,rtprio,priority,cmd | grep "irq\/17-ehci_hcd"| sed -e "s/^ \([0-9][0-9]*\) .*/chrt -f -p 52 \1/" > hw_prio
sh ./hw_prio
chrt -f -p 53 `pgrep irq/40-eth0`
#chrt -f -p 48 `pgrep cifsd`
一行目の「-p 52」という部分が優先度の指定なので、必要ならこの数字を変えて下さい。内容についてはこの書き込みとリンク先
http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=3599#3631" target="_blank">http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=3599#3631
を参照して下さい。
3行目はcifsを使っているなら、コメントイン。
Voyage MPD 0.9.1以降のmpdはyanさんのパッチはかかっているようなので、mpdについても優先度の設定は楽です。/etc/mpd.confに以下の行を追加して下さい。
nano /etc/mpd.conf
realtime_optionを追加
realtime_option {
memlock "yes"
stack_reserve "4096"
heap_reserve "10240"
main_priority "OTHER:0"
player_priority "FIFO:47"
decoder_priority "FIFO:46"
update_priority "OTHER:0"
}
audio_outputに以下の行を追加
priority "FIFO:45"
優先度はヒアリングで適宜変えて下さい。良い設定が見つかったら、是非この掲示板にご紹介を。
尚、rt処理とプロセスの優先度についてはこの記事とそのリンク先
http://mimizukobo.sakura.ne.jp/articles/articles015.html#022" target="_blank">http://mimizukobo.sakura.ne.jp/articles/articles015.html#022
を参考にして下さい。
後、rt処理についてはいろいろ誤解があるようなので、リンク先の記事の冒頭を再引用しておきます。
『よくある誤解ですが、「RTカーネルにすれば不要な処理待ちはなくなり、自動的に最適化される」というのは間違いです。RTカーネル方がシステム全体の効率を下げることがありますし、RT化されて動くプログラムの作りが悪いと問題を引き起こす可能性は高いです。
どういうことかというと、RTカーネルとは各プログラムに優先度付けをして、その優先度に従いプログラムの実行順序をコントロールする仕組みだからです。従って、高い優先度を割りつけられたプログラムが暴走し、ずっと動き続けると、他のプログラムが動けなくなるという現象が発生します。』
「rt化すれば、自動的に音が良くなるという幻想(^^;;;」からはとっととおさらばしましょう。
yoさんの書き込みに触発されて、New AlixのSSDの空きドライブ(2パーティションにしています)側に、arch linuxを入れてみました。
Cuboxのようなtarballが見つからなかったので、/dev/sda1側のVoyage MPDが立ち上がっている状態で、arch linuxのbootstrapイメージをダウンロードしてインストールを行いました。
インストール自体は、Install from Existing Linuxというウェブサイトの記述に沿って進めれば問題なく進めることができました。また、/dev/sda1側のgrubのmenu.lstに、/dev/sda2側から起動するように、(hd0,1)や、vmlinuzやinitrd.imgの場所やファイル名を記述することで起動させる設定もできました。
ただ、はまったのは有線Lanの設定でした。arch linuxはCuboxでしか使ったことがなく、tarballからの解凍で基本的なツール類はデフォルトで入っていました。
そのため、最初、ifconfigが見つからず、それを含むnettoolをインストールしようとするとLANは使えず…と堂々巡りの状態になりました。
少し調べて有線LANは、enp1s0として認識されるということが分かり、netctlの設定ファイルに記述したところ、無事、ネットワークにつなぐことができました。
Cuboxの時は、eth0で認識されていたように記憶しているのですが、思わぬところではまりました。
その後は、Cuboxの設定と同様で、Pacmanを使ってmpdやalsa関係をインストールし設定していきました。また、Avahi-daemonの立ち上げや、アルバムアートの表示のためにlighttpdをインストールしたりして、一連の設定を済ませました。
まず、当方の環境でのハイレゾファイル再生の問題がインストール直後の初期状態でも問題ありませんでした。
Voyage MPDの0.9.2ベースでは、018系のmpdだとハイレゾファイルの再生時に雑音が出たりusb/ddcが見えなくなる症状がありましたが、そうした問題が全くありませんでした。
(ちなみに、昨日段階で、カーネルは3.15系、mpdも0.18系でした)
音は、Voyage MPDに比べて、arch linuxは力が外に向かう、弾力性のある音という印象を持ちました。Voyage MPDは力が内に凝縮するというか、端正な感じがします。優劣の問題というよりは、好みのレベルの差という感じです。
ハイレゾ再生の問題が出ないこともあり、しばらく、arch linuxを使ってみようと思います。(いつでも、ブートメニューを選択すればVoyage MPDを起動させることもできますが)
ということで、arch linuxのインストールと動作報告でした。
先程の書き込みに追記です。
Arch Linuxはローリングリリースなので、動作確認済のバージョンを、参考までに記しておきます。
カーネルで、uname -aの結果は
Linux arch 3.15.5-2-ARCH #1 SMP PREEMPT Fri Jul 11 07:55:51 CEST 2014 i686 GNU/Linux
です。
mpdでは、mpd -Vの結果は
Music Player Daemon 0.18.11
です。
arch linuxインストールおめでとうございます。なかなかいいでしょ。
> Cuboxのようなtarballが見つからなかったので、/dev/sda1側のVoyage MPDが立ち上がっている状態で、arch linuxのbootstrapイメージをダウンロードしてインストールを行いました。
なるほどなぁ・・・。そういう手もありましたか。
僕は二つの方法
- 別のx86マシンにesata接続のディスクをつなぎ、標準のインストール用cdからインストールする
- ヘッドレス対応の起動用usbメモリを作成する
で対応しました。
二番目の方法ですが、このページに
https://bbs.archlinux.org/viewtopic.php?id=169674" target="_blank">https://bbs.archlinux.org/viewtopic.php?id=169674
情報があり、このページに
https://github.com/wiemag/arch-headless/blob/master/arch-headless" target="_blank">https://github.com/wiemag/arch-headless/blob/master/arch-headless
変換用スクリプトがあります。
VoyageMPDとの音の比較は同感ですね。armアーキテクチャのマシンでも同じような感じですので、これはarchのキャラクターですかね。ディストリビューションでキャラクターが変わるというのが面白いです。archの音、debianの音、fedora(vortexbox)の音なんてありそうですね。
------------------------------------------------------------------------
僕は二つの方法
- 別のx86マシンにesata接続のディスクをつなぎ、標準のインストール用cdからインストールする
- ヘッドレス対応の起動用usbメモリを作成する
で対応しました。
-------------------------------------------------------
私も、最初、mSATA SSD-USBの変換ケーブルを購入して、いったんSSDを取り外して別のマシンでCDからインストールをしようかとも考えました。
ダメもとでと思って、bootstrapイメージからインストールしたところ、インストールと起動までは難なく進めることができました。
---------------------------------------------------
二番目の方法ですが、このページに
https://bbs.archlinux.org/viewtopic.php?id=169674" target="_blank">https://bbs.archlinux.org/viewtopic.php?id=169674
情報があり、このページに
https://github.com/wiemag/arch-headless/blob/master/arch-headless" target="_blank">https://github.com/wiemag/arch-headless/blob/master/arch-headless
変換用スクリプトがあります。
------------------------------------------------------------------------
USBメモリーで立ち上がる環境を作っておくと、マシンをいじる時の安心感が
違いますので、また、時間のある時に参考にさせて頂きます。
------------------------------------------------------------------------
VoyageMPDとの音の比較は同感ですね。armアーキテクチャのマシンでも同じような感じですので、これはarchのキャラクターですかね。ディストリビューションでキャラクターが変わるというのが面白いです。archの音、debianの音、fedora(vortexbox)の音なんてありそうですね。
------------------------------------------------------------------------
やはり、同じような傾向の変化なのですね。
ちょうど、再生でトラブッていたハイレゾファイルが、マイルス・デイビスやビル・エバンス等のJazzが中心だったので、それと、archのキャラクターがあって良い感じです。
(もちろん、Voyage MPDの端正な感じの音も嫌いではないですが)
しばらくは、このまま音楽を聴くのに専念することになりそうですが、後、いじるとしたら、ext4やxfsフォーマットでどう変わるかかな?等とも考えています。
>そんなにarch linuxっていいすか?良く解りません…
私のところの環境では、ハイレゾ再生でのトラブルがあったので、それが一挙解決したので、喜んでいます。
ふだん、家庭内サーバーに使っているマシンはDebianなので、使い慣れているのはdeb系です。(boの時からなので、かなり前からになります)
Debianにしてから再インストールどころか、カーネルをカスタマイズすることもあまりしなくなりました。
そういう経緯からすると、arch linuxは、初めてSlackwareというディストリビューションをインストールをした頃を思い出させてくれました。
インストールの後、自分で必要なものだけを入れていく、プラモデル感覚というか…
後、音の変化の傾向が、よく聴く音楽とマッチする方向だったのもよかったです。
redr390 です。Slackware… 懐かしいですね!
arch linux ちょっと挑戦してみます。
ちょっと裏口からなんですが、音が大幅に変化する構成法を発見しました。どうやったかは、見ただけでわかると思います。
http://mimizukobo.sakura.ne.jp/upload/syu-140727.jpg" target="_blank">http://mimizukobo.sakura.ne.jp/upload/syu-140727.jpg
APUがふたつ並んでいますが、青いほうがapu1c4(4G)でnas、シルバーのapu1c(2G)がクライアントです。
音は大げさでなく「激変」しますが、評価は個人ごとに大幅に変わると思います。例えると、スピーカをコーンタイプからコンデンサに変えたぐらいの変化かと思います。
描写は極めて細密になりますが、線は細くなり、音量が下がった感じになり、低音は軽すぎるほど軽く、弾力性に富みますが、押し出してくる量感は低くなります。聴感上の周波数バランスがかなり変わります。空間描写は相当に明確になっていると思います。
どちらもeth0はハブに接続されていますが、eth1は相互に短いケーブル(30cm)で直結されています。ここにクロスケーブルは不要で、ストレートケーブルで接続できます。apu2台構成でなくても、LAN端子が複数ある機種がサーバなら実験可能と思います。
設定は簡単な変更だけです。
[サーバ側]
root@voyage-nfs:~# nano /etc/network/interfaces
=======
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp # ルータ側で192.168.11.102に固定
auto eth1
iface eth1 inet static
address 192.168.10.102
netmask 255.255.255.0
broadcast 192.168.10.255
=======
root@voyage-nfs:~# /etc/init.d/networking restart
root@voyage-nfs:~# nano /etc/exports
=======
/Public 192.168.10.101(rw,no_subtree_check,all_squash,sync) 192.168.11.7(rw,no_subtree_check,all_squash,sync)
=======
root@voyage-nfs:~# /etc/init.d/nfs-kernel-server restart
[クライアント側]
root@voyage-mpd:~# nano /etc/network/interfaces
=======
auto lo
iface lo inet loopback
auto eth0
iface eth0 inet dhcp # ルータ側で192.168.11.101に固定
auto eth1
iface eth1 inet static
address 192.168.10.101
netmask 255.255.255.0
broadcast 192.168.10.255
=======
root@voyage-mpd:~# /etc/init.d/networking restart
root@voyage-mpd:~# nano /etc/fstab
=======
192.168.10.102:Public/Music /music nfs rsize=8192,wsize=8192 0 0
=======
root@voyage-mpd:~# mount -a
直結側のping
root@voyage-mpd:~# ping -c 10 192.168.10.102
PING 192.168.10.102 (192.168.10.102) 56(84) bytes of data.
64 bytes from 192.168.10.102: icmp_req=1 ttl=64 time=0.523 ms
64 bytes from 192.168.10.102: icmp_req=2 ttl=64 time=0.404 ms
64 bytes from 192.168.10.102: icmp_req=3 ttl=64 time=0.414 ms
64 bytes from 192.168.10.102: icmp_req=4 ttl=64 time=0.419 ms
64 bytes from 192.168.10.102: icmp_req=5 ttl=64 time=0.405 ms
64 bytes from 192.168.10.102: icmp_req=6 ttl=64 time=0.434 ms
64 bytes from 192.168.10.102: icmp_req=7 ttl=64 time=0.403 ms
64 bytes from 192.168.10.102: icmp_req=8 ttl=64 time=0.438 ms
64 bytes from 192.168.10.102: icmp_req=9 ttl=64 time=0.422 ms
64 bytes from 192.168.10.102: icmp_req=10 ttl=64 time=0.405 ms
--- 192.168.10.102 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 8999ms
rtt min/avg/max/mdev = 0.403/0.426/0.523/0.042 ms
ハブ経由のping
root@voyage-mpd:~# ping -c 10 192.168.11.102
PING 192.168.11.102 (192.168.11.102) 56(84) bytes of data.
64 bytes from 192.168.11.102: icmp_req=1 ttl=64 time=0.437 ms
64 bytes from 192.168.11.102: icmp_req=2 ttl=64 time=0.507 ms
64 bytes from 192.168.11.102: icmp_req=3 ttl=64 time=0.592 ms
64 bytes from 192.168.11.102: icmp_req=4 ttl=64 time=0.516 ms
64 bytes from 192.168.11.102: icmp_req=5 ttl=64 time=0.368 ms
64 bytes from 192.168.11.102: icmp_req=6 ttl=64 time=0.493 ms
64 bytes from 192.168.11.102: icmp_req=7 ttl=64 time=0.358 ms
64 bytes from 192.168.11.102: icmp_req=8 ttl=64 time=0.525 ms
64 bytes from 192.168.11.102: icmp_req=9 ttl=64 time=0.380 ms
64 bytes from 192.168.11.102: icmp_req=10 ttl=64 time=0.520 ms
--- 192.168.11.102 ping statistics ---
10 packets transmitted, 10 received, 0% packet loss, time 9000ms
rtt min/avg/max/mdev = 0.358/0.469/0.592/0.078 ms
pingでの統計値を比較すると直結はmdevが低いのが特徴のようです。eth1端子のLEDの点滅を見ていると、1~2秒おきにしか仕事してないです。
LAN直結は室内楽なんかに向いているのかなと思っていましたが、Michael Jacksonが凄いです。元が硬い音はカチコチになり、夏向きの快感ですね。Michaelと比較すると、Midnight Lady/Marvin Gayeはソフトで繊細ですね。硬くなりません。
それはさておき、eth0とeth1は半分ずつ仕事を分担している印象ですね。
root@voyage-mpd:~# cat /proc/interrupts
CPU0 CPU1
0: 123 1 local-APIC-edge timer
4: 54 1266 IO-APIC-edge serial
7: 11 0 IO-APIC-edge
8: 0 1 IO-APIC-edge rtc0
9: 0 0 IO-APIC-fasteoi acpi
17: 25925 26616876 IO-APIC-fasteoi ehci_hcd:usb1, ehci_hcd:usb2, ehci_hcd:usb3
18: 0 0 IO-APIC-fasteoi ohci_hcd:usb4, ohci_hcd:usb5, ohci_hcd:usb6, ohci_hcd:usb7
19: 28 2750 IO-APIC-fasteoi ahci
40: 14043 355945 PCI-MSI-edge eth0
41: 6849 265571 PCI-MSI-edge eth1
NMI: 0 0 Non-maskable interrupts
LOC: 1292744 1232111 Local timer interrupts
SPU: 0 0 Spurious interrupts
PMI: 0 0 Performance monitoring interrupts
IWI: 0 0 IRQ work interrupts
RTR: 0 0 APIC ICR read retries
RES: 27030441 305991 Rescheduling interrupts
CAL: 28 28 Function call interrupts
TLB: 517 591 TLB shootdowns
ERR: 11
MIS: 0
i2s-boticが霞むほど、音は変化しています。
ネットを介したマウントHDの場合と音は違います。
NEW ALIXの基板にはSATAのコネクタもあり恐らく
ここに音楽データー入りのHDを繋いで再生しても音は違うと
思います。
本体の負荷を減らして且つ音楽データーの通り道を
太く速くすると音が良くなる理屈なのでしょうか?
たとえば4コアCPU激速マシンにRAIDを組んで
そこに音楽データーを保存してmpdを介して音楽再生すれば
上記条件を満足すると思われますが?どんなもんでしょうか?
NEW ALIXの音の良さは何が大きな影響を及ぼしているのか?
知りたいところです。
syuさん
> 実体顕微鏡を入手されると世界が変わりますよ。
顕微鏡ですか・・・。確かに固定して使える虫眼鏡の大きいやつみたいなのがあるといいかもですね。
tinkerさん
> 買ったことは後悔無いですが、この先活躍することもそんなにないのかなって思います。
僕もOTTO II対応のため電動ドリルを買ったのですが、これは他の目的でも使えるだろうと言い訳して(^^;;;、注文しました。
> 断定的な発言を控えてるようにみえるyoさんが、良いと言われると本当に良いんだろうなと思えます。
「僕の環境(ait dac)では」という条件付きです。これは、twlさんのbuffaloでは、それほどの威力は発揮できなかったようなので、こう書きました。
http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=4495#4530" target="_blank">http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=4495#4530
多分、twlさんのお使いのbuffalo非同期型のdacではそれほどの効果が出にくいということだと思います。
tinkerさんのdacで効果があるかどうかを確認する方法は簡単です。送られてくるcombo384で効果があれば、Neutrinoはもっと効果があると判断できます。
悪魔の誘いですね(^^;;;。この書き方は(^^;;;(^^;;;。
ところで追加注文したOTTO IIが着きまして、接続してみました。
http://mimizukobo.sakura.ne.jp/upload/otto1.JPG" target="_blank">http://mimizukobo.sakura.ne.jp/upload/otto1.JPG
真上からとっているので、分かりにくいので、もう一枚。
http://mimizukobo.sakura.ne.jp/upload/otto2.JPG" target="_blank">http://mimizukobo.sakura.ne.jp/upload/otto2.JPG
OTTO IIを二階建てにしています。接続方法ですが、
まずuda3(p6)
OTTO II 一階 1B2 -> uda3 1番(3.3V)
OTTO II 一階 2B2 -> uda3 2番(BCK)
OTTO II 一階 3B2 -> uda3 3番(LRCK)
OTTO II 一階 4B2 -> uda3 4番(DATA)
OTTO II 一階 GND -> 未使用
OTTO II 二階 1B2 -> uda3 5番(MCK)
OTTO II 二階 2B2 -> uda3 6番(DSD/PCM)
OTTO II 二階 3B2 -> uda3 7番(GND)
OTTO II 二階 4B2 -> 未使用
OTTO II 二階 GND -> 未使用
次にait dacのi2s
OTTO II 一階 A1 -> ait dac i2s 1番(3.3V)
OTTO II 一階 A2 -> ait dac i2s 2番(BCK)
OTTO II 一階 A3 -> ait dac i2s 3番(LRCK)
OTTO II 一階 A4 -> ait dac i2s 4番(DATA)
OTTO II 一階 GND -> 未使用
OTTO II 二階 A1 -> ait dac i2s 5番(MCK)
OTTO II 二階 A2 -> ait dac i2s 6番(DSD/PCM)
OTTO II 二階 A3 -> ait dac i2s 7番(GND)
OTTO II 二階 A4 -> 未使用
OTTO II 二階 GND -> 未使用
最後にbbb(p9)
OTTO II 一階 1B1 -> bbb 3番(3.3V)
OTTO II 一階 2B1 -> bbb 31番(BCK)
OTTO II 一階 3B1 -> bbb 29番(LRCK)
OTTO II 一階 4B1 -> bbb 28番(DATA)
OTTO II 一階 GND -> 未使用
OTTO II 二階 1B1 -> bbb 25番(MCK) と Neutrinoクロックを二股接続
OTTO II 二階 2B1 -> 未使用
OTTO II 二階 3B1 -> bbb 46番(GND) と NeutrinoのGNDを二股接続
OTTO II 二階 4B1 -> 未使用
OTTO II 二階 GND -> 未使用
bbbのp9部分の写真です。
http://mimizukobo.sakura.ne.jp/upload/otto3.JPG" target="_blank">http://mimizukobo.sakura.ne.jp/upload/otto3.JPG
あとOTTO IIのVCCはbbb 5番(VDD 5V)と6番(VDD 5V)を供給。GNDは43番と44番を使用。ちなみに切り替えスイッチは最初の画面右上にあります(当然2極スイッチで連動させています)。また、bbbとNeutrinoの電源は箱の右外にあるスイッチでオンオフできるようにしてあります。
これで、NewAlix -> uda3 のDSD再生とbbb -> ait dac(i2s)のPCM再生を綺麗に切り替えられるようになりました。切り替え時のノイズもなく、良好です(同期のために5秒程度の切り替え中断時間は入りますが)。まだ仮設ですが、これでdsd再生とi2s接続pcm再生の平和な世界が取り戻せそうです。
しかし、そうは甘くないようですね。これだけ詳しく接続方法を書いたのには理由があります。
マニュアルの解説では上記接続方法でOTTO IIスイッチオフ(電源オフ)時は1B2から4B2になるはずですが(uda3側に接続される)、これが上手くいきません。
bbb、Neutrino、NewAlix、ait dac 全て電源が入っている状態では自由に切り替えることができるのですが、この状態でuda3側に切り替えスイッチを倒し、 Neutrino の電源を落とすと、LCDパネル表示のmckの表示が消え、再生もできなくなります。uda3で動作しているのであればクロックはuda3のものが使われているはずですが、なぜ、bbb側のNeutrinoの電源を落とすとuda3側のクロックが動作しなくなるのか不思議です。また、bbbの電源を落としても同じような状態となります。
まあ、OTTO IIの5vの電源を切り替え対象のbbbからとるというのは問題なのかなとは思いますが、何が原因なのですかね。ハード接続ベテランの皆様のアドバイスよろしくです。
ちなみにOTTO IIのマニュアルですが
http://www.twistedpearaudio.com/docs/community_docs/leonvb-Buffalo_III_DAC_Integration_Guide_V2.1.3.pdf" target="_blank">http://www.twistedpearaudio.com/docs/community_docs/leonvb-Buffalo_III_DAC_Integration_Guide_V2.1.3.pdf
の65ページ(Multiple I2S/DSD connections: OTTO-II)にあります。
という次第で、Phoeniciaさんの提案された銅箔シールドは先の話ですね。dsd再生中にbbbの電源を落とすことができれば、不要かもしれませんね。
> 多分、twlさんのお使いのbuffalo非同期型のdacではそれほどの効果が出にくいということだと思います。
お久しぶりです。yoさんのご指摘通りと考えます。あれから大分Neutrinoで聴いてみましたが、正直、他のクロックによるMCLK接続と比べ、BIIISEではNeutrinoの恩恵はありません。BIIISE側のCrystech製のオシレーターとES9018によるASRC機能が効果的なためと思われます。
おそらくMCLKを必要とするような、いってみればI2S接続としてはあまり標準的ではない(失礼)接続環境の場合にはNeutrinoのようなものが効果的なのでしょう。
これは書いていいかどうか迷っていたのですが、#4484のsyuさんのコメントにこんなのがあります。
--
※ PLL実験基板とI2SoverUSB(XMOS)のmclkをオシロで見てみましたが、たいした違いはないです。
こんなものでは何も判断できません。
老眼で光学ファインダでのMFなのでボケてますが・・
http://mimizukobo.sakura.ne.jp/upload/i2soverUAB%20vs%20PLL.jpg" target="_blank">http://mimizukobo.sakura.ne.jp/upload/i2soverUAB%20vs%20PLL.jpg
上がPLL、下がI2SoverUSBです。
--
現在、DSDのUSB-DDCによる再生を兼ねるために、上記のコメントでたいした違いがないとされたI2SoverUSBからのクロックをBBBのI2S用のクロックに使っているのですが、このクロックとNeutrinoの間には聴感上の違いはありませんでした。ついでにいうと、上記のコメントでオシロに表示されたMCLK用のクロック周波数はI2SoverUSB側が正確なのに比べ、PLL側で結構ずれていることを蛇足で付け加えておきます。
> tinkerさんのdacで効果があるかどうかを確認する方法は簡単です。送られてくるcombo384で効果があれば、Neutrinoはもっと効果があると判断できます。
Amaneroは本来USB-DDCであり、たまたまそこにクロックが搭載されているので使うのに便利という意味しかありません。I2S用にMCLKをちゃんといれるなら、Neutrinoでも何でもいいから、専用のクロックを使うべきでしょうね。
>悪魔の誘いですね(^^;;;。この書き方は(^^;;;(^^;;;。
先週末ですが、住所入れてボタン押す寸前で思いとどまりました。
今はオペアンプの検索ばかりやっています。
検索結果から思うに、乗っているオペアンプ(OPA604)の音質と私が好きなジャンルの相乗効果で、濃くなりすぎているみたいです。
とりあえず、私と相性良さそうな感じのものに交換してみます。
>接続してみました
蓋のネジがしまるのはいつ頃でしょうか?
twlさん
>上記のコメントでたいした違いがないとされたI2SoverUSBからのクロック
これは波形を見ても私にはようわからんという意味です。
私の環境での再生音は、I2SoverUSBのmclkを流用した方がPLL実験基板よりもずっと良好でした。
>周波数はI2SoverUSB側が正確なのに比べ、PLL側で結構ずれている
クロック波形はどちらも鈍っていますから、TDSで計測表示される周波数もある程度の幅で変動し、あまり正確ではないです。RUN/STOPボタンを押すタイミングごとに変わります。
neutrinoの波形はかなり綺麗に角のとれた正しく帯域制限された印象の矩形波です。周波数計測値は22.48~22.64MHz程度の幅で変動します。
上がI2SoverUSB(ローノイズ電源をP11-12に供給)下がneutrino(同じくローノイズ電源を供給)です。
http://mimizukobo.sakura.ne.jp/upload/syu-xmos-neutrino.jpg" target="_blank">http://mimizukobo.sakura.ne.jp/upload/syu-xmos-neutrino.jpg
負荷はTDSだけです。当然ですが実装状態では波形は変化します。
PLL基板とI2SoverUSBの音の差を波形から目視で見分けることは、私には困難だなあという程度の話です。立ち上がり立ち下がり時間なども計測できるんですが、これでもよく判りませんでした。かなりの骨董品TDSで帯域も60MHzなのですが、それでもきちんと使うことができればもっと情報はあるんだろうと思います。
それにしてもBIIISE良さそうですね。そろそろ手を出そうかなあ。こっちも悪魔の誘いだなあ^^;
yoさんよりも更に周回遅れで、BBBのI2S接続を試していますが音が出ません。yoさんと同じくIrBerry DACとの組合せでBotic1を試しています。
[root@beaglebone ~]# uname -a
Linux beaglebone 3.8.13-26-ARCH #1 SMP Mon Jun 9 20:16:10 MDT 2014 armv7l GNU/Linux
[root@beaglebone ~]# lsmod
Module Size Used by
snd_codec_es9018 2836 1
snd_davinci_botic 4782 1
arc4 1660 0
ecb 1867 0
md4 3187 0
sha256_generic 8751 1
hmac 2602 2
nls_utf8 1239 1
cifs 373368 2
autofs4 21976 2
[root@beaglebone ~]# aplay -l
**** ハードウェアデバイス PLAYBACK のリスト ****
カード 0: Botic [TPA Botic], デバイス 0: ES9018 es9018-hifi-0 []
サブデバイス: 0/1
サブデバイス #0: subdevice #0
これでMPDクライアントを動作させると問題なく再生動作を行っているように見えるのですが、音が出てきません。
DACとBBBの接続がまずいのかなと思いましたが、それだと上記のように認識はされませんよね?
ミュートが掛かっているのかなと思いalsamixerを起動してみても、「このカードには制御可能なミキサーがありません」と表示され何らかの設定ができそうにもありません。
ドライバーの作成については、No.4311に従って作りました。ただ、どこかミスっているのか起動に度にinsmodする必要がありましたので、設定ファイル(/etc/rc.local)を作りその中で設定しています。このファイルは、rc-local.serviceというもので実行されようにしています。長くなりますが、こんな内容です。
[root@beaglebone ~]# cat /etc/rc.local
#!/bin/sh
mkdir /tmp/mpd
touch /tmp/mpd/tag_cache
touch /tmp/mpd/state
touch /tmp/mpd/log
touch /tmp/mpd/sticker.sql
chmod -R 766 /tmp/mpd
chown -R mpd:audio /tmp/mpd
mount -t cifs //192.168.0.30/music /music -o username=xxxx,password=xxxx,uid=mpd,iocharset=utf8
insmod /root/botic_driver/source/snd-davinci-botic.ko
insmod /root/botic_driver/source/snd-codec-es9018.ko
exit 0
何かアドバイスがいただければ幸いです。別の情報が必要だということであれば、ご指示ください。
> neutrinoの波形はかなり綺麗に角のとれた正しく帯域制限された印象の矩形波です。周波数計測値は22.48~22.64MHz程度の幅で変動します。
波形の表示ありがとうございました。周波数については両者、ほぼ違いはありませんね。
Neutrinoの波形が整っているのに対し、I2SoverUSBでは、立ち上がり、立ち下がりにそれぞれ約0.5Vのovershootおよびundershootが目立ちます。これは観測用の信号線接続時にインピーダンスのミスマッチが生じているためと思われ、本来のクロック波形は正確には表現されていないようです。50-100Ωぐらいの抵抗をシリアルにつないで観測すると違う結果になるかもしれませんね。
>インピーダンスのミスマッチ
bbbのgpio端子はcmosでしょうから、入力モードで使用するときの入力インピーダンスは高いはずです。
http://image.itmedia.co.jp/l/im/edn/articles/1311/20/l_ST131120ST002.jpg" target="_blank">http://image.itmedia.co.jp/l/im/edn/articles/1311/20/l_ST131120ST002.jpg
ait dacのi2s入力端子も、そのままアイソレータですから、同じじゃないかな。調べてませんけど。
むしろ容量負荷にどのぐらい強いかとかで波形が変化しそうですね。
実装状態で低容量プローブで測るしかないけど、FETプローブとか持ってないです。
ddcのmclk端子のドライブ能力はどのくらいなんだろ。
neutrinoは50Ω受けで問題ないでしょうけど・・
でも、マッチングとったら音が変わるかもですね。チャンスを見てやってみます。ヒントありがとうございました。
3.8.13-21(ここまでは動きました)のμSDがとってあったはずなので、後で3.8.13-26にpacman -Syuして試してみますね。
でもtinkerさんの3.14.2-rt3で、botic1ドライバを使ってみたほうが早いかも。
>3.8.13-21(ここまでは動きました)のμSDがとってあったはずなので、後で3.8.13-26にpacman -Syuして試してみますね。
ありがとうございます。取りあえず音は出ました。ただし、別のDAC基板を使ってですが。tinkerさんの3.14.2-rt3は、余裕ができたら導入してみたいと思っています。
yoさん
上記のとおりなので、IrBerry DAC側の問題ということになりますが、さっぱり見当もつきません。
基板上のシルク印刷が「DIN」と「LRCK」が入れ替わっていることは承知していますので、入れ替えて接続はしています。
状況的には雑音も流れて来ませんので、DACがミュートを掛けているような感じもします。
えふさんもRaspberry-PI楽園の世界を捨て、bbb泥沼の世界に入っていらっしゃいましたか(^^;;;。
r-piで音は出ているので、bbb p9 の接続するピンは28番data、29番lrck、31番bckとGND(1番など)だけですので、ハードの問題で音が出ない可能性は低いと思います。r-piとの接続は切ってありますよね。
> DACとBBBの接続がまずいのかなと思いましたが、それだと上記のように認識はされませんよね?
これは誤解です。i2s接続というのは垂れ流し方式なので、ハードがつながっていなくても、GPIOが動けば、ドライバは動作し、ハード(この場合は音源)は存在するように認識されるようです。ただし、繰り返しになりますが、えふさんがハードの接続を間違えている可能性は低いでしょうから、ソフトの問題だと思います。
気になるのは毎回insmodでドライバを組み込まれているようですが、これは僕のやり方とは異なります。僕の場合はドライバインストール(ビルド)時に「depmod -a」し、毎回の起動時には
echo B、B-BONE-BOTIC1 > /sys/devices/bone_capemgr.*/slots
を実行して、ドライバを組み込んでいます。
このあたりはboticのreadmeに書かれている通りやった方がいいと思います。
3.8.13-26についてはsyuさんの実験待ちですかね。僕は3.8.13-24です。
別のDAC基板はどうな接続方法なのでしょうか。
> 蓋のネジがしまるのはいつ頃でしょうか?
蓋を開けたら、妖怪だらけ。どうにも平和な楽園に戻れなくなっていますね(^^;;;。
皆様
ところで、一つ進展がありました。二階3A/3B1/3B2(内容はそれぞれGND)を二階のGNDにつなぎなおしたら、「Neutrinoの電源を落とすとuda3側のクロックが動作しなくなる」という現象は発生しなくなりました。NeutrinoのGNDが何か問題を引き起こしていたのですかね。
OTTO IIのGNDですが、二階建て共用方式で両方同時に使う場合は、一階と二階のGNDを接続した方がいいのですかね。
届きました。ありがとうございます。
1時間位色々と聞いてみました。
低音のだぶつきは随分解消しました。高域は少し良くなったかなって感じです(逆に高域が良くなったので、だぶつきが気にならなくなったのかも)
combo384を使うことで、悩みの1/3~半分くらいは解消です。
Neutrinoを導入すればもう少し良くなるような気がしてきました。
ただ何と言うか、暑苦しさみたいな感じは消えないです。
これはクロック以前の好みの問題なので、こっちを何とかするのが先かなって思います。
出来ることからコツコツやってみます。
早速のご返答ありがとうございます。
>気になるのは毎回insmodでドライバを組み込まれているようですが、これは僕のやり方とは異なります。
- snip -
>このあたりはboticのreadmeに書かれている通りやった方がいいと思います。
全くもって、仰るとおりだと思います。私もどちらかというと、音が出ないことよりもこちらの方が問題だと思っています。なかなかうまくいかなくて余計なことをしてしまったかも知れません。現在の方法は、私なりに無い知恵を絞った苦肉の策でもあります。次回は、もう少し丁寧にやってみたいと思います。まあ、IrBerry DACはRasPiとでweb radio専用でも良いかなとも思っています(ちょっと弱気モード)
>別のDAC基板はどうな接続方法なのでしょうか。
こんな感じです。一応、Botic3で動かしている(つもり)のものです。各信号線をDACチップに直結させています。
http://mimizukobo.sakura.ne.jp/upload/BBB_b3.jpg" target="_blank">http://mimizukobo.sakura.ne.jp/upload/BBB_b3.jpg
topでのcpu使用率はBotic1の時とは明らかに異なり、yoさんが示された値とほぼ同じなので、Botic3で動いていると思われます。駄耳の私でも、確かにこちらの方が良いと思いました。
次は、3.14に挑戦してみます。
>悩みの1/3~半分くらいは解消
Neutrinoへの道が半分開いたようでご同慶の至りです;-p
>暑苦しさみたいな感じは消えない
それはまだクロックかもしれないけど、アンプかもしれません^^; スピーカかもしれません^^;;
音源が良くなるほど他を補う面が大ですが、他の欠点を曝け出す面も多少あって、両天秤ですから。
うちでは、さらさらサッパリすっきり系で、暑苦しさはたぶん無いです。ait mainもスッキリ・サラサラ鳴ってますが、パワー足りません。
botic3で動いているのですね。であれば、IrBerryのext-i2sを使い、同じ接続方法でつなげば、音はでませんか。
>アンプかもしれません^^; スピーカかもしれません^^;;
怖いことをサラッと・・・
メインのシステムは全然弄っていないので、それを基準にしています。
メインはそこそこ頑張ってますが、こっち(pc audio)のコンセプトはベットに寝っ転がって^^;です。
Marvin GayeのMidnight Ladyって曲があるのですが、スピード感無いシステムだと全然面白くないんです。
U3で良いとこまで追い込んで、こんな環境でもここまで行けるのかって思っていたのが、BBB+I2Sではこのありさまです。
>ait mainもスッキリ・サラサラ鳴ってますが、パワー足りません。
そうなんですね。アンプ遊びも大変そうですね^^;;
どこをどう聴きたいのかは、人知れずですものね。
うちではメインシステムが情無い事にすでに瓦解しています^^;
3.14.2-rt3の設定を変更したものをUPします。
次期VerのためのTESTバージョンです(今回はDeadlineのみです)
「前の方が良かった」とか「好みじゃない(できたら具体的に)」など何でも結構です。ご意見を頂けると良いかなと思ってます。
http://mimizukobo.sakura.ne.jp/upload/3.14.2-rt3-test1.tar" target="_blank">http://mimizukobo.sakura.ne.jp/upload/3.14.2-rt3-test1.tar
展開すると以下の2つのファイルが出てきます。
zImage
3.14.2-rt3.tar.gz(モジュール)
使用中のファイルはバックアップを行ってください。
その後、それぞれ現在のファイルと入れ替えてご使用ください。
※1
tar zxvf 3.14.2-rt3.tar.gz -C /lib/modules/ とすると/lib/modules/以下に展開されます。
※2
モジュールを置き換えないと起動時にboticドライバーを読み込まないようです。また初回起動時に正常にモジュールを読み込まない場合は depmod -a を実行し再起動してください。
※3
dtbsは以前のものをお使いください(GW頃UPしたもの)
変更点
・USB audioを使用できるようにしました
・hrtimerをビルトインに変更しました
・必要なさそうなモジュールなど、8割程度削除しました
3.14.2-rt3-test1.tar入れてみましたが、私の環境ではcifs周りが変です。音を聴くところまでたどり着けませんでした。
以下は関連している部分。
[ OK ] Started D-Bus System Message Bus.
[ INFO ] Network Service is not active.
[DEPEND] Dependency failed for Wait for Network to be Configured.
[ OK ] Reached target Network is Online.
[ OK ] Started Restore Sound Card State.
[ OK ] Started Entropy Harvesting Daemon.
[ OK ] Started Login Service.
[ 6.095462] omap_rtc 44e3e000.rtc: rtc core: registered 44e3e000.rtc as rtc0
[ 6.195992] 44e3e000.rtc: already running
[ 6.473155] random: nonblocking pool is initialized
[ 7.003732] omap-aes 53500000.aes: OMAP AES hw accel rev: 3.2
[ 7.167560] omap-sham 53100000.sham: hw accel on OMAP rev 4.3
[ 7.540540] botic_hw_params@175
[ 7.556233] snd_davinci_botic: enabling 44100fs modes with external clock
[ 7.617307] snd_davinci_botic: enabling 48000fs modes with external clock
[ 7.665464] davinci_botic snd_davinci_botic.11: es9018-hifi <-> 48038000.mcasp mapping ok
[ 7.795792] snd_davinci_botic: supported playback.rates=0x1efc
[ TIME ] Timed out waiting for device sys-subsystem-net-devices-eth0.device.
[DEPEND] Dependency failed for Network connectivity (eth0).
[DEPEND] Dependency failed for Automatic wired network connec...etctl profiles.
[ TIME ] Timed out waiting for device dev-ttyO0.device.
[DEPEND] Dependency failed for Serial Getty on ttyO0.
[ OK ] Reached target Network.
Starting OpenSSH Daemon...
[ OK ] Started OpenSSH Daemon.
Starting Music Player Daemon...
[ OK ] Started Music Player Daemon.
Mounting /music...
[ 93.683533] FS-Cache: Loaded
[ 93.770399] FS-Cache: Netfs 'cifs' registered for caching
[ 93.791240] CIFS VFS: Error connecting to socket. Aborting operation.
[ 93.811284] CIFS VFS: cifs_mount failed w/return code = -101
[FAILED] Failed to mount /music.
See 'systemctl status music.mount' for details.
[DEPEND] Dependency failed for Remote File Systems.
[DEPEND] Dependency failed for /var/lib/mpd/music.
Starting Trigger Flushing of Journal to Persistent Storage...
[ 94.042682] systemd-journald[153]: Received request to flush runtime journal from PID 1
[ OK ] Started Trigger Flushing of Journal to Persistent Storage.
Starting Permit User Sessions...
[ OK ] Started Permit User Sessions.
Starting Getty on tty1...
[ OK ] Started Getty on tty1.
[ OK ] Reached target Login Prompts.
[ OK ] Reached target Multi-User System.
[ OK ] Reached target Graphical Interface.
[ 919.764570] CIFS VFS: Error connecting to socket. Aborting operation.
[ 919.773066] CIFS VFS: cifs_mount failed w/return code = -101
Welcome to emergency mode! After logging in, type "journalctl -xGive root password for maintenance
(or press Control-D to continue):
>私の環境ではcifs周りが変です
mpd-0.18.9を使い出した頃からnfsに変えてたので、cifsの検証はしていませんでした。
cifsでやってみたところ、こちらの環境では問題なくmountできmpdも問題なく動いています。
今回cifsの部分は触っていないのですが、Networking supportの部分は削除した部分もあるので、それが影響しているかもしれないです。
また CIFS VFS: Error connecting to socket. Aborting operation で検索をかけるとcode = -101についていろいろ出て来るようです。
上記メッセージは、cifsでmountしようとした時点でnetworkが確立していない時に出るようです。
メッセージどおりなら、systemd側の問題の可能性もあります。
今日はちょっとねむたいので、また明日調べてみます。
こちらはボチボチやってみますのでご心配なく。
とりあえずnfsにしてみます。
CIFS supportをビルトインに変更してみました。
こちらではどうでしょうか。
http://mimizukobo.sakura.ne.jp/upload/zImage-CIFS_support" target="_blank">http://mimizukobo.sakura.ne.jp/upload/zImage-CIFS_support
現在、Botic3は3.14.4-rt4の自前カーネルで動かしていますが、PCMのI2S再生に関しては、tinkerさんのカーネルと違いはありませんでした。というか、I2S再生についてはカーネルは無色な程上等というのが私の考えなので、違いがないことで安心しています。
ただし、個人的にはひとつ問題があります。これはtinkerさんのカーネルでも自前のカーネルでも同じなのですが、DSD再生を目的に使用している私のXMOS系USB-DDCはBotic3の環境では認識されなくなります。
通常のam335x-boneblack.dtbでbootすると、私のDDCは以下のようにすんなり認識されるのですが、
root@volumio:~# uname -a
Linux volumio 3.14.2-rt3 #3 PREEMPT RT Thu Jun 19 13:50:55 JST 2014 armv7l GNU/Linux
root@volumio:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: X20 [XMOS USB Audio 2.0], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
--
dmesg:
[ 23.846630] usb 2-1.1: Product: XMOS USB Audio 2.0
[ 23.851674] usb 2-1.1: Manufacturer: XMOS
[ 23.855969] usb 2-1.1: SerialNumber: JLsounds 01
[ 24.555970] usbcore: registered new interface driver snd-usb-audio
Botic3の環境だと、
root@volumio:~# uname -a
Linux volumio 3.14.2-rt3 #3 PREEMPT RT Thu Jun 19 13:50:55 JST 2014 armv7l GNU/Linux
root@volumio:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Botic [TPA Botic], device 0: ES9018 es9018-hifi-0 []
Subdevices: 0/1
Subdevice #0: subdevice #0
と、Botic3は認識されても上記のXMOS DDCは認識されなくなります。dmesgでは
[ 23.901703] usb 2-1.1: Product: XMOS USB Audio 2.0
[ 23.906741] usb 2-1.1: Manufacturer: XMOS
[ 23.921196] usb 2-1.1: SerialNumber: JLsounds 01
[ 24.114928] cannot find the slot for index 0 (range 0-0), error: -16
[ 24.131908] cannot create card instance 0
[ 24.136176] snd-usb-audio: probe of 2-1.1:1.0 failed with error -5
[ 24.146061] usbcore: registered new interface driver snd-usb-audio
となり、どうもindex 0用のslotが既に占拠されているような印象となります。
不思議なことにDDCをAmaneroに変更すると両方認識されますが、アイソレーターなしのAmaneroでのDSD再生音はノイズが目立ち、使う気になれません。
ということで、Botic3が悪さをしているのかどうか不明なのですが、これが3.8.13のBotic3環境だと、Boticも上記のXMOS系USB-DDCも両方すんなり認識されるという、不可思議な状態となります。ただしdmesgではUSB-DDCの認識のされ方は3.14系とは異なります。
[ 24.031311] usb 1-1.1: Product: XMOS USB Audio 2.0
[ 24.036329] usb 1-1.1: Manufacturer: XMOS
[ 24.040616] usb 1-1.1: SerialNumber: JLsounds 01
[ 24.049261] usb 1-1.1: usb_probe_device
[ 24.049287] usb 1-1.1: configuration #1 chosen from 2 choices
[ 24.049402] usb 1-1.1: adding 1-1.1:1.0 (config #1, interface 0)
[ 24.049827] usb 1-1.1: adding 1-1.1:1.1 (config #1, interface 1)
[ 24.051181] hub 1-1:1.0: state 7 ports 4 chg 0000 evt 0002
[ 24.093231] snd-usb-audio 1-1.1:1.0: usb_probe_interface
[ 24.093266] snd-usb-audio 1-1.1:1.0: usb_probe_interface - got id
[ 24.549750] usbcore: registered new interface driver snd-usb-audio
あれこれ調べましたが、この謎は解きがたいようです。
脱線してしまいましたが、アップロードされたカーネルには問題がないだろうということをお知らせしました。
3.14.2-rt3-test1を試させていただきました。比較対象は同じArchの3.8.13-26で、mpd 0.18.11及びBotic3は共通です。
>ご意見を頂けると良いかなと思ってます。
どちらを取るかと訊かれたらtinkerさんの方と応えるでしょうが、もうここら辺りのレベルになると敢えて何かの違いを見つけ出そうとすると「重箱の隅突き」的表現になってしまうな気がします。お役に立たない評価ですみません。
それとcifsについては、当方でも問題ありません。
※システム日付が1970年1月1日となってしまうのですが、どうしたら更正できるんでしたっけ?(^^;
未だ森の中です~沼の中かな~
とりあえずtest版は動いているようで良かったです。
cifsの件は、大丈夫そうですね。
新しいRTパッチもそろそろ出てもいい頃なんですが、メンテナーも話題についていけずにメールくれとか言われているようなので、もう少し時間がかかるのかもしれないです。
えふさん
>※システム日付が1970年1月1日となってしまうのですが、どうしたら更正できるんでしたっけ?(^^;
ntpとかntpdate(最近のArchには無いらしいですね)とかがインストールされていないか正常に動いてないんだと思います。
いかなる時にも1秒でも狂ってちゃ嫌ならntpを、もう少しラフでもいいならcronでntpdate回せば良いと思います。
私は1分位狂ってても気にならない派ですm(_ _)m
初歩的な質問ですみませんでした。ntpdateしっかり有りました(^^;早速、起動時の実行ファイルに記述を追加しました。
>私は1分位狂ってても気にならない派です
私はどちらかというと、それが気になる派です(笑)
twlです。#4664で私のBotic3の環境ではBBBに同時接続しているUSB-DDCが認識されなくなると書きましたが、その後の経過報告です。
書き込んだ後でArchlinuxの環境で自分がビルドした3.14.4-rt4カーネルを試したら、Debian系でのBotic3環境では認識されなかったUSB-DDCが問題なく認識されました。そこで、Runeaudioの環境を3.14.4-1-ARCHのカーネルにアップデートしてみたら、上記同様Botic3、USB-DDC両者は問題なく認識されました。
[root@runeaudio ~]# uname -a
Linux runeaudio 3.14.4-1-ARCH #1 SMP Sun May 18 18:32:31 MDT 2014 armv7l GNU/Linux
[root@runeaudio ~]# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: X20 [XMOS USB Audio 2.0], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 2: Botic [TPA Botic], device 0: ES9018 es9018-hifi-0 []
Subdevices: 0/1
Subdevice #0: subdevice #0
理由は不明ですがBotic3は上記のごとくcard 2として認識されています。ともかく3.8.13でのBotic3同様、USB-DDCによるDSD再生とBotic3によるPCM再生の切り替えはOtto-II一台ですむようになり、なんとなくBBBでI2S接続を始めた初期の状態に戻りました。
Runeaudioにおける3.14.4-1-ARCHでのDSD再生は極めて快適だったので、このカーネルの.configで3.14.4のrtカーネルを再度ビルドしようと思ったのですが、Nelsonさんのところを覗いたら3.16のrcが出ていたので、ついふらふらと上記の.configで3.16rcをビルドしてしまいました。動くのかなと思いながら試しましたら、あっさり起動、Botic3もUSB-DDCも問題なく認識されました。
[root@runeaudio ~]# uname -a
Linux runeaudio 3.16.0-rc2_0623-armv7-devel-r26 #2 SMP PREEMPT Mon Jun 23 20:25:31 JST 2014 armv7l GNU/Linux
[root@runeaudio ~]# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: X20 [XMOS USB Audio 2.0], device 0: USB Audio [USB Audio]
Subdevices: 0/1
Subdevice #0: subdevice #0
card 2: Botic [TPA Botic], device 0: ES9018 es9018-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
この環境ではUSB-DDCによるDSD、PCMの再生にはまったく問題がないのですが、Botic3でのPCM再生時には過度な入力時のひずみのようなものが右チャンネルを中心に目立ち、聴くに耐えないような状態となりました。I2S接続でこれだけひどい音を聴いたのは初めてでした。理由はこれから考えようかという状態ですが、以上、報告でした。長文お許し下さい。
既にご覧になっていると思いますが、昨日 http://bbb.ieero.com/" target="_blank">http://bbb.ieero.com/ が更新されました。
DSD再生可能な bbb-demo-botic-v1-2gb.img が公開されています。
早速試しましたが、ピンマッピングを1か所変更し、testファイルのPCMだけですが、とりあえず音は出ました。
/data/remoteにマウントした自前の曲データ(wav)は、エラーが出て、まだ再生できていません。
P9_28 - C12/2 - mcasp0_axr2 (data1) - SPI1_CS0 > P9_30 - D12/0 - mcasp0_axr0 (data0) - SPI1_D1
web mpcを使用するように記載がありますが、mpd.confを3か所変更すればGMPCから演奏できました。
# user "mpd"
# bind_to_address "localhost"
port "6600"
まだbotic1ですが、uEnv.txtを書き換えればbotic3になるそうです。(未実証)
http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver.html#post3972897" target="_blank">http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver.html#post3972897
dsdはまだ試していません。
P9_26 - D16/7 - uart1_rxd (I2S/DSD format switch)- GPIO0_14
これを接続するだけで良さそうです。
16/44.1再生中のtopはbotic1動作で負荷は重たいですね。
top - 23:03:19 up 15 min, 1 user, load average: 0.68, 0.52, 0.31
Tasks: 81 total, 1 running, 80 sleeping, 0 stopped, 0 zombie
%Cpu(s): 97.3 us, 1.0 sy, 0.0 ni, 1.7 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 505584 total, 88036 used, 417548 free, 4964 buffers
KiB Swap: 0 total, 0 used, 0 free, 43768 cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
860 root 20 0 75864 14m 7796 S 97.6 3.0 6:42.97 mpd
622 mpd 20 0 2504 1412 1276 S 0.7 0.3 0:00.98 ympd
924 root 20 0 4172 1832 1460 R 0.7 0.4 0:00.35 top
912 root 20 0 8188 3776 3192 S 0.3 0.7 0:00.80 sshd
1 root 20 0 5800 4008 2300 S 0.0 0.8 0:01.33 systemd
tinkerさんのrtカーネル、
[ 919.764570] CIFS VFS: Error connecting to socket. Aborting operation.
[ 919.773066] CIFS VFS: cifs_mount failed w/return code = -101
残念ながらこの問題はまだ未解決のままです。
新しいboticが出たんですね。
loopにmountして中だけ見てみました。
やっとraspi並みの実装になったようですね。
これからはヘッダー作成に苦労しなくて済みそうです。
alsaにもpatchを当てないといけないんですね。
仕方ないんでしょうけど、apt-get upgrade好きな人はholdしてからupgradeですかね。
syuさん
>残念ながらこの問題はまだ未解決のままです
原因が分かんないんですm(_ _)m
次のtest(あるのかな)でnetwork関係を元に戻してみます。
uEnv.txtを書き換えて、botic3で音が出ました。しかし、testフォルダのmp3,flacだけが再生可能で、自前のwavファイルは再生できません。test44k1 16b(flac)は音が割れます。test 48kとtest 96kは再生可能でした。
dsdも結線してみましたが、dffのtest dsd128、test dsd64では頭の4秒間だけ再生され以後スキップします。再生中はdsd128で5.6MHz、dsd64で2.8MHzと表示され、mckも45.15MHzと正しく表示されます。手持ちのdfsファイルは演奏できませんでした。
まだ実用には遠く、音も評価できませんが、今後に期待。
tinkerさん
>沼から這い上がり樹海も抜けましたヽ(^o^)丿
ひとまず被害が少なくてよかったです。新boticでのtest版もよろしく。
Starting kernel ...
[ 0.187694] omap_init_mbox: hwmod doesn't have valid attrs
[ 0.305648] Initramfs unpacking failed: junk in compressed archive
[ 0.775786] musb-hdrc musb-hdrc.0.auto: Failed to request rx1.
[ 0.782148] musb-hdrc musb-hdrc.0.auto: musb_init_controller failed with status -517
[ 0.793651] musb-hdrc musb-hdrc.1.auto: Failed to request rx1.
[ 0.799948] musb-hdrc musb-hdrc.1.auto: musb_init_controller failed with status -517
[ 0.917343] davinci-botic snd_soc_botic.7: ASoC: CODEC (null) not registered
[ 0.924833] davinci-botic snd_soc_botic.7: snd_soc_register_card failed (-517)
[ 0.937838] cpu cpu0: cpu0 regulator not ready, retry
[ 0.948780] slave hdmi.6: could not get i2c
[ 1.008132] tda998x 0-0070: setpage 000a err -121
[ 1.066937] tda998x 0-0070: setpage 000a err -121
[ 1.126920] tda998x 0-0070: setpage 0001 err -121
[ 1.131911] tda998x 0-0070: setpage 0001 err -121
[ 1.136925] tda998x 0-0070: setpage 0200 err -121
[ 1.141904] tda998x 0-0070: setpage 0201 err -121
[ 1.146904] tda998x 0-0070: setpage 0202 err -121
[ 1.151882] tda998x 0-0070: setpage 0203 err -121
[ 1.156858] tda998x 0-0070: setpage 0204 err -121
[ 1.161838] tda998x 0-0070: setpage 0205 err -121
[ 1.166852] tda998x 0-0070: setpage 020e err -121
[ 1.171845] tda998x 0-0070: setpage 0211 err -121
[ 1.176842] tda998x 0-0070: setpage 0207 err -121
[ 1.181834] tda998x 0-0070: setpage 0208 err -121
[ 1.186842] tda998x 0-0070: setpage 0209 err -121
[ 1.191836] tda998x 0-0070: setpage 020a err -121
[ 1.196863] tda998x 0-0070: setpage 0206 err -121
[ 1.201862] tda998x 0-0070: setpage 0027 err -121
[ 1.206863] tda998x 0-0070: setpage 0000 err -121
[ 1.211850] tda998x 0-0070: setpage 0002 err -121
[ 1.217042] tilcdc 4830e000.lcdc: no encoders/connectors found
[ 1.223142] tilcdc 4830e000.lcdc: failed to initialize mode setting
systemd-fsck[80]: rootfs: clean, 21467/924768 files, 157786/3813120 blocks
[ 6.528579] libphy: PHY 4a101000.mdio:01 not found
[ 6.533621] net eth0: phy 4a101000.mdio:01 not found on slave 1
[ 16.150533] CIFS VFS: Send error in SessSetup = -13
[ 16.156173] CIFS VFS: cifs_mount failed w/return code = -13
Debian GNU/Linux 7 bbb ttyO0
default username:password are [debian:botic] and [root:botic]
The IP Address for eth0 is: 192.168.11.7
The IP Address for usb0 is: 192.168.7.2
bbb login:
>ひとまず被害が少なくてよかったです
一時は撤退しようかと思ってました。
これが最後と、お気楽オーディオさんのシンプルIV(DUAL OPA版)に変えてみました。
これを選んだのは、今のが駄目だからということではなくて以下の理由からです。
・オペアンプは3個なので(美武さんのは12個)、数種類試しても最終的には安く済みそう
・1回路用のオペアンプで好みに合いそうな物もあるが、使いこなしが難しそう(LT1115とかLT1028など)
・私でも作れそう(ディスクリのも作れそうだけど大変そう)
今はOP275GP(200円/個)をつけて概ね満足しています。
OPA604の音が私には全く合わなかったようです。
MUSES8920も買ってみたので来週くらいに交換してみようと思ってます。
>新boticでのtest版もよろしく
今度のDACはDSDも聞けるらしいので、対応してないからって言い訳が出来そうにないなぁ・・・
そうだ!腰が痛くて配線変えるのが億劫ってことにしよう(^_^;)
>[ 919.764570] CIFS VFS: Error connecting to socket. Aborting operation.
>[ 919.773066] CIFS VFS: cifs_mount failed w/return code = -101
何か直近のコメントはまた別のエラーコードのようですが(^^;
このエラーコードは、以前当方でもよく出ていました。syuさんの場合とは全く関係ない話かも知れませんし、釈迦に説法なことでしょうが参考までに。
このエラー、やはりネットワーク関連が処理完結する前にCIFSでマウントしようとしてマウント失敗(当然ですが)しているとしか云いようがないと思います。Archでこのエラーに遭遇しましたので、systemdでネットワーク処理の後にマウントするように調整しましたがそれでもエラーの解消とはなりませんでした。
解消したのは、DHCPから固定IPへ変更したことです。たったこれだけです。でも、syuさんの方では既にいろいろやられておられるでしょうから、やはり関係ないですよね。しかも、エラー出まくりで音が出ている?ということは、それでもマウントは出来ている?何かようわからんですね(^^;
ありがとうございます。4694の件は新しいbbb-demo-botic-v1-2gb.imgで発生したので、結局これはサーバ側の設定が悪いんだろうと思います。(cu-boxをarch linuxでサーバにしています)
新boticでもnfsに接続を変えたらエラーが出なくなりました。
おまけにnfsだとサーバからのpcmもdsdもほぼ正常に再生出来ました。dsdはたまに「ボッ」とノイズが出ますが、ほぼ中断せずに音が出ています。音質は???です。
bbb-demo-botic-v1-2gb.imgの設定を眺めています。
以下の部分はどうされていますか?
PCMとDSDの切り替えは、syuさんが書かれているようにP9_28のようですが、以下の設定は何処にどのように書けばいいのでしょうか?
dtsを書き換えれば良いのですが、uEnv.txtで対応出来れば、そのほうが楽です。
Examples:
0 ... DSD playback is disabled
1 ... DSD playback is enabled (default)
+2 ... invert polarity of format selection switch GPIO0_14
ext-masterclkの部分はuEnv.txtに以下のようになっているようなので、同様にDSDの切り替えもuEnv.txtで設定できるのでしょうか?
##Disable usage of external Botic clocks
optargs=coherent_pool=1M snd_soc_botic.ext_masterclk=0
am335x-boneblack-cape-bone-botic.dtsでは、以下のようになっているので、snd_soc_botic.dsd_format=2とでもすればいいのかなぁ・・・
ext-masterclk-switch = <&gpio0 15 0>;
dsd-format-switch = <&gpio0 14 0>;
私の場合は、 1 ... DSD playback is enabled (default) で動作しましたので、そのまま使っています。どこに書くかの解説はまだ見かけません。ここは人柱でお願いします。
PCMも自前のファイルが聴ける状態にはなりましたが、まだ好みの音は出ていません。せめてPCMがまともに鳴れば、DSDの音が悪くても当面使えるんですが、PCMまでダメになってしまったのはなぜかなあ。
設定で何とかなると良いんですが、新boticとは別に以前のv4の環境を残しておく必要がまだありますね。
>ここは人柱でお願いします
P9_26で制御可能であれば、私の制御基板は線1本接続するだけでPCMとDSDを自動で切り替えてくれるはずなので、検証はしてみたいと思います。
ただ、今のところ聞きたいDSDの音源は出ていないので、後ろ向きで頑張ります。
>PCMまでダメになってしまったのはなぜかなあ
3.15.1にパッチを当ててみました。
ドライバーはずいぶん変わってるようです。DSDの分が増えただけかもしれないですが。
ALSAとかMPDにもパッチが当てられているので、そっちの問題もあるのかもしれませんね。
もう一つ質問
以前moctさんにもお聞きしたのですが、アルバムや曲を切り替えるときのノイズに悩んでいます(PCMとDSDを切り替える時にもノイズが出るらしい)
お聞きしたいのは、muteを制御する信号をどこかに割りつけました(または予定)などの情報がフォーラムで出ていないでしょうか?
<感想>
また沼に入るのはちょっと・・・kernel作り直せば少しは良くなる?
3.16リリースは1.5~2ヶ月先なので、それまでぼちぼち試してみます。
+2 ... invert polarity of format selection switch GPIO0_14については、snd_soc_botic.dsd_format_switch=2と書くみたいですね。見落としてました。
私の環境に限定ですが、nasの/etc/exportsでfsid=0の指定を消してnfs4をやめたらpcmはそこそこになりました。この状態で、new alixでのvoyage mpd(default)+uda2とほぼ同じか、わずかに良い程度。また、sdカードにデータを置くよりもnfs経由の方が音はマシみたいです。(追記:emmcの方がsdより読み込みが倍ほど早いそうなので良いかもですが、仮に良くても実用にはなりませんね)
dsdは相変わらずノイズが出たり瞬断したりですが、おまけに片チャンネルしか音が出ていなかったです。
snd_soc_davinci.sermaskでの記載は
Examples:
-1 ... 8ch I2S output or 4ch DSD output (default)
となっていて、よく判りません。
そこで、 http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver.html" target="_blank">http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver.html に何か新情報はと見に行きましたら、twlさんとよく似た名前のtwlukeさんが既に質問して下さっていました。twlukeさん、ありがとうございます。
http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-2.html#post3974402" target="_blank">http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-2.html#post3974402
従来のddcで標準的だったlrckをdsd片チャンネル分のdataに切り替える方式がbbbでは使えないので、新boticでは他のピンにマッピングしてあるのだそうです。それで、
1 ... 2ch I2S output or 1ch DSD output on mcasp0_axr0 pin(P9_30)
2 ... 2ch I2S output or 1ch DSD output on mcasp0_axr1 pin(P9_41)
4 ... 2ch I2S output or 1ch DSD output on mcasp0_axr2 pin (old default)(P9_28)
8 ... 2ch I2S output or 1ch DSD output on mcasp0_axr3 pin(P9_27)
3 ... 4ch I2S output or 2ch DSD output on mcasp0_axr0(P9_30) and mcasp0_axr1(P9_41) pins
12 .. 4ch I2S output or 2ch DSD output on mcasp0_axr2(P9_28) and mcasp0_axr3(P9_27) pins
などが選択可能にしてあったんですね。てことは、ここにも切り替スイッチが必要です。いよいよ沼は深まっていきますね^^;;
私は沼上等なヒトなので、もう少しぬかるみを進んでみます。
>muteを制御する信号
気付きませんでしたが、一番下にこんな記載が・・
Planed features for future versions
I2C control for ES9018 DAC (volume, filters, automute, ...)
SPDIF output as an alternative to I2S or DSD
slave mode (bit clock and l-r clock is generated by DAC chip)
yoさん
スレ違いですが、new alix入手しました。ddc経由でこの音が出るとは、素性抜群ですね。でもこれでi2sやるとなると、大変そうです。
> スレ違いですが、new alix入手しました。
ようこそNewAlix倶楽部へ。なかなかいいでしょ。
> でもこれでi2sやるとなると、大変そうです。
ここに
http://www.pcengines.ch/apu1c.htm" target="_blank">http://www.pcengines.ch/apu1c.htm
http://www.pcengines.ch/pdf/apu1.pdf" target="_blank">http://www.pcengines.ch/pdf/apu1.pdf
PC Enginesのハードウェアマニュアルがあり、GPIOの説明もありますが、簡単な内容で、詳細は問い合わせてくれとありますね。ドライバを開発する覚悟があれば、出来るのかもしれませんが、ちょっと大変そうです。
まあ、NewAlixの特長は安定性ですから、無理に頑張ることはないかなと思います。
arch linuxとか、tiny-core linuxも動かすことが出来まして、カーネルを変えるより、こっちの方が音は変わります。tiny-coreはなかなか面白いのですが、システムの作成は一筋縄ではいかないので、ちょっと大変です。そのうちサイトの方に書き込むつもりです。
スレッドに戻って、dsd再生は手強そうですね。ハード仕様からいうと、bbbよりr-piの方が簡単に出来るということなのですかね。
>私は沼上等なヒトなので、もう少しぬかるみを進んでみます
土入れて歩きやすくしておいて下さい。
>I2C control for ES9018 DAC (volume, filters, automute, ...)
9018以外で使えるか分かりませんが、何らかの方法が提供されるといいですね。
> そこで、 http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver.html" target="_blank">http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver.html に何か新情報はと見に行きましたら、twlさんとよく似た名前のtwlukeさんが既に質問して下さっていました。
隠す意味もないでしょうから、よく似た名前の本人そのものでございます。(^^; Botic capeのドライバ-がそろそろ本格的になって来たので、BIII/BIIISEユーザーの集まる本家での議論が必要かと思い、ちょっとあちらの方に出張しておりました。
結論からいうと、今回の新Boticドライバーのdefault設定(snd_soc_davinci.sermask=-1)では以下の結線が標準となります。
P9_25: MCLK
P9_29: LRCK
P9_31: BCK
P9_30: DATA0
P9_41: DATA1
P9_26: I2S/DSD switch
このうちP9_26はとりあえず無視、P9_25とP9_30はお約束の配線ですので、これは素直に結線します。PCM再生にはP9_29のLRCKをDAC側のLRCKに、DSD再生にはP9_41のDATA1をDAC側のLRCKに接続する必要があり、配線の切り替えが必要となります。この切り替えにP9_26のGPIOスイッチが必要とのコメントをmiero氏からもらいましたが、スイッチまわりのVccやGND側につなげるR値に自信がなかったので、とりあえず、P9_29とP9_41からの信号線を切り替えスイッチにそれぞれハンダ付けして物理的に切り替えることでDAC側のLRCKに接続しています。BBBのLRCKはP9_29に固定されているのですね、miero氏から教えてもらいました。
従来のピン配置で使いたい場合にはsnd_soc_davinci.sermask=12とする必要があります。なお私の場合、上段の設定ですとDSD再生の場合左右のチャンネルが逆になります。
次にkernel optionの件ですが、基本的には/boot/uboot/uEnv.txtに
optargs=coherent_pool=1M snd_soc_botic.ext_masterclk=3
みたいな感じでパラメーターを設定してやれば再起動後にそれが反映されました。これは既にtinkerさんがこうなんじゃないかと指摘されていますよね。ただし、欲張って他のパラメーターの指定も書き込むとうまく反映されないようです。私も書式については詳しくないので、間違っているかもしれませんが。
ただ、再起動せずにクロック切り替えやDSD/I2Sの再生選択および再生チャンネルに関するGPIOの選択や設定を行うには以下の方法が一部有効でした。
echo x | sudo tee > /sys/module/snd_soc_davinci_mcasp/parameters/sermask
echo y | sudo tee > /sys/module/snd_soc_botic/parameters/ext_masterclk
echo z | sudo tee > /sys/module/snd_soc_botic/parameters/dsd_format_switch
x, y, zについてはhttp://bbb.ieero.com/" target="_blank">http://bbb.ieero.com/を参考に、設定したいパラメーターの数値を入れて下さい。ただし 一度再生用アプリを停止しないと設定は反映されません。また、上記のすべてが再起動なしで設定できるかどうか、再現性を含めた詳しい実験はしていないことをお断りしておきます。
#いずれも書き込み禁止のファイルなのですが、ネット検索したらsudo teeの追加で書き込みできることを学習しました。
最後に新しいBoticドライバーを使った試聴の印象ですが、PCMもDSDも素晴らしい再生音です。個人的にはもうBBBにUSB-DDCはいらないだろうと思い、昨日BBBから外してしまいました。Botic capeの登場を待つだけという感じです。
PCM関係のファイルはすべてMacのALAC形式で保存しているので今回のドライバーのチェックには使えず、改めて日頃聞き慣れているCDファイルをいくつかwav形式で44.1, 48および96K形式に変換して比較してみましたが、すべて満足のいく再生音を得る事ができました。ただし、miero氏もコメントしているように現時点では44.1Kのファイルは48Kにリサンプルされます。
DSD関係はDSD64、DSD128ともに見事に再生されました。古いLPの録音が多いのですが、従来のUSB-DDCでの再生と異なり、聞こえるノイズはLP原盤に残されたスクラッチノイズのみ、まさにDSD経由でアナログの世界に戻ることができたという実感です。
長くなりましたが、とりあえずご報告でした。
twl
>似た名前の本人そのもの
T.W.Lukeさんだったんですね^^;;
>新しいBoticドライバーを使った試聴の印象ですが、PCMもDSDも素晴らしい再生音
ここが問題で、私の環境では前述の通り上手くいきません。DACを選ぶんでしょうか。リファレンスとしてもBIII必要かもですね。ただし、タイミングとしてはES9018K2Mが出たばかりなのが気になる点です。
追記:出たばかりじゃなくて2013年でした。
>ドライバを開発する覚悟があれば、出来るのかも
待ってればどこかの空から落っこちてくるものと楽観しています^^;
dsdはdsd64に関してはまともな音が出る状態になりました。dsd128は周期的なノイズが入り、ときどき瞬断が起きますが、音は良好です。pcmは24/96までは良好な音です。24/176は周期的にノイズが混入しますが、音は良好です。
ここまでは /etc/mpd.confをgmpcが使えるように3か所書き換えた状態です。いじったのはlocaleの設定でja.jp_UTF-8を追加したこと、timezoneを設定したことの2点と、dsd再生時にP9_27を抜いてP9_41に差し替えただけです。
GMPCを使えるようにmpd.confを勝手に変えたことが問題かもしれないと思い、書き換えた所を元に戻し、web mpcが使えるようにしました。これは正解でした。miero氏の意図を安易に無視したのが悪かったようで、web mpcで音は大幅に改善します。pcmの24/96までとdsd64は文句のない良質な音。dsd128や24/176のノイズも頻度が大幅に下がりました。
これで、通常の音楽を聴くには全く問題がなくなり、音質的には過去最高の音になりました。
gmpcとweb mpcの差が何に起因しているのか私にはよく判りません。利便性で言えばgmpcでweb mpcの音を出したいところです。
どなたかアイディアをご提供下さい。
> どなたかアイディアをご提供下さい。
僕はNexus7を使っていますが、MPDroidが使えないので、ssh接続し、ncmpcでローカル接続しつないでいます。
ncmpcは入っていないので、インストールする必要がありますが
apt-get update
apt-get install ncmpc
でインストールできました。updateは
W: GPG error: http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy Release: The following signatures were invalid: KEYEXPIRED 1587841717 KEYEXPIRED 1557241909
・・・
というエラーが出ます。これに関連すると思いますがinstall ncmpcは
WARNING: The following packages cannot be authenticated!
liblircclient0 ncmpc
Install these packages without verification [y/N]? y
というワーニングが出ますが、無視してインストールは出来て、問題なく使えています。
ところで直前の書き込みについてですが、botic3で使っていらっしゃるのですか。
僕はまだbotic1 pcmだけの確認で、botic3 dsdはこれからです。音はbotic1でも素晴らしいと思います。以前、IrBerryで試した時のbotic1はアップサンプリングの強調感が強くて、ちょっと常用する気にはならないなという感想でしたが、これはまるで違いますね。CPU負荷が90%に近いのに安定しているし、音も自然です。
ait dacでbotic3、dsdも試してみるつもりですが、何か注意次項はありますか。
新boticでDSD再生と外部クロック接続を試してみました。
環境はaitlabo社のdac、外部クロックはD-Clock Neutrino 22.579200MHz、nas(自作linuxサーバ)はpcm用はnfs、dsd用はntfs、新boticシステムはncmpcのインストールとnasの設定以外はディフォルトのままというところです。
先ず、botic1でのDSD再生。
pcmからの接続変更は、P9_26をdacのI2S/DSD switch(6番)に接続、P9_29をP9_41に差替(data1)となります。一応 snd_soc_botic.dsd_format_switch は明に1を設定しました。これで接続変更後、問題なく音は鳴りました。聴き始めで1回だけ瞬断がありましたが、その後は順調。動作は安定していますので、瞬断は仮接続が原因だと思います。cpu負荷も10%程度で問題なし。音は素晴らしいですね。twlさんのコメントにcompletely agreeです。
次に、外部クロックでの動作(botic3)。
ソフトはsnd_soc_botic.ext_masterclk=1に変更。ハードはNeutrinoのクロックをP9_25とdacの5番(mclk)に、GNDをdacの7番(gnd)につなぎます(それぞれ既設の線と二重につながることになります)。
DSD再生は問題なく音は鳴りました。動作も安定しています。次にPCM再生ですが、wav再生は良好ですが、flac、mp3などは歪みだらけの音となります。こちらはまだ改良の余地がありますね。また、これは当然ですが、48KHzの倍数のファイルは変な音になります。音も旧版の時のように外部クロックで大きく変わる(良くなる)ということはなく、これだったらbotic1で十分かなという感じです。
という次第で、暫くはbotic1で様子見するかなと思います。既存ハードで旧版に対してこれだけの改良がされたとなると、capeが楽しみですね。botic1の現時点の音でpcm/dsd共に十分「さらばUDA3、こんにちはi2s」出来ると思います。dsdとpcmの切り替えは当面OTTO IIで対応するしかないですかね。
あと本題とは関係ないですが、test用のdsdファイルは僕の環境では再生できません。頭5秒程再生してエラーとなり、頭に戻り、再再生、またエラーとなり・・・を繰り返す。syuさんも同じような報告されているので、dacの問題ですかね。
> pcmからの接続変更は、P9_26をdacのI2S/DSD switch(6番)に接続、P9_29をP9_41に差替(data1)となります。一応 snd_soc_botic.dsd_format_switch は明に1を設定しました。これで接続変更後、問題なく音は鳴りました。
P9_26のスイッチが効いているようですね。 BuffaloIIIではDSD/I2Sが自動切り替えなので、このスイッチを有効活用できず、上記の設定だとDSD再生時に左右チャンネルが逆転することを前回報告しました。この解決にはDSD再生時にP9_41にDATA0の機能、P9_30にDATA1の機能を持たせるように配線の切り替えが必要となるとの指摘をmiero氏から受けましたので、現在はそれに合わせています。
> 次にPCM再生ですが、wav再生は良好ですが、flac、mp3などは歪みだらけの音となります。こちらはまだ改良の余地がありますね。また、これは当然ですが、48KHzの倍数のファイルは変な音になります。
44.1K系と48K系のクロックを両方搭載しているAmaneroを使用していますので、サンプリング周波数の違いによる問題はクリアできていますが、私もPCM系のソースはApple lossless (m4a) なのでノイズが出ます。しかしflac再生に関しては私の環境では問題ありません。
> 音も旧版の時のように外部クロックで大きく変わる(良くなる)ということはなく、これだったらbotic1で十分かなという感じです。
とくに48K系のソースを頻繁に使うのでなければ、それでよさそうですね。
> あと本題とは関係ないですが、test用のdsdファイルは僕の環境では再生できません。頭5秒程再生してエラーとなり、頭に戻り、再再生、またエラーとなり・・・を繰り返す。syuさんも同じような報告されているので、dacの問題ですかね。
私のBIIISEでも同じ状況ですので、test用の元ファイルがよくないという印象です。現在聴いているソースが正常に再生されていれば、特に気にされることはないと思います。
それと、最初48K系のソースでないとまともな再生ができないのかと、普段よく聴く44.1KのPCMソースを96Kのwav形式に変換して聴いてみましたが、なんか再生がほんわかスローなので、これはオリジナルの44.1Kのフォーマットでいいんじゃないかと、再度44.1Kのwavファイルに変換してみたら、まったく問題なく再生されました。
ということで、外部クロックを使う限り、今回の新BoticドライバーはPCM、DSDの両者を含め、通常の使用においてはまったく問題がないという結論に至っており、現在は普段よく聴くPCM系のファイルをせっせと44.1Kのwav形式に変換中であります。
なお新しいBoticドライバーにはBotic1とかBotic3という定義はないので、言葉の混乱を避ける意味でご配慮いただければ幸いです。m(__)m
> P9_26のスイッチが効いているようですね。
ですね。syuさんの情報でp9_26をきかせればなんとかなるかなと思い、試しました。ラッキーでしたね。
> 44.1K系と48K系のクロックを両方搭載しているAmaneroを使用していますので、サンプリング周波数の違いによる問題はクリアできていますが、私もPCM系のソースはApple lossless (m4a) なのでノイズが出ます。しかしflac再生に関しては私の環境では問題ありません。
これはuda3のクロックを使ってみるという解決策があるかもしれませんね。試してみますかね。
> とくに48K系のソースを頻繁に使うのでなければ、それでよさそうですね。
僕の環境はcdをflacにripした44.1KHzと、sacdからripしたDSD(64)だけなのでこれで十分だと思います。ただ、高額投資したNeutrinoが使えないのはちょっといまいましいのですが(^^;;;。
> なお新しいBoticドライバーにはBotic1とかBotic3という定義はないので、言葉の混乱を避ける意味でご配慮いただければ幸いです
了解です。「オンボードクロック」と「外部クロック」でいいですかね。ちょっと長いけど。
一昨日まで、こちらではご機嫌に外部クロックで音が出ていましたが、昨日からtime outが発生して再生できなくなっていました。
何をやってもダメで、最後にスイッチングハブを変更して解決しました。ハブを変えたらdsd128も176/24もノイズなく再生できています。US製の一般には好評のハブから変えたのは、国産で3500円ぐらいの製品です^^;
>botic1でのDSD再生。
私の環境でbbb側のクロックを使用してdsdを再生すると、テンポが早くなり、ピッチが全音+1/4音ほど上昇します。ノリントンのベートーヴェンみたいになりませんか。dacには3.2MHzと表示されます。bbb側のクロック使用時にサンプルレート変換されるのはpcmだけでdsdは変換されてないのではないでしょうか。動作は安定で音は良好です。
>snd_soc_botic.ext_masterclk=1
1 ... external clock for 44k1 + onboard for 48k ですね。この設定の場合48kHz系を再生するときにはNeutrinoからの接続を外しておかないとbbbからのクロックとコンフリクトが起きそうです。私は snd_soc_botic.ext_masterclk=3 を指定して、48kHz系を再生するときはクロックを切り替えています。44.1kHz系のmclkのままでも、テンポが遅くなりピッチが下がりますが、再生は可能でした。
>外部クロックで大きく変わる(良くなる)ということはなく
これも環境依存だと思いますが、私の環境ではNeutrino使用の外部クロックにすると、低域の弾み方が良い方向にかなり変化します。高域端のスッキリ伸び切った感じも外部クロックが優れていると思います。何より空間の雰囲気が・・例えば生の擦弦楽器では、擦弦ノイズが奏者の周囲数メートルの空間に漂うように聴こえますが、これがスピーカから聴こえるかどうかとか、きりが無いですが、これもプラシーボかもしれません。結局、好きな方を使えば良いのですけどね。
ともかく、新boticは素晴らしいと思います。bbb上クロックでも十分満足できる音だという点も同意です。皆さんにおすすめできると思います。
ハブを変えてからはGMPCとympd(web mpc)との差は判別できなくなりました。mpd.confを変更して、使い慣れたGMPCを使用しています。
>これも環境依存だと思いますが、私の環境ではNeutrino使用の外部クロックにすると
皆さん言及しないけど、私はCFQのキラキラキャラクターが気になって仕方ないです。
これも環境依存でしょうか?
今やってることが終わったら作りなおそう。
> 私の環境でbbb側のクロックを使用してdsdを再生すると、テンポが早くなり、ピッチが全音+1/4音ほど上昇します。
再生したら、いきなに音切れが発生し、そっちに注意がいっちゃったので、見(聞き)落としていました(^^;;;。オンボードでのdsd再生は確かに全音+α位ピッチが高くなっていますね。表示も僕の環境ではfs=NOとなっていました。
「ノリントンのベートーヴェン」にはざぶとん十枚です(^^)。
外部クロックのpcm再生でflacがノイズまみれになるという問題はクロックをuda3に変更しても発生しました。どのflacでも発生するというわけではなく、48KHz以上であれば、綺麗に再生できます。また、ReadMeに
> If you have issues with playback from MPD, check if they happen also when file is played from commandline using play command.
とあったので、playで試してみたら44.1KHzでも問題なしです。ということはmpdとflacフォーマットとの関係で発生する問題のようですね。
cdからripしたデータのほとんどが44.1KHz flacですので、この問題は深刻です。
> external clock for 44k1 + onboard for 48k ですね。この設定の場合48kHz系を再生するときにはNeutrinoからの接続を外しておかないとbbbからのクロックとコンフリクトが起きそうです。
OTTOIIを使い切り離すという手はとれそうですが、僕の場合、48K系ファイルはほとんどないので、今のままでいいかなと思っています。uda3を使い、3を指定したら、綺麗に再生できました。
> 低域の弾み方が良い方向にかなり変化します。高域端のスッキリ伸び切った感じも外部クロックが優れていると思います。
ご指摘の通りだと思います。旧boticでbotic1からbotic3に変えた時に衝撃的に良くなったのと比較すると、変化の度合いは小さくなったと思いあのように書きました。ait dacの場合、外部クロックを入れた方が良くなるのは確かですね。
しかし、となるとpcm/dsdをどうつなぎなおして再生させるか悩ましいですね。dsd再生を考慮すると、外部クロックでいくしかないけど、flacファイルをどうやってきちんと再生させるか問題です。
当面の逃げ手として、playを使い、簡単に選曲できようなスクリプトが欲しいですね。探してみるかな。
> 私はCFQのキラキラキャラクターが気になって仕方ないです。
これは僕も同感です。Deadlineを使うことが多いです。
New boticはCFQですかね。
>今やってることが終わったら作りなおそう。
おお、勝手にですが、期待します。
>環境依存
前述したようにスイッチで音とノイズが変わりましたが、NFSサーバーでも変わりますよね。スイッチで相当変わったので、先日入手したばかりのPC Engine APU(New Alix)にnfs-kernel-serverを入れてみました。これはかなり影響しました。cu-boxよりかなり優秀で余裕しゃくしゃくです。
特に176/24とかdsd128は今まであまり良い音が出ていなかったんですが、スッキリしたfsにふさわしい音に変化しました。dsd64でも一部の曲で周期的なザッザッというノイズが混入していましたが、みごとに消えました。キラキラキャラクターも薄まります。お爺さんクラスのオーディオマニアックがたまにリファレンスにしている「僕たちの失敗・森田童子」ってのがあるんですが、キラキラしやすい録音です。new alix nfs server+new boticではキラキラが減ってしまうんですよね。今、ピーク110dBSPL@1m 程度の音量で Midnight Lady を聴いてますが、分離良く、硬さもあり、見通し抜群です。これでDeadlineになればもっと良いかもで、期待してます。
> -snip- bbb側のクロック使用時にサンプルレート変換されるのはpcmだけでdsdは変換されてないのではないでしょうか。動作は安定で音は良好です。
以下はDSD128のファイルをオンボードクロックおよび外部クロックで再生した場合の/proc/asound/card0/pcm0p/sub0/hw_paramsですが、
ext_masterclk=0
access: RW_INTERLEAVED
format: DSD_U8
subformat: STD
channels: 2
rate: 768000 (768000/1)
period_size: 512
buffer_size: 65536
ext_masterclk=3
access: RW_INTERLEAVED
format: DSD_U8
subformat: STD
channels: 2
rate: 705600 (705600/1)
period_size: 512
buffer_size: 65536
となり、オンボードクロックではDSDファイルでも48K系にresamplingされます。
今回のVerUPで確かに良くなったなぁと思います。
CFQは好きずきなので好きな方がいても否定はしませんが、気になりだすともう止まんないです。
debianの挙動がおかしいのも気になって、次のVerでは修正されてくるだろうと分かっててもrootfsも作り直したい病に陥ってます。
気づかないうちに、新しい沼に嵌ってしまったのでしょうか?
>森田童子
あの人の声と雰囲気から、長生きしちゃいけない人だと勝手に思ってましたm(__)m
まだお元気なのでしょうか。
>ピーク110dBSPL@1m
羨ましい!やってみたいです!
メインの方ならシステムとしては余裕ですが、次の日からの近所の視線が痛そうです。
>/proc/asound/card0/pcm0p/sub0/hw_params
これはその通りなんですが、出てくる音は明らかにピッチが上がりテンポが加速するんですよね。
これと同じことは前にもあって、#4231に書きました。
#4231から
>24/96に変更しても良い音ですが、dacの表示は88kHz。24/192だと表示は176kHz。96kHzや192kHzのファイルを88kHzや176kHzで演奏しているので、ピッチが低下し、テンポも遅くなります。
同記事から抜粋
----
この時の/proc/asound/card0/pcm0p/sub0/hw_params
[root@arch-botic ~]# cat /proc/asound/card0/pcm0p/sub0/hw_params
access: RW_INTERLEAVED
format: S32_LE
subformat: STD
channels: 2
rate: 96000 (96000/1)
period_size: 1024
buffer_size: 16384
[root@arch-botic ~]# cat /proc/asound/card0/pcm0p/sub0/hw_params
access: RW_INTERLEAVED
format: S32_LE
subformat: STD
channels: 2
rate: 192000 (192000/1)
period_size: 1024
buffer_size: 16384
------
cat /proc/asound/card0/pcm0p/sub0/hw_params は内部処理の状態は表していますが、クロックが「実際に」早いか遅いかは、判断基準が内部になさそうですから、bbbには判断できないいんじゃないでしょうか。
このクロックで再生している「つもり」を表示しているに過ぎないのかなと愚考しています。
> > /proc/asound/card0/pcm0p/sub0/hw_params
> これはその通りなんですが、出てくる音は明らかにピッチが上がりテンポが加速するんですよね。
それは変ですね。私の場合にはhw_paramsで表示されたsampling rateに沿ったピッチの変化となり、それはそれでいいのではないかと考えているのですが。
というわけで、
>> >24/96に変更しても良い音ですが、dacの表示は88kHz。
多分DACの違いなのでしょう。変更したことをDAC側が認識できていないのだろうと思います。
>flacがノイズまみれ
flacはわずかしかないのですが、さがしてやってみました。たしかに激しく滲みますね。
クロックを24.576MHzに交換して試してみましたが、testフォルダにあるtest 48k 16bとtest 96k 16bの48kHz系のflacファイルはきちんと再生されます。44.1kHz系のflacはこの状態でテンポは早くピッチは高くなりますが滲み方は同じですね。
ナゼでしょう。mpdに当っているパッチに問題でもあるんでしょうか。そのうち修正されるような気はしますが、待つ時間がもったいないですよね。
> 先日入手したばかりのPC Engine APU(New Alix)にnfs-kernel-serverを入れてみました。これはかなり影響しました。cu-boxよりかなり優秀で余裕しゃくしゃくです。
これはいい手ですね。New boticの登場で用済みとなったNewAlixをどうしようかなと思っていたところでした。早速、顰みに倣おうと思います。nas用の設定は何か特別なことはされましたか ?
> クロックを24.576MHzに交換して試してみましたが、testフォルダにあるtest 48k 16bとtest 96k 16bの48kHz系のflacファイルはきちんと再生されます。44.1kHz系のflacはこの状態でテンポは早くピッチは高くなりますが滲み方は同じですね。
僕の検証結果と同じですので、mpdに対するパッチの問題ですね。/souceフォルダーを覗いてみましたが、mpdのパッチは旧来のDSDネイティブ処理の呼び出し返り値を削除し、新しいDSD処理するための呼び出し返り値を追加しているだけですね。いたってシンプル。気になるのはそれ以外に、データがフロートだったら、PCMCONVERTの処理にDSD対応のコード(数行です)が追加されているのですが、このあたりの問題ですかね。44.1K flacって、データ形式がフロートなのですかね。
> そのうち修正されるような気はしますが、待つ時間がもったいないですよね。
回避策は二つあって、オンボードクロックを使う方法と外部クロックで強行突破する方法ですね。オンボードの方はOTTOIIを使って切り替えればいいだけだから、比較的簡単です。外部クロック強行突破案はなかなか大変ですね。ait dacの場合、playを使うのは曲の切れ目で大幅な再生中断が発生するので、不可。mpdで頑張るしかなさそうで、毎回、44.1K flacを44.1K wavにコンバートするという手ですかね。捜したら、昔懐かしいfdというDOSファイラーのunix版(GUIが無くても動きます)を発見したので、これで何とかするかなと思案中です。
yoさんの’NFSのすゝめ’記事を参考にしました。
USB-HDDは既存のものを流用しています。
音楽ディレクトリは/Public/Music
3T、ext-4でGPTです。私の設定は・・
サーバ側
root@voyage:~# apt-get update
root@voyage:~# apt-get install nfs-kernel-server
root@voyage:~# mkdir /Public
root@voyage:~# nano /etc/fstab に追加
/dev/sdc1 /Public ext4 noatime 0 0
root@voyage:~# reboot
root@voyage:~# nano /etc/exports
/Public 192.168.11.0/24(rw,no_subtree_check,all_squash,sync)
クライアント側
root@bbb:~# nano /etc/fstab
192.168.11.103:Public/Music /data/remote nfs rsize=8192,wsize=8192 0 0
APUはとても安定していて、発熱も意外に少ないですね。
>毎回、44.1K flacを44.1K wavにコンバートするという手
HDDに空きが十分あれば、APUで
root@voyage:~# apt-get install flac
root@voyage:~# cd musicディレクトリ
root@voyage:~# flac -d *.flac
でだめですか。
丁寧な解説、ありがとうございます。
> 3T、ext-4でGPTです。
でしたか。3T、当たり前の時代になったのですね。
> APUはとても安定していて、発熱も意外に少ないですね。
ですね。さわってちょっと熱くなるというレベルですから、この夏、問題なくクリアできるでしょう。APUの強みはこの安定性ですね。
二番目の方ですが
> でだめですか。
確認したら、2Tのディスクの/musicディレクトリは1Tを超えてまして、99.n%以上がflacです。以前、1%以下のapeファイルを同じようなやり方でflacに変換したことがあるのですが、丸1日かかりました。となると、このやり方では1ヶ月以上かかると思われますので(^^;;;、却下です。サイズも他のファイルもあるので、ギリギリですね。
fdで試してみたら、CD一枚位ならwavへの変換は数十秒で終わるので、これでいくかなと思います。問題はfdの設定ファイルの書き換え方ですね。
dsdのi2s接続再生、本当に素晴らしい音ですね。魂を奪われるという感じです。明日にでも、ait dacの箱の入れ換えをするつもりです。
まったくのPC初心者の方にvoyage-mpd+DSDを聴かせたらどうしてもAPU1Cが欲しいと言われて困ってます。その方は料亭をやっていて店において客に聴かせたいと言ってます。運用が根本的に無理な状況だと思うのですがAPU1Cの操作性の悪さ、設定の面倒さが初心者のため伝わらず...後からサポートの依頼がどんどん来そうで...どうしたもんでしょうか
使用者のスキルを問わないとなると、ターンキー方式で導入するしかないでしょうね。
操作性の問題は Voyage MPD + web guiを使うとか、android(ipad)端末を使えば、何とかなると思います。
使用環境でセットアップして、あとは一切変更はしないという条件がOKかどうか次第ですが(曲の追加もしない)。後、音楽データはusbメモリに置いて、取り替えて演奏させるという方法はあるかもしれませんね。
なりますよね。音が出ない時のすべてのケースについて説明して
も理解できないだろうし(笑)小さいノートを薦めているんですが
納得してもらえずで...
ターンキーというのは文字通りキーを回すだけで動くという意味です。仰るようにご友人の環境に合わせて、あらかじめVoyageMPDシステムをセットアップしておき、電源を入れるだけで、動くようにすればいいわけです。
> その方は料亭をやっていて店において客に聴かせたい
というのはかなり特殊な環境だから、lan環境はあてにしないで、スタンドアロン(apu1とusbディスクとandroid/ipadだけ)で動くシステムを構築すればいいのじゃないかなと思います。apu1とandroidは無線で直接つなぐ。最初のセットアップはありますが、つながってしまえば、あとは自立型(スタンドアロン)のターンキー方式で運用できると思います。
これって可能ですか?
具体的な設定のヒントを教えていただけないでしょうか?
アドホックの設定だと思うのですがやった事がなくて...
http://store.voyage.hk/prod_images/Voyage%20MPD%20Starter%20Kit%202.0%20-%20Getting%20Started%20Guide%20v1.2.pdf" target="_blank">http://store.voyage.hk/prod_images/Voyage%20MPD%20Starter%20Kit%202.0%20-%20Getting%20Started%20Guide%20v1.2.pdf
4.4 Setting up Wireless Access Point (WPA2) under NAT network
VoyageMPDを使う場合はマニュアル通り、/etc/network/interfacesと/etc/hostapd/hostapd.wlan0.conf:
を設定すればいいです(インストール済のVoyageMPDの場合、設定済の内容をコメントインするだけですみ、簡単です)。
androidはNexus7を使っていますが、設定 -> WiFi でvoyage-mpdのapが表示されますので、パスワード(voyage-mpd)を入力し、接続すれば、使えるようになります。
実はsyuさんが提案されたapu×2のnas直結方式でクライアント側のapuを無線でつなぐと、クライアントは完全にlanネットワークから切り離せることになるので、「どうかな」と思って試してみたのですが、あまり効果は無かったですね(^^;;;。
ただ、今回のようなケースで、スタンドアロン化するには、使えるのじゃないかと思います。
早速、SDカードにインストールし、ヘッドレス化はまだできないので、普通のパソコンで立ち上げてみました。初歩的なことがわかりません。
フォルダーを作成しても、あるいは、ファイル(たとえば/etc/fstab)を書き換えてもリブートすると消えてしまいます。保存しておくにはどうしからよいのでしょうか?
なお、アプリをインストールすることは、
tce-ab
というコマンドでできました。
自由を求めて挑戦される方はいるのですね(^^)。
詳しくはご本家の英文参照ですが、とりあえず
nano /opt/.filetool.lst
に保存したいファイル名を先頭の/を除いたフルパス+ファイル名で書き込み(例えばfsatbだと
etc/fstab
となります)
filetool.sh -b
で保存できます。
/opt/.filetool.lstを見てもらうと
opt
home
という行がありますが
これはhomeとoptはディレクトリ丸ごとバックアップしますよという意味です。
従って、例えば
usr/local/etc
と書いておけば、ユーザ用のetcディレクトリを丸ごと保存できます。
ただしこの方法はバックアップする量がどんどん大きくなり、何のためのTinyCoreか分からなくなりますので、ちゃんとファイル名まで指定することをお勧めします。
1 tce-abで必要なアプリをインストール
alsa cifs mpd-minimal openssh など。
2 設定ファイルの作成・編集
fstab mpd.conf sshd_configなど
※tag_cacheはnasに置きました。
3 固定アドレス
eth0.shを作成
4 各ファイル及びフォルダーの保存設定
/opt/.filetool.lstは以下のようにしました。
opt
home
/etc/fstab
/music
opt/eth0.sh
/usr/local/etc/ssh
/etc/passwd
/etc/shadow
/usr/local/etc/mpd.conf
/var/lib/mpd/Music
4 mpd起動スクリプトの作成
以下の内容です。
sudo mount -a
sudo ln -s /music /var/lib/mpd/Music
sudo mpd
※fstabに記述しただけでは、マウントしませんでした。
5 自動起動するように設定 /opt/bootlocal.shに追加
/usr/local/etc/init.d/openssh start
/opt/mpd.sh
syslinux.cfgに次の記述を加えました。
1 1行目に追加。
serial 0 115200
2 APPEND行に追加。
console=ttyS0,115200n8
このようにしたSDカードをapu1cに刺したところ、mpdが動作しました。
しかし、シリアル接続でブート状況が表示はされるのですが、その画面からログオンできません。
ログオンできるようにするには、iptablezに記述をして
init q というコマンドで反映させるらしいのですが、
must be run as PID 1 という警告が出て拒絶されます。
sshでのログオンはできるので、支障はないのですが。
sudo nano /etc/securetty
# For people with serial port consoles
ttyS0
sudo nano /sbin/autologin
exec /sbin/getty 115200 ttyS0
# exec /sbin/getty 38400 tty1
sudo nano /etc/inittab
ttyS0::respawn:/sbin/getty -nl /sbin/autologin 115200 ttyS0
#tty1::respawn:/sbin/getty -nl /sbin/autologin 38400 tty1
nano /opt/bootsync.sh
echo "booting" > /etc/sysconfig/noautologin
これで出来るようになります。
mpdをビルトしないとだめですかね。tgzファイルを作るためには、tgztoolsというアプリがあることまではわかりましたが、それをどう使えばよいのかがわかりません。
> リアルタイムオプションを適用したvoyageやlightmpdほどの解像度はないということです。
TCそのものは音楽用のディストリビューションではないので、チューニングが必要です。mpdとカーネルのチューニング(ビルド)をお勧めします。僕はmpd-dsdの最新版とチューニングしたrtカーネル(3.8.13-rt9)、preemptカーネル(3.8.13)で使っていますが、rt化による差はほとんど無いと思います(むしろpreemptが好ましい)。また、解像度もvoyageやlightmpdと遜色はないです。ただ、僕の環境ではarchの64bit版が力があって、一番好ましいので、普段はそちらで聴いています。
mpdのビルド方法は他のディストリビューションと同じようなものです。
カーネルのビルドについては、このページが
http://wiki.tinycorelinux.net/wiki:custom_kernel" target="_blank">http://wiki.tinycorelinux.net/wiki:custom_kernel
参考になるかと思います。
既に多くの方がご存じだと思いますが、黒い画面に頭を摺り寄せてキーボードを叩いていると心も体も本当に疲れてきます。
私はファイルやフォルダの移動、削除、コピー等の操作を「FDClone]を使って行っています。Windouw95が出るまでは、DOSマシンではFDというソフトが多くの人に使われていました。皆さんも使われると手放せなくなります。作者は白井隆さんです。感謝します。下記URLに詳細な内容が書かれています。
http://hp.vector.co.jp/authors/VA012337/soft/fd/index.html" target="_blank">http://hp.vector.co.jp/authors/VA012337/soft/fd/index.html
FDCloneを使えるようにするには次の手順で操作を行います。
①ソースコードを入手する。②FDCloneをビルドする。③画面をカスタマイズして日本語の文字化け等を修正する。
①ソースコードを入手する。
//# wget ftp;//ftp.unixusers.net/src/fdclone/FD-3.01b.tar.gz
ソースコードがダウンロードされます。ダウンロードされたら解凍します。
//# tar -xvf FD-3.01b.tar.gz
//# cd FD-3.01b
②次にソースコードをビルドするのに必要なファイル等を準備し、環境を整えます。下記URLの
http://mimizukobo.sakura.ne.jp/articles/articles016.html" target="_blank">http://mimizukobo.sakura.ne.jp/articles/articles016.html
「New Alix(5)」というタイトルの説明を参考にファイル等を準備してください。
//# make
メークコマンドを打ち込みビルドしてください。
//# make install
③画面をカスタマイズして文字化け等を修正します。
「FD」とタイプするとFDCloneの画面が表示されます。
//# fd
画面が表示されたら<Shift>+eキーを押してカスタマイズ画面を表示してください。
上のタブ(/内部変数)を選び「LANGUAGE」「DEFKCODE」 「INPUTKCODE」「PTYINKCODE」「PTYOUTKCODE」「FNAMEKCODE」の項目の設定を「UTF-8」にしてください。
その後上のタブ(/保存)を選び保存した内容を保尊してください。
Escキーを押すと元の画面に戻ります。
fdcloneは僕も使ってみたことがあるのですが、そういうことができるのですね。面白そうです。
多分コンソール版のemacsでも同じようなことができるのではないかと思います。
emacsに関しては、名前は有名なので聞いているのですが、使ったことはありません。現在nanoが使えるので、それを見よう見まねで使っています。nanoは不満はありますが、そこそこのレベルなので我慢しながら使っています。年をとるにつれ、痴呆の段階に進んでおり、少しでも楽に操作できるノウハウがあればお教えいただければありがたく存じます。
皆様
twlさんに倣って、さらばddc(uda3)しました。
全体の写真です。
http://mimizukobo.sakura.ne.jp/upload/NewBotic1.JPG" target="_blank">http://mimizukobo.sakura.ne.jp/upload/NewBotic1.JPG
beforeはこれ。
http://mimizukobo.sakura.ne.jp/articles/012/ait001.jpg" target="_blank">http://mimizukobo.sakura.ne.jp/articles/012/ait001.jpg
まあ、uda3がbbb+OTTOIIに入れ替わっただけですね。アップすると、こう。
http://mimizukobo.sakura.ne.jp/upload/NewBotic2.JPG" target="_blank">http://mimizukobo.sakura.ne.jp/upload/NewBotic2.JPG
OTTOIIは一台で十分なのですが、癪なので(uda3切り替え用に二台注文しちゃったので^^;;;)、両方つかって、Onboardと外部クロックの切り替えも出来るようにしています。二階建て。一階はdsdとpcmの切り替え(P9_29とP9_41の切り替え)。二階はNeutrinoの有無の切り替えです。二階部分はuEnv.txtの書き換えが必要なので、あまり実用性はありませんが、僕の場合はflacを簡単に再生するため今のところ必須です。OTTOII切り替え用のスイッチは写真上部の箱。シールドはPhoeniciaさんのアドバイスを頂戴して、銅箔を使った「万里の長城」方式。
これでようやくaitlaboケースに蓋が出来るようになりました。
しかし、蓋をしてみると、これって、PC用DACがネットワークプレーヤに変わったということですね。まあ、DSD対応のネットワークプレーヤってまだ少ないでしょうから、最先端かな。
箱に入れたんですね。あとはBoticのcapeとdriverの正式版が出るのを待つだけですね。
私は故あってV4環境にすぐ戻しオペアンプの試聴ばかりやってます。
で昨日から聴き始めたLT1468-2(1回路なので2つ使って2回路に変換)に落ち着きそうです。
週末からは新しいBoticで試してみようと思っています。
皆様
3.14.10+RT7を作りました。欲しい方がいらっしゃればUPします。
今回のはusb_audioを削除しています。
I2Sではなくusb_audioで使いたいとか要望があればmakeし直してUPします。
> 箱に入れたんですね。あとはBoticのcapeとdriverの正式版が出るのを待つだけですね。
ようやく蓋が出来るようになったのですが、こんどは左チャネルの音が出なくなるというハードトラブルが発生し、設計者の角田さんとやりとりしているところです。やれやれですね(^^;;;。
> 私は故あってV4環境にすぐ戻しオペアンプの試聴ばかりやってます。
tinkerさんもすっかりハードの人になっちゃいましたか(^^)。オペアンプの聴き比べってやったことはないのですが、入り口に近いところだから、かなり変わるものなのですかね。
New Boticですが、基本的にカーネルにパッチをかける形になっちゃったので、rt化はやりにくくなりましたね。3.16版の登場を待つということですかね。
>オペアンプの聴き比べって
もっと基本的なことを詰めろって声も飛んできそうですが、やってみると結構楽しいです。
I2S用にDACを揃えた頃とは、全く別物の音になってます。
New Boticに皆さん移行されたようなので、カーネルのほうも気兼ねなくやりたい放題です。
>rt化はやりにくくなりましたね
やってみないと分からないですが、パッチを見ると削除の部分は多くないので、なんとかなるんじゃないかなって思ってます。
mpd-dsdの0.18.11をmakeしようとするとエラーが出て上手くいかないです。
SND_PCM_FORMAT_DSD_U8のあたりでエラーが出ます(Boticのパッチとは少し違うけど同じようなパッチが当たっているようです)
調べてもよく分からないのですが、Boticと同じようにAlsa1.0.27が必要みたいです。
> ようやく蓋が出来るようになったのですが、こんどは左チャネルの音が出なくなるというハードトラブルが発生し、設計者の角田さんとやりとりしているところです。やれやれですね(^^;;;。
それはまたお気の毒なことですね。早く解決できますように。
話題はかわりますが かのmiero氏がこのスレッドに関心を示してくれました。
http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-3.html#post3984289" target="_blank">http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-3.html#post3984289
グーグルの翻訳を使ってもわかりにくいところがあるのでまとめみたいのがあればとのことなので、とりあえずflac44.1K再生の問題を含めた現状について伝えましたが、もし間違いや説明不足がありましたらご容赦あるいはご指摘下さい。
twl
> それはまたお気の毒なことですね。早く解決できますように。
ありがとうございます。とりあえず、角田さんの方で修理して頂けるので、郵送したところです。という次第でNew Boticで楽しむのは暫くおあずけです。
> とりあえずflac44.1K再生の問題を含めた現状について伝えました
これもありがとうございます。はるかかなたの日本でこんなに話題とはビックリされたでしょうね。最後の「we are always praising your great work. Thank you.」というのがいいですね。
http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=4537#4804" target="_blank">http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=4537#4804
yoさん
>botic環境でlintweakerさんのbotic dsd再生対応の0.18.11はビルドは出来るのですが、実行させようとするffmpegライブラリの不足でエラーになってしまう
うーむ、変ですね。先ほど作ったmpd-dsd-018.11最新版(rt-optなし)ですが、サイズが違うのはmy-configの差だろうと思います。miero版のmpd-dsd-018とほぼ同じ音で問題なく鳴っています。
root@bbb:~# systemctl status mpd.service
mpd.service - LSB: Music Player Daemon
Loaded: loaded (/etc/init.d/mpd)
Active: active (running) since Thu, 05 Jun 2014 22:51:51 +0000; 2 months and 12 days ago
Process: 498 ExecStart=/etc/init.d/mpd start (code=exited, status=0/SUCCESS)
CGroup: name=systemd:/system/mpd.service
└ 803 /usr/local/bin/mpd /etc/mpd.conf
Jun 05 22:51:51 bbb mpd[498]: Starting Music Player Daemon: mpd.
>どうもこのあたりが例のflac44.1KHzがノイズまみれになるという障害と絡んでいるのではないか
lintweaker(Jurgen)さんは32-bit sample formatに固定するとflac44.1KHz問題は解決すると言ってますが、固定するのはどうやるんでしょう^^;;
http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-5.html#post3988099" target="_blank">http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-5.html#post3988099
(追記)
>dsd再生を止める時、盛大にノイズ
これ忘れてました。
lintweaker版で作成したmpd-dsd-018はdsdでプログレスバーは動いていますが音は全く出ません。pcmでstopかけると、マシンガンサウンド(lintweakerさんの表現)ですね。
miero版ではstopボタンで止めるとpcmはマシンガンサウンド、dsdは「ブチッ」と盛大とは言えないノイズが出ます。一時停止してからstopだとpcmではノイズは出ませんね。
リンク先の僕のメッセージに間違えがありました。申し訳ありません。
僕の環境で0.18.11でビルドがとおったのは旧botic(v4)をインストールしたarchシステムでした。新botic環境ではffmpeg関連のライブラリがインストールできなくて、0.18.11のビルドは出来ていません。従って旧boticでビルドしたバイナリが新boticで動かないのはこれが原因と考えています。
今日は外出するので、夜、調べるつもりですが、できればsyuさんのビルドした方法とmy-configを教えていただけますか。
後、新botic環境でapt-get installすると全てのケースでオーソリゼーションエラーになるのですが、これは発生していませんか。
ノイズの件は角田さんに質問したら、「今までのDACはP6でPCM/DSDを切り換えていましたが、この機能が無いDDC等があるため、PCM/DSDの判定は自動としています。このため信号の切り替わり時、送出側で正しく切り換えていないと雑音が発生します。」従って、「切り替わり時雑音が発生する場合はP6を接続して下さい。」ということでした。
僕の環境ではpcmではノイズは発生しないと思いましたが、これも勘違いしている可能性があるので、帰ってきてから確認します。
syuさんが書かれているように、New Botic環境だとbuildできますね。
DSD_U8で検索するとalsa-libのpatchなどが引っかかります。
http://lfs.phayoune.org/patches/downloads/alsa-lib/alsa-lib-1.0.27-upstream_fixes-1.patch" target="_blank">http://lfs.phayoune.org/patches/downloads/alsa-lib/alsa-lib-1.0.27-upstream_fixes-1.patch
0.18.11のbuildにはalsa-libの1.0.27以上が必要なんでしょうね。なので、Archでもbuildはできるんだと思います。
私のほうはCDリップのflacばかりなので、New Boticはまだ使いにくいです。
>新botic環境でapt-get installすると全てのケースでオーソリゼーションエラー
私の環境ではupdateでエラーが出ます。
root@bbb:~# apt-get update
--略--
Reading package lists... Done
W: GPG error: http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates Release: The following signatures were invalid: KEYEXPIRED 1587841717
W: GPG error: http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy Release: The following signatures were invalid: KEYEXPIRED 1587841717 KEYEXPIRED 1557241909
W: GPG error: http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates Release: The following signatures were invalid: KEYEXPIRED 1587841717
root@bbb:~# apt-get install hogehoge1 hogehoge2 ・・・・
WARNING: The following packages cannot be authenticated!
hogehoge1 hogehoge2 ・・・・
Install these packages without verification [y/N]?
yと答えて強引に進めました^^;;
root@bbb:~# sudo apt-key list
/etc/apt/trusted.gpg.d//debian-archive-squeeze-automatic.gpg
------------------------------------------------------------
pub 4096R/473041FA 2010-08-27 [expired: 2018-03-05]
uid Debian Archive Automatic Signing Key (6.0/squeeze) <ftpmaster@debian.org>
/etc/apt/trusted.gpg.d//debian-archive-squeeze-stable.gpg
---------------------------------------------------------
pub 4096R/B98321F9 2010-08-07 [expired: 2017-08-05]
uid Squeeze Stable Release Key <debian-release@lists.debian.org>
/etc/apt/trusted.gpg.d//debian-archive-wheezy-automatic.gpg
-----------------------------------------------------------
pub 4096R/46925553 2012-04-27 [expired: 2020-04-25]
uid Debian Archive Automatic Signing Key (7.0/wheezy) <ftpmaster@debian.org>
/etc/apt/trusted.gpg.d//debian-archive-wheezy-stable.gpg
--------------------------------------------------------
pub 4096R/65FFB764 2012-05-08 [expired: 2019-05-07]
uid Wheezy Stable Release Key <debian-release@lists.debian.org>
ここにリストされている範囲では期限切れはないですね。どこをチェックすればいいんでしょう。
>0.18.11の・・ビルドした方法とmy-config
apt-get update した後 apt-get upgrade はせず強引に apt-get install しただけで、他はyoさんが書かれているそのままです。
root@bbb:~# cat mpd/my-config
#!/bin/sh
./configure \
--disable-bzip2 \
--disable-iso9660 \
--disable-zzip \
--enable-id3 \
--disable-sqlite \
--enable-alsa \
--disable-wave-encoder \
--enable-pipe-output \
--enable-httpd-output \
--disable-recorder-output \
--enable-sndfile \
--enable-oss \
--enable-shout \
--disable-pulse \
--disable-ao \
--disable-mad \
--disable-inotify \
--disable-ipv6 \
--enable-curl \
--disable-mms \
--disable-wavpack \
--disable-lame-encoder \
--disable-twolame-encoder \
--enable-vorbis \
--enable-lsr \
--enable-rtopt \
--enable-ffmpeg \
--disable-cdio-paranoia \
--with-zeroconf=auto
CXXFLAGS="-O3 -march=native"
私の環境では、gitから作ったmpd-dsd-018.11(140704)ではdsdの音が出ませんが、twlさんはdsd128も再生できているようですね。
http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-4.html#post3986829" target="_blank">http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-4.html#post3986829
tinkerさん
lintweakerさんによれば、flacの問題はmpdのoutputを32bitにすれば良いらしいですが、私はどこを設定するのかよくわかりません。mieroさんによれば、切替時や停止時のマシンガンサウンドは、16bitか32bitにすればいいらしいですが・・・結局、差し当たって32bitに固定すればしのげるって事らしいですね。
>flacの問題はmpdのoutputを32bitにすれば良いらしいですが、私はどこを設定するのかよくわかりません。
mpd.confでformat "44100:32:2"ってっことなんですかね。
でも、それだと全部44100/32にリサンプリングされちゃいますね。
ところでNew Boticで、mpdの他にympdってのが動いてますが何なんでしょうか?
rc.localから起動しているみたいです。
情報ありがとうございます。もう一度クリーンな状態からビルドして、僕のところでもビルドは通りました。どうも、fdをインストールする時、ffmpeg関連のライブラリを壊してしまったということですかね。
しかし、このバイナリ、音が出ませんね。またまた茨の道です(^^;;;。twlさんのところはどうやってクリアしたのですかね。
うちはではほとんど困らないので、V4でformat "44100:16:2"としてみました。
V4でも曲の切替時のノイズなど、ずいぶん小さくなります。
たぶんNew Boticでも同様の効果があるかもしれません。
上記設定で、5/26版の0.18.11+rt_opを試してみました。
V4とNew Boticでの音の違いは、driverでもkernelでもなくmpd由来みたいです。
ついでにNew Botic用のkernelです。
変更点は以下の2箇所のみなので変化はわずかです。
というか、地味になった?って感じです。
・Default I/O scheduler (Deadline)
・Preemption Model (Preemptible Kernel (Low-Latency Desktop))
http://mimizukobo.sakura.ne.jp/upload/zImage-3.15.1_01-botic" target="_blank">http://mimizukobo.sakura.ne.jp/upload/zImage-3.15.1_01-botic
>しかし、このバイナリ、音が出ませんね。
mpd-dsdのソースは最新版のものですか?
5/24のソースにパッチを当ててbuildすればどうでしょうか(検証してません)
yoさんが git clone されたタイミングはどうでしょうか。
https://github.com/lintweaker/mpd-dsd-018/commit/0ec3a713b805bd24aef9f385204e1d8fa673ec70" target="_blank">https://github.com/lintweaker/mpd-dsd-018/commit/0ec3a713b805bd24aef9f385204e1d8fa673ec70
今から遅い晩御飯食べて、それから作ってみます。
今日は酔っぱらったので(^^;;、明日、試してみます。
> しかし、このバイナリ、音が出ませんね。またまた茨の道です(^^;;;。twlさんのところはどうやってクリアしたのですかね。
最初に、あくまでもmiero氏の3.15.1のカーネルで作業されることをおすすめします。yoさんには釈迦に説法みたいで大変恐縮ですが、miero氏のbbb-demo-botic-v1-2gb.imgから起動ディスクを作成、起動後にお約束通りapt-get update/upgradeした後、ビルドに必要な環境を
apt-get install build-essential libglib2.0-dev
で設定、その後、mpdに必要なライブラリを
apt-get build-dep mpd
で設定し、ついでにapt-get autoconf automake、その後でJurgenさんというかlintweakerさんのソースを展開、autogen.shおよびmakeで正常動作のmpdバイナリが出来るはずです。
今回のバージョンではmpd.confのaudio_outputに"format "44100:32:2""を追加したら44.1Kのflacが問題なく再生されましたので、これまでの課題がひとつ解決されました。しかし、この設定ではdsdの再生ができなくなるので一長一短というところです。
なお、現在のboticの環境は常に新しい状態に進んでいるので、変にローカライズされたカーネルを使わずに、作者miero氏の提供している3.15.1のカーネルに固定した状態で問題点を探し出していくことがひとつの協力になると思います。
蛇足ですが、個人的には3.15.1のカーネルはkernel.orgからのソースのみでBBB用に作れることを確認しています。面倒くさいのでNelsonさんのlinux-devのKERNEL内にkernel.orgのファイルをそのまま置いて、miero氏のカーネルの.configをコピー、tools/rebuild.shでビルドするとあっさり出来上がります。これにboticのdtbをいれてやると以下のごとく自前のカーネルでも普通にbotic環境になりました。
root@bbb:~# uname -a
Linux bbb 3.15.1-botic1_BBB_0711-bone0.1 #1 SMP Fri Jul 11 22:12:13 JST 2014 armv7l GNU/Linux
twl
>KERNEL内にkernel.orgのファイルをそのまま置いて、miero氏のカーネルの.configをコピー、tools/rebuild.shでビルドするとあっさり出来上がります
説明の端折り方が半端ないですね(笑)
何にも分かってないって誤解されますよ。
> 説明の端折り方が半端ないですね(笑)
何にも分かってないって誤解されますよ。
誤解じゃなくて、多分分かっていないのでしょう。(^^;
私の言いたかったのは今はBoticの環境に協力するためには、それに合ったDACの環境で問題点を追求することであり、そのためにはオリジナルのカーネルでの環境を維持することが必要でしょう、ということです。分かっていなくても動くカーネルが作れてしまうような状況は自分でも怖いなとは思いますが。
>そのためにはオリジナルのカーネルでの環境を維持することが必要でしょう、ということです
これについては、ほぼ同意です。
ただし、4822くらいの変更で動かなくなるdriverであれば、早めに修正してもらったほうがいいと思いますよ。
>分かっていなくても動くカーネルが作れてしまう
説明通りなら、単に起動しますってだけで音は鳴らないはずですよって事です。
素直に起動ディスクの作成からやり直したら、ちゃんと音の出るmpdがビルドできました(^^)。最新のgitを使ったということもありますが、my-configを使わないで、build-depのディフォルトの状態でmakeしたのが効いたのですかね。
format "44100:32:2"での再生も確認しました。これは便法だと思いますので、いずれちゃんとした解決がされると思いますが、とりあえず切り替え用のスクリプトを作れば、大分楽になりますので、歓迎です。
あとはご本家のボードでも議論されていますが、スキップ(終了)時のノイズですね。これは僕の環境では旧boticで起きなかったので、mpdに対するパッチが原因だと思います。まあ、Jurgenさんが話題にしているので、これもそのうち解決されるのでしょうが。
New Botic用のkernelを試してみました。上記のbotic対応最新dsd環境で、zImage入れ換えで、確認しました。
pcm再生は問題ありません。オリジナルより落ち着いた雰囲気の音ですね。dsdは再生できません。原因は調査中ですが、これは仕様でしょうか。
ところでbotic版のカーネルって、どういう作り方をするのでしょうか。最近bbbのカーネルビルドと縁がなくなったもので、twlさんとのやりとりを拝読して漠然としたイメージは分かるのですが、教えて頂ければ幸いです。
あと、#4818で、
> ところでNew Boticで、mpdの他にympdってのが動いてますが何なんでしょうか?
http://www.ympd.org/" target="_blank">http://www.ympd.org/
ですね。何故、新boticがこれを推奨するのかは不明ですが。
> 素直に起動ディスクの作成からやり直したら、ちゃんと音の出るmpdがビルドできました(^^)。最新のgitを使ったということもありますが、my-configを使わないで、build-depのディフォルトの状態でmakeしたのが効いたのですかね。
mpdがビルドできて幸いです。安心しました。
> 最新のgitを使ったということもありますが、my-configを使わないで、build-depのディフォルトの状態でmakeしたのが効いたのですかね。
多分そうなのでしょう。以前にもmpdのビルドはできるものの必要なライブラリが入っていないという経験があり、その場合には原則に戻るというやり方でmpdをビルドしています。
> format "44100:32:2"での再生も確認しました。これは便法だと思いますので、いずれちゃんとした解決がされると思いますが、とりあえず切り替え用のスクリプトを作れば、大分楽になりますので、歓迎です。
そうですね。私も簡易スクリプトで切り替え中です。ただ、DSDとPCMの物理的なスイッチも切り替えないといけないので、ちょっと煩雑といえば煩雑ですね。でも、これで44.1KのPCMもDSDもOKな環境になったのだから、文句は言わない、幸せだと思え、という感じです。
> あとはご本家のボードでも議論されていますが、スキップ(終了)時のノイズですね。これは僕の環境では旧boticで起きなかったので、mpdに対するパッチが原因だと思います。まあ、Jurgenさんが話題にしているので、これもそのうち解決されるのでしょうが。
diyaudioにも書きましたが、僕の場合、その機関銃ノイズというのが起きないので、逆に不安になります。(^^;
ついでにカーネルの件ですが、
> ところでbotic版のカーネルって、どういう作り方をするのでしょうか。
これについてコメントをいれるとちょっと怖いのですが (^^;、miero氏のカーネルはおそらくNelson板とは無縁、自分で準備したpatch(/sourcesにあるやつですね)をkernel.orgの3.15.1に直接当てたものではないかと思い、kernel.orgから3.15.1のソースをダウンロード、これにmiero氏のpatchをあてて、先にも書いたように現行の3.15.1-botic1から/proc/config.gzをzcatしたものをそのまま.configに流用したらうまくビルドできました。
ただubuntu上のクロスでのビルドが面倒くさいので、BBBのカーネルビルドでお世話になっているNelsonさんのlinux-devフォルダーを使ったのは先に書いた通りです。これだとクロスの指定やdtbs、modulesの作成も一括でやってくれて便利なので、つい使ってしまうのですよね。ただ、miero氏のオリジナルにあったam335x-boneblack-botic.dtbだけはそのままコピーして自前のdtbsの中に入れて起動させています。
昨日ご紹介した通り、miero氏作成のオリジナルカーネル同様、上記の自前カーネルではbotic環境でのDSD/PCM再生が問題なくできています。動作状況は以下のような具合です。負荷は殆ど変わらないですね。
root@bbb:~# uname -a
Linux bbb 3.15.1-botic1_BBB_0711-bone0.1 #1 SMP Fri Jul 11 22:12:13 JST 2014 armv7l GNU/Linux
DSD128
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1039 mpd 20 0 78016 16m 7404 S 8.3 3.3 1:45.96 mpd
981 root 20 0 0 0 0 S 6.1 0.0 1:03.71 cifsd
1043 root 20 0 0 0 0 S 3.2 0.0 0:10.65 kworker/0:1
1038 mpd 20 0 78016 16m 7404 S 2.2 3.3 0:31.43 mpd
3 root 20 0 0 0 0 S 1.6 0.0 0:37.90 ksoftirqd/0
1068 root 20 0 4172 2140 1752 R 1.6 0.4 0:00.50 top
1035 mpd 20 0 78016 16m 7404 S 0.6 3.3 0:14.19 mpd
1037 mpd 20 0 78016 16m 7404 S 0.6 3.3 0:05.80 mpd
25 root 20 0 0 0 0 S 0.3 0.0 0:05.22 kswapd0
PCM
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
890 mpd 20 0 76564 14m 6716 S 8.4 3.0 0:13.94 mpd
963 root 20 0 4172 2116 1724 R 2.6 0.4 0:00.39 top
891 mpd 20 0 76564 14m 6716 S 2.3 3.0 0:05.19 mpd
3 root 20 0 0 0 0 S 0.3 0.0 0:00.48 ksoftirqd/0
14 root 20 0 0 0 0 S 0.3 0.0 0:00.27 kworker/0:1
559 avahi 20 0 2868 2032 1744 S 0.3 0.4 0:00.26 avahi-daemon
887 mpd 20 0 76564 14m 6716 S 0.3 3.0 0:02.54 mpd
昨日書き込んだメッセージの訂正です。
> dsdは再生できません。原因は調査中ですが、これは仕様でしょうか。
僕の勘違いでした。オリジナルのmpdに戻したら、問題なく再生出来ました。再生状態も良好です。
しかし、ビルドしたmpdでのdsd再生が出来なくなったのですが、ウーム、敵は手強いです(^^;;;(^^;;;。
> diyaudioにも書きましたが、僕の場合、その機関銃ノイズというのが起きないので、逆に不安になります。(^^;
ということはハードに依存する部分もあるということですね。難問になるかもです。僕の場合はマシンガンというよりピストル一発です。
僕の環境ではdsdだけですが、syuさんの環境ではpcmだけで発生しているようですね。これは同じハードなので相当に不思議です。あと僕の環境ではビルドしたmpdとオリジナルのmpdで差はないのですが、syuさんのところでは違うようなので、これも謎です。
もっとも、直前のメッセージに書きましたが、只今、ビルドしたmpdで音が出なくなったので、確認が出来なくなっていますが(^^;;;。
> kernel.orgから3.15.1のソースをダウンロード、これにmiero氏のpatchをあてて、先にも書いたように現行の3.15.1-botic1から/proc/config.gzをzcatしたものをそのまま.configに流用したらうまくビルドできました。
なるほど、やっぱりそういうことでしたか。
> ただubuntu上のクロスでのビルドが面倒くさいので、BBBのカーネルビルドでお世話になっているNelsonさんのlinux-devフォルダーを使ったのは先に書いた通りです。
これは build_kernel.sh を使っているという意味ですか。あのスクリプトはgitやpatchを自動的に処理しているはずなので、そのあたりは手を入れてショートカットして、使っているということですか。
+ dsd_native "yes"
を指定しないといけなくなったのですね。
日替わりだなぁ。
いつもありがとうございます。
>変化はわずかです。
>というか、地味になった?って感じです。
>・Default I/O scheduler (Deadline)
>・Preemption Model (Preemptible Kernel (Low-Latency Desktop))
まずmpd-dsd-0.18.11-miero版で試しました。
私の環境では、変化はわずかではないです。
歪み感が少なくなり、細部が鮮明になります。
dsdも同様。
7月13日Jurgen版だと、mpd.confを2か所書き換え、pcmはmiero版よりややスッキリだけど、ややスカスカ系。format "44100:32:2" だからでしょうかね。dsdはもちろんこれをコメントアウトしておかないと音は出ませんが、私の環境ではちゃんと鳴ります。
format行をコメントアウトしたままだとpcmはノイズまみれですが、この状態ではperiod_time行もコメントアウトしたほうがノイズは少ないですね。audio_buffer_size "4092" buffer_before_play "98%" は効果なしでした。
このような次第で、zImageはdeadline(low latency)、mpd-dsd-018は、test目的以外では、まだmiero版ですね。
Enable the block layer -> IO Schedulers ->
<*> Deadline I/O scheduler
< > CFQ I/O scheduler
Default I/O scheduler (Deadline) --->
┌──────────────────────────┐
│ (X) Deadline │
│ ( ) No-op │
音が鳴るんですね、いつものポエムかと思ってましたm(_ _)m
ということで、お互い関わらないほうが幸せに過ごせるんじゃないかと思いますので、ご配慮よろしくお願いします。
yoさん、syuさん
Boticはまだα版なので、せめてβ8くらいになるまで変更しちゃ駄目だそうです。
まあβ8になるに前に3.16がリリースされると思いますので、我慢できるのはせいぜい4週間くらいですけど。
>これは build_kernel.sh を使っているという意味ですか
rebuild.shでしょうね。
>>・Default I/O scheduler (Deadline)
これについては好みでいいと思いますが
>>・Preemption Model (Preemptible Kernel (Low-Latency Desktop))
こっちはデフォにして欲しいですね
LAN直結 http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=4537#4905" target="_blank">http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=4537#4905
USB-LAN http://www.logitec.co.jp/products/lan/langtju3/" target="_blank">http://www.logitec.co.jp/products/lan/langtju3/
単純に消費電力が少なそうなので選びました。
ドライバ
http://www.asix.com.tw/products.php?op=pItemdetail&PItemID=131;71;112" target="_blank">http://www.asix.com.tw/products.php?op=pItemdetail&PItemID=131;71;112
http://www.asix.com.tw/FrootAttach/driver/AX88179_178A_LINUX_DRIVER_v1.10.0_SOURCE.tar.bz2" target="_blank">http://www.asix.com.tw/FrootAttach/driver/AX88179_178A_LINUX_DRIVER_v1.10.0_SOURCE.tar.bz2
これをtinkerさんの3.15.1-botic1上でmakeしてみましたが、上手くいきません。
root@bbb:/home/AX88179/AX88179_178A_LINUX_DRIVER_v1.10.0_SOURCE# make
make: Warning: File `Makefile' has modification time 4.6e+06 s in the future
make -C /lib/modules/3.15.1-botic1/source SUBDIRS=/home/AX88179/AX88179_178A_LINUX_DRIVER_v1.10.0_SOURCE modules
make: *** /lib/modules/3.15.1-botic1/source: No such file or directory. Stop.
make: *** [default] Error 2
何かいろいろ足りないみたいですが、何を用意すれば良いんでしょうね。どなたか助け舟をよろしく。
make -C /lib/modules/3.10.11-voyage/build SUBDIRS=/root/AAA/AX88179_178A_LINUX_DRIVER_v1.10.0_SOURCE modules
make[1]: Entering directory `/usr/src/linux-source-3.10.11-voyage'
WARNING: Symbol version dump /usr/src/linux-source-3.10.11-voyage/Module.symvers
is missing; modules will have no dependencies and modversions.
CC [M] /root/AAA/AX88179_178A_LINUX_DRIVER_v1.10.0_SOURCE/ax88179_178a.o
Building modules, stage 2.
MODPOST 1 modules
CC /root/AAA/AX88179_178A_LINUX_DRIVER_v1.10.0_SOURCE/ax88179_178a.mod.o
LD [M] /root/AAA/AX88179_178A_LINUX_DRIVER_v1.10.0_SOURCE/ax88179_178a.ko
make[1]: Leaving directory `/usr/src/linux-source-3.10.11-voyage'
古いカーネルで実験しました。ワーニングは出ますがエラーなく
終了します。原因は
>time 4.6e+06 s in the future
システムの時間が進んでいる。
>/lib/modules/3.15.1-botic1/source: No such file or directory. Stop
ヘッダーファイルがインストールされていない。存在しない場合は
ソースを/usr/srcにdownloadしてリンクを張る。
voyageで実験までしていただいてありがとうございます。
今回の件は、bbbでのi2s直結での話で、miero氏が公開されているテスト用イメージを前提にしています。
http://bbb.ieero.com/" target="_blank">http://bbb.ieero.com/
これをさらに好みな音にしようと、tinkerさんが作ってくださったのが、No.4822のzImageです。変更点は2点で
・Default I/O scheduler (Deadline)
・Preemption Model (Preemptible Kernel (Low-Latency Desktop))
この上でUSB-LANアダプタが使えるようにしたいのですが、このkernelは独自パッチがあたっていたりして、私レベルではよくわからないんですよね。
最初とりあえず挿してみたら動かなかったのでソースからmake installと早合点していましたが、実はドライバはkernelディレクトリに存在しました。
# ls -l /lib/modules/3.15.1-botic1/kernel/drivers/net/usb/ax88179_178a.ko
-rw-r--r-- 1 debian debian 22470 6月 25 16:50 /lib/modules/3.15.1-botic1/kernel/drivers/net/usb/ax88179_178a.ko
USBに刺した時の反応は、
] usb 2-1: device v0b95 p1790 is not supported
しかし、ax88179_178a.ko には idVendor=0b95、idProduct=1790 が既にセットされているんですよね。
# modprobe asix
ERROR: could not insert 'asix': Exec format error
ということで、このままでは無理みたいです。
皆様
今回改めて、voyage-mpd-rt/apu1cのLAN直結と、同じサーバに接続したbbb/i2s-botic-v1(tinkerさんのzImage)を聴き比べてみました。サーバの音が以前とは変化したので、評価も変わりました。私の好みでは僅差でbotic-v1(外部クロック)が優位です。LAN直結でさらに好みの音になるか、試してみたいですね。
apu1c4serverにハブ機能をもたせ、そこからbbbのeth0に直結です。
私の環境では劇的には変わりません。
元が良いから差は少なめみたいです。
ちょっと、かなり、良いっかな。一応お勧め。
USB-LANを使用した独立型LAN直結をやってみたいですね。
http://www.diyaudio.com/forums/twisted-pear/250583-building-open-embedded-audio-applicance-93.html#post4008130" target="_blank">http://www.diyaudio.com/forums/twisted-pear/250583-building-open-embedded-audio-applicance-93.html#post4008130
- two BBB will be required
- one configured for playback
- other one configured for record
- pseudo-random data generated and played to other BBB
- received and checked if matches transmitted data or not
EDIT: DSD variant of this test might be possible too...
意図を解釈しにくいんですが、bbbを2台使って、伝送データのエラーをチェックするつもりなんですかね。英語に強い方のご意見を希望。
usb-lan変換アダプタを認識しないという件ですが、
/etc/udev/rules.d/70-persistent-net.rules
が適切に更新されていないことが原因のようですね。手作業で現在の行を
# SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
コメントアウトし、
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="ff:ff:ff:ff:ff:ff", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth0"
SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="ff:ff:ff:ff:ff:ff", ATTR{dev_id}=="0x0", ATTR{type}=="1", KERNEL=="eth*", NAME="eth1"
という二行を追加すれば、認識されるようになりました(ff:ff:ff:ff:ff:ffはMACアドレス)。
botic版の/lib/udev/write_net_rulesでの設定に問題があるということなのですかね。
ただし、この方法はオリジナルのイメージでは有効ですが、カーネルをtinkerさんのものに入れ換えていると、カーネル名が違うので、変換アダプタ用のモジュールがロードされません。この場合はカーネルのビルドが必要です。やり方はtwlさんが#4826に示されている方法をとるか、nelson版カーネルを使うかです。twlさんの方法は関連するメッセージをみれば、分かると思いますので、nelson版を使う方法を書いておきます。
http://www.eewiki.net/display/linuxonarm/BeagleBone+Black#BeagleBoneBlack-LinuxKernel" target="_blank">http://www.eewiki.net/display/linuxonarm/BeagleBone+Black#BeagleBoneBlack-LinuxKernel
ここの方法で
git checkout origin/am33x-v3.15 -b tmp
を指定し、ビルド開始前(menuconfig)まで実行。
3.15.1にチックアウトするため
git log --oneline
3.15.1のidは3affb32と分かるので
git checkout 3affb32
これでnelson版オリジナルのソースは完成。
次にパッチをかける。boticイメージの/sources/linux-3.15.1.patchesにある0001から0011まで
patch -p1 < linux-3.15.1.patches/0001-pm-fixes.patch
という具合に順番にかける。以下のエラー(rje)が発生します。
./KERNEL/arch/arm/boot/dts/am335x-bone-common.dtsi.rej
./KERNEL/arch/arm/boot/dts/Makefile.rej
./KERNEL/Makefile.rej
./KERNEL/include/linux/mfd/tps65217.h.rej
./KERNEL/drivers/mfd/tps65217.c.rej
どれもシンプルなエラーなので、手修正でなおせます(KERNELのMakefileはカーネルレベルも変更しておいた方がいいです)。後は普通にrebuildすればいいです。bb-kernelで
./tools./rebuild.sh
コンフィグは実機で
cat /proc/config.gz | gzip -d > config-tinker_botic3.15.1
でgetし、持ってくる。
menuconfigはモジュールのままでよければ、変更なし。組み込む場合は
Device Drivers --->
[*] Network device support --->
USB Network Adapters --->
{*} Multi-purpose USB Networking Framework
以降は必要なものを(僕の場合は)
<*> ASIX AX88xxx Based USB 2.0 Ethernet Adapters
<*> Davicom DM96xx based USB 10/100 ethernet devices
と指定すればいいです。
これで、モジュールを組み込んだカーネルの出来上がりとなります。メデタシ、メデタシの筈なのですが、bbbはそんなにやわじゃない(^^;;;。
直結し、pingも通り、nasのマウントも出来るのですが、データのやりとりをしようとするとハングしちゃうのですよね。どうも、アダプタどおしを対抗接続させると、性能が出ないということのようです。回避方法は香港からのapu1c待ちしかなさそうです。ウームだなぁ(^^;;;。
patchのエラー内容からみて「Botic版はnelsonソースを使っていないのではないか」というtwlさんの推定はあたりのようですね。
既にお気付きと思いますが、いよいよ近日中にi2sのinterfaceが発売されそうです。
http://www.diyaudio.com/forums/twisted-pear/250583-building-open-embedded-audio-applicance-95.html#post4016515" target="_blank">http://www.diyaudio.com/forums/twisted-pear/250583-building-open-embedded-audio-applicance-95.html#post4016515
早いもの勝ちみたいなので、受注開始を見逃さないようにしないと初回ロットは買いそびれるかも。それまでにはドライバもアップデートされるでしょうね。
予想通りb3dac直結端子も付いていますので、ここに直結するべく準備済みです ^^;;
http://mimizukobo.sakura.ne.jp/upload/syu-b3dac.jpg" target="_blank">http://mimizukobo.sakura.ne.jp/upload/syu-b3dac.jpg
yoさん
bbbにusb-lanアダプタが付けば、こっちでもbridgeとindependentの比較が出来ますから、とりあえずyoさんお示しの方法でモジュール付き3.15.1作成にトライしてみます。
アップデートされたBotic-V3が公開されています。
V1が公開されてから早くも2か月を超えたんですね。
http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-9.html#post4039348" target="_blank">http://www.diyaudio.com/forums/twisted-pear/258254-support-botic-linux-driver-9.html#post4039348
http://bbb.ieero.com/" target="_blank">http://bbb.ieero.com/
早速、外部クロックで音出ししてみました。
手順は・・
# mkdir boot
# mount /dev/mmcblk0p1 boot
# nano boot/uEnv.txt
== uEnv.txt ==
kernel_file=zImage
initrd_file=initrd.img
fdtfile=am335x-boneblack-botic.dtb
##Enable systemd
initopts=quiet init=/lib/systemd/systemd
##Disable usage of external Botic clocks
optargs=coherent_pool=1M snd_soc_botic.ext_masterclk=3 # 0から3に変更
console=ttyO0,115200n8
mmcroot=/dev/mmcblk0p2 ro
mmcrootfstype=ext4 rootwait fixrtc
loadkernel=load mmc ${mmcdev}:${mmcpart} 0x82000000 ${kernel_file}
loadinitrd=load mmc ${mmcdev}:${mmcpart} 0x88080000 ${initrd_file}; setenv initrd_size ${filesize}
loadfdt=load mmc ${mmcdev}:${mmcpart} 0x88000000 /dtbs/${fdtfile}
loadfiles=run loadkernel; run loadinitrd; run loadfdt
mmcargs=setenv bootargs console=tty0 console=${console} ${optargs} root=${mmcroot} rootfstype=${mmc$
uenvcmd=run loadfiles; run mmcargs; bootz 0x82000000 0x88080000:${initrd_size} 0x88000000
#
=====
これで再起動すると外部クロックが有効になります。
# reboot
私はmpd.confを書き換えてGMPCで音を出しましたが、PCMでは問題ないようです。私の環境では、DSD、特にDSD128がやや不満な音ですが、これはV1でも同様でした。
まずは動作報告。
追記:書き忘れましたが、V3ではピン切り替えなしでDSDが両チャンネル再生されます。
↑これは誤認でした。片チャンネルしか出ていませんでした。DSDの音に不満なのは当然ですね。
# mpd -V
Music Player Daemon 0.18.12-dsd-rt
# uname -a
Linux bbb 3.16.1-botic3 #1 PREEMPT Thu Aug 28 01:44:57 CEST 2014 armv7l GNU/Linux
# cat /sys/block/mmcblk1boot1/queue/scheduler
noop deadline [cfq]
私も新しいBoticを試してみました。
syuさんがお示しの通り、uEnv.txt を編集し、外部クロックとしてAmaneroを使いました。尚、DACはIrBerryを使用しました。
PCMでのテスト結果では、旧版で見られたFLAC 44.1k/16bit の
不具合は修正されていることが確認出来ました。久しぶりに
BBBの音を訊きましたが解像度も十分ですね。
ただ、私の環境では48k系FLAC再生においてクロックが追従せず、ピッチが下がってしまいます。Amaneroに積まれている
OSCのクロック周波数は、README記載のデフォルト値と同一
でしたし、古いドライバ(BOTIC-3とか呼んでいたやつ)を
試した際は、このような問題はなかったのですが・・・。
もうしばらく弄れそうなところを探してみようと思って
います。
先ずは、ご報告まで。
今後とも宜しくお願いします。
全体的に完成度は上がっている思います。間違いなくβバージョンにはなっていますね。
音はv1に継続して、素晴らしいと思いました(aitdac + 外部クロックで聴きました)。特にdsd再生はv1よりかなりレベルアップしたような気がします。ほとんどコンサートホールで生の演奏を聴いている雰囲気です。lintweakerさんのおかげかしら。ハイレゾpcmには興味はないので、他の方におまかせ。
dsd再生でのガンショットノイズは残っています。僕のところでの大きな問題点はこれだけです。
mpdの設定は楽ですね。/etc/mpd.confの変更だけで済みます。nas(nsf)の設定も楽です。/etc/fstabの設定だけでok。タヌキ(^^;;;でも出来るというレベル。
mpdはyanさんのパッチ(rtopt)がかかっているようです。カーネルもpreemptに変わったのですかね。
カーネルは3.16.1になったようだから、rt化に関してはrtパッチ待ちです。syuさんの指摘されているcfqはまあ仕方がないでしょうね。あと、usb-lanアダプターは何もしなくても認識するようになりました。
以上、とりあえずのまとまりのない感想でした。
ところで
apt-get update
すると
Get:1 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy Release.gpg [1,655 B]
Get:2 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates Release.gpg [836 B]
Get:3 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy Release [168 kB]
Get:4 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates Release [124 kB]
E: Release file for http://ftp.us.debian.org/debian/dists/wheezy-updates/Release" target="_blank">http://ftp.us.debian.org/debian/dists/wheezy-updates/Release is expired (invalid since 77d 13h 44min 54s). Updates for this repository will not be applied.
というエラーになり、ライブラリの更新ができないのですが、/etc/apt/source.listをいじるしかないのですかね。
私も一時期botic3でamaneroを使っていましたが、私の使い方(USB別電源供給)では44.1/48の自動切り替え現象は起きませんでした。(No.4293)
96/24ソースで外部クロック24.576MHz供給時の /proc/asound/card0/pcm0p/sub0/hw_params は・・
root@bbb:~# cat /proc/asound/card0/pcm0p/sub0/hw_params
access: RW_INTERLEAVED
format: S32_LE
subformat: STD
channels: 2
rate: 96000 (96000/1)
period_size: 1024
buffer_size: 16384
この状態でDACには96kHzと表示され、テンポもピッチも正常に再生されます。
22.5732MHzの外部クロックに切り替えても /proc/asound/card0/pcm0p/sub0/hw_params の表示は外部クロック24.576MHz供給時と同じです。
しかしDACに表示される周波数は88.2kHzとなり、ピッチは相応に低下し、テンポもそれに応じて遅くなります。
amanero側にbbbの再生周波数を伝える手段がないのに自動的にfsが切り替わるのなら、それはオカルト現象です^^;;
USB経由などで再生周波数に関する情報がamaneroに伝達されていたはずで、今回のV3でクロックが自動的に追従しないなら、以前存在した情報伝達手段がなくなったと考えるべきでしょうね。
V3でもUSBは生きていますので、MPDの設定次第では自動切り替えできるかもです。
私の場合・・
root@bbb:~# apt-get update
Get:1 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy Release.gpg [1655 B]
Get:2 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates Release.gpg [836 B]
Get:3 http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates Release.gpg [836 B]
Get:4 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy Release [168 kB]
Get:5 http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates Release [102 kB]
Get:6 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates Release [124 kB]
Get:7 http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates/main Sources [167 kB]
Get:8 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy/main Sources [7476 kB]
Get:9 http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates/contrib Sources [20 B]
Get:10 http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates/non-free Sources [20 B]
Get:11 http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates/main armhf Packages [255 kB]
Get:12 http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates/contrib armhf Packages [20 B]
Get:13 http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates/non-free armhf Packages [20 B]
Get:14 http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates/contrib Translation-en [14 B]
Get:15 http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates/main Translation-en [120 kB]
Get:16 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy/contrib Sources [55.7 kB]
Get:17 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy/non-free Sources [112 kB]
Get:18 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy/main armhf Packages [7433 kB]
Get:19 http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates/non-free Translation-en [14 B]
Get:20 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy/contrib armhf Packages [39.3 kB]
Get:21 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy/non-free armhf Packages [67.7 kB]
Get:22 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy/contrib Translation-en [34.8 kB]
Get:23 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy/main Translation-en [3847 kB]
Get:24 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy/non-free Translation-en [66.1 kB]
Get:25 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates/main Sources [4457 B]
Get:26 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates/contrib Sources [20 B]
Get:27 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates/non-free Sources [20 B]
Get:28 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates/main armhf Packages [6007 B]
Get:29 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates/contrib armhf Packages [20 B]
Get:30 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates/non-free armhf Packages [20 B]
Get:31 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates/contrib Translation-en [14 B]
Get:32 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates/non-free Translation-en [14 B]
Get:33 http://ftp.us.debian.org" target="_blank">http://ftp.us.debian.org wheezy-updates/main Translation-en [4021 B]
Fetched 20.1 MB in 31s (636 kB/s)
Reading package lists... Done
DDやり直しですかね^^;;
>usb-lanアダプターは何もしなくても認識するようになりました。
mieroさん、ここ見てくれてるのかもですね。
96/24再生時にも十分余裕はありそうですから、USB経由で同時再生は出来そうな気がしますが、どうでしょうね。
root@bbb:~# top -H
top - 20:39:15 up 2:00, 1 user, load average: 0.03, 0.06, 0.06
Threads: 152 total, 1 running, 151 sleeping, 0 stopped, 0 zombie
%Cpu(s): 1.0 us, 1.4 sy, 0.0 ni, 97.6 id, 0.0 wa, 0.0 hi, 0.0 si, 0.0 st
KiB Mem: 508836 total, 503916 used, 4920 free, 6284 buffers
KiB Swap: 0 total, 0 used, 0 free, 415956 cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
1576 root 20 0 5320 2552 2072 R 1.0 0.5 0:00.49 top
791 root -32 0 76676 72m 25m S 0.7 14.5 0:37.91 mpd
42 root -51 0 0 0 0 S 0.3 0.0 0:00.55 irq/86-44e0b000
784 root 20 0 76676 72m 25m S 0.3 14.5 0:15.02 mpd
790 root -33 0 76676 72m 25m S 0.3 14.5 0:07.83 mpd
793 root -33 0 76676 72m 25m S 0.3 14.5 0:42.95 mpd
僕の方ですが、
http://security.debian.org" target="_blank">http://security.debian.org wheezy/updates Release.gpg [836 B]
が上手くいかないために
http://ftp.us.debian.org/debian/dists/wheezy-updates/Release" target="_blank">http://ftp.us.debian.org/debian/dists/wheezy-updates/Release
しにいってエラーになっているように見えます。ネットワーク差でしょうか。
ddエラーということは考えにくいです。念のため、/etc/apt/sources.listの内容を貼り付けていただけますか。
僕の方は
deb http://ftp.us.debian.org/debian/" target="_blank">http://ftp.us.debian.org/debian/ wheezy main contrib non-free
deb-src http://ftp.us.debian.org/debian/" target="_blank">http://ftp.us.debian.org/debian/ wheezy main contrib non-free
deb http://ftp.us.debian.org/debian/" target="_blank">http://ftp.us.debian.org/debian/ wheezy-updates main contrib non-free
deb-src http://ftp.us.debian.org/debian/" target="_blank">http://ftp.us.debian.org/debian/ wheezy-updates main contrib non-free
deb http://security.debian.org/" target="_blank">http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/" target="_blank">http://security.debian.org/ wheezy/updates main contrib non-free
#deb http://ftp.debian.org/debian" target="_blank">http://ftp.debian.org/debian wheezy-backports main contrib non-free
#deb-src http://ftp.debian.org/debian" target="_blank">http://ftp.debian.org/debian wheezy-backports main contrib non-free
です。
> mieroさん、ここ見てくれてるのかもですね。
Thank you very much, mieroさん
です。
root@bbb:~# cat /etc/apt/sources.list
deb http://ftp.us.debian.org/debian/" target="_blank">http://ftp.us.debian.org/debian/ wheezy main contrib non-free
deb-src http://ftp.us.debian.org/debian/" target="_blank">http://ftp.us.debian.org/debian/ wheezy main contrib non-free
deb http://ftp.us.debian.org/debian/" target="_blank">http://ftp.us.debian.org/debian/ wheezy-updates main contrib non-free
deb-src http://ftp.us.debian.org/debian/" target="_blank">http://ftp.us.debian.org/debian/ wheezy-updates main contrib non-free
deb http://security.debian.org/" target="_blank">http://security.debian.org/ wheezy/updates main contrib non-free
deb-src http://security.debian.org/" target="_blank">http://security.debian.org/ wheezy/updates main contrib non-free
#deb http://ftp.debian.org/debian" target="_blank">http://ftp.debian.org/debian wheezy-backports main contrib non-free
#deb-src http://ftp.debian.org/debian" target="_blank">http://ftp.debian.org/debian wheezy-backports main contrib non-free
追記:もしかして、時間がずれてないでしょうか。Boticではntpdate初期設定のままだとずれていることが多いようです。
とりあえず、http://ftp.us.debian.org/debian/" target="_blank">http://ftp.us.debian.org/debian/ を http://ftp.jp.debian.org/debian/" target="_blank">http://ftp.jp.debian.org/debian/に変えたら、問題なくapt-get update は通り、ライブラリの更新も出来るようになりました。何でですかね ?
時刻はあっています。
ところで、/dev/mmcblk0p1ですが、/boot/ubootにmountされています(何のためか、理由は分かりませんが)。従って、uEnv.txtの変更はこれを使えば、別のマウントポイントにmountする必要はありません。ご参考まで。
コメントありがとうございます。
syuさん wrote:
> USB経由などで再生周波数に関する情報がamaneroに伝達されていたはずで、
Phoeniciaさん wrote:
>amaneroもUSB経由で同時再生させればamaneroが出す22.5792MHzと24.576MHzを自動切換えできると思うんですが、
Amaneroへの電源供給はBBBのUSBより行っていましたが、今回バージョンではUSB Audioデバイスとして認識されていませんでした。
root@bbb:~# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: BOTICAudio [TPA BOTIC-Audio], device 0: ES9018 es9018-hifi-0 []
Subdevices: 0/1
Subdevice #0: subdevice #0
これに対して、昔のバージョンでは以下のように認識されていましたので、mpd.conf二追記することでクロック周波数の自動切換がフォローされたんだろうということなんでしょうか。
[root@runeaudio]# aplay -l
**** ハードウェアデバイス PLAYBACK のリスト ****
カード 0: Amanero [Combo384 Amanero], デバイス 0: USB Audio [USB Audio]
サブデバイス: 0/1
サブデバイス #0: subdevice #0
カード 1: Botic [TPA Botic], デバイス 0: ES9018 es9018-hifi-0 []
サブデバイス: 0/1
サブデバイス #0: subdevice #0
・・・ということで、USB Audioを有効にしないと先に進みそうもないです。
>
> # cat /sys/block/mmcblk1boot1/queue/scheduler
> noop deadline [cfq]
mmcblk1boot1ということはeMMCからの起動ではなく、microSDからの外部起動ということですね。それであればboot entryはmmcblk0*に相当するので(mmcblk0boot0, mmcblk0boot1)
root@bbb:~# cat /sys/block/mmcblk0/queue/scheduler とやって、
noop deadline [cfq] という返事が返って来ると思います。この時点で
echo deadline > /sys/block/mmcblk0/queue/scheduler と打てば、
noop [deadline] cfq とdeadlineがio schedulerとして選択されているはずです。再起動やdeadline専用のカーネルを準備する必要はありません。
dmesgを見ればわかりますが、
[ 0.303297] io scheduler noop registered
[ 0.303324] io scheduler deadline registered
[ 0.303763] io scheduler cfq registered (default)
三つのschedulerは起動時に登録されており、後はruntimeで変更可能です。.configでの設定は起動時にどれをdefaultにするかだけの問題です。
以前から、ちょっと気になっていたもので…。
「これ、いちいちカーネルビルドするの大変だなぁ」と思っていたので、情報ありがとうございます。貴重なチューニングノウハウになりそうですね(^^)。
これと言ったネタもないのですが、近況報告です。
botic-v3に合わせて、ピンヘッダ周りの基板を作りなおしました。基板上のスイッチはpcm/dsd切り替え(P9_29/P9_41切り替え)です。ここからエレアト製i2s-hdmi基板に直結しています。クロックもまだ手動挿し換えです。
http://mimizukobo.sakura.ne.jp/upload/syu-botic3-heatsink2.jpg" target="_blank">http://mimizukobo.sakura.ne.jp/upload/syu-botic3-heatsink2.jpg
uda3もしくはエレアト製i2s-hdmi基板の7ピンコネクタとbbbを接続する場合のピン配置をまとめてみました。
HDMI ( UDA3 ) | BBB-GPIO
| cape power enable P9_14
| External Mclk switch P9_24 44k1/48k
7 GND
6 DSD SW | DSD switch P9_26
5 Mclk | Mclk : Mclk P9_25
Sdata3 :dsd3 P9_27
4 Sdata0 :dsd0 | Sdata0 :dsd0 P9_30
3 LR clock :dsd1 | LR clock : P9_29 HDMI_pin3 on pcm
2 Bit clock | Bit clock : Bit clock P9_31
1 +3.3V
| Sdata1 :dsd1 P9_41 HDMI_pin3 on dsd
| Sdata2 :dsd2 P9_42
apu1cもbbbも、どちらも過熱気味なので、大きめの放熱器を貼り付けました。bbbの放熱器は30x30x20mmです。高さのあるチップ部品に接触しないよう注意が必要ですが、このサイズまでは貼り付きます。 http://item.rakuten.co.jp/futabaya-one/hs-332/" target="_blank">http://item.rakuten.co.jp/futabaya-one/hs-332/ 大きい導電体なのでアースしてあります。
http://mimizukobo.sakura.ne.jp/upload/syu-botic3-heatsink1.jpg" target="_blank">http://mimizukobo.sakura.ne.jp/upload/syu-botic3-heatsink1.jpg
twlさんに教えていただいた方法で[deadline]指定しました。ありがとうございました。
root@bbb:~# cat /sys/block/*/queue/scheduler
noop [deadline] cfq
noop [deadline] cfq
noop [deadline] cfq
noop [deadline] cfq
yoさんのところではusb-lanが認識できているとのことですが、私のLAN-GTJU3では、botic-v1(3.15.1)のときと同じ反応です。
] usb 2-1: device v0b95 p1790 is not supported のエラーメッセージ。
kernel buildすればいいんでしょうが、多忙もあり未着手です。
[ ait-dac < i2s直結 > botic-v3/bbb < bridge直結 > apu1c4-server ]の構成は素晴らしい音で、余計なことをする気が起きませんが、数時間~10時間程度で突然リブートしてしまう現象だけは依然として残っています。この現象はbbbのtypeA,B,Cどれでも発生しますし、放熱器を貼り付けても変化なし。私の環境だけで起きているのでしょうかね。
お久しぶりです。
以前に投稿した際に併せて書き込んでおけばよかったのですが、起動時からdeadlineを指定されたい場合はIO schedulerの別表記に相当するelevatorを用いuEnv.txt内のoptargsに記述して下さい。以下はその例です。
optargs=coherent_pool=1M snd_soc_botic.ext_masterclk=3 elevator=deadline
ただ、どうなんでしょうね、deadlineは回転系のドライブでのlatencyに対しては効果があるようですが、BBBではmicroSDを使用するので非回転系のSSDに向いているといわれるnoopの設定でいいんじゃないかと思うんですが。
http://doc.opensuse.org/products/draft/SLES/SLES-tuning_sd_draft/cha.tuning.io.html" target="_blank">http://doc.opensuse.org/products/draft/SLES/SLES-tuning_sd_draft/cha.tuning.io.html
> kernel buildすればいいんでしょうが、多忙もあり未着手です。
3.16.xからはNelson版を用いなくとも、kernel.orgからの素のsourceでbuildできるようになりましたので、試されてはいかがですか。
上記のsourceにbotic3のimgで設定された/sources/linux-3.16.1.patches/patches/botic内のパッチをあて、3.16.1-botic3の.configを使い、make menuconfig, make zImage, make dtbs, make modulesでエラーなくクロスコンパイルできます。moduleの追加設定はお好きなように。
なお、dtbsについては3.16.1-botic3にあるdtbsで流用可能です。ということで、私のbotic3環境では現在3.16.2のカーネルが動いています。
Linux bbb 3.16.2_0907 #1 SMP PREEMPT Sun Sep 7 10:52:14 JST 2014 armv7l GNU/Linux
945 mpd -32 0 78740 74m 25m S 3.3 15.0 15:21.97 mpd
946 mpd -33 0 78740 74m 25m S 1.3 15.0 7:51.80 mpd
(mpd: 0.18.12-dsd-rt)
> 起動時からdeadlineを指定されたい場合はIO schedulerの別表記に相当するelevatorを用いuEnv.txt内のoptargsに記述して下さい。
情報ありがとうございます。rc.localでやっていたのですが、この方がスマートですね。サイトの記事にも追記しておきます。
syuさん
> yoさんのところではusb-lanが認識できているとのことですが、私のLAN-GTJU3では、botic-v1(3.15.1)のときと同じ反応です。
おっしゃるように、多分menuconfigでモジュールが選択されていないためだと思います。
ところで、3.16.1のrtカーネルが出てきてもよさそうな時期なのですが、更新が継続されているのは3.12系列のものですね。3.14も凍結状態ですので、rt化に関し何か新しいカーネルで問題が出ているということでしょうか。
当分新しいrtパッチは登場しない模様ですね。
http://www.reddit.com/r/linux/comments/2a5si4/linux_rtbranch_development_suspended/" target="_blank">http://www.reddit.com/r/linux/comments/2a5si4/linux_rtbranch_development_suspended/
なるほど、ちょっと厳しい状況のようですね。騒動の内容についてはこちらのリンク(元の記事)が分かりやすいです。
http://article.gmane.org/gmane.linux.rt.user/12370" target="_blank">http://article.gmane.org/gmane.linux.rt.user/12370
cfq deadline noop いずれの再生音が好ましいか、人それぞれだと思います。
では、sdカードとemmcで再生音は変化するのか。
以前、bbbでuda3を使用していた頃、emmcから起動していましたが、差は判然としませんでした。
しかし今回、botic-v3/bbb + bridge直結 + nfs-server/apu1c の環境で比較してみましたら、かなり差がでました。
sdカードから起動しbbb-demo-botic-v3-2gb.imgをemmcにddしてupdate dist-upgradeしたあとkernelも入れ替えます。
yoさん、twlさんのお教えに従って3.16.3(deadline指定)もbuildしましたので、その環境での比較です。
root@bbb:~# uname -a
Linux bbb 3.16.3-org918 #1 PREEMPT Thu Sep 18 13:36:33 JST 2014 armv7l GNU/Linux
root@bbb:~# mpd -V
Music Player Daemon 0.18.12-dsd-rt
sdカード無しだと
root@bbb:~# cat /sys/block/*/queue/scheduler
noop [deadline] cfq
noop [deadline] cfq
noop [deadline] cfq
sd cardを挿すと
root@bbb:~# cat /sys/block/*/queue/scheduler
noop [deadline] cfq
noop [deadline] cfq
noop [deadline] cfq
noop [deadline] cfq
簡単な速度比較で十分ですので、hdparmで計測してみました。
# aptitude install hdparm
emmcから起動した状態ですので、emmcはmmcblk0、sdはmmcblk1です。
計測結果はかなりの差でした。
※ SDカード [TOSHIBA 30MB/s sd-class10 8GB SDHC UHS-I TAIWAN]
root@bbb:~# hdparm -t /dev/mmcblk1p2
/dev/mmcblk1p2:
Timing buffered disk reads: 58 MB in 3.09 seconds = 18.80 MB/sec
※ emmc [BBB type C 4GB]
root@bbb:~# hdparm -t /dev/mmcblk0p2
/dev/mmcblk0p2:
Timing buffered disk reads: 112 MB in 3.03 seconds = 36.99 MB/sec
私の環境では、emmcがかなりの差で好ましい音のような気がするんですが、気のせいかも。皆さんの環境ではいかがでしょうか。
今回使用したzImageとmoduleです。
https://drive.google.com/file/d/0B1n2sZGxAleMMTJtTEhfWWlRSjA/edit?usp=sharing" target="_blank">https://drive.google.com/file/d/0B1n2sZGxAleMMTJtTEhfWWlRSjA/edit?usp=sharing
I/O スケジューラの選択で音が変わる理由は、実はよく理解できていません。ディスクアクセスはそれほど頻繁ではないはずだからです。
vmstatで観測する限り、こんなもんですが、皆さんはどのように解釈なさいますか。
root@bbb-emmc:~# vmstat -p /dev/mmcblk0p2 30 100
mmcblk0p2 reads read sectors writes requested writes
7798 681658 1482 25464
7798 681658 1489 25520
7798 681658 1491 25544
7798 681658 1494 25568
7798 681658 1494 25568
7798 681658 1494 25568
7798 681658 1494 25568
7798 681658 1494 25568
7798 681658 1494 25568
7798 681658 1494 25568
7798 681658 1494 25568
7798 681658 1494 25568
7798 681658 1494 25568
7798 681658 1496 25592
7798 681658 1499 25616
7798 681658 1499 25616
7798 681658 1499 25616
7798 681658 1499 25616
7798 681658 1499 25616
7798 681658 1499 25616
7798 681658 1499 25616
7798 681658 1499 25616
7798 681658 1499 25616
7798 681658 1501 25640
7798 681658 1504 25664
7798 681658 1504 25664
7798 681658 1504 25664
7798 681658 1504 25664
7798 681658 1504 25664
mmcblk0p2 reads read sectors writes requested writes
7798 681658 1504 25664
7798 681658 1504 25664
7798 681658 1504 25664
7798 681658 1504 25664
7798 681658 1504 25664
7798 681658 1506 25688
7798 681658 1509 25712
7798 681658 1509 25712
7798 681658 1509 25712
7798 681658 1509 25712
7798 681658 1509 25712
7798 681658 1509 25712
7798 681658 1509 25712
7798 681658 1509 25712
7798 681658 1509 25712
7798 681658 1509 25712
7798 681658 1511 25736
7798 681658 1513 25752
7798 681658 1514 25760
7798 681658 1514 25760
7798 681658 1514 25760
7798 681658 1514 25760
7798 681658 1514 25760
[中断]
I/Oアクセスはほとんど発生していないのに、何で音は変わるのですかね。
10秒に1回程度のこともあり、3分間ぐらい無いこともある。
嫌な音が時々出て、その頻度が高いか低いか、程度のことなのかも知れません。
だから、瞬時比較では、音の好みは判定し難いのでしょうかね。
linuxなど何もわからず何とかvoyage mpdを利用しているものですが、本日使用不能となりpoderosaやWinSCPからもLoginできなくなってしまいました。
原因は明白で、fstabファイルの #for mounting music dataの次の行の username=***,password=***, の部分を削除してしまったからです。(NASはパスワードなしでもアクセスできていたので不要かと思って)
何とか記述を元に戻す方法はないでしょうか?
PCはVoyage MPD Starter Kit 2.0 (Voyage MPD + APU + 16GB mSATA) です。
教えていただいたデバイス等は何もなく、またあったとしても私には難しそうなので、インストール済みのmSSD cardをvoyage storeで22.99ドルで購入したほうが早くて簡単そうですね。
それにしても、たった数文字を削除しただけで使用不能となるとは思いませんでした。
はじめまして
NewAlixをお使いであるなら、急場凌ぎとしてUSBメモリかSDカード1枚あれば起動してくれる「LightMPD」で動作というのもありかな…と。ボクのところでは音質的にもLightMPDに軍配が上がるので暫くは「VoyageMPD」さよなら状況です。
http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=5054#5054" target="_blank">http://mimizukobo.sakura.ne.jp/cgi-bin/read.cgi?mode=all&list=topic&no=5054#5054
投稿ありがとうございます。
実は私も昨日からLightMPDを聴いています。
yungさんのサイトの記事を見て一度聴いてみたいと思っていましたが、私のAPU1Cはvoyage storeで購入したもので蓋を開けてsdカードに換えるというのが面倒そうで試したことがありませんでした。
計らずも昨日アクシデントで試聴することになりました。
一聴したところとてもクリアーな音だと思いましたが、長く聴いていると少し音が広がりすぎるというか、薄いような感じを受けました。
装置との相性があるのかもしれませんが、すばらしい音には違いないと思います。
> それにしても、たった数文字を削除しただけで使用不能となるとは思いませんでした。
おっしゃる通りだと思います。
書かれたような内容のfstab変更だけで、システムが使用不能(この場合はネットワーク上で認識出来なくなるという意味ですね)になるとは考えられません。何か別の原因があるはずです。
> インストール済みのmSSD cardをvoyage storeで22.99ドルで購入したほうが早くて簡単そうですね。
これだけのために香港に発注するのはちょっともったいないですね。
リカバリの仕方は、usbから起動出来るシステムで立ち上げ、ssdの内容を書き換えればいいです。僕の使っているVoyageレスキュー用のusbメモリのイメージをアップしましょうか。windowsでusbメモリに書き込み、apu1のusb端子に差し込み、起動させることができます。この時ssdはmsataに接続しておけば、マウントして、内容の変更が出来ます。
http://linux.voyage.hk/voyage-mpd" target="_blank">http://linux.voyage.hk/voyage-mpd
にある『voyage-mpd-0.9.2.tar.bz2 [2013-12-20] [Live CD]』をDLして、 DD for WindowsでSDカード(256MB位で可)に移せば、起動SDカードになります。
なんだか糸口が見えたような気がいたしました。
bbbanzaiさんの教えてくださったとおり、DLした起動SDカードを挿すと、ssdとは異なるIPアドレスでpoderosaやWinSCPでログインできますが、その後ssd cardのfstabをどのように書きかえればいいのか全くわかりません。WinSCPで表示されるfstabやファイルはすべて新規のもので、ssd cardのものではないようです。
今まで何もわからずほとんどyungさんの書かれたとおりやってきましたので、応用が全くききません。
よろしくご教授のほどお願いします。
ssdをマウントして、fstabをエディタ(nano)を使って書き換えればいいです。
remountrw
mount /dev/sda1 /mnt
正常終了(何もエラーメッセージが出ない)ことを確認
nano /mnt/etc/fstab
誤って消した部分を復元
ctrl+o -> 改行
内容を保存
ctrl+x
終了
で出来ると思います。
パスワード部分を削除されたようだから、nas側が応答されるまでapu1を掴みっぱなしになっていて、先に進めない(ログイン画面が表示されない)という可能性はありますね。
ipアドレスが変わったのはdhcp機能を使ってアドレスを決めているからです。
ssdをつないだ時でも、起動時にusbメモリが優先されるはずです。接続仕方が標準でないと、ssdが優先される場合があります。その場合はシリアルケーブルのやっかいになるか、接続を標準に戻すしかないです。
おはようございます
ボクの場合はそのSDカードで起動した後、Yungさんのインストール法でmSATAに再インストールしています。
http://www.yung.jp/bony/?p=1156" target="_blank">http://www.yung.jp/bony/?p=1156
注意事項の1つは「(1)VoyageMPDインストールフォルダーを用意」の2行目、mount -o loop /lib/live/mount/medium/live/filesystem.squashfs /tmp/rootをmount -o loop /lib/live/mount/medium/live/filesystem.squashfs /tmp/rootにすること。インストール先の機種名をAPUにすることです。
この掲示板は最初私のようなものが投稿するところではないと思いましたが、他のサイトでは回答が得られないだろうと思い質問させていただきました。
yoさん bbbanzaiさん nanoというテキストエディタさえ知らないもののために丁寧に教えて下さり本当に感謝いたします。
無事解決おめでとうございます。
この掲示板は初心者に優しいをモットーにしているつもりですが、専門的な議論も遠慮なくやるというスタイルなので、初心の方には近づきがたく見えるのですかね。そういうことはないし、優しくフォローして頂ける方も多いので、遠慮なくご質問を。
bbbanzaiさん
VoyageMPDのcd用イメージをusbメモリに焼いて、動かすことが出来るとは知りませんでした。情報ありがとうございます。
mount -o loopの件はv0.9.x以降、ご指摘のように変わったようですね。
あと、別のスレッドですが、DAC1794-3.5Bのi2s接続に関するやりとり、興味深く拝見しています。内容がタイトルと離れてきているので、新規スレッドにされるとよいかもしれませんね。
デジファイのおとさん、alix3d2用のlightMPDを追加公表。
https://sites.google.com/site/digififan/info/pcenginesshenoalix3d2yongnolightmpdwogongkaishimashita" target="_blank">https://sites.google.com/site/digififan/info/pcenginesshenoalix3d2yongnolightmpdwogongkaishimashita
PCM1794DACのI2S駆動化が思うようにいかず無音の日々。急場しのぎでRME BabyFaceをllighMPD環境で使えないかと…試してみるとあっさり音が出るではないか。
llighMPDは先に起動させておき、オーロラサウンドのBusPower-Proを使いBabyFaceに先に給電(Y字ケーブルでもOKのようだが)の構成にして、「Select」ボタンと「Recall」ボタンを押しながらUSBプラグをBabyFaceに繋ぐと一瞬、ピークメータがフルで光るのだが、これがOKの印。llighMPDのオート思想の恩恵にあずかれる。
http://www.synthax.jp/babyface-cc-mode.html" target="_blank">http://www.synthax.jp/babyface-cc-mode.html ←詳しくはこのページ
皆様
twlさんのご指摘のsdカードのクラスタ破損の件は僕もその可能性はあるかなと思いました。ただ、複数のメーカのカードで問題が発生していることから、全てがこの原因ではないだろうと考え、書きませんでした。
多分、Transcendのカードで最初駄目だったオリジナルのイメージがブートできるようになったのはこの件に起因すると思っています。TranscendのカードはCubox1Gでの確認ですが、問題なかったものなので。逆にSilicon Powerは駄目だという報告があったのですが、コウさんのところではOKということなので、不思議だなぁと思っています(多分、メーカー内の機種の違いによる差だと思います)。
あと起動最初のuimageが読み込めないで止まっている場合と起動途中のrootfsが読み込めないでパニックになる場合は分けて考えるべきと思います。前者はカードへのイメージの書き込みが正しく行われていないことが原因ですが、後者はカーネルの問題である可能性がありますので。
従って、ArchLinuxの件はブートの最初で止まったのであれば、再確認されるのがよろしいかと思います。これがuImageの読み出しのところで止まってしまうといのは、かなり変ですから。
直前のメッセージを書いていて、boot.scrのrootdelayを大きくしてみる手はあるかなと思いつきました。試してみて頂けますか。やりかたは雛祭り版を使いrootでログインして
wget -O boot-test.scr http://www.symphonic-net.com/kubotayo/cgi-bin/downlog.cgi" target="_blank">http://www.symphonic-net.com/kubotayo/cgi-bin/downlog.cgi\?edata/boot-test.scr
cp boot-test.scr /media/boot/boot.scr
です。rootdelay を 3 -> 10 にしてあります。
rootdelay10のログ最後の14行です。
kirkwood-spdif-audio kirkwood-spdif-audio.1: dit-hifi <-> kirkwood-i2s.1 mapping ok
TCP: cubic registered
NET: Registered protocol family 17
Key type dns_resolver registered
VFP support v0.3: implementor 56 architecture 2 part 20 variant 9 rev 5
ThumbEE CPU extension supported.
rtc-mv rtc-mv: setting system clock to 2013-05-10 12:18:54 UTC (1368188334)
ALSA device list:
#0: Kirkwood SPDIF
Waiting 10sec before mounting root device...
VFS: Cannot open root device "mmcblk0p2" or unknown-block(0,0): error -6
Please append a correct "root=" boot option; here are the available partitions:
1f00 4096 mtdblock0 (driver?)
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
使用したSDカードは、Buffalo4(4)、Transcend8(6)、Sandisk4(6?)の3枚。
オプションなしでp1、p3にfsck、p2にxfs_repairを行いfsckはclearの文字、xfs_repairは
phase7までmsgが出ましたが、修復は走りませんでした。
追伸 ---------------
Arch Linuxを展開する単一パーティションのファイルシステムは、partedでパーティションを
すべて削除した後、
mkpart
p -> ext3 -> 1.000MB -> 1599.999MB
パーティション1をブート可能にセット
set 1 boot on
終了
q
フォーマット
sudo mkfs.ext3 /dev/mmcblk0p1
sudo tune2fs -c 0 -o journal_data_writeback /dev/mmcblk0p1
でよいでしょうか?
よろしくお願い致します。
> -snip-
> sudo mkfs.ext3 /dev/mmcblk0p1
> sudo tune2fs -c 0 -o journal_data_writeback /dev/mmcblk0p1
もしかしてこれはCubox上でArch Linuxインストール用のSDカードのext3フォーマットをされようとしているのでしょうか。私はこの経験がないので間違った質問であればお許し下さい。
Ubuntuなどが動く別のLinuxマシンでフォーマットする場合には、私は上記のmkfs.ext3しか行っていません。また、microSDカードをUSBメモリースティックとして扱える専用のUSBソケットアダプターがありますので、それを使用されればこのLinuxマシンのUSB経由でSDカードを楽にフォーマット、Arch Linuxのtarballのコピー解凍、およびboot.scrの編集など、すべての作業が一度にできるのですが...。検討違いの指摘でしたらお許し下さい。
pc上のubuntuで作業しています。先程fdiskで最大領域を確保しブートフラグを立ててから
mkfs.ext3を行った後、ArchLinuxを展開。cuboxで起動してみました。
やはりkernel起動でkernel panicになるのでboot.scrというのか、yoさんの384/boot2.txtの
rootfsの位置を編集等してみましたが、理解不足から状況は変わりませんでした。
頭を冷やして振出しからやってみます。
> pc上のubuntuで作業しています。
了解いたしました。とすると、その前の2759で書かれていた、
> mkpart
> p -> ext3 -> 1.000MB -> 1599.999MB
> パーティション1をブート可能にセット
> set 1 boot on
> 終了
の部分が気になります。
私はディスクの消去やパーティション作成にはfdiskしか使わず、partedコマンドは使用したことがないのですが、このコマンドはMPD on Cubox(9)の記事においてyoさんが紹介されているのですね。
partedやmkpartオプションをgoogleで調べると、確かにext3タイプのフォーマットやパーティションも可能なようですが、man partedでpartedの機能を見ると、基本的にはext2タイプのフォーマットが対象で、ext3タイプの形式は含まれていないようです。従ってそのような状況で作られたディスクをmkfs.ext3することには問題がある印象を受けます。もしかしたら私が誤解しているのかもしれませんが、その場合には是非ご指摘下さい。
それはそれとして、一度fdiskで1パーティションのディスクを作り、それに対してmkfs.ext3されてはいかがでしょうか。
> それはそれとして、一度fdiskで1パーティションのディスクを作り、それに対して
> mkfs.ext3されてはいかがでしょうか。
コウさん。大変失礼しました。No.2761での
> pc上のubuntuで作業しています。先程fdiskで最大領域を確保しブートフラグを立ててから
> mkfs.ext3を行った後、ArchLinuxを展開。cuboxで起動してみました。
と書かれてあるのを見落としていました。fdiskでのフォーマットでも同じ結果になるとなると、やはり振り出しに戻らざるを得ないような状況ですね。
フォーマットに使用されているUbuntuの動くPCには/dev/mmcblk0p1として認識できるようなSDカードのスロットがあるのでしょうか。私がUbuntu用に用いているノートブックにもSDカードのスロットがあるのですが、ここに挿しこんでもSDカードとしては認識してくれませんので(Ubuntu 12.10の環境ですが)、SDカードをUSBアダプターを入れた状態で/dev/sda2とか/dev/sdb1といった通常のデバイスとしてフォーマットやパーティションをしています。
現在のところ、私の環境からお知らせできるのは以上のようなものですが、ほとんどお役に立てず失礼しました。
Cubox2Gのusb#0(上)にuSDカード、usb#1(下)にhiFaceセットで、音楽が流れだしました。
uSDカードスロット関係に原因がありそうです。
イメージ書込みに失敗しているかもと、ご報告の後にもBuffaloのBSCRMSDCBKというuSD専用
USB2.0/1.1フラッシュアダプタを購入してみたものの結果はNGでした。ただこのアダプタは
小さいのでCuboxのusbに差しても他のコネクタの邪魔になりません。
昨夜からジミーちゃんのように頭を掻きむしりたい状態でArch Linuxを作ろうともがいてい
ました。この時、ちっこいアダプタはubuntuではmmcのアイコンでなくメモリスティックの
アイコンで、twlさんの言うとおり/dev/sdcxと認識していました。
煮詰まった私は、Arch Linuxの入ったちっこいアダプタをCuboxのusb#0に差してCuboxの電源を
入れたところ、loginまで立ち上がったのです。(慌てました。パスワードを知りません。)
そこで、Arch Linuxのboot.scrを参考にyoさんの雛祭り版のboot.scrをmmcからusbへアクセス
するように書き換えたら、見事起動し音楽を聴くことができました。
私のCuboxが壊れていたという結果でした。
ご親切にお気にかけアドバイスして頂いた皆様、本当にありがとうございました。
トラブル解決おめでとうございます。
mmcハードの問題でしたか。何で11月版はOKでそれ以外はNGになったのかという謎は残りますが、とりあえず解決され、よかったですね。「mmcが駄目でも、usbがあるさ」というのは貴重なノウハウですね(^^)。boot.txtの内容を教えて頂ければ、他の方の参考になるかと思います。
煮詰まった頭で感じるままにフォースの力で作業したので、誤りがあったらご指摘ください。
Arch Linuxのboot.scrのいろいろな場所からbootする設定が参考になりました。また、Buffaloの
SDカードアダプタBSCRMSDCは/dev/hdax形式で認識します(機種固有なので読み替え願います)。
PC上のubuntuの端末(ターミナル)でyoさんの雛祭り版のboot2.txtを次のように変更しました。
・usb start(2行目)を追加(これを入れないと起動しなかった。)
・root=/dev/mmcblk0p1のmmcblk0p1(3行目)をsda2に、ext2load mmc(5行目)のmmcをusbに変更
これをboot.usb.txtというファイル名で保存。
------------------------->8----------------------------------
echo ======== Setting bootargs ========
usb start
setenv bootargs 'console=ttyS0,115200n8 vmalloc=96M root=/dev/sda2 rootdelay=3 --no-log --verbose'
echo ======== Loading kernel ========
ext2load usb 0:1 0x00200000 /boot/uImage
echo ======== Booting kernel ========
bootm
------------------------->8----------------------------------
保存したboot.usb.txtを<<MPD on Cubox(2)-2012/10/07>>の記事そのままのパラメータでboot.scrを
作成しました。
mkimage -A arm -O linux -T script -C none -a 0 -e 0 -n 'Boot setup script for SD' -d boot.usb.txt boot.scr
できたboot.scrを雛祭り版の/boot(最初のパーティション)にコピー。(boot.scrのアクセス権は755)
注意!!
雛祭り版はカーネルやディストリを選択できます。上の変更を行って不用意に選択を
変えると迷宮にハマります。そう私はこれから何度目かの振出しに戻ります。('jjj`)
過去の起動状況からはCuboxのSDカードスロットはおそらく完全に壊れているのではないようです。Cuboxの電源の環境によっても変わる可能性があるかもしれませんが、これは先の課題、しばらくはCubox-hiFaceでの音楽をお楽しみ下さい。
挫けそうな気持ちの時に助言を頂けるのが一番の力になりました。ありがとうございました。
添付の電源アダプタ、小さいのに5v2Aって怪しいですよねぇ。
とりあえずはarch linuxにyanさんパッチの当たったmpdの「ちょっとすごいと思ってしまうくらい」(fHitoさん、私も賛同)上質な音楽を堪能してから・・・次ですかね。
yoさんご指摘のように、sdスロットの接触不良とするには、挙動が変ですよね。謎ですね。
Cuboxで聴く音楽っていいですね。DSDやArch Linuxではどんな音になるのか想像も
つきません。
uSDカードスロットの挙動はホントに摩訶不思議です。皆さんも電源に期待されて
いるでしょ? ん~踏み切れません。今はCuboxの音に包まれ呆けた虚脱感に浸って
います。ごめんなさい。
昨日一日はmpd.confの設定にハマっていました。暫くしたらyoさんのCuboxの記事に
始めから挑戦してみます。(電源かぁ、あっダメダメ)
boot.scrをusbから起動するように変更した後の追加情報です。
LED表示
yoさんの記事<MPD on Cubox(13)>の中でLED表示の動作が説明されています。
私はubuntu(sda2)を起動しており、LED表示はブート時/etc/rc.localで起動さ
れます。この/etc/rc.localの記述のなかにmmcblk0p1をマウントする部分があり
ますので、これはsda2に変更する必要があります。
selbootやselpartの仕組みが理解できたら、各boot.scrの元やLED表示関係も整
理したいと思います。
電源
5v1Aの電源アダプタがありました。雛祭り版を起動しましたが付属電源と同じ
所でkernel panicとなりました。素人考えですが、電流が1Aなので参考にはな
らないですね。2Aより大きい電流容量の電源を試さないと分からないのかもし
れません。
困っていたところ、コウさんが2767でUSBメモリからの起動方法を書かれていることを知り、試したみたところ、見事に
MPDが起動しました。これを知らなければ、Cuboxをゴミとして捨てるところでした。
有り難うございました。