スポンサーサイト

上記の広告は1ヶ月以上更新のないブログに表示されています。
新しい記事を書く事で広告が消せます。

web拍手 by FC2   

Skype Push to Talk

SkypePTTは更新されています。 こちらの記事

以前のスカイププッシュトークを一度リセットして、一からプッシュトークのみを実装したものを作りました。

ダウンロード

2010/08/20
マウスの右クリック、左クリック、中クリック(ホイール)に対応しました。

2010/03/20
現在、Skypeと接続ができるとCPUを大幅に使用してしまうバグがあります。修正しだいすぐにUPし直します。

修正ができました。作者の環境では問題なく使用できました。
コメントにて報告してくださった方、ありがとうございます。

続きはreadme.txtを丸コピです。

-----
SkypePushToTalk.exe
最終ビルド 2010/08/20
-----
制作:STERS
URL:http://stersblog.blog15.fc2.com/
制作ソフト:Microsoft Visual Basic 2005 Express Edition

転載、再配布、改造、逆コンパイルなど一切禁止とします。著作権は放棄していません。
SkypeAPIを使ったアプリケーションです。


【使い方】
1.Skypeに接続ボタンをおします。
2.Skype側で接続を許可してあげてください。
3.すぐ下のテキストボックスでキーを押す(※)と、そのキーに設定できます。
4.Ctrl Shift Altとの同時押しをする際には横のやつにチェックをします。
5.PushかSwitchか選べばすぐに使えます。
6.キー設定は保存を押すことで保存出きます。
7.開くを押すと勝手に保存したものを読み込みます。

Pushは押している間、マイクが通ります。
キーを離すとマイクがミュートになります。

Switchは押すたびにミュートのオン/オフを切り替えます。
こちらはSkypeデフォルトのショートカットキーにもあります。

※キーボード上のほぼすべてのキー及びマウスの右、左、真ん中に対応しています。


【その他】
前のSkypeあぷりを一から作り直したものです。
無駄な機能を全て省き、PushToTalkオンリーにしました。

キー設定ファイルはは同一フォルダ内に出来ると思いますが、もしかしたら違うフォルダへといってしまうかもしれませんw
作者の環境(※)では問題ありませんでした。

エラーや不具合によりファイルやフォルダ、Skype関係のデータが消えてしまっても責任は持てません><
自己責任での使用をお願いします。
もし、エラーや不具合に気付いたら、掲示板またはブログへとよろしくお願いします。


【更新ログ】
2010/08/20
報告のあった「マウスへの対応」を追加。
右クリック、左クリック、中クリック(ホイールをクリック)に対応しています。

2010/03/20
報告していただいた「接続後CPU使用率が50%になってしまう」バグを修正。

2010/03/04
以前までのSkypePTTもどき・・・?をリセットして、プッシュトークだけに用途を限定したものとして作成。
そして完成。プッシュトークの部分は流用できたので一日でできた。


【技術的な話】
このプログラムは、別のスレッドを一つ作り、そこでuser32のAPIであるGetKeyStateを呼び出して判定を行っています。
マウスのクリック判定には同じAPIを使用してクリックの状況を取得しています。
Skypeとの接続にはSKYPE4COMLibというCOMコンポーネント使っています。

CPUが50%になってしまうのは、別スレッドをウェイトも無しにずっと動かしていたからだと思います。
2010/03/20の修正では、別スレッドのループの頭で10msecのウェイトを入れるようにしました。
これにより、誰の環境でも使用率を占有するバグが直るかどうかはわかりません。
少なくとも作者の環境(※)では問題ありませんでした。

そして相変わらずメモリ使用量が多いような気がするのは.NETのせいなのか、私の書き方が悪いのだろうか・・・
詳しい方が居れば教えて欲しいです。

※作者の環境
Intel Core2Duo E8400 定格
4GB RAM(2GB x2)
WindowsXP SP3
Skype 4.2.0.169


web拍手 by FC2   

コメントの投稿


非公開コメント

コメント

skypeをPTTで使用したいと思い探しているところ、こちらを見つけて早速使わせていただきました。
PTTの機能はしっかり働いてくれているのですが、
[有効化]のボタンを押してskypeに接続した瞬間、
SkypePushToTalk.exeのCPU使用率が50%まで一気に上がってしまいます。
またメモリ使用率などは変化なしです。

環境は
OS:windows7 32bit
CPU:Core2Duo E8400 定格
です。

不具合として報告させていただきます。

----- | 2010/03/19 19:20

ご報告ありがとうございます。
先程、タスクマネージャを開きつつ確認したところ、私の環境でもCPU使用率が50%になっていました。

原因がわかり次第すぐに修正して再度UPいたします。
ご迷惑をおかけしてすみません。

STERS | 2010/03/20 02:08

不具合について報告させていただいた者です。
素早いご対応ありがとうございます。
おかげさまでCPU使用率も下がり快適に使用できています。
これからも使わせていただきます。ありがとうございました。

----- | 2010/03/21 00:24

大丈夫そうでなによりです。
やっぱり公式での実装が来て欲しいですね。

STERS | 2010/03/21 18:00

http://www.vector.co.jp/soft/winnt/net/se480329.html
こっちのほうが好くない?車輪の再発明か。
マウスのボタンにも対応してるし

----- | 2010/04/25 01:32

そうですねぇ。
僕のはただGetKeyStateで取得しているだけなのでゲームやソフトによっては認識されなかったり、マウスに設定ができなかったり...

いずれは誰かがより使いやすいタイプのものを作ってくれたり、公式で実装されたりするのではないかとずっと思ってました。
まあ、自分に合うやつを使うのがいいと思いますよ。

STERS | 2010/04/25 09:40

SA再開,クラン加入で,VCがSkypeでしたので非常に助かりました.
 自分のキーボードの打音>声の大きさ
なので,VentやTSのようにPTTが設定できず,いかがなものかと思ってました.
ありがとうございます.

そこで,一つお聞きしたいのですが,
"key.dat"をいじって
マウスの右クリックに適用させることは出来ないでしょうか?
下のコメで紹介されているのも右クリックだけがうまくいかず・・・・・・
可能でしたらお聞かせ下さい.

参考:Skype 4.1.0.179,XP SP3,AMD Athlon X2 4800+,MEM 1GBx2,GeForce GT8600(256MB)

------------------------------------------------
(9/11追記)
マウスの対応ありがとうございます。
御礼が遅くなり申し訳ございません。
昔から使ってるプッシュボタンでしたので、
おかげさまでとても快適にSkypeを利用できるようになりました。

らるぐふ | 2010/08/09 15:27

>らるぐふ さん
残念ながら右クリックへの登録はkey.datをいじってもできないです。
プログラムでキーボードの判定しかしてません。

マウスへの対応を追加しようと思うので、少しお待ちを・・・

STERS | 2010/08/10 22:23

win7Pro64bit版は対応していないのでしょうか?
接続を押すとエラーが出てしまいます。
エラーを無視して続行ボタンを押しても、機能が動作しません。
管理者権限や互換モード(WinXP SP3、Vista SP2等)を設定しても使用できませんでした。
また、スカイプを起動せずに接続を押しても同じ内容のエラーが出ます。
お忙しい中申し訳ありませんが対応お願いします。
以下エラー内容
CLSID {830690FC-BF2F-47A6-AC2D-330BCB402664}を含むコンポーネントのCOMクラスファクトリを取得中に、次のエラーが発生しました:80040154

ROT | 2010/08/27 21:53

>ROT さん

>win7Pro64bit版は対応していないのでしょうか?
ExpressEditionではAnyCPUとしてコンパイルがされてしまうそうです。
AnyCPU自体は64ビット環境での実行は可能なようです。ですがその後32ビットのDLLが呼ばれてエラーが出るらしいです。
これ自体の解決は現状の知識では無理かなと思います。

> CLSID {830690FC-BF2F-47A6-AC2D-330BCB402664}を含むコンポーネントのCOMクラスファクトリを取得中に、次のエラーが発生しました:80040154
調べましたら、http://voipcallrecording.com/skype_InteropServices_COMException こちらが出てきました。
1. uninstall Skype
2. download Skype
3. start installation
4. click Options button on the first Skype installation dialog (please see picture below for Skype v.4)
5. check if Extras Manager is choosen
6. click Install button to finish installation.
とあるように、Skypeをアンインストールし再度インストール。その際にオプションでExtrasManagerというものを追加してあげればいいようです。

STERS | 2010/08/28 01:25

ExtrasManagerをインストールしてみましたが同じエラーがでて接続できませんでした・・・
64bitでの使用はあきらめようと思います。
ありがとうございました。

ROT | 2010/08/29 14:52

>ROTさん
再度調べ直し、こちらでの動作確認をしてみたところ、無事に動作しました。
新しい記事を参照してください。

STERS | 2011/06/06 22:36

STERS's Development Room

STERSの開発室っぽい何か。


プロフィール

Name:STERS
Unity3D/C#/PHP/js/C++/VB
などを勉強中です

[STERS's Room]
[ファイル置き場]

カテゴリー
最近の記事
最近のコメント
カレンダー
08 ≪│2017/09│≫ 10
- - - - - 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 29 30
RSSリンクの表示
ブログ内Google検索
Google
上記広告は1ヶ月以上更新のないブログに表示されています。新しい記事を書くことで広告を消せます。