インターネットラジオを FM ラジオで聴く

radiko や NHK のインターネット配信とちょうど逆の話。

仕事中に音楽を聴きたい。しかし目の前にある PC にはスピーカーが付いていない。どうしても必要なときのために簡単なヘッドホンを付けてあるのだが音楽を聴くのには向いていない。1時間に数回は席を立つので紐付きになってしまうのは非常にうっとうしい。

FM トランスミッター

FM ラジオで聴くことにした。と言っても普通の放送局では好みの音楽をやっていない。そこで、音楽サーバーを置いて電波を出すことにした。

目の前の PC のほかに、いわゆる自宅サーバーとして電源を入れっぱなしの PC がある。これに FM トランスミッターを付けた。しばらく前に買ったもののすぐに使わなくなっていた オーディオテクニカの AT-FMT6だ。もともと電池式だが、無理矢理ケーブルを付けて USB から電源をとるようにした。

XMMS2

Debian で動いているこの自宅サーバーには、これまでサウンド関係のソフトは入っていないので、まず alsa-base パッケージをインストールする(必要なものが芋づる式にインストールされる)。音楽プレーヤーは、軽そうな XMMS2 にした。xmms2 パッケージをインストールするとこれも必要なものが芋づる式にインストールされる。そのほかに必要となりそうなプラグイン、xmms2-plugin-curl, xmms2-plugin-pls などもインストールした。

XMMS2 はプレーヤー本体と操作パネルを分離できるので、今回のような場合にはもってこいである。サーバー側には上記のものを入れ、目の前にある PC にクライアントの gxmms2 を入れる。X や libgtk はこちらにだけあればよい。

サーバー側で

xmms2 config core.ipcsocket tcp://192.168.1.101:9667
のように、接続しにくるクライアントを指定しておき、いっぽうのクライアント側では環境変数 XMMS_PATHtcp://192.168.1.2:9667 のようにサーバーを指定する。

そしてサーバー側で xmms2-launcher として、デーモンを動かしておき、目の前の PC で gxmms2 を立ち上げる。

プレイリスト

あとの操作は gxmms2 で……と思ったものの、gxmms2 でのプレイリストの作成手順がよく分からないので、これはサーバー側に付いている CUI の nyxmms2 で行うことにした。

まず適当な名前で playlist を作成する(以下の例では gourd)。リストを切り換えて、聴きたいストリームの pls を加える。

nyxmms2 playlist create gourd
nyxmms2 playlist switch gourd
nyxmms2 addpls http://stream-19.streamsolutions.co.uk:9052/listen.pls

複数の接続先を設定したければこれを繰り返して行う。聴くときにはクライアントの gxmms2 でリストの切り換えができる。


サーバーは家のほぼ真ん中の階段下に置いてあるので、仕事場だけでなく台所や寝室のラジオでも聴けるようになった。トランスミッターのアンテナがもう少しよければ、庭仕事のときにも聴けるのだが。

GNOME の「最近開いたドキュメント」

evince などを起動しようとすると、数分ものあいだ固まったようになってしまうことがごくたまにある。そのときは、GNOME の「最近開いたドキュメント」が記録されている ~/.local/share/recently-used.xbel の内容を消去すると直る。

原因は、そのファイルに NFS の向こうにあるファイル名が記録されているからだった。「ごくたまに」というのは、目の前の PC を使っているときに NFS 先のもうひとつの PC が動いていないことはめったにないから。で、いま evince で見たいのは手元のファイルという場合だと、NFS 先の PC の電源が入っていないことはわかっていても、起動がおかしくなる原因がそれとはすぐに思いつかない。起動時に勝手に(?)「最近開いたドキュメント」を読み込もうとして、そこで引っかかっている。

それで、手っ取り早い解決策がそのファイルの中身を消去すること。

数年前にもこれで首を捻ったことがあるのだけれど、ずいぶん長いこと同じ目に遭わなかったのですっかり忘れていて、またもや首を捻ってしまった。そういう訳で、たぶんほかの人の役には立たないけれど、自分のためにここにメモしておく。

Debian の psql で日本語を入力できない

Debian の PostgreSQL のフロントエンド psql で日本語が入力できなくなっていることに気づいた。いろいろ検索してみてわかったことをざっと記すと、まず、以前の psql では問題なかったのが最近おかしくなったのは

#603599
これまでの psql は libreadline (GPL v2+) と libssl (BSD-like であり GPL とは非互換) の両方にリンクしており、ライセンス的にバイナリの再配布は不可能。そこで、libreadline をやめて BSDライセンスの libedit にする

という事情らしい。

#607109
psql でマルチバイト文字が使えない

で指摘されているように、-n オプションを使えば回避できることから、libedit のバグのようだ。

同じ libedit を使っている gnuplot

#596870
非アスキー文字が使えない

で、実際に試してみたらそのとおりだ。

当の libedit には

#579729
utf8 に対応した新しいバージョンをパッケージしてほしい

という要望が出されているものの、動きはなし。

上流は NetBSD libedit なのだけれど、「libedit I18N化への道」(イントロ)を見ると、utf8 対応といっても問題が多く、ことの成り行きはこの方にかかっているらしい (つづきが(その1)(その2)(その3)(その4)(その5)。そしてこの時点での最新の「めもがき」によると、たいへんお忙しいらしい)。

さし当たりこの問題を回避するには、libreadline / libedit の機能をあきらめて psql -n として使うか、libedit を libreadline に差し替えてパッケージを作り直すか。根本的解決は、能力のない者としてはただじっと待つより為す術がない。

psvn でのパスワードの入力

自分のためのメモ。 Emacs の subversion のためのインターフェース psvn.el の先頭のほうで、コメントの形の FAQ に書かれていた。
;; Q3: How do I enter a username and password?
;; A3: In the *svn-status* buffer press "s", switch to the
;;     *svn-process* buffer and press enter. You will be prompted for
;;     username and password.

WordPress でping/トラックバックを送信できない

サーバーの移転以来、トラックバックができていないようだと思いながらも、あまり記事を書いていなかったので確信を持てずにいました。思い当たる設定をいくつか直してみたのですが、やはり出ていっていませんでした。

検索してみると実にたくさん引っかかりましたが、どうやら

  1. wp-include/cron.php の wp_remote_post() の設定時間を長くする
  2. Smart Update Pinger プラグインを使う[1]
  3. /etc/hosts の 127.0.0.1 にホスト名を加える

の 3 つの解決策に分類されるようです。

まず (1) をやってみましたが、ここでは何も起きず、(2) をやってみると「更新情報サービス」に設定してたところには ping を送信できましたが、トラックバックは別でした。

結局「移転以来」というのが鍵でした。移転というのはいわゆる「自宅サーバー」になった訳ですが、そこに問題がありました。

「自宅サーバー」というのは、つまりルーターの内側にあって、NAT により外側に見えるグローバル IP アドレスと、内側(自分自身を含む)から見えるプライベート IP アドレスが異なっている状態にあるということです。外向きの DNS は立てていたのですが、自分自身 (つまり pasero.net) を 127.0.0.1 や 192.168.x.x と引けなくてもこれまで特に問題はありませんでした (それはそれで驚き)。

「トラックバック」の仕組み上、これではいけないのですね。ひとつの解決策が (3) のように、/etc/hosts で WordPress のあるホスト名を 127.0.0.1 に対応させる方法です。ここでは、VIEWによるスプリットDNSという方法で、内向きの DNS を設定して解決しました。

  1. 後継のUltimate Plugins Smart Update Pinger というものがあるようです。

Pidgin で IRC

WordPress ja “非公式” IRC チャンネル」について、先日書きました
サーバ:
irc.freenode.net
チャンネル名:
#wordpress-ja
文字コード:
UTF-8
それ以来、PC の前にいるときは接続しているようにしているのですが、ほとんど誰もいませんね。時間帯が合わないのでしょうか。 随分前の「WordPress交流会」のときには Chatzilla を使いました。その頃 Pidgin はまだ Gaim という名前でしたが、日本語を使おうとするといろいろ問題があったのです。今は普通に使う分には問題ありません。 Pidginは多くのプロトコルに対応していて、普段から Jabber/XMPP のクライアントとして使っていたので、そこに IRC のアカウントを追加したのでした。

Mozilla Firefox のサイドバー

数日前から Firefox (Debian では Iceweasel) のサイドバーに
asahi.comのネットスケープ用サイドバーは、2009年6月5日で終了します。RSS、ツールバーなどをご利用ください。
と表示されるようになりました。 サイドバーは確か Netscape 6 からだったでしょうか。その後 Firefox には引き継がれず、衰退してしまいました。私は拡張機能のイージーSidebarを利用しています。asahi.com のサービスがなくなれば、購読しているまともなサイドバー対応のサービスはスラッシュドットジャパンくらいです。 しかしサイドバーは、携帯サイトを表示させればちょうどいいサイズです。便利に使っているのは河川情報の「レーダー雨量」の履歴動画です。