Wwise music ripping guide by bnnm at 6:12 PM EDT on October 25, 2020
I've made a tool called "wwiser" to semi-automate Wwise (.wem) ripping with proper looping. Here:
wwiser releases (needs python3 installed).

Download wwiser.pyz + wwnames.db3 to some folder. Open (double click) wwiser and use it to parse and convert .bnk (Wwise sound info) into .txtp that handle Wwise's dynamic songs. You need the latest vgmstream. Should be easy enough to figure out but:

***

Quick guide to get decent Wwise rips
- get latest wwiser: wwiser releases
- put all .bnk and .wem in a dir
** .bnk/wem may be in other bigfiles like .pck, use this: wwise_pck_extractor.bms
- put SoundbankInfo.xml/(bankname).txt/Wwise_IDs.h/etc together too
** you want ALL of those, SoundbankInfo.xml doesn't have every name
** if you don't have those it's still possible to get names, see: NAMES.md
- open (double click) wwiser.pyz, make sure you have "wwnames.db3" in wwiser folder
- press LOAD and choose some .bnk (bgm.bnk or just all of them), check "move .wem"
** It's recommented to load `init.bnk` too if you have companion files.
- press GENERATE to get .txtp (pay attention to log, you may need to tweak things manually)
** this creates /txtp folder with .txtp and /txtp/wem folders with .wem
- test .txtp with vgmstream (you may need to tweak some manually to improve)
** if you change .txtp also change the filename so it doesn't get overwritten if re-generated
** ex. from "blah {r}.txtp" you may need to make "blah {r1}.txtp" "blah {r2}.txtp"
- remove unwanted .txtp (like voices)
- use this python script to move .wem not in .txtp to /unwanted: wwise-cleaner.py
** check if /unwanted does have wanted music (may have removed good .txtp)
- check if there are .wem in root (before /txtp folder) not moved with have useful/unused audio
** put in "/unused" folder
- include companion files (.xml/.txt/etc) + .bnk in some /extra folder or !extra.7z
** you may need to re-generate when new features/fixes are added (!!!)
** some .bnk may need to go to /wem folder instead (see log!), might as well put files there
- 7zip files and folders (with .txtp in root) + upload rip somewhere


Note! .txtp are Good Enough but not perfect in all cases. This means you may need to generate them again later when I fix bugs. I wanted to make them future-proof and avoid re-generating but it was too time-consuming, sorry.

NOTE ABOUT WWISE
Wwise never, ever plays *(number).wem* directly. Instead, it uses .bnk to indirectly play one or many .wem, through "events", with config. wwiser creates .txtp that simulate that so results are as accurate as possible. Loops and other audio info is in the .bnk, not the .wem. Please Understand.

This tool doesn't and won't modify .bnk.

***

If you are interested also check:
- full guide
- readme
- advanced docs


edited 3:49 PM EDT October 26, 2020
by Dark_Ansem at 9:05 AM EST on November 27, 2020
Oh my GOD. Will this work on Mass Effect files too?
by Dark_Ansem at 3:32 AM EST on February 10, 2021
Is an update to wwiser coming?
by bnnm at 5:56 PM EST on February 10, 2021
https://github.com/bnnm/wwiser/releases

It's updated irregularly though.

As for your Mass Effect question, I have no clue. But most likely will work, since most games do.
by Dark_Ansem at 5:43 AM EST on February 11, 2021
I'm waiting for the Legendary edition, to see if they streamlined all audio to work with wwiser, as in the first game it was just a collection of OGG files and for the second, it was hidden behind afc player with no bnk file. Only ME3 did work.
by Dark_Ansem at 6:07 PM EDT on September 24, 2021
So, I'm trying to rip the Pathfinder: Wrath of the Righteous music with this tool, but I think something is broken, as the loops extracted are all wrong.

By "wrong" I mean that the loop as played by Foobar and the txtp file does not sound at all like the in-game loop.

What can I do to help you troubleshoot?
by bnnm at 5:52 AM EDT on September 25, 2021
Post some .txtp, .wem and bnk they use (open .txtp to see what they use) that you think play wrong.

Sometimes music is too dynamic for the tool and you would need to manually fix though.
by Dark_Ansem at 7:28 AM EDT on September 25, 2021
There you go, that's everything I could add, thank you.

https://www.mediafire.com/file/32j16qym4bss6z9/Pathfinder+WotR.zip/file

AFAIK, all files loop wrongly, but this is blatantly obvious with file "Music-2049-event", because if you listen to the video here:

https://youtu.be/bzZT7StwALo?t=6951

You can distinctly hear the loop is NOT what the txtp file says.

It has only happened with this game for now AFAIK. With XCOM2 Wrath of the Chosen, the loop points work just fine.
by bnnm at 11:15 AM EDT on September 25, 2021
Those files use a transition feature that isn't simulated yet, so you'll have to wait for now.
by Dark_Ansem at 4:11 PM EDT on September 25, 2021
Thank you, could i ask what feature is it? I'm curious.
by bnnm at 6:14 PM EDT on September 25, 2021
Some Wwise loops work by playing a .wem, then when song is ending playing the same (or other) .wem on top, creating an 'overlapped transition'.

Something like:
(...wem1..)--------
-------(...wem2...)



vgmstream can't do that, so for now it just cuts wem1 when wem2 starts, that's why loop sounds so abrupt.

edited 6:14 PM EDT September 25, 2021
by Dark_Ansem at 7:06 PM EDT on September 25, 2021
ah I see, I hope that functionality will work soon as I'm sure ME2 has the same issue.
by Dark_Ansem at 4:26 AM EST on January 28, 2022
was this feature implemented in the end?
Bigger logbox and skipping volume args by djobama at 4:31 AM EST on January 28, 2022
Hey,

The logbox is very small, I have to scroll for ages to get to the end and I can't resize it. I don't see it at all unless I enable auto-hide of the taskbar. Could you make it bigger?

Also is it possible to skip volume arguments? I want to have txtp exactly as loud as wems.

edited 5:32 AM EST January 28, 2022
by bnnm at 5:44 PM EST on January 28, 2022
@Dark_Ansem - that feature is pretty complex and needs some previous changes in vgmstream so it'll take a long time still.

@djobama - GUI is pretty big already so I'm not sure I can really make the log bigger. I tried making it resizable but it's not easy/possible with python's GUI crud. Moving it to another separate log window would be possible but personally I don't like too much that style. Maybe I can put a "open with notepad" button instead?

As for volume, if you put a "*" in the volume box it'll auto adjust .txtp volumes to .wem (more or less). I'll probably set that as default in the next release.
by Dark_Ansem at 2:59 PM EST on February 4, 2022
That's great. Honestly I'm happy to know its coming at all!
by Dark_Ansem at 11:24 AM EDT on April 20, 2022
Any news about the transition feature coming up?
by bnnm at 4:16 PM EDT on April 25, 2022
There is none. wwiser needs to be updated too so keep an eye on the releases. Well, it's still a long ways to go so don't keep it too close.
by Dark_Ansem at 8:04 AM EDT on April 26, 2022
Haha fair enough. Thanks
by Alpha23 at 7:27 AM EDT on June 10, 2022
Hey, started to use your tool just now - amazing! I hope you could get some insight into the structure by looking at my scripts (AlphaTwentyThree on ZenHax). ;)

I wanted to ask if there is an easy possibility to automatically delete files that are not used in a list of txp files?
by Dark_Ansem at 6:10 AM EDT on August 23, 2022
Thank you for the update to the tool. Could you tell whether the functionality has been added?
by Dark_Ansem at 6:29 AM EST on March 1, 2023
So, not to be necromantic, but I am trying to give another go at this, and now the music has been hidden behind a pck file ever since the update to "enhanced edition" happened, so obviously wwiser doesn't work anymore. Some advice would be appreciated. I'm guessing I need to extract the files from the PCK, but most QuickBMS scripts I tried have failed.
by Dark_Ansem at 8:08 AM EDT on September 20, 2023
Any update on the functionality below?

"Some Wwise loops work by playing a .wem, then when song is ending playing the same (or other) .wem on top, creating an 'overlapped transition'.

Something like:
(...wem1..)--------
-------(...wem2...)


vgmstream can't do that, so for now it just cuts wem1 when wem2 starts, that's why loop sounds so abrupt."
by bnnm at 7:36 PM EDT on September 21, 2023
No updates. When it's added it'll say so in the release info, so just check those:
https://github.com/bnnm/wwiser/releases

script for pck:
https://github.com/bnnm/wwiser-utils/blob/master/scripts/wwise_pck_extractor.bms
by Dark_Ansem at 7:32 AM EDT on September 22, 2023
What's the name of the feature itself, so I'll know what to look for?
by bnnm at 5:39 AM EDT on September 23, 2023
Overlapped transitions
by Dark_Ansem at 4:13 AM EDT on September 24, 2023
Thanks. Just to be sure, is it going to go in the notes of wwiser or vgmstream itself?


Go to Page 0

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