スポンサード リンク

T.Ishii's Software Library

HTML5 レトロ風ゲーム館

無料ブログはココログ

« マルチスレッド化と少々 | トップページ | 次はVer1.3.2でMac版から »

AGM4形式の開発はなし

今は、Windows用AmuseGraphicsの開発フェーズで、まず、現行のAGM形式用エンコーダー/デコーダーを改良した。一般動画との相互変換を鑑みれば、まだ、改良の余地はあるのだが、それをやると互換性を無くすので、今回の改良はここまでにする。

少し前に書いた様に、AGM形式動画というのは、AG-デスクトップレコーダーの初版開発時に、バッファリングエンコード用に開発したコーデックが、その起源になっている。

で、AG-デスクトップレコーダーというのは、今では累計100万ダウンロード以上はされているソフトになっているのだが、その初版を開発してリリースした頃には、シェアウェアのAmuseGraphicsに付属させていたバイナリしか無かった事もあり、全くと言って良いほど、ダウンロードされないソフトだった訳だ。

そして、上記の様な状況になる事は、とりあえず、当時の作者的にも予想はできていたので、初版のAG-デスクトップレコーダー開発時には、そのバッファリングエンコード用コーデックについて、汎用性だとか将来性なんかを真面目に考えていたか、というと、考えてはいなかった訳だ。

その後、バッファリングエンコードというのは、性能的には良い方法だったのだが、使い勝手的には不便な方法だったので、バッファリングエンコード並みの性能でリアルタイムエンコード可能にするために、前述のコーデックをベースに、AVI形式をコンテナとする動画形式を新たに開発した。

これが、AGM形式動画の初版という事になるのだが、この時には、現行のAGM2-YV12/RGB相当の形式しかなかった。

で、AGM2-YV12/RGB形式というのは、単純な形式なので、圧縮用のCPU負荷は軽いのだが、圧縮率は低いので、長時間録画には向かなかった訳だ。

なので、その後、Motion-JPEG相当の使い方を想定してAGM2-DCT形式を追加したのだが、それでも、MPEG2やWMVなんかと比べると画質を保ちつつ圧縮率を上げるのは困難だったので、AGM2-DCT+形式を追加する事になった。

ただし、このAGM2-DCT+形式の開発時に、別形式にも適用可能な様々な圧縮率向上用アイテムも開発した。なので、従来形式のAGM2-XXXにも、高圧縮オプションを追加したのだが、実際の所、このオプションを適用すると、それ以前のデコーダーではデコードできない形式でデータは出力される。

なので、高圧縮オプションが指定された場合、YV12/RGB/DCT/DCT+形式の接頭語としては、AGM2ではなく、AGM3を使う格好になっている訳だ。

と、言う事なので、AGM形式というのは、過去にも、互換性を切り捨てて、AGM2からAGM3に発展した事があるのだが、通常、AGM3形式の圧縮率はAGM2形式よりも高くなるのだが、エンコード負荷はAGM3形式よりもAGM2形式の方が低く抑えられる。

なので、AGM3形式をリリースしたにも関わらず、AG-デスクトップレコーダーとAG-ムービーカッターでは、未だに、AGM2形式でのエンコードもサポートしている訳だ。

と、言う事なので、ここで、更にAGM4形式を開発したとしても、既に広まってしまっているAGM2/AGM3形式動画のサポートも必要である事を鑑みれば、それは、追加、という形にする必要がある。

つまり、作者的にも、ユーザー的にも、折角、新しい、よりすっきりとした新形式がリリースされたとしても、少なくとも数年間は、現状以上に混沌とした状況に耐える必要が生じる訳だ。

と、言う事で、インテルのX86というCPUアーキテクチャは、その後のRISCアーキテクチャのCPU群と比べると、劣る、と、言われつつ、互換性を鑑みて、40年くらい、基本的には、そのまま進化してきたのだが、AGM形式も似た様な感じになるかもしれない。

つまり、今回、互換性を損なう事なく、内部構造は大幅に変更し、AGM-DCT+以外では、エンコード/デコード性能を大幅に向上させ、AGM-DCT+ではエンコード画質を向上させたのだが、これからも、AGM形式というのは、X86アーキテクチャの様に、本質的な問題を抱えつつも、それを実装でカバーして、進化させていく事になるのかもしれない。

ちなみに、AGM3/AGM2があるのならAGM1もあるだろう、と、思った人は正しいのだが、「ローマは一日にして成らず」だった訳だ。

つまり、AGM2形式というのは、もう何年も使われ続けている形式になるのだが、その形式が最初から完成形で出てきたのか、というと、そういう事はなく、それ以前に、より完成度が低いAGM1形式というのが存在した。

しかし、その形式が広く使われる前に、作者的には、それを改良したAGM2形式をリリースしたので、このAGM1形式については、黒歴史にした訳だ。

つまり、AGM1形式というのは、確かに存在はしたのだが、その存在期間は短く、広く使われる事も無かったので、今現在のAmuseGraphicsファミリーソフトではサポートしていない。

なので、AGM1形式というのは、今となっては、存在しなかったかのような扱いになっている訳だ。

« マルチスレッド化と少々 | トップページ | 次はVer1.3.2でMac版から »

トラックバック

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

この記事へのトラックバック一覧です: AGM4形式の開発はなし:

« マルチスレッド化と少々 | トップページ | 次はVer1.3.2でMac版から »

2018年9月
            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