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 V 3.5.4.4 will be live in 20 minutes. Changelog:

    • Added localization features for Resource file SFX. In the Master Audio prefab's Languages section (up top), you set the default language, supported languages and optionally Specific Language. Master Audio will append the name of the "user current language" folder in front of the Resource File Name. If the user has a language that isn't supported, the your selected Default Language folder will be used (i.e. "English"). You should create a folder for each of the chosen Supported Languages (i.e. English / German / French) and place identically named sound files in each folder for sounds that use localization. Master Audio will detect if you drag in a resource file that comes from a folder starting with a language name (English / German / etc) and will check the "use Localized folders" checkbox for you. Read section 18 in the Readme for full details, it's 2 pages long.
    • Added "Resize all siblings" checkbox to Button Clicker script. Now it can shrink or expand the button you're clicking and all the other related GUI elements at the same level (button text, other button graphics, etc).
    • Created custom Inspector for the Daikon Forge version of Button Clicker as well and added Resize all siblings to that. Please re-import that MA_DFGUI to get the changes.
    • Changed follow Variation CoRoutine to update position every frame instead of every 0.1 seconds. It will now sound much better with fast moving objects.
     
  2. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    I have now reproduced this bug and have fixed it for the next version.
     
    Last edited: Jun 29, 2014
  3. gegagome

    gegagome

    Joined:
    Oct 11, 2012
    Posts:
    392
    Language localization, couldn't be happier!

    Thanks!
     
  4. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    No problem. I probably never would have made this feature if someone didn't request it. I never thought about it!
     
  5. TommiH

    TommiH

    Joined:
    Jan 14, 2008
    Posts:
    253
    No, it doesn't happen in the first scene, and I don't know if I can do anything to make it happen. The problem I described only happens if the Awake for the Sound Group Variation is played after the Awake for Master Audio. I don't think there's any way to affect that ordering.

    Edit: Hm. It also doesn't seem to happen in the demo scene if I force Master Audio to execute first in Script Execution Order. So I guess it's not that simple to reproduce. But oh well, setting the execution order seems to fix it for us.
     
  6. TommiH

    TommiH

    Joined:
    Jan 14, 2008
    Posts:
    253
    True, I can use Weight to make this work nicely enough for our purposes. And no, I don't have anything against duplicates as long as they don't clutter the interface (which they don't do here). Though if we needed to use the sound randomisation functionality (we don't so far), I'd imagine it'd become a little messy if we had to make the other weight higher too, just to make it possible to play one sound in multiple locations.
     
  7. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    In case you missed it, I reproduced this bug the other day in the demo scene by putting the weight of all Groups to 1. And it has been fixed (in the next version).
     
  8. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    Not sure if this is a MasterAudio or Unity issue, but for some reason when I run my app on iOS the profiler shows that Assets/AudioManager is taking up 23MB. But right under it, all of my AudioClips only add up to 5.9MB.

    I read that this might be due to the stream from disk setting, but even after changing all my AudioClips to "compressed in memory" this is still happening.

    Any ideas? Thanks!
     
  9. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Audio Manager is just overhead from Unity. Nothing to do with Master Audio really. I haven't been able to profile on an iOS device since the days of Unity 3 (Unity 4 profiler never connects for me) so I'm afraid I can't help you investigate this :(

    Compressed in memory probably also uses some overhead. You might want to try standard uncompressed .wav files just to see how that affects it.
     
  10. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
  11. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
  12. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    Thanks for your quick responses!

    I created a fresh scene and tried each of the following cases:

    Case 1: No audio files in the scene
    AudioManager size: None

    Case 2: One regular audio source in scene, with an audioclip linked to it
    AudioManager size: 50Kb

    Case 3: MasterAudio in the scene, with one Group and one small clip.
    AudioManager size: 2.5MB

    Case 4: MasterAudio in the scene, with four groups. But three of the groups have no AudioClips attached to them (I deleted the files)
    AudioManager size: 3.7MB

    So it looks like simply adding a group is adding around 0.4MB to AudioManager for each one. So it does seem like this might be due to MasterAudio in some way?

    Not sure if I might be setting up something wrong? Here's a screenshot of my MasterAudio component settings:
    https://www.dropbox.com/s/f1x8apviyvf5xt2/Screenshot 2014-07-01 23.01.11.png
     
  13. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    Tried one more thing: Manually removing the filters from my groups seems to reduce memory usage. But the filters are re-added to any additional instances that get created during runtime.
     
  14. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    It seems patently impossible for Master Audio to be contributing to the profiler (audio section), since all it really does in very simple terms is create (only in cases where weight is greater than one 1 for variations) and manage a bunch of Audio Sources with clips in them.

    Even if your results look like that's the case, it simply makes no sense for it to be true. Unless there's something extremely strange going on.

    Yes, filters take up audio memory on every single Variation and clone, but you don't have to deploy to a device to find that out. You can profile right in Unity player. Also, the Unity 4.5 profiler I have found to be much worse and sometimes I have to close an re-open Unity because it won't register changes like deleting files. Very strange. Are you now profiling in Unity or on the device?

    If it's in Unity, try profiler both with the Master Audio prefab selected, and when selecting a different prefab (in case the custom Inspector is doing something).
     
  15. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    I went through and removed all the audio filters from all of the objects in each of my MasterAudio groups, and AudioManager memory is down to 7.2MB (from 23MB) on my iOS device. Everything seems to be working great now.

    Definitely agreed that it's weird that this happens, especially from cases where the AudioSource on the GameObject doesn't even have a clip attached. But it seems like filter components on these objects, even when inactive, even when there's no audio clip, cause the AudioManager memory to rise.
     
  16. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    That is correct about the filters. And that's why I have a "remove all unused filters" button on the Master Audio Manager window, to reclaim that memory.

    By the way, here's a bunch of bad-sounding info about the Unity 4 profiler Audio Manager on this page, that you can read about: http://blogs.unity3d.com/2013/03/14/introducing-the-new-memory-profiler/

    It's in the comments section.
     
  17. gdeglin

    gdeglin

    Joined:
    Mar 7, 2013
    Posts:
    78
    Ah, I think the problem was actually that I was using an old version of MasterAudio. I tried upgrading from 3.0.1, but for some reason the AssetStore gave me version 3.1 instead of 3.5. (Maybe I had downloaded 3.1 previously, but clicked import before it was done downloading? Not sure).

    I see that in the new one the filters don't seem to be added by default.
     
  18. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Ah yes, once I figured that out, I took them out.
     
  19. bizilux1

    bizilux1

    Joined:
    Jun 6, 2013
    Posts:
    151
    hey, so i have a bit of a pickle.

    i bought this plugin long time ago, but never used it, since i never needed many sound effects...but now i do


    anyways long story short, im making 2d racing game. currently the only car in there is BMW, and im trying to get sounds to work the way i want them to work, but i cant wrap my head around how should i setup this...

    i attached all 3 .wav files that i have for this car.

    first one is start, i play this when level starts... its simple and it works.

    second one is idle, and that works as intended too... i just play it when user is not touching throttle or reverse buttons...

    but the third one, that revving sound... where you rev the engine... that is giving me troubles and i just dont know how to make it sound good.

    can you please help me?

    i just need it configured so that when i press throttle, it will slowly rev the engine and then it just makes out, and if you keep holding throttle, it will just loop that specific part of the sound? basically highest rev.

    if i remember correctly from my days of toying around with edy's vehicle physics, engine sounds there are really really short, like less than 1 second if i remember correctly...

    so yeh can anyone help me? :) sounds really make or break the game, and i want this engine sounds to be perfect :)
     

    Attached Files:

  20. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    It sounds like a question not about Master Audio functionality...I'm not sure how to help.
     
  21. gegagome

    gegagome

    Joined:
    Oct 11, 2012
    Posts:
    392
    Hey, working with Master Audio is great! I am plugging in the sounds and it really is a pleasure.

    I forgot about one little detail about the way my main menu grabs the Language, and sound options. This is what the main menu sets:
    PlayerPrefs.SetInt("CurrentLanguage",(int)Options.CurrentLanguage);
    PlayerPrefs.SetFloat("VoiceOverVolume", Options.VoiceOverVolume);
    PlayerPrefs.SetFloat("BackGroundVolume", Options.BackGroundVolume);

    Is there a way to set on Awake these values using MA? Say, to assign:
    Options.VoiceOverVolume to my MA Group: VoiceOvers

    and

    Options.BackGroundVolume to anything else?

    Also when setting Ducking, do I need to include the Background sfx which is always looping in my scene?
    In my case the background sfx never changes in volume, and in the 'Use Text Group Filter' the ShapesBackground is red and it never displays the volume bars/colors. I am not sure if this is normal behavior or like you said in the pdf the length of my VoiceOver is too short to ever trigger any change. I still feel there should be SOME sort of ducking but I don't know what's going on.

    Thanks
    German
     
  22. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    The current language other than the device's current setting will be in a future version, that's on the list to add. I'm also planning on adding properties to set "mixer volume" and "music volume" that can persist from different Master Audio's on different scenes.

    However, setting individual group volumes or bus volumes in a previous scene, that's not something I had planned on. I'll put it on the list and see if there's a good way to do it or not.

    Ducking is for short sounds, not continuous looping stuff. I can't think of a reason you'd want a looping sound to cause ducking.
     
  23. gegagome

    gegagome

    Joined:
    Oct 11, 2012
    Posts:
    392
    I know you will be working on the app's 'language of choice' :) . If you manage persistent group volumes that could be set from the main menu (or runtime) that will be all I need.

    Finally, in my scene single tapping on any shape gameObject (circle, rectangle, etc) will play back the tapped shape voice over like this:
    MasterAudio.PlaySound ("VoiceOvers", 1f, 1f, 0f, shapeString);

    shapeString being the string for the game object tapped.
    shapeString = hit.collider.gameObject.name;

    So it will be nice if you could duck say: Circle while the loop is playing so it is more clear.

    Thanks
     
  24. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Ok. Now that that is just not how ducking works. At all. Ducking uses a "begin unduck" timer based on the length of the triggering sound. So if your begin unduck is .5 for a sound that causes ducking, the volume of music will start to return to its original level after 50% of the sound has been played (the first time). It doesn't care or know that the sound is looping, and that can't easily be changed. It's fire and forget.

    You can always use your own playlist controller fades if you want something longer to happen like what you're describing. Also when Unity 5 comes out there will be much more advanced ducking available natively. Since that's coming fairly soon and will blow ours away, we're not going to change the ducking behavior any more. We assume that most people will just use the Unity one after V5.

    Thank you.
     
  25. gegagome

    gegagome

    Joined:
    Oct 11, 2012
    Posts:
    392

    Well... I am glad you clarified that.

    More importantly I will check out the 'playlist controller fades' section in the documentation.

    Thanks again!
     
  26. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    No problem!
     
  27. bizilux1

    bizilux1

    Joined:
    Jun 6, 2013
    Posts:
    151
    ah that is too bad :(
    i was hoping that someone else had the same questions with car engines... and you do know more about sound than i do, so i thought you could help hehe :)

    well i guess i will try to do it myself. the way im planning to do it is:

    when player hits throttle, it starts that revving sound. the one that starts slowly, but goes up to its highest point, and then when its at the end of that revving sound (meaning at highest point of revving) i will make another sound effect, and loop that one over and over, as long as player is holding throttle.
     
  28. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Ah yeah, there's a script that can chain SFX together with a CoRoutine. Look for that in the readme.
     
  29. jrhee

    jrhee

    Joined:
    Dec 5, 2013
    Posts:
    74
    Hi Jerotas, loving the tool, it's seriously awesome!

    Just had a couple questions regarding sync'd tracks:

    1. I notice that when I have two songs in a sync'd playlist, the volume when I transition to the second one is much lower. When I set them up as separate playlists, the levels are fine. Is there anything I should be looking out for here?

    2. Is it possible to have one clip in a sync'd playlist set to loop, and another to not loop? Ideally I'm looking for behavior where after the first song finishes in a sync'd playlist, the second one loops automatically. As of now it seems like the current behavior is to loop the first track indefinitely, regardless of whether Loop Clip is checked.

    Thanks!
     
  30. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    #1, I don't know of any such problem like that and it doesn't happen on my game. If you figure out how to reproduce it reliably, let me know and I'll try it on my end. Or you can send me a small project that reproduces the problem with filemail.com

    #2 - no it's not possible. All sync'd playlist songs have to loop and auto-advance is disabled on that mode (I believe the Inspector shows a warning about this?). This is because in that mode whenever a song changes, it is supposed to keep the same position as the previously played song, but that becomes a problem when you're at the end of a clip (auto-advance) - because then the new song is started right near the end and needs to immediately end again and play the next song. To solve weird problems like that, we made it so that sync'd playlist songs have to loop and auto-advance is disabled. You'll have to change songs programmatically, there is no auto-advance. If you know how long the song is, you could write a few lines of code to wait X seconds, then play the next song I suppose. If you don't need layered music or sync'd transitions, you can use a different Song Transition Mode and you won't have this limitation.
     
  31. Nekotika

    Nekotika

    Joined:
    Jan 31, 2014
    Posts:
    17
    Hi!

    I'm having a problem when I try to pause all sounds at the start of the scene (MasterAudio.PauseBus()). Looking at the Master Audio source code I've found that the "IsAudioPaused" method is checking if "GetAudioPlayedPercentage() > 0", so it returns that the source is not paused.

    I've removed the percentage check but I wanted to know what's the original reason of doing that, cause probably I'm breaking another thing doing this :p

    Also, if the percentage check is necessary, what can I do in order to get my sounds paused at the start without Master Audio thinking that they are not paused when I call the MasterAudio.UnpaseBus() method?

    Thanks!

    Edit: I've added a pair of new methods to SoundGroupVariation: IsAudioPaused() and Unpause(), and a new private variable: isPaused. I think this is a better approach, I can send you the code if you want to add it.
     
    Last edited: Jul 10, 2014
  32. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    That sounds like it's worth us taking a look at. Go ahead and send your code change over and we'll try it out!
     
  33. xcube

    xcube

    Joined:
    Nov 27, 2011
    Posts:
    45
    Hello!
    I've been using your program and got used to it. And today noticed that my iPad 1 became periodically closed when working in my application. After analysis, I noticed the following picture with the memory.




    Why the size of audio could grow to the size of 123 MB? This size is constant and does not change when you play all the sounds, or no sound. Most importantly the total weight of all the audio files that are present in the project 21.6 MB (all mp3, project IOS)


    Here are all the audio files that are in the project.

    Can I do something wrong? Prompt please.
    Thank you for your attention.
     
    Last edited: Jul 10, 2014
  34. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    First off, I need to make it clear that "AudioManager" is overhead from Unity, and has no real connection to Master Audio. To make that number smaller, you should experiment with streaming your music, using mp3 instead of wav for longer files, and using wav instead of mp3 for shorter files. You can also set up clips less used (and/or music) as resource files so that they're loaded dynamically.

    Hope that helps!
     
  35. xcube

    xcube

    Joined:
    Nov 27, 2011
    Posts:
    45
    Thanks for the quick reply.
    I do not quite understand what you wrote about "AudioManager" ...
    But starting to think profiler Uniti3d inaccurate, that's what shows the tool xcode


    it says that the audio may not hold 123 MB, and in fact takes no more than 30 MB, and it seems to be true.
     
  36. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Correct, the audio only takes 30MB, the rest of the 123MB is "overhead" such as memory needed for streaming, decoding mp3 and various other Unity things.

    What I meant about AudioManager is that AudioManager is not part of Master Audio. It's part of Unity. Master Audio has no control of Audio Manager. That's just Unity's audio overhead.

    I agree that the audio profiler is not very accurate. Sometimes I need to quit Unity and open it again, and suddenly it shows more accurately.
     
  37. dark_tonic

    dark_tonic

    Joined:
    Mar 23, 2011
    Posts:
    138
    Master Audio is on sale for only $15 for a very limited time! That's 75% off the normal price.
     
  38. Kensai

    Kensai

    Joined:
    Oct 24, 2013
    Posts:
    27
    Hi. I wrote a few pages ago with the song synchronization issue, and I still can't get Master Audio to work with me the way I want. I am in desperate need of help or I may have to scrap the plugin for the project, which I don't want to do.

    I will explain my situation again just so you don't have to go back a few pages to read other posts. I have two playlists, which hold matching songs. One playlist holds simplified versions of the songs, while the other holds the enhanced versions. While the game is played, a bar is charged from 0 to 100% depending on the performance of the player. If the players performance starts to decrease, so does the bar. The idea for the audio here is to have both versions of a specific song playing at the same time, but with the volumes proportional to the "fullness" of the performance bar.

    To put an example forward, if the player is performing at 100%, then the enhanced version's volume should be at 100%, while the simple version's volume should be at 0%. Similarly, if the performance bar is at 50%, then both songs should be playing at 50% volume.

    Other requirements are that the songs should be on shuffle mode, and that there should be crossfading between one song and the next.

    Currently I have the following code, made with jerotas' suggestions:

    On the Enhanced Version PlaylistController Game Object (which could be considered the main playlist controller), I attached a script called SynchronizedPlaylistShuffle. It has the following code:

    Code (CSharp):
    1. public class SynchronizedPlaylistShuffle : MonoBehaviour {
    2.     public PlaylistController mainPlaylistController;
    3.     void Start () {
    4.         mainPlaylistController = GetComponent<PlaylistController>();
    5.         mainPlaylistController.SongChanged += OnSongChanged;
    6.     }
    7.     void OnSongChanged(string newSongName) {
    8.         var simpleSongController = PlaylistController.Instances
    9.             .SingleOrDefault(x => x.PlaylistName == "Simple Songs");
    10.         simpleSongController.TriggerPlaylistClip(newSongName.Replace("simple", "enhanced"));
    11.         simpleSongController.ActiveAudioSource.timeSamples =
    12.             mainPlaylistController.ActiveAudioSource.timeSamples;
    13.     }
    14. }
    It also has the following options enabled: Shuffle Mode, Loop Playlists and Auto advance clips. The simple songs controller has no options enabled, as it is controlled via the preceding script.

    The game controller object has the following relevant code:

    Code (CSharp):
    1. public void Update() {
    2. if (!GameController.enhancedSongController.IsCrossFading &&
    3.      !GameController.simpleSongController.IsCrossFading &&
    4.      !GameController.GameOver &&
    5.      !GameController.Paused) {
    6.         GameController.simpleSongController.PlaylistVolume = 1 - performance;
    7.         GameController.simpleSongController.UpdateMasterVolume();
    8.         GameController.enhancedSongController.PlaylistVolume = performance;
    9.         GameController.enhancedSongController.UpdateMasterVolume();
    10.     }
    11. }
    Out of this code, a very specific problem arises. First, when the first song changes to the next, there is a constant tug of war between the game controller volume update code, and the secondary (simple song) controller song fade out code (provided by master audio). I have seen in the editor that the playlist's volume is constantly trying to go down but is brought back up by my own code. At this point I would've thought that the fadeout would be finished, but apparently the OnSongChanged event is fired before the simple song controller has finished fading out its song. If I stop my own code from working at this point, the simple song controller's volume fades out to zero and is then stopped.

    How can I solve this issue? Having 0 crossfading time apparently solves this, but I need the crossfading for smooth transitions.
     
  39. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    I am confused why that doesn't work. Your code checks to make sure cross fading is not happening so it doesn't step on those volume changes. does that detection not work?
     
    Last edited: Jul 11, 2014
  40. Kensai

    Kensai

    Joined:
    Oct 24, 2013
    Posts:
    27
    I created a public variable that was updated to IsCrossFading value every frame (inside an Update event), to check for its value on runtime during the "tug of war", and I could see its value was not set on true.

    P.S.: I've also noticed a considerable game-wide stutter when the playlist runs out of songs and re-shuffles.
     
    Last edited: Jul 11, 2014
  41. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Due to the complexity of your scenario, I dont have much confidence that I could reproduce it perfectly. So you're going to need to send me your project with Filemail.
     
  42. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Master Audio v3.5.4.5 will be live in 20 minutes. Changelog:

    • Fixed bug where first Sound Group's loop checkbox would get turned off by the pre-warming code.
    • Fixed bug where pre-warming code would break if the first Sound Group contains a localized audio clip.
    • Make sure to re-set your Language Mode under Languages if you're using it. The variable was changed and you will lose that setting.
    • Added 3rd Language Mode "Dynamically Set", which lets you set the language with code: "MasterAudio.DynamicLanguage = SystemLanguage.German" for example. The limitation is that this code must be called in a previous Scene that doesn't share the same Master Audio prefab (like a main menu) as Master Audio needs to keep track of a map of AudioSources per resource during the Awake event to correctly unload Resource files.
    • Added "IsFading" property to Playlist Controller. It will return true if it's crossfading or doing another fade. You can check this before doing any volume-setting (including fading) code so you don't interfere with a current fade.
     
  43. gegagome

    gegagome

    Joined:
    Oct 11, 2012
    Posts:
    392
    It's the insane localization guy o_Oo_Oo_O

    Does this update address my particular issue?

    Kind of confused with the 3rd Language Mode


    Thanks
    German

     
  44. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Yes it does solve your issue. Just use the new "dynamically set" language mode and use that line of code in the readme to set the language during the main menu scene, based on the user's selection.
     
  45. gegagome

    gegagome

    Joined:
    Oct 11, 2012
    Posts:
    392
    :):):):):):):):):):):):):)
    AWESOME!!!!! I have optimized my game this past week a whole lot and this is the only thing preventing me from publishing an update to the app store!

    Super happy over here!

    Thanks again


     
  46. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Gegagome, it sounds like you're all set then! Hope you make a ton of money on your app :)
     
  47. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    We have solved this issue by adding a new property for "Is Fading" which also lets you know about automated volume fades as well as cross fades.
     
  48. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    We've added mixer, playlist, bus and sound group "persistent volume" properties, accessible via code, for the next version. This lets you set a "master SFX volume", "master music volume" and so on, that will be read by all Master Audio prefabs during the Scene Start event. Very useful for user-customizable volume control, and even has granularity down to the Sound Group!
     
  49. jerotas

    jerotas

    Joined:
    Sep 4, 2011
    Posts:
    5,572
    Master Audio V 3.5.4.6 will be live in 20 minutes! Changelog:

    • Added PersistentAudioSettings class. This allows you to set Master Mixer Volume and Master Playlist Volume and have all Master Audio prefabs in all Scenes use those settings on startup. This is good for the standard "set SFX / music volumes" options screen. It also sets the current Scene's master volumes, if there's a Master Audio prefab in the Scene. Check the new section "Persistent Settings" in the Readme for usage. It's quite short.
    • Added Sound Group volume settings to PersistentAudioSettings class.
    • Added Bus volume settings to PersistentAudioSettings class.
    • Got rid of warning when temp playlist is deleted while being played. Now it stops the playlist and deletes it if this occurs.
     
  50. gegagome

    gegagome

    Joined:
    Oct 11, 2012
    Posts:
    392
    Hey, just got a chance to update and test the new feature!

    I am having an issue, but I am not sure if this is the correct behavior or I am doing something wrong.

    Once app loads main menu offers option to choose language.

    I then choose French.

    Open my new scene and voila, voice overs load in French. Très bien

    THEN I go back to main menu

    Choose Spanish

    Voice overs are played back still in French.


    I may be doing something wrong, but I am not sure what.

    Help please!

    http://pastebin.com/yQAp0GbW