Previous Page | Next Page

by Sephirothkefka at 6:14 PM EDT on July 22, 2015
IIRC NiGHTS: Journey of Dreams also had 48khz files. Maybe awb files are limited to 32khz only?
by snakemeat at 6:36 PM EDT on July 22, 2015
Still trying to figure out how to map the ACB to AWB. The previous samples I researched has the same number of file names in the ACB as music files in the AWB. This one is different.
by snakemeat at 8:05 PM EDT on July 23, 2015
Finally figured out the CueName to AWB mapping. I'm throwing this up for historical purposes and since Sourceforge SVN is still down. It's been a long time since I worked with pointers, so bear with me if the notation is off:

AWB Id for a CueName Entry:

WaveFormTable[(ushort)*(&SynthTable[CueTable[CueNameTable.CueIndex].ReferenceIndex].ReferenceItems + 0x6)].Id

I've uploaded a beta VGMToolbox with the WIP ACB/AWB extractor here. It does not yet extract data from within the ACBs themselves, although I think I understand things enough to add it soon. I've only had samples for 3 file types (AT3, ADX, and HCA), so if you get an output file extension with ".EncodeType-XX.bin", please report it so I can review the file and update the code.

This version of VGMT also has a CPK extractor added. The ISO Extractor also has a CPK browser. I got sick of waiting for thousands of voice files to extract for 30 BGMs. I haven't added support for encrypted CPKs yet.

Thanks so much to hcs for the UTF/CPK code and posts. The base UTF info came in handy for both CPK and ACB/AWB stuff.

As always, please report bugs so I can fix them.
by Infernus Animositas at 11:54 PM EDT on July 23, 2015
I bring you errors from two different ACB files

Error processing <C:\Users\Infernus Animositas\Desktop\ACB\strm.acb>. Error received: Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: startIndex

strm.acb is from Digimon All-Star Rumble on Xbox 360
BIRD_BGM.acb is from Dragon Ball Xenoverse on PC

Here are the ACB files for further investigation
http://www90.zippyshare.com/v/P6aqG4pI/file.html
by snakemeat at 5:21 AM EDT on July 24, 2015
Thanks. A quick check with hcs's utfview threw unexpected end of file errors. Are you sure these are the complete files? If so, I'll take a closer look to see if this is a new format or something.
by Infernus Animositas at 6:30 AM EDT on July 24, 2015
Yes, those files are complete. I just double checked by extracting the CPK archive again and comparing the files.
by snakemeat at 5:36 PM EDT on July 24, 2015
I figured out the problem, and uploaded a fixed version here.

For anyone else familiar with UTF, the samples provided seem to indicate that the offset to row information is actually a ushort at offset 0xA rather than a uint at 0x8.
by Infernus Animositas at 6:35 PM EDT on July 24, 2015
It worked :)

However, something doesn't add up completely.

The very first extracted Cue ID is 00000_BRD_BBGM_00_GOK and according to the ACF as shown here and the waveform's number of samples for that file it should be 4794827

But the converted HCA has 5266364 samples which is the exact number of samples for the second Cue ID 00001_BRD_BBGM_01_VGT as seen here and here


EDIT: Here's the ACF file for further inquiry
http://www51.zippyshare.com/v/kxnRRZ2G/file.html

edited 1:17 AM EDT July 25, 2015
by snakemeat at 8:34 PM EDT on July 24, 2015
Thanks a lot for the testing, I really appreciate it. It turns out this ACB had a different ReferenceType in the CueTable, 3. This resulted in a different offset correction for the Waveform ID, making the formula above:

WaveFormTable[(ushort)*(&SynthTable[CueTable[CueNameTable.CueIndex].ReferenceIndex].ReferenceItems + 0x2)].Id

For now, two ReferenceTypes are supported, 2 and 3. VGMT will throw an exception if a different type is encountered.

Here's an updated version.

Please keep the bug reports coming. I also realized I hadn't added ITOC support to the CPK functions yet. I'm adding that and a brute force decryptor as well for CPK in case the keys change.
by plpl3000 at 12:33 AM EDT on July 25, 2015
Error received: Object reference not set to an instance.


LGS_SOUND.acb is from Langrisser: Re:Incarnation Tensei on 3ds
sys_stream.acb is from Persona Q - Shadow of the Labyrinth on 3ds


http://www85.zippyshare.com/v/lPaV1daT/file.html

Previous Page | Next Page
Go to Page 0 1 2 3 4 5 6

Search this thread

Show all threads

Reply to this thread:

User Name Tags:

bold: [b]bold[/b]
italics: [i]italics[/i]
emphasis: [em]emphasis[/em]
underline: [u]underline[/u]
small: [small]small[/small]
Link: [url=http://www.google.com]Link[/url]

[img=https://www.hcs64.com/images/mm1.png]
Password
Subject
Message

HCS Forum Index
Halley's Comet Software
forum source