02-09-2012, 11:18 AM
Something we are considering for 4.2 (in addition to yet still more additions to the auto-generation and the usual general improvements) is an intercom system. Some other companies are offering such things, and in theory we have the underlying capabilities we need in Windows to implement such a thing. The 4.1 release cycle is drawing to a close, so it's time to start thinking about the 4.2 stuff and, if we do this, it's something that will need to be addressed early in the cycle so that it has plenty of time to be banged on and refined before we release it formally.
So if this is something you might be interested in, throw in your two cents about what you think would be the required features. We won't be able to do the ultimate solution first time out the door, so some things may not make the first cut, but even then it would be good to know about them and plan for their ultimate implementation.
Obviously, in one major way the features will drive architecture and that's in how is it distributed. A point to point type of scheme is something that can probably be done fairly simply, using the standard audio streaming features in Windows. But if we need to support broadcast or multi-cast type transmissions, that's going to be another thing potentially. I've not looked into it enough to know if the Windows streaming audio source/sink type architecture supports that or not.
One obvious way to approach it conceptually is that there are some number of 'channels' that you can define. And each client can indicate it will be willing to receive audio on one or more of those channels, and ignores the others. You could of course create an All channel for pure broadcast. Then a client who wants to send will pick a channel, and whatever is picked up by the mic will be sent out to those channel. That seems like a fairly reasonable way to think about it? Obviously any given system would be able to mute/unmute specific channels or all channels.
If the Windows stuff doesn't support broadcast, we might have to do something on our own, like RTP or something I guess. The data size won't be great since you don't need super high quality audio for this purpose.
Anyway, I've not thought it out heavily yet. So throw in with what you feel like the absolutely required and nice to have features would be of an intercom system you would want to use.
So if this is something you might be interested in, throw in your two cents about what you think would be the required features. We won't be able to do the ultimate solution first time out the door, so some things may not make the first cut, but even then it would be good to know about them and plan for their ultimate implementation.
Obviously, in one major way the features will drive architecture and that's in how is it distributed. A point to point type of scheme is something that can probably be done fairly simply, using the standard audio streaming features in Windows. But if we need to support broadcast or multi-cast type transmissions, that's going to be another thing potentially. I've not looked into it enough to know if the Windows streaming audio source/sink type architecture supports that or not.
One obvious way to approach it conceptually is that there are some number of 'channels' that you can define. And each client can indicate it will be willing to receive audio on one or more of those channels, and ignores the others. You could of course create an All channel for pure broadcast. Then a client who wants to send will pick a channel, and whatever is picked up by the mic will be sent out to those channel. That seems like a fairly reasonable way to think about it? Obviously any given system would be able to mute/unmute specific channels or all channels.
If the Windows stuff doesn't support broadcast, we might have to do something on our own, like RTP or something I guess. The data size won't be great since you don't need super high quality audio for this purpose.
Anyway, I've not thought it out heavily yet. So throw in with what you feel like the absolutely required and nice to have features would be of an intercom system you would want to use.
Dean Roddey
Explorans limites defectum
Explorans limites defectum