Diary/2007-12
前の月<< 2007-12 >>次の月 | ||||||
---|---|---|---|---|---|---|
日 | 月 | 火 | 水 | 木 | 金 | 土 |
1 気づいたら | ||||||
2 | 3 うろうろ | 4 うろうろ2 | 5 | 6 | 7 | 8 |
9 | 10 | 11 分岐するプログラムの速度 | 12 OpenSPARC | 13 分岐するプログラムの速度(gcjで) | 14 | 15 |
16 | 17 | 18 Juliusで遊ぶ | 19 音声認識? | 20 | 21 | 22 山ごもり |
23 山ごもり2 | 24 | 25 | 26 | 27 | 28 | 29 Ripplexはじめました。 |
30 | 31 2007年 |
Diary/2007-12-31
2007年
いろいろなことがあったようなと、あらためて過去の日記を見返してみる。
いろいろなコンピュータにFreeBSDやらLinuxやらをインストールしたり、
FPGAをちょこちょこっといじってみたり、
Javaでプログラムを書いたり、
卒業したり、就職したり、
そんな感じの一年だったよう。
正直、12月から新しい環境に移ったこともあり、
一年間全体を包括してまとめることができない。
ただ、今年もたくさんの人と新しく知り合いになれたこと、
それが、とってもうれしく、ありがたかった、この一年間。
そして、この一年を楽しく過ごせたことに、
妻をはじめ多くの人に感謝の気持ちでいっぱいな今日、大晦日の夜。
ただ、今から思い返せば、いろいろと無駄な時間の使い方をして、
もったいないことをしたことが悔やまれて仕方がない。
来年は、すべきことをすべきときに片付けることを心がけよう。
そして、来年も最後に楽しかったなぁと笑っていられるような
一年にしよう。
みなさま来年も、どうぞよろしくお願いします。
Diary/2007-12-29
Ripplexはじめました。
http://www.ripplex.com/jpn/index.htmlで、知人・友人もみんな使ってくれればいいのになぁと。
いわゆるアドレス帳ソフトなのですが、
アドレス帳にお互い登録している場合、リンクすることができて、
自分の情報を更新すると、その更新が相手に自動的に反映される、と。
つまり、あの人引っ越してないか?とかいちいち心配しなくてよくなる...はず。
いわゆるWebアプリケーションではないですが、
複数のコンピュータにインストールしていても、同期されるらしい。
というわけで、Ripplexを使っている人、使い始めた人、
私の名前と、メールアドレスを登録の上、連絡くださーい。
リプ友(?)になりましょう。
しかし、これ、今までは暗黙のうちに隠されていた情報が
隠されていることがはっきり分かってしまうという悲しさもあるのかな。
あの人、私には住所を教えてくれないのね...とかとか。
iPod touch(iPhone)版とかでないかなぁ...無料で。
Diary/2007-12-23
山ごもり2
せっせと、プログラム書いたり、キーワードを並べてみたり、そんな一日。
で、時々地下の温泉に行ったり。
ネットワークがなく、なんとも仕事がはかどった気がする。
いかに、いつもメールをチェックして時間をつぶしているか、
よくわかった。
Diary/2007-12-22
山ごもり
というか、とある翻訳本の関係で、箱根にこもるN先生のところにお邪魔をしに。
いわゆるリゾートマンションというやつで
かなり快適な空間...うちより広いしきれいだし。
地下には温泉な大浴場もあって、のんびり。
唯一の欠点は、ネットワークリーチャブルではないことくらいか。
Diary/2007-12-19
音声認識?
JuliusとMeCabを使って遊んでみたり。{{files v}}
mpg123 --rate 16000 --mono --wav `echo $1 | sed 's/mp3/wav/g'` $1 echo `echo $1 |sed 's/mp3/wav/g'` > tmpfile julius -C /usr/local/julius/dictation-kit-v3.0/light.jconf -input rawfile -filelist tmpfile > tmp.result touch result.html grep sentence1 tmp.result | ruby parse.rb -s $1 > result.htmlとか。
QuickTimeの.Stepとかに指定すべき値がよくわからないので、
再生位置があわない...
Diary/2007-12-18
Juliusで遊ぶ
大語彙連続音声認識エンジン Juliusで遊んでみた。環境は、特に音声環境の設定とかしていないFreeBSD。
- インストール
から最新版をダウンロード。
そもそもマイクから入力を得るつもりがないので、
$ ./configure --with-mictype=oss $ make $ make installと適当にコンパイル
で、辞書等々のファイルは、ディクテーションキットよりダウンロードして展開。
http://julius.sourceforge.jp/index.php?q=juliuskit.html
- 遊んでみる
$ julius -C dictation-kit-v3.0/light.jconf -input rawfileとかして起動。
enter filename->とプロンプトがでるので、用意したtest.wavと入力。
で、めでたく解析結果が見られる。
- MP3からWAV作成
mpg123 --mono --rate 16000 --wav hoge.wav hoge.mp3とか
Microsoft Speech SDK 5.1
で遊んでみようと、サンプルをコンパイルしょうとしたら、sphelper.h内でのコンパイルエラー。
無理矢理キャストしてみたりして、とりあえずコンパイルできたけど...
よくわからないけど、Microsoft .NET Speech SDKを使えってこと?
sphelper.h.diff
769c769 < const ulLenVendorPreferred = wcslen(pszVendorPreferred); --- > const size_t ulLenVendorPreferred = wcslen(pszVendorPreferred); 1418c1418 < static CoMemCopyWFEX(const WAVEFORMATEX * pSrc, WAVEFORMATEX ** ppCoMemWFEX) --- > static HRESULT CoMemCopyWFEX(const WAVEFORMATEX * pSrc, WAVEFORMATEX ** ppCoMemWFEX) 2372c2372,2373 < for (const WCHAR * psz = (const WCHAR *)lParam; *psz; psz++) {} --- > const WCHAR * psz = (const WCHAR *)lParam; > for (; *psz; psz++) {} 2559c2560 < SPPHONEID* pphoneId = dsPhoneId; --- > SPPHONEID* pphoneId = (SPPHONEID*)((void*)dsPhoneId); 2633c2634 < pphoneId += wcslen(pphoneId) + 1; --- > pphoneId += wcslen((const wchar_t*)((void*)pphoneId)) + 1;
Diary/2007-12-13
分岐するプログラムの速度(gcjで)
Java分岐するプログラムの速度のプログラムをgcjでコンパイルして実験。
./a.out 0 10 1000000 > /dev/null 1.75s user 1.31s system 90% cpu 3.388 total ./a.out 1 10 1000000 > /dev/null 2.10s user 1.35s system 99% cpu 3.452 total ./a.out 2 10 1000000 > /dev/null 1.78s user 1.32s system 99% cpu 3.105 totalおおお、うれしい。
普通に実行した場合と違って、
複数の異なる機能を持つインスタンスを切り替える場合より
毎回switchで分岐した場合のほうが速いのも特徴か、な。
Diary/2007-12-12
OpenSPARC
OpenSPARCとりあえず、ダウンロードして展開してみた。
wc `find . -name \*.v -print` 1648763 4447158 53039733 totalだって...
ひさびさに秋月電子
たまに、Webで商品を眺めてみたりはしてたけど、実際に足を運んだのはかなり久しぶり。
で、かねてより買おうとおもっていた超音波センサを購入。
あと、コンパレータも。
液晶ディスプレイ関係とか、
USB関係のデバイスもかなりたくさんならんでいて、びっくり。
...はんだごてその他も職場に持ってきてしまおう。
Diary/2007-12-11
分岐するプログラムの速度
Javaちょっとした実験。
ある数値(その数値はほとんどかわらない)に従って
挙動を変えるJavaプログラムの動作速度の実験
- switch文で分岐
java Test 0 10 1000000 > /dev/null 5.16s user 2.77s system 99% cpu 7.988 total
- Methodをつかってinvoke
java Test 1 10 1000000 > /dev/null 5.46s user 2.87s system 99% cpu 8.388 total
- 共通のインターフェースを実装したクラスで切り替える
java Test 2 10 1000000 > /dev/null 5.09s user 2.73s system 99% cpu 7.875 total
- switch文で分岐(JNI版:参考まで...)
java Test 3 10 1000000 > /dev/null 5.63s user 2.84s system 99% cpu 8.545 total実験環境は、CPU 2.2GHz Intel Core2Duo、メモリ 2GB。
JNI使うなら当然もっと負荷高いことしないとだめ。
MacでJNI
gcc -PIC -dynamiclib -o libTestJNI.jnilib \ -I/System/Library/Frameworks/JavaVM.framework/Headers \ -lstdc++ \ TestJNI.cxx{{files}}
Diary/2007-12-4
うろうろ2
今日も朝から東京をうろうろ。今日もトラブルで電車のダイヤが乱れていた。
Leopardでemacsコンパイル
Carbon版 Emacs 22.1 を Build するを参考に。
Eclipse3.3に後からPDEをいれる
Europa Discovery Site->Java Development->Eclipse Plug-in Development EnvironmentDiary/2007-12-3
うろうろ
電車に乗って東京をうろうろ。久々に乗った方面の電車は、
トラブルでダイヤが乱れていて大変だった。
MacPortsをsvnで
MacOSXディスクイメージなバイナリをダウンロード後インストールして
MacPorts 1.5.0 以降で rsync を使わず svn を使う
を参考にsvnでportsを更新...portindexで、たくさん失敗。
しかたないので、MacPorts自身をsubversionで取得してコンパイル。
Diary/2007-12-1
気づいたら
もう12月だし、結婚(書類提出日)から丸2年Copyright (c) 2001-2008 Takefumi MIYOSHI, All rights reserved