Hey Audio Weaver Users and Developers,
for my target Use-Case/Demonstrator on a PC I need some user friendly Interface for changing the parameters in a AudioWeaver Session.
For example someone wants to change the volume of the audiostream, like in the minimal example in the following screenshot:
For now I changed parameters for my own development via Matlab Scripts or directly inside Audio Weaver Designer. But for a demonstration with people, who are not familiar with Matlab, this proceeding is useless. Now I found out, that I can export a Script .aws File which starts my developed Audio Session without launching Matlab and Audio Weaver Designer. This is nice!!
But how can I change now some parameters like volume, routing of different audiostreams etc.? Mention the traget hardware is still a PC!
Is there a possibility to change parameters maybe via keyboard, MIDI-Controller, IP Messages, Matlab GUI etc.?
I hope the question is not to easy, but the answer will (except no ;))
Thanks and greetings
Max
6:05pm
Hi Max,
Sorry for the delayed response.
This is a great question. You can observe or update any available parameter in any running session using the Audio Weaver Server command syntax. These commands are simply sent to the server over TCP/IP as plain text by any method you would like, so yes, you could use any of the methods you listed to do tuning demos. The Server Commnad syntax is described in the document 'Audio Weaver Tuning Commnad Syntax' on our documentations page.
To check which ports the server are listening to, check you AWE_Server.ini file (<AWE Dir>\Bin\win32-vc100-rel) and look for the user connection or MATLAB ports. One of my user connection ports is 15007.
Python is a popular choice to do the tuning because it has good socket and GUI libraries that you can use to easily make a tool. As a reference, here is a short and silly python script (requires python 3.x) that simply changes and reads back the frequency value of a module called 'SineGenerator' in a running layout. You can easily expand this into a GUI tool that is generalized to your demo layout.
Let us know if you have any issues,
-Axel
get_set_server.py.txt
2:24am
Hi Axel,
thank you for your response.
I already tried to send TCP/IP messages to the server. For me it was possible to send one message, but I didn't get a reply. (see https://dspconcepts.com/forums/awe-core/311-server-command-syntax).
Am I right, that client and server needs a handshake before the client can send the next message? What could here the problem?
For now I used python 2.7. Is the functionality to talk with the Audio Weaver Server only given with python 3.x?
Thank you
Max
1:14pm
There's nothing about Audio Weaver that requires python 3.x - any script that can connect to a socket and send and receive TCP/IP packages will work. The get_set_server.py script I attached can actually run with 2.7 if the first line (coding: 'utf-8') is removed.
I saw your other post but I don't have the required MATLAB toolbox to try it out. Are you able to connect to AWE Server and tune using python?
-Axel
4:43am
Ah nice to know, that python 2.7 is also possible.
Yes I already tried to connect to AWE Server with python. There I observe the same like in MATLAB. I can send one message and I see the incoming message in the Server Message window and the wanted parameter can be tuned. But the python socket doesn't recieve a message from the AWE Server and I cannot send another message.
Could this be an firewall issue?
Max
3:05pm
It may be a firewall issue. Can you try disabling your firewall, or making sure that <AWE Designer Folder>\Bin\win32-vc100-rel\AWE_Server.exe is on your allowed list of applications in your firewall settings?