Previous Page | Next Page

by AnonRunzes at 7:17 PM EST on March 5, 2017
Here`s a new plugin coming from me:
by bnnm at 8:06 PM EST on March 10, 2017
I did some GENH changes; long-winded explanation incoming:

New codecs
- ATRAC3 (id=18), ATRAC3plus (id=19), XMA1 (id=20), XMA2 (id=21), FFMpeg (id=22), for raw AT3/XMA data and "headered" FFmpeg data.
In AT3, interleave is block_size for *all* channels (like in a AT3 RIFF header) and must be provided. Typical sizes are 0x60*ch, 0x98*ch, 0xc0*ch (ATRAC3); 0xBC*ch/0x174*ch/0x200*ch (ATRAC3plus).
In XMA, interleave is also block_size but defaults to 2048 if not provided (usually ignored by FFmpeg).

FFmpeg considerations
- possibly-useful FFmpeg formats: AAC, OGG, MPEG, WMA, AC3. List here.
- FFmpeg doesn't need subtype or anything, it finds out the codec by itself.
- header_skip is where data that FFmpeg can parse (=headered) starts. Meaning, it should point to a (example) AAC header at 0x100, NOT to AAC raw data at 0x150 (FFmpeg needs headers).
- new formats must be enabled/pre-compiled first
- in rare cases some odd codec may not work in vgmstream due to quirks too long to explain

New fields @ offset
- 0x40 (4) = total samples: when loop-end-at-offset is 0 while total-samples-at-offset is not, or you want to disable looping and get song endings. If 0 it'll use loop_end as usual.
I hope you can add an (optional) row in VGMtoolbox to read the total samples similar to the loop ones.
- 0x44 (4) = skip samples: for formats with encoder delay (AT3, XMA, FFmpeg), see below.
- 0x48 (1) = skip samples mode: 0=autodetect, 1=force manual value @ 0x44 (skip samples ignored if this is not set; enable-flag as one may want to set skip to 0)
- 0x49 (1) = ATRAC3 stereo mode: 0=autodetect, 1=force joint stereo, 2=force full stereo. Probably never needed (for now interleave 0x60*ch = joint stereo).
- 0x4a (1) - XMA stream mode: 0=default (ex. 4ch = 2ch + 2ch), 1=single (4ch = 1ch + 1ch + 1ch + 1ch).
XMA data is divided into "streams" of 1 or 2 channels, and this configures the layout. Mode 1 not working yet, actually.
- 0x50 (4) = raw data size: for formats that may have garbage at the end (ex. XMA RIFF), otherwise filesize-header start.

Skip samples (gapless playback / start padding)
- MPEG/MDCT-based encoders (MP3, AT3, XMA, AAC...) add some garbage samples at the beginning, usually silent but not always.
- When decoding you need to skip them to get the original sample start.
Ex.: you have a file of 88200 samples, but encoded to AT3 you get 1216 + 88200 samples. So when decoding you must skip the first 1216 samples to get the real start.
You can't just change the header offset to skip them.
- Values:
* AT3: must be provided (usually 0x400~0x800). In AT3 RIFF headers it's the last value in the "fact" chunk.
* XMA: should be autodetected (usually 576). Disabled for now due to quirks.
* AAC (via FFmpeg): should be autodetected (usually 2112).
* MP3 (via FFmpeg): varies with the encoder, may be autodetected (usually 576 or 1156)
- in GENH when skip samples are provided loop values are "relative".
Example, GENH uses "relative" values: skip samples = 400, loop_start = 0 (so "real" loop start will be 0+400 samples in).
While AT3 RIFF headers use "absolute" values: skip samples = 400, loop_start = 400 (so for GENH you need to manually substract loop_start - skip_samples).
But other AT3 headers do use "relative" loop values instead; experiment (same for any format with skip samples).

Byte to samples
- MPEG: for CBR, (bytes * sample rate * 8) / (bit rate in kb * 1000)
For VBR you can use the "average bit rate" to get approx. samples.
- ATRAC3: (bytes / block_size) * 1024
- ATRAC3plus: (bytes / block_size) * 2048
- XMA: not possible AFAIK (maybe some formula with the average bit rate)
- Others/FFmpeg: ? (try to pre-decode with FFmpeg.exe to get max samples)

by 47iscool at 9:37 PM EST on March 10, 2017
Would it be possible to add support for Gran Turismo 4' gt4.vol to the iso/archive opener?
The gt3.vol tool does not extract files properly from gt4.
by snakemeat at 10:05 AM EST on March 11, 2017
Very cool about the GENH stuff. It'll take some time, so I'll let you know if I have any questions.

I will take a look at the psfp stuff after I finish the GENH stuff. But if no generic driver exists, there may not be very much I can do.

Regarding the GT4 archive, I typically trying build only for generic or system-wide formats, rather than game specific formats. But I can take a look to see if one of the other tools might be able to help, for example thr virtual file system extractor. Can you upload a sample?
by AnonRunzes at 4:56 PM EDT on March 16, 2017
So, does this one support (decrypted) NDS images or do I have to use another tool if I want to explore these NDS images?

EDIT: I got one sample from me though...


This .rar file includes samples obtained from all three console versions(PS2, GC, XBOX) of Tiger Woods PGA Tour 2003.

edited 11:01 PM EDT March 16, 2017
by 47iscool at 9:36 PM EDT on March 16, 2017
Sorry cant do snakemeat. I only have internet on my droid and not enough storage space on the sd.
by bnnm at 7:59 PM EDT on March 17, 2017
@snakemeat - if you have some time I hope you can take a look at this ACB+AWB from Ukiyo no Shishi (PS3).
Some names are not matched, even though they are in the .ACB (I suspect a couple of names are mismatched too).

Also, some .HCA are extracted multiple times (since there are more cues than HCAs I guess).
I think an option to extract HCAs only once would be useful as it was kind of surprising; in this case you have tracks like BGM_17 and BGM_17_18 which are the same.

Incidentally the Vita version outputs a few "x.EncodeType-10.bin", those are .vag
by NLOG at 8:45 AM EDT on March 21, 2017
Some .mca files from Monster Hunter 3U (3DS) happened noisy crack.
An older version, this problem is not happened.
It seems any regression.
by AnonRunzes at 1:20 PM EDT on March 21, 2017
@NLOG - "vgmtoolbox" is not responsible with your error.
by AnonRunzes at 9:59 PM EDT on April 1, 2017
Seems like I`m at it again.

The file I`m having with me here came from Boku no Natsuyasumi, a Japan-only PS1 game. Inside that file, you can see "SShd" and "SSsq", respectively. But not "SSbd" apparently because the .bd/.vb file follows after these two files with these two signs. Or maybe it`s just a collection of these files combined into one, as you can see from offset 0x5aa1800 onwards.

Anyway, here`s the file I`m talking about:


Previous Page | Next Page
Go to Page 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33

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=]Link[/url]


HCS Forum Index
Halley's Comet Software
forum source