LinkStationで音楽再生
先日、某ワークショップで計算可能性について議論がありました。自分はそっちの専門ではないので、良く分かりませんが、なんか入力をMに制限するとか、そういう方法で話が進められていました。
思うのですが、計算可能ってのは簡単に言ってしまうと、無限の入力に対して、その計算を行う有限長の手順(アルゴリズム)が存在することではないのかなぁ…と。もし、プログラムが無限長でも良いのであれば、こんなのが許されてしまいますからね…。
int f(int x) {
switch(x) {
case 1: return 1;
case 2: return 4;
case 3: return 9;
//...略
case 100: return 10000;
//...無限に続く
}
さて、難しい話はこの辺にして、少し前に、HDDが壊れたので捨てられそうになったLinkStation(HD-HGLAN)を貰ってきたので、遊んでいます。CPUがPowerPC系の数百MHzなのですが、emacsなどのコンパイルなんかも問題なく(時間的な意味で)できます。
ところで、この機種にはUSBホスト機能が付いています。本来はプリンタを接続して、ネットワークプリンタとして使う用途らしいのですが、ここにUA-4FX(EDIROLのオーディオI/F)を接続すると、どうなるでしょうか?
まず、LinuxはBuffalo公式からFreeLink(Debian)に入れ替えました。カーネルもWebinstallerなるもので2.6.25.20にアップデート。
さて、WebinstallerにはALSAのモジュールもインストールされていたのですが、UA-4FXに対応前のバージョンだったので公式から1.0.18aをダウンロード。しかし、コンパイルにはカーネルのフルソースが必要です。
Webinstallerの提供元にはheaderはありますが、ソースがありません。headerのパッケージ内を眺めていると…「.svn」が…。リポジトリはSFのLinkstation Wikiでした。そのままなんですかね…。
後はこの辺を参考に
http://www.alsa-project.org/~tiwai/alsa-jp.html
http://alsa.opensrc.org/index.php/Edirol_UA-4FX
CUIに対応しているVLCで再生してみましたが、途中で途切れたりすることもありますが、OggVorbisもMP3もOKでした。
中身が同じだったりする玄箱でも、同様のことができると思います。
openSUSE 11.0 on a Mac Mini (PowerPC G4)
研究室に使われなくなったMac Mini (PowerPC G4)があったので、Mac OS X 10.4とopenSUSE 11.0のデュアルブートを組みました。その時のインストールメモを残しておきます。
もうそろそろ、11.1の公開ですが…。
パーティション
Mac OS Xのインストールディスクを起動して、ディスクユーティリティでパーティションを確保しました。openSUSEの領域は「空き領域」としてパーティションを切りました。
最初は適当なパーティションで構わないだろうと、UNIXファイルシステムとして確保しましたが、openSUSEのインストーラがブート用の領域などを上手く認識できませんでした。
Mac OS Xのインストール
ただインストールするだけです。
openSUSEのインストール
パーティションや導入するパッケージの設定をした後に、実際にインストールを開始する段階で、インストーラが落ちてしまう現象に遭遇しました。最終的に何が原因であったか分かりませんが(パーティション?)、設定をデフォルトのままにすると、インストールできました。
パッケージが無い
PowerPC Linuxの困ったところは、パッケージが全然ない事です。クローズドなアプリケーションはもちろん、OSSのアプリケーションでも、最新版やコミュニティリポジトリにPPCバイナリがありません。PowerPCの現行機種はPS3くらいしか思いつかないし、仕方ないのかもしれません。
Flashは互換プレイヤーのgnashをインストールしました。swfdecは手元の環境(Opera)で表示されませんでした。x86エミュレータを使って動作させる方法もあるようです。
RADEON
AMDが提供するドライバはIntel用なので、OSSドライバです。KDEのウインドウマネージャ(KWin)と相性が悪いようで、描画時にCPU使用率が上がり、かなり遅いです。とりあえずKDEとMetacityを組み合わせて使用しています。