HCA decoder demo

Standalone version - you may right-click & save this page for offline use.
GitHub repo



Choose a HCA or AWB file

Drag & drop a file here,
Or pick a local file:

Don't forget to
Or download from URL:


Set keys for decryption/encryption

key1=
key2=
(optional) subkey=
Note: output waveform will be (almostly all) silence if incorrect keys are given!

Streaming (AudioWorklet API)


Some browsers like Safari (Apple WebKit) may lock AudioContext initially, which blocks auto-play.
To unlock AudioContext (so that auto-play will no longer be blocked),
please click anywhere on this page after drag & drop.

Load a HCA file for playing, which has been fully loaded/downloaded above:

Load directly from the URL above, without fully downloading the whole file:

Progress control:




Volume control (in "decoding parameters" section)

Decode the whole file

Note:
(1) Please click "get HCA info" button first.
(2) Setting decoding mode to zero means 32-bit float mode, or 8/16/24/32-bit integer mode otherwise.
(3) Loop count is ignored if HCA header doesn't have loop section
(4) Loop count doesn't count the existing part which is originally supposed to be looped.
    In other words, actual loop count will be: the number set here plus one.
(5) When decoding the whole file, setting loop count to zero means: disabling loop.
HCA info
HCA info
(Not loaded)
Checksum
Cipher

Decoding parameters Decoding mode:
Loop count:
Volume:
This volume control affects AudioWorklet and WebAudio playing as well.
Decode to HTML5 Audio

Decode to WebAudio AudioBufferSourceNode Playing will seamlessly loop if HCA supports looping.