2011年5月31日火曜日

ボーカロイドをTTSとして活用するには?

ニコニコ動画にて、
ボーカロイドの読み上げはゆっくりの1000倍大変だという話を聞きました。

つまりボーカロイドの読み上げ難度がゆっくり並になると、
ニコニコ動画はもっと面白くなりそうです。

では具体的にはどうすれば実現できるでしょうか?

google先生から色々ご指導を受けた結果、

「SofTalk → SAPI → *自作の*SAPIエンジン → ボーカロイド」

という構成が一番近道じゃないでしょうか?
という結論が出ました。

つまりSofTalkの音声にボーカロイドが追加されるイメージです。
これは流行る!(*´ω`*)

突破しないといけない点は主に2点、

  • SofTalkが自作のSAPIエンジンを認識してくれるか?
  • ボーカロイドがコマンドやAPIで実行できるのか?
あたりかな?

とりあえずダミーのSAPIエンジンを作ってSofTalkを起動させてみるのと、
初音ミクを購入するのが次のアクションか~

帰りにヨドバシに行くか~の

追記:次回へ続く

思えば遠くに…でもないか

アクセスカウンタが500を突破しました。
何の宣伝もしてないこのブログとしては健闘しているような気がします。

リアル世界の人にも一切紹介してないですしね。
(いや、する予定だけどすっかり忘れていた…)

次の目標は1000ですが、
せめて半分くらいの期間で達成したいものです。

2011年5月30日月曜日

Wiresharkで自端末へのパケットをキャプチャする為のスクリプト

前からの続きです。

Wiresharkは自分自身へのパケットはキャプチャーできないわけですが、
方法はあります。

ふりっつさんのブログにて分かりやすく解説されています。
【ネットワーク】Wiresharkで自端末へのパケットをキャプチャする方法

ということなので、スクリプト化してみましょう。
ちなみにHey, Scripting Guy!の助力を得て作成しています。

あ、動かすにはMACアドレス入れないとダメなんでよろしく。


2014/11/06 追記:
ARPテーブルをこねこねするのは、たぶん管理者権限が必要です。
このスクリプトではARPでエラーが発生しても無視しますのでご注意ください。
エラーチェックするように修正するのは君だ!

2011年5月27日金曜日

Wiresharkを使う

WiresharkでSIPの動きを見ようと思ったら、
(当たり前だけど)ローカル内の通信が見れなかった。


というわけでローカルのルーティングテーブルをいじったんだけど、
今度はプロキシ絡みで何か上手く動作しないっぽい…

ICMPが通ってHTTPが通らないから…そうだよなぁ?

まあそれでも有用なので、
MACアドレスから切り替えが可能なスクリプトでも組むかね?

追記:スクリプト化しました

2011年5月26日木曜日

ハンドルネームの由来

自分は“Bladean Mericle”というハンドルネームを使っています。
まあこれはアナグラムでして、“enabled miracle”という意味を込めています。

直訳すると“奇跡を可能にした”です。

過去形なのにあまり深い意味はなく、
単純に“d”が欲しかったからというくだらなさ。
まあ本当に奇跡を可能にする意気込みを感じられていいでしょうか?

ちなみに奇跡=魔法ということでこのブログのサブタイトルを付けています。

つまりですね、

  • すごい人たちと仲良くなる
  • すごい人たちとすごいモノを創る
  • すごいモノを広める
という指針を持とうというわけです。

すごいモノはソフトウェアである必要はないですが…
職業的にはソフトウェアになるんでしょう。

まだな~んにもできていませんが、
日進月歩、少しずつ頑張っていきたいです。

2011年5月25日水曜日

Twitterをやるか否か

自分はTwitterに参加していません。

つぶやきはそこら辺の雑談と変わらないからです。
通りすがりにちょっと小耳に挟むような感じでしょうか。

即時性の高い情報には有効なんですが、
論文的な情報には不向きっていうのがあります。

そして欲しい情報の9割以上が論文側にある身としては、
どうしても優先度が下がってしまうわけです。

友人の近況が知りたいって?
いや、そこまで頻繁に知りたくないっす…

これが聞き取る側の理由です。



次はつぶやく側の理由です。

そりゃ世の中に言いたいことはたくさんありますが、
やっぱり論文形式なので却下です。

おっと、日常的なことを聞いて欲しい趣味はないですよ。

次に宣伝的な使い方ですが…
RSSの方がいいじゃないんですかねぇ?

ボットのつぶやきを聞くって言っても…すぐに飽きません?

あるとしたら1時間単位で更新があるような場合ですが…
今のところそんなサービスはありません。

つまり今はつぶやくことがないっと。



何だかんだと変なこと書いてますが、
ようするに過度なつながりはいらないのです。

つながるタイミングは、
自分で決めたいんです。

そうしないと疲れますから。

2011年5月24日火曜日

新人プログラマー研修の範囲

新入社員の方と(自分だけノンアルコールで)飲む機会があったので、
新人研修について思いを馳せることにしました。

最近のIT系新人研修なら、
プログラミング入門(おおよそJava)とネットワーク入門、
後は汎用的なビジネスマナーってところでしょうか?

絵描きに例えると、
筆とパレットの使い方を教わるレベルと言えます。
(例えるとひどいな…)

当たり前ですがこんなレベルなら大体の人が通過します。
でも絵の描き方は知りません。
これがヤシガニ作画を大量に生み出す人たちなわけなんです。
(意味が分からない人はgoogle先生に聞いてください。)

数年後…まだ大半がヤシガニ作画です。
(だってOJTしてもその人達がヤシガニ作画ですから。)

10年後…それでも多くがヤシガニ作画です。
(さすがに絵を教える人なんてもういないですから。)


え?絵が上手くなった人はどうしたかって?
仕事が集中して病院送りになりましたけど?
もしくは他の会社に転職しましたね。

つまりは、そんなにこの研修は役に立つ?って言いたいわけです。



…もっとコミュニケーションを養えばいいって声が聞こえてきました。
しかしコミュニケーション能力は、
(プログラマーでは)複数人開発にて伝達ロスを無くすための技能です。

100技術 × コミュニケーション30% = 30成果
1技術 × コミュニケーション90% = 0.9成果
(100倍差は言い過ぎ?
いやいや、参照も分からないJavaプログラマーはそれくらいでは?
それでも気に入らない方は10倍差でどうぞ♪)

確かにコミュニケーション能力はある程度必要ですけど、
技術を上げないと本末転倒ですね…

あ、マネージャークラスはちゃんと必要ですよ?
それだけじゃ雇いませんわれないと思いますけど。



さてさて、新人研修で何の範囲を教えたら良いものでしょうか。
自分ならチーム開発のスキルを研修に入れたいものです。
個人開発だと身につかないことが多い要素ですし。

レベルが高すぎる?
ご安心を、コーディング規約とソース管理とバグ管理についてちょっと実践するだけです。
あ、デイリービルドも入れないといけませんね。

基礎は最初の一週間で教えて、
後は小さな仮想プロジェクトで実践させましょう。
(自分なら本当のプロジェクトにするでしょうけど。)
これなら簡単でしょ?



…ま さ か うちでヤシガニ作画を描く新人を雇ったわけではないですよね?

2011年5月23日月曜日

インターネット日付フォーマット

JavaがRFC3339に対応していないらしいので、
適当に作ってみました。

よくよく考えるとSimpleDateFormatに大部分をまかせてもよかった気がしますが、
頭のエクササイズだと思ってスルーすることにしました。

今回のはま~ったく自信がないので、
流用される方はよくテストしてください。


2011/11/24追記:バグを見つけたので修正しました。タイムゾーン省略時はローカル時じゃなく標準時なのね…
2013/06/26追記:一箇所セペレーターだったので慌てて修正
2013/07/17追記:英語版にしてみました。
2013/12/16追記:ミリ秒のパースに問題があったので慌てて修正。英語版との名前の差異は…もうめどいからいいや。
2017/09/18追記:パースのバグを直しました。コメントくれた方ありがとう!

2011年5月20日金曜日

歩数計の精度

スマートフォンに歩数計が入っていたので有効にしてみました。

ここ3日での測定結果は、
いずれも8000歩オーバーという結果でした。

こんなに歩いているか~?と疑問になり、
腕を固定してモニターを見ながら歩いてみましたが、
おおよそ正しいように…見えました。

かといって電車とかで誤反応しているような履歴でもないですし…
これは信じていいのでしょうかねぇ?

2011年5月19日木曜日

リトライ回数という罠

プログラムを組んでいると、
リトライ回数という値を設定することが良くあります。

しかしこのリトライ回数というものは、
意外と認識がずれる厄介ものなのです。

例えば必ず処理が失敗するようにした場合、
リトライ回数によって何回処理が実行されるのかを考えてみます。


  • 自分の場合
    リトライ回数=0 … 1回 意味:リトライしないで終了する
    リトライ回数=1 … 2回
    リトライ回数=5 … 6回
  • ある人の場合
    リトライ回数=0 … 考えていない
    リトライ回数=1 … 1回
    リトライ回数=5 … 5回 意味:リトライ回数分処理する?


これ…どっちが多数派なんだろう…
うぅ、自分が正しいと信じたいよ…(泣)