quiniouben / vban

VBAN protocol open-source implementation
GNU General Public License v3.0
450 stars 63 forks source link

systemd definition #28

Open highgain86j opened 5 years ago

highgain86j commented 5 years ago

Thought making a PR was too much so just posting here. Works fine. https://gist.github.com/tahiro86j/21ce691baa8c6f81190b7c1cbeca451d

quiniouben commented 5 years ago

Hi, thank you for your proposal. I wonder how I could distribute a template config, as parameters are a bit hard-coded in the command line invocation currently. I think one way, that would be beneficial other ways too, would be to implement config file, and then, the systemd unit file would be quite generic. As first step, I would allow myself to reuse your definition as an example in the README.md how to write it. Would it be ok for you ?

highgain86j commented 5 years ago

Absolutely no problem! (Thanks for asking though.)

highgain86j commented 5 years ago

On a side note...

I understand that when automatically launching multiple instances of vban_receptor, the cumbersome part really are the flexible assignment of port numbers, stream names and maybe the sound interfaces...to which I have following strategies to be implemented when I have time (maybe in python):

-A WebGUI on the host that’d be running instances of vban_receptor through which emitters world be registered either by a.)MAC address (those on the same subnet may use this option), b.)IPv4 address, c.)resolvable host name.

In the scenario a.), the stream name would read like St0123456789AB where 0123456789AB is the MAC address and the port number would be 7000+”4th octet of IPv4 address”. Scenarios b.) and c.) would use stream names that would read like St01234567 where 01234567 is the IPv4 address in hex. The port number would be 8000+”order”. For every instance launched, the WebGUI would show these info. Maybe I’ll also install a VFD in the 5-inch bay so these info can also be viewed. Running multiple instances on a host with a single sound interface may easily be achieved by creating plughw interfaces over a dmix interface.