JMF

2008年6月18日 (水)

プレビュー画面が出た!

カメラのプレビュー画面が出ました!happy01

プレビュー画面がすぐに消えてしまっていた原因はメインスレッドで JNI ライブラリをロードして JNI_OnLoad 関数内で CoInitializeEx を呼び出していたことでした。

CoInitializeEx はスレッド毎に呼び出す必要があるため、メインスレッドではなく AWT イベントディスパッチスレッドで呼び出すように改修したところプレビュー画面が消えずに表示されたままになりましたhappy02

しかし、また別の問題が…sweat02

今度はプレビュー画面上でタップしても MouseEvent が発生しない…orz

| | コメント (0) | トラックバック (0)

2008年6月17日 (火)

静止画の撮影に成功!しかし…

ひたすら DirectShow の JNI ラッパを実装して「Advanced/W-ZERO3 [es]でカメラアプリを作ろう Part2」のコードをほとんどそのまま Java でコーディングしたサンプルプログラムが動くようになりましたhappy02

ウィンドウ上でクリックすると静止画の撮影も出来るようになりましたが、プレビュー画面が一瞬しか表示されません…orz

具体的には画面左上に QVGA サイズでプレビュー画面が表示されたかと思うと一瞬でサイズが拡大して行きホワイトアウトしてしまいますsweat02

どこがマズイのかさっぱりわからん…bearing

| | コメント (0) | トラックバック (0)

2008年6月16日 (月)

JMF のソースコードは入手不可能!?

Mysaifu JVM 用 JMF(Java Media Framework)の実装を進めているんですが、JMF のソースを見たほうが早いと思い調べてみたところ以下のページを発見!happy01

Sun Community Source Licensing (SCSL) - Java Media Framework API (JMF)

早速アカウントを登録してログインしてみましたがダウンロードのリンクが出現しませんangry

ぐぐってみてもダウンロードできそうな情報は入手できず…orz

どうしたもんか…shock

| | コメント (0) | トラックバック (0)

2008年6月11日 (水)

Mysaifu JVM 用 JMF を作成する - 其ノ壱

Java SE としては既に廃れてしまっている感のある JMF(Java Media Framework)ですが、Mysaifu JVM で使えるようになれば W-ZERO3 を無線 Web カメラに出来るんじゃまいか?

というわけで今度は DirectShow を使って Mysaifu JVM 用の JMF を作成します。

とりあえず DirectShow  関係のページ。

今のところ Windows Mobile 向けの DirectShow は Windows 版と比べて以下の制限があるのがわかっています。

  1. ISampleGrabber が存在しない。
  2. IBasicVideo::GetCurrentImage() ではカメラの映像をキャプチャできない。

簡潔に言うと、カメラの映像をキャプチャするには自前でフィルタを別途作成する必要があるってことです orz

JMF の実装に関しては、DirectShow は COM なので、JNI でひたすら COM を叩くコードを書いてます。

そういえば Java で COM を叩くライブラリがあったな~、と思ってググってみたらありました。

JCom (Java-COM Bridge)

コードを見てみるとほとんど同じことをやってる…orz

なら JCom を Windows Mobile に移植したほうが早いかな~と思いきや、よくよくコードを見てみると IDispatch クラスを継承したクラスしか CoCreateInstance 出来ないというおかしな仕様になっていたので使うのを止めました。

こつこつ実装するしかないですなcatface

| | コメント (0) | トラックバック (0)

その他のカテゴリー

CeGCC | Delphi | DirectShow | iPhone | Java | JMF | Mac | Mysaifu JVM | NetBeans | onig4j | Ruby | SQLite | W-ZERO3 | Windows Mobile | ワンセグ | 開発