One Square, Always Smart.

scroll

NEWS

  • 2018.10.15
    AXIPシリーズ ファイルパッキングミドルウェア「VUCKET」を提供開始
    AXIPシリーズとして、ファイルパッキングミドルウェア「VUCKET」を提供開始しました。

ABOUT VUCKET

VUCKETの特徴

複数の動画・音声ファイルを
1つにまとめ、
ファイルの破損チェックや暗号化、
圧縮にも対応。

任意のフォルダを1つにまとめることができる
ファイルパッカー
Windows/Mac/iOS/Androidで
マルチプラットフォーム対応
ファイル破損チェック、暗号化、圧縮、AXIPと接続するための
コールバックを提供

POINT01

マルチプラットフォームで
1ファイルにパッキングができる

VUCKETは、マルチプラットフォームで
使用可能なファイルパッカーです。
AXIPの製品にはもちろん、様々な製品にも対応。
今まで問題としてあった、
「サーバに個別ファイルが大量にあると管理が困難」
「Androidではassetsフォルダを直接参照できない」
などを解決します。

POINT02

CRCによる破損検出

VUCKETは、CRCと呼ばれる巡回冗長検査(デジタルネットワークやストレージデバイス上で使われているエラー検出技術)を自動付与しているため、破損検出に対応しています。

POINT03

AESによる暗号化

VUCKETは、DESの後継として米国の国立標準技術研究所(NIST)によって制定された暗号化規格であるAESによる暗号化に対応しています。

POINT04

チャンク圧縮による容量削減

VUCKETは、チャンク圧縮による容量削減に対応しています。データをいくつかのチャンク(データブロック)に区切りそれらを圧縮することで、ランダムアクセス性と圧縮率を両立します。

USAGE

使用例

AXIPに接続可能なコールバックをエクスポート済みのため、
登録するだけで接続可能に。

【AXIP製品使用例】

struct VucketUnpacker *upc;
vucketCreateUnpacker(&upc);
vucketOpenStreamFile(upc,path);
⦆
axipDecoderCallback callback;
callback.fopen=vucketCallbackOpen;
callback.fseek=vucketCallbackSeek;
callback.ftell=vucketCallbackTell;
callback.fread=vucketCallbackRead;
callback.fsize=vucketCallbackSize;
callback.fclose=vucketCallbackClose;
⦆
axipCreateDecoderEx(vucketGetCallbackArg(upc,"sample.mov"),callback);
vucketDestroyUnpacker(upc);

【AXIP以外製品使用例】

//インスタンス作成
VucketUnpacker *unpacker=NULL;
vucketCreateUnpacker(&unpacker);

//パックファイルを開く
vucketOpenStreamFileA(unpacker, "sample.vkt");

//ファイルのCRCを検証する
status=vucketValidate(unpacker);

//パックファイル内のアセットを列挙する
unsigned long long count=vucketGetAssetCount(unpacker);
for(size_t i=0;i<count;i++){
       //アセットパスを取得
       const char *asset_path=vucketGetAssetPath(unpacker,i);

       //アセットのCRCを検証する
       status=vucketValidateAsset(unpacker,asset_path);

       //ファイルアクセスコールバックへの引数を取得
       void *path=vucketGetCallbackArg(unpacker,asset_path);

       //コールバック経由でを読み込む
       void *gfp=vucketCallbackOpen(path);
       long long size=vucketCallbackSize(gfp);
       std::vector<unsigned char> code(size);
       vucketCallbackRead(&code[0],size,gfp);
       vucketCallbackClose(gfp);
}

//解放する
vucketDestroyUnpacker(unpacker);

SPEC

仕様および提供物

項目 仕様
対応OS Windows, Mac, iOS, Android
CPU x86, ARM
API C++, C#(Unity)
STL gnustl, stlport
ライブラリ形式 static, shared
ツール CUIパッカー

CONTACT

お問い合わせ

・「Unity」は、Unity Technologiesが日本およびその他の国において保有する商標または登録商標です。
・Windowsは、米国Microsoft Corporationの米国及びその他の国における登録商標です。
・Androidは、Google Inc.の商標です。
・Macは、Apple Inc.の商標です。
・ARMは、 ARM Limitedの登録商標です。