6: 2005-06-30 (木) 17:21:51 |
7: 2009-11-17 (火) 12:07:40 |
| --汎用圧縮フォーマットであることを追及する。特定の対象にのみ強いフォーマットにはならないようにする。 | | --汎用圧縮フォーマットであることを追及する。特定の対象にのみ強いフォーマットにはならないようにする。 |
| --展開に必要なリソースに配慮する。tekフォーマットの意図するところは、GIFやTIFなどの代用的なものであり、アーカイバのような書庫管理ではない。つまり展開速度は十分に速くなくてはならないし、展開時に大量のワークエリアが必要であったりしてもいけない(もし展開のためのリソースが多ければ、その画像やデータなどを直接閲覧できない場合が発生してしまう)。もちろんtekは画像ファイル限定ではなく、テキストも実行バイナリも各アプリのセーブデータも、その他のなんにでも適用可能で、一様に利益をもたらす。 | | --展開に必要なリソースに配慮する。tekフォーマットの意図するところは、GIFやTIFなどの代用的なものであり、アーカイバのような書庫管理ではない。つまり展開速度は十分に速くなくてはならないし、展開時に大量のワークエリアが必要であったりしてもいけない(もし展開のためのリソースが多ければ、その画像やデータなどを直接閲覧できない場合が発生してしまう)。もちろんtekは画像ファイル限定ではなく、テキストも実行バイナリも各アプリのセーブデータも、その他のなんにでも適用可能で、一様に利益をもたらす。 |
- | ---なおアーカイブ用途としては、sarという形式を提唱している(sarはtarのような無圧縮規格であるがもちろんtekを適用してもよく、実際sarファイルのほとんど全てはtekが掛かった状態で扱われている)。 参考→[[OSASK:why_sar]] | + | ---なおアーカイブ用途としては、sarという形式を提唱している(sarはtarのような無圧縮規格であるがもちろんtekを適用してもよく、実際sarファイルのほとんど全てはtekが掛かった状態で扱われている)。 参考→[[why_sar]] |
| --非常に著名な圧縮形式では、圧縮を明示的に解かなくても内容を自由に閲覧できるツールが開発されているが、tekはそういう利用を最初から前提にして、この分野でのデファクトスタンダードなフォーマットになるのを目指している。圧縮しても拡張子を変えないでよい(=それくらい冗長なシグネチャがある)というのもそのためである。OSASKのようにOSレベルでの自動展開サポートが普及するか、それが無理なOSでは各アプリがファイルオープンの際に先頭16バイトをチェックし、tekであれば展開した後に扱う機能が普及してほしいと思っている。 | | --非常に著名な圧縮形式では、圧縮を明示的に解かなくても内容を自由に閲覧できるツールが開発されているが、tekはそういう利用を最初から前提にして、この分野でのデファクトスタンダードなフォーマットになるのを目指している。圧縮しても拡張子を変えないでよい(=それくらい冗長なシグネチャがある)というのもそのためである。OSASKのようにOSレベルでの自動展開サポートが普及するか、それが無理なOSでは各アプリがファイルオープンの際に先頭16バイトをチェックし、tekであれば展開した後に扱う機能が普及してほしいと思っている。 |
| --この流れにより、現在のように多種多様な形式が乱立するのではなく、シンプルなフォーマットを(必要に応じて)共通の汎用アルゴリズムで圧縮する、という流れになればと思う。もちろんtek圧縮は完璧ではないし、対象によってはより圧縮率の高いものやより高速に展開できるものもあるだろうが、現状ではtekに劣るものがまだたくさんあるというのも事実である。tekに劣る形式が徐々にフェードアウトしてtekに一本化されれば、展開ルーチンの最適化はさらに進むであろうし、もしかしたらJPEGやMPEGのようにデコード支援用のハードウェアが開発されるかもしれない(tekの展開アルゴリズムはワークエリアが少なくて済むので、ハードウェア化もしやすいかもしれない)。 | | --この流れにより、現在のように多種多様な形式が乱立するのではなく、シンプルなフォーマットを(必要に応じて)共通の汎用アルゴリズムで圧縮する、という流れになればと思う。もちろんtek圧縮は完璧ではないし、対象によってはより圧縮率の高いものやより高速に展開できるものもあるだろうが、現状ではtekに劣るものがまだたくさんあるというのも事実である。tekに劣る形式が徐々にフェードアウトしてtekに一本化されれば、展開ルーチンの最適化はさらに進むであろうし、もしかしたらJPEGやMPEGのようにデコード支援用のハードウェアが開発されるかもしれない(tekの展開アルゴリズムはワークエリアが少なくて済むので、ハードウェア化もしやすいかもしれない)。 |
| |paqar |RIGHT:100.0|RIGHT:100.0|RIGHT:100.0|RIGHT:100.0|RIGHT:159.3| | | |paqar |RIGHT:100.0|RIGHT:100.0|RIGHT:100.0|RIGHT:100.0|RIGHT:159.3| |
| | | |
- | --tek5については、[[OSASK:why_sar]]にも圧縮率比較データがあります。 | + | --tek5については、[[why_sar]]にも圧縮率比較データがあります。 |
- | --さらにテスト:[[tek/dump]] | + | --さらにテスト:[[Z:tek/dump]] |
| | | |
| -展開速度 | | -展開速度 |
| -ECCレコード・リカバリーレコード(エラーチェック&修復機能)のサポートがまだできてない | | -ECCレコード・リカバリーレコード(エラーチェック&修復機能)のサポートがまだできてない |
| -フレーズモードのサポートができてない | | -フレーズモードのサポートができてない |
- | --これができると、たとえば[[OSASK:tek1/comp]]の「おまけ」にある minna.sar の圧縮率が9%くらいよくなる。tek5のbim2bincも136.5→132.8と3%ほど改善する。 | + | --これができると、たとえば[[tek1/comp]]の「おまけ」にある minna.sar の圧縮率が9%くらいよくなる。tek5のbim2bincも136.5→132.8と3%ほど改善する。 |
| -差分モード(補助バッファ)のサポートができてない | | -差分モード(補助バッファ)のサポートができてない |
| --これができると、たとえばこめんと欄の http://www.maximumcompression.com/data/bmp.php の圧縮率が、5%くらいよくなる。 | | --これができると、たとえばこめんと欄の http://www.maximumcompression.com/data/bmp.php の圧縮率が、5%くらいよくなる。 |
| -↑過去にそこのサンプルを使おうと思いましたが、比較のテストデータがまともに入手できたためしがないです。たとえばtextのサンプルを例にとりますが、ページの説明ではサイズが[1344739, 586960, 2988578]のはずなんですが、僕がダウンロードして解凍すると[1344739, 586969, 3005020]になります。textに限らず他のファイルでも同じ傾向で、いつもなぜかちょっと違います。 -- [[K]] SIZE(10){2004-10-17 (日) 12:13:39} | | -↑過去にそこのサンプルを使おうと思いましたが、比較のテストデータがまともに入手できたためしがないです。たとえばtextのサンプルを例にとりますが、ページの説明ではサイズが[1344739, 586960, 2988578]のはずなんですが、僕がダウンロードして解凍すると[1344739, 586969, 3005020]になります。textに限らず他のファイルでも同じ傾向で、いつもなぜかちょっと違います。 -- [[K]] SIZE(10){2004-10-17 (日) 12:13:39} |
| -http://www.maximumcompression.com/data/bmp.php こんな比較はどうでしょう? -- [[名無しさん]] SIZE(10){2004-10-26 (火) 09:24:00} | | -http://www.maximumcompression.com/data/bmp.php こんな比較はどうでしょう? -- [[名無しさん]] SIZE(10){2004-10-26 (火) 09:24:00} |
- | -題材はいいのですが、tekにはこのような写真系画像に向いた拡張が予定されており(差分値を使った圧縮:[[OSASK:tek1/adv2]])、できればそれができてからやってみたいです。・・・でもまあとりあえず今やっても悪いことはないと思ったのでやってみました。tek5で967384バイトでした。 -- [[K]] SIZE(10){2004-10-26 (火) 12:46:30} | + | -題材はいいのですが、tekにはこのような写真系画像に向いた拡張が予定されており(差分値を使った圧縮:[[tek1/adv2]])、できればそれができてからやってみたいです。・・・でもまあとりあえず今やっても悪いことはないと思ったのでやってみました。tek5で967384バイトでした。 -- [[K]] SIZE(10){2004-10-26 (火) 12:46:30} |
| -そのページのほかのものと比べるとこんな感じです。太字は僕がテストしたものです。 -- [[K]] SIZE(10){2004-10-26 (火) 14:54:02} | | -そのページのほかのものと比べるとこんな感じです。太字は僕がテストしたものです。 -- [[K]] SIZE(10){2004-10-26 (火) 14:54:02} |
| |フォーマット|サイズ|指数| | | |フォーマット|サイズ|指数| |