2015年1月29日木曜日

LOOX-U/C40 への Voyage MPD 0.9.5 の導入(5) playlistへの自動ランダム登録とワンキー操作の追加

さらに続き.

BGM用環境としてはとてもよい環境になってきたのだが,playlist に登録したアルバムが終わると,音が止まる.当たり前ではある.もちろん,リピートとかを設定すればいいといえばいいのだが,それもつまらない.

そこで,以前にも紹介した ランダム再生スクリプトを入れてみることにした.
また,キーボードからワンキーでいくつかの操作ができるようにしてみた.
(続き あり)


まず,ランダム再生.
スクリプトを適当な名前で /root/ に保存し (ここでは randomplay.sh),実行属性を付けておく (chmod u+x randamplay.sh).
自動起動は /etc/rc.local に以下を追記

/root/random.sh localhost 5

ライブラリの中の曲がランダムに出てくるので,飛ばしたくなるときもあるだろう.ということで,ワンキー操作に [next] を加えたくなる.[next] があるなら [previous] も必要だろう.

まあ,自分の場合,基本的に consume mode で使っているので,previous といっても,今再生している曲を頭からもう一度,という使い方しかできないのだが,あって困るものでもない.

続いて,キーの割り付けのし直し.
Voyage mpd マシンとして使いそうにないキーに,mpd を操作するコマンドを割り付けてしまい,ワンキーで操作できるようにする.
この写真のようにしてみた.例によって,テプラ使用.

CDプレイヤーとかの操作パネルの感覚だと,やはり [play/pause] は大きく目立つ方がよい.大きいというわけにはいかないので,他から少し離れて目立つやつ,ということで [Windows]キー に割り当てることに.[prev] と [next] は隣接していると押し間違えそうなので,スペースを挟んで [無変換],[変換] に割り当て.状態表示が残った [カタカナひらがな] になる.これは [next] と押し間違えることがないとはいえないが,まあ,そんなに使うわけでなし,[next] と間違えて押してしまっても,実害はないので,まあいいか,と.

(追加) さらに,shift + [カタひら] で,playlist を表示,また,曲情報および playlist の表示の時にはコンソール画面をクリアするようにしてみた.

結局,キーマップテーブルは以下のようになった.

# play/pause on [Windows]
string F125 = "mpc toggle | nkf -e\n"
keycode 125 = F125

# previous on [MuHenkan]
string F94 = "mpc prev | nkf -e\n"
keycode 94 = F94

# next on [Henkan]
string F92 = "mpc next | nkf -e\n"
keycode 92 = F92

# status on [Kata_Hira]
string F93 = "clear ; echo ; mpc | nkf -e\n"
string F95 = "clear ; echo ; mpc playlist | nkf -e\n"
keycode 93 = F93 F95

# volume up on [F6]
string F64 = "mpc volume +5 | nkf -e\n"
keycode 64 = F64

# volume down on [F5]
string F63 = "mpc volume -5 | nkf -e\n"
keycode 63 = F63


状態表示の [カタカナひらがな]キーのところは shift キーの有無で F93 を呼ぶか F95 を呼ぶかが変わる (F95 がもともとどうなのかは調べていない).
また,echo を入れているのは1行空行を入れるため.画面の一番上はちょっと読みにくい感じがするので.

このキーマップを loadkeys コマンドで読み込んで,キー割り当てを変える.そのためには loadkeys コマンドを使えるようにしなくてはならない.

# apt-get install console-common

loadkeys は /etc/rc.local に組み込んで起動時に実行する.

loadkeys /root/mpdkeymap.txt

もちろんキーマップファイルの場所や名前は適当に修正する.

音量調整は mpd.conf で mixer_type "software" を指定しておかないと効かない.mpd.conf ファイルの末尾に,まとめて書いてある追加設定に mixer_type "hardware" の行があるので,これを修正.ちなみに,mpd.conf は Voyage mpd の動いているマシンを web ブラウザでアクセスして修正可能.ssh 端末は不要.

忘れていたようなアルバムから拾われてきたりするので,かなり楽しいw


なお,ncmpc は kon 上でもとくに問題なく動くようだが,多バイト文字は当然化ける (kon が utf-8 に対応してないから).ソースに手を入れて,片っ端から nkf を呼ぶようにするとかする手もあるのかもしれないが,そこまでしてコンソール上で操作する意味があるもと思えない.



0 件のコメント:

コメントを投稿