Search Unity

  1. Unity 6 Preview is now available. To find out what's new, have a look at our Unity 6 Preview blog post.
    Dismiss Notice
  2. Unity is excited to announce that we will be collaborating with TheXPlace for a summer game jam from June 13 - June 19. Learn more.
    Dismiss Notice
  3. 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. pea

    pea

    Joined:
    Oct 29, 2013
    Posts:
    98
    Thank you very much, I ended up moving all Master Audio scripts to Standard Assets subfolders and that sorted it out and Master Audio also still works. I should really consider rewriting my scripts from JS to C# ;)

    I've a new problem...

    // Play a wee sound
    MasterAudio.PlaySound("Movement Bloop");

    ... throws...

    BCE0055: Internal compiler error: Array index is out of range..

    And my group is definitely called "Movement Bloop". I've tried deleting and recreating the group. Screenshot below of my Master Audio setup. Again, I'm out of ideas. The array index should be... correct?

    When I change it to this, it throws no errors and correctly stops the sound if it's playing:

    // Play a wee sound
    MasterAudio.StopAllOfSound("Movement Bloop");

    Thank you!
     

    Attached Files:

    Last edited: Oct 29, 2013
  2. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    That's a new one on us. We've never seen this error or anything close to it. I suspect it's due to language combining. We can Skype this evening if you are available, or you can send me a small project to reproduce the error. On Skype I am briandhunsaker.

    Thank you.
     
  3. pea

    pea

    Joined:
    Oct 29, 2013
    Posts:
    98
    I'd be happy to. Thank you.
     
  4. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    We've got pea working. Needed to specify more parameters for JS.
     
    Last edited: Oct 29, 2013
  5. pea

    pea

    Joined:
    Oct 29, 2013
    Posts:
    98
    Yep, excellent. This works:

    MasterAudio.PlaySound("Movement Bloop", 1.0, 1.0, 0.0, null);
     
  6. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Submitted V2.8.8 to the Asset Store. Changes are:

    - Fixed warning for Start sound in Event Sounds when playing a sound from DSGC.
    - Fixed bug where Dynamic Sound Groups would throw an error on non-Resource clips being removed on Scene change.
    - Fixed bug where Dynamic Sound Group Resource clips would not be loaded the 2nd time you visit the same scene.
    - Added SoundGroupExists method to check for completion of Dynamic SGC groups. Used by Event Sounds script.
    - Now removing reference to Audio Clip from Inspector when using Resource file clips to eliminate unnecessary memory usage.

    Price is going back up for this version.
     
  7. dark_tonic

    dark_tonic

    Joined:
    Mar 23, 2011
    Posts:
    138
    I wanted to bring up the fact, in case anyone is not aware, that Master Audio can use all Unity audio effects such as Reverb, Echo, Chorus, etc. Just add those components to the Variation prefab and it "just works".

     
    Last edited: Oct 31, 2013
  8. benthroop

    benthroop

    Joined:
    Jan 5, 2007
    Posts:
    268
    Hey Guys,

    Hopefully this is an easy one. I've attached a sound variation to a gameobject via PlaySound3D("someSound", transform, true)

    This moves the Audio Source from the Master Audio prefab to underneath the specified transform. The sound is looping though, and I use the PlaySoundResult to get a handle on it and then I manipulate its volume and pitch via code over some amount of time. This all works fine.

    The problem comes when that parent transform is destroyed. I cannot figure out how to return the Audio Source back to its group on the Master Audio prefab. I've tried saying StopAllOfSound but after looking at that code it's simply stopping the audio, not doing anything with reparenting it. Is there a different way to do this or is this a change that's needed to Master Audio?
     
  9. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Actually when the parent transform is destroyed, the SoundGroupVariation is supposed to automatically go back to the MasterAudio hierarchy and stop playing sound (the latter is out of my control - Unity makes it happen). In all my tests, it did so.

    I fixed some bugs regarding this a couple versions ago. Are you on the latest? If so, what version of Unity are you on and do you have a small project you could send me that reproduces the problem?
     
  10. benthroop

    benthroop

    Joined:
    Jan 5, 2007
    Posts:
    268
    Awesome Brian, the update fixed it. Thanks!
     
  11. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Awesome :)
     
  12. Etrain

    Etrain

    Joined:
    Nov 3, 2013
    Posts:
    11
    Hi, I sent the following as an email to support@darktonic.com, but it keeps bouncing as it requires a reverse DNS, and I haven't set that up on our server yet.

    Anywho...

    We recently purchased your Master Audio plugin for our training sims and we’re enjoying the functionality.

    However, we want to be able to have our audio groups loop not on an individual level, but as a group.

    Let me be more specific: we have a Forest Ambient audio group, which is auto created using the Dynamic Sound Group Creator script at runtime. Within this group there are three ambient sound variations of equal weight, so one of them randomly gets activated at runtime using the Event Sounds script. This is good; it ensures the same ambient sound clip doesn’t always play at the start of every level, keeping the audio from being repetitive and distracting. However, once that ambient sound finishes, we only have two options: stop playing any ambient audio, or continue looping that same ambient sound. This isn’t so good, as the sound then becomes repetitive in the current scene.

    What would be good is a third option: continue to randomly select sounds from the group, and play them continually until the game ends, or once the controller is told to stop. This to me is basically what I’d call a “group loop” functionality.

    Is that at all possible?

    Thanks!
     
  13. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Sounds possible and not too difficult. It's like a "playlist in a Sound Group". I'll put this into the next update if possible, but definitely in the one after that if not. And I usually do an update every 1-2 weeks lately.

    Stay tuned!
     
  14. Etrain

    Etrain

    Joined:
    Nov 3, 2013
    Posts:
    11
    Brilliant!
    Thank you jerotas.
     
  15. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    I feel this here is a major selling point of this plugin over competitor audio plugins. We usually put in just about everything requested, and we're quick about it too! Even though we already have several exclusive features. We do not rest on our laurels so to speak. And we will keep it that way!
     
  16. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Well I got tired of waiting for the Asset Store review for the last version and went ahead and submitted a newer version. So it will take a bit longer to get this new version, but it's worth it! Changes in V 2.9 are:

    - Fixed bug where Audio FX Filters weren't duplicated to the other pooled instances at runtime.
    - Now including all 6 FX Filters by default (turned off) in each Variation for your convenience.
    - Added all Playlist functions to EventSounds for no-code control of Playlist!
    - Added all Sound Group functions to EventSounds for no-code control of Sound Group as well (solo, fade, mute, etc)!
    - Added all Bus functions to EventSounds for no-code control of Buses as well (fade, pause, unpause)!
    - Added "Looped Chain" variation mode to Sound Groups. It will act as a mini-playlist and randomly play all clips in a looped fashion if selected until you stop the Sound Group explicitly.

    This extra time means that you can still pick up Master Audio for the crazy low sale price, but not for long! It will go up as soon as it's approved.

    As always, email me with your invoice# and I'll send you the code directly.
     
    Last edited: Nov 5, 2013
  17. zhuchun

    zhuchun

    Joined:
    Aug 11, 2012
    Posts:
    433
    Hi, the powerful manager leave me a deep impression.
    Just one problem, in my game, lots of events are driven by scripts and it's hard to find a right Sound Trigger.
    So Is there any tutorial/demo about how to control this manager in my script? Like Play/Stop.
    Thank you :)
     
  18. O_oo

    O_oo

    Joined:
    Jun 12, 2013
    Posts:
    1
    Hi Brian,
    Is there a way to detect SoundFinished on a particular variation?

    So far I have been able to use the method as shown on the manual:
    var result = MasterAudio.PlaySound("stop00c");
    if (result.SoundPlayed) {
    result.ActingVariation.SoundFinished += ActivateGameObjects_stop00_2;

    but when I try
    PlaySound("stop00c", 1, 1, 2, "stop00c_a");
    or
    PlaySound("stop00c", 1, 1, 2, null);
    = no sunshine
    any workaround?

    ps. congratulations for an impressive product and excellent customer service.
     
  19. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Hello, have you watched the video in the first post? It shows hooking up a few sounds to a game. If you mean you want a tutorial with all the new controls in Event Sounds (which I just added), I will see if I can do another video soon.

    Calling sounds is done through:

    MasterAudio.PlaySound
    and
    MasterAudio.PlaySound3D methods. You can look up the full API page in the OP.
     
    Last edited: Nov 7, 2013
  20. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    I will look into this tonight. I'm unaware of it not working with any parameter set. What version of Unity are you on?
     
  21. LittleGeek

    LittleGeek

    Joined:
    Oct 18, 2013
    Posts:
    7
    Brian, I have been investigating audio managers for Unity over the last several days as I am about to start my next project. I want to say how impressed I am with what Master Audio seems to offer and almost more importantly, the level of support I have seen you offer on the product.

    I notice you mention that the sale will end very soon so I have purchased a license today. I look forward to using MA and hope it will satisfy my needs (It looks like it will)

    Aaron
     
  22. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Thank you for the support. Let me know if you encounter anything confusing or that you would like added!
     
  23. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    It looks like that's a bug. I'll fix it and post the code to make it work (slightly different than above due to delayed playing). Thank you for reporting this!
     
  24. zhuchun

    zhuchun

    Joined:
    Aug 11, 2012
    Posts:
    433
    Yes, that's it! Thank you.
    I think the control panel is quite easy to use, just need some demo to guide users, show people how to call methods in script, such as create bus/group and play it.
    No coding is a good design principle but hard to practice in every game :p
     
    Last edited: Nov 7, 2013
  25. Etrain

    Etrain

    Joined:
    Nov 3, 2013
    Posts:
    11
    Absolutely. In fact, first thing I did after your reply was give your product a 5 star rating. Looking forward to the update!
     
  26. zhuchun

    zhuchun

    Joined:
    Aug 11, 2012
    Posts:
    433
    Hi, I find a problem.
    My game play a continuous BGM between scenes, so I put it in MasterAudio's playlist and make it "Start on Awake".
    Since didn't find a "persistent" option in manager panel, I mark MasterAudio gameObject as DontDestoryOnload in script.
    Then I find, those EventSounds in next scene play as well, but the BGM stopped.
    Is it a wrong way? :confused:
    Thank you
     
  27. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    I don't think you'd ever need to create a bus from script. I will make another video showing how to use the Dynamic Sound Group Creator, which can create groups and buses when a scene starts. The MasterAudio.PlaySound methods are in the ReadMe though. I hope you've gone through that!
     
  28. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    In the Master Audio prefab, there's a checkbox you can turn on in the top section that says "Persist Across Scenes". It's off by default. It will make sure that Master Audio AND the Playlist Controller persist.

    The PlaylistController is the prefab that plays music, so this is most likely the problem. That should solve it!
     
  29. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    It is much appreciated Etrain!
     
  30. benthroop

    benthroop

    Joined:
    Jan 5, 2007
    Posts:
    268
    Hey Brian,

    I'm still having some problems with an attached sound variation (Audio Source) getting destroyed when its parent gets destroyed. I'll see if I can get you more info but in the meantime, is there a method to manually return the audio source to the proper Master Audio group?
     
  31. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    I coded it to automatically return (which I always saw working) so that this would not happen. Because actually, if your object was *destoyed*, there really is no getting it back. It's gone for good, settings and all. Are you destroying objects, or just despawning them into a pool? If the latter, what plugin do you use for pools?

    Do you have a small project you could send me that reproduces the problem? I couldn't reproduce it after the last fix. Unity 4 or 3?
     
  32. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    The bug is fixed. I just submitted a build of MA last night so it will probably take about 2 weeks for this fix to make it to the Asset Store. If anyone needs this early, email me with invoice#.

    By the way, in fixing this I made it so that you can use delaySound even on Unity 3.5.7. We won't let something like a missing API stop us!
     
  33. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    V 2.9 is live! I accidentally set the price at $40. I'm going to set it to $60 now as soon as the Asset Store approves this non-code update (usually within a day). So there's still time to get it on sale.
     
  34. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Sales are over for now. But the features will keep coming! I have some great ones in the pipeline for this holiday season!
     
  35. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Here's something coming to Master Audio soon. The "jukebox"!

    $jukebox.png

    It shows up only while playing in the editor and lets you manipulate the playlist(s) and shows you what's playing and cross-fading in real-time.
     
  36. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    I forgot to remove the "1/3 off" sale text on the Asset Store page when I set the price back to $60. Master Audio is not $90 normally, not yet. Normal price is $60. That text will be removed that text as soon as the Asset Store approves my no-code change.

    I'm wrapping up a bunch of new things and Master Audio V3.0 will be submitted for a holiday treat for everyone!
     
  37. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    In case anyone's wondering, Ben emailed me and the issue was resolved on the newest version, I believe. If not Ben, email me and we'll figure it out.
     
  38. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    We are aware that in Unity 4.3 Undo no longer works with Master Audio. So far the plugin appears to still function properly aside from the console statements. We will add undo support ASAP. Thank you for your understanding and let me know if you see anything else wrong!
     
    Last edited: Nov 13, 2013
  39. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Here's another cool feature I just finished up:

    $mixer.png

    Now there's an LED strip next to the solo button. It lights up and animates whenever that Sound Group plays. This gives you feedback without having to use the Console for debug messages.
     
  40. I am da bawss

    I am da bawss

    Joined:
    Jun 2, 2011
    Posts:
    2,574
    Awesome new features! Can't wait!! :D

    BTW, will there be wave form editing in the future? Just an idea ;).
     
  41. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    I'm not sure how to do that right now...got any articles for me to look at?
     
  42. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Bump to say the Unity 4.3 Undo retrofit is going really well. I got about halfway done just today. With any luck Master Audio v3.0 will be finished before Thanksgiving!
     
  43. I am da bawss

    I am da bawss

    Joined:
    Jun 2, 2011
    Posts:
    2,574
    All I can find so far are these :

    http://blogs.msdn.com/b/dawate/arch...ing-part-1-how-audio-data-is-represented.aspx
    http://blogs.msdn.com/b/dawate/arch...mming-part-2-demystifying-the-wav-format.aspx
    http://blogs.msdn.com/b/dawate/arch...3-synthesizing-simple-wave-audio-using-c.aspx
    http://blogs.msdn.com/b/dawate/arch...lgorithms-for-different-sound-waves-in-c.aspx

    You probably seen them, the last two is about generating wave form, but nothing I can find about making it editable.


    PS. Will you still make Master Audio v3.0 Unity 3.5.7 compatible? (Please answer yes pretty please!:D)
     
  44. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Thanks. Of course it will still be 3.5.7 compatible :)
     
  45. hrjunker

    hrjunker

    Joined:
    Nov 15, 2011
    Posts:
    26
    Hi Brian

    I was wondering if Master audio supports custom events (must say I did not read through the whole thread here) because I could not spot anything in the documentation.
     
  46. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    You mean as in defining your own events, right? Not exactly.

    Currently, you can:

    1) Call the API from your custom events to play sounds, manipulate playlist, groups or buses.
    2) Do those same things from Playmaker actions.
    3) You can do any of that from the 10 supported events with EventSounds.cs.

    What exactly are you trying to do?
     
  47. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    I just posted the entire history of release notes in the OP so people don't have to read the entire thread to find out about features added. I have on the roadmap a sort of custom event support for probably January 2014. I'd like to know what your idea of custom events would include so we can possibly include it in that update.

    Thank you!
     
  48. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    There is a bug found where when you change Scenes, any Variations attached to prefabs that will be destroyed by Unity are lost. I believe I have a way to fix this. Stay tuned!
     
  49. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    I've got a fix for the problem I just mentioned. I will be submitting V3.0 this week sometime. Stay tuned for details!
     
  50. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,573
    Master Audio v3.0 is submitted! Changes are:

    • Added playlist "Jukebox" up top on Master Audio prefab at runtime only, with pause, next, play, random, and playlist selection buttons. Also shows what's playing and cross-fading.
    • Added LED's that light up briefly on the mixer for each Sound Group each time a Variation in that Group starts playing.
    • Added full undo support to every Inspector action (Unity 4.3+ only).
    • Fixed bug where some Audio Source properties of extra pooled Variations were not copied at runtime.
    • Fixed bug where delayed sounds wouldn't report sound completed.
    • Fixed bug where moving a Group slider when not Playing would log an error.
    • Fixed bug where Audio Filter FX would be disabled permanently after attaching a Variation to an object that got disabled.
    • Fixed bug where Variations would be destroyed after attaching to an object that was destroyed by Unity when the Scene changed.
    • Changed delay sound code so it works on Unity V3.5.7 as well!
    • You can now turn on debug logs during play.
    • When bus is muted, don't allow muting or soloing of any of the those sound groups. That way the bus mute status and bus solo status are preserved and not partially muted or soloed. Logs a warning so you know what's happening.
    • When putting a group into a muted or soloed bus, the group gets soloed or muted automatically as appropriate via the bus.
    • Changed Master Audio Volume label to Master Mixer Volume.
    • Added playlist volume to MA prefab at top under Master Mixer Volume.
    • Added Playlist Cross-fade time to Playlist settings on MA prefab.
    • Can now adjust ducking volume multiplier in real-time.
    • Added ducked vol multiplier to ducking section on MA prefab.
    • Now no reason to ever have to go to the Playist Controller prefab! Its controls are on MA prefab.
    • Made section up at top with Mute Mixer button (all Sound Groups).
    • Added commands for Solo Bus, Unsolo Bus, Mute Bus and Unmute Bus.
    • Added new bus commands to Event Sounds for no-code triggering.
    • Added new bus commands to Playmaker Custom Actions for no-code triggering.
    • Variations now automatically re-parent back to the Sound Group when finished playing or stopped (if not looped).
    • Added AdjustVolume method to Variations which can be used to adjust the volume of a sound already playing, taking into account the bus, group and mixer volume.
    • Added convenience "lazy load" properties for the 6 Unity Filter SFX to the Variation object. You can access them after playing a sound.