libcgss is a helper library originally for THE iDOLM@STER Cinderella Girls Starlight Stage (CGSS). It provides both C and C++ API for HCA audio and ACB archive manipulation.
The project consists of a library (libcgss) and several other applications.
- Library (libcgss)
- Applications
- hcaenc (obsolete): HCA encoder. Requires
hcaenc_lite.dll
[1]. C# equivalent - hcacc: HCA cipher converter. C# equivalent
- hca2wav: HCA decoder. C# equivalent
- hcainfo: HCA info viewer.
- utftable: UTF table schema explorer, similar to utf_tab.
- acbunpack: ACB archive unpacker. C# equivalent
- acb2wavs: Batch converter for HCAs in ACB. C# equivalent
- acb2hcas: Batch exporter for HCAs in ACB. Generates companion
.hcakey
files for vgmstream. - hcaenc: HCA encoder based on VGAudio/VGAudio-CPP. Does not rely on
hcaenc_lite.dll
. - hcadec: HCA decoder based on VGAudio/VGAudio-CPP.
- hcaenc (obsolete): HCA encoder. Requires
Related projects:
- This project has a sister project DereTore. However the strength of C API is better interoperability with other libraries. The pure C# version of hcaenc and hcacc can be found in DereTore as applications.
- If you are looking for a faster HCA decoder with higher definition for *NIX and you are a DIY person, have a look at this.
- If you are looking for a small native application for HCA encoding/decoding, have a look at this.
[1] Download ADX2LE from here, and use the DLL located at
tools\hcaenc_lite.dll
.
Have a look at some examples here.
C# users can write a P/Invoke wrapper to utilize the C interface.
Requirements:
- General:
- CMake (>=3.2)
- Windows:
- MSVC (>=14.0, VC++ 2015)
- macOS and Linux:
- GCC (>=6.0)
Steps:
- Run PowerShell script:
scripts/configure-cmake.ps1
; - Run PowerShell script:
scripts/build-project.ps1
;
Artifacts can be found in bin
directory.
More information:
API definition can be found at docs/api/cgss-api.md.
User manual can be found at docs/manual/user-manual.md.
MIT License. See LICENSE.md.
See DISCLAIMER.md.
More tech details can be found in Behind the Scenes.