Welcome
Ladies and Gents:

These forums are now closed and registration disabled.

Please join us at our new forum on Proboards. Our hope is that these new forums are more stable, provide more and better features, and allow continuation of the project forums in a safer, more secure, long term environment.

me3explorer.proboards.com

--The ME3Explorer Team

New(ish) Tool | Audio Editor

Development board for ME3Explorer tools. Please try to keep discussions for each tool inside its own thread.

Re: New(ish) Tool | Audio Editor

Postby giftfish » 05 Oct 2016, 20:35

Tarshana wrote:Can this be used to change a music file in game, such as putting the Wards Music from ME1 as the ambiance music on the Normandy rather than the hum/no noise?

Only Wards v5, which isn't on the official soundtrack, and which is the best one >.>

But, yes, Tarsh, it will be able to do that and then some. However, to be clear, you can do this right now with the current version of Soundplorer. It's just a bit of a pain, and music replacements can always be more problematic than dialogue replacements.

The new Audio Editor will make everything easier :) Wwise will still be required, though.

...And now that the new stable is out, I'll have time to get the Wwisebank tab laid out, lol.
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: New(ish) Tool | Audio Editor

Postby Tarshana » 05 Oct 2016, 21:03

Wards v5? Is that the one on your cabin music mod? I love that :D Where are the tutorials for the Soundsplorer? I just installed ME3E v3 from a previous post on textures. I can combine the info from previous tutorials and what is currently out. I really like the EGM addon for the sound file but I want to hear the Wards music all day every day. .... the "tutorial" is in the wiki I bet. ... I will start there and poke around. I really wish I could convey how much awesome the code dev team is for all of this. I had no idea the scope of what you guys have been doing until recently.
Tarshana
User
 
Posts: 58
Joined: 21 Aug 2016, 18:14
Has thanked: 3 time
Have thanks: 4 time

Re: New(ish) Tool | Audio Editor

Postby giftfish » 05 Oct 2016, 21:20

Tarshana wrote:Wards v5? Is that the one on your cabin music mod? I love that :D

Yes. And, me, too. I don't know why I love it so much. I have a very strong emotional reaction to it. Somehow, the song feels like home to me.

Tarshana wrote:Where are the tutorials for the Soundsplorer? I just installed ME3E v3 from a previous post on textures. I can combine the info from previous tutorials and what is currently out. I really like the EGM addon for the sound file but I want to hear the Wards music all day every day. .... the "tutorial" is in the wiki I bet. ... I will start there and poke around.

Sound tutorials are a bit sparse right now. There's a hodgepodge of them in the Modders Tutorials area; none on the wiki, yet. I think most are likely outdated at this point, but you can certain take a look around. Most modders are using Fob's AFC Creator right now, which means not using Soundplorer, and changing the references in PackEd manually. This also allows you to use larger sound files than vanilla, for higher quality. Using this method almost guarantees you'll need to edit the banks, though, since a small snippet of all music is contained in the bank. If you change it drastically, then you have to edit the bank.

Tarshana wrote:I really wish I could convey how much awesome the code dev team is for all of this. I had no idea the scope of what you guys have been doing until recently.

It's all, Sir <3
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: New(ish) Tool | Audio Editor

Postby Tarshana » 05 Oct 2016, 22:17

giftfish wrote:
Tarshana wrote:Wards v5? Is that the one on your cabin music mod? I love that :D

Yes. And, me, too. I don't know why I love it so much. I have a very strong emotional reaction to it. Somehow, the song feels like home to me.

Tarshana wrote:I really wish I could convey how much awesome the code dev team is for all of this. I had no idea the scope of what you guys have been doing until recently.

It's all, Sir <3


I think you nailed it. Very much like home :)

Well thank you Mr. Sir :D I found the forum links for the various audio stuff. Now that I have the new EGM installed with all that goodness, I want to add some of that home music :D
Tarshana
User
 
Posts: 58
Joined: 21 Aug 2016, 18:14
Has thanked: 3 time
Have thanks: 4 time

Re: New(ish) Tool | Audio Editor

Postby giftfish » 10 Oct 2016, 14:52

Finally diving into laying out the large tab for the bank editor.

This is a bit of a black hole... there's a lot stuff to consider. I think there's also still a significant amount of stuff that isn't researched, which makes me a bit uncertain as to what types of fields to include in an editor. Even answers as simple as "what does 'HIRC' stand for?" are not easily found. It's not even defined inside Audiokinetic's 904 page help PDF (ugh).

For reference, I'm using info from:


Anyone can open up a LOC_INT or main PCC in the editor to see how the tool is currently organized. It needs a lot of improvement; the question is the best way to go about it. For ease of reference, here's some caps:

Image
Image
Image

I've done SOME work in the banks, but not a lot, which is why I need to hear from modders out there with more experience than I. Trying to organize all this hex and undefined audio terminology into an intuitive editor is going to be very difficult. For that reason, I'm not going to create detailed mockups at first. For now, it's about just figuring out what to call things, what should be displayed, and how to display those things. Then I can figure out how to organize them within the GUI.

Initial comments/questions:

1. SoundBank.
I'll be changing the bank selection mechanism to a simple dropdown. There are typically few banks in a file and there's no reason to have the entire left half of the tool empty. This will replace the current list and be situated in the top left.

2. RAW Tab.
This shows all hex for the bank. In other words, the same thing that is visible with PackEd, just without the preceding Unreal properties (uh, I think that's what those are called...). I have 3 related questions:

  • Do any of the current operations in the tool under Edit/Transfer require that the modder might need to use the RAW tab?
  • If yes, which ones and do we want to retain them?
  • If no, does this tab of RAW hex need to be in the new editor, or are the small segments of hex on the HIRC Objects tab enough?
  • Can/Should the display of the hex in the RAW Tab be combined with the hex displayed in the HIRC Objects Tab?
For the latter question, let me provide an example. If the HIRC had it's own "Properties" area that was always visible, would it be enough to have the hex for the whole bank visible, as long as the section associated with a specific object was highlighted?

And, one final follow up. Right now, displaying the hex associated with any HIRC object is necessary, as we don't know what it all does and we have no other way to edit the bank. *IF* we were able to fully decipher and edit the bank, would we still want a hex editor present?

3. WwiseAudio.pcc
I wanted to mention this PCC since it's likely one of the most uneditable files in the game, and one that is directly relevant to the new editor. It's full of various Wwise parameters and scripted behaviors. It also contains the Initialization Bank (which does a variety of things including load all other banks) and the Default_WwiseBank, the latter of which throws an error when attempting to view in the editor.

----------

I think that's it for now.

@Kinkojiro, Fob, JohnP, Deager, I think you are the only 4 folks besides myself that have done work in the banks, so it's pretty important that I get whatever feedback you can give :)
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: New(ish) Tool | Audio Editor

Postby giftfish » 10 Oct 2016, 18:12

DIDX/DATA SECTIONS (First Scan tab)

These are the "Data Index" and "Data" sections in the existing editor. They will typically only be in non-dialogue banks. So, banks that are for music, ambient sounds, etc. They contain WEM references and data.

FYI, WEM = Wwise Encoded Media. Prior to 2011, which includes the version of Wwise BW used to create ME3, Wwise used the WAV file extension (Wwise Audio-Video, I'm assuming). This is why we see "WAV" extensions associated with the streams in ME3 files. These WAVs are technically WEMs.

Currently, the "First Scan" area of the editor is simply a list. Looking at the Soundbanks section in the Wwise PDF is extremely helpful as to where this content might fit in, but I have some questions.


1. Embedded vs External WAV/WEM Sounds
Various sources explain these WEM/WAV references in the DIDX/Data are for the bits of sound that are actually embedded within the bank. This includes two types:

  • A full sound, like a datapad beep
  • A piece of a streamed sound, which ultimately leads to a Wwisestream object
My understanding is that the former has no WAV (Wwisestream) counterpart in the file. The audio exists in the bank, ONLY.

Is this correct?

If this is correct, this means that we need a way to play and replace this audio. Right now, we can do neither inside the tool. The WEMs can be extracted and listened to via the Export All WEM files option, but for some reason WV never built in the OGG conversion. They have to be converted manually via ww2ogg. This is something that should be built into the tool, as it is for Wwisestreams.

In the case of pieces of streamed sound, these are currently the portions that need to be replaced manually when modders do a music edit to a PCC. The plan is to have this handled via the new "Audio Replace" feature in the WwiseStream tab.


2. WEM/WAV IDs
In the particular bank I'm looking at, there are 73 WEM references. They each have an ID and a size parameter that looks something like this (but in hex):

ID/Size
867467429 /6679
841736579/5026
794754303/9683
394613384 /27903
570288598 /23729
830186304 /9718
1019932694/63669
...

Whether the IDs are hex or integers, these are very unwieldy. I assume BW had some actual names for the WEMs/WAVs on their end, but that name isn't in the file. Some screenshots in the help PDF provides some ideas as to what might have been in place:

Spoiler:
Image
Image

What I'm wondering is if we can assign actual names to these, without it impacting the file. I don't really know how that would work, but part of the issue with dealing with banks is all these crazy long integer IDs -- or the modder having to know the hex of the ID. Even something as simple as WEM1 would work. Just some way to keep track that doesn't involve numbers like "1019932694". I guess we could build it into the GUI... maybe.

Any ideas on that, Sir?


3. Replacing Fully-Embedded WEMs
This will be new territory. Would we want a specialized area of the UI similar to the WwiseStream Audio Replacer? Or, would it be enough to only replace one at a time via a context menu/toolbar button?
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: New(ish) Tool | Audio Editor

Postby giftfish » 10 Oct 2016, 18:59

Some general FYI and notes on tools/operations we'll likely want:

1. HIRC = Hierarchy Inclusion. Almost certain. This field is in Wwise's Soundbank Editor.

2. ENVS/FXPR -- Has anyone seen these sections in any bank? So far, I haven't run across them.

3. Imported Banks -- The Init.bnk is imported into probably every file. Lots of files also import other banks. I think we'll want to create a special place in the GUI to notify the modder of imported banks, since they are easy to miss and can explain strange behaviors when attempting to replace game audio. Then, probably provide a way to "Open Imported Bank" or something.

3. Operations/Tools -- Open/Close/Save, Generate empty bank, Export bank hex, Export one/some/all WEMs, Replace (one/some/all) WEMs, Add WEM, Open imported bank.

----

@Sir -- Another example of a bank that throws an error in the current editor is export 3228 inside BioD_ProEar_415Harvester. Looks like there's a reference in binary at the end of the very short bank. Might point to something inside the Init bank... maybe?
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: New(ish) Tool | Audio Editor

Postby giftfish » 10 Oct 2016, 19:14

SOUNDBANKS and INIT.BNK

All banks have an ID that I'm assuming is unique across all PCCs. In addition, the Wwise Help PDF states this:

By default, Wwise updates the initialization bank each time one or more SoundBanks are generated. This is to ensure that the two sets of banks are in sync. The Initialization bank contains all the general information about a project, including information on the bus hierarchy, and information on states, switches, RTPCs, and Environmental effects. If changes are made to any of these elements within your project, you will have to update this bank in your game along with the newly generated SoundBanks. If, however, no changes are made to these project elements, you can keep theolder version of the Init.bnk.


Comments:

1. I took this to indicate that the Init.bnk contains an index of all valid bank IDs, a bit like a TOC. Yet, doing a search for a few by their ID, I couldn't find any. So, apparently not.

2. This suggests that if we ever want to ADD a new bank to a file we'd need that process to edit the Init.bnk inside the WwiseAudio.pcc... depending on what types of edits we allow.

3. Fully deciphering the Init.bnk might be the key to more fully understanding the properties within individual soundbanks. Some of that hex we haven't been able to identify the meaning of, yet.
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: New(ish) Tool | Audio Editor

Postby giftfish » 10 Oct 2016, 19:46

STID

Xentax identifies this, questionably, as the "Sound Type ID":

Code: Select all
The STID section (Sound Type ID?) section contains a list of all the SoundBanks referenced in the HIRC section (including the current SoundBank). In the HIRC section, only the SoundBank ids are given, so this section can be used to match an id with a SoundBank file name.

    53 54 49 44 -- STID
    uint32: length of section
    uint32: unknown integer, always 01 00 00 00
    uint32: number of SoundBanks
    FOR EACH (SoundBank) {
        uint32: SoundBank id
        byte: length of SoundBank name
        char[]: String with given length, e.g. "music". Can be used to find the SoundBank file name: "music.bnk".
    } END FOR

This seems to be incorrect, in part. I think this is just "String ID", which seems to verify how WV is labeling fields in the current bank editor:

Code: Select all
Found Chunk, ID:STID len= 39 bytes
...String Count : 1
...String(0) : ID(0xAC13A2C2) citprs_ash_talk1_d


I'd think is this just what Wwise stores as the user-defined name for the bank. The bank will only ever have one name, so there's always 1 string count and one string. So far, I've never seen more than one reference in this section, and it always matches the unreal export name. It's possible there are cases where it doesn't, though, so we'll likely want to include this in some type of Wwise Metadata info. It doesn't seem like it would need to be editable.

--------

FYI -- Looks like the Init.bnk has ENVS and STMG sections. They're labeled as "unsupported" in the current editor.
User avatar
giftfish
Toolset Developer
 
Posts: 1247
Joined: 08 Jan 2016, 02:35
Has thanked: 129 time
Have thanks: 75 time

Re: New(ish) Tool | Audio Editor

Postby The Fob » 11 Oct 2016, 17:04

giftfish wrote:SOUNDBANKS and INIT.BNK

All banks have an ID that I'm assuming is unique across all PCCs. In addition, the Wwise Help PDF states this:

By default, Wwise updates the initialization bank each time one or more SoundBanks are generated. This is to ensure that the two sets of banks are in sync. The Initialization bank contains all the general information about a project, including information on the bus hierarchy, and information on states, switches, RTPCs, and Environmental effects. If changes are made to any of these elements within your project, you will have to update this bank in your game along with the newly generated SoundBanks. If, however, no changes are made to these project elements, you can keep theolder version of the Init.bnk.


Comments:

1. I took this to indicate that the Init.bnk contains an index of all valid bank IDs, a bit like a TOC. Yet, doing a search for a few by their ID, I couldn't find any. So, apparently not.

2. This suggests that if we ever want to ADD a new bank to a file we'd need that process to edit the Init.bnk inside the WwiseAudio.pcc... depending on what types of edits we allow.

3. Fully deciphering the Init.bnk might be the key to more fully understanding the properties within individual soundbanks. Some of that hex we haven't been able to identify the meaning of, yet.


Hey gift, I am sure you are on to this already but just as a reminder, the only time I came in contact with the Init bank was when I chased Music IDs. See here, it's more towards the end of this rather long post, and yes, I say there that I'd write a tutorial which I never did, so I guess you may hit me (but not really).

To my knowledge, this is the only time anyone on these boards ever talked about the init bank and I never bothered to decipher anything more than the plot states for music IDs but I am sure it's possible to decypher it if necessary.

Not sure if this is helpful to you guys at this stage, just letting you know what my latest info on this was.
User avatar
The Fob
Modder
 
Posts: 702
Joined: 08 Oct 2012, 04:37
Has thanked: 242 time
Have thanks: 212 time

PreviousNext

Return to ME3Explorer Toolset Development

Who is online

Users browsing this forum: No registered users and 0 guests

suspicion-preferred