Search Unity

Master Audio - AAA Sound Solution. #1 audio plugin on Asset Store!

Discussion in 'Assets and Asset Store' started by dark_tonic, Jan 28, 2013.

  1. tortillaguy

    tortillaguy

    Joined:
    Sep 26, 2013
    Posts:
    4
    Hi, I really like the features of Master Audio, many nice well thought-out features.

    The only crucial feature I miss (correct me if I'm wrong) is split screen support. Is that something you'd consider implementing in the future?
    For me that is the deal-breaker keeping me from using your otherwise excellently implemented sound solution in my unity projects.

    /Kind regards
     
  2. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    How is that supposed to work? 2 Audio Listeners? Unity doesn't support that.
     
  3. tortillaguy

    tortillaguy

    Joined:
    Sep 26, 2013
    Posts:
    4
    Yes, it's currently a limitation of Unity, but split screen mode is quite common in games these days.
    Today I use my own implementation, but I think it would complete your system by supporting it, giving it yet another reason over Unity standard audio.
    Roughly explained it's about considering the distance to all cameras on screen (2-way or 4-way split screen are common) when playing each sound.
     
  4. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    There are a couple plugins out there with the capability. It's actually on our anti-roadmap of things we never plan on doing. Post # 2 here: https://darktonic.freeforums.net/thread/87/feature-roadmap-master-audio-suggest

    If you want to email me, we can chat about the feasibility. I have no idea how to do it myself.

    I think it will always be a limitation of Unity personally.
     
  5. maengkom

    maengkom

    Joined:
    Dec 15, 2014
    Posts:
    8
    Hello,

    I'm new use Master Audio. I follow this guide to try button click, but no sound heard when the mouse down.


    I'm using Unity 2020.1. What I miss in here. Btw in inspector when click `speaker` button, I can hear it.
     

    Attached Files:

  6. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    There's a lot built in to troubleshoot. Have a look at this page: http://www.dtdevtools.com/docs/masteraudio/Troubleshooting.htm

    1) Turn on "Log Sounds" in Advanced Settings. What gets logged to Console when you click the button?

    Let's start with that one.
     
  7. maengkom

    maengkom

    Joined:
    Dec 15, 2014
    Posts:
    8
    Thanks, I rewatch and that is for NGUI.
     
    jerotas likes this.
  8. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    V 2020.3.5 changelog:
    • Fixed 2D spatialize bug.
    • Fixed bug with Dynamic SGC non-random sound "randomizer".
    • Fixed bug: When using an existing bus from DSGC but you specified "new bus", it no longer deletes the Bus when you disable the DSGC.
    • Removed unnecessary code in Silence / UnsilenceGroup methods in MasterAudio.cs
    • Fixed Unity 2017.1 compile error with Spatializer.
    • Removed Unity 5 support.
    • Added asmdef files for Core GameKit and a separate one if you have both Core GameKit and Master Audio in your project, should you need them. Install the package from the Assets/Plugins/DarkTonic/CoreGameKit/AssemblyDefinitions folder.
    • Added an option to *not* delete the Audio Source on the Audio Listener Game Object if you have one there you need. Master Audio creates one there for previewing in edit mode.
     
  9. ngocsontruongbk

    ngocsontruongbk

    Joined:
    May 5, 2019
    Posts:
    3
    Hi everyone,

    Can you tell me what's asset's backend? Its latency on Android has better Audiosource available in Unity?

    Thanks
     
  10. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    That's a misconception we get sometimes. This *is* the Unity Audio Source and Audio Clip. We just build a Rolls Royce on top of it so you don't have to think about those things. So the latency on Android will unfortunately be the same. I do have on the roadmap to investigate 0 latency Android code when I have time, but that means sacrificing using Unity Audio Sources and everything that comes with it when you use it that way.
     
  11. amynox

    amynox

    Joined:
    Oct 23, 2016
    Posts:
    178
    Hi,
    First of all thank your for this awesome asset !

    I need to implement an audio preview button, like the master audio have with [SoundGroupAttribute] to preview sounds in master audio with specefic PITCH. There is any methode that let me play audio in Edit mode with specefic pitch ?

    Thanks
     
  12. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    There's some code you can copy in MasterAudioInspector, line 5240 for the previewer.
     
    amynox likes this.
  13. amynox

    amynox

    Joined:
    Oct 23, 2016
    Posts:
    178
    Well thats impossible.... Was expecting a method like MasterAudio.EditorPlaySound(SoundName, Pitch) :-D but its seems impossible with +5K of spaghetti code :(
     
    Last edited: Nov 25, 2020
  14. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    You don't need the whole Inspector. Just the part I pointed you to. And anything it needs (GetPreviewer method). It's more like 50 lines of code. That code is slightly different for each place the previewer is used, so I didn't make a generic method out of it.
     
  15. amynox

    amynox

    Joined:
    Oct 23, 2016
    Posts:
    178
    i also need to get the audioclip (from MasterAudio) from a string ! basicly i'm just trying to implement the same "audio preview" button that you have with taking into account a custum pitch value in antother field (all this stuff happen in a ScriptableObject)...
     
  16. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Ah ok. Like the one on Event Sounds.

    Yes, actually I found a helper method for you:

    Code (csharp):
    1.  
    2. DTGUIHelper.PreviewSoundGroup(soundGroupName);
    3.  
     
  17. amynox

    amynox

    Joined:
    Oct 23, 2016
    Posts:
    178
    Hi jerotas,

    Didn't manage to call this helper function even after adding "using DarkTonic.MasterAudio;" to my script ... pretty sure i'm missing something...

    Thanks for your help
     
  18. jessejarvis

    jessejarvis

    Joined:
    Aug 9, 2013
    Posts:
    303
    Hello, I setup Master Audio and added some sounds and such, even a Music Playlist. I have a problem with the volume though, when I press play in the editor through Master Audio it sounds fine, but once I enter play mode it adjusts all the dB settings (The whole DSMixer is -80dB by default) in the Audio Mixer and the music it plays is really quiet. So it is playing, I just don't know how to setup the volume.
     
  19. HeyItsLollie

    HeyItsLollie

    Joined:
    May 16, 2015
    Posts:
    68
    Hi Jerotas, hoping you can point me in the right direction.

    I have a walk animation, and I want to play footstep sounds via animation events. However, I want to be able to control which sound group gets played, based on the type of ground being walked on.

    Event Sounds offers the ability to play a sound via a Code-Triggered Event, but doesn't have a tag filter. Footstep Sounds has a tag filter, but its event list is limited to Collider Enter/Exit interactions.

    Unity_20201130_15-42-14-760.png

    I've also spotted a wrinkle in my plan:
    Event Sounds are limited to only two Code-Triggered Events per game object. I'd love to be able to use animation events to play as many animation-dependent sounds as necessary (not just in walk animations, but in actions and timeline as well), but being limited to two CTEs prevents this as a code-less option.
     
  20. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    I didn't get notification of any replies, sorry. Just randomly looking today. Emailing us or posting on our forum, we check those multiple times a day.

    That's an editor script, so try:
    using DarkTonic.MasterAudio.EditorScripts;
     
    Last edited: Dec 3, 2020
  21. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    I didn't get notification of any replies, sorry. Just randomly looking today. Emailing us or posting on our forum, we check those multiple times a day.

    Most likely you're playing the music in 3d mode and you're far away from the Audio Listener. Take a look at the Spatial Blend Rule in the Playlist section. If you make it 2D it will always be full volume no matter where it plays.
     
    Last edited: Dec 3, 2020
  22. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    I didn't get notification of any replies, sorry. Just randomly looking today. Emailing us or posting on our forum, we check those multiple times a day.

    Event Sounds really covers 99.9% of the everyday uses. For everything else, it's perfectly fine to just use 1-liners in your own code to play sounds.

    I'm not sure why you don't use Footstep Sounds or a collision event in Event Sounds. Describe why this doesn't work?

    Besides the code-triggered events, you also have unlimited Custom Events you can create and use in Event Sounds to do whatever. Usually you'd use those instead.
     
    Last edited: Dec 3, 2020
  23. HeyItsLollie

    HeyItsLollie

    Joined:
    May 16, 2015
    Posts:
    68
    The short of it is, due to how how our player object is set up, collision events only fire when the player has entered a trigger. It feels like I'd have to add a collider and a Footstep Sounds script directly to both feet on the character's rig, which doesn't feel right.

    Here's a quick video demonstrating what I'm running into, and a solution that I'd love to see in MA.



    I did read up about Custom Events and managed to hack up a dirty little solution, though I'm confused about why code-triggered events and custom events are treated as separate things.

    Is there something like ActivateCodeTriggeredEvent() that can trigger a Custom Event? Having a codeless option built-in would be especially useful for artists and animators.
     
    Last edited: Dec 3, 2020
  24. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    First answer, yes. Adding a Footstep Sounds script on both feet is correct. You shouldn't need to add a collider. Your player should already have colliders that will work. If you want to change the area of the trigger then yes.

    Second question, yes you can fire Custom Events from any Event Sounds event, or by just adding a line of code anywhere to do it.

    MasterAudio.FireCustomEvent is the line of code. Add some parameters.

    Code-Triggered Events are really only there to be triggered by animations, which can't use Custom Events because the system Unity provides there isn't flexible enough. Everything else should probably use the far more flexible Custom Events.
     
    Last edited: Dec 3, 2020
  25. HeyItsLollie

    HeyItsLollie

    Joined:
    May 16, 2015
    Posts:
    68
    So, our player object has a single collider — It's the capsule collider that you can see in the video, and it encompasses the entire model. We're using [Character Movement Fundamentals] for our character controller, so it massively simplifies our needs.

    I have a couple issues with the intended setup, so I have some feedback:
    1. Attaching Footstep Sounds directly to a model's rig means that, if you need to add new sounds or tweak options, you have to dig around in the object's hierarchy to find all instances of the script. Two scripts for humanoid characters, four for some animals, even more if you're making a weird creature or machine. You also have to make sure that your alterations are copied across each instance of the script.

    One way this could be addressed: Give the current "Footstep Sounds" script the ability to become a "Receiver" that can sit at the root of a gameobject, and introduce a "Footstep Sounds Broadcaster" script that can sit on the required parts of the rig instead. The Receiver could then have a list in the inspector that the user adds Broadcasters to, allowing all the important details to be controlled at the top-level of the gameobject.

    2. By relying on a collision event to trigger sounds, an element of control is removed from the ability to precisely time sounds. The "Delay Sounds" slider can offset this to an extent, but a collision event isn't always predictable, so adjustments like this can only go so far.

    An "OnFootstepEvent()" function would go a long way in alleviating this issue. Making the Footstep event publicly accessible means that it can be tightly connected to an animation, like in the image below:
    Unity_20201204_21-13-18-532.png

    I ended up editing FootstepSounds.cs in order to add a very basic version of this functionality — it doesn't currently handle tag filtering for separate feet, but it fires the same "PlaySoundsIfMatch()" function used by OnCollisionEnter() and OnTriggerEnter().

    Code (CSharp):
    1. public void OnFootstepEvent() {
    2.     if (footstepEvent != FootstepTriggerMode.OnFootstepEvent) {
    3.          return;
    4.     }
    5.  
    6.     GameObject other;
    7.     RaycastHit hit;
    8.     float offset = 1f; // Ideally, I'd make this configurable via the inspector
    9.     float distance = 2f; // As above
    10.  
    11.     Vector3 rayOffset = new Vector3(
    12.         transform.position.x,
    13.         transform.position.y + offset,
    14.         transform.position.z);
    15.  
    16.     if(Physics.Raycast(rayOffset, Vector3.down, out hit, distance)) {
    17.          other = hit.transform.gameObject;
    18.          PlaySoundsIfMatch(other.gameObject);
    19.     }
    20.     else {
    21.          other = null;
    22.          return;
    23.     }
    24. }
    There's only two Code-Triggered Events though, which really severely limits the amount of sounds that can be played by animations using this function. Compare CTEs to Custom Events, which don't appear to have any limit to the amount that can be created — but require a custom script before they can be useful for animations.

    Sure, the script can be extremely simple to implement. I made one that accepts a string, and it works well with animations. I'm just not seeing what benefit CTEs provide compared to Custom Events on the audio side of things, and why the extra work is required to make use of such a useful feature.
    Code (CSharp):
    1. public void ActivateCustomEvent(string customEventName)
    2. {
    3.     MasterAudio.FireCustomEvent(customEventName, this.transform);
    4. }
     
  26. wagenheimer

    wagenheimer

    Joined:
    Jun 1, 2018
    Posts:
    323
    I have a simple question!
    I do need to use some regular AudioSources on some scenes (On Timeline, among others).

    Is there a simple way for all these AudioSources automatically to match the MasterAudio.MasterVolumeLevel volume? If I change AudioListener.volume it will also affect the MasterAudio.MasterVolumeLevel?
     
  27. Faizalski

    Faizalski

    Joined:
    Oct 4, 2018
    Posts:
    27
    A question for the dev.
    What are the audio file format supported by this tool?
    Do you by any chance have a list of it?
    mp3. ogg. .wav .midi etc?

    Thank you in advance,
     
  28. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    All. Under the covers, this is Unity Audio Sources and Audio Clips. Anything Unity can use, we can use.
     
  29. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    No. Master Audio should control all audio, not most. You are probably just not aware of how *not* to need those Audio Sources. We do have Timeline support with EventSounds script.

    Please explain what you are trying to do and I will let you know the best way to do it with Master Audio.

    Yes, if you change the Listener volume it will affect Master Audio and you should not do that. We have our own ways to adjust volume as a "master". Your Unity Mixer asset asset also does. No need for a 3rd level of master volume control.
     
    Last edited: Dec 4, 2020
  30. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    #1, it appears that we neglected to include Footstep Sounds from the RelationsInspector Sound Group search functionality. Will add that so you can just click the magnifying glass next to the Sound Group to find all instances of it in the Scene, and can click on it to go directly to the game object, even if deep inside a 3d model.

    If you want a receiver, use Custom Events. Attach Event Sounds instead of Footstep Sounds to each foot and fire a custom event from the Trigger. Then have an Event Sounds in a central location that listens to the custom event(s) and plays the sound(s).

    #2, I'm really not sure what you're trying to do here. Users have used the Footstep scripts fine without any of this. It requires a very precise trigger to be defined if you don't have one already (you said you don't). But you could always use the ActivateCodeTriggeredEvent directly anyway. There's only 2 of them *per Event Sounds component*. And you can add as many of that component as you like if you need more.

    But also keep in mind that your Code-Triggered Event can fire a Custom Event (EventSounds can do this), which can be listened to from same/other Event Sounds and do tons of other things as well. So it doesn't limit you.
     
    Last edited: Dec 4, 2020
  31. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Re: my post above, I have now added Footstep Sounds lookup to the Relations Inspector part, and it will be in the next update.
     
  32. cleversons_unity

    cleversons_unity

    Joined:
    May 11, 2018
    Posts:
    8
    Hi,

    I've been successfully using Master Audio for a couple of years.
    But, in a recent update, my game has a strange problem, only on iOS. In the first session (the very first session right after installing the game either from XCode or the App Store) the soundtracks are not played. SFXs (audio clips) are ok, they are playing as expected. But when I try to play the soundtracks through the Playlists configured in the game, there is no sound.
    I've tried a few different strategies (play them after a few seconds, after a button click), but I failed to make them work. The tricky part is that if I minimize the game (tap the home button) and bring it up again, everything is working perfectly. If I restart my device and open the game, again, everything is working. It's only in the very first game session. Has anyone ever seen something like that?

    Some info:
    Master Audio: 2020.3.5 (latest)
    Unity: 2019.4.16f1
    iOS: 14.2
    XCode: 12.3
    Android and Editor working fine.

    Thanks in advance!
     
    Last edited: Dec 16, 2020
  33. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Doesn't sound familiar. There's really no way to debug other than you adding Debug lines to read in XCode I'm afraid. Plus, it should run the same on all platforms or it's just a Unity exporter bug and nothing we can do about that.

    There is the following code in PlaylistController.cs
    Code (csharp):
    1.  
    2.         private void OnApplicationPause(bool pauseStatus) {
    3.             _lostFocus = pauseStatus;
    4.         }
    5.  
    You could add the following line there:
    Debug.Log("paused: " + pauseStatus);

    And see if that gets called before your music stops playing. If _lostFocus = true that means the app is supposed to have been shrunk away and lost focus, so Update will stop running until it's false.
     
    cleversons_unity likes this.
  34. sacb0y

    sacb0y

    Joined:
    May 9, 2016
    Posts:
    874
    Is it possible to override "stop oldest" voice for a specific sound group.

    Like say I want just about every "voice" to not be overridden but one sound group can override that so i can guarantee the "Voice" is played.
     
  35. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    You should check out the Retrigger Percentage field. It can't guarantee but it will help. Stop oldest does guarantee a voice is played by the way. Even if it was just played last frame it is the oldest and will stop so you can play the new one.

    But I may not understand what you're talking about. Show me some screen shots or ask a more detailed question.
     
  36. sacb0y

    sacb0y

    Joined:
    May 9, 2016
    Posts:
    874
    Ok so for example lets say i have a game where characters talk a lot, maybe grunt or do other things. It happens a lot, and it's random or based on gameplay triggers.

    And i want to make sure they are not constantly canceling their randomly triggered dialogue for a new one cause it sounds unnatural. And i also can't have the same character "voicing" two things at the same time.

    So in this scenario, I need to have the character say something super important at a specific trigger. This thing is more important than anything else they could possibly be saying at the time.

    Currently with voices, if the character happens to be saying anything in particular, then that very important line won't play. I just want a way to override and force that "voice" to play cancelling out anything else (and naturally anything that may come after due to the existing voice limit).

    And yeah I could do this by code (which I'm already trying with "StopBus"), but having the option would be easier. Or building it into one of the playsound commands would also be great like "forceplay" or something.
     
    Last edited: Dec 16, 2020
  37. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    So this sounds like what our coders were asking for a few months ago. I ended up building all the "Importance" stuff for V 4.3.2. I think maybe you're not aware of those additions.

    Please read the release notes that mention "Importance" and "Most Important" for V 4.3.2 here: https://darktonic.freeforums.net/thread/42/release-notes-announcements-subscribe-thread?page=7
     
  38. sacb0y

    sacb0y

    Joined:
    May 9, 2016
    Posts:
    874
    Hm, yeah i don't have this so i guess i need to update lol.
     
    jerotas likes this.
  39. cleversons_unity

    cleversons_unity

    Joined:
    May 11, 2018
    Posts:
    8
    Thanks for the quick answer.
    I did what you suggested and OnApplicationPause is indeed called (with pauseStatus == true) in the first scene of my game. This is why the soundtrack is not being played. I just don't know why this is happening. Any workaround in mind?
     
  40. cleversons_unity

    cleversons_unity

    Joined:
    May 11, 2018
    Posts:
    8
    One more information. It's the authorization popup that Unity calls for asking the player to allow notifications that is causing this problem. The popup is shown and the game gets called in the OnApplicationPause callback. When the popup is dismissed, there is no call to OnApplicationPause unpausing the PlaylistController.
     
  41. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    That sounds like a Unity bug for me. If we remove the code in Master Audio that causes this, unpausing songs will not behave correctly.

    You may want to ask that question on the iOS Unity Forum here: https://forum.unity.com/forums/ios-...56.547010167.1608059075-1033184713.1522134628

    If you do, please send me a link so I can subscribe and stay updated.
     
    cleversons_unity likes this.
  42. sacb0y

    sacb0y

    Joined:
    May 9, 2016
    Posts:
    874
    So i tried the feature and "Stop Least Important Sound" seems to be what I need, but it doesn't seem to work correctly?

    So if I have a sound with an importance of 4, and a new sound wants to play with an importance of 4, it should not play, correct? But a sound with an importance of 5 will play, or a sound marked "Uninterruptable".

    Cause at the moment, sounds with an importance of 4 keep overriding themselves, which is not ideal, and doesn't seem to match the description. Am I missing something?

    EDIT: Maybe I'm reading this wrong. I think it says thats what it looks for to stop playing. I think ideally, I would prefer only more important sounds override less important sounds, not sounds of equal importance.

    A sound of equal importance to me is likely a sound not needed since the other equal sound (Likely from the same group) is doing it's job.
     
  43. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Yeah you did originally read it wrong. Ties of importance will play. That is necessary because otherwise a max importance sound would never get to play if another was playing. This will not change. This is also why we added the uninterruptible checkbox. In case of a tie, you can choose which ones will not be stopped mid clip.
     
    Last edited: Dec 17, 2020
  44. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    V 2020.3.6 changelog:
    • 2nd Fix for 2D spatialize bug, for Playlist Controller as well.
    • Bug Fix: Adding more than 1 song at a time to a Playlist and immediately pressing play, they would vanish and not be saved.
    • Fix: Having multiple of the same Dynamic Sound Group Creator would delete groups / playlists and other items and some of the DSGC's were still active, breaking sounds and causing errors.
    • Relations Inspector now shows and finds Footstep Sounds - it was omitted by accident.
    • Added Mixer Settings under Advanced Settings. There's a setting for Mixer Update Mode, and it's set to ignore time scale as default. You can change it to respect time scale. This setting is used when transitioning to snapshots through Master Audio.
    • Added new checkbox "Disable 3D Sound" on Welcome Window which removes all Spatial Blend controls from the Inspectors. Everything will be 2D Audio Sources if you check this.
     
  45. knas01

    knas01

    Joined:
    Feb 24, 2018
    Posts:
    236
    Hi, maybe I'm blind but I checked the docs for which FX are included, but all I found was the ones made by Unity. So I wonder what FX are included for sound effects and how can you use them in your world?
     
  46. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    None. That's not what this plugin is about. You can use the Unity ones the same. Put them on the Unity mixer channel.
     
  47. knas01

    knas01

    Joined:
    Feb 24, 2018
    Posts:
    236
    @jerotas Ok, so if I want to take advantage of this asset, I can only use effects that come with Unity and not other 3rd party ones?
     
  48. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    You can use any 3rd party ones as long as they interact with Unity Mixer channels or Audio Sources. Because that's what we use . If they use something different than the Unity audio system then no.
     
  49. knas01

    knas01

    Joined:
    Feb 24, 2018
    Posts:
    236
    jerotas likes this.
  50. atmuc

    atmuc

    Joined:
    Feb 28, 2011
    Posts:
    1,166
    I move my extra assets to the Standard Assets folder. When I move Master Audio files to the Standard Assets folder I get the following error. How can I solve this?

    Unable to find required resource at MasterAudio/inspector_header_master_audio.png
    UnityEditor.EditorGUIUtility:LoadRequired(String)
    DarkTonic.MasterAudio.EditorScripts.MasterAudioInspectorResources:.cctor() (at Assets/Standard Assets/Tools/MasterAudio/Plugins/Editor/DarkTonic/MasterAudio/MasterAudioInspectorResources.cs:12)
    UnityEngine.GUIUtility:processEvent(Int32, IntPtr)