Zoelen Media Center v3 VR part 2

ZMC v3
The VR system

My system
This is how I have setup my system for voice recognition.
My system has one microphone in each room for a total of different rooms and a XAP800 unit

I've added a couple of macros to the unit do some work for me.
macro 99 - unmute all
ZMC v3
Macro 100 - mute all
This is the same as macro 99 but now with arg 3 set to zero

Tip #10
Since I use 4 microphones I want the mute the other microphones when an attention phrase is heard. This will prevent unintended voice commands from other rooms. Macro 101 is used for microphone 1. Macro 102 for microphone 2 and so on.
Macro 101 will turn everything OFF except mic 1
Macro 102 will turn everything OFF except mic 2
Macro 103 will turn everything OFF except mic 3
Macro 104 will turn everything OFF except mic 4
Note: Add or remove macro's to meet your setup

Example macro101
ZMC v3
This is how I have configured my microphones.
ZMC v3
In the matrix image you see that Iíve connected the microphones also to a processer (Proc Mics @ To Processing A). All the mics use gating in this image. On the left side you see the Proc Mics coming in again at From Processing A and it's connected to output 12 (Naar PC mic). The mics are also connected to output 11 (naar TH2) that connection is an additional option when using a TH2 teleconference unit which is mentioned later on.

ZMC v3 On the left the first four columns are marked virtual ref 1 to 4. This is where you set the audio canceling channel. Here everything that comes out of the Audio processor is used as a virtual reference. Everything in this channel will be subtracted from what the microphone hears.
Finaly make sure that your have your gating control set right. On the image below i have max. one possible mic that can gate. In my current setup i have this set to two.
ZMC v3

Some useful ideas

Tip #11: Baby phone
How to listen in an other room?
I do the following with an external script. Disable the music in your room. Mute all mics except the one in the room you want to listen and open up the microphone channel in ZMC.
In case you get a choppy sound then have a look at the None Liniar Processing (NLP). This can be found under de mic settings, under the AEC button. Put this setting to none or at slow at max because it will influence the channel much.

Tip #12: Intercom, speak with someone in another room.
In the event that you want to implement an intercom functionality (done with an additional script) then you need a few more macros.
Have a look at this matrix for the macro numbering

From - To

The 'room from' x 'room to' will give you the macro number.
If you want to have a connection between room 3 and 2 then you have to start macro 6. The ZMC script will handle this for you. All you need to do is to make the correct macros for your system
Note. I was planning the system for a max. 5 microphones
In my case I had to make six macros, macro 2, 3, 4, 6, 8 and 12.
Each macro mutes all mics except the two rooms that need to be connected. In the case of macro 6 all mics are muted except mic 2 and 3. Setting up an intercom connection is triggered by an event that calls a separate script. This functionality isn't implemented in ZMC v3.0 but done with an external script
In case you get a coppy sound then have a look at the None Liniar Processing (NLP). This can be found under de mic settings, under the AEC button. Put this setting to none or at slow at max because it will influence the channel much.
ZMC v3

Tip #13: Audio control
I have a separate script that is called by an event that is able to control the music, selects internet radio stations, different playlists and telling me who this artist is and which song this is. It gets its context from the command that is spoken and all commands trigger the same script. In the script itself the right action will be taken and ZMC is used to do the actions.

Tip #14: TH2 Telephone unit
There is also a teleconferencing unit available that can be integrated in this setup. The ZMC v3 script can detect incoming calls and take action upon this. With this it is possible to answer the phone via a voice command. The call will be put in the speaker in the room where you told to pick up the phone and you can have your conversation hands free. It's also possible to make outgoing phone calls this way. Just make an event with for example 'call olaf' and let it start the ZMC v3 script with the right number (AZ_ZMC3.vb("DialOnTELCO","0|1|1234567890) ) and the call will be made.

Tip #15
You can combine tip 12 and 14.
In case you are in the basement having a phone call but you need to ask your spouse, who is in the attic, some information you can start a conference call by opening an intercom connection. Then the three of you will be in the same phone call.

The is the last article in this serie. I hope you enjoyed it!