一筋縄では行かない
今日は開発中のJava版AG-ムービーカッターにJNIを追加し、表示の拡大処理をネイティブコードで行わせてみた。今の所、2,3割は軽くなっているものの、まだ、重い。重い理由は、SIMD命令を使っていないからなのだが、その理由は、64Bit版ではMMX命令が使えないからだ。
« 2012年4月 | トップページ | 2012年6月 »
今日は開発中のJava版AG-ムービーカッターにJNIを追加し、表示の拡大処理をネイティブコードで行わせてみた。今の所、2,3割は軽くなっているものの、まだ、重い。重い理由は、SIMD命令を使っていないからなのだが、その理由は、64Bit版ではMMX命令が使えないからだ。
今はAG-ムービーカッターのJava版を開発していて、既にAGM形式動画の再生は出来ているのだが、動画プレイヤーとしては重い。なので、性能向上施策を色々と試してみているのだが、あまり軽くはならない。このため、そろそろJNI化を始める事にする。
昨日の記事の後半で、もうWindowsはメイン環境に出来ないなあ、と書いていたのだが、最近のMacOSXの話題を見てみようと、2ChにあるMountain Lionのスレッドを見てみた所、MacOSXもダメかもしれないと思えてきた。なので、消去法で、作者的にはLinuxしか残らない。
AG-ムービーカッターのJava版は既にAGM形式動画の再生は出来るようになっていて、性能向上用の最適化なんかを始めている。最終的にはAndroid版ではJNIを使う事になる筈なのだが、Ubuntu用にはネイティブ版も欲しいかも、と、思い始めているので作るかもしれない。
この二週間ほど、週末には2ChのWindows8スレッドからネタを貰っていたのだが、今週は大した話題は無い。新しいネタとしては、値段がWindows7よりも高くなる、という話はあるようなのだが、些細な事だ。作者が気になるのは、今後、プロシューマはどうするか、という事だ。
今日は何もしていなかったので、来週に向けて、現状のAG-ムービーカッターのJava版の性能を他の環境と比較したりしてみていたのだが、C++版のAG-ムービーカッターでWMV形式ファイルを再生するよりは、若干、軽い感じだ。DirectShowは重いのかもしれない。
今はAG-ムービーカッターのJava版開発フェーズなのだが、とりあえず、AGM形式ファイルの動画再生は可能になった。まだ重いのだが、YouTubeからキャプチャーした480x360程度の動画なら、Celeron1.3GHzのdynabookMX/33でも50%負荷で30FPS再生できている。
今はAG-ムービーカッターのJava版の開発フェーズなのだが、あまり集中していない事もあり、進捗は遅いのだが、基本処理は動かせた感じだ。進捗が遅い理由は、C++版からの単純移植をしている訳ではなくて、Mirror-DTCのJava版コードからの流用もしているためだ。
AG-ムービーカッターのJava版は、テスト環境なんかを作ったりしているので、最終形のコードという意味ではあまり進展は無いのだが、今日の時点で動画のコマ送り再生なんかは出来るようになっている。ネットに色々と気になる記事があるので、あまり作業が進まない。
今はAG-ムービーカッターのJava版の開発フェーズなのだが、とりあえず、今日の時点でAGM形式の動画ファイルから画像を静止画として表示することは出来るようになった。音声はまだなのだが、ここまで来れば問題は殆ど無いので、後半は、また、少し横道にそれた。
ここの所、時事ネタばかり書いていたのだが、今はAG-ムービーカッターのJava版の開発中で、既にAVIファイルからの読み出しルーチンは動いている。今は、その次段階として、AGM形式のデコードルーチンを移植中なのだが、Javaへの移植も二度目なので集中していない。
2ChのWindows8スレッドを見ていると、Windows8のデスクトップ環境からAero Glassを削除する、と、Building Windows8 (開発者ブログ)にあった、と、あったので、見てみると、本当にそんな事が書かれていた。で、この変更作業はRelease Preview版には間に合わないらしい。
今日は何もしていなかったので、昨日の続きでSplashtopのAndroid版を試してみようか、と、思ったのだが、有料版しか無かったのでヤメた。Google Play Storeにはインストール数とユーザーレビューがあったので見てみたのだが、インストール数は意外に少ない。
AG-ムービーカッターのJava版の開発は清々と進んでいるのだが、ブログネタにはならない。なので、今日はSplashtopを使ってみた。何故、今日、使ってみたのかというと、東芝製タブレットについて調べていて、フリー版のSplashtopが添付されているという事を知ったからだ。
今日もAG-ムービーカッターのJava版のコードを作っていたのだが、こういう作業は面白くないため、色々とネットを見たりしていたのだが、PC WatchにASUS Padの記事が出ていた。これも、Tegra3にAndroid4.0で東芝製の新タブレットと同じなのだが、値段は安い。
今は、AG-ムービーカッターのJava版を作るために、オリジナルのC++コードから、Javaコードに変更する作業を行っているのだが、ソースコードの中にある大物のAviFileというクラスファイルに対する機械的な変更作業は大体終わった。ここからは少し考える必要がある。
今日もAG-ムービーカッターのJava版の開発作業をしていたのだが、C++からJavaへの移植になるため、構造的な部分については考える必要が無いのだが、コードの表現方法については、Java用に変更していかなければならない。今日の所は、まず、形を整え、少し実装した。
今日からAG-ムービーカッターのJava版開発を始めた。今の所、Mirror-DTCクライアントと同様のトップフレームの中にViewを入れたので、プログラムを起動するとメニュー付きの黒い画面が表示される。実質的な開発はこれからで、まずは構造体を何とかしなければならない。
Mirror-DTC Ver1.2.2は月曜に作者のホームページにアップロードして、火曜には窓の杜にも転載されたのだが、今日、Vectorにも登録しておいた。Vectorには、去年の今頃、Ver1.1.0を登録してそのままにしてあったため、一年ぶりの更新、という事になる。
2ChのWindows8スレッドを見ていると、Microsoft Office Lab - Future Vision Montage (2019)、という動画へのリンクがあったので見てみた。この動画は三年前にアップされたモノなのだが、出て来るのは薄型タッチディスプレイデバイスだけで、コンピュータは出てこない。
日経新聞の記事によると、Windows RTのデスクトップ環境ではサードベンダーがアプリを提供出来ない仕様になっている事から、IE10と同等以上の高機能なブラウザを提供できないとして、MozillaがMSを批判したようだ。Googleもこの批判に賛同しているらしい。
来週くらいから、AG-ムービーカッターのAndroid Ready化の開発を行う事になるのだが、AG-ムービーカッター自体については、作者的には、普通の使い方をしている分には、現行版でも特に不満は無いため、不満点を作っておく意味もあり、ちょっと無茶な使い方をしてみた。
Mirror-DTC Ver1.2.2のリリースも終わり、次はAG-ムービーカッター、と、決めたのだが、例によって、今週は真面目に作業する気は無い。なので、今日は雑用をやったりしていたのだが、ここの所、仮想マシンを使う機会が増えたので、開発マシンのメモリを増設した。
Mirror-DTC Ver1.2.2のリリースが終わったので、次は何にしようか、と、思っているのだが、今年はAndroidに力を入れる事にしているため、次はAG-ムービーカッターのAndroid Ready化をしようか、と、思っている。普通のAndroidアプリはツマラナイのでPCと連携させる。
今日は、予定通り、Mirror-DTC Ver1.2.2をリリースしたのだが、このブログのリリース告知記事は短めだ。なので、今回のリリースは大したモノじゃ無い、という感じがするかもしれないのだが、作者のホームページにあるMirror-DTCの概要/紹介文は全面変更されている。
Ver1.2.2ではモバイルネットワークへの対応をより進め、動画視聴用にも十分なフレームレートが出せるようにしました。同時に遅延抑制モードは強化し、デスクトップ操作時には、より高い応答性が期待できるようになっています。Android版クライアントも同梱化しました。
今日はMirror-DTC Ver1.2.2の三回目の確認を行い、問題は出なかったのだが、久しぶりにWindows Vistaでの動作確認をするために、VirtualBoxに入れてあるVistaを立ち上げてみた所、更新プログラムのインストールに1時間かかった。なので、リリースは明日以降だ。
今日はMirror-DTC Ver1.2.2の配布パッケージについて、二回目のインストール/動作確認を行った。一つ問題が出たので修正したのだが、この問題は、元々、たまに出ていたのだが、頻度が少なく、クライアントがクラッシュするだけだったので、放っていたモノだった。
Mirror-DTCのVer1.2.2はGW明けにリリースする事にしているため、今日は配布パッケージを作り始めた。作業的には、バイナリをフォルダーに入れて、各種環境でインストール/動作確認を行ったのだが、1回目の今日は、細かいバグが3件見つかった。なので修正した。
Mirror-DTC Ver1.2.2にはAndroid版クライアントを同梱する事にしていて、そのβ版は既にMirror-DTCのホームページからダウンロード可能になっているのだが、リリース版では、β版に対するバグ修正と性能向上用の変更以外に、二つの機能追加が行われている。
Mirror-DTC Ver1.2.2では、現行版で相対的に弱くなっていたデータ転送の暗号強度を強くしたため、現行版よりも画像転送が少し重くなったのだが、今回、この変更を入れたのは、その他の部分の改良による軽量化の方が大きいからだ。相対的に、映像圧縮は軽くなった。
Mirror-DTCのVer1.2.2では、WiMAX回線でも、動画の30FPS再生を可能にするための仕組みを入れたのだが、実は、この仕組みの基本処理は現行バージョンにも入っている。今回の変更はその延長線上にあるのだが、この仕組みの実現処理にはバグがあったので修正した。