Announcement

Collapse
No announcement yet.

New Audio Engine: Early Access Quick-Start Guide

Collapse
This is a sticky topic.
X
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • started a topic New Audio Engine: Early Access Quick-Start Guide

    New Audio Engine: Early Access Quick-Start Guide

    4.17 New Audio Engine: Early Access Quick-Start Guide

    This is a quick-start guide demonstrating tips and starting procedures for getting started with the new Audio Engine Features!

    Important: The New Audio Engine is currently in an experimental/early access state. As such, it has not yet been thoroughly tested. With that in mind, we encourage you to explore the new features with an open mind as we both develop and refine our integrations and implementations. We’re eager to hear what you can create with these new features and welcome constructive feedback or information on any bugs you might encounter.

    Getting Started/Initial Configurations

    Setting Up Windows via the WindowsEngine.ini file:

    1. In your engine folder, you will want to edit the WindowsEngine.ini file located here:
      \Engine\Config\Windows\WindowsEngine.ini
      Or your project folder, here:
      \Config\Windows\WindowsEngine.ini
      (If you don’t have one, you can create one)

    2. Enter the following:
      Code:
      [Audio]
      AudioDeviceModuleName=AudioMixerXAudio2


    Setting Up Mac via the MacEngine.ini file:

    1. In your engine folder, you will want to edit the MacEngine.ini file located here:
      \Engine\Config\Mac\MacEngine.ini
      Or your project folder, here:
      \Config\Mac\MacEngine.ini
      (If you don’t have one, you can create one)
    2. Enter the following:
      Code:
      [Audio]
      AudioDeviceModuleName=AudioMixerAudioUnit


    Setting Up iOS via the IOSEngine.ini file:

    1. In your engine folder, you will want to edit the IOSEngine.ini file located here:
      \Engine\Config\IOS\IOSEngine.ini
      Or your project folder, here:
      \Config\IOS\IOSEngine.ini
      (If you don’t have one, you can create one)
    2. Enter the following:
      Code:
      [Audio]
      AudioDeviceModuleName=AudioMixerAudioUnit


    Setting Up Android via the AndroidEngine.ini file:

    1. In your engine folder, you will want to edit the AndroidEngine.ini file located here:
      \Engine\Config\Android\AndroidEngine.ini
      Or your project folder, here:
      \Config\Android\AndroidEngine.ini
      (If you don’t have one, you can create one)
    2. Enter the following:
      Code:
      [Audio]
      AudioDeviceModuleName=AudioMixerAndroid


    Launching the Editor with the New Audio Engine on via Command Line:

    1. Open the project using command line flag: -audiomixer


    Setting up your Editor for audio work:


    1. Allowing Background Audio – This will ensure that you can still hear your project when your Editor loses focus:
      1. Open the Editor Preferences Window via Edit > Editor Preferences
      2. Under Level Editor > Miscellaneous > Sound, set the following:
        1. Allow Background Audio to ON
        2. Optional: Enable Editor Sounds to OFF (I do this so I don’t hear the play stop PIE woosh sounds)




    1. Avoiding low frame rate while editor is out of focus – this will ensure that your audio logic is still processing when the editor loses focus:
      1. Open the Editor Preferences Window via Edit > Editor Preferences
      2. Under General > Performance, set the following:
        1. Use Less CPU when in Background to OFF





    Activating new feature plugins:

    Many of our cool new features are put into plugins as part of a more modular directive we’re taking. One of the cool features of the new Audio Engine is its extensibility and we’re really excited by what this means for 3rd Party Plugin Developers as well as more diverse or project level implementations for audio systems for users and internally. With that in mind, we’ve placed some of the cool new features (like our Synthesizers) into plugins to be activated as needed on a project-by-project basis.

    1. Activate the Sound Utilities Plugin:
      1. Open the Plugins Window via Edit > Plugins
      2. Under Audio locate the Sound Utilities plugin, set the following:
        1. Enabled to ON

      3. If this is the only plugin you’re enabling, Restart when prompted


    2. Activate the Synthesis Plugin:
      1. Open the Plugins Window via Edit > Plugins
      2. Under Audio locate the Synthesis plugin, set the following:
        1. Enabled to ON

      3. If this is the only plugin you’re enabling, Restart when prompted

    Attached Files
    Last edited by dan.reynolds; 08-14-2017, 03:18 PM.

  • replied
    It's worth noting that for me the component did not have "auto activate" on by default, so no sound played.

    Leave a comment:


  • replied
    that's so useful

    Leave a comment:


  • replied
    Originally posted by Alan Edwardes View Post

    Fantastic, thanks for the explanation Dan. This sounds like a massive step forwards. I released an update switching my Early Access game Estranged: Act II over to the new audio engine yesterday (mainly to alleviate AMD compatibility issues). I had to re-work all of the reverb, but from what you're saying this was worth doing.
    Yes, it was definitely worth doing.

    With that switch over, you will also open up the ability to apply Source Effects or Submix Effects as well (so if you wanted different EQ settings on two different sources, you could do this now). Or if you wanted to add Master Bus Compression to your Master Submix or to just a group of sounds, this is now possible.

    Leave a comment:


  • replied
    Originally posted by dan.reynolds View Post

    The reverb in the old engine was not supported on every platform and on ones where it was supported, were different sounding for each platform. That is because the reverb was an effect created by that platform. So on Windows and XBox, it was Microsoft's own XAudio2 reverb effect. On PS4 it was Sony's NGS2 reverb. On Mac is it was Apple's AudioUnit reverb.

    The New Unreal Audio Engine is Epic's Reverb, it renders within our own DSP pipeline, and so it will sound exactly the same on every platform you deploy to--the old one will not.

    As far as redesigning the old Engine Content, we're aware of this issue and we're looking at the best approach to take.
    Fantastic, thanks for the explanation Dan. This sounds like a massive step forwards. I released an update switching my Early Access game Estranged: Act II over to the new audio engine yesterday (mainly to alleviate AMD compatibility issues). I had to re-work all of the reverb, but from what you're saying this was worth doing.

    Leave a comment:


  • replied
    Originally posted by Alan Edwardes View Post
    Hi,

    I switched to the new audio engine and noticed that reverb (the "classic" reverb-asset based reverb that you can apply to audio volumes) is a lot more pronounced (more echo-y?) than with the stock audio engine.

    Is that expected due to the algorithm now being different, or will the discepency be fixed in a future update?

    Edit: I should mention that some of the engine content reverb settings are too echo-y now, for example Engine/EngineSounds/ReverbSettings/Mountains

    Thanks!
    Alan
    The reverb in the old engine was not supported on every platform and on ones where it was supported, were different sounding for each platform. That is because the reverb was an effect created by that platform. So on Windows and XBox, it was Microsoft's own XAudio2 reverb effect. On PS4 it was Sony's NGS2 reverb. On Mac is it was Apple's AudioUnit reverb.

    The New Unreal Audio Engine is Epic's Reverb, it renders within our own DSP pipeline, and so it will sound exactly the same on every platform you deploy to--the old one will not.

    As far as redesigning the old Engine Content, we're aware of this issue and we're looking at the best approach to take.

    Leave a comment:


  • replied
    Hi,

    I switched to the new audio engine and noticed that reverb (the "classic" reverb-asset based reverb that you can apply to audio volumes) is a lot more pronounced (more echo-y?) than with the stock audio engine.

    Is that expected due to the algorithm now being different, or will the discepency be fixed in a future update?

    Edit: I should mention that some of the engine content reverb settings are too echo-y now, for example Engine/EngineSounds/ReverbSettings/Mountains

    Thanks!
    Alan
    Last edited by Alan Edwardes; 07-23-2019, 04:34 PM.

    Leave a comment:


  • replied
    Originally posted by ArthurBarthur View Post

    I did this today, it has several presets(in-game buttons for changing presets coming soon). The blueprint is very rough/elaborate and sorely needs more elegant solutions: https://youtu.be/aumCMQFEFoQ



    PS Nice guide! Appreciate it. Many many thanks!
    This is such a cool idea

    Leave a comment:


  • replied
    Sorry if this has already been answered (did a search). I want to sidechain/envelope follower type of ducking. Not a "push mix/pop mix" thing. but dynamically ducking things. How would i go about that? The compressor has no sidechain input.
    But i'm guessing i really dont need that.
    All I want to be able to do is to control a submix audio volume, base on the envelope follower output.
    How would I go about doing that?

    Also another case: Modulating EQ frequencies, based on distance.

    I have read about "Dynamically Setting Source Effect Values in Blueprints", in the beginning of this thread, but I'm pretty confused.
    A short youtube video about these things would be super helpful. But I perfectly understand if that isnt being made.

    Thanks

    Leave a comment:


  • replied
    Is anyone else having issues with hot reloading while using the new audio engine? My editor keeps crashing with this error:
    Exception thrown at 0x00007FFDD47D9349 (UE4Editor-AudioEditor.dll) in UE4Editor.exe: 0xC0000005: Access violation reading location 0xFFFFFFFFFFFFFFFF

    I have to close the editor, recompile, and then relaunch the editor every time I change any c++ code

    Leave a comment:


  • replied
    Originally posted by ArthurBarthur View Post

    That's a current bug in the latest launcher version(4.22.2 atm) of UE. If you wait for next launcher version, or grab a fresh master off github right now, dynamic source effect parameters should work normally again.
    Thanks for the info! Just updated to the latest hotfix 4.22.3, and updating the source effect values at runtime now works. Still ran into the issue where setting the values at begin play on a media sound component is buggy on the first launch. My workaround is just to use a 0.5 second delay before setting the values.

    Leave a comment:


  • replied
    Originally posted by vle07 View Post
    I'm having trouble dynamically setting source effect values when using media sound components. It seems like the media sound component only keeps the source effect values at initialization, and subsequent modifications to the source effect reference has no effect. I'm also getting weird behavior where setting the source effect value at begin play doesn't get applied to the media sound component until I stop and start the play in editor session again. I'm pretty stumped on this one, even after stepping through the source code. Any help would be appreciated!
    That's a current bug in the latest launcher version(4.22.2 atm) of UE. If you wait for next launcher version, or grab a fresh master off github right now, dynamic source effect parameters should work normally again.

    Leave a comment:


  • replied
    I'm having trouble dynamically setting source effect values when using media sound components. It seems like the media sound component only keeps the source effect values at initialization, and subsequent modifications to the source effect reference has no effect. I'm also getting weird behavior where setting the source effect value at begin play doesn't get applied to the media sound component until I stop and start the play in editor session again. I'm pretty stumped on this one, even after stepping through the source code. Any help would be appreciated!

    Leave a comment:


  • replied
    It will be better if we can reuse the Animation Montage editor or Level Sequence Editor, so we can add custom events, rearrange audios and mixe them visually like Wwise and FMOD doing.

    Leave a comment:


  • replied
    Hello @dan.reynolds ,
    I noticed when you use the new audio engine you get another section on CPU profiling called "audioMixerRenderThread(1)" and this section takes a lot of ms, it takes ~ 7 ms on android but somehow its not affecting the performance does that mean they made audio engine work on different thread?

    Another question, how can I disable Master Reverb and Master EQ on the new audio engine? as you can see its taking 6 ms even though I checked the box for "disable EQ" on project setting and I unchecked the box for effect and Reverb on my audio master sound class.
    3rd and last question, what is "apply effects" on attached image regarding master sound class?
    Thanks
    Last edited by mhnoni; 02-25-2019, 08:45 AM.

    Leave a comment:

Working...
X