2005/12/27 火曜日

焦るとろくなことが無い・・・その2orz

カテゴリー: Skype — ryu @ 22:23:51

sigskype063.zip

  2005/12/27
   sigskype063.zip
   ・音声周りおかしくなっていたので修正
   ・NPD-20JWL対応のふり(w

なんかDLL変なの入れてた気がします。
新ベータバージョンで音声がおかしい人は入れ替えてみてください。

実機が無いので対応になってるかどうか分かりませんが、
NPD-20JWL対応、ふりだけ入れてみてます。
(音声入力デバイスが16Khzで録音できるなら問題ないはず)
(続きを読む…)

2005/12/24 土曜日

作業日記

カテゴリー: おぼえ書き — ryu @ 0:03:59

 グラフ(右下の奴)書きたいと思ってIKeJI氏の影響から mingplot を拾ってきて使ってみる。っていうか ruby じゃん…。「うおー、わかんねー!」と叫びつつ触った感じ mingplot 本体を使うのはやめて mingchart を使う事にする。「Flash もわかんねー!」と叫びつつ Rect を Button に変更して OVER のレイヤに Text を追加する。「う、出来たかも」と思ってサーバにも mingplot を突っ込んで走らせると…落ちる。実はこのサーバ PowerPC 系の石@266Mhz でメモリも 64M しかない。x86では動いてるので「追求しちゃダメだ」と言うことで Button はあきらめて Rect のままにする。が、ming を Beta1 じゃなく CVS から拾ってきたりして悪あがき。が、ダメだ。やっぱり見なかったことにしよう。が…データ量が増えてくるとダメダメ。遅すぎるということでおもむろに sqlite3 をインストール。サーバーにも。がしかし「データファイルがテキストファイルの時よりより遅い…」更新間隔を伸ばしてこれも見なかったことにする。が、出来上がった SWF があまりにも大きい。と言うことで、 mingchart にちょい手を入れて圧縮するようにしてみた。とはいえサーバの非力さに新サーバ購入に走って Web を見て周るが、ふと家で動いてるPersonal Skype In Gatewayの事を思い出す。「データ量多いのはバッチにしてGWで動かそう」と思い立つ。が、SkypeInGWはWindows。と言うことでおもむろに Cygwin から Ruby から何から一式突っ込んで mingplot が動くようにする。Ruby でサーバの sqlite のデータファイルを取ってきて swf 作成してサーバにアップロードするスクリプトを書く。とりあえず、よしとしよう。
 サーバ←→GW間は2枚FWが入ってるのでFWの設定変更。ついでに Skype へ外から繋がるように穴を開ける。いや、穴あけなくても全然繋がるんだけど Relay に成ってビデオのフレームレート2枚/秒とか、SkypeOutで遅延がひどかったので改善すると良いなぁという思いも有り。いくら設定しても syn 飛んでこないなぁと思ったら config で nat テーブルのフラッシュするの忘れてた…。リブートすりゃ良いんだけどこのサーバ半年ぐらい動いてるので連続稼動記録にひっそりと挑戦中。設定だけしてほっといたらなんかセッション一杯張ってるんですけど…。スーパーノードご指名ですか?みたいな。あと設定中にレジストラのDNS設定がおかしいことに気がついたので変更、連絡。ruby 動くと swap 発生…。うげ。ということで2年ぐらい前からスパムフィルタで使ってた popfile を止めてプロバイダのサービスに変更。とりあえず swap はなくなったみたい。

 世間ではSkypeを止めるFWがはやってるけどそろそろ逆にSkypeで遅延を少なくするようなGWが出てきても良いんじゃないのかなぁ。Skypeしか通らない高速なHTTPS-Proxyって事だけど。stone ベースにちょっといじれば良いのか知らん。

2005/12/22 木曜日

あいのり

カテゴリー: 未分類 — ryu @ 22:28:25

ヒデとアヤの結末は…(.. )

アヤの言うこともわかる。
しかし…だ。
聞き分けが良すぎないか…

って、ごねても結果は同じなんだろうけど…

2005/12/21 水曜日

OCXで列挙型プロパティを作る

カテゴリー: おぼえ書き — ryu @ 22:03:37

VBなんかのデザインモード時にプロパティエディタで、
1-実線
2-点線
3-破線
・・・
みたいにドロップダウンコンボで選べるプロパティがあるOCXを見たことが有るはずだ。

自分で作ったコントロールだとEditで直値入力なのに、
市販のOCXだと何でドロップダウンになってるんだろう・・と思っている人は
IPerPropertyBrowsingインターフェィスを実装してみるといい。

IDLでコントロールのプロパティ作成時に、IDLで定義したenum型を利用する
という手も無くはないのだが、Container側のというか、
プロパティエディタの実装によってドロップダウンに成ったり成らなかったりするし、
表示できる文字列に制限が出てしまう。

実装することでちゃんと表示できるのだが、
プロパティが多いと大変なのと何も考えずに実装すると値を変更したときに大変なのだ。
ちゃんと値と同期が取れるような仕組みを考えるのが吉。

ちょっとググってみたら、
[No1027: ATLでのプロパティ設定 [Daisuke Hoshina] (97/12/17 06:54)]
が解りやすいかな。

先日のスレッド問題もだけど、この辺も97年。もう8年も前?(笑
OCX、COMって全然新しくないし今考えるならちゃんと今の先を見据えないと
COMで作っても駄目だろうなぁ。

2005/12/20 火曜日

W-ZERO3もSkypeも・・・

カテゴリー: Skype — ryu @ 23:12:43

W-ZERO3でSkypeの音声が背面スピーカーから出る問題は、
Skype側に出力デバイスの選択機能があったとしても、選択肢に現れない。
どっちもどっちと言え無くもないヽ(´ー`)ノ

怪しいDLLのEXPORTを呼びまくりたい所だけど、
どうなるか解らないので安易に試してみて~とはお願いできなかったり。
ま、自分が困っているわけではないと、自分に言い訳。

後、W-ZERO3で自動ダイアルアップ云々って書いたけど、間違いかも。
使ってるAPI見る限り自動切断機能しか実装できそうになかったり。

2005/12/17 土曜日

003(W-ZERO3)を手に入れた方へお願い

カテゴリー: Skype — ryu @ 1:10:08

Skypeで背面スピーカーからしか音が出ないのが悲しいので、
ちょっと調査に付き合ってください。

wo003.exeの実行結果をキャプチャして見せてもらえればと思います。
Skypeで背面スピーカーからしか音が出ないと良く見かけるので、
Skypeだけの問題かとも思っていたのですが、
よくよく考えるとフロントスピーカー鳴らすアプリって
無いんじゃないかと思い利用可能な音声出力デバイスを
列挙するアプリです。

これで01:が有ってフロントスピーカーぽいデバイスに成っていれば・・・


kzouさんに協力いただきました。

結果、00しかない事が判明。
と、いうことは?
・独自の方法でフロントスピーカーを鳴らしている。
・実はW-SIMとアナログ接続。
・WaveOutデバイスの先で分岐して切り替えられる。
のどれかという事?

2005/12/16 金曜日

焦るとろくなことが無い・・・

カテゴリー: Skype — ryu @ 22:39:37

出た~と思って出社前にエントリしたもののよくよく考えてみると、
CABにパッチ当てれば良いじゃんってことでPatherを更新しました。

インストール済みの人は問題ないので見送ってください。

sigskype062.zip
(続きを読む…)

と、思ったらバージョンアップ!

カテゴリー: Skype — ryu @ 7:41:38

新版、公開されました。
それにあわせてバージョンアップします~。
日本語対応されていたりConnectionManager使うように成っていたりします。
NetFrontに浮気していたのもここへの布石だったのかも(w
と、言うことでcellcore.dllを今回から使うようですが無問題。

あと、DLL書き換えようのツールを入れるようにしました。

//
// Sigmarion III で Skype を
//                           with Skype for PocketPC 1.2.0.89

1. 準備するもの
 1)Skype のダウンロードページから
  Skype for PPC 1.2.0.89 - SkypeForPocketPC_beta.CAB
  色々ありますが上から2番目の奴です。
  CABファイルが落とせるので母艦が不要に成りました。

 2)ホーミンさんのサイトから
  (1)wceload Extension tool V1.0
  (2)ダミーDll(H/PC2000以降用)
   ※ダミーDLLは以前から導入されている方も2005/11に更新されていますので
    更新版を使われていない方は再度入れ直してください。

 3)このサイトから
  sigskype061.zip

2. 手順
 1)wceload Extensionを起動して、バージョンチェックを無効にする
 2)SkypeForPocketPC_beta.CAB をインストール
 3)ダミーDllを \windows へコピー(必要なDLLはAygshell.dll cellcore.dllです)
 4)coreskp.dll を Skype をインストールしたフォルダにコピー
 5)SkypePatcherを起動してSkype.exeを開き、Patchボタンを押してください。
  (COREDLL.DLLをCORESKP.DLLに書き換えているだけです)
 ※ここまでで起動できるように成っているはず。
 6)起動後、License Agreementのダイアログがスクリーンいっぱいに表示されるので、
  Enterを押して次に進んでください。(ダイアログのOKボタンは効きません)
 7)後はメニューからログインしてください。

3.その他
  このソフトの著作権は、作者(rゆ)が保持します。
  このプログラムはフリーソフトです。このソフトの利用、複製、再配布(転載)は
  内容の改変等が無い限り無料で自由に行うことができます。
  このプログラムの使用による、いかなる損害に対しても、作者は責任を負いません。
  利用は個人の責任でお願いします。が、動作報告とか貰えたら喜びます(w
  ソース欲しい人はご連絡ください。
  ダミーDLL他、色々なツールを公開されてらっしゃるホーミンさんに感謝
  (Skypeの日本語リソースを公開されてらっしゃる kzou さんに感謝?)
  背景用の画像ファイルを頂いたLSRさんに感謝
  その他応援見守ってくれている方々に感謝
  気が向いたらSkypeのコンタクト登録よろしくです。
  Add me to Skype

  *宣伝
  デスクトップ用ですがSkypePadという通話相手やSkype仲間と共有できる
  メモ帳を作っています。試してみてください。
  Skype本家のフォーラムで添付ファイルとして公開しています。
  添付ファイルはログインするとダウンロードできるように成るので
  是非IDを取って使ってみてください。

4.注意点
  一部画面の描画が乱れます。
  ベータでは発生していなかったので描画領域を局所化して高速化するために
  Skypeがチューニングされた結果だと思いますので、
  少々見づらいとは思いますがご了承願いますm(_ _)m

5.おまけ
 1)背景用ビットマップの変更
  Skype.exeと同じフォルダにSkype.bmpという名前でビットマップファイルを
  置いておくと背景として使います。RBGカラーな非圧縮BMPなら使えると思います。
  ※本当はUIの変更は禁止なのですがビットマップが小さいと描画がダメダメなので
 2)なんか音声が変だなと思ったら…
  (1)ネットワーク接続が安定している方が良いようです。
  (2)クロックアップしている方が途切れたり…は少ないようです。

6.履歴
  2005/09/28 初版作成
   sigskype01.zip
  2005/10/09 通話できるように
   sigskype02.zip
  2005/10/15
   sigskype03.zip
   ・XScale版対応
   ・背景ビットマップ追加
   ・変なフォルダが出来ないように対応
   ・2度目の通話対応(不完全)
  2005/10/22
   sigskype050.zip
   ・ツールバーのボタンを表示するように
   ・ステータス変更のメニューを使用可能に
   ・coredll.dllのサイズを小さく
  2005/10/27
   sigskype051.zip
   ・背景のBitmap変更
   ・ドキュメント見直し
  2005/11/22
   sigskype060.zip
   ・ホーミンさんの新DLLに対応
   ・音声周り見直し(2度目の通話対応)
  2005/12/15 一応正式版
   sigskype061.zip
   ・SkypePPC版公開にあわせてアップデート
    とはいえ何も変わっちゃいませんが(w
   ・導入時にExecutebilityCheckToolを不要に

7.野望(w
  ・手順の説明用ページ作成
   ↑also english version?
  ・アップサンプリング時の補間を平滑化
  ・メッセやWindows版の様なUI化?(チャットの時困る…)

2005/12/15 木曜日

PPC版のSkypeは・・・

カテゴリー: Skype — ryu @ 19:56:45

W-ZERO3が発売になって、Skypeを試してらっしゃる方も
多いと思いますが岩田さん@SkypeのBlogに所感がつづられています。

事前に入手できて、意見交換などができれば改善、対応できることもあっただろうに、それが残念です。

うーん。

確かにそうは思いますが、
・背面スピーカーから音が出るのは…
 Skypeが何も考えずに0番目のデバイスを使用するから
 Bluetoothのヘッドセット使う場合とかレジストリ書き換えで
 デバイスの順序入れ替えることがありますがその方法で逃げられるかも
 というか、Skypeにデバイスを選択する機能が無いから
・自動ダイアルアップが動かないのは…
 RasDialとかConnectionManagerにSkypeが対応してないから
と、PPC版Skypeの完成度の低さに起因しているように思います。

SigmarionIII対応で音声周りはかなり見ましたけど、
WaveOutデバイスのコールバックタイミングでWaveInも処理している風だし、
音声デバイスは16Khzでのサンプリングサポートしていないとダメとか
バッファの初期化をせずにSHGetSpecialFolderPath呼んでたりとか
Windowサイズに無頓着とか
がんばってほしいなぁと思うことしきりです。

と、ここでつらつら書いていても仕方ないことだけどなんとなく。

いや、がんばってほしいなぁと思うので。
次バージョンに期待…かな。

2005/12/14 水曜日

COMのイベントを別スレッドから発生させる

カテゴリー: おぼえ書き — ryu @ 20:21:36

COMのInterfaceポインタはスレッドコンテキストに依存する。
何も考えずに別スレッドからFire_~Eventを呼ぶと、
たまにアクセス違反の起こるCOM Objectが出来ること請け合いである。

昔は資料もなくスレッドからSendMessageでAtlControlへ投げて、
Delegate的にそこからFireしてなんて逃げを打ったことも有ったけど、
本当はマーシャリングしてIntrefaceポインタを渡すのが正解

CoMarshalInterThreadInterfaceInStream
CoGetInterfaceAndReleaseStream

辺りか。

NTのSP3以降だとGITを使うことも出来る。らしい。

WritePtrToGlobalVariable
ReadPtrFromGlobalVariable

SP3って1998年1月か。あのころはSP3じゃなかったなぁ(笑

Essential COMで解説されているけど、
当時これが有れば苦労しなかっただろうにと思ったり。
Dr. GUI と COM イベント:第 2 部

過ぎ去りし日々に思いを馳せつつ。

思い出した。

MFC+ATL使ってるコントロールも見かけるけど意味不明(w
# MFC+ATL+STLとか誰が保守するの?みたいなのはさすがに無いと思うけど
MFC使うとサイズが巨大になるのに軽量なコンポーネント作成を意図している
ATL使うのは何を意図しているのかわかんない。
Doc/View使うようなSDI/MDIのアプリならそれもありだけど、
それならMFCで統一すりゃ良いんじゃないのかと。

次ページへ »

31 queries. HTML convert time: 1.628 sec. Powered by WordPress 2.8