Version
arrow_right Table of Contents

Other Documentation

Wwise SDK 2021.1.9
Python (Waapi-Client) - Remote Procedure Call

Initializing the project

Note: The Python Waapi-Client is intended for use with Python 3.6+.

Run the following command from any directory to install dependencies:

py -3 -m pip install waapi-client

Project Code

This file contains the following code, which allows you to connect to the Wwise Authoring API.

#!/usr/bin/env python3
from waapi import WaapiClient, CannotConnectToWaapiException
from pprint import pprint
try:
# Connecting to Waapi using default URL
with WaapiClient() as client:
# NOTE: client will automatically disconnect at the end of the scope
# == Simple RPC without argument
print("Getting Wwise instance information:")
result = client.call("ak.wwise.core.getInfo")
pprint(result)
# == RPC with arguments
print("Query the Default Work Unit information:")
object_get_args = {
"from": {
"path": ["\\Actor-Mixer Hierarchy\\Default Work Unit"]
},
"options": {
"return": ["id", "name", "type"]
}
}
result = client.call("ak.wwise.core.object.get", object_get_args)
pprint(result)
except CannotConnectToWaapiException:
print("Could not connect to Waapi: Is Wwise running and Wwise Authoring API enabled?")

Running the project

With a project open in Wwise, run the script in a terminal with the following command:

py rpc.py

You should observe in the output something like:

Getting Wwise instance information:
[Wwise Information Dictionary dump]
Query the Default Work Unit information:
{'return': [{'id': '{CDF62889-48AA-436C-B7DD-5B6B1DF5050D}',
'name': 'Default Work Unit',
'type': 'WorkUnit'}]}