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.
VBAN Remote
-
- Site Admin
- Posts: 2133
- Joined: Sun Jan 17, 2010 12:01 pm
Re: VBAN Remote
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
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?
It seems I'd just fire off a UDP packet to the correct IP address containing this data.
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
-
- Site Admin
- Posts: 2133
- Joined: Sun Jan 17, 2010 12:01 pm
Re: VBAN Remote
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).
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).
Re: VBAN Remote
I modified the header to Command1 and the bitrate to 0x52, and ended up with
or
I'm not seeing a reaction in Voicemeeter so far. I do notice:
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
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
- 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)
-
- Site Admin
- Posts: 2133
- Joined: Sun Jan 17, 2010 12:01 pm
Re: VBAN Remote
you may activate VBAN-TEXT incoming stream in Voicemeeter VBAN Dialog Box.
Re: VBAN Remote
Ah I didn't catch that. I'll repeat my tests with that change.
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?-
- Site Admin
- Posts: 2133
- Joined: Sun Jan 17, 2010 12:01 pm
Re: VBAN Remote
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.
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
Ah yep now it works. Thanks for all the help.