SewiGの日記
2006-11-06 [月] [長年日記]
■ [Sound] STRAIGHTの中の人が来た
聴覚情報表現に基づく音声処理技術:STRAIGHTと題して、和歌山大学の河原教授が来学されました。
STRAIGHT*1はボコーダ、つまり音声分析合成。高いF0推定が可能でさまざまな分野での応用も可能です。
講演内容はSTRAIGHTに使用されているアルゴリズムの説明、というよりも概要の説明がほとんどで、簡単な質問にも丁寧に答えていました。
*1 「Speech Transformation and Representation using Adaptive Interpolation of weiGHTed spectrogram」の略。河原先生はほかにも「WAVE : Wakayama workshop on Auditory and Vocal rEsearch」など、もはや頭文字ではないネーミングをされていますw
2006-11-08 [水] [長年日記]
■ [Programming] UNIXでパイプ作ってプロセス間通信
あまりにも頻繁に来る質問なので、解説してみる。
pipe()というシステムコールを使えば、パイプが作られて、そのパイプの入力と出力となるファイル記述子が返されます。あとは、このパイプを他のプロセスと共有してやれば通信ができます。
ここでは、forkで子プロセスを作って、親子間で通信してみましょう。fork()というシステムコールで、自分自身のプロセスのコピーができます。このままではまったく同じ動作をするプロセスが増えるだけなので、fork()のあとに実行中のプロセスが親プロセスなのか子プロセスなのかを判定してやれば2通りの動作を並行して動作させることができますよね。これはforkしたときの戻り値で判別できます。0なら子、0より大きければ親。
このままでは、パイプは自分自身のプロセスにしか接続されていないので、子→親とデータを受け渡す場合には次のようにします。つまり子の出力をパイプの入力につないで、親の入力をパイプの出力につなぎます。
子:標準出力はいらないのでclose(1)、dup(fds[1])で今closeした場所にパイプのwriteをコピー
親:標準入力はいらないのでclose(0)、dup(fds[0])で今closeした場所にパイプのreadをコピー
それ以外のcloseはお行儀よく不要な入出力を閉じています。
#include <stdio.h> #include <stdlib.h> #include <sys/types.h> #include <sys/wait.h> #include <unistd.h> #include <string.h> int main() { int fds[2]; pid_t pid; int status; char c; // fds[0] read, fds[1] write if (pipe(fds) == -1) { perror("pipe"); exit(-1); } if ((pid = fork()) < 0) { perror("fork"); exit(1); } else if (pid == 0) { // Child process close(fds[0]); close(1); dup(fds[1]); close(fds[1]); write(1, "hello", sizeof("hello")); close(1); } else { // Parent process close(fds[1]); close(0); dup(fds[0]); close(fds[0]); wait(&status); while (read(0, &c, 1) > 0) { write(1, &c, 1); } write(1, " world\n", sizeof(" world\n")); close(0); } }
2006-11-10 [金] [長年日記]
■ [Programming] Microsoft .NET Framework 3.0
.NET Framework 3.0 正式版リリース。ダウンロードセンターから落とせます。特にWindows Presentation Foundationが使えるというのが魅力ですねー。
Windows XPでもほとんどの機能が利用可能なようです。
2006-11-13 [月] [長年日記]
■ [Java] Javaがオープンソース化
- Sun、JavaをGPLでオープンソース化 (ITmedia)
キタコレ。
今までも、ライブラリのソースコードなんかは添付されていましたが、VMなどは興味深いです。GPLがv2ってあたりは狙ったんでしょうね。Sunのドル箱Javaは今後さらに採用が進むでしょう。特に組み込みでの採用が増えそうな予感。サーバ分野でもライセンスの関係で搭載できなかったところも安心して搭載できるようになります。組み込み・サーバのシェアがより広がればJavaでの求人も増えてウマー。
2006-11-14 [火] [長年日記]
■ [Java] Dukeタン(;´Д`)ハァハァ
- Javaマスコット「Duke」もオープンソースに (ITmedia)
キタコレ。
Javaオープンソースにも驚いたけど、Dukeタンがオープンソース!
何気にDukeタンのストラップ持ってます。てか今身に着けてます。しかもライセンスはBSDライセンス! 商用利用できますぜ。やっほーい。Dukeタンで同人活動してみようかね…
2006-11-15 [水] [長年日記]
■ [Shopping][Mac] MacBook Pro 2.16GHz Intel Core 2 Duo
MacBook Pro買ったよー。昨日、Apple Storeから届いたよ♪
BTOで、梅の標準セットにRAMを+1GBの2GBにしてキーボードをUSにしただけ。
本当はLeopardが出るまで待とうかと思ったけどLeopardを待ってたら、今度はSanta Rosaが出るまで待ちたくなって、いつまでも買えない気がしたから。
先日MacBookにもC2D搭載してProとの差が埋まりつつあるけど、軽量化も性能も中途半端なMacBookはいらない。多少重くても大きくて性能が良いMacBook ProかLet's note並の軽いノートのどっちかだよね。
とりあえず、初期不良かどうかの確認をして日常作業ができる状態にカスタマイズしないとね。
2006-11-16 [木] [長年日記]
■ [Software] Windows Embedded CE 6.0
同時実行可能なプロセス数は従来の32から32,000に、仮想メモリも従来の32MBから2GBに拡大され、アプリケーション開発のボトルネックを解消した。
どうせ組み込み用なんだから同時実行可能なプロセス数はさほど増えなくてもいいんだけど、仮想メモリの増加は嬉しい。
個人的にモバイル用は良く使うアプリケーションが快適に動いてくれればよいと考えているので、同時実行プロセス数の32はこれぐらいでよかったけど、仮想メモリの32MBは少なかったです。仮想メモリの増加でちょっと規模の大きい作業もできれようになるのはいいね。
しかもVisualStudio2005と連係するとなると、Embedded Visual C++とか使わなくて済むし、ARMエミュレータなど開発環境が素敵。
2006-11-19 [日] [長年日記]
■ [Shopping] マウス買ったよ
- Logicool MDO-30BL
MacBook Pro用にマウスを買ったよ。携帯に便利な大きさを求めPCショップめぐり。
大きすぎると邪魔になる。しかし小さすぎると使い勝手が悪い。とにかく現物を見て購入しなければ後悔します。今回購入したのはLogicool製の廉価版。安かったけど、反応は良く取りこぼしはない。ホイールの硬さも回した分だけ反応するちょうどいい感じ。
マウスといえば、Bluetooth対応マウスってホントないね。Mighty Mouseを買おうと思ってたんだけど、ホイールがすぐにダメになるっていうからパスした。Bluetoothで多機能ボタンとスペック上は良いんだけどなぁ…
2006-11-21 [火] [長年日記]
■ [Hardware] PS3 Linux
- 「PS3 Linux」 始動 (slashdot j)
ここまでサクサクLinuxが動くのか。ハードウェアはどうみてもPCだし、わざわざ他OS用の項目を用意しているあたりが素敵。PS2の頃と違ってネットワーク環境も良くなってるからかなり遊べそうですね。Blu-rayドライブついてこの値段ならお得だね。
…でも今年はお金がないのでPS3買いません。どうしてもアイドルマスターのために箱○を買わなければ。
2006-11-24 [金] [長年日記]
2006-11-25 [土] [長年日記]
■ [Programming] WindowsのUIの統一になるか
結構GUI周りは実装が面倒ですからねぇ。しかもOfficeのUIとなればユーザ側からすれば(特に事務系なら)親しみやすいだろうし。
むしろWindowsのUIのガイドラインなんて全然守られていないんだからコレを機に統一されればいいね。
しかし
対象とするアプリケーションのプラットフォームに制限を設けない。ただしMicrosoftは,「新UIを採用『Word』『Excel』『PowerPoint』『Outlook』『Access』と直接競合するアプリケーションは除外する」としている。
なんだこれ。OpenOfficeとかはだめなんだろうね。あーあ、MS…
2006-11-27 [月] [長年日記]
■ [Software] Acrobat8 Professional
Acrobat8 ProfessionalとUSBメモリ1GBが支給されたよ。
主な新機能
- ファイルの結合とパッケージ化
- 共有レビュー機能の強化
- 墨消し機能の追加
- PDFフォームによるデータ収集機能の追加(Professionalのみ)
今まで外部のツールに頼っていたファイルの結合はうれしい。共有レビューなんかは書類の承認とか進捗とかに使えるな。(Readerでも書き込めるし)墨消し機能はPDFの仕組みが分かっていない方にピッタリの機能。(Wordの蛍光ペンで消えたと勘違いしてる人はこの機能を)PDFフォームはなんかいろいろ遊べそうだ。
ただ、問題があって… Adobe Updaterが重い。なにこれ。起動したら勝手にUpdaterも裏で起動してCPUを食うし。
2006-11-28 [火] [長年日記]
■ [Shopping][Music] Red Rocket Rising
- BeForU - Red Rocket Rising
BeForUのメジャーシングル第1弾です。
http://www.avexmovie.jp/lineup/beforu/
新生BeForUにはあんまり興味なかったんだけど、収録曲に「LOVE SHINE '06」があったので、暇になったら買おうと思っていました。ところが、Konamistyleでも売り切れで、もうだめぽって感じだった。とりあえずアニメイトへ。無かった。しかしここで諦めずいつも通りゲーマーズ。あった。さすがゲーマーズ。毎度のことながらありがたい。
「Red Rocket Rising」はアップテンポな曲。新生BeForUとしてはメジャー化最初だからということだからか。BeForUらしくはないけど、曲は悪くない。
で、残りの曲は原曲のイメージを崩さない程度にアレンジされている。好みが分かれるところではあるけど、私はシングル版も良いと思う。でもゲーム版も聴き慣れてるからなにかと比較してしまう。
● Saknarin [Smack-dab what I was looinkg for-ty!]