KeyPlayer ver.1.12
5ヶ月ぶりのマイナーアップデートです。
■KeyPlayerとは(Readme.txtより)
ウィンドウを切り替える事なく、キーボードショートカットだけで操作できる「テープ起こし専用メディアプレイヤー」です。mp3,wav,wma,avi,mpeg,wmvなど標準的な音声/動画ファイルに対応しています。
また、再生速度も調節できます。
というつもりで作ったソフトですが、予想外に
・画面の見えない視覚障害者
・フルスクリーン状態からマウスに手を戻したくないアニオタ
から反響がありました。
■ダウンロード
・KeyPlayer ver.1.12
・SourceCode(VisualStudio2005pro+C#2.0)
・archive
verctorも数日すれば更新されるはず。
■変更点
・フルスクリーンの時も、Ctrl+Shiftなしでキー操作が使える様に修正
具体的には
キーを押した後にこんな処理があるんだけど、フルスクリーンの時に立つフラグ axWMP.fullScreen の部分を1行だけ追加しただけ。
if(
(
(keyFlags.Contains(Keys.LControlKey)||keyFlags.Contains(Keys.RControlKey))
&&(keyFlags.Contains(Keys.LShiftKey)||keyFlags.Contains(Keys.RShiftKey))
)//Ctrl+Shift同時押し
||ActiveForm==this//もしくはフォーム自体がアクティブの時
||axWMP.fullScreen//もしくはフルスクリーンの時
)
{
//キー操作に応じて戻る/進むの処理
}
フルスクリーンの時にキー操作すると「ポン」という音がしてしまうけど、ちょっと修正方法が思い浮かばないのでパス。
あとは、再生速度もキーで一発調整したいけど、数字キーに割り当てるとすると5は1.5倍なのか0.5倍なのか…
あるいは+, -か↑↓か?
どうもしっくりこないのでもう少し寝かせておく。

KeyPlayerを議事録起こしに使わせていただきました。
pause/start、±2秒、±5秒という機能が心地よく、おかげでさほど苦労することもなく作業が出来ました。
この作業中、1点だけ気になる動作が出てきました。
それは、pause/startをさせるための
[Ctrl]+[Shift]+[Space]キー割り当てです。
私は日本語処理にATOKを使っているのですが、ATOKとIMEの切り替えが[Ctrl][Shift]であるため、テキストウィンドウで
議事録を書いている最中に、Pauseをしようとすると、
日本語処理がIMEになってしまうのです。
できましたら他のキーに割り当てていただけると助かります。
ご検討いただければ幸いです。
はじめまして。
グローバルキーフックについて調べていてこちらに辿り着いたのですが、公開されていますソリューションをVisualC# ExpressEdition 2005で起動すると、
「このプロジェクトの種類(vdproj)のアプリケーションがインストールされていることを確認してください。」
というエラーメッセージが起動時に出て、とりあえず起動した後にデバッグ開始でプログラムを起動してもキーフックされませんでした。
ExpressEditionではキーフックさせることが出来ないのでしょうか・・・
tabatatoさん:
現在キーボード割り当てを変更出来るバージョンを開発中です。もう少々お待ち下さいませ…
saverさん:
実は私の環境でも、VisualStudio上でデバッグ起動した場合はキーフックが動きません。exeファイルに書き出して、exeファイルから起動しないとキーフックは働かない様です。
そのためにTraceForm.csというデバッグ用ウィンドウを作成しました。Debugビルドのフォルダの中のkeyplayer.exeを確認してみて下さい。
返信ありがとうございます。
こちらでも書き込みの後、何かのタイミングでたまたまexeファイルを直接起動してフックされた事を確認しました。
なのですが、自分で書いたコードではフックされなくて、何が違うのかよく分からないで居ます。
コードを記述する以外に何か設定しなければいけないことなどはありますでしょうか?
ちなみにフォームデザイナでkeybordHookのコンポーネントは追加しています。
よろしくお願いします。
前回から少し間が空いてしまったのですが、再びキーフックに挑戦してみようと前までのコードそのままで実行してみた所、何故か今回はキーフックされました。
前回、何故キーフックされなかったのかさっぱり分かりませんが、解決してしまいました(汗)
お騒がせしました。 m(_ _)m