2005年2月9日から2005年2月5日までの日記を表示中

2005年 2月 9日 (水)

uimでF10とか

uim-xim(r549)でAnthy使ってて,「v」と打ってF10押してみたらuim-xim死にました_|‾|○.mltermもgtk-demoでも同じ・・・.gdb見たらstring_equalでセグってるし.ひらがなになる前の段階でF10とかF9押すと死ぬみたいです.「vu」とか打ってひらがなにした状態でF10押す分には問題ないっぽいんですが・・・.バージョン上げたら直るかなぁ・・・.

MP3のタグ変換

手元の撃墜王決定戦とかのMP3ファイルを,シェルスクリプトをちょこちょこ回してまとめてOggに直してみました.これでxmms-scrobblerも安心.ついでに直す途中でnormalizeかけたことで音量のバランスも改善できて幸せです.

ただ,スクリプトで自動変換する場合,普通のSJIS(CP932?)の機種依存文字(古い?)を処理しにくいのが痛かったりします(特に多いのがギリシャ数字).OggのタグはUTF-8なんで,そこら辺の機種依存文字も問題なく使えるとは思うんですが,oggencの引数はEUC-JPで渡さないとだめだったりしてひっかかります.「Thunder Force」とか「Final Fantasy」がよく引っかかりますねぇ(笑).

試しにiconvでCP932→EUCJP-MSで変換してoggencに渡してみたら「V」は「##」になっちゃいました.あー,そうか,oggencの中で呼んでるiconvでもEUCJP-MS→UTF-8ってやらせなきゃだめなのか_|‾|○.ここら辺,ちゃんとしたja_JP.utf8環境整えればどうにかなんのかなー.あるいは,oggencに入力文字コードを強制指定するオプションとか付ければどうにかなるのかも・・・.

ドラクエ8

遂に買いました.でも買っただけです.きっと触るのはもっと先.遥か先.

2005年 2月 8日 (火)

emacs-21.4

キタ━━━━(゜∀゜)━━━━ッ!! と思ったら,21.3と比べて実質3行位しか違いが無いように見えるんですが.これで21.4とか名乗っていいんですか・・・?

xmms-scrobbler

昨日の問題ですが,タイトルをURLエンコードした後,送信フォーマットに整形するところで256byte固定長のバッファを使っているのが原因でした.これのせいで,長いタイトルは途中で切られてしまい,さらに運悪く「%」の後の1文字が欠けてしまうと,サーバ側でデコードに失敗してしまいエラーになる,と・・・(;´д`).

あー,あと,終了時にxmmsがセグるのは,どうもxmms本体側でプラグインの終了待ちしている間にタイムアウトが発生しているのが原因なんじゃないかという感じが.本当はタイムアウトが発生したからといって落ちちゃいけないと思うんですけど.こっちはやっぱスレッドが曲リストをサーバにsubmitしている間でもpthread_cancelで強制終了可能とするすることで即終了可能として対処しちゃいました.一応submitする内容見たら,その曲がsubmit条件を満たした時点での日付や時刻が埋め込まれてたんで,ひょっとしたらサーバ側で,前のsubmitのと見比べて,ダブって登録されそうになったら捨ててくれたりするんじゃないかなー,と期待して・・・.

そんなわけで,ちょこちょこいじって安定化させた(つもり)のパッチはこちらです.もうこれで終わりにします・・・.って,何か「A?Lv/??」とかいう文字化けしたエントリが1個登録されている・・・(?は特殊文字).これはもしやMP3のタグ?記憶の糸を手繰り,聴いた覚えのあるMP3ファイルのタグに書かれたアーティスト名でテストしてみたところ・・・

 % echo "植松伸夫/通天" | nkf -s | hexdump -C
 00000000  90 41 8f bc 90 4c 95 76  2f 92 ca 93 56 0a        |.A...L.v/...V.|
 0000000e

ああ・・・やっぱこれか・・・_|‾|○.しかし,これは,日本語環境で使うには致命的な気が・・・.やっぱ日本じゃ誰も使ってないのか,xmms-scrobbler?

T40

中部ノートセンターからT40修理完了とのメールが.結局どういう修理が行われたのか・・・.到着までドキドキです・・・.

2005年 2月 7日 (月)

撃墜王決定戦

いやっほぅ,撃墜王決定戦すげー.かっちょえー.スクウェアばかりかと思いきや,東方アレンジも結構出ててうひょひょな感じです.

xmms-scrobbler

長いタイトルの曲でセグる原因がわかりました.vorbisのタグ処理のサイズ処理するところで以下のようなマクロが使われてるんですが,charにunsignedがついてないのでsignedとみなされてしまい,曲情報が128byteちょっとのサイズの曲だと長さがマイナスになっちゃってました.「char」を「unsigned char」にしたらセグらなくなりましたとさ.

  #define le2int(le) ((le[0] << 0) | (le[1] << 8) | (le[2] << 16) | (le[3] << 24))
  unsigned int length;
  char cToInt[4];

  cToInt[0] = 0x8d;
  cToInt[1] = cToInt[2] = cToInt[3] = 0;

  length = le2int(cToInt);

charの符号は結局実装依存なんだっけ,確か(調べたらヤマケンさんのメールが)?自分も1年前GBAではまったっけ.・・・おっと,これだと他のファイルのタグ処理するところでも発生するんじゃない?って,wma用の関数ではちゃんと「unsigned char」って書いてあるし.Vorbisだけだめですか_|‾|○.ていうか,ようやくセグらなくなったデータですが,それを送ろうとすると今度は

FAILED Plugin bug: Not all request variables are set : param size < 8 >>param size:7

とかいって失敗します.WinAMPで試したらうまくいったってことはxmms-scrobblerの問題かぁ・・・.どんどん深みにはまっていきます・・・.

ちなみにAUDIOSCROBBLERのフォーラム見てたらxmms-scrobblerの新しいバージョンが出てました.ぱっと見基本的な部分には大きな変更は無いみたいですが・・・

2005年 2月 6日 (日)

RSS

このページのRSSですが,はてなのRSSを参考に記述を変更し,さらに一部にCRが混じっていた(恥ずかしい・・・)のを除去したところ,mixiの方が反応してくれるようになりました.「日記new!!」とか表示されてます.

その後,おぼのくんのところのRSSの方もとあれこれ・・・って,何かおぼのくんところに書かれとる(;´д`).あ,あれは自分への戒めも含めてですよ.

uim

昨日書き忘れたんですが,uim-pref-gtk,初めてちゃんと使ってみました.いいですねー,これ.簡単だし.なんかちょっちもっさりした感じがするのと,設定内容がテキストフィールド(?)みたいなので表示されてるので一見手で直接直せてしまいそうな感じを与えちゃうのがあれですが(実際SKKの辞書ファイルのパスとかは手で直せるみたいですが).

あ,あと,いじってて気づいたんですが,いつのまにかEmacsとかXIM使うアプリ上げたままuim-xim落として上げ直しても全然固まらなくなってました.いやっほぅ,UIM最高!

xmms-scrobbler

xmms-scrobbler,ソースは大変読みやすいです.だけど,何かやってることが変な気がします.たとえば,以下のようなコードがあったりするんですが,q_lenが0だと・・・.

        pthread_mutex_lock(&mutex);
        if (!q_len())
                return;
        if (sc_submit_timeout < time(NULL) && sc_bad_users < 3) {
                sc_submitentry();
                sc_submit_timeout = time(NULL) +
                        sc_submit_interval;
        }
        pthread_mutex_unlock(&mutex);

他にも,何か他のスレッドが使っている可能性がある変数を,join呼ぶ前にfreeしてみたりとか,なんかもう結構すごかったので,あちこち手を突っ込んでみました.

とりあえず,HTTPで通信している間にxmmsを終わらせようとすると引っかかる問題は,pthread_cancelで強制終了させるようにして対処してみました.ただ,曲リストをサーバにsubmitしている間は,それが完了するまでcancel要求ペンディングさせざるを得ないんで,起動直後以外の引っかかりには効果が無かったり.submitに番号つけてて,最後にサーバが受け付けたsubmitの番号を後で取り出せるようなプロトコルにでもなってればいつでも切れるかと思うんですけどねー.

ただ,まだ終了時にタイミングによってはxmmsがセグる問題が解決してなかったり.あと,特定の曲(ファイル名?)だとタグ取り出すところでセグります.萎える・・・.ていうかそうまでしてAUDIOSCROBBLER使いたいのかというと・・・_|‾|○ .

2005年 2月 5日 (土)

xmms-scrobbler

ちょっとxmmsが正常終了しなくなる理由を追ってみました.これはaudioscrobblerのサーバとの間で認証みたいなことするスレッドがcurlの関数呼び出したところで引っかかってなかなか戻ってこないのが原因ぽいです.要するにサーバが重いってことか?ぬー,確かにほんとやばいくらいに反応悪い・・・.

ていうか,何か3回続けて認証に失敗すると,その後は永遠に認証しにいってくれない感じのコードに見えるんですが・・・.何だそりゃ?

uim-0.4.6alpha1

早速入れてみました.ビルドに少々手間取りましたが普通に使えました.が,既にr549使ってたり.uim-qtもまとめて入れられるようになって嬉しい限りです.そいやSolarisでビルド通るのかな・・・((((;゜Д゜))) ガクガクブルブル.

永夜抄

これまたひさびさに永夜抄Extraをやりました.もちろん咲夜単体.ひさびさで酒入ってた割にはスペルカード11枚取れました.でも14億.あー,ノーミスでクリアできる日なんか訪れんのか?

2005年2月9日から2005年2月5日までの日記を表示中

中の人情報

名前:
nosuke (のすけ)
メール:
sasugaanijaのgmail.com
「の」は「@」みたいな
関連リンク:

カレンダー

2005年2月
    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          

<<先月分

翌月分>>

最新の10件のエントリ

最近の10件のコメント

過去ログ