フリー版も作った
AmuseGraphicsのVer1.1.0のバージョンアップ開発については、コーディング作業は、一応、完了し、後はドキュメントやらホームページを作成して配布パッケージをアップすれば良い段階になった。で、付属アプリのフリー版も作ったのだが、機能制限は結構緩くした。
« 2010年2月 | トップページ | 2010年4月 »
AmuseGraphicsのVer1.1.0のバージョンアップ開発については、コーディング作業は、一応、完了し、後はドキュメントやらホームページを作成して配布パッケージをアップすれば良い段階になった。で、付属アプリのフリー版も作ったのだが、機能制限は結構緩くした。
今日は書くことがあまり無いので、発表があったAuのAndroid端末の感想を書いてみる。とりあえず、紹介記事を見た瞬間、「売れて欲しくは無いんだなあ」と、感じた。普通に考えて、売れる製品ではないからだ。AuとしてはAndroid端末には売れてもらっては困るのだろう。
AmuseGraphicsのVer1.1.0のリリースに向けて最終調整を行なっているが、今日は本体のAVI/AGM/スライドショーAVI作成機能を変更して付属アプリと同様のアーキテクチャにした。また、オプションメニューの二つの項目を移動し、スライドショーのメニュー項目を減らした。
AG-ムービーカッターでAGM形式の重い動画を再生していると、メディアプレイヤーでの動画再生では見かけないギクシャクしたものになった。重い動画というのは、画面サイズが大きく、フレームレートも高く、画面変化も大きいものなのだが、少し見づらいので修正した。
AmuseGraphics本体にあるAVI形式動画ファイルの出力機能では、現行バージョンでもオーディオ出力の音質を指定できるが、動作確認をしてみると、サンプリング周波数に16KHzを指定すると正しく動作しない。なので、面倒なのだが、今回作成したルーチンと入れ替える。
WebカメラレコーダーにAGM形式出力を入れる作業も終わり、AmuseGraphicsのVer1.1.0はほぼ完成した。付属アプリにAG-ムービーカッターが加わり、AGM形式での無劣化動画編集と再エンコードが行なえるようになったのは大きい。残すところは、仕上げのみだ。
今日はWebカメラレコーダーでAGM形式出力を可能にするための変更を行ったのだが、元々、トップ画面でコーデック設定等を行なっていたので、AGM形式設定を追加するのには無理があった。なので、コーデック設定は別画面に持たせてトップ画面はすっきりとさせた。
昨日の問題は何とか原因が判明して修正できたのだが、実行コードに問題があった訳ではなかった。オブジェクトのメモリアロケーション自体に問題があった。なので、コンパイラのバグかと思って焦ったのだが、コーディング的な問題を見つけられたので、事なきを得た。
AmuseGraphics本体の動作確認をしていると、アプリの終了時にベル音が鳴るようになっていた。色々と弄っているとデストラクタでオブジェクトをDeleteしている時にヒープ破壊が見つかっているようなのだが、何もしなくても現象は発生するのでコンストラクタの問題だろうか?
AmuseGraphicsのVer1.1.0では本体の変更はあまり無いのだが、動画キャプチャーダイアログの処理コードについては、ほぽ全変更になる。AGM形式動画の読み込みに対応するには従来ルーチンでは支障があるためなのだが、ついでにWMVの取り込みも高速化する。
AmuseGraphicsのVer1.1.0のリリースに向けてのバージョンアップ開発を行なってきたのだが、メインとなったのは新規開発したAG-ムービーカッターだ。それに合わせて既存の付属ユーティリティと本体も変更したのだが、本体の変更だけは微妙に扱いが異なった。
AmuseGraphicsのフリー版だが、やっぱり、本体については提供しないことにした。フリー版とシェアウェア版の差別化が困難だからだ。と、なると、AmuseGraphicsは今まで通りシェアウェア版のみとなるのだが、付属アプリについてはフリー版をホームページで提供する。
AG-ムービーカッターはデスクトップレコーダーから出力されるAGM形式ファイルや通常のMPG等の動画ファイルの指定領域を再エンコードして出力できる。しかし、エンコードが始まるとCPU負荷がかかってファンが煩くなる。なので、性能制限が出来る機能を追加した。
AG-ムービーカッターにAmuseGraphics動画形式(AGM形式)での出力機能を追加した。で、手持ち動画をAGM形式で出力してから無劣化切り出しを行なってみたのだが、ディスクネックで、切り出しは少し遅かった。まあ、エンコードするよりは何倍も速かったのだが。
今日からAmuseGraphics本体の変更作業を始めたのだが、デスクトップレコーダーが出力するAmuseGraphics動画形式ファイルを読み込めないのは問題なので、動画キャプチャー機能にも手を入れることにした。なので、本体の変更量もそれなりに多くなってしまった。
今日はAG-ムービーカッターがらみでオーディオ周りのルーチンを少し変更した。デスクトップレコーダーやWebカメラレコーダーではSampleGrabberのメディアタイプを指定しておくとそのメディアタイプに従った出力が得られたが、ファイルとの接続では機能しなかったからだ。
AmuseGraphicsのVer1.1.0リリースに向けての作業は最終段階に入ってきているのだが、作業内容を書いてみても仕方ない。なので、今日は、次バージョン以降で導入するかもしれない並列エンコードの可能性について書いて見る。
AG-ムービーカッターには全画面表示機能は入れないと書いていたのだが、やっぱり入れてしまった。デスクトップレコーダーでは全画面キャプチャーが行なえるのに、それをフルサイズで表示できないというのは、やはり問題だと思えたからだ。少し手抜きしているのだが。
AmuseGraphicsのVer1.1.0では従来のシェアウェア版に加えて機能制限のあるフリー版も作成するのだが、メインテナンスの都合からソースコードは共通にしておきたい。また、フリー版からシェアウェア版へのアップグレードもスムーズに行なえるようにしておきたい。
AmuseGraphicsのVer1.1.0用に作成した編集ユーティリティに名前を付けた。付属アプリに凝った名前は不要なので、「AG-ムービーカッター」にしておいた。「AG-」を頭に付けると、一般名でもアプリ名に出来てしまうのは有難い。これからもAG-XXは増えるかもしれない。
AmuseGraphicsのVer1.1.0では動画編集ユーティリティの追加とWebカメラレコーダー/デスクトップレコーダーの改良を行なったが、AmuseGraphics本体については、まだ手付かずだった。基本的な機能変更は無いのだが、DirectShow関連の変更と部分的な高速化は行なう。
デスクトップレコーダーのAVIファイル出力でも1280x1024で100FPS近い性能が出るようになった。普通はこれで十分なので、後は細かい部分の作り込みになるのだが、AmuseGraphicsの知名度は低い。なので、Ver1.1.0ではフリー版もリリースしようかと思っている。
デスクトップレコーダーからのバッファリング出力のAVIファイル化は音声も含めて可能になり、編集ユーティリティで普通に再生できるようになった。NULLフレームにも対応させたので、フレーム落ち時の時間ズレも発生しなくなった。ただし、まだ遅い。
デスクトップレコーダーのバッファリング出力をAVIファイルもどきに出力して編集ユーティリティで扱えるようにする作業を行なっているが、今日のところは、デスクトップレコーダーの出力ファイルを編集ユーティリティで見れるようにした。まだ未実装の部分もあるのだが。
デスクトップレコーダーのバッファリングモードの出力ファイルにキーフレームを入れて見たが、さほど性能劣化もなく、問題はなさそうだ。しかし、まだAVIファイル形式にはしていない。AVIファイル形式での出力ではディスクアクセス処理の最適化が必要になるかもしれない。
デスクトップレコーダーのバッファリングモードに手を入れようとしているのだが、現状のコードは性能を重視したこともあり、ストレートに記述されている。このため、見通しが良くない。また、オーディオ系についても変更が必要だった。なので、今日はコードを少し整理した。
デスクトップレコーダーの変更中だが、今日は、Webカメラレコーダーと同じく、VCMの詳細設定と音声用コーデックのメディアタイプ指定を可能にした。で、オリジナル形式のファイル出力についても準備を始めたのだが、バッファリングモードは残すことになるかもしれない。
今日からデスクトップレコーダーの改造に取り掛かっているのだが、とりあえず、Webカメラレコーダーと同様に、エンコード処理系の構造変更を行なうことにした。キャプチャー系とエンコード系を分離しておくと、色々と融通が効きそうだからだ。
今日はデスクトップレコーダーの改造に入れるかと思っていたのだが、Webカメラレコーダーの改良を継続することになった。キャプチャーとエンコードを分離したメリットを生かすためにフレームレート制限を可能にしたのだが、同時にオーディオ圧縮の詳細指定機能もつけた。
AmuseGraphicsのバージョンアップ開発の一環で、Webカメラレコーダーの変更を行なったのだが、見た目は殆ど変わらない。しかし、内部構造は全面的に変更した。その結果、プレビューと録画の切り替えはスムーズになり、録画日時のテロップも入れられるようになった。
AmuseGraphicsのVer1.1.0では目玉になるのは編集ユーティリティの追加なのだが、編集ユーティリティ用に作成したSampleGrabberを使ったデータ採取と独立グラフを使ったエンコードルーチンはWebカメラレコーダーの改善にも有用なので、今日はその適用を行なった。