アーカイブ:ソリッド圧縮の順次展開対応

Issue #621 closed
Ito Mitsuhiro repo owner created an issue

要望なのですが、ソリッド圧縮ファイルの事前展開で、展開が完了した画像から順次表示することはできないでしょうか?
ページ順が圧縮ファイル内の格納順と一致していれば待ち時間を減らせると思います。

Comments (18)

  1. Ito Mitsuhiro reporter

    最初にどうしても全インデックス取得が必要になるが、その部分がかなり遅いので、劇的な効果は期待できないと思われる。

  2. Ito Mitsuhiro reporter

    SevenZipSharp に順次展開のインターフェイスはあるみたいなので、実現可能かも?

    • Archive に (Async?)IEnumerable でエントリかつ実体を取得するメソッドを用意する
    • ブックをページの動的増加に対応させる
    • 実体も展開されてしまうため、ソリッド圧縮、もしくは再帰圧縮書庫でのみ対応する
    • 順次展開ができればサムネイル作成も高速化可能と思われる

  3. Ito Mitsuhiro reporter
    • changed status to open
    • インデックス化と事前展開を同時に行う方針で修正
      • ソリッド展開メモリ設定はその範囲内でメモリに展開させ、越える分はファイルに出力する
      • 圧縮ファイルエントリは常にファイル展開する?
    • Archiver の Stream ソース対応。これによりメモリ上の圧縮データを展開可能にする
    • サムネイル用に順次展開で途中でキャンセルできる機能(IAsyncEnumerable?)を実装
  4. Ito Mitsuhiro reporter

    ↑インデックス取得自体のコストは問題ないようなので、事前展開を非同期化する方針に修正。

  5. Log in to comment