Page 14 / 31 :  « ‹ Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Next › »

Jul 09, 2014

audio_output_formatについて(Vine Mpd ppcについて覚書-13)

NASを変更して2ヶ月になる。
その間になんとなく気になることが出てきた。

変更以前は、mpd.configのaudio_output_formatの設定でアップサンプリングして使っていた。
88200:24:2が良さそうだと感じていた。
それがどうも良さそうじゃなくなってきた。
最近は44100:24:2にしたりしていた。

なんだろうか、と思っていたところ、mpd.conf(5) - Linux man pageで興味深い記載を見つけた。
audio_output_formatの次、「samplerate_converter」の項目だ。
以下引用。読みやすいように改行を少し変えている。

samplerate_converter
This specifies the libsamplerate converter to use. The supplied value should either be an integer or a prefix of the name of a converter. The default is "Fastest Sinc Interpolator".

At the time of this writing, the following converters are available:

Best Sinc Interpolator (0)
Band limited sinc interpolation, best quality, 97dB SNR, 96% BW.

Medium Sinc Interpolator (1)
Band limited sinc interpolation, medium quality, 97dB SNR, 90% BW.

Fastest Sinc Interpolator (2)
Band limited sinc interpolation, fastest, 97dB SNR, 80% BW.

ZOH Interpolator (3)
Zero order hold interpolator, very fast, very poor quality with audible distortions.

Linear Interpolator (4)
Linear interpolator, very fast, poor quality.

internal
Poor quality, no floating point operations. This is the default (and only choice) if MPD was compiled without libsamplerate.

For an up-to-date list of available converters, please see the libsamplerate documentation (available online at ).

internalというのはmpdに組み込まれているという意味らしい。
和訳してみる。
「クオリティは低く、浮動小数点演算をしない。libsamplerateなしにmpdがコンパイルされているようならこれがデフォルトになる(そして、これしか選択できない)。」
なんとまあ。

mpdをインストールしたときに出来るconfig.logを確認したら記述があった。
「configure:8115: WARNING: libsamplerate not found -- disabling libsamplerate resampling」
96/24までリサンプリングしてもCPUの負担が大して増えないのは、増えないなりの理由があったというわけだ。

そういうわけで、audio_output_formatの項目をコメントアウトしてみた。
もとのflacファイルのフォーマット(44.1kHz/16bit)のままで出力されるはずだ。
どうも、悪くないようだ。
というか、これが一番良さそうだ。

NASを変更する前は、それでもリサンプリングしたほうが良いような気がしていた。
何で変わったのかは分からない。
しょっちゅう音切れを起こしていたし、NASからの信号自体の品質も低かったのかもしれない。そういう状況だったから、低品質でもリサンプリングするほうが多少ジッター軽減につながっていたのかもしれない。
かもしれないばっかりだが。

Posted at 13:36 in audio_diary | WriteBacks (0) | Edit Tagged as: , , ,

May 14, 2014

NASの入れ替え

1年以上、I-O DATAのHDL2-A6.0をオーディオ用のNASとして使用してきたのだけど、先日のGWに入れ替えた。
オーディオルームで使うにはファンのノイズが大き過ぎる。「静かでAV用に問題ない」という評価をネット上では見かけるが、僕はオーディオルームには不適だと思う。

代替機種はQNAPのTurboNAS HS-210にした。
ファンレスというのが大きかったと思う。
従来のQNAPのNASとは音が違うという話もあるので迷ったが、たぶん悪くはないに違いない、と判断した。

GWの最終日にHS-210が届いた。
梱包から出して、HDDを組み込み、LANとACアダプターをつないで、電源を入れる。
そこで設定をはじめる。
WebブラウザでQNAPのサイトにいく。
ファームのインストールにWindows、Mac、Linuxに対応しているとある。

Linux用のツールをダウンロードしてみたのだけど、これがUbuntuの新しいOS用、とある。しかも4つほどなにやらインストールしておかないといけないらしい。
うちのPCノート(Compac6730b OS:Vine Linux 6.1)には4つとも入っていない。
ものはためし、と説明に書かれているコマンドを打ってみたけど、やっぱり何もおきない。

Linuxはあきらめて、Mac miniにMac用のツールをダウンロードしてここに書いてあるみたいな感じでファームをインストールした。
ファームのインストールさえ済んだら、設定はどのパソコンのWebブラウザでも出来る。

その後、設定をするのだけど、よく分からないのは、DLNAサーバとかダウンロードサーバとか、要るの?と思うようなのがいろいろ動いているらしいこと。必須と表示されているのもあったりして、勝手に止めていいものかどうかもよくわからないので、現時点で放置している。
共有フォルダもいろいろと元から設定されている。
だけど、そういうのは無視して新規で自分の好きな名前の共有フォルダを作る。
ここに音楽ファイル(flacとcue)を置く。

データの転送はHDL2-A6.0とHS-210、各々の共有フォルダをCompac6730b上のマウントポイントにマウントして行った。
以前に別件でネットワークフォルダ経由(たぶんSambaだと思う)でデータ転送したら、300GBに15時間かかった経験があったので、マウントした方がいいのではないかと考えた。

ターミナル上からcpコマンドを使って転送してみたら、50MB/sで10時間で転送できた。
思ったよりずいぶん速かった。

HS-210にはtelnetでログインできて、コマンドで操作が出来る。だから当初はHS-210上にマウントポイントを作って、HDL2-A6.0の共有フォルダをマウントしてcpしてしまおうと思っていた。
だけど残念なことに、HS-210にはmount.nfsはインストールされていたけど、mount.cifsはインストールされていなかった。
HDL2-A6.0は、mount.cifsでのマウントは受け付けるけど、mount.nfsは受け付けないのだ。
連休が終わる前にHS-210にmount.cifsをインストールして転送を終了するというのは僕の手に余る。
それで、Compac6730bで中継することになった。
一晩で転送できたのだから上出来だ。

音質はどうかということについては、例によってちゃんと評価は出来ていない。
家族もいるので、十分な評価が出来るだけ音量を上げて聴くことがなかなか出来ないということがある。
あと昨日気付いたのだけど、音量を上げたら部屋の中の何かが共振する。何なのかは特定できていない。
しかしそれでもNASから聞こえるノイズが全くなくなったせいか、小音量でも音が良くなったような気がしてしまう。

一応、追記。
音質は改善がみられると思う。
試聴に使ったソースは下記の環境音録音。
自然音シリーズ 海洋の島、小笠原:USMジャパン
鳥の声、波の音のリアリティは確実に増している。鯨の声も録音されているのだけど、水中の泡や水流の音のリアリティが増していて、鯨の声も深みが増したように聞こえる。
以前の状況が劣悪なので改善して当たり前という気もするが、期待していた以上の変化だと思う。
コンポをグレードアップしたときさながらの感触だ。

音楽のソースでの比較はあまりできていない。

音切れがなくなったことも大きい。
最近、HDL2-A6.0だと音切れを気にせずに音楽を聴くことが出来なくなっていた。
原因ははっきりしない。
家庭内LANのDHCPサーバを兼ねているCTU装置を再起動したらずいぶんマシになったので、ネットワークが安定しないせいで音が途切れるということは明らかなんだけど、それでも完全にはなくならなかった。
HS-210に変更して今のところ音切れはない。
なんだったんだろう?というぐらいない。

Compac6730bにインストールしたmpdによる再生で、マウントしたNASを切り替えながらのイヤホンでの比較試聴をしてみた感じだと、HS-210のほうが細やかな音が出ていると感じる。
HDL2-A6.0のほうは音に若干にじみがあるように聞こえる。その分ラウドで勢いがあるようにも聞こえるけど。
音の定位もHS-210のほうが明確な気がする。

HDL2-A6.0はクライアントPCのWebブラウザからコントロール・設定をするのだけど、以前はなかなかアクセスできないということがあった。
ログイン画面が開くまで数分以上待たされるぐらいならいいほうで、そこに到達できないこともあった。
ログイン自体も時間がかかり、設定画面にたどり着くのに10数分を要していた。
ほとほとこれにもうんざりしたというのもNAS交換の理由だ。

HDL2-A6.0は共有フォルダをmpdサーバー上のマウントポイントにマウントして運用していた。
今回、データ移行したあとでアンマウントしたところ、前述したログインがいとも簡単にできるようになった。
もしかしたら、共有フォルダをマウントポイントに載せること自体がHDL2-A6.0にとって負担なのかもしれない。

前述のCompac6730b+mpdでの比較試聴で、HDL2-A6.0は当初は静かだったのだけど、徐々にファンのノイズが増えて「やっぱりまずいのかこれは」という様子だった。
Webブラウザからのアクセスもやや重くなったような印象だった。

どうしたらこんなことにならずに運用できるのか、現時点でははっきりしない。
共有フォルダに置いているファイルが多すぎるのかもと思って、新しい共有フォルダを作ってファイルの転送コピーを試みていたら、ごっそりファイルが消えてしまった。
原因は不明である。
当面、ファイルがなくなってもいい状況で使用するしかなさそうだ(どんな状況なのやら)。

6月11日追記。
HDL2-A6.0だが、HDDを取り出してハードディスク用クレードル裸族のお立ち台USB3.0(なんというネーミングだ、、、)に刺して、うちのノートPCにusb接続してチェックしたところ、2つのHDDのうち1つで不良セクタが数100見つかって交換推奨と表示された。
これが不調の原因かどうか分からないが、このままでは使えない。
かといって、新しいHDDを購入して使う気にもなれない。

結局、HDL2-A6.0本体と不良HDDは破棄。
裸族のお立ち台に残ったHDDを刺して、HS-210のusb端子に継いでバックアップにした。
6時間ぐらいでデータ転送できた。

よくそんなので1年以上も使ってたよと思われるかもしれないが、たぶん日々オーディオ三昧だったらもっと早く交換していただろうと思う。短時間しか聴くことができない生活状況なので、心底いやになる前に再生を止めて、いやな気分は忘れることに結果的になっていたのだと思う。
あと、なんか原因究明というのにのめり込む癖があるんだと思う。良し悪しだ。
それでずるずるとこれまで来てしまった。

ファイルを喪失する前にNASの変更が間に合って、本当によかったと思うよ。

Posted at 22:40 in audio_diary | WriteBacks (0) | Edit Tagged as:

Dec 30, 2013

EACの覚書(2019年追記)

XPのサポートが終わるので7に移行。
これに伴いEACを再インストールしたんだけど、やっぱりいろいろ忘れてるので覚書にしておく。

2019.12月末に追記。今回は10への移行に伴いv1.3をインストールした。そのまま移行するにはHDDの容量が足りなかったので、7をクリーンインストールして10にアップデートしたので、EACも最初からインストールだ。
いろんなデータをバックアップしたけど、EACのプロファイルを持ち出すのは忘れていた。次から気を付けたい。

インストールについて。
こちらがダウンロードのページ。
http://www.exactaudiocopy.de/en/index.php/resources/download/
現在、サイトのトップに「最新の日本語版を 無料でダウンロードする。」と書いてあるボタンが表示されることがあるんだけど、これは「hao123という怪しいのとか抱き合わせにインストールするけどいいよね」という最悪なインストーラをダウンロードするサイトにリンクしている。最新の日本語版とか、よく分からない。
EAC単体のインストーラを本家のダウンロードページから簡単に落とせるので間違えないこと。

インストールに際して、音楽ファイルの保存形式を選択するウィンドウが出たりする。このとき選択しておけばたぶん後々面倒がない。僕はflacを選択している。

2019.12月末に追記。
ここでflacをインストールしたら、古いバージョンのflacがインストールされるようだ。つまりEACに同梱されているflacが古い。別途、新しいflacをインストールして、EACの設定で選択したほうがいいようだ。
flac.exeは32bitと64bitがある。EACは32bitアプリだけど、どちらでも機能するようなので64bitを使うようにした。若干エンコードが速いかな。

日本語化のページはこちら。お好みで。
http://sonicdisorder.net/eacinstall.php
最初のEAC起動の前にファイルを入れるということが書いてあるが、後からでも問題ない。再起動したら反映される。

設定。
ドライブオプション。
インストール直後だとギャップ検出がセキュアになってないので、これを直す。以前、設定がおかしいというエントリーを上げたが、どうもインストール直後のデフォルトはInaccurate(不精密)らしい。検出方法は僕はAを基本にしている。
取り込み方法の設定、ドライブのタグから読み出しコマンドの設定を行う。
オフセットのタグからAccurateRipを設定。

エンコードオプションの外部エンコーダタグを設定する。
インストール時にflacを選択しているからか、既に表示されている。
「追加のコマンドラインオプション」でファイルに書き込まれるタグの内容が設定されているので、これを自分の都合のいいように編集しておく。
僕の場合、CD単位のflacとcue sheetで保存すると決めているので、ARTISTやTITLEを「ARTIST=%albumartist%" "TITLE=%albumtitle%」に変更しておく必要がある。こうしておかないとflacファイルのTrack Titleというタグに、なぜかCDの2曲目の曲名が書き込まれる。2曲目がないCDだったら何も書き込まれない。
これが、mpdで再生するときクライアント上の表示に反映される。
意味もなく2曲目が表示されてるからといって再生自体の不具合はないけど、あんまり気持ちいいものではない。
ちなみにタグと書いたが、flacの場合はID3タグではなく、FLAC tagsとVorbis commentsに対応してるとのことらしい。必要ないならID3タグは書き込まない設定のほうが無難かもしれない。

2018.3.28、追記。
タグについて分かりやすく説明しているサイトがあったのでアドレスを記載。
FLAC形式のタグの混乱について
http://reika788.blog.fc2.com/blog-entry-8.html

2017.04.17、追記。
EACがバージョンアップして、エンコードの設定も多少変わったとのこと。
以下に、EACサイトのアドレス。

FAQ » Exact Audio Copy
http://www.exactaudiocopy.de/en/index.php/support/faq/
Which flags can I use in the external compression scheme “User Defined MP3 Encoder”?
http://www.exactaudiocopy.de/en/index.php/2007/03/15/which-flags-can-i-use-in-the-external-compression-scheme-user-defined-mp3-encoder/

mp3のエンコードということだけど、flacでもこの設定を同様に使用する。
versions 1.0 beta2以降、設定が変わったと書いてある。
この設定を「追加のコマンドラインオプション」に記載していないとエンコードしてくれない。
最低限、「-○ %source%」(○は圧縮率で0から8の数字で設定する)だけ書いていれば、エンコードしてくれる。しかし、それだけだと他のタグをエンコードしたファイルに書き込んでくれないので、他の設定も書き込んでおく方がいいと思う。

圧縮率の数値は、上げたら上げただけファイルが小さくなるわけではないようで、5あたりにしておくのが妥当らしい。
以下、参考サイト。
FLACの圧縮率・圧縮速度の傾向 - sgryjp.log
http://sgry.jp/blog/2016/09/17/3811/
藤本健のDigital Audio Laboratory:FLACとApple Lossless圧縮で、変換速度や圧縮率に違いはある?
http://av.watch.impress.co.jp/docs/series/dal/650133.html

2019.12月末、追記でうちの設定を覚書にしておく。

-V -T "ARTIST=%albumartist%" -T "TITLE=%albumtitle%" -T "ALBUM=%albumtitle%" -T "DATE=%year%" -T "TRACKNUMBER=%numtracks%" -T "GENRE=%genre%" -T "COMMENT=%comment%" -T "ALBUMARTIST=%albumartist%" -T "COMPOSER=%composer%" %haslyrics%?tag-from-file=LYRICS="%lyricsfile%"%haslyrics% -T "DISCNUMBER=%cdnumber%" -T "TOTALDISCS=%totalcds%" -T "TOTALTRACKS=%numtracks%" -T "PERFORMER=%albuminterpret%" %hascover%?picture="%coverfile%"%hascover% -5 %source%

メタデータオプションのfreedbタグではfreedbサーバを「http://freedbtest.dyndns.org:80/~cddb/cddb.cgi」に設定。日本語に強いということらしい。

2019.12月末、追記。
クラシック中心のリッピングになると不利みたい。最近はデフォルトで登録されている「http://freedb.freedb.org:80/~cddb/cddb.cgi」も使うことが多い。

だいたいこんな感じか。

Posted at 16:50 in audio_diary | WriteBacks (0) | Edit Tagged as: ,

May 01, 2013

Vine Mpd ppcについて覚書(12)デーモンの刈り込み

必要がないのに動いているdaemonを停止することで音質向上が見込めるということでやってみた。
そんなに期待してなかったという面があるからかもしれないが、期待以上の変化があった。
画像で例えると、640*480が1600*1200になるような感じ、というと言い過ぎか。
解像度が上がり見通しが良くなる。

最近は過渡特性とかトランジェントと呼ぶらしいが、音声の立ち上がり、立下りが良くなってリアリティが増してくる。肌理細かい音になるので、打楽器のアタック音は際立つけれど耳に障らない音で再生される。ボーカルは細やかなニュアンスが再現されるようになる。
そういう感じを求めているんだけど、デーモンの刈り込みで求めるところに近づくと思う。
楽器の音とか優れた歌い手の声というのは本来から快い音なので、上手く再生されるとそれだけで音楽自体の好みとか関係なく聞き惚れてしまうということがある。オーディオマニアは音ばかり聴いて音楽を聴いてないというけど、それも仕方ないじゃないかという状況になるのが目標といっていいかもしれない。

現在の状況は以下の通り。
刈り込んだデーモンは赤色表示。起動中は青。

[root@localhost ab]# chkconfig --list 
NetworkManager  0:off   1:off   2:on    3:off   4:on    5:on    6:off 
anacron         0:off   1:off   2:on    3:off   4:on    5:on    6:off 
apache2         0:off   1:off   2:off   3:off   4:off   5:off   6:off 
atalk           0:off   1:off   2:off   3:off   4:on    5:on    6:off 
atd             0:off   1:off   2:off   3:off   4:on    5:on    6:off 
autofs          0:off   1:off   2:off   3:off   4:on    5:on    6:off 
avahi-daemon    0:off   1:off   2:off   3:off   4:off   5:off   6:off 
avahi-dnsconfd  0:off   1:off   2:off   3:off   4:off   5:off   6:off 
bluetooth       0:off   1:off   2:off   3:off   4:on    5:on    6:off 
crond           0:off   1:off   2:on    3:on    4:on    5:on    6:off 
cups            0:off   1:off   2:on    3:off   4:on    5:on    6:off 
dhcpd           0:off   1:off   2:off   3:off   4:off   5:off   6:off 
dhcrelay        0:off   1:off   2:off   3:off   4:off   5:off   6:off 
dkms_autoinstaller      0:off   1:off   2:off   3:off   4:off   5:on    6:off 
dnsmasq         0:off   1:off   2:off   3:off   4:off   5:off   6:off 
dovecot         0:off   1:off   2:off   3:off   4:off   5:off   6:off 
firstboot       0:off   1:off   2:off   3:off   4:off   5:on    6:off 
haldaemon       0:off   1:off   2:off   3:off   4:off   5:on    6:off 
iptables        0:off   1:off   2:off   3:off   4:on    5:on    6:off 
irqbalance      0:off   1:off   2:off   3:off   4:off   5:off   6:off 
iscsi           0:off   1:off   2:off   3:off   4:off   5:off   6:off 
iscsid          0:off   1:off   2:off   3:off   4:off   5:off   6:off 
lirc            0:off   1:off   2:off   3:off   4:off   5:off   6:off 
mdmonitor       0:off   1:off   2:off   3:off   4:off   5:off   6:off 
mdmpd           0:off   1:off   2:off   3:off   4:off   5:off   6:off 
messagebus      0:off   1:off   2:on    3:off   4:on    5:on    6:off 
named           0:off   1:off   2:off   3:off   4:off   5:off   6:off 
netfs           0:off   1:off   2:off   3:off   4:on    5:on    6:off 
network         0:off   1:off   2:on    3:on    4:on    5:on    6:off 
nfs             0:off   1:off   2:on    3:off   4:on    5:on    6:off 
nfslock         0:off   1:off   2:on    3:off   4:on    5:on    6:off 
nmb             0:off   1:off   2:off   3:off   4:off   5:off   6:off 
nscd            0:off   1:off   2:off   3:off   4:off   5:off   6:off 
ntpd            0:off   1:off   2:off   3:off   4:off   5:off   6:off 
portmap         0:off   1:off   2:off   3:off   4:on    5:on    6:off 
postfix         0:off   1:off   2:on    3:off   4:on    5:on    6:off 
proftpd         0:off   1:off   2:off   3:off   4:off   5:off   6:off 
random          0:off   1:off   2:on    3:on    4:on    5:on    6:off 
rdisc           0:off   1:off   2:off   3:off   4:off   5:off   6:off 
rpcidmapd       0:off   1:off   2:on    3:off   4:on    5:on    6:off 
saslauthd       0:off   1:off   2:off   3:off   4:off   5:off   6:off 
smb             0:off   1:off   2:off   3:off   4:off   5:off   6:off 
sshd            0:off   1:off   2:off   3:off   4:off   5:on    6:off 
syslog          0:off   1:off   2:on    3:on    4:on    5:on    6:off 
udev-post       0:off   1:on    2:on    3:on    4:on    5:on    6:off 
uuidd           0:off   1:off   2:on    3:on    4:on    5:on    6:off 
winbind         0:off   1:off   2:off   3:off   4:off   5:off   6:off 
wpa_supplicant  0:off   1:off   2:off   3:off   4:off   5:off   6:off 
xinetd          0:off   1:off   2:off   3:on    4:on    5:on    6:off 
 
xinetd ベースのサービス: 
        chargen:        off 
        chargen-udp:    off 
        cups-lpd:       off 
        daytime:        off 
        daytime-udp:    off 
        echo:           off 
        echo-udp:       off 
        rsync:          off 
        services:       off 
        swat:           off 
        telnet:         on 
        time:           off 
        time-udp:       off 

atalkやbluetoothなど以前から止めてあったdaemonもあるが、分からないものは放置していた。
手始めにsshdから止めて、 irqbalance、 iscsi、iscsid、 mdmonitor、 avahi-daemon、 dkms_autoinstaller、 firstboot、 netfs、nfs、nfslock、rpcidmapd、portmap、 NetworkManager、 iptables、 haldaemon、messagebus、 anacron、atd、autofs、と止めてしまった。
今のところ、システムは安定していて問題は出ていない。

追記。
うちのシステムでは、OS起動時にNASをマウントするような設定はしていない。
手動でコマンドを打ちマウントさせている。

「/etc/fstab」に設定を記載し自動でマウントさせるということなら「netfs」は止めてはいけないかもしれない。fstabに関係するデーモンだからだ。他にも関連するデーモンがあるかもしれない。
各々のシステムの状況によって止めることが出来るデーモンは違うので、一応、注意書きしておく。

コマンドについて覚書。

# chkconfig --level 345 iscsi off

上記のような感じでランレベル、サービス名、on/off、で設定する。
システムを再起動したら元に戻ってしまう場合もあるらしいが、Vine Linux 5.2 ppcの場合はこれだけで再起動後にも反映される。

それにしても随分止めたものだ。
haldaemon、messagebusなどはサイトによってはOFFにすべきではないデーモンに分類されている。実際、Powerbookのほうでもあれこれと止めていたらマウスの入力を受け付けなくなって慌てた。
正直なとこ、最後のほうになってくると音がよくなってるのかどうかはっきりしない。十分な試聴が出来ないので評価しないままどんどん止めている。本当は評価しながらしたほうがいいのだろうけど、なかなか難しい。

以下、参考にしたサイト。

http://www.d3.dion.ne.jp/~koetaka/demon2.html 不要なサービスを停止する STARTUP LINUX
http://www.obenri.com/_minset_cent5/daemon_cent5.html ◇不要デーモンの停止(CentOS5)◇☆お便利サーバー.com☆
http://www.obenri.com/_minset_wbel3/daemon_wbel3.html ◇不要デーモンの停止(WBEL3)◇☆お便利サーバー.com☆
http://d.hatena.ne.jp/weblinuxmemo/20090911/p1 不要なサービスの停止 - Linux Memo: Vine Linux 5 設定 tips
http://ikubo.x0.com/unix/CentOS50_stop_Service.htm 不要なサービスを止める (CentOS 5.0)
http://linux.rakunet.jp/linux/service_stop/service_stop.html 不要なサービスを停止
http://www.kozupon.com/etc/daemon.html Kozupon.com - 不要なデーモンの停止とシステムのセキュアー化!

他にもあちこち見て回った。

自分用にdaemonの一覧表を作ることにした。
前述のサイトから記述をもらったりしている。この場で申し訳ないけど御礼申し上げます。

NetworkManager

off

無線LANの暗号化キーなどの管理を行い、利用状況に応じて複数のNICの自動切換えを行うデーモン、とのこと。動的なネットワーク管理システムで、モバイル状況などでGUIで設定を容易にできるので便利。しかし、/etc/resolv.conf を自動で上書きしたりするため困ることがあるらしい。

anacron

off

コマンドをタイムスケジュールに応じて実行する「crond」は、その実行予定時刻にシステムが稼動していない場合には実行がキャンセルされる。「anacron」は「crond」のタイムスケジュールを管理し、実行がキャンセルされてしまったコマンドを「後から追っかけて実行」するデーモン。

apache2

off

HTTPサーバを作るときに使う。

atalk

off

OS9以前のMacにAppleTalkで接続するためのデーモン。

atd

off

「at」コマンドのために必要なデーモン。「at」は単発的に指定時刻にコマンドを実行するために使用する。

autofs

off

フロッピーディスクやCD-ROM、DVD-ROMなどのリムーバブルストレージやNFSなどを自動的に接続、マウントし、設定時間以内のアクセスが無ければアンマウントするデーモン。

avahi-daemon

off

アプリケーションが、マルチキャストDNSを使って名前を公開したり解決したり出来るようにするためのデーモン。
※Avahi: MacOSXのボンジュールの様なもの。設定の必要なしにネットワークに参加できるようにするための技術。DHCP、DNS、プリンタやファイルの共有などを設定なしに行う。このデーモンはその一部。

avahi-dnsconfd

off

Avahi dns configuration daemon。ネットワークを監視して、設定なしでDNSサーバを見つける。見つけたDNSサーバは「resolv.confより優先させる」ということらしい。

bluetooth

off

bluetoothワイヤレス通信サービス。bluetoothを使わないなら止める。

crond

on

タスクスケジューラー。設定はユーザーごとに「crontab」に記述。システム全体用のcrontabも存在する。指定した時刻にサーバーが起動していなければタスクはスキップされる。決められた時間にジョブを実行するのに必要。止めてはいけないデーモンらしい。

cups

off

プリンタ関連のサービス。プリンタサーバーとして使用する場合は必須。

dhcpd

off

Dynamic Host Configuration Protocol(DHCP:動的ホスト設定プロトコル)とInternet Bootstrap Protocol(BOOTP)とを実装したもの。要はDHCPサーバーとして使用する場合に必要。

dhcrelay

off

DHCPサーバが直接には接続されていないサブネットからのDHCP要求やBOOTP要求を、他のサブネットにある1つまたは複数のDHCPサーバに中継する手段を提供する、とのこと。

dkms_autoinstaller

off

起動時にDKMS対応のカーネルモジュールを自動的にロード、インストールするという。

dnsmasq

off

小中規模の内部ネットワークなどで簡易的なDNSサーバを立てる場合に使う。

covecot

off

POP/IMAPサーバー(メール受信サーバー)として構築する場合に使用。

firstboot

off

インストール後、最初の起動時に初期設定を行う。このデーモンは一度実行されると初回起動時設定完了が記録された「/etc/sysconifg/firstboot」が作成され、このファイルを削除しない限り「firstboot」は再び実行されることはない、という。

haldaemon

off

デスクトップ間アプリケーション通信のプロトコル「D-BUS」をサポートするデーモン。
HAL(ハードウェア抽象化層)という仕組みに関係し、プラグ&プレイデバイス(USB外付けHDDやUSBメモリ等)に対応するハードウェア情報収集サービス。比較的新しい機構で、Linuxカーネルはこの仕組みを使ってデバイスを管理できるようになっている。PCI、SCSIなどのバスも監視する。「messagebus」を動かしておく必要がある、とのこと。
止めてはいけないデーモンらしいが。

iptables

off

IPv4用のパケットフィルタリングソフトウェアによるルーティング&ファイヤーウォール。ファイヤーウォールを設定しない場合でも、これが稼動していなければ動作しないアプリもあるというが、、。

irqbalance

off

マルチCPU環境で2ndCPU以降も割り込み処理を行えるようにして効率よく処理を分散させるデーモン。マルチCPUかどうかは「# cat /proc/interrupts」で確認できる。動作確認は「# /etc/init.d/irpbalance status」「# ps aux | grep irqbalance」で行う。
当然、シングルコアなら不要。

iscsi、iscsid

off

SCSIプロトコルをTCP/IPネットワーク上で使用する「iSCSI接続」をサポートするデーモン。

lirc

off

Linux Infrared Remote Control。リモコンと関係があるらしい。

mdmonitor

off

ハードディスクをソフトウェアRAIDで使用する場合の監視デーモン。エラーの発生時にシステム管理者への通知する。

mdmpd

off

MD multipath Daemon。ソフトウェアRAIDで、一つのハードディスクに対して複数のインターフェースから接続可能なサーバーシステムを使用する場合の監視デーモン。multipathデバイスの監視をサポートするサービス。

messagebus

off

デスクトップ上で相互にメッセージを送るためのデーモン、とのこと。
「D-Bus」を使用可能にするデーモン。haldaemon、dhcdbd、oddjobdなどを動かすなら必要。
※D-Bus:メッセージバスの1つ。特定のサービスにメッセージを送信したり、興味のある全てのサービスにメッセージをブロードキャストするためのAPIを提供。APとシステムの低レベルにあるコンポーネントとの間でイベントを送信が可能になる。
止めてはいけないデーモンらしいが、うちのibookでは止めている。

named

off

DNSサーバーアプリケーション「BIND」のデーモン。

netfs

off

「/etc/fstab」にsmbfs、cifs、nfsなどファイルシステムをマウントするように記述していると、システム起動時にマウント、シャットダウン時にアンマウントしてくれる。
NFSクライアントデーモン。NFSサーバーに接続してファイル共有するために必要。
これを稼動させていなければ「autofs」デーモンが稼動していてもファイル共有できないらしい。MacOSXやNFSサーバーを実装したWindowsOSとファイル共有をする場合にも必要となるらしい。

network

on

ブート時にネットワークインターフェイスを設定するサービスで、OFFにすると起動時にネットワークに繋がらなくなる。手動で設定を行わないといけなくなる。
止めてはいけないデーモン。

nfs

off

Network File System。Linuxファイルシステムのマウントに関わる。動かすには「portmap」も必要。

nfslock

off

NFSサーバーのデータを保護するための「ファイルロック機構」を提供するデーモン。「portmap → nfslock → nfs」の順に起動する必要がある。

nmb

off

Samba関連。名前解決プログラムであるnmbdと関係あるらしい。

nscd

off

ネームサービスキャッシュデーモン。passwd、group、hostsなどをキャッシュして、libc経由で提供する。DNSやNISの情報をキャッシュするので、/etc/resolv.conf などを編集したら再起動が必要。DNSを使っていれば必要ない?

ntpd

off

Network Time Protocol daemon。NTPで上位のNTPサーバーのタイムゾーンの設定を参照して時刻を調整し、同時にサーバーとして時刻を配信する。インターネット標準時サーバと同期してシステム時間をセットし維持するオペレーティング・システム・デーモン。
うちでは最初から止まってた気がするが、どうなんだろうか。止めてはいけないデーモンらしい。

portmap

off

Linux向けRPC(remote procedure call)関連のポートマッパー。RPCに対する要求に応答し要求されたRPCサービスへの接続を設定する。ポートマップはRPCサーバプログラムが起動される前に動作していなければならない。NFSやNISなどを使用する場合は必要だがNFSv4では不要。NIS、NFS、FAM以外ではほとんど使われないらしい。

postfix

off

メールサーバー。

proftpd

off

port mapperサービス。NFSやNISを使用する場合に必要。

random

on

システム上で乱数を発生させるデーモン。SSLなどセキュリティ関連で必要になったり、アプリケーションが「どちらでもいい」という曖昧な処理を行う場合に利用することがあるという。

rdisc

off

ローカルなサブネット内でルーターとして動作させるときの経路管理を行うデーモン。

rpcidmapd

off

NFSを利用するときに利用するセキュリティ関係のユーティリティで、ユーザー名/グループ名とUID/GID のマップを保持するデーモンとのこと。NFSを使わないならoff。

saslauthd

off

SASL(Simple Authentication and Security Layer)のデーモン。IMAP、POP3、SMTPなどの認証を支援する。コネクションベースのプロトコル認証をサポートするデーモン。

smb

off

LinuxでWindowsOSのファイルサーバーを稼動させるアプリケーション「samba」のデーモン。

sshd

off

リモートホストとの通信を暗号化してやりとりを行う「SSH」で通信するために必要。

syslog

on

システムのログを記録する。サーバー不調時にログが無いと困る。

udev-post

on

ハードウェア自動認識を行うデーモン。止めてはいけない。

uuidd

on

UUID(Universally Unique Identifier)ライブラリから利用されるデーモン。時刻情報に基づくUUIDを、安全にそして一意性を確保して生成する。最近のLinuxディストリビューションの場合、このUUIDを例えばハード・ディスクの個々のパーティションを識別するための情報として使っていたりする。UUIDは「/etc/fstab」ファイルの中身を見れば確認できる。

winbind

off

「samba」でWindowsOSのファイル共有を行う際に、ホスト機をNTドメイン(WidnowsOS独自のネットワークユーザー管理システム)に参加させるためのデーモン。

wpa_supplicant

off

無線LANの暗号化及び認証の規格であるWPA(Wi-Fi Protected Access)をサポート。

xineted

on

スーパーサーバーデーモン。telnetやswatなどxinetdでコントロールするサービスがあるならon。

Posted at 10:00 in audio_diary | WriteBacks (0) | Edit Tagged as: ,

Apr 17, 2013

Vine Mpd ppcについて覚書(11)mpd.conf : audio_buffer_sizeとbuffer_before_play

mpd.confの記載内容に関して。
過去のエントリーで以下のように書いていた。

# MPD Internal Buffering ####

audio_buffer_size		"384"
buffer_before_play		"5%"
#

ここの設定について追記。新規エントリーにする。
参考にリンク。
http://linux.die.net/man/5/mpd.conf

「audio_buffer_size」と「buffer_before_play」のデフォルトは2048と10%らしい。これらを変更することで音質が変わるという。
「audio_buffer_size」の数値はkbである。
「buffer_before_play」はaudio_buffer_sizeのうち何%使うかを0~100%の範囲で設定できる。

5%は少なめの設定だが、384kbの5%ということなら20kb弱だ。
この数値にどういう意味があるのか分からない。
ひどく少ない。
256kbの5%だと12.8kbになってしまう。
これは44.1/16の音楽データだと0.1秒に満たない。384kbの5%だと0.1秒を超える。

384kbの5%は、44.1/16の音楽データだと0.1秒を超えるぐらい。
しかしうちでは88.2/24にアップサンプリングしてるので、0.1秒よりもっと短いはずだ。

上記の設定で、CD1枚単位をflac+cue sheetにリッピングしたものを通して再生する分には、全く問題ない。
しかしiTSから買ったアルバムを通して聴く場合だと、ライブ盤を再生すると音が途切れるのが分かる。m4aをギャップレス再生できないのだ。
384kb/5%では足りないのだろうか。

bufferに関連してリンク。
http://mpd.wikia.com/wiki/Music_Player_Daemon_Crossfading_Troubleshooting
リンク先から引用してみる。

MPD does crossfading by using the buffer.
The amount of buffer used for crossfading is the size of the buffer minus the amount of space reserved for buffer_before_play.
By default (2MB buffer and 25% buffer_before_play) this is approximately 9 seconds of crossfading for 44.1 khz, 16-bit, stereo audio.
If you have the buffer_before_play set to 100%, there will be no crossfading.

crossfadingという操作がmpdクライアントから設定できる。
曲再生が終わって次の曲に移る際に数秒間かぶるように出来る(秒数も設定できる)。

ここで書かれていることから推測するに、buffer_before_playで使われる以外のbufferに、crossfadingのためのデータを読み込むということらしい。
こうした特別な使途がないなら、ほとんどなくてもいいbufferなのかもしれない。
逆に、before playとcrossfading以外で使うことがあれば不具合があるかもしれない。
ギャップレス再生の不具合とは関係があるのだろうか。
http://linux.die.net/man/5/mpd.confには「Try increasing this if you hear skipping when manually changing songs.」とあるが、skippingというのがどういう状態かよく分からない。

みみず工房掲示板からも引用する。

audio_buffer_size
decoderスレッドからoutputスレッドへデータを受け渡すfifoバッファーのサイズです。
buffer_before_play
audio_buffer_sizeのデータがこれより少なくなるとdecoderが動いてバッファーにデータを追加します。
再生開始時はバッファーにデータがこの値になるまで開始されません。
この値を100%にすると常に空きが出ないようにdecoderが動きます。

ここも参考にリンク。
http://d.hatena.ne.jp/propella/20061202/p2 ALSA PCM プログラミングのサウンドバッファ - 言語ゲーム

「audio_buffer_size "384" buffer_before_play "5%"」だと、20kb弱のbufferを切らさないようにdecoderが動いてるってことになる?
audio_buffer_size "1024" buffer_before_play "100%"といった設定だと、1MBのbufferを常に抱えることになる。
全く状況が違ってくるだろう。
常にdecoderが動いてるというのは望ましい状態なのかどうか。
buffer_before_playが100%だと常にdecoderが動くということだけど、buffer_before_playが小さい場合もdecoderが動く頻度が多くなると思う。
再生音にどんな変化があるのだろう。

どんな設定がいいのか、試行錯誤してみる。

こういう試行錯誤がやりやすくなった背景にはibook G4をtelnetサーバーにしたということがある。
当初はsshを考えていたんだけど「鍵」の扱いが面倒でやめた。もしかしたら鍵を使わない設定も出来るのかもしれないが分からなかった。家庭内LANなのでと割り切ってsshdも止めてしまった。

telnetサーバーはVine Linux ppc 5.2には最初からは入ってないので、Synapticパッケージマネージャを使ってインストールした。
当然だけどtelnetを使うと何かと楽だ。いちいちオーディオラックの下からibookを引っ張り出す必要がないし、ncmpcppを操作しながら、同じ画面でmpdサーバーの状況も操作できるというのは面白い。

クラシックの歌劇のCDを曲ごとにリッピングし、flacで保存したものを再生する。
「audio_output_format」は44.1kHz、16bitに固定した。

まず「audio_buffer_size "256"」にしてみる。
「buffer_before_play」の値は、0、10、50、100と換えてみた。
結果、これでは数秒間しか音が出ないことが分かった。
256では駄目みたいだ。

次に「audio_buffer_size "264"」にしてみる。
再生自体に問題はない。
しかし「buffer_before_play "100%"」にするとncmpcppでFキーを押して早送りすると、そのあと音が出なくなるなど再生の不具合が出る。
「buffer_before_play "10%"」にすると問題なくなった。
buffer_before_play以外のbufferは使用状況によっては不可欠かもしれない。
ギャップレス再生は問題なし。

いろいろ試していく。
こまごま書いていっても分かりにくいので、結果を表にする。
縦軸が「buffer_before_play」。
横軸が「audio_buffer_size」だ。


256 264 288 320 512 1024
0 b np np np np np
10 b np np np np np
20 b np, f



30 b np, f



50 b np, f np, f np np np
60 b f



80 b
f f f np
90 b



f
100 b f f f f f
  • b : 再生しても数秒間しか音が出ない状態。
  • f : Fキーで早送りしたときに不具合が生じる。
  • np : no problem

npとfの両方が付いているのは、不具合が出る頻度が少ないと感じた所である。
あまり厳密に回数を数えたりまではしなかったので、印象での評価だ。

ざっと見た感じ、早送りにはbuffer_before_play以外のbufferが必要だと分かる。
必要な数値を計算してみる。
1024*(1-0.8)≒200、320*(1-0.5)=160、264*(1-0.3)≒185

どうやら、200kb程の余裕があれば、問題なく早送り出来るようだ。
余分のbufferが足りないと早送りの後で音が出なくなったりする。それでも何回かFキーなどを連打したら音が出る。
しかし、buffer_before_playが100%だとそれも上手くいかない。早送り自体が出来ないこともあり、止まったときに音を出すにはトラックの初めから再生するしかないようだ。

ギャップレス再生はaudio_buffer_sizeが256kbのとき以外の条件だと問題なく出来た。
256kbでは再生自体がままならなかったので仕方ない。
ということは、ギャップレス再生の可否はbufferの大きさには依存しないということだ。

m4aだとどうか。実は、audio_buffer_sizeが1024でも音が途切れる感じがあった。では、audio_buffer_sizeの数値によって途切れる感じが違ってくるかというと、以外にそうでもない。
mpdの設定よりも、ファイル形式による影響のほうが大きいのかもしれない。

現在の設定は以下の通り。きりがいい数値にした。

audio_buffer_size		"320"
buffer_before_play		"10%"

設定によって確かに音色の感触は違う。
しかし、どの設定が優れているかの判断は難しいと思った。
audio_buffer_sizeが大きいとゆったりした感触になるというのは世評のとおりだと感じた。

buffer_before_playの数値による違いは、どうもはっきりしなかった。
100%だとやや窮屈に聞こえるような印象で、音飛びさえなければ0%のほうがいいような気がする。しかし、そんな印象は気のせいじゃないか?という気もする。
素人考えだが、「0%」というけど実際に再生直前の音楽データのbufferを「0kb」で回してるなんてことは考えにくくて、実はmpdが勝手に判断してデータを切り回してると考えたほうが実際に近いのではないかと思う。

ちなみに、選曲時に「skipping」と思われる不具合も生じなかった。
そういうわけでbuffer_before_playは少なめだ。

アップサンプリングについての音質評価はまだしていない。しかし、少なくともbuffer_before_playの数値よりは影響が大きい印象だ。

ファイル形式によるギャップレス再生の不具合の違いは、そのうちまた確かめてみようと思う。
僕が使ったm4aファイルが、もともと良くないものだった可能性だってあるからだ。
iTunesで同じCDをリップして確認する必要があると思う。

追記。
CDを楽曲ごとにリップして作ったm4aファイルを再生してみた。
サンプリング周波数は320kHz。
やはりiTSで買ったファイル同様、わずかに楽曲間で音が飛ぶ。

ギャップレス再生の可否は、mpd自体の問題ではなく、各々のファイル形式のCodecによるのではないだろうか。本来ギャップレス可能になるはずのCodecにmpdが充分に適応できていないということなら、mpdの問題ということになるだろうけど。

Posted at 10:00 in audio_diary | WriteBacks (0) | Edit Tagged as: ,

Apr 12, 2013

Vine Mpd ppcについて覚書(10)NASのマウントについて

これも結構困ったのを思い出したのでエントリーにする。

現在は、PCオーディオ実験室で紹介されてる自動マウントのような、高度な設定はしていない。
iBook G4の起動後、ランレベル3の端末からコマンドを打ち込んで「Music」ディレクトリにマウントさせるという、原始的な手法をとっている。
そんなに困らないから今のままでいいかな、と思っている。

ファイルシステムをマウントするにあたって、まず「マウントポイント」を作る。
うちの場合、「/root/Music」をmpdのmusic_directoryに指定してるので、ここに空のディレクトリを作りマウントポイントにする。
次に、以下のようなコマンドを打ってみた。
以下のようなというのは、はっきり覚えてないからである。

# mount -t nfs //192.168~(マウントするNASのディレクトリのパス) /root/Music/(マウントポイント名)

これが上手くいかなかった。マウントしない。
PCオーディオ実験室のエントリーには「cifs」とか「smbfs」といった文字列が出てくる。ファイルシステムをマウントするにあたって、ファイル形式によって選択する文字列が違ってくるらしい。
nfsじゃダメだったのでcifs、smbfsとやってみたけど、やはり上手くいかなかった。

そこで「man mount」でマニュアルを読んでみたけど、よく分からない。
これにはまいった。
外付けHDDにするなんて手間はかけられない。

ネット上で手がかりをさがしているうち「cifs」というのがあると知る。
Windows上のファイルにLinuxからアクセスするには(mount.cifs編) - @IT
これを試したら当った。

# mount -t cifs //192.168~(マウントするNASのディレクトリのパス) /root/Music/(マウントポイント名)

これで、NAS上のディレクトリをmusic_directoryにマウントできた。

ところがまだ問題があった。
NAS上にはiTunes Libraryの音楽ファイル用ディレクトリも置いてある。これを/root/Music/にマウントしようとしたら出来なかった。
ディレクトリ名に「iTunes Media」が使われているので、コマンドに半角スペースが混じる。そのままでは正しいコマンドとして成り立たなくなるのだ。

対策は簡単で、パスを""(ダブルクォーテーション)で囲むだけでいい。

# mount -t cifs //"192.168~(マウントするNASのディレクトリのパス)" /root/Music/(マウントポイント名)

これで問題なくマウントできた。
\(バックスラッシュ)を使ってコマンドを書く方法もあるということだが、試みていない。

毎回こんな長ったらしいコマンドを打つのは大変なので、「alias」に登録してある。
bashの設定ファイル「.bashrc」に、コマンドをマウントポイント名でaliasに登録してあるので、マウントポイント名を端末に打ち込むだけでマウントできる。
ダブルクォーテーションを使ってるコマンドは、'(クォーテーション)を併用して書いている。

これぐらいなら手間だとあんまり思わないので、これでいけてる感じだ。

Posted at 09:37 in audio_diary | WriteBacks (0) | Edit Tagged as: , ,

Apr 03, 2013

オーディオ状況報告

いろいろ変わったので、現在のオーディオシステムについて記録しておく。

4月6日、ちょっといろいろ追記。
一部、書き間違えを訂正している。

BY50S HDL2-A2.0
(LAN: KB-FL7-05BK)

mac mini4.1 2.4GHz 8GB
OSX 10.6.8
audirvana plus / itunes
96/24 TOS
(TOS: HK50/huji parts)
AT-HDSL-1
TOS > RCA
(RCA: 型番不明)
ibook G4 12" 512MB
Vine Linux 5.2 ppc
mpd 0.17.3
88.2/24 USB
(USB: RAL-2496UT1付属ケーブル)
RAL-2496UT1
USB > TOS
(TOS: OPC-M1/SAEC)
DP-5090
44.1/16 RCA
NBR271
RCA > BNC
(BNC: BNC59/HOSA)
BJC-XP-TRC
BNC > XLR
SRC2496
>> 96/24 RCA
(RCA: D-75/DH LABS)
PB-500-2 odeon-lite
(RCA: basis1.4/AC Design)
SM-SX100
(5.5mmスケアキャブタイヤ/協和電線)
4425mk2 (omni8/Space&Time)
T900A

昨年9月のエントリーで書いたのと比べて、DACの上流が変わっている。

まずCDプレーヤーだけど、TEACのVRDS-25xsを外して、KenwoodのDP-5090に変更している。
理由は、実はVRDS-25xsだとCDを入れっぱなしにするとターンテーブルにCDがくっついてしまうことがあるから。めったにはないんだけど、そうなると天板を開けるなりしてCDを取り出さないといけない。僕以外の家族が使うことを想定しているので、マニアックで高音質目指した機種よりトラブルが少ない機種のほうが望ましい。
VRDS-25xsよりもいい音がPCトランスポートで得られる目星がついたかも?ということもある。

RCA(COAX)出力をBNC、さらにBJC-XP-TRCでXLRに変換してDACに入力している。
なぜか分からないけど、odeon-liteのRCA入力周りの状態によって、たびたびodeon-liteのリレーが動くということがある。25xsでもDP-5090でも同じで、電源ケーブルその他対策を講じてみたけど、なかなか直らない。
CDプレーヤーからの出力をBJC-XP-TRCをかませてXLRに入れると、この不具合がない。
これでいいや、ということにしてしまった。

PCトランスポートとしてibook G4を追加している。
mac miniのAudirvana Plusと、ibook G4のmpdを使い分けできるようにしているが、最近は主にmpdを使っている。
理由は、実はmac miniを子供に占拠されてるからだ。4才の子がPOCOYOを観てるのにいちいちどけと言ってゴソゴソするのは面倒だ。メモリを8GBも積んでいてメインマシンにするつもりだったんだけど、そうもいかなくなっている。
その点、mpdなら離れた場所にあるクライアントからオーディオ再生の指示が出せる。音質は、未だ試行錯誤中だけど定評どおり期待できそうな感じだ。

mpdの出力は、現在は88.2kHz/24bitにしている。
アップサンプリングの周波数は元のファイルの整数倍がいいという話を随所で聞くので44.1kHzの倍にした。
あと、整数倍でのアップサンプリングのほうがibookへの負担が少ないだろうと思ったから。デジタルオーディオではシステムが安定して動くという事が音質上極めて重要だと個人的に思っている。そのためには負荷が少ないほうがいいのではと考えた。
96kHzのときと聴き比べは出来ていないが、なんとなく音がしっかりしたような気がする。
じゃあなぜmac miniは96kHzなのかというと、こっちはなんとなく96kHzのほうがいいような気がしたから。理由はよく分からない。気のせいかもしれない。メモリ8GBが効いてるのかも知れない。

以前は、mac miniからの光出力を直接SRC2496の光入力に繋いでいたが、今はAT-HDSL-1に繋いで同軸出力に変換している。
代わりにibook G4、RAL-2496UT1からの出力を光入力に繋いでいる。以前はこっちをAT-HDSL-1に繋いでいたんだけど、USBから光、さらに同軸と、こんなに変換を繰り返すことにどういう意味があるのかと感じて入れ替えた。

ibook本体は、ラック下の床に邪魔にならないように置いている。のぞきこむと白いリンゴが光っているのが見える。
mac miniはコンポから若干離れたとこのTV台に、モニター付けてセッティングしている。前述したとおり最近はもっぱら子供が使っている。AudirvanaとiTunesからの音声を5mもの長さの光ケーブルでオーディオコンポに出力している。

トランスポートからのデジタル出力は全てSRC2496に入れている。
これはDDコンバーターで「リサンプリング」することでジッターを低減するという。
mac miniからの5mの光ケーブルをDACに繋ぐ場合、直接だととてもVRDS-25xsの音質に届かなかったが、SRC2496を間にかますだけで超えてしまった。それからというもの僕はリサンプリング信者になってしまった。

ほかにもいくつか変更がある。
以前は繋いであったTU-875を外している。これはスイッチが壊れてしまったから。
アナログプレーヤーを使う際に必要なのでいずれは修理したい。

DEQ2496によるイコライジング・室内音響調整は、したいけど出来ないまま。
繋いではいるけど使ってないので今回は書いていない。
本当はカセットデッキのテープ再生をデジタル変換してPCに記録するのにも使いたいんだけど、出来ていない。

AirMac Expressは繋ぐとこがなくなったしオーディオとして使ってないので外した。
別室のプリンタに繋いだら便利かも、とか考えている。

あと、ここには書いていないが、SRC2496の外部クロックに某製品を繋いでいた。
SRC2496の内部クロックは良くないという話を読んだことがあったから、ものは試しと。
しかし、これがどうも繋いでいるとポップノイズが出る。音声再生中に限らずクロックのスイッチを入れているとプチ、プチ、というので、クロックの不具合のような気がする。あれこれ思いつく対策をとってみたけど、結局、外部クロックを使わなかったら不具合ないようだということで、外してしまった。
使う方がいい音がするということもないように思ったので、当面は外部クロックなしで使うつもり。
もしかしたら、ヤフオクで落とした中古だったので壊れているのかもしれない。

odeon-lite以下の下流は、SM-SX100、4425mk2、T900A、と10年前から変わっていない。
それだけ気に入ってる構成なわけで、換え難いところがある。

今後の課題。まず、いずれはNASを変更したい。
オーディオルームで使うには静粛性に難がある。しばしばファン?の音が気になる。

次にDAC。
odeon-liteはいい音だと思うけど、DSDに対応してないし、ノイズに対してデリケートすぎるとこがあるので配線とか気を使う。
最新のDACの音に興味があるということもあるし、ibookのmpdからのUSB出力を受けるのが、そのUSBから電源供給を受けるRAL-2496UT1というのはどうなんだろうか、という気持ちもあったりする。外部電源が製品化されてるけど4万円もする。それなら新しいDACを買いたい。
ただ、odeon-liteが壊れない限り当分先のことになるとは思う。

Mar 15, 2013

Vine Mpd ppcについて覚書(9)twmについて(2014.03.14.追記)

2014.03.13.追記。
PBG4にVine Linuxを再インストールしたら、例によって覚書が役に立たず環境再現に手間取ったので追記・修正しておくことにした。

実は今回はmpdはまったく関係なくて「twm」についての覚書。
Powerbook G4 12inchは発熱がひどくてOSXでは使えないので、Vine Linuxとmpdクライアントのncmpcppをインストールして使っているわけだけど、それでも発熱する。少しでも負荷を減らしたい。
cuiでncmpcppを使えれば負荷が減ると思うんだけど、日本語表示はフォントが悪いのか汚くて読みにくい。
そこで、GNOMEよりも軽いGUI環境を使おうということでtwmを選択した。
若干だけど、発熱は減っている気がする。

Twm's Wiki

twmはvine linuxに標準でインストールされているとネット上では書かれているが、うちの5.2ppcには何故かインストールされていなかったので、インストールから開始。
Synapticパッケージマネージャを使って簡単に出来る。

twm専用にするつもりで新規アカウントを作成。
ホームディレクトリにncmpcppの設定ファイルなど諸々、今まで使っていて要りそうなものをコピーし、chmodでアクセス権限を再設定する。そこで、twnの設定ファイルとして「.twmrc」を置くんだけど、どこにあるのか分からない。
ネット上にどこそこにあるという情報はあるけど、うちの環境と違っているらしく見つからない。
findで探すと簡単に見つかるのでコピーする。

.twmrcは/etc/X11/twm/system.twmrcをホームにコピーしてあとで必要に応じて編集する。

さて、Vine Linux 5.2ppcは起動に際してGNOMEが起動する設定になっている。
twm用アカウントでログインすると、.twmrcが設定してあってもGNOMEで起動する。
これはどうしたら変えられるのか分からない。セッションからtwmを選ぶという話があるが、選択に出てこない。
そこでrootで再ログインし、telinit 3、再度twm用アカウントでログインして、xstartstartxを打つとtwmが起動する。こんなのでは面倒なので、/etc/inittabを書き換えて最初からrunlevel3で起動するようにしておく。

ここまで書いた通りにやってもうまくいかない。
.xinitrcを設定する必要がある。
以下のリンク先によると、ランレベル3でのログインだと.xinitrcを読みランレベル5だと.Xsessionを読み込むらしい。
VineLinux/システム設定/アプリケーションの自動起動 - Linux wiki

.xinitrcは/etc/X11/xinit/xinitrcをホームにコピーして編集する。
既存の内容は全てコメントアウトして、最後の数行の記述を参考にして以下を記載。

/usr/bin/xclock -geometry 100x100-5+5 &
xterm -geometry 80x40-50+150 &
/usr/bin/twm

twmが起動するのと同時にxclockとxtermが起動する設定。
xtermの設定は80x50から80x40に変更している。これで使える体裁になる。
.Xclientsは/etc/X11/xinit/Xclientsにあるけど、ホームにコピーして何か書き込んでも関係ないようだ。

2014.03.14.追記。
xtermの設定で以下を~/.Xresourcesに書き込み保存。

XTerm*utf8              : 1
XTerm*locale            : true
XTerm*selectToClipboard : true
XTerm*faceName          : 'Monospace'
XTerm*faceSize          : 9
XTerm*cjkWidth          : true
XTerm*background        : white
XTerm*foreground        : seagreen
XTerm*saveLines         : 2000

以下のコマンドで次のxterm起動から設定が反映される。
$ xrdb .Xresouces

ところが、再ログインしたらもとに戻ってしまうので、再度コマンドを打たないといけない。
面倒なので、.xinitrcにコマンド自体を書き込んでみたが上手くいかない。twm起動と同時に開くxtermウィンドウには反映されないのだ。twm起動した後に、twmからxtermを開くと反映される。.Xdefaultsに書くというのもやってみたが反応なし。
どこかで設定できるのかもしれないが分からない。
結局、.xinitrcのxtermの項目をコメントアウトして、起動時にはxtermを開かないことにした。
何か分かったらまた追記すると思う。

現在の.xinitrcは以下のような感じ。

xrdb .Xresouces
/usr/bin/xclock -geometry 100x100-5+5 &
# xterm -geometry 80x40-50+150 &
/usr/bin/twm

twmの起動画面(ルートウィンドウという)は、何にも表示されない。真っ暗だ。
マウス左クリックでメニューが表示される。
メニューからxtermを選択。
これでシェルが使える。

twmの設定だけど、色を変えるぐらいのことしか現在はしていない。

.twmrcでウィンドウの色設定が出来る。
使える色は、/usr/local/X11R6.4/lib/X11/rgb.txtに書いてあるので、好きな色を.twmrcに書き込んだらいい。
こういうところが参考になる。
X Window System 色見本

ルートウィンドウは真っ暗。ここは.twmrcでは設定できない。
xsetrootというコマンドで設定する。
xsetroot -solid "colorname"
モニターと大きさが合っていれば画像を貼ることも出来るらしい。
display -window root "file name"

ここは訂正。
.twmrcに以下のようにコマンドを記載することでルートウィンドウに画像などの設定ができる。
display -window root ファイル名を含むフルパス
うちの環境ではモニターと画像の大きさが合っていなくてもタイル張りしてくれるようだ。
これはどこで設定されているのかはっきりしない。

参考リンクを追記。

xtermの設定について
xtermの設定をするよ - ちなみに
「xterm」の設定方法 - OpenBSD日記
xtermを使ってみる いつも『あとちょっと…』/ウェブリブログ
xtermを動かす | ちりぢりな記憶の寄せ集め

Xの設定について
xinitrc (日本語) - ArchWiki
.xinitrcの設定
X Window System の環境設定 Turbolinux 10 Server: コマンドガイド
Miya×2@wiki - Xwindow設定

さらに追記。
FreeBSD QandA 1032 Q. ~/.Xresourcesと~/.Xdefaultsって、どう違うんですか?
VineLinux/システム設定/アプリケーションの自動起動 - Linux wiki
[vine-users:056450] ssh-add (Re: .xinitrc ファイルは、 どこにあるのか ?)
GNOME以外の選択肢

さらに追記。だいぶ設定は落ち着いてきた。
twmの起動画面が真っ暗なのは落ち着かないし起動してるのが目に見えないのも不便なので、xclockを起動して右下隅に常駐させておくように設定している。xeyesも起動させていたけど、目障りになってきたので止めた。
あとはフォントの設定をしている。

使用目的がncmpcppと多少のネット利用程度に限定された状況なら不満がない感じ。
sshでibook G4に繋がるようにしたいんだけど、これは追々と思っている。

Posted at 10:00 in audio_diary | WriteBacks (0) | Edit Tagged as:

Mar 02, 2013

Vine Mpd ppcについて覚書(8)サンプリング周波数とビットレートの変更+追記:mpd.confの設定

以前、覚書(5)で、以下のようなことを書いた。

usb出力が44.1kHzから48kHzになってしまった。
ファイルは44.1kHzなのでアップサンプリングしてる。
どうもこれはalsaのデフォルト設定らしく、どこかで変更も出来るらしいということが分かった。

いつまでも48kHzのままというのもどうなのかなということで、44.1kHzに戻すことにした。
以下のサイトを参考にした。

>Tuning - Music Player Daemon Community Wiki : ALSA dmix

Since version 1.0.9-rc2, ALSA enables dmix (allows multiple applications to play audio on a single sound card) by default. dmix is a little overhead, if you want direct output to the device, use something like the following syntax:

audio_output {
	type "alsa"
	name "my ALSA device"
	device "hw:0,0"
}

Another reason to bypass dmix is that dmix forces 48khz (see here). So if you playback 44.1khz this will require resampling even if your soundcards supports 44.1khz samplerate, this causes extra cpu usage.

前半を約してみる。
「version 1.0.9-rc2以降、ALSAはデフォルトでdmixを有効にしている(dmixによって複数のアプリを1つのサウンドカードで対応させて音を出すことが出来るようになる)。dmixというのは、デバイスにダイレクトに出力したい向きには、ちょっとやりすぎの感があるので、以下のような記述を使うといい。」

ここで書かれている記述には見覚えがある。mpd.confの、alsaの設定である。
というわけで、書かれているように直してみた。
mpdを終了し、mpd.confを編集する。

##	device		"hw:0,0"	# optional

文頭の##を削除して保存。
mpdを再起動する。

usb出力が44.1kHzになった。
なんと簡単なことか。

ここで「top」コマンドを打つと、mpdのCPU使用率が2、3%になっている。
48kHzだったときの1/10になってしまった。
システムへの負担は相当少ないみたい。
そもそもVoyage MPD Starter Kitとかみると、かなりのロースペックで動かしている。

後半も約してみる。
「dmixをバイパスするもう一つの理由は、dmixが強制的に48kHzにしてしまうことだ。例えば、サウンドカードが44.1kHzをサポートしていて、44.1kHz戻すためにリサンプリングする必要があるといった場合、余分なCPU負荷の原因になる。」
dmix自体のせいで無駄にCPU負荷が10倍になるのなら、バイパスするほうが順当だろう。

ちなみに、mpd.confのalsaの設定には、サンプリングレートを決める項目もある。

##	format		"44100:16:2"	# optional

コメントアウトを削除して96000:24:2にしたら、usb出力が不安定になった。
ブチブチ出力が途切れてしまう。
アップサンプリングして出力するには他の方法じゃないと駄目なようだ。
ちなみにこのときもCPU負荷は数%しかなかった。

音質がどうなったかというと、例によってちゃんとした比較は出来ていないんだけど、48kHzのときのほうがゆったりして暖かい音が出ていた印象がある。44.1kHzにしてからシャープな音になった。固いといえば固いのだけど、こちらのほうがリアルなような気もする。
そのうち余裕が出来たらじっくり聴き比べてみよう。

4月6日追記。
今更だけどmpd.confの記載内容を記録しておく。
うちでは「~/.mpd/mpd.conf」で設定している。
これは「INSTALL」ファイルに記載されてるデフォルトだ。

# Files and directories ####

music_directory		"~/Music"
playlist_directory		"~/.mpd/playlists"
db_file			"~/.mpd/database"
log_file			"~/.mpd/log"
pid_file			"~/.mpd/pid"
state_file			"~/.mpd/state"
sticker_file			"~/.mpd/sticker.sql"
#

rootでMPDを動かしてるので、~はrootディレクトリである。

# General music daemon options ####
#user				"nobody"
#group				"nogroup"
# For network
#bind_to_address		"any"

#bind_to_address		"~/.mpd/socket"

port				"6600"

#log_level			"default"
#gapless_mp3_playback			"yes"
#restore_paused "no"
#save_absolute_paths_in_playlists	"no"
#metadata_to_use	"artist,album,title,track,name,genre,date,composer,performer,disc"

auto_update	"yes"
auto_update_depth "6"
#

# Symbolic link behavior ####

follow_outside_symlinks	"yes"
follow_inside_symlinks		"yes"
#

portは6600で固定。
auto_updateは効いてるのかどうか分からない。ライブラリがオートアップデートしたの見たことないし。
depthは一応、深めに設定している。
MusicディレクトリにNASのディレクトリをマウントしてるんだけど、結構深いとこまで辿らないと音楽ファイルとか辿り付かない場合があるので。設定しなかったらどうなるかは試していない。

# Zeroconf / Avahi Service Discovery ####

# Permissions ####

# Input ####

ここは触っていない。

# Audio Output ####

# An example of an ALSA output:
#
audio_output {
	type		"alsa"
	name		"My ALSA Device"
	device		"hw:0,0"	# optional
##	format		"44100:16:2"	# optional
##	mixer_type      "hardware"	# optional
##	mixer_device	"default"	# optional
##	mixer_control	"PCM"		# optional
##	mixer_index	"0"		# optional
}

audio_output_format		"88200:24:2"
#

ここの項目で有効にしてるのはalsaの項目と、ずっと下のほうの「audio_output_format」という項目。
以前は「pulseaudio」の項目も有効にしていたんだけど、不具合があって現在はコメントアウトしている。

ここから4月1日に追記していた内容。

サンプリング周波数とビットレートの変更はalsaの設定以外でもできる。
mpd.confの、alsaのずっと下のほうに、以下のような記載がある。

# This setting will change all decoded audio to be converted to the specified
# format before being passed to the audio outputs. By default, this setting is
# disabled.
#
#audio_output_format		"44100:16:2"

ここのセッティングでは、デコードされた全てのオーディオ信号を出力される前に指定されたフォーマットに変換する、とある。
ここを以下のように書き変え、コメントアウト削除した。

audio_output_format		"96000:24:2"

これでusb出力を24bit/96kHzに変換できた。
alsaの設定でしたときのような不具合はないようだ。
CPU負荷は4%ぐらい。フォーマット変換を設定する前の倍ぐらいになっている。

音質の変化は、まだちゃんとした比較はしていない。
なかなか比較する余裕がないのが現状だ。

ここからまた4月6日追記分。

# Normalization automatic volume adjustments ####

replaygain			"album"
#replaygain_preamp		"0"
#volume_normalization		"no"
#

ここはよく分からない。
「See <http://www.replaygain.org>」とか書いてあるけど、充分読めていない。
リプレイと関係あるらしく、ここの設定を変えるとncmpcppでYを打ったときのmpdの反応が違ってくるようだ。しかしどうなってるのか充分に把握できていない。

# MPD Internal Buffering ####

audio_buffer_size		"384"
buffer_before_play		"5%"
#

ここの設定は音質にも影響があるらしい。
audio_buffer_sizeは多分「kb」だと思う。256だと音が出ない。
buffer_before_playだけど、何の割合か分からない。メモリのなのかファイルのなのか。現在少なめに設定している。

# Resource Limitations ####
# Client TCP keep alive ####

ここは触っていない。

# Character Encoding ####

filesystem_charset		"UTF-8"
#id3v1_encoding			"ISO-8859-1"
#

一応、UTF-8で、コメントアウト削除。

# SIDPlay decoder ####

ここは触っていない。

ざっとこんな感じ。
今後、変わるところもあるかもしれないけど

とりあえず、今回はここまで。

Posted at 10:00 in audio_diary | WriteBacks (0) | Edit Tagged as: , , , ,

Feb 25, 2013

Vine Mpd ppcについて覚書(7)というよりEACの設定について

前回はEACで作ったcue sheetがおかしいという話だった。
CDの読み取りの問題なのだろうと目星をつけ、EACの設定を確認してみた。

メニューの中に「Drive Options...」というのがある。
選択すると「これは重要なとこだよ」みたいな警告表示が出る。
これを閉じたら設定項目が表示される。
表示されるタブの中に「Gap Detection」というのがある。
ここの設定が、
Gap/Index retrieval method : Detection method B
Delection accuracy : Inaccurate

になってるのに気付いた。
いつこんなにしたのか記憶がないが、さすがにInaccurateはまずそうだ。

たまたま手元にあったCDを読み込んで、cue sheetだけ作ってテストしてみた。

PERFORMER "Wes Montgomery"
TITLE "Full House"
FILE "Range.wav" WAVE
  TRACK 01 AUDIO
    TITLE "Full House"
    PERFORMER "Wes Montgomery"
    INDEX 01 00:00:00
  TRACK 02 AUDIO
    TITLE "I've Grown Accustomed to Her Face"
    PERFORMER "Wes Montgomery"
    INDEX 00 04:38:04
    INDEX 01 09:11:62
(以下略)

INDEX 00 04:38:04、INDEX 01 09:11:62、、、やはり、酷い数字が出ている。
EACの「Gap Detection」の設定を以下のように変更。
Gap/Index retrieval method : Detection method A
Delection accuracy : Secure

同じCDを読み込んで、もう一度cue sheetを作ってみた。

PERFORMER "Wes Montgomery"
TITLE "Full House"
FILE "Range.wav" WAVE
  TRACK 01 AUDIO
    TITLE "Full House"
    PERFORMER "Wes Montgomery"
    INDEX 01 00:00:00
  TRACK 02 AUDIO
    TITLE "I've Grown Accustomed to Her Face"
    PERFORMER "Wes Montgomery"
    INDEX 00 09:11:38
    INDEX 01 09:11:62
(以下略)

問題のない数値が表示された。CDを正確に読み取っているようだ。

EACをちゃんと使えていなかったのが、INDEX 00の問題の原因だった。
多分、使用するドライブによっても、こうした結果は違ってくると思う。
今回、設定を見直したことで、今までのようなトラブルがなくなることを期待したい。

気になるのは、リッピングの設定が違ったら出来たファイルも違うのかということ。
データがきちんと取れていれば違わないはずだけど、どうもそこが心もとない。
実際にリップして、比べてみることにした。

前述した2つの設定で、1つのCDをリップしてみる。
それにしても、前者で8倍速出てたのが後者だと5、6倍速にしかならない。
それだけ正確を期してるってことなんだろうけど。
出来上がったファイルに違いがあるかどうか、Hash値というのを比べてみた。

HashMyFileというツールを使った。
MD5、SHA1、CRC32、SHA256、SHA-512、SHA-384、全て同一だった。
cue sheetは間違えていても、リッピング自体は正確に出来ていると思っていいかも。
たくさんのFLACをリップしなおさなくていいらしいので、ほっとした。サンプル1つで決めていいのかというのはあるが、まあ、今回はよしとしとく。

とりあえず、今回はここまで。

Posted at 10:00 in audio_diary | WriteBacks (0) | Edit Tagged as: ,

Feb 23, 2013

Vine Mpd ppcについて覚書(6)不良cue sheetによる再生の不具合

前回は、mpdが順調に動作し始めたとこまで。
この覚書もだいぶリアルタイムでの状況進行に近づいてきている。
これから書くのは、2月中旬以降の話だ。

うちでは以前からCD1枚を1つのFLACファイルにしてNASに保存している。
今は持っているCDの一部だが徐々に増やすつもり。
リッピングに使うのはもっぱらEACで、cue sheetもリッピングと同時に作っていた。EACにはそういう機能があるのだ。
これをLAN経由で、Mac miniの「Audirvana Plus」を使って再生していた。

mpdでもcue sheetが使えるようになり、これは便利だと思っていたんだけど不具合が出てきた。
楽曲再生に際してトラックの開始がおかしくなる。
おかしくなるというのは、楽曲の途中から再生を開始するのだ。
それも前の曲の途中から再生される。
cue sheetを使って再生している時に限られるので、この関係で不具合があるんだろうと考えた。

分かりにくいので追記。
前の曲の途中から再生」というのは、前の曲が再生中に途切れて、続くトラックの頭が再生されるという意味。前の曲が途中から繰り返し再生されるという意味ではない。

Cue sheet - Hydrogenaudio Knowledgebase

cue sheetには「INDEX 01」という項目を必ず記載することになっていて、というのは、楽曲開始時間を指定する項目がこれにあたるから。
INDEX 00」というのもあって、これを記載すると楽曲開始前の「ギャップ」を設定できる。
CD再生してるとき、ときにトラックが始まる前に数秒間の無音があって、プレーヤーの再生時間表示に「マイナス」が出ることがある。こういうのをWAVやFLACのファイルからCDを焼くときなどに反映させるのに、cue sheet上に「INDEX 00」の時間を記載し、指定しておくということらしい。

再生に問題があったcue sheetをエディタで確認してみたら、「INDEX 00」と「INDEX 01」に指定された時間が、酷いときには数分以上も違っていることが分かった。

つまり、トラック再生開始時間の前にあるのは数秒間の無音どころではなく、トラック開始の数分前の部分からトラック開始時間までの楽音。つまり、FLACファイル上にある前のトラックの途中からトラック開始時間までの部分、ということになっていた。
EACでcue sheetを作ったときにこうなったということになる。
なぜこんなことになったのかは、はっきりしない。
今まで、foober2000やAudirvanaで再生している分には全く気付かなかったので、これらのソフトは「index 01」しか読まないのかもしれない。

とりあえず「INDEX 00」は削除してもcue sheetの体裁としては問題がないということなので削除してみたら、mpdでの再生の問題もなくなった。
つまり、mpdはINDEX00を読んで再生したから再生の不具合が生じたということだ。

こうした不具合がうちだけのものなのかどうか、はっきりしない。
ネット上で検索してみても、検索が下手なのか?、ひっかかってこないのだ。

原因は分かったけど、ではどうするかが問題になる。
今までにCDをリップして作ったcue sheetは数百万枚数百枚。1枚ずつチェックしていては、とても終わらない。
それどころか、これからもリッピングは続ける予定なのだ。

EAC以外のリッピングソフトを使うのか。
正直、この半年の間に使い慣れてしまって換える気にならない。なにしろスピードが速いというのが僕のニーズにあっている。
EACでcue sheet作成の設定が出来ないかと考えたけど、ないようだ。

では、mpdのほうで「INDEX 00」を読まない設定に出来ないか。
調べたけど、よく分からない、、。

では、cue sheetの書き換えをコンピューターにしてもらおう。
人間がやるよりずっと早いはず。
Linuxは、数百枚のファイルの内容を一瞬で書き換えるコマンドを打つことが出来るはず。

しかし結局、僕が使った手段はApple Storeで「Jedit X standard」を買うことだった。
このエディタには複数ファイルの内容を検索して書き換える機能が付いている。
Mac mini上のJeditからNAS上のフォルダを選択し、ファイルの種類に「cue」を指定して、「INDEX 00 .+/n」を検索して「/n」に書き換えるように、としてクリックすると、INDEX 00とこれに続いて記載された時間を表す数列が、削除される。
ちなみに「.+」は1文字以上の文字列、「/n」は改行という意味。

これで、自宅NASにあったcue sheetの「INDEX 00」とそこに指定された時間は、数分間で削除された。非常に助かった。
途中で文字コードの指定でひっかかるファイルがいくつかあった。UTF-8でいいか?ということなので、いいよとenter。確認していないが多分問題ないだろう。
無料のお試し版「Jedit X Rev.2」で同様の操作が出来るかどうかは知らない。

ちなみに、EACでリッピングしてcue sheetを作った時点で同様の操作をするのには「Mery.exe」というエディタを使った。こっちはWindows用のフリーウェア。
やはり複数のファイルの中を検索して、文字列を一括で置換できる。
操作する内容も大体同じだ。
今後はこっちで処理してからNASに持っていくと思うので、Jeditは今後の出番は少ないかもしれないが、まあ、いい仕事してくれたので高いという気がしない。

追記。
何で自宅NASのファイルを修正するのにMeryを使わないのかということだけど、自宅のWindowsXPにMeryをインストールして使ってみたら、なぜか前述の捜査が出来なかった。マシンのスペックの問題かもしれない。自宅のマシンはペンティアム3だ。
どこでリップしてるかというと、実は職場。夜勤で仕事がない時間帯に、自宅から持ち込んだもっと使えるノートでリップしてる。普段見ないTVとかぼーっと見てるよりいいかと思って始めた。それ以外の時間でリップできる時間はない。
だからリッピングが高速にできるというニーズは切実なのだ。
仕事さぼってるわけじゃないけど、こんなことあんまり進んで公言したくはない。しかし行きがかり上仕方ないので書いた。

しかし、INDEX 00だけでは終わらなくて、実は「INDEX 02、INDEX 03、、、」というような記述があるcue sheetがあることが分かった。ちなみに、このようなシートはAudirvanaでも受け付けない。foobar2000で使えるかどうかは、不明だ。
これは、もしかしたらと思って「INDEX 02」をJeditで複数ファイル検索して、ひっかかった。
そんなに多数ではなかったので、検索結果からファイル自体を開いて削除した。
この際に、03、04、、、とかあるのに気付いた。
たぶん、02を飛び越えて03、、、とかいうcue sheetはないと思うのだけど、今の時点では検索していない。

ちなみにそういうcue sheetの一例。
こんな感じのファイル
INDEX 00がないのは、Jeditで削除された後だからだ。

とりあえず、今回はここまで。

Posted at 10:00 in audio_diary | WriteBacks (0) | Edit Tagged as: , ,

Feb 21, 2013

Vine Mpd ppcについて覚書(5)alsa関連で要らないものを入れすぎていた

mpdでcueシートが使えるようになった。
この時点のシステムの状況。

追記。mpdのバージョン書き間違いを訂正した。0.17.2を0.17.3に。

iBook G4 vine linux 5.2ppc runlevel 5mpd v0.17.3
Powerbook G4vine linux 5.2ppc runlevel 5ncmpcpp v0.5.10
RAL-2496UT1DD Converter(USB >> TOS)44.1kHzで動作・SRC2496に出力

mpdも0.17.3にヴァージョンアップしている。
多分、1月中旬にしてると思う。

「runlevel 5」にしてるのは、3では使えなかったから。
runlevel 3にしたらusbデジタル出力しなくなる。
どこを直せば出力できるようになるのか分からなかったので、runlevel 5で当面は使うことにした。
ネット上の情報によると、runlevel 5では音質上のメリットは得られないということらしく、目標はrunlevel 3での運用だったので残念だけど、仕方ない。使いながら設定の仕方を模索することにした。

実際のところ、それで音質はどうだったかというと、小音量で時々鳴らす程度だったのではっきりしたことは言えないというのが正直なところ。
少なくともBGMとして流す分には申し分ない。
求めるところはそんなレベルじゃないので、出来れば音量を上げてじっくり聴きこみたかったけど、あれこれするうちに機会がなくなった。
なぜ機会がなくなったかというと、他の問題に対処した結果、runlevel 3で動くようになってしまったから。
現在はそれで動かしていて、なかなかrunlevel 5に戻す機会がない。
比較できれば面白いかもしれない。

他の問題というのは、mpd、ncmpcppの挙動が安定しないということだった。
ncmpcppを操作するとフリーズしてしまう。
次曲に飛ぶ、早送り、cue sheetから選曲する、といった操作で動かなくなってしまう。

mpdの方もクライアントからの信号を受け付けなくなって端末で「netstat -t」とコマンドを打つと止まってる6600ポートがずらずらと表示される。音楽は流れ続けて、止めようがないのだ。
こうなると「kill」も受け付けないので、iBook自体をrebootするしかない。
しかし酷いときはrebootのコマンドを受け付けないのでスイッチを押して終了したり。
こんなでは落ち着いて使えない。

システムが不安定な理由は、「alsa」が安定しないからじゃないかと目星をつけた。
根拠はないのだけど、実は最初にalsa関係はいろいろインストールしたという経緯がある。こうして書いていて思い出したのだけど、mpdをインストールしたあとに動かせなかった期間がずいぶんあった。実はmpdの設定自体を間違っていたんだけど、その間に、何が必要か分からないので兎に角目に付いたものから入れていた。
alsa関連は色々あるので、余分なものもインストールしてしまっていたのだ。

とりあえず、必要最低限と思われる「alsa-lib」と「alsa-lib-devel」以外でいろいろ入ってたのをアンインストールした。もしかしたらalsa-lib-develも要らないのかもしれないけど、置いとく。alsa-toolsとalsa-utilsは、多分動作の邪魔はしてないと想定して置いとく。

そうしたら、RAL-2496UT1をvine linuxが認識しなくなった。
要るものがあったらしい。
「kernel-module-alsa-driver」を再インストールしたら、認識した。

参考リンク。
Advanced Linux Sound Architecture (日本語) - ArchWiki
AlsaProject

結局、alsa-firmware 、alsa-plugins-pulseaudio 、alsa-plugins-usbstream 、bluez-alsa をアンインストールしたら、安定して動作するようになった。
ncmpcppが止まることもない。
ただ、usb出力が44.1kHzから48kHzになってしまった。
ファイルは44.1kHzなのでアップサンプリングしてる。
どうもこれはalsaのデフォルト設定らしく、どこかで変更も出来るらしいということが分かった。

システムが不安定だったときは、iBookの端末でtopを打つとmpdとpulseが表示されてて、それが当たり前なのかと思っていたのだけど、前述の操作をしてシステムが安定した後には、pulseは表示されなくなってしまった。無駄に動いていたらしい。
mpdだけで音声出力しているようで、CPU使用率の半分をmpdが食っている。
これは多分、アップサンプリングしてるのが原因じゃないか?と思っているんだけど。
96kHz/24bitにして出力出来ればいいとか考えたこともあったけど、多分無理だ。

この時点で、ふと思いついてrunlevelを3にしたら問題なく動作した。
RAL-2496UT1にusbデジタル出力している。
何が邪魔してたのかは分からないけど、とりあえず目標に到達したということだ。

iBook G4 vine linux 5.2ppc runlevel 3mpd v0.17.3
Powerbook G4vine linux 5.2ppc runlevel 5ncmpcpp v0.5.10
RAL-2496UT1DD Converter(USB >> TOS)48kHzで動作・SRC2496に出力

とりあえず、今回はここまで。

Posted at 10:03 in audio_diary | WriteBacks (0) | Edit Tagged as: , ,

Vine Mpd ppcについて覚書(4)ncmpcppのインストール

いろいろ忘れてしまうという話のあと間が空いて、やっぱり忘れてる気がするので、やや焦って書いている。
後々何かあったときに役立てばと思うのに、書き忘れてたら役に立たないじゃないか。

今回は、ncmpcppのインストールに際しての覚書き。
当初インストール出来たのはv0.4.1で、最新のv0.5.10は出来なかった。
それがどうやったら出来たのかという話だ。

以前のエントリーで「configure」でうまくいかないことがあれば、実は「configure.log」に記載されている、と書いた。
configure: error: libmpdclient >= 2.1 is required!という表示が出て、makeできない理由について、最初は対処が分からなくてバージョンを下げることでncmpcppをインストールした。本当は「configure.log」に残された失敗の記録を読んで対策を打てばよかったのだ。
で、その対策の内容について徐々に忘れてきてるということだ。
全く、年波には勝てない。
configure.logには以下のようなことが書いてあった。

configure:15321: checking for pkg-config
configure:15339: found /usr/bin/pkg-config
configure:15351: result: /usr/bin/pkg-config
configure:15376: checking pkg-config is at least version 0.9.0
configure:15379: result: yes
configure:15389: checking for libmpdclient
configure:15396: $PKG_CONFIG --exists --print-errors "libmpdclient >= 2.1"
Package libmpdclient was not found in the pkg-config search path.
Perhaps you should add the directory containing `libmpdclient.pc'
to the PKG_CONFIG_PATH environment variable

No package 'libmpdclient' found

libmpdclientが見つからないと。

Perhaps you should add the directory containing `libmpdclient.pc' to the PKG_CONFIG_PATH environment variable
これは「libmpdclient.pc」があるディレクトリのパスを環境変数PKG_CONFIG_PATHに設定したらいいかもよ、って感じの意味らしい。

PKG_CONFIG_PATHの設定はシェルによって使うコマンドが違うということらしく、ちょっと戸惑った。
vine linux ppc の場合は「bash」なので「export」を使う。

export PKG_CONFIG_PATH=/(libmpdclient.pcがあるディレクトリのパス)

これでパスが通ったので、その同じ端末からconfigureする。違う端末を開いてconfigureしようとしても受け付けてくれないらしい。
というわけで、めでたくconfigure成功。
make、make installと順調に進んで、ncmpcpp v0.5.10がインストールできた。

ncmpcppの最新版がインストールできたということは、cueシートに対応できるはずってことだ。
cueシートを使えるようにするには、mpdサーバーのiBookにcueシートを扱えるようにするライブラリをインストールしなくちゃならない。
たしか、↓から落としたと思うけどはっきりしない。
http://mirror.transact.net.au/sourceforge/c/project/cy/cygwin-ports/release-2/libcue/

4月1日追記。
mpd-0.17.3は、独自でcue sheetに対応したらしい。
だから多分、libcueがなくても動作する。
以下、説明にリンク。

https://wiki.archlinux.org/index.php/Music_Player_Daemon/Tips_and_Tricks#Cue_Files

libcueをインストールしてmpdを起動する。
ncmpcppを起動。
uキーを押すとライブラリがアップデートされる。
3キーを押すとブラウザ表示になる。
カーソルキーとenterキーを使って、ディレクトリの階層を辿っていく。
端末の画面に表示される音楽ファイル一覧の下方に、cueシートのファイル一覧が表示された。
カーソルキーでファイルを選択しspaceキーを押してプレイリストに送る。
2キーを押すとプレイリスト表示となる。cueシートに載っている曲がリスト表示されてるので、カーソルキーで曲選択。enterを押すと音楽が再生される。

なかなか良く出来たインターフェイスだと思う。

Ncmpcpp - ArchWiki

とりあえず、今回はここまで。

Posted at 10:00 in audio_diary | WriteBacks (0) | Edit Tagged as: , ,

Feb 14, 2013

Vine Mpd ppcについて覚書(3)ncmpcppの設定

さて、mpdを動かしてUSB-DACに繋いだイヤホンから音を出すことに成功した。
けど、なんだかその音が変だった。
2重にきこえる。
カエルの歌じゃないけど、輪唱してるみたいな。
リヴァーブっていうんでしょうか?こういうのは。

これは、mpdの設定ファイルを書き換えたら解決した。
「mpd.conf」ファイルの「Audio Output」の設定で、"alsa"と"pulse"を有効にしていた。これが良くなかったようで、"pulse"だけコメントアウトして無効にしたら直った。

しかし、いろんなことになるもんだと思った。

実はこの時点では、ncmpcppとmpdを同じiBook G4で動かしていた。
Powerbook G4のncmpcppからのアクセスをiBookが受け付けなかったのだ。
fire wallも切っていたしpingは通ってる。なぜ外からのアクセスをiBookが受け付けないのか分からなかった。

最初はmpdかiBookの設定に問題があるのかと思っていた。
しかし、いくら探しても分からない。
そのうちに、もしかしたらncmpcppのほうの問題?と思うようになった。だって考えてみたら何の設定もせずに動かしてるほうがおかしい。

よく見たらncmpcppのソースを解凍した際に出来る「doc」というフォルダの中に「config」というファイルがあって、開くと
## this is example configuration file, copy it to ##
## ~/.ncmpcpp/config and set up your preferences ##
と書いてある、、、
こんなのがあったとは。

このファイルには、
#mpd_host = "localhost"
#mpd_port = "6600"
と書かれている。
多分これがデフォルトの設定ということで、configを書き換えて設定しなければ、ncmpcppは"localhost"のmpdにしかアクセスしない。つまりncmpcppとmpdが同じパソコンにインストールされてないと動かない状況になってしまうわけだ。

Powerbookにインストールしたncmpcppのconfigを設定する。
homeに「.ncmpcpp」を作ってconfigをコピー。
#mpd_host = "localhost"のlocalhostをiBookのIPアドレスに書き換え#を削除。
#mpd_port = "6600"のほうも#を削除。
これでようやく、PowerbookからiBookのmpdをコントロールできるようになった。

実は、前述の部分で記憶が曖昧なところがある。
初めて音が出た時点でncmpcppのconfigを設定してたのかどうかが、はっきりしない。
設定してたとしたら、たぶん#mpd_port = "6600"のコメントアウト削除だけで済ませていて、そのせいで外部のクライアントが使えなくなっていたんだと思う。でもたぶん、設定していなくても"localhost"で使う分には音が出てたんじゃないかと思うのだ。
どうやってたか忘れてしまった。

何かあったときはツイッターにメモ書きしていたんだけど、いじってるパソコンはPPCマシンなものだから、当然、ウェブブラウザなんか動かしておく余力はない。ツイッターなんて重いサイトを開きっぱなしに出来ない。それら以外のパソコンから書けばいいということになろうけど、実はこうした作業は家族が寝静まった夜中にしていることが多くて、あんまりゴソゴソも出来ない。メモしない間に次に移行したら、忘れちゃうというわけで、ちょっといろいろ曖昧なとこがある。

とりあえず、今回はここまで。

Posted at 10:03 in audio_diary | WriteBacks (0) | Edit Tagged as: , ,

Vine Mpd ppcについて覚書(2)mpdのインストール

どうも自分で調べないといけないということは気づいたんだけど、どこを調べたらいいのか分からない。

起動の方法が違ってるらしいということだけど、どこに書いてあるんだろうということから探し始めた。
実は、ダウンロードしたソースを解凍したら説明のファイルが入ってる。「INSTALL」というファイルが出来ているので、それをちゃんと読んで書いているとおりにやらないとインストールに失敗する。
これは後から考えると当たり前の話のように見えるけど、ネット上で書いているとこがあんまりなかった。あまりに初歩的過ぎて書いてなかったのかもしれない。
手軽にインストールして使えればいいやという甘い考えの初心者だから嵌ったと思う。ここに気付くまでかなりの時間を要した。

Music Player Daemon (mpd) の場合、この「INSTALL」ファイルに起動の仕方が書いてある。
mpdの設定を記載する「config file」をどう扱えばいいかも書いてある。
書いてあるとおりにしたら、あっけなくmpdは動いた。
端末上で「ps x」とコマンド打てばmpdの文字が表示される。
これでiBook G4がmpdサーバーになった。

これには唖然とし、かなり戸惑った。これがLinuxのやり方なのかと腑に落ちるまで、ちょっと時間が必要だった。
今までの苦労はなんだったんだ?という感じ。

追記。
書いてあること読んでそのとおりやればいい、と言うだけじゃ後で分からないかもしれないので「INSTALL」に書いてあることを写しておこうと思った。
mpd-0.16.8とmpd-0.17.3では書いてあることが若干違う。
ここで写しとくのはmpd-0.17.3のほう。

Optional Output Dependencies
----------------------------
You will need at least one of these to compile MPD.
Most of these are available as packages on major distributions.
Be sure to install both the library package as well as the development package.

ALSA - http://www.alsa-project.org/
The Advanced Linux Sound Architecture. Recommended audio output if you use Linux. You will need libasound.

ここの項目にはALSA以外にもいろいろ書いてあるけど「at least」ということなんで、多分alsaだけ入ってたら問題ないんだろうと思う。実際、vine linux ppcにはAlsaとPulseAudioは入っている。他は確認していない。OSのインストールの仕方によっては違ってくるかもしれないが。

Optional Input Dependencies
---------------------------
You will need at least one of these to compile MPD.

MAD - http://www.underbit.com/products/mad/
For MP3 support. You will need libmad, and optionally libid3tag if you want ID3 tag support.

libmpg123 - http://www.mpg123.de/
Alternative for MP3 support.

FLAC - http://flac.sourceforge.net/
For FLAC support. You will need version 1.1.0 or higher of libflac.

Audio File - http://www.68k.org/~michael/audiofile/
For WAVE, AIFF, and AU support. You will need libaudiofile.

FAAD2 - http://www.audiocoding.com/
For MP4/AAC support. You will need libmp4ff.

とりあえず、うちの現状で入れてあるのは上記のような感じ、だったと思う。
読ませたい音楽ファイルに対応しているライブラリをインストールしてないと再生できないので、ちゃんと入れとかないといけない。しかしものによっては異常にインストールに時間がかかったり重そうだったりするので、お好みでということになるだろう。

次はmpd-0.16.8から引用。
「libcue」の項目はmpd-0.16.8にはあってmpd-0.17.3では削除されている。

Optional Miscellaneous Dependencies
-----------------------------------
libcue - http://libcue.sourceforge.net/
For CUE sheet support.

0.17.3では、mpd独自でcue sheetに対応したらしい。
うちではインストールしたままになってると思うんだけど、多分、なくても動作する。
以下、説明にリンク。

https://wiki.archlinux.org/index.php/Music_Player_Daemon/Tips_and_Tricks#Cue_Files

ざっとこんなものかな。
他は省略。

ただ、mpdが動いてもクライアントが繋がらないと使えない。
Clients - Music Player Daemon Community Wiki
ここにどんなクライアントがあるか網羅されている。

まずは手軽に使えるクライアントということで、firefoxプラグインのMusic Player Minionを使ってみた。
Mac miniのfirefoxからサイトにアクセスしてインストール。
しかし、これが全くmpdサーバーに繋がらない。
繋がらない原因も不明。

他のものを試してみようということで、ncmpcppを選択。
Powerbook G4にインストールしたVine linux上で、CUIで使えるクライアントが欲しかった。
というのはGUIだと直ぐにファンが回りだすから。OSXの時はOSが動いてるだけでファンがガンガン回って重くなるので実質何にも使えなかった。Vineだとそこまでじゃないけど、起動して時間がたってくると怪しくなってくる。でもfirefoxを動かせるだけかなりマシだ。
ちなみに、このPBG4は有線LANの端子が壊れていてケーブルがすぐに抜けるようになっている。修理しようと思ったら法外な値段だったので止めたままだ。つまり、NASの使用を見越したmpdサーバーとしては安心して使えないのだ。でも無線LANでmpd clientを動かすことは問題なく出来ると思う。

ところがncmpcppも問題があった。
インストール出来ない。
他のクライアントならできるかとncmpc、mpcも試したけどことごとく不可。
configure: error: libmpdclient >= 2.1 is required!という表示がでてmake出来ない。
libmpdclientはv2.1以上(v2.7)をインストールしているのだけど。

mpdやncmpcppをインストールするときには、ソースを解凍しconfigure、make、make installという手順を踏む。
configureは事前のチェック。
チェックして問題なければ、makeでソースの体裁をインストール可能なように整える。
root権限でmake installで、makeしたソースをインストールする。
だからconfigureの時点でインストールできないかどうかが分かって、make出来ないという旨の表示が端末に表示されるようになっている。
なぜ出来ないかは、実はconfigure.logというファイルに記載されている。
これを読めば対策を打てる。
しかし、この時点で僕はそのことは知らず、試したのはncmpcppのバージョンを下げてみるということだった。

v0.5xは不可。v0.4.1だとエラーが出なかった。
make、make installと順当にインストール出来た。
ようやくmpdを使って音を出すことが出来た。
やれやれ、だ。

この時点での再生環境を記載しとく。

iBook G4 mpd v0.16.8
Powerbook G4ncmpcpp v0.4.1
RAL-2496UT1USB-DAC イヤホンジャック使用。

RAL-2496UT1を買ったのは2年以上も前のことだ。
結局、使う機会がなく死蔵していたんだけど、今回、役に立った。

とりあえず、今回はここまで。

Posted at 10:01 in audio_diary | WriteBacks (0) | Edit Tagged as: ,
Page 14 / 31 :  « ‹ Prev 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 Next › »