Search Unity

  1. Megacity Metro Demo now available. Download now.
    Dismiss Notice
  2. Unity support for visionOS is now available. Learn more in our blog post.
    Dismiss Notice

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. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Master Audio 2.2 has been submitted to the Asset Store. New features are:

    1) Added more ducking control. Ability to set the % of clip at which the volume starting unducking (returning to normal volume).
    2) Added volume sliders for each Sound group's variations all on the Group inspector for quick adjustment.
    3) Added playlist functionality to Master Audio, with random, auto advance, loop, cross-fading and the ability to call them from code.

    I'll let you know when the changes are live. Let me know what else you'd like to see!
     
  2. dark_tonic

    dark_tonic

    Joined:
    Mar 23, 2011
    Posts:
    138
    Master Audio 2.2 is now live!

    Update it and get your ducks and crossfades on :)
     
  3. zeeawk

    zeeawk

    Joined:
    Sep 12, 2012
    Posts:
    67
    Is there anyway to tie MasterAudio and KillerWaves together so you can manage all audio from MasterAudio?
     
  4. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Yes, you can use them together, we do that on our games. The music ducker in Master Audio can work with the Wave music in Killer Waves for example. Although it's possible it may need an update after the last Master Audio update.

    In general though you can use the custom listener classes in Killer Waves to trigger Master Audio sounds with a single line of code, that's easy to do.
     
  5. zeeawk

    zeeawk

    Joined:
    Sep 12, 2012
    Posts:
    67
    Very cool. Is this documented somewhere?
     
  6. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    No it's not. If you have both plugins and want to trigger a Master Audio sound from an "Listener" event, let me know which event (look over all the event types) and I'll try and give a simple example. To see how to set up an Listener, watch the 4th and most recent Killer Waves tutorial video.
     
  7. zeeawk

    zeeawk

    Joined:
    Sep 12, 2012
    Posts:
    67
    Okay ill check out the video.

    Right now I just have clip defined to play for a wave starting and I want Master Audio to be in control of that.
     
  8. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Yeah that's not a problem. The simplest way to do that is to NOT set up the wav in Killer Waves at all, and use the Listener to play the wav file with "MasterAudio.PlaySound()". You would use the listener for the Syncro Prefab Spawner which has an event called "WaveStart" I believe.
     
  9. I am da bawss

    I am da bawss

    Joined:
    Jun 2, 2011
    Posts:
    2,574
    Hi, ran into a problem while importing - it seems player.cs already exist on multiple location :

    Scripts named 'Player.cs' exist in multiple locations (Assets/EasyTouch/Example/C# Example/Example for EasyButton/Player.cs). Please rename one of the scripts to a unique name.

    Scripts named 'Player.cs' exist in multiple locations (Assets/MasterAudio/ExampleScenes/ExampleScene/Scripts/Player.cs). Please rename one of the scripts to a unique name.


    I am wondering if you can rename player.cs to something like "ma_player.cs" to avoid this conflict every time I update Master Audio - I know I can update from my end, but its far easier if you update from your end because I won't have to rename EVERY TIME I UPDATE. Thanks! :)
     
    Last edited: Dec 18, 2013
  10. zeeawk

    zeeawk

    Joined:
    Sep 12, 2012
    Posts:
    67
    Had the same issue with Ultimate FPS Camera (i think) and Master Audio.
    Just removed the Example Scenes because I didn't need them.

    I second that It would be easier though if it were renamed.
     
  11. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Sure, no problem guys. I will rename all scripts in the example scene so that a name collision is unlikely to occur. It will be in the next update!
     
  12. I am da bawss

    I am da bawss

    Joined:
    Jun 2, 2011
    Posts:
    2,574
    Thanks Jerotas!!
     
  13. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Hi guys, I was emailed by a Master Audio user about problems that sometimes happen when editing the enum in MasterAudio.cs. This is not the first suggestion I've had to either lose or fix the enum, so I am resolved to remove it from the next version of MasterAudio. That means no more having to edit SoundGroups in the MasterAudio.cs file. However, this will be a breaking change due to the pervasiveness of the enum, so any project upgraded to that version will basically need to re-setup MasterAudio as well as change all enums in code files to strings. However, this will mean you can mistype a SoundType and not know it's wrong until runtime. It's a tradeoff.

    While you're waiting, if you happen to have problems with Inspectors' SoundTypes changing when you edit the enum, please add a numeric value to each enumeration of the enum. Such as:

    public enum SoundGroup {
    Alert = 1,
    Smash = 2,
    Death = 3
    }

    This will prevent the Inspector problems inherent in the auto-renumbering of the enum, regardless of where you insert and remove items. I hope that helps!

    If anyone is totally against the enum-elimination idea, please let me know in the next couple days so I can weigh the responses. Thanks!
     
    Last edited: May 13, 2013
  14. Krileon

    Krileon

    Joined:
    Oct 30, 2012
    Posts:
    642
    I'd like to see the enum go away. Just doesn't seam needed. Would prefer some sort of GUI to easily add new types (could just be a simple text array?). I'd also really like to see an API documentation. The readme barely covers all the API functionality. I write PlayMaker scripts for all assets I use (I'm clocking in over 300+ custom actions now) and will be writing a full set of them for Master Audio and it sames me a large amount of time if API documentation is available, but for now will just review sources.
     
    Last edited: Jun 2, 2013
  15. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Ok, I will do it soon (remove the enum). The readme PDF does indeed have the entire functionality in it, and it has been updated with every revision. I hope you've downloaded the newest one with the newest version of MasterAudio.

    Thank you for the vote!
     
  16. Krileon

    Krileon

    Joined:
    Oct 30, 2012
    Posts:
    642
    Ah, ok; will take another look at. From what I can see there was only playsound and stopsounds shown, but not detailed. It's not a problem though as you've wonderfully provided the source (love this fact!) so can easily just review the scripts. Anyway this looks very cool. I'm mainly using it for volume controls so I can have a GUI to control the various volume groups and/or master individually; something that's a massive pain to do with Unity audio (I'm finding Unity is a failure when it comes to many critical usages.. it's kind of sad). Anyway, 5 stars to you!

    Edit: Few other API notes. There appears to be no global function to adjust master and group volume. My main reason to using the asset is to have volume controls for master and groups (for example adjust the Music volume independently of the SFX volume). This can be done easily by adjusting the audio volume for the MasterAudio component, but a global function (if possible) would be great (like PlaySound for example).

    Edit: Ok, I've master volume control done, but am not seeing a way to adjust the volume of groups individually. Can you point me in the right direction on how to adjust group volume?

    What I'm trying to do is have the following.

    Master - Volume Control
    Music - Volume Control
    - Track 1
    - Track 2
    - Track 3
    - etc..
    SFX - Volume Control
    - Explosion
    - Death
    - Walk
    - Escape
    - etc..

    Is this something Master Audio can do? It looks like Groups (Types) for me can be "Music" and "SFX" then within each "Group" I'd have "Variants" or "Clips", correct? Maybe some terminology adjustments needed? Same items are being called multiple names making it very confusing. Is a type a group or a group a type? I don't quite understand the interchangeability of the two. If they're one in the same they should have same terminology, IMO.

    The next issue is if I create a "Group" (to me these are just Types) and I use PlaySound then it's asking for the Type, not Type then the Clip. So how would you play Explosion of "Group" (Type) SFX?

    Update: Unfortunately just not enough API calls for my needs.Will be using Audio Toolkit. For future releases suggest improving API usages. Regardless of this it's still a fantastic asset for what it does!
     
    Last edited: Jun 2, 2013
  17. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    I think your issue is that you haven't broken down your groups at a low enough level. You don't need to use groups for music / SFX, that will hinder you. You should use a group for each particular sound, i.e. Explosion, Death, Walk would each have their own group. If you have more than one possible explosion sound and want them to play randomly, use variants (of the group) for that. A type is a group. If you ever need to play a specific variant, that's a sign that it shouldn't be a variant and should have its own group/type. Each group does have its own group master volume as visible on the mixer section in the Master Audio prefab.

    You are correct that the master volume and group volumes cannot be adjusted during gameplay (well you can adjust the sliders in the Inspector but it has no effect). When you start playing the game it uses the last settings from the Inspector. This is something that it sounds like you would like added to the API? Shouldn't be too difficult if so. I've used the Audio Toolkit and it's a good asset. I didn't find the UI flow very intuitive though. But if you're used to it, that's not a problem :)
     
  18. Krileon

    Krileon

    Joined:
    Oct 30, 2012
    Posts:
    642
    My idea is to have all my Music in a Category and then control the global volume to that category from UI. Inside of the Music Category could be sub-Categories or Groups, etc.. as needed.

    I'd need runtime access to volume controls so I can have volume adjustment in my game through the UI. Your UI is quite better than Audio Toolkit, but the UI won't be of much importance to me as most will be done through runtime.
     
  19. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Second point taken. That should be scriptable, I will put it at the top of my list.
    First point, why are you not using the Playlist Controller to play music clips? I realize that still it has no master volume control (which I shall add) but it does have cross fading and that's where music should be played from. I can't think of a way to keep the UI clean and intuitive if I introduce subcategories so I am unlikely to do it until I figure that out. I don't want the plugin to become hard to learn for people with more basic usage needs.

    If I add a master volume slider to the Playlist Controller, you would have a master volume level for music and SFX separately. I will make them both scriptable.

    Edit: now MasterAudio has buses, so "category volume" exists.
     
    Last edited: Aug 14, 2013
  20. Krileon

    Krileon

    Joined:
    Oct 30, 2012
    Posts:
    642
    Sub categories isn't too much of a big deal, mostly just need volume control on a global and category level at runtime. The music will be static throughout the entire level (it's 2.5D) so I don't need any playlist handling, but either/or usage is fine; I just need volume control.

    What confused me the most is Types and Groups. I didn't see Categories anywhere no how to achieve them so it was a big confusing. Example as follows.

    SFX - Category
    - Item1
    - Item2
    - Item3

    Is SFX a Type or a Group? Are Items1 just Varients of the SFX Group? Do I need a Master Audio prefab per Category?
     
  21. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    You can only have one MasterAudio prefab in a scene. Each value of the SoundType enum is a group. The way you have it SFX is a group, and Item1-3 are 3 variants of the group.
     
  22. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Ok Krileon (and others), I've just submitted an update to the Asset Store. Master Audio V2.3 should be here.
    Change list follows:

    1) Fixed bug where auto advance won't take cross fade time into account, producing an artifact.
    2) Renamed all example scene scripts to avoid name collision.
    3) Moved MusicDucker.cs code into PlaylistController.cs. MusicDucker.cs file deleted.
    4) Added Master volume slider for PlaylistController to control overall music volume level.
    5) Now logging an error if Playlist contains any songs and there's no PlaylistController in the scene.
    6) Now logging an error if you call PlaylistController methods without one in the scene.
    7) Added methods to modify master volume, group volume, PlaylistController volume, mute solo switches via script at runtime.

    -Brian
     
  23. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    The update is now live! Enjoy
     
  24. uniphonic

    uniphonic

    Joined:
    Jun 24, 2012
    Posts:
    130
    When I purchased this script, from watching the video, it seemed that there was a way to make it duck a single audio source by placing a script on it. Now it seems that the latest version no longer has that capability, and instead you have to use a playlist controller with 2 audio sources. That won't work for my application because I'm also doing some CPU heavy stuff on the audio source, so it needs to be only a single audio source playing the music. Can you please bring back the old functionality to simply place a script on the audio source that you want to duck? (This probably means bringing back MusicDucker.cs file?)

    Also, is it possible to have a single Sound Group that can play back the same audio file at different pitches? Is it also then possible to have this sound group be monophonic (only play one audio source at a time and triggering a second play would mute the first)?

    Thanks!
     
  25. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Uniphonic, sorry about that! The video was made before there was PlaylistController or ANY music functionality except the ducking. V2.2 added a lot of playlist functionality and cross-fading in particular requires 2 audio sources. People were asking for it so I added all that, but it does have scenarios it won't work with, as you have seen. I can send you V2.1 if the single audio source ducking is essential, but you will lose all playlist functionality. Let me know what you want to do.
     
  26. uniphonic

    uniphonic

    Joined:
    Jun 24, 2012
    Posts:
    130
    Hi Brian,

    Thanks for your reply. I was able to go back to my second computer, where I hadn't updated the asset in the Asset Store, so it still had version 2.1 in it, so I think I'll go off of that for now. Any chance you can re-introduce the ducking functionality for other sources?

    Second separate question:

    Is it possible to have a single Sound Group that can play back the same audio file at different pitches, and have this sound group set to play less sounds simultanously than the number of sound variations it has? For instance, could it be be monophonic (only play one audio source at a time and triggering a second play would mute the first)?

    Thanks!
    Jacob
     
  27. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    I think re-introducing the ducking on other sound sources would be pretty difficult the way I have the code now (if I am to have it work both ways). Do you mind letting me know what you're doing to the Audio Source that makes the Playlist Controller unusable for you? Possibly I could add functionality to the PlaylistController to approximate what you're doing?

    About the monophonic capability, that should be fairly straightforward. I'll see if I can add that tonight and post back here.
     
  28. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    For a limited time Master Audio is on sale for a mere $30! Pick it up now - best price of the year!
     
  29. uniphonic

    uniphonic

    Joined:
    Jun 24, 2012
    Posts:
    130
    Thanks Brian. For the other audio source I would be doing some real time analyzation of the output, and also possibly some some real time audio effects, so those are things I don't want to duplicate because otherwise it would double the CPU usage. This is why I don't want to have the Playlist Controller required in order to use the ducking.

    For the monophonic thing, what I'm interested in is not so much just the capability for it being monophonic specifically, but the capability of being able to have less polyphony than there are audio variations. Such as, I'd like to have 5 to 10 audio variations, but only play a maximum of 3 voices simultaneously. It seems like this is not possible with the current system?

    Thanks!
    Jacob
     
  30. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    You are right, that's not possible currently. But I think it's a relatively easy mod. I'll dig into it tonight and report back. As far as having a single-source audio ducker, that will not be something I can crank out right away, but I will look into it soon and see if I can support it.
     
  31. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Ok uniphonic, I got the polyphony limiter working. However I just realized that will do you no good because you are stuck on V2.1 until I get the single Audio Source ducker back. So it may be a few days, hang in there!
     
  32. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Uniphonic, I gave it a shot and banged out the single Audio Source music ducker and a setting to choose between PlaylistController and single audio source ducking. Just submitted it to the Asset Store so it will be here soon. The documentation is already updated in the OP link.
     
  33. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Master Audio V 2.3.1 is now live and still on sale for half price! Uniphonic's suggestions are incorporated.
     
  34. uniphonic

    uniphonic

    Joined:
    Jun 24, 2012
    Posts:
    130
    Awesome! Thanks! I just downloaded it, and am going to give it a try. Thanks for integrating my requests so quickly! :)
     
  35. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    No problem!
     
  36. metaphysician

    metaphysician

    Joined:
    May 29, 2012
    Posts:
    190
    first of all, thanks a lot for writing a simple but useful tool for handling audio in Unity. keep up the excellent work! i'd like to offer some feature requests and some constructive criticism for hopefully what you'll think are improvements. i definitely like a lot of things about MasterAudio. muting and soloing groups, being able to have an event trigger with weighted variations, and the ducking are really marvelous additions and in general your Inspectors are clean and functional. i'm seeing this as an entry level middleware tool and since i've worked in both FMOD (Designer and studio) and Fabric (a Unity based toolset, not on the Asset Store) i have an idea about what kind of functionality is desired for audio tools.

    so here are the requests, or maybe there's already a way to do these?:

    1. Changing an event call to use the variation exclusively, not the original sound. i'm doing some app design at the moment and i'm running into a need to use multiple sound sets ideally associated with the same events (SoundTypes in MasterAudio). for example i want to first play a game with one set of sounds and then at some point switch that set to the variation associated with that SoundObject. is there already a way to make this happen in scripting? maybe MasterAudio.GrabGroup(SoundType sType) could work?

    2. Being able to randomize pitch of triggered SoundGroups this is pretty seriously important from middleware angle, and you're already going this path with SoundGroup variations. You need a percentage float value that sets a randomized pitch/speed variation plus or minus around the base pitch. I know the Audio sources can change pitch/speed, so call the change just before triggering any AudioSource and it seems you'd be all set. I know Clockstone has a pitch shift function for their audio as well as music. Doing this will help things like footsteps, explosions - things where a few sound variation at the same speed would be wearing on the ears after some time.

    Suggestions:

    1. Fix the need to hand edit Enums in the MasterAudio.cs file for your list of SoundTypes It's a bit of a pain and honestly I looked at it the first time and was turned off. I think there has to be a way to add that data to a C# script from a text edit field or something more fancy in a private Editor Widget. you could pretty easily insert your None placemaker GameObject that you don't want deleted as a default string to append, and format line endings to have commas, etc.

    What i'd love is if there was an automated way to take an XML file and read the data off of it to populate the Enum SoundTypes as well as create SoundGroups and their associated sounds straight away. the sounds would have to be present in a folder, but i'm looking down the road to handling a lot more SoundTypes/Groups. after dealing with over 25 manually it gets to be less fun and interesting.

    2. Put the Utility functions in a separate Widget/Window I've lately been working with NGUI to create an app and i really love the tool. One thing it does very well is arrange the utility functions in a separate Widget collection, instead of in the Inspector. So i'd suggest the same. You have a few occasions where you have the ability to create a SoundGroup or Sound Variation, and then the creation area just hangs around looking weird until you need it again or you hide it. stick the creation features in a separate widget, and anyone wants to create something can go to the widget. this keeps the Inspector better for configuration.

    3. Be able to Trigger a SoundGroup from Draggable GameObject and Function string This is another thing i've seen in NGUI and i like it a lot. I think it should be relatively easy to encapsulate as a choice in the Inspector along with all of your other trigger choices.

    i've got other suggestions but i don't want to snow you over with too much stuff. this is probably plenty as i assume updating MasterAudio isn't your day job. i appreciate everything you've done so far, and look forward to whatever improvements you're planning!

    best,
    scott
     
  37. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Thank you for posting Scott. Addressing some of your points:

    1) Random pitched sound variations are on my to do list, just as soon as someone asked for them. Consider that done.

    2) I was hesitant to get rid of the SoundGroup enum it because you will lose the ability to pick from the sound groups in the Inspector if you aren't in the scene with the matching Master Audio settings. Oh well, it's a necessary evil. This is now on the official to do list for the next version. This will not be a trivial change by any means. I don't believe there is a way to automatically and reliably create / modify a C# script from the Inspector, but if someone knows how, please let me know!

    3) I don't think I agree with the Widget suggestion with this particular plugin (possibly with our other Killer Waves plugin though). There's really only the create SoundGroup section on the MasterAudio prefab, and the on the SoundGroup prefabs, there's Create Variation. Only 1 section in each place, and it's easily collapsible if you don't want to look at it. If I moved that functionality into widgets, you'd have to go open the widget instead of having it all there at your fingertips. I personally dislike plugins that use very large widgets (including an particular competitor Audio plugin I won't name) instead of "getting the most out of the Inspector", but to each their own. I think that in this particular instance, the context-sensitive creation areas enable a better and faster workflow - as they are now. The widget approach would disrupt workflow - the way I like to work anyway. Anyone is free to disagree with me of course! If so, speak up.

    4) The other two suggestions I don't fully understand, so feel free to email me at support@darktonic.com to continue this discussion. You can indeed access the sound variations from GrabGroup, but I don't think the variations contained in the group from there will give you what you want.

    You are right, updating MasterAudio is not my day job. Even though there have been hundreds of sales, very seldom do any of our customers ask for new features.

    -Brian

    P.S. I'm also considering adding output busses to control groups of SoundGroups at once (mute, solo, volume switches).
     
    Last edited: Jul 15, 2013
  38. uniphonic

    uniphonic

    Joined:
    Jun 24, 2012
    Posts:
    130
    Would these output busses mean that I could put effects on a sound group and have it applied to a group of sounds all at once? :) If so, that would be completely awesome!

    One thing I've been disappointed about the Unity audio system is the inability to place a single effect across multiple audio sources (without duplicating the effect and thereby increasing the CPU usage), but not all audio. The only way I could think to do it though would be to use the OnAudioFilterRead to create a custom bus to add different audio sources together. I kinda doubt this is what you had in mind for creating groups of sub groups, but I figure it wouldn't hurt to put the question out there...

    PS. I would find the random pitch functionality very useful as well. Thanks!
     
  39. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Effects on the busses, probably not. I can't think of an efficient way to do that with the way the Unity audio system is. I agree with your synopsis unfortunately. Mainly I think busses would be cool for quickly controlling levels of categories of sounds (or muting / soloing). Such as mute all weapon sounds or raise the level of all.

    I have already finished the random pitch part and am going to add 1 or 2 more of the recent suggestions real quick and get this update out quick-like while I work on the longer part of removing the enum. So stay tuned for more awesomeness!
     
  40. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Thanks everyone for the suggestions and feedback. I just submitted an update to the Asset Store with the following changes:

    - (breaking change) Added a SoundGroupVariations script to each Sound Group Variation. Please delete all Sound Groups and recreate them from the MasterAudio prefab so the script will be in place. This supports random pitching.

    - Added random pitch to Sound Group variations. It will add a randomly negative or positive number up to the number you specify to the original pitch.

    - Fixed bug with zero variations for a SoundGroup at runtime.

    - Added an extra optional parameter play a variation of a Sound Group specifically by name.

    - Added other parameters of Audio Source to Sound Group and Variation Inspectors for easy access.

    - Fixed bug where cloned variations (created at runtime from Weight > 1) didn't copy the pitch of the audio source from the original.

    It will be live soon. If you want to see the updatede documentation, the link in the OP is already updated. P7-8 contain the new optional parameter for named variations.
     
    Last edited: Jul 16, 2013
  41. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    V 2.4 with the above updates is live! I'm working on the bussing and should have that done shortly for the next version. Then I will work on getting rid of the enum.
     
  42. imtrobin

    imtrobin

    Joined:
    Nov 30, 2009
    Posts:
    1,548
    Yes, finally!
     
  43. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Haha, I know. It won't be easy and that's why I've been putting it off. But I will do it this time!
     
  44. I am da bawss

    I am da bawss

    Joined:
    Jun 2, 2011
    Posts:
    2,574
    Updated to the latest version and got a warning upon importing it:

    "WAV contains a MP3 file - file is unwrapped and reencoded (this might affect quality)."

    And Unity points to "GilaMonster.mp3" as the offender. Not sure why Unity would think a MP3 file is a WAV file and needs to be re-encoded to MP3 again... (maybe that GilaMonster.mp3 is actually a a WAV file renamed to MP3 only??)

    Anyway, no biggie. :) Unity converts it anyway. But it would nicer if that warning goes away and we can just update without having to convert that same file every time.
     
  45. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    That warning has been there since I put it in. I didn't want to put a wav file in because it just takes up too much room. It's only for the demo scene anyway, which you probably delete immediately if you've used the product before.
     
  46. uniphonic

    uniphonic

    Joined:
    Jun 24, 2012
    Posts:
    130
    I just updated to Unity 4.2, and after updating I'm getting an error message:

    NullReferenceException: Object reference not set to an instance of an object
    MasterAudio.Start () (at Assets/MasterAudio/Scripts/Singleton/MasterAudio.cs:184)

    Any ideas?

    Thanks!
     
  47. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    This shouldn't have to with Unity 4.2, but likely because of the "breaking change" I noted a few posts up. You'll have to delete your Sound Groups and recreate them from scratch because the template from which all Sound Group Variations pull has changed (so all pre-existing ones will break). To progress forward, occasional breaking changes are necessary.

    Just to make sure, you can look on a few of the variation prefabs under the Sound Group prefabs in your scene. Do they have a "SoundGroupVariation" script? I bet at least one is missing, possibly all.
     
  48. uniphonic

    uniphonic

    Joined:
    Jun 24, 2012
    Posts:
    130
    I looked at the existing "MasterAudio" prefab, and look at each the sound variations, and didn't see any scripts there. I assume they should be there as well? Maybe that prefab didn't get updated when I updated to the latest version of Master Audio?

    Recreating all of my Sound Groups from scratch seemed like a daunting task, trying to remember every file for every group, when I've got a lot of audio files in my project... so instead I just drug the new script onto each Variation, and that seemed to solve the error. Anything wrong with handling it this way? The only thing I noticed is that my Variations don't seem to have the same "Master Audio 2.3" graphical header on it in the inspector, that the "SoundVariation" prefab has. Is that problematic?

    Thanks!
     
  49. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Upgrading will not automatically add that script to each variation, you'll have to either do it manually (as you have) or recreate the SoundGroups. That's why it's called a breaking change :)

    Don't worry about the header graphic, that's cosmetic only. Actually if you create a new SoundGroup, it should have the 2.4 header though. You should also make sure that when you create a new SoundGroup, its variations includes that script you had to add to the existing ones. It should do that for you. If it does not, please make sure you deleted all the Master Audio files before importing the new versions. Some things changed folders so you could possibly get duplicated or "extra" files.

    By the way, I'm noticing some false error logs about PlaylistController in the console in Unity 4.2. You can safely ignore those, it is working properly. I will fix those for the next update.
     
    Last edited: Jul 23, 2013
  50. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    I have submitted the bussing addition to the MasterAudio mixer section tonight. Here's a couple screen shots.

    $buses.png

    $menu.png

    This will make things much more manageable with large projects!
     
    Last edited: Jul 23, 2013