Javaに関する様々な情報をご紹介します。

Javaに関する様々な情報をご紹介します。
評価

0

jFrame内でのアプリの実行

初めて質問させていただきます。
動画再生ソフトを作っておりますが、コントロール画面と再生画面を
別のフレームで表示させる形で考えております。
再生部分でjmfを使っていたのですが、再生できない動画形式(mkvな
ど)ガあり、別の方法を考えております。
そこでご質問ですが、再生画面のFrame内でたとえばメディアプレーヤ
ーなどを実行することはできるのでしょうか。
もしくはswingアプリからメディアプレーヤーなどを直接コントロール
する方法(起動だけでなく、再生、停止など)などありましたら、ご
教授していただきたいと思います。
独学で勉強中のため、基本的なこともまだ理解できていないこともあ
ると思いますが、よろしくお願いいたします。

4

回答

4613

閲覧

4件の回答

評価

0

出来ないことは無いと思うけど実現するまでの労力と
制約を考えると現実的では無いかな。

Javaから他アプリ(例えばWindowsアプリ)などを制御することは通常では出来ません。
※但しIFなどが厳密に規定されておりライブラリなどが用意されている場合を除く。

上記を踏まえた上での制約付き&労力を伴えば出来ないことは無いかもしれないが、期待している結果が得られるかは呼び出し先のアプリなどに依存する。

・JavaからSWTやVB(VBSでも可)またはCなどを用いてWinAPIを使用してJFrame内に呼び出し先のアプリを起動する。
※呼び出し先のアプリのIFなどが分かればもっと的確に制御出来るかもしれない

再生・停止などまで呼び出し側で制御するとなるとそもそも呼び出し先のアプリがその制御を外部公開していないと無理。

評価

0

早速のご返事ありがとうございます。
というよりそもそもこの掲示板を使うのが初めてのため、ご回答い
ただいた方への返答方法がわかりません。
もし回答内容へ書くのが間違いであればご容赦いただき、ご指摘い
ただければありがたく思います。

想定している制御対象アプリはMEDIA PLAYER CLASSIC HOME CINEMA
というもので、なんとかMPC_API_LIBというAPIを探し出すことはで
きたのですが、このAPIを使って制御する方法がわかりません。
使い方などのリファレンスもついていないため、ネット上もいろい
ろ調べてみたのですが、必要な情報は見つからず書籍も適当なもの
は無いようです。

以前ICカードリーダーのfelicaのdllを組み込みアプリを作ったこ
とがありますのでjavaでdllを使うやり方は多少理解はできている
と思います。
リファレンスなどのない場合の使い方というある意味無茶な質問に
なってしまいますが、参考例など教えていただけるとありがたいの
ですが。
ご指摘の通り労力と制約を考えると現実的ではないようにも考えま
す。素直にjavaのみで作成できたら一番いいとは思っています。
JMF以外の選択肢などございましたら、ご教示いただきたいと思い
ます。
よろしくお願いいたします。

評価

0

ふむ。DLLが提供されているなら話が早い。
DLL使ったことあるってことはJNIとかから使ったことがあるのかな?

まぁそれはどっちでもいいけど…

提供されたDLLの使用法がわからない場合はね、
逆アセンブルとかを使うんだよ。

正確なソースをどこまで出せるかはツールなどにも
よるけどIFは定義などは大抵わかるはず。

ちなみに、私はちょっと気になったのでMPC_API_LIBを
逆アセンブルしてみた。で、結果は…

ありとあらゆるAPIが用意されているのでほぼJAVAから制御出来るなって感じでした。

※但し解析などは結構手間が掛かるかもね。
VBやVCなどの経験が無いと難しいかも。

評価

0

あああさまありがとうございます。
早速逆アセンブルをやってみました(とりあえずツールのダウンロ
ードから)。
うーーん。なぞのことばがずらり。
JNAライブラリを使ってdllのラッパークラスを作ればいいのかなと
想像してみたのですが...
VCはまったくわからず、VBもIDEでの開発で文法的には多少経験は
ありますが基本はわかっていません。

しかしこれからの解決のヒントをいただき、いろいろやってみる取
っ掛かりになりました。
時間を掛けて理解して行こうと思います。
すばやい返答にも感謝しております。

どうもありがとうございました。

質問から6ヶ月以上経過しているので、回答を書き込むことはできません。