先日、どうしてもスリープ(サスペンド)後の復帰がうまくできなくて、諦めた(と書いた)JACK(Linuxのサウンドシステムの一つ)だが、実はしつこく継続していた。暇なのと、興味があったのと、(理論的には)できないはずはないと確信していたのと、PC(Linux)ごときに降参するのが嫌だったのである。

厭きずに検索していたら、2つほど有効そうな情報が書かれたページが見つかり、そのうち1つがビンゴだった。

僕の問題は、長時間のスリープ後の復帰時に、JACKのサーバとクライアント(例: 制御プログラム、音楽プレーヤー、イコライザ)との接続が切れてしまって回復せず、音が出なくなるということだった。上のページは、それを解決する策を(僕の期待とは違っていたが)実に簡潔に(基本部分はたった2行で)示していた。

ポイントは、スリープ前にJACK制御プログラム(qjackctl)経由でJACKのサーバを停め、復帰時にqjackctl経由で開始することだ。(おそらく、復帰時に停めて再開させるのでも充分だろう)。

試したところ、復帰後もJACKで再生できるようになった。が、それでも完全ではなく、以下のような問題があった。

  • サーバを停めるせいか、JACKのクライアントからサーバへの接続は自動的には再開しないことがほとんどなので、駄目なクライアント(例: イコライザ)を再起動するなどの処理が要る。
    • これに関連して、gmusicbrowser(GMB)がスリープ時にエラーダイアログを出すのが鬱陶しい(それでも再生はできるようだ)。
  • 同様に、JACK関連の設定(例: alsa_outによるJACKからALSAへの転送)も消えてしまうので、再設定が要る。

それで、スリープ時と復帰時に必要な処理を追加して、復帰後にもうまく再生できるようになった。ただし、GMBは余り再起動したくなく、すぐにエラーダイアログを消すこともできないから、ひとまずPulseAudioに音を出す設定にし、JACKに転送するようにした。正式に使う時は対処が要る(ただ、PulseAudio経由での問題は音が出るまでの遅延が大きくなる程度だし、聴いてみて音質の劣化は感じられないので、そのままでも大丈夫そうな気がする)。

対処したところ、以前あったいろいろな問題(例: 復帰後に接続(パッチベイの結線)が回復しない)も解決した。

ただ、個人的には、サーバへの接続なんて自動的に回復すべきだと思っているから、この対処は気に入らない。それで、qjackctlやJACKサーバの設定を調べたが、関係するものはなかった。おそらく、クライアントの設定の問題なのだろうが、すべてのクライアントの設定なりプログラムを直すのは無理だから、仕方ないのだろう。

晴れてJACKが使える(=ソフトでグライコを実現できる)ようになり、今日までの数日間、グライコの代わりの外付けDAC(それもPC内に入れたいと思っていた)は何を買おうか迷ったのだが、結局、買わないことにした。というのは、そもそも、DACを内蔵した本物のグライコ(DEQ2496)がちゃんと動いていて、音にだって満足しているのに、わざわざ別の物に替える必要がないからだ。新しい物を買うのは楽しいが、やっぱり、手段を目的にするのは良くないと思う(それでも、買いたい気分が-90dBくらい残ってそうだw)。

あと、今の低価格DACは中国や台湾のものがほとんどで、確かに性能も外見も悪くない感じではあるのだが、紹介の文章が胡散臭い(→ : 性能を向上させたと書いている割には仕様をどこにも記載しておらず、最も重要な電源(本人もその重要性を力説している)を添付も別売りもしておらず、なぜかブログで、おまけにケバい!)し、(アンプの話ではあるが)危ういトラブルが結構あるし、中の配線がしょぼかったりするのも、(60dBくらい)買う気をそいだ原因だ。今はUSB接続のみの物がほとんどになってしまい、光接続対応のものの選択肢が少ないのは残念だ。

余談: 「昔処分してしまった小さいDAC(Styleaudio CARAT-TOPAZ Signature)があれば、気軽に試せたのに」と今になって思うが、まあ仕方ない。

それで、今は以下のような結論・方針でいる(途中経過を省略しているので、論理が飛躍している)。

  • JACKの(グライコでなく)PEQだけで補正ができるか、その結果がグライコより良いか調べる。: JACKのPEQ(Calfのイコライザ)は各PEQを合成した補正量がグラフで見えるので、見えないグライコのPEQよりも補正結果が変になる可能性が低くなり、少ないPEQで補正できるのなら、その方が音が良くなる可能性があると思ったので。
  • 上がOKなら、グライコからJACKでの補正に切り換える。
  • そして、特性の測定を楽にするため、内蔵のサウンドカードを買う。: JACKとREW(特性測定プログラム)でサウンドデバイスを共用する場合、測定ごとに入力を設定し直す必要があるので、内蔵のオーディオを測定専用にして、その手間を省きたいため。
  • 外部DACは、グライコが壊れたら購入を検討する。

今朝、測定用の内蔵サウンドカードも不要になりそうなことが分かった。オンボードのサウンドデバイス(Realtek)を使っているのだが、それは、入出力が光とアナログの2系統ずつあるので、REWが使う入力デバイス(アナログ)とJACKに割り当てる入力デバイスを変えればいいのだ。基本的に、JACKでは録音しないので、JACKに光を割り当てた。すると、REWでの測定のたびに入力デバイスを設定し直す必要がなくなり、何回でも測定できた。それが分かる直前まで、ちょっと思い付いて、USB接続のオーディオインタフェース(こんなの)を物色していたというのに。トレビアン! (5/18 19:18)

(5/18 22:14 わずかに加筆・修正)

  •   0
  •   0

2件のコメント

  1. エイコ:

    こんにちは。私が「あら音が出なくなったわ」くらいにしか思わないことをその筋に詳しい人はこのように探求するのかと思うと興味の方向性こそ違えど、探究心とは必要なものだなと思いました。そして色んな種類の探究心があってよかったと思うのでした。^_^

    •   1
    •   0
  2. PiuLento:

    ●こんばんは。ははは。そう言われて思ったのですが、僕は子どもの頃から探究心の塊でした。それで、何個もの物(時計とかラジオとか)を壊したものです^^

    失敗するとがっかりしますが、それでも、挑戦とか実験とか試行錯誤はおもしろいので、やめられないです。

    •   0
    •   0

コメントを書く

名前    

メール 

URL