VBAN Remote

VB-Audio Network Protocol and applications
Post Reply
thusup
Posts: 18
Joined: Mon Mar 26, 2018 10:54 pm

VBAN Remote

Post 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.
Vincent Burel
Site Admin
Posts: 2008
Joined: Sun Jan 17, 2010 12:01 pm

Re: VBAN Remote

Post 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...
thusup
Posts: 18
Joined: Mon Mar 26, 2018 10:54 pm

Re: VBAN Remote

Post 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.
Vincent Burel
Site Admin
Posts: 2008
Joined: Sun Jan 17, 2010 12:01 pm

Re: VBAN Remote

Post 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: https://www.vb-audio.com/Voicemeeter/VB ... 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).
thusup
Posts: 18
Joined: Mon Mar 26, 2018 10:54 pm

Re: VBAN Remote

Post 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:192.168.0.19:6980
or

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)
Vincent Burel
Site Admin
Posts: 2008
Joined: Sun Jan 17, 2010 12:01 pm

Re: VBAN Remote

Post by Vincent Burel »

you may activate VBAN-TEXT incoming stream in Voicemeeter VBAN Dialog Box.
ActivateVoicemeeterVBANTEXT.jpg
ActivateVoicemeeterVBANTEXT.jpg (113.24 KiB) Viewed 28728 times
thusup
Posts: 18
Joined: Mon Mar 26, 2018 10:54 pm

Re: VBAN Remote

Post by thusup »

Ah I didn't catch that. I'll repeat my tests with that change.
vban1.PNG
vban1.PNG (46.04 KiB) Viewed 28721 times
vban2.PNG
vban2.PNG (12.85 KiB) Viewed 28721 times
vban3.PNG
vban3.PNG (3.3 KiB) Viewed 28721 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?
Vincent Burel
Site Admin
Posts: 2008
Joined: Sun Jan 17, 2010 12:01 pm

Re: VBAN Remote

Post 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.
thusup
Posts: 18
Joined: Mon Mar 26, 2018 10:54 pm

Re: VBAN Remote

Post by thusup »

Ah yep now it works. Thanks for all the help.
Post Reply