Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

An way to identify if an generated TXTP file can be played/ converted by vgmstream #14

Open
Surihix opened this issue Dec 6, 2021 · 3 comments

Comments

@Surihix
Copy link

Surihix commented Dec 6, 2021

First off many thanks for making this tool without which proper music extraction from games using .bnk containers would not have been possible.

I am sorry if this has already been discussed here.

By using WWISER, I have managed to generate TXTP file for the music files of Zone of the Enders 2nd Runner MARS. I am also able to join them all up as a wav file with vgmstream and most of the music tracks are properly getting extracted by vgmstream.
The way I use vgmstream to extract the music file is by opening the TXTP file with vgmstream and that starts an conversion process which creates the wav file next to the TXTP file.

Some of the generated TXTP files are unable to be converted by vgmstream to wav and I am not sure if it is due to vgmstream's file limitation or if its with WWISER. I have linked the generated TXTP file along with the extracted wem files kept in the wem folder below.
https://drive.google.com/file/d/1mKFVwqmWbSwe0bhMaTl04QpkujOsBLvL/view?usp=sharing

The bnk file is also inside the wem folder and you can check this out to see where the issue lies.

Now if this turns out to be an issue with vgmstream, then can you like add an function in WWISER that puts an additional name mark to the generated TXTP file name. with this an TXTP file can easily be identified as unable to be played or converted by vgmstream.

@bnnm
Copy link
Owner

bnnm commented Dec 6, 2021

Those unplayable .txtp are rather complex (simulating sequenced audio from the original PS2 game), and are hitting some of vgmstream's safe limits (too many layers).

This needs to rework some things in vgmstream, meanwhile I'll see if I can detect those cases and mark them.

@Surihix
Copy link
Author

Surihix commented Dec 7, 2021

Those unplayable .txtp are rather complex (simulating sequenced audio from the original PS2 game), and are hitting some of vgmstream's safe limits (too many layers).

This needs to rework some things in vgmstream, meanwhile I'll see if I can detect those cases and mark them.

Thanks for looking into the TXTP files. never knew it was that complex.

Another question I wanted to ask.

I did go through the limitations section of WWISER and found out that some of Wwise's effects and features are not supported by WWISER as of now.
As some of the music tracks from this game extracts with vgmstream, I was curious if these extracted music tracks use those features that are not supported by WWISER.

So does WWISER have a marker for naming the generated TXTP files for these tracks that are using those effects and features ?

if there is no special marker to the generated TXTP filename, then does that mean that the TXTP file generated for that track is accurate and the music is extracting properly without missing anything ?

Some of the tracks don't have any marker to their generated TXTP filename and there are some tracks where the generated TXTP filename has the {s} marker which is crossfade. Some of them have the {s}=(1222337652=723530721) marker as well.

@bnnm
Copy link
Owner

bnnm commented Dec 8, 2021

There are no markers for most missing features or effects because it's hard to detect and quantify them. Most songs are missing "overlaps" but often it isn't too noticeable, or it's enabled yet no audio actually overlaps. Or if some TXTP with SFX uses the pitch or panning effect, the default non-pitched SFX is listenable too. Also, other cases like mixed sample rates aren't detectable by wwiser.

Generally markers are cases the user can manually fix. {s} tells you you can pass variables (or manually edit the .txtp) to silence certain parts, and {s}=(1222337652=723530721) that wwiser has automatically detected and silenced some cases based on states.

I'll think about adding other marks but seems time better spent on fixing vgmstream.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants