おお yoさんlinuxに帰って来ていたのですね。嬉しいです。
デュアルブートでお世話になって以来Archlinuxが気に入って
チューニングをずっと続けていました。
ブログを読みました。
既に実施済みであれば申し訳ないですが
dop方式でのDSD再生時に発生するノイズに関して
lightmpdサイトの管理人様が作成されたパッチと
DSDネィテブ再生パッチを適応すると嘘の様に消えます。
XMOS使用のDDCしか使えない事とDDCによっては消えないものもあるようですが...
(自分はDIYINHK Isolated XMOS DSD DXD 384kHzを使用しています。)
https://doc-04-5g-docs.googleusercontent.com/docs/securesc/ha0ro937gcuc7l7deffksulhg5h7mbp1/5pleh32tnl0pkq7q3olmaeliet3h7epd/1479960000000/01527230413689151241/" target="_blank">https://doc-04-5g-docs.googleusercontent.com/docs/securesc/ha0ro937gcuc7l7deffksulhg5h7mbp1/5pleh32tnl0pkq7q3olmaeliet3h7epd/1479960000000/01527230413689151241/*/0B6wqcK_p4l0RTFo3Uy0zY1prcm8?e=download
native-dsd-noise-kernel.patch
https://github.com/lintweaker/xmos-native-dsd" target="_blank">https://github.com/lintweaker/xmos-native-dsd
xmos-native-dsd-master.zip(この中から使用するmpdに合ったパッチを使う)
まあ、DSDの再生がDoPで無くなるのでノイズが消えるのかも知れません(^_^;)
このnative-dsdパッチを適応するとCPUの負荷も減りDATA量も減少するので
WindowsのASIO2ドライバーにやっと追いついた?様な気がしています。
komaさん、お久しぶりです。情報ありがとうございます。久しぶりのLinux、すっかり錆び付いていますので、リハビリしながら、ボチボチやっています。
DSD再生のノイズの件は謎だらけですね。最近、DSDネイティブ再生対応のB3D-A4495というBBBにi2s接続で二段重ねのDAC基板をgetしたので、いろいろ試しているところです。Boticで動かしています。dopモードではノイズは発生しませんが、nativeモードではノイズは残っています。Boticのlinuxはかなり古い版(3.n)ですが、それでもdopでノイズレス対応になっているのは、パッチがあたっているということですかね。音は似たようなものですが、やっぱりnativeモードの方が良いように感じます。
あと、Boticをlightnpd/upnpgwと組み合わせて、UPnP対応させることが出来ると分かったので、試しています。この場合はdop再生だけが可能なようですが、ノイズレスで、音もなかなかいいです。
RaspberryPiはマスタークロックが出せない、USB周りに弱点があるのでBeagleBone Blackは linux OS使用環境のI2S出力では現在最強のだろうと思っています。妄想を言えばAPU1CでGPIO出力からI2Sを出力出来る様になれば更に強力だろうと思いますが無いモノねだりですね。クレア工房で少しだけGPIOの事に触れていますがまだまだ情報不足ですよね。また現状のALSAドライバーを使ったI2S出力の192KHz制限も時期がくれば取り払われる日が来るのかな?と他力本願で前に進めない私です。
rpiがこんなにメイジャーになったのは、IoT社会到来をにらんでイギリス経済活性化のために、MI6が仕組んだ謀略じゃないかと疑っているのですが(^^;;、「悪貨は良貨を駆逐する」の典型ですよね。BBB/BBGに頑張ってもらいたいものです。
欧米で、APUって、音楽用にどの位使われているのですかね。「apu pc engines music」で検索をかけても、欧米で音楽を聴くのにapuを使っている人はほとんど無さそうです。韓国もシンさんが休眠中になっちゃったから、可能性は低そうですね。日本はlightmpd作者のデジファイさんがi2sに興味をもってもらえると、可能性はありそうですが。
http://kkuma.mydns.jp/Linux-pi/index1.shtml" target="_blank">http://kkuma.mydns.jp/Linux-pi/index1.shtml
参考になるかも...
koma さん、情報ありがとうございました。参考になりました。
ようやく、デジファイのおとさんのパッチの在り処が分かりました。
https://groups.google.com/d/msg/lightmpd/Fcu6kay-99c/nIUZAsFVEAAJ" target="_blank">https://groups.google.com/d/msg/lightmpd/Fcu6kay-99c/nIUZAsFVEAAJ
にあるわけですね。
これを使えばネイティブ再生とノイズ対策が出来るというわけですか。
lintweakerさんのパッチの在り処は知っているのですが
https://github.com/lintweaker" target="_blank">https://github.com/lintweaker
どれを適用すればいいのかよく分かっていなかったのですよね。
試してみようかと思います。
試しに BBB Boticでやってみました。案外簡単ですね。
必要なパッチを準備する
cp /mnt/native-dsd-4.4.6-20160502.patch ./
cp /mnt/native-dsd-noise.patch ./
cp /mnt/0008-native-DSD-u32le.patch ./
wget wget https://www.kernel.org/pub/linux/kernel/projects/rt/4.8/older/patch-4.8.11-rt6.patch.gz" target="_blank">https://www.kernel.org/pub/linux/kernel/projects/rt/4.8/older/patch-4.8.11-rt6.patch.gz
Boticとlinux4.8.13のソースを展開
wget https://github.com/miero/linux-dev/archive/botic7-v48.zip" target="_blank">https://github.com/miero/linux-dev/archive/botic7-v48.zip
unzip botic7-v48.zip
cd linux-dev-botic7-v48/
BoticはNelson版を使ってカーネルを管理しているので、そのままビルドするのが簡単です。
./build_kernel.sh
menuconfigでストップさせ、パッチをかける。
cd KERNEL/
gzip -dc ../../patch-4.8.11-rt6.patch.gz | patch -p1
patch -p1 < ../../native-dsd-4.4.6-20160502.patch
patch -p1 < ../../native-dsd-noise.patch
cd ../
ビルドを再開
./tools/rebuild.sh
menuconfigでrtカーネルを指定
終わったら、Botic4をインストールしたマイクロSDカードをセット
SDカードが/dev/sdcであることを確認する
nano system.sh
MMC=/dev/sdc
./tools/install_kernel.sh
これでBoticドライバ付きのDSD-native再生対応RTカーネルに入れ換えられます。
root@botic:~# uname -a
Linux botic 4.8.13-rt6-botic7-rc3 #2 PREEMPT RT Wed Dec 21 20:09:26 JST 2016 armv7l GNU/Linux
同じ要領でarchlinuxでもできるはずだから、これはいいですね。
BBB Boticは所有していないので分からないのですが
alsaドライバーを使った場合192KHzまでI2S出力が出来て
DSD 5.6MHzまでDSD-native出力可能で実用になるって事でしょうか(^_^;)
ちょっと羨ましい....
komaさん
MPDのビルドも試してみました。こちらはgccのバージョンとか、lintweakerさんのパッチのgetとかで悪戦苦闘しました。
apt-get install autoconf automake curl libtool gcc gcc++ libboost-all-dev
apt-get install build-essential flex bison gdb libicu-dev libglib2.0-dev unzip
apt-get install libid3tag0-dev libavformat-dev libavcodec-dev libavutil-dev libsystemd-daemon-dev
apt-get install libcurl4-openssl-dev libasound-dev libFLAC-dev libmpcdec-dev libav-tools
apt-get install gcc-4.7 g++-4.7
wget --no-check-certificate https://github.com/lintweaker/mpd-dsd-019/archive/master.zip" target="_blank">https://github.com/lintweaker/mpd-dsd-019/archive/master.zip
unzip master.zip
cp /data/sdd/CD/0008-native-DSD-u32le.patch ./
cp /data/sdd/CD/mpd-0.19git-rtopt20140327.patch ./
cd mpd-dsd-019-master/
cp 0001-This-patch-extends-native-DSD-support-for-MPD-0.19.19.patch ../
wget http://www.musicpd.org/download/mpd/0.19/mpd-0.19.19.tar.xz" target="_blank">http://www.musicpd.org/download/mpd/0.19/mpd-0.19.19.tar.xz
tar -Jxvf mpd-0.19.21.tar.xz
cd ../mpd-0.19.19
patch -p1 < ../0001-This-patch-extends-native-DSD-support-for-MPD-0.19.19.patch
patch -p1 < ../0008-native-DSD-u32le.patch
patch -p1 < ../mpd-0.19git-rtopt20140327.patch
./autogen.sh
nano ../myconfig
内容は省略しますが、次の通りgcc4.7とgcc++4.7を明に指定するのがポイントです。
CC=gcc-4.7 CXX=g++-4.7 \
make && make install
実機でやると2時間以上かかります。
nativeと
dsd_usb "no"
dsd_native "yes"
dsd_native_type "3"
dopの
dsd_usb "no"
# dsd_native "yes"
# dsd_native_type "3"
両方で再生出来ます。
dopではノイズレスです。nativeはノイズは残っていますが、大分軽くなったかなというところ。
mpd.confのdopの指定はrpiの時と異なるのですが、何故ですかね ?
その他いくつか謎は残りますが(^^;;;、このrtカーネルでの音は素晴らしいです。
Combo386 + RaspberryPi2 で動作させてみるという事で
Combo386のパッチをプラスして再度コンパイルしてみました。
※ native-dsd-4.4.6-20160502.patchは当てなかったというか当たらない(^_^;)
$ uname -a
Linux alarmpi 4.4.39-v7+ #1 SMP Sat Dec 24 12:09:49 JST 2016 armv7l GNU/Linux
patch -p1 < 0001-usb-Add-native-DSD-support-for-Amanero-Combo384.patch
patch -p1 < native-dsd-noise.patch
これでコンパイルしてDSDを再生してALSAのステイタスは
--------------------------------------
カード 0: snd_rpi_hifiberry_dac],
access: RW_INTERLEAVED
format: S24_LE
subformat: STD
channels: 2
rate: 176400 (176400/1)
period_size: 16384
buffer_size: 65536
--------------------------------------
カード 1: Combo384
access: RW_INTERLEAVED
format: DSD_U32_LE
subformat: STD
channels: 2
rate: 88200 (88200/1)
period_size: 11025
buffer_size: 44100
--------------------------------------
こんな感じになりました。mpd.conf は
audio_output {
type "alsa"
name " HifiBerry DAC"
device "hw:0,0"
mixer_type "software"
mixer_control "PCM"
# dsd_usb "yes"
# dsd_native "yes"
# dsd_native_type "2"
dop "yes"
}
audio_output {
type "alsa"
name "Combo384 Amanero"
device "hw:1,0"
mixer_type "disabled"
dsd_native "yes"
dsd_native_type "3"
}
残念ながら音質はAPU1Cに及びません(悲)
調子に乗ってDeskTop環境を入れると音がまともに出なくなります(笑)
肝心のDSD再生時のノイズですが曲飛ばしや曲間、いずれもまったく発生しません。
もしかしてパッチはXMOS関連の出力にしか効果がないにかも知れませんね?
> もしかしてパッチはXMOS関連の出力にしか効果がないにかも知れませんね?
多分、ということなのだろうと思います。ただ BBB-DAC I2S直結でも、ぜんぜん効いてないわけでは無いようで、ガンショットレベルの音が消音器付き位の音には変わります。
Combo384と最新XMOSチップ搭載のDDC基板(f-1)はもっているのですが、繋ぎ直すのが面倒なので、確認出来ていないのですよね(^^;;;。Capeがもう一台あれば簡単に出来るようになるので、getしますかね。
BBG + rtBotic の音は相当なものですね。apu + lightmpd UPnP接続 とほぼ互角です。クリアですが、楽器の実在感のする響きになりますね。
Boticを arch linux ベースに出来ないかといろいろやっているのですが、上手くいきませんね。ARM系SoCのブートの仕組みのややこしさに翻弄されていますです(^^;;;。
お久しぶりです。
ずっとBoticだけを使い続けてきました。
先の記事を参考にさせていただきなんとがrtカーネルをビルドしました。
素晴らしですね!。
最近mpd020(git)をビルドしようとしたらC++14が必要とかいわれたのですがDebianWheezyにははいりません。そこでJessie版を作ってみました。音が全然違います、というより大進化します。実に静かさを感じるような音で、音が消えて行く時どこまでも聴こえそうな気がすることと音のない空間の静けさみたいなものを感じます。更に、立ち上がりが良くなったという天井が広くなったというか、大太鼓一発でびっくりするような音が出てきます。ただ、少しきつめな感じでしたが、rtカーネルにしたらそれにスケールの大きさとマイルドさが加わり実に素晴らしです。
調子にのってUbuntu版も作ってみましたが、これはもっさりとした感じと少しゴミゴミした感じがあってやっぱりなあでした。不要プロセスをどんどん切っていくとこれは、化けます。静粛性はJessie版と比較すると少し落ちますが、音の厚さと音そのものの自然さがこれはこれで良いんじゃないかと思えます。
rtカーネルにしたら更にスケールが大きくなり、一方で非常に細かいところまで見通しが良く今まで一番じゃないかなと思っています。
ubuntu-boticの作成手順を簡単に書いておきます。
https://rcn-ee.com/rootfs/eewiki/minfs/ubuntu-16.04.1-minimal-armhf-2016-09-17.tar.xz" target="_blank">https://rcn-ee.com/rootfs/eewiki/minfs/ubuntu-16.04.1-minimal-armhf-2016-09-17.tar.xz(母艦の方でダウンロード)
解凍しマイクロSDカードにリストア後、BBGに刺し込み起動
sudo su
rootのパスワード設定と、rootログインの設定
git clone https://github.com/miero/boticize.git" target="_blank">https://github.com/miero/boticize.git
cd boticize
スクリプトを走らせますが、注意事項はレポジトリの追加をしないことと、Boticカーネルを入れないことです。
vi 02-install.sh
最後の3行(botic関係)を削除
./02-install.sh
./03-enablepm.sh
./04-customsw.sh
cd../
mpdをインストール
apt-get install mpd mpc
手作業でrtカーネルをコピーし、/boot/uEnv.txtを編集し再起動すれば、mpd0.19.12で音がでるはずです。
mpdのビルドですが、jessieの場合libaudiofile-devとlibroar-devを入れるとエラーが出て手を焼きましたがubuntuでは全く障害なく終わりました。
mpd.confの編集とsystemdで起動設定。
最後の仕上げにsysv-rc-confで不用なプロセスを切りまくって下さい。再起動して完成です。
書き物の合間にできるかなと気楽な感じで始めましがびっくりするぐらい簡単に出き上がってしまいました。
sysv-rc-confでこれだけ効果がでるのもはじめてでこれも驚きでした。
moctさん、お久しぶりです。
ブリッジ基板は僕も使っています。ハンダ不要でI2S接続出来るので、お勧めですよね。外部クロックを入れて、音質改善を図るということも可能です。そのあたり、そのうち「I2S接続の世界」で紹介するつもりです。
Botic は miero さんが孤軍奮闘でサポートしているという感じでしたが、Volumio2に組み込まれたとは朗報ですね。ただ、Volumioって音の評判はいまいちだから、どうですかね。
DebianのJessie版はどのように作成されましたか ? BoticGoitHubにある install_kernel.shはBotic用に書き換えられていると思いますますが、Nelsonさんオリジナルのものに入れ換えられたのでしょうか。それとも手修正されたのでしょうか。また、BoticはuEnv.txtが二つあるという変な構成になっていますが、そのあたりどう対応されましたか ?
いきなり質問ばかりですみません。arch版を作ろうと悪戦苦闘(^^;;;しているところなもので。
私のところを覗いてみて下さい。書きかけですがJessie版の作成方法を書いてあります。(イメージもあります。)
boticをお使いの方のサイトで音色の話題などが出た時、話が全然合わないので、もしかしてと思いmpdのバージョンを尋ねたところmieroさんのイメージに入ったのを使っている方だけでした。私がmpd0.19.15を使用中と書き込んだところ、使いたいとの方がおり現在イメージとmpdのバイナリを公開しています。スキルが無いので問題が出まくっていますがなんとか音は出ますので使っていただいています。裾野は広がっているようですが、情報が非常に乏しくて私のようなものでも少しはお役に立てるならと恥を忍んでやっています。
せっかくなのでrtカーネルも公開しようと思っています。こういう素晴らしもはぜひ多くの方に使っていっていただきたいです。
/boot/uEnv.txtが有効で、/にあるのは使っないようです。
/の方のコメントです。
##These are needed to be compliant with Angstrom's 2013.06.20 u-boot.
そういえば以前archで少しいたずらをしたことがあって、/bootをmieroさんのイメージの/bootとすっかり入れ替え、mieroさんのbootパーティションの中身をddコマンドでU-Boot bootloaderに送り込んだら、起動してsshで入れるけれどロックがかかりまくっていてそれ以上進めなかった様な記憶があります。(記憶違いがなければ)
イメージを公開していらっしゃったのですね。素晴らしい。RT版も是非公開して下さい。僕も、以前、cuboxのイメージを公開したことがありますが、結構、大変ですよね。頑張って下さい。
ご存じかもしれませんが、Boticカーネルのビルドに関しては
http://junkbox.wpblog.jp/2015/01/07/botic_demo%E3%81%AE%E7%92%B0%E5%A2%83%E3%81%AEkernel%E5%86%8D%E6%A7%8B%E7%AF%89%E3%82%92%E8%A1%8C%E3%81%86%E3%83%AA%E3%83%99%E3%83%B3%E3%82%B8%E7%B7%A8/" target="_blank">http://junkbox.wpblog.jp/2015/01/07/botic_demo%E3%81%AE%E7%92%B0%E5%A2%83%E3%81%AEkernel%E5%86%8D%E6%A7%8B%E7%AF%89%E3%82%92%E8%A1%8C%E3%81%86%E3%83%AA%E3%83%99%E3%83%B3%E3%82%B8%E7%B7%A8/
にも情報があります。こちらのやり方が正攻法かもしれません。
情報ありがとうございました。質問があれば、そちらに伺いますので、よろしくお願いします。
uEnv.txtに関しては、結局、両方共に必要になるということですね。
あけましておめでとうございます。
[root@alarm ~]# uname -r
4.8.13-rt6-botic7-rc3
[root@alarm ~]# aplay -l
**** List of PLAYBACK Hardware Devices ****
card 0: Botic [Botic], device 0: external botic-hifi-0 []
Subdevices: 1/1
Subdevice #0: subdevice #0
am335x-boneblack.dtb に am335x-boneblack-botic.dtb を上書きすれば良いようです。
パラメータの指定方法などはやっていません。
うまく出来たあがったら私にも方法を教えてください・
moct さん、アドバイスありがとうございます。
その手はあるなと思っていますが、renameという過激な方法なので、どうしたものかと考えています。
とりあえずは、正攻法でu-boot.imgをコンパイルするという方法で何とか出来ないかと試しているのですが、情報が不足していて、ブートエラーになってしまうのですよね。
何れにしても、進展があったら、新しいスレッドで内容をご紹介するつもりです。
おはようございます。
先に書いた件ですが、mieroさんがSupport for Botic Linux driverで書いていた様な記憶があったのでやってみたのです。先ほど調べたら#1625(163ページ)にありました。
そちらをご確認願います。
こんばんは
Ras-Piのスレッドを参考にしてゴニョゴニョやっていたらなんとか音が出ました。
/boot/uEnv.txtの設定も有効なので、上記のdtbを置き換える手段で大丈夫のようです。
mpdの設定方法が分からずうまく立ち上がらないことで挫折していました。debian系だと設定を変えてmpdを再起動すると動き出しますが、Archだとrebootしないとダメ、みたいなところをすっかり忘れていました。今日の朝、上の書き込みの件で再起動したら全くダメだと思っていたmpdが動いていて、nasをマウントしたら音が出る状態になってしまったのです。音出し用のBBGにSDカードを差し替えそれからずっと使っていました。
mpdのRT版も合間合間にコマンドを打ちながら夕方には出来上がったので、設定を行いずっと聴いています。
「実に生々しく鳴る。」 本当に素晴らしいです。