« ジャイアンは他力本願 | トップページ | 妄想がいっぱい »

2017年12月 9日 (土)

symphonic-mpd & SabreBerry32ユーザーのためのLinux中級講座

前回のエントリーコメント欄において、symphonic-mpd開発者のパパリウスさんが、エントリー日の翌日に私のワガママを叶えてくれるという神対応をしてくださいまして、歓喜しているジャイアンです!
その内容を、これまたLinux初心者にも分かりやすいようにまとめてみようというのが、今エントリーの趣旨です。



と、本題に入る前に...



今年は年頭から「HITACHIの仇をTOAで返す!」シリーズを連発し...


たぶん其の一
そして其の二
やっちまった其の三
箸休めの其の四
そして振り出しの其の五
やっと鳴った其の六
ハム退治の其の七
MDFな其の八
これで最後の其の九




手を加えまくった(ついでにぶっ壊した)パワーアンプだけでなく、手持ちの真空管アンプをプリアンプとして使おうと奮闘し...


振動増幅
オーディオ的緊縛プレイ
アンプに箔をつける(文字通りの意味です)
オーディオ的、大亀の上に子亀を載せる





遂にはHP-A8の改造(ほぼ破壊工作)まで行うという展開でして...


MUSES03 on HP-A8
MUSES01 on HP-A8
ダイナミックレンジ
インピーダンス整合をどいつに任せるか
エエわぁ〜




年の瀬も迫りつつあるこの段階で、そうした破壊工作もどきが全て活きてくる展開になるとはと、チョット感慨深い思いをしています。
イヤァ〜、色々とやらかしておいて良かった!
と素直に喜べる音を、SabreBerry32で楽しめています!






で、誰にこんな需要があるんだ?というSabreBerry32のハードウェアボリューム機能をON/OFFさせるためのプラグインの記述と搭載方法を、symphonic-mpd開発者のパパリウスさんがサクッと投稿してくださいました。



本当に「需要あるの?」と思うのですが、少なくとも私には必要なプラグイン機能です!
(私の変態的なRaspberry Pi運用方法に関連してまして...(@@;))
なので、もしかしたら私のような人が他にもおられるかもしれない
そうしたレアなユーザーに向けて「私はこうやったよ」という感じで、以前の「symphonic-mpdユーザーのためのLinux初心者講座」の内容にならい、まとめてみたいと思うのです!



==========================



前回のエントリーで、symphonic-mpdホームページの「Web UIからボリューム操作をしたい」の説明に従い、SabreBerry32のハードウェアボリュームを有効化しました。
具体的には、こうなりました。





Sb32_volume_01_2




Sb32_volume_02






で、今回いただいた説明では、まず“/home/pi/plugins/sb32vol_toggle.sh”を記述せよとありますので、具体的に以下を実行しました。






pi@smpd:~ $ sudo nano /home/pi/plugins/sb32vol_toggle.sh






すると、空っぽのウィンドウが開きます。





Pluginforsb32_02





この段階では、まだ目的のファイルは作成されていません。
で、何も考えずに、以下の内容をコピーし、このウィンドウ上でペーストしてやります。





#!/bin/bash

target_mpd=/etc/mpd.conf

if [ "`grep '^mixer_type \"none\"' $target_mpd`" = "" ]; then

mpc stop

mpc volume 100

sed -i -e "s/^mixer_type \"hardware\"/mixer_type \"none\"/" $target_mpd

sed -i -e "s/mixer_control \"Digital\"/\#mixer_control \"Digital\"/" $target_mpd

else

sed -i -e "s/^mixer_type \"none\"/mixer_type \"hardware\"/" $target_mpd

sed -i -e "s/\#mixer_control \"Digital\"/mixer_control \"Digital\"/" $target_mpd

fi

systemctl restart mpd

exit $?





(頑張って読んでみると、mixer_typeの値が“hardware”ならば“none”で置き換えて、ついでにmixer_control "Digital"をコメントアウトするか、もしくは、mixer_typeの値が"none"ならば"hardware"で置き換えて、#mixer_control "Digital"のコメントアウトを削除。そして最後にmpdを再起動させて終わり、ってところでしょうか...チョット勉強して、コレをひな形に編集を加えれば、何かしら作れそうな予感)


ここでは既にテキストに色が付いてますが、これはnanoのウィンドウにコピペすれば、たぶんこうなっちゃうよっていう意味でしかありません。
重要なのは、この記述を含む“/home/pi/plugins/sb32vol_toggle.sh”が作成されることにあります。
で、実際、“nano”のウィンドウでは、こうなるはず。






Pluginforsb32_03






ctrlキー + oキーをプレスして、enterキーをプレス

で、このファイルを保存・作成します。

ctrlキー + xキーをプレス

で、nanoを終了します。



で、ココがLinuxのお約束ごとのようなのですが、このファイルの実行権限を規定しておかなければなりません
(誰がこのファイルにアクセスしていいのか規定しておく。そうしないと動かない。コレ訳が分からなくて悩ましい...以前NASの構築でも躓いたところ。詳しい理屈は知りませんが、Linuxではファイルを開くにしても、コマンドを実行するにしても、何をするのでも、殆どの場合でユーザーの権限が問われます。MacやWindows、iOSやAndroidなどのGUIでは、ほとんど意識する必要がない概念ですからねぇ)
そのために、以下のコマンドを実行します。





pi@smpd:~ $ sudo chmod +x /home/pi/plugins/sb32vol_toggle.sh





<がんばって解説>
“chmod”はファイルやディレクトリーへのアクセス権限を規定するためのコマンド。
“+”は、その後ろに記述される権限を付加するというオプション。
その後ろに置かれている“x”は「実行権限」を意味する。
この場合、“+,”の前に何も記述がないので(権限を付与するユーザーやグループが記述される)、全てのユーザーに対して最後に記述されるファイルの「実行権限」を付加することになっている。
</がんばって解説>




何もリプライはありません。
(あったらエラーです)





次は、プラグイン機能を記述している“/home/pi/plugins/.plugin.json”の編集です。
下のコマンドを実行します。





pi@smpd:~ $ sudo nano /home/pi/plugins/.plugin.json





私の場合、今、このファイルはこんな状態になっています。
(当初から比べると多少の改変を加えています)





Pluginforsb32_04






で、今回はボリューム関連のプラグインなので、ココに必要な記述を加えたいと思います。






Pluginforsb32_05






以下の内容を何も考えずにコピーし、上の場所に改行を加えた上で、ペーストする。






  {

    "menu"   :"NoneHard",

    "active" :"yes",

    "icon"   :"volume-up",

    "form"   :"",

    "command":"/home/pi/plugins/sb32vol_toggle.sh",

    "output" :"",

    "success":"success!",

    "error"  :"error!"

  } ,






私はこんな風にしました。





Pluginforsb32_06






赤枠の部分が、この作業で加えた記述です。
作業が終わったら...


ctrlキー + oキーをプレスして、enterキーをプレス

で、この編集内容を保存します。

ctrlキー + xキーをプレス

で、nanoを終了します。




SabreBerry32の場合、もう一つだけ作業があります。
“/etc/mpd.conf”に、呪文を一行加えておく必要があるんです。





pi@smpd:~ $ sudo nano /etc/mpd.conf






Pluginforsb32_07





このファイルの一番下にある“audio_output”の内容に...





mixer_control "Digital"





の一行を加えておく必要があります。
(ハードウェアボリュームを有効化させてない場合、頭に#をつけてコメントアウトしておいても大丈夫)
SabreBerry32のハードウェアボリュームを有効化させるためには必要な一行です。
(私は既に有効化させた状態だったので、既に記述されてる状態)




編集が終わったら...



ctrlキー + oキーをプレスして、enterキーをプレス

で、この編集内容を保存します。

ctrlキー + xキーをプレス

で、nanoを終了します。


以上です。




==========================




ココまでの作業が無事に終わったら、ブラウザのUIを再読み込みさせます。
で、うまくいっていれば、プルダウンメニューの内容はこうなっている。






Pluginforsb32_08




Pluginforsb32_09

(上がPC、下がスマホ)




では実際に機能するか確かめてみましょう!





Pluginforsb32_10






私はSabreBerry32のハードウェアボリュームを有効化させている状態で、この“None⇄Hard”プラグインを実行させました。
ですので実行後は、ハードウェアボリュームは無効化されているはず。
で、実際に...





Pluginforsb32_11






ボリュームスライダーを操作しても、上のような表示が現れて、ボリューム操作が反映されません。
成功です!




とまぁ、本当に「誰得なの?」という内容ですw
(マジ俺得でしかないっしょ)



==========================




私が使っているパワーアンプは変態的過ぎて、まず入力感度が高い高い!
普通ならまず問題にならないレベルのハムノイズも、チャンと増幅してくれちゃいます。
(気にならない程度で、アンプのボリューム位置に関係なくレベルは一定)
今、真空管ヘッドホンアンプのボリュームを12時の位置にしてますが、今はSabreBerry32のハードウェアボリュームを65%にしてます。
Digi+ Proにぶら下げたHP-A8なら47dBぐらいも絞らないといけない感じですねぇ...
(全く家庭で使うアンプじゃないんだよ、コイツは!しかしこのミチっとした重みのある響きは、コイツならではなんですよねぇ...デジアンを二台ももっているのに、それに置き換えられない理由です)




それにしても、手元で音量を調節できるのは大変に便利!
そして何よりも、HP-A8のオペアンプを通さないSabreBerry32の音は、
カ・ク・ベ・ツ!
最初からこうしときゃ良かったんだよ!



にしても、一ヶ月で4Kも電気代を喰らうアンプに加えて、常にヒーターが電気を喰らう真空管ヘッドホンアンプとか、ホンマ、来月の電気代請求が怖いっすわ(@@;)






ブログランキング・にほんブログ村へ にほんブログ村 PC家電ブログ オーディオへ にほんブログ村 PC家電ブログ PCオーディオへ



« ジャイアンは他力本願 | トップページ | 妄想がいっぱい »

「パソコン・インターネット」カテゴリの記事

「趣味」カテゴリの記事

「音楽」カテゴリの記事

コメント

コメントを書く

(ウェブ上には掲載しません)

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/576892/66139928

この記事へのトラックバック一覧です: symphonic-mpd & SabreBerry32ユーザーのためのLinux中級講座:

« ジャイアンは他力本願 | トップページ | 妄想がいっぱい »

フォト

本日のアクセス累計数


Twitter


カテゴリー

  • おすすめサイト
  • アニメ・コミック
  • パソコン・インターネット
  • ファッション・アクセサリ
  • 住まい・インテリア
  • 携帯・デジカメ
  • 旅行・地域
  • 日記・コラム・つぶやき
  • 映画・テレビ
  • 書籍・雑誌
  • 趣味
  • 音楽
2018年10月
  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      
無料ブログはココログ

ブログランキング

アフィリエイト

  • Amazon ウィジェット
  • 楽天アフィリエイト
  • Amazon アソシエイト