Previous Page | Next Page

by bnnm at 1:58 PM EDT on July 23, 2018
Thanks, still can't get it right. I think I'm misunderstanding something about signed/unsignedness and carry stuff (add vs adc).
Oh well, if I level up I'll try again.
by kode54 at 9:51 PM EDT on July 23, 2018
Never mind, I found that the full set is already uploaded to joshw.info. I'll grab that and investigate.

edited 9:52 PM EDT July 23, 2018

Okay, try that change I made to the ASF decoder.

edited 10:28 PM EDT July 23, 2018
by Nicknine at 10:04 PM EDT on July 23, 2018
Funny that someone uploaded the files like a year ago even though no decoder was available at the time.
by bnnm at 2:28 PM EDT on July 24, 2018
@kode54 - thanks, I think it's correct. My test files give byte-identical results though, I was expecting rounding diffs and stuff. I guess the math is basically equivalent. Not sure why I was getting it wrong (thought I tried what you wrote).
Also you added "carry" but didn't get used?

Games in joswh using this codec: Croc 2, The Emperor's New Groove, Aladdin in Nasira's Revenge (Croc 1 isn't)
Other Argonaut PC games that could use it: Bionicle: The Game, I-Ninja, Catwoman: The Game.

***

Gave another try and I think I understand it properly now and what we have is indeed byte-accurate: https://pastebin.com/eC1qwNTj
(I'll do a minor tweak later)

The only thing I wonder is about the carry flag (add then adc) but I don't think it's needed with C int32? (since max values are limited)
by Nicknine at 3:15 PM EDT on July 24, 2018
I'm still getting slight crackling in the sound which is not heard in the original PS1 music files. Do these ASF files sound like that in-game as well?

EDIT:
I ran the game and all the music plays with clicking, must be a bug on modern systems... How do you determine decoding is byte accurate?

edited 3:31 PM EDT July 24, 2018
by bnnm at 4:20 PM EDT on July 24, 2018
I've never played the games but I can tell you the codec is worse than the PS1 one, so I wouldn't be surprised. Dunno why didn't just reuse the same, it's basically very similar but simplified in dumb ways.

It's byte accurate in that frames decode like asfcodec does (IOW the pastebin I posted). It's possible they apply a filter after decoding, but I don't think I saw anything like that in asfcodec.adl. You sure it should sound cleaner?

***

BTW, one detail not sure people get is that after decoding, games may upsample and/or filter the output.
For example PS1 XA is saved in 37khz but is upsampled+filtered to 44khz (which may not even properly emulated elsewhere), or in PC games the sound card may do internal resampling who knows how.

vgmstream doesn't/can't simulate those behaviours and just outputs the raw sample rate, so it's less accurate than the real thing.
by Nicknine at 4:36 PM EDT on July 24, 2018
Yeah, I remember that games might re-sample the sound, this might be the case here.
Like I said, I can't check if it sounds like this in-game or not ATM cause the music seems to be screwed up on modern systems. I'll check it on my Win98 box when I get the chance.
I wish I could remember how it sounded from experience but the last time I played the PC version was way back in 2006. %)

By the way, it's even more baffling that they used a custom codec for music considering that all the sound effects and speech are still in PS-ADCPM in PC version.

edited 4:43 PM EDT July 24, 2018
by Infomaniac95 at 7:04 PM EDT on July 24, 2018
Im glad some work on the ASF format is being done, cause other games by argonaut, like emperor's new groove also use the same sound format.
by Nicknine at 4:39 PM EDT on July 25, 2018
Well, I ran the game on an authentic Win98 machine and the music sounds about the same as when decoded with vgmstream. I guess this ASF codec really is worse than PS-ADPCM.

edited 4:39 PM EDT July 25, 2018
by kode54 at 8:40 PM EDT on July 26, 2018
More likely their encoder sucks. Also notice how the frequencies that are crackling are high frequencies, but the audio is 22050Hz. Maybe they clipped in downsampling?

Previous Page | Next Page
Go to Page 0 1 2

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