スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« AGMPlayerの変更を始めた | トップページ | 再生も可能になった »

サムネイルは表示できた

今日は、Windows用AGMPlayerに一般動画の再生機能を追加していたのだが、とりあえず、サムネイル表示までは出来るようになった。再生処理では、JavaでJNIを使っているのがネックになって、専用スレッドの作成等が必要になるのだが、まあ、何とかなるだろう。

昨日書いた様に、作者的には、既にAG-ムービーカッターで一般動画の再生用ルーチンは開発済みなので、AGMPlayerでも、その処理ルーチンを使っている。

しかし、AG-ムービーカッターとAGMPlayerの大きな違いとして、AG-ムービーカッターはWindows用のネイティブコードで書かれているのに対して、AGMPlayerはJavaで書かれている、というのがある。

なので、AG-ムービーカッターの処理ルーチンをそのままAGMPlayerに持ってくる事は出来ないのだが、Windows用AGMPlayerではJNIを使っていて、更に、処理言語にはCではなく、C++を使っている。

つまり、このブログを頻繁に見ている人なら判る筈なのだが、作者はアプリ開発時には、それなりの処理ルーチンはC++のクラスに纏めてある訳なので、Windows用AGMPlayerでも、開発の初期段階から、そのC++クラスを使える設計にはしてあった訳だ。

と、いう事で、Windows用AGMPlayerでは、JNIインタフェースを持たせるだけで、AG-ムービーカッターに内蔵された機能は、大体は、使える訳だ。このため、動画のサムネイル表示なんかは、動画ファイルをオープンして、サムネイル画像位置までシークして、その動画画像を静止画として取り込めれば良い訳なので、AGMPlayerへの機能の追加は、比較的すんなりと行った訳だ。

しかし、AGMPlayerのメインルーチンはJavaで、実働ルーチンはC++になる訳なので、動画の再生、という事になると、C++側とJava側の同期処理が問題になってくるので、少し厄介になる。

しかしまあ、やれば出来る話ではある訳なので、明日には、動画再生も普通に出来る様になっている様な気はする。

ちなみに、次バージョンのWindows用AGMPlayerにはAGM/WMV形式へのエンコード機能も追加する、と、書いたのだが、AVI形式へのエンコード機能を追加する、とは書いていない。

これは書くのを省略した訳ではなくて、実際に実装しないつもりだ。

これは何故なのか、というと、WindowsPC上の動画をスマホ/タブレット/Mac/Ubuntuといった、他環境で見れる様にしたい場合には、AGM形式にエンコードすれば良く、AGM形式でエンコードしてあった動画をYouTubeなんかに投稿したい、という場合には、WMV形式にエンコードすれば良い訳なので、AGMPlayer的には、AVI形式は必須ではない訳だ。

そして、AVI形式へのエンコードというのは、DirectShowベースで行っているのだが、実は、再生ほど簡単には行えない。

作者的には、それ用の処理ルーチンは開発済みな訳なので、それをAGMPlayerに適用すれば、AVI形式へのエンコード機能の追加も出来ない話ではない。しかし、サポートしない方が楽である事は間違いない筈だ。

と、いう事で、上記の通り、AGMPlayer的には、AVI形式へのエンコードは必須ではないし、もしサポートしてしまうと、運用上のトラブルも増えそうな気がするので、実装作業が楽になる事もあり、AVI形式へのエンコード機能は実装しないつもりな訳だ。

= この記事に関連する公開中ソフト =

AmuseGraphics

AmuseGraphics

(2013/12/08追加)

« AGMPlayerの変更を始めた | トップページ | 再生も可能になった »

トラックバック

この記事のトラックバックURL:
http://app.cocolog-nifty.com/t/trackback/534482/57507582

この記事へのトラックバック一覧です: サムネイルは表示できた:

« AGMPlayerの変更を始めた | トップページ | 再生も可能になった »

2018年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 31      

広告

プライバシーポリシー

  • 当サイトでは、第三者配信による広告(Google Adsense)サービスを利用しています。

    Google を含む第三者配信事業者は、Cookie を使用して、ユーザーのウェブサイトでの閲覧履歴に基づく広告を配信します。 Google 広告 Cookie を使用することにより、Google や Google のパートナーは当サイトや他のサイトへのアクセス情報に基づく広告をユーザーに表示できます。

    収集された情報がGoogleによってどの様に使用されるか、収集される情報をユーザーが管理する方法については、以下のリンクを参照下さい。

    ポリシーと規約 - Google