goo blog サービス終了のお知らせ 

Stingray's ブログ

米作りと趣味の電子工作

RaspberryとDAC 10

2014-12-20 14:13:10 | Linux
思い付きでLinux(今回はDebian7.4)へ「ario」と言うMPDクライアントをインストールした。コマンドも良いが「synaptic」などのGUIツールも便利だ。


当然だが、綺麗にVolumioへ接続できている。


設定はIPアドレスとポート番号を設定しただけ。


WinXP用の「ario」もあるようだ。最近はメンテナンスされていないようだが。。。


コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

RaspbianとDAC3

2014-12-13 15:05:45 | Linux
ELECOM WDC-150SU2MBK と言う wifi-USB を購入したが失敗だった。Ubuntu14.04では問題なく使えるのだが、Raspbianでは使えない。対応するkernelモジュールは「iwldvm」だが、Raspbianには入っていなかったのだ。


以下、Ubuntuでの実行結果。

isih@ishi-Pri-Ser:~$ lsmod | grep iw
iwldvm 232285 0
mac80211 630653 1 iwldvm
iwlwifi 169932 1 iwldvm
cfg80211 484040 3 iwlwifi,mac80211,iwldvm
isih@ishi-Pri-Ser:~$

isih@ishi-Pri-Ser:~$ dmesg
[ 7591.741835] usb 1-1.5: new high-speed USB device number 6 using ehci-pci
[ 7591.835478] usb 1-1.5: New USB device found, idVendor=056e, idProduct=4008
[ 7591.835489] usb 1-1.5: New USB device strings: Mfr=1, Product=2, SerialNumber=3
[ 7591.835496] usb 1-1.5: Product: WDC-150SU2M
[ 7591.835501] usb 1-1.5: Manufacturer: ELECOM
[ 7591.836139] Chip Version Info: CHIP_8188E_Normal_Chip_TSMC_D_CUT_1T1R_RomVer(0)
[ 7591.926085] systemd-udevd[4012]: renamed network interface wlan1 to wlan2
[ 7592.306555] MAC Address = 00:90:fe:c6:xx:xx
[ 7592.311382] IPv6: ADDRCONF(NETDEV_UP): wlan2: link is not ready
[ 7592.312156] IPv6: ADDRCONF(NETDEV_UP): wlan2: link is not ready
[ 7592.319430] R8188EU: ERROR indicate disassoc
[ 7592.321229] IPv6: ADDRCONF(NETDEV_UP): wlan2: link is not ready
[ 7593.789075] R8188EU: ERROR assoc success
[ 7593.789324] IPv6: ADDRCONF(NETDEV_CHANGE): wlan2: link becomes ready
isih@ishi-Pri-Ser:~$


以下、piでの実行結果。

pi@raspberrypi ~ $ find /lib/modules -name iwldvm
pi@raspberrypi ~ $

因みに、Volumioでも使えなかった。Ubuntuでは、刺してGUIから「非表示Wi-Fiネットワークに接続」を設定するだけだった。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

RaspberryとDAC 9

2014-12-06 22:25:39 | Linux
Raspberry Pi 基板がむき出しでは使い勝手が良くないので、ミニツールボックスに入れてみた。wifi-USB と SDカードを取り付けるとサイズ的にぴったり過ぎで少々きついが、そのため固定する必要がなかった。
スマホ用のモバイルバッテリーと組み合わせると、携帯音楽プレーヤーになりそうだ。


RCA端子はケースに入らないので外してしまった。DAC カードの出力2個と本体のコンポジット出力1個。

コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

RaspbianとDAC2

2014-12-02 22:50:07 | Linux

前回、「rhythmbox」が Segmentation fault していたので、
他のメディアプレーヤーを探したところ、「audacious」を見つけた。
インストールしてみる。

pi@raspberrypi ~ $ sudo apt-get install audacious
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下の特別パッケージがインストールされます:
audacious-plugins audacious-plugins-data gtk2-engines-pixbuf libaudclient2 libaudcore1 libavformat53 libbinio1ldbl libbs2b0
libcddb2 libcue1 libguess1 libmowgli2 libresid-builder0c2a libsidplay2
以下のパッケージが新たにインストールされます:
audacious audacious-plugins audacious-plugins-data gtk2-engines-pixbuf libaudclient2 libaudcore1 libavformat53 libbinio1ldbl
libbs2b0 libcddb2 libcue1 libguess1 libmowgli2 libresid-builder0c2a libsidplay2
アップグレード: 0 個、新規インストール: 15 個、削除: 0 個、保留: 128 個。
3,881 kB のアーカイブを取得する必要があります。
この操作後に追加で 9,841 kB のディスク容量が消費されます。
続行しますか [Y/n]?

 略

gtk2-engines-pixbuf:armhf (2.24.10-2) を設定しています ...
audacious (3.2.4-1) を設定しています ...
menu のトリガを処理しています ...

pi@raspberrypi ~ $ audacious &
[1] 3288
pi@raspberrypi ~ $
** (audacious:3288): WARNING **: Couldn't connect to accessibility bus: Failed to connect to socket /tmp/dbus-6Acofy0ucC: 接続を拒否されました
pulseaudio: Failed to connect to server: Connection refused

(audacious:3288): Pango-WARNING **: failed to choose a font, expect ugly output. engine-type='PangoRenderFc', script='common'

接続を。。。とワーニングがでるが起動した。





不要となった「rhythmbox」は削除しておく。
pi@raspberrypi ~ $ sudo dpkg -r rhythmbox
pi@raspberrypi ~ $ sudo apt-get autoremove
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

RaspbianとDAC

2014-11-29 20:36:42 | Linux

Raspbian でも「Raspberry Pi model A/B 用 DAC カード」を使うことが出来ないかと考え始めた。
Volumio でも十分(と言うか至れり尽くせり)なのだが、自分でプログラムを書いてみたくなるのだ。

Volumioの設定ファイルを参考に、DACカードのkernelモジュールが組み込まれるように設定する。


pi@raspberrypi ~ $ sudo vi /etc/modules


# /etc/modules: kernel modules to load at boot time.
#
# This file contains the names of kernel modules that should be loaded
# at boot time, one per line. Lines beginning with "#" are ignored.
# Parameters can be specified after the module name.

#snd-bcm2835   ← コメントアウト
snd_soc_bcm2708  ← 以下5行追加
snd_soc_bcm2708_i2s
bcm2708_dmaengine
snd_soc_pcm5102a
snd_soc_hifiberry_dac

「:wq」で書き込み。再起動する。

pi@raspberrypi ~ $ sudo shutdown -r now

再起動後、sshで再接続する。
接続する時に Xのポートフォワード設定をしておくと後で役に立つ。


isih@ishi-Pri-Ser:~$ ssh -X pi@192.168.11.201  ← 「-X」はフォワード設定
pi@192.168.11.201's password:
Linux raspberrypi 3.10.25+ #622 PREEMPT Fri Jan 3 18:41:00 GMT 2014 armv6l

The programs included with the Debian GNU/Linux system are free software;
the exact distribution terms for each program are described in the
individual files in /usr/share/doc/*/copyright.

Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extent
permitted by applicable law.
pi@raspberrypi ~ $

kernelモジュールを確認してみる。

pi@raspberrypi ~ $ lsmod
Module Size Used by
snd_soc_hifiberry_dac 2075 0    ← 組み込まれた
snd_soc_pcm5102a 1378 1     ← 組み込まれた
bcm2708_dmaengine 5108 1     ← 組み込まれた
virt_dma 2273 1 bcm2708_dmaengine
arc4 1683 2
rt2800usb 16720 0
rt2800lib 67495 1 rt2800usb
crc_ccitt 1529 1 rt2800lib
rt2x00usb 11492 1 rt2800usb
rt2x00lib 44267 3 rt2x00usb,rt2800lib,rt2800usb
mac80211 315594 3 rt2x00lib,rt2x00usb,rt2800lib
cfg80211 209273 2 mac80211,rt2x00lib
snd_soc_bcm2708_i2s 5474 2     ← 組み込まれた
regmap_mmio 2806 1 snd_soc_bcm2708_i2s
rfkill 19138 2 cfg80211
snd_soc_core 131268 3 snd_soc_hifiberry_dac,snd_soc_pcm5102a,snd_soc_bcm2708_i2s
regmap_spi 1897 1 snd_soc_core
snd_pcm 81593 2 snd_soc_core,snd_soc_hifiberry_dac
snd_page_alloc 5156 1 snd_pcm
regmap_i2c 1645 1 snd_soc_core
snd_compress 8076 1 snd_soc_core
snd_seq 53769 0
snd_timer 20133 2 snd_pcm,snd_seq
snd_seq_device 6473 1 snd_seq
leds_gpio 2059 0
led_class 3688 2 leds_gpio,rt2x00lib
snd 61291 6 snd_soc_core,snd_timer,snd_pcm,snd_seq,snd_seq_device,snd_compress


「snd_soc_bcm2708」がないようだが先へ進む。
デバイスファイルを確認してみる。


pi@raspberrypi ~ $ ls -l /dev/snd/
合計 0
drwxr-xr-x 2 root root 60 11月 29 02:04 by-path
crw-rw---T 1 root audio 116, 0 11月 29 02:04 controlC0
crw-rw---T 1 root audio 116, 16 11月 29 02:04 pcmC0D0p  ← PCMデバイスができている。
crw-rw---T 1 root audio 116, 1 1月 1 1970 seq
crw-rw---T 1 root audio 116, 33 1月 1 1970 timer
pi@raspberrypi ~ $


音楽を聴くために何を使うかだが、「rhythmbox」をインストールする。

pi@raspberrypi ~ $ sudo apt-get install rhythmbox
  略
http://mirrordirector.raspbian.org/raspbian/pool/main/r/rhythmbox/rhythmbox-plugins_2.97-2.1_armhf.deb の取得に失敗しました 404 Not Found
E: いくつかのアーカイブを取得できません。apt-get update を実行するか --fix-missing オプションを付けて試してみてください。

アップデートしろと怒られたので。。。

pi@raspberrypi ~ $ sudo apt-get update
  略
無視 http://mirrordirector.raspbian.org wheezy/rpi Translation-ja
無視 http://mirrordirector.raspbian.org wheezy/rpi Translation-en
7,102 kB を 1分 13秒 で取得しました (96.0 kB/s)
パッケージリストを読み込んでいます... 完了

再度、「rhythmbox」のインストールにチャレンジする。

pi@raspberrypi ~ $ sudo apt-get install rhythmbox
パッケージリストを読み込んでいます... 完了
依存関係ツリーを作成しています
状態情報を読み取っています... 完了
以下のパッケージが自動でインストールされましたが、もう必要とされていません:
libelf1 libgail-3-0
これを削除するには 'apt-get autoremove' を利用してください。
以下の特別パッケージがインストールされます:
at-spi2-core avahi-daemon bind9-host freepats gcc-4.8-base geoip-database gir1.2-atk-1.0 gir1.2-clutter-1.0 gir1.2-cogl-1.0
gir1.2-coglpango-1.0 gir1.2-freedesktop gir1.2-gconf-2.0 gir1.2-gdkpixbuf-2.0 gir1.2-glib-2.0 gir1.2-gnomekeyring-1.0
gir1.2-gst-plugins-base-0.10 gir1.2-gstreamer-0.10 gir1.2-gtk-3.0 gir1.2-javascriptcoregtk-3.0 gir1.2-json-1.0

  略

rhythmbox-data (2.97-2.1) を設定しています ...
rhythmbox (2.97-2.1+b1) を設定しています ...
gir1.2-peas-1.0 (1.4.0-2) を設定しています ...
zeitgeist-core (0.9.0.1-1) を設定しています ...
rhythmbox-plugins (2.97-2.1+b1) を設定しています ...
menu のトリガを処理しています ...
python-support のトリガを処理しています ...
pi@raspberrypi ~ $
pi@raspberrypi ~ $ rhythmbox &  ← 「rhythmbox」をコンカレント起動。
(UbuntuなどのLinuxを使用していれば「rhythmbox」が画面上に現れる)


  
しかし、実際に再生しようとすると Segmentation fault してしまう。困ったものだ。
しかたないので、aplay にて再生してみる。


pi@raspberrypi ~ $ aplay 12\ -\ SYMPHONY\ NO9\ \"GO\ IN\'\ HOME\".wav  ← 「\」はエスケープシーケンス
再生中 WAVE '12 - SYMPHONY NO9 "GO IN' HOME".wav' : Signed 16 bit Little Endian, レート 44100 Hz, ステレオ
pi@raspberrypi ~ $

これは再生された。それではと、24Bit 96kHzのファイルを試してみると再生されない。

pi@raspberrypi ~ $ aplay 1-0002691665.wav
再生中 WAVE '1-0002691665.wav' : Signed 24 bit Little Endian in 3bytes, レート 96000 Hz, ステレオ
aplay: set_params:1145: hw params のインストールに失敗しました:
ACCESS: RW_INTERLEAVED
FORMAT: S24_3LE
SUBFORMAT: STD
SAMPLE_BITS: 24
FRAME_BITS: 48
CHANNELS: 2
RATE: 96000
PERIOD_TIME: 125000
PERIOD_SIZE: 12000
PERIOD_BYTES: 72000
PERIODS: 4
BUFFER_TIME: 500000
BUFFER_SIZE: 48000
BUFFER_BYTES: 288000
TICK_TIME: 0
pi@raspberrypi ~ $

取りあえず 16Bit 44.1kHzのファイルは再生することができた。
今日はここまでか。。。
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする