スポンサーリンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« Windows8/RTには陰があるらしい | トップページ | 自業自得なのだが »

少し作り始めた

今はAG-ムービーカッターのJava版の開発フェーズで、AGM形式動画の再生は出来ている。次ステップとしては、主要部分のJNI化を計画しているのだが、その前に、Ubuntu用のネイティブ版も作ろうとしていて、やっと、少し作り始めた所だ。

JavaのJNI化よりも前に、Ubuntu用のネイティブ版を作ろうとしている理由は、例によって、やれることはやらない、という、作者の行動パターンに沿っているためだ。

つまり、JNI化については、作者的には、やる気になれば何時でもできるため、やり方が良く判っていないUbuntu用のネイティブ版開発を先にやっている訳なのだが、今回のJNI化の目的は、性能向上にあるため、Java+JNIの性能がネイティブ版と比べてどの程度にできるのか、という評価環境を構築する意味からも、真面目にJNIを作るよりも前に、ネイティブ版の開発が必要になる訳だ。

ネイティブ版があれば、ワザワザ、Java版を作る必要もなかろう、と、思う人もいるかもしれないのだが、ネイティブ版というのは、動作環境が限られる。例えば、今作ろうとしているネイティブ版はGTKを使ったUbuntu12.04用なので、多くのLinux環境では動作する筈なのだが、MacOSXでは動作しないし、当然の事ながら、Androidでも動作しない。

と、言うことで、今日は、AG-ムービーカッター用のソースコードを作り始めたのだが、まずは、メインウインドウを作成し、それにメニューと描画領域を追加した段階だ。

で、ネイティブ版はJavaのJNI化用の性能比較対象とするつもりなので、機能的な詳細については後回しにして、まずは、AGM形式動画の再生を可能にする事になる筈なのだが、AG-ムービーカッターの役割には、AGM形式動画の再生ばかりではなくて、AGM形式動画をよりメジャーなコーデックを使って再エンコードする、というのもある。

なので、AGM形式動画の再生が可能になったら、次には、Ubuntu上で、別のコーデックを使って再エンコードできるようにしたいのだが、Windowsの場合には、WMVがOS標準のAPIで使えたのに対して、Ubuntuでは当然WMVは使えない。

このため、WebM等のオープンソースなソースコードを使うか、良いコーデックライブラリがあれば、それを使う事になると思われるのだが、その場合には、GPLによる制限が色々と出てくるかもしれないので、実装方法を検討しなければならなくなるかもしれない。

ちなみに、今日は、gtkmmの標準的なやり方でメニューを表示させてみたのだが、Ubuntu12.04上では、所謂、グローバルメニューが表示された。

作者的には、10年以上前から、Macも使っているため、メニューが画面の最上部に表示される事には大して違和感は無いのだが、今の開発マシンの解像度は1920x1080あるので、画面の最上部にメニューが表示されると、マウスカーソルの移動が面倒ではある。

なので、ネットで調べてみた所、プログラム起動時に環境変数を指定してやれば、グローバルメニューを禁止できる事が判った。

まあ、Ubuntuを真面目に使っている人なら、今更なのだろうが、テスト時には、通常時よりも頻繁にメニューにアクセスする事になるため、今はグローバルメニューを禁止してプログラムを立ち上げるようにしている。

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

AG-ムービーカッター for Ubuntu 12.04LTS

AG-ムービーカッター for Ubuntu12.04LTS

(2013/12/07追加)

« Windows8/RTには陰があるらしい | トップページ | 自業自得なのだが »

トラックバック


この記事へのトラックバック一覧です: 少し作り始めた:

« Windows8/RTには陰があるらしい | トップページ | 自業自得なのだが »

2020年4月
      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    

広告

プライバシーポリシー

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

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

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

    ポリシーと規約 - Google