버전

menu_open

How to Create Wwise Sound Engine Audio Device Plug-ins (Sink Plug-ins)

Audio Device Plug-in Interface Implementation

Audio device plug-ins are the endpoints of the audio processing chain. Natural Audio devices are the OS sound systems, but there can be more possible outputs.

Writing audio device plug-ins consists of implementing the AK::IAkSinkPlugin interface.

Only the functions specific to this interface are covered there. Refer to How to Create Wwise Sound Engine Plug-ins, for information about interface components shared with other plug-in types (AK::IAkPlugin interface). Also refer to the provided AkSink plug-in for details (Samples).

Note.gif
Note: For now, the only audio device that is available to be replaced as a plug-in is the Main output audio device. Your plug-in will need to be a proper replacement for the Main Audio device. Secondary outputs are not yet admissible for plug-in replacements.

Important Notes for Implementing Audio Device Plugins

  • When a plug-in is used in Wwise, parameter changes are sent down to the parameter node whether or not the parameter supports RTPCs. This allows the plugin to support runtime value changes of non-RTPC values if desired for Wwise usage. If you do not want your plugin to support this, you should make a copy of the parameter values at initialization time to ensure they remain the same throughout the plug-in's duration.

Testing your Audio Device plug-in

After implementing the Wwise part of the plug-in and the sound engine part, here are the steps to test your new plug-in.

  • In your Wwise Project, create an Audio Device Shareset using your new plug-in. Give the ShareSet a unique name.
  • Generate you Banks.
  • Make sure you register your new plug-in in sound engine initialization Wwise Sound Engine Plug-ins Overview
  • Specify your audio device to be used in the initialization parameters of the sound engine.

For example:

    AkInitSettings initSettings;
    AkPlatformInitSettings platformInitSettings;
    AK::SoundEngine::GetDefaultInitSettings( initSettings );
    AK::SoundEngine::GetDefaultPlatformInitSettings( platformInitSettings );

    initSettings.settingsMainOutput.audioDeviceShareset = AK::SoundEngine::GetIDFromString("YourNewAudioDeviceSharesetNameHere");
    
    AK::SoundEngine::Init( &initSettings, &platformInitSettings );

For more information, refer to the following sections:


이 페이지가 도움이 되었나요?

지원이 필요하신가요?

질문이 있으신가요? 문제를 겪고 계신가요? 더 많은 정보가 필요하신가요? 저희에게 문의해주시면 도와드리겠습니다!

지원 페이지를 방문해 주세요

작업하는 프로젝트에 대해 알려주세요. 언제든지 도와드릴 준비가 되어 있습니다.

프로젝트를 등록하세요. 아무런 조건이나 의무 사항 없이 빠른 시작을 도와드리겠습니다.

Wwise를 시작해 보세요