Page 1 of 1

VBAN Remote

Posted: Fri May 18, 2018 1:13 pm
by thusup
Is anyone familiar with any web or Android applications that act as a remote control for VBAN? I mirror audio from one room of the house to the other and vice versa, and it would be nice to enable/disable output and raise/lower volume from my phone while in the room.

Since I can't find anything I was considering writing a PHP script to handle this for me, which could be as crude as calling socat to send raw packets for me or as sophisticated as having the PHP script do it. Would someone be willing to simplify the packet structure for TEXT commands? The documentation is more technical than what I'm currently able to digest.

Re: VBAN Remote

Posted: Fri May 18, 2018 2:25 pm
by Vincent Burel
good idea! if you prepare your PHP stuff ready to send an UDP packet, i will help you to build a VBAN-TEXT request for Voicemeeter...

Re: VBAN Remote

Posted: Fri May 18, 2018 3:34 pm
by thusup
It seems this is my payload; I put the header in binary because that's easier for me to understand. Does this look right to mute one of a remote machine's inputs?

Code: Select all

1        2        3        4        5        6        7        8
       V        B        A        N   SP/BPS   Unused  Channel  ST/R/DF
01010110 01000010 01000001 01001110 01000000 00000000 00000000 00000000

9        10       11       12       13       14       15       16
       S        T        R        E        A        M        1   <NULL>
01010011 01110100 01110010 01100101 01100001 01101101 00110001 00000000

17       18       19       20       21       22       23       24
  <NULL>   <NULL>   <NULL>   <NULL>   <NULL>   <NULL>   <NULL>   <NULL>
00000000 00000000 00000000 00000000 00000000 00000000 00000000 00000000

25        26       27       28     
       0        0        0        0
00000000 00000000 00000000 00000000

Bytes 29-1436 ASCII, null padded:
Strip(1).mute = 1

It seems I'd just fire off a UDP packet to the correct IP address containing this data.

Re: VBAN Remote

Posted: Sat May 19, 2018 8:32 am
by Vincent Burel
yes, your header seems to be ok! You may call it "Command1" instead of "Stream1" because it's how it is defined by default in Voicemeeter incoming streams dialog box. but you are not obliged to make a null-padded string after, you can send any packet size from 29 to 1436 bytes (UTF-8 / ASCII).

NOTE: in the VBAN protocole specification document: ... ations.pdf
at the end of VBAN SUB PROTOCOL TEXT section, in "Implementation details" chapter (page 22) there is an example of typical VBAN header to send VBAN-TEXT request to Voicemeeter.

HEADER: ‘V’, ‘B’, ‘A’, ‘N’, 0x52, 0x00, 0x00, 0x00, 0x10, “Command1”...
(we use 256 kbps more for our internal management in fact)

your HEADER: ‘V’, ‘B’, ‘A’, ‘N’, 0x40, 0x00, 0x00, 0x00, 0x10, “Stream1”...
(you use 0 kbps, meaning "any rate")

and you just have to send this UDP packet to the right IP-Address (with the right UDP port: 6980 per default).

Re: VBAN Remote

Posted: Sat May 19, 2018 6:09 pm
by thusup
I modified the header to Command1 and the bitrate to 0x52, and ended up with

Code: Select all

echo -ne '\x56\x42\x41\x4e\x52\x00\x00\x00\x43\x6f\x6d\x6d\x61\x6e\x64\x31\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x00\x53\x74\x72\x69\x70\x28\x31\x29\x2e\x6d\x75\x74\x65\x3d\x31' | socat - UDP4-DATAGRAM:


Code: Select all

V B A N 0x52 0x00 0x00 0x00 0x43 C o m m a n d 1 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 S t r i p ( 1 ) . m u t e = 1

I'm not seeing a reaction in Voicemeeter so far. I do notice:
  • the 0x10 you have but that's not what I get; I get 0x43 for that section and I don't understand why.
  • the final 13 bytes of my header are null; I don't know if the last 4 need to be 0x30 (ASCII 0)

Re: VBAN Remote

Posted: Tue May 22, 2018 8:22 am
by Vincent Burel
you may activate VBAN-TEXT incoming stream in Voicemeeter VBAN Dialog Box.

ActivateVoicemeeterVBANTEXT.jpg (113.24 KiB) Viewed 8639 times

Re: VBAN Remote

Posted: Wed May 23, 2018 4:27 am
by thusup
Ah I didn't catch that. I'll repeat my tests with that change.
vban1.PNG (46.04 KiB) Viewed 8632 times
vban2.PNG (12.85 KiB) Viewed 8632 times
vban3.PNG (3.3 KiB) Viewed 8632 times

I find that neither the macro button or the socat affect the strip (just to be sure I also tested the macro without the VBAN specific options and the button worked fine.) Is there anything you see there that looks off?

Re: VBAN Remote

Posted: Wed May 23, 2018 5:34 am
by Vincent Burel
your incoming stream 9 & 10 are corrupted ... it seems it's due to a bug in the "reset config" procedure...
you may delete XML stuff related to incoming VBAN stream 9 and 10 in the config file: VoiceMeeterDefault.xml in
C: \ Users \ myname \ AppData \ Roaming directory.

After investigating all RESET CONFIG functions are corrupting this 2 last VBAN Stream (VBAN MIDI and VBAN TEXT)... changing them in audio stream instead... this will be corrected in the next update.

Re: VBAN Remote

Posted: Fri May 25, 2018 5:34 am
by thusup
Ah yep now it works. Thanks for all the help.