Hi,
I'm designing integrated home automation/entertainment system based on Linux
and other open source apps. I have several possible sound sources (like
Festival as speech synthesis, music players, VOIP or
ordinary telephony applications, intercom) and several sound destinations
(rooms in my house - can be either remote desktop running some network audio
client or separate output on multichannel local audio card). Now I'd like to
implement
'virtual' audio router/mixer in software that can be dynamically controlled
from other program language (Perl is preffered in my case). I'd need to
combine several audio sources to each sound destination (like big software
switching/mixing/routing black box), dynamically change volumes, add/remove
chains etc...
Some possible scenarions:
- when internet voice call comes in, then I connect to certain channel on
audio card for
certain room (route two way audio stream that comes from Internet to certain
audio destination/source)
- when watching TV (sound going to some audio card output), speech synthesis
would like to announce something (I'd like to volume down TV audio and mix
speech, and then go with TV volume to normal level)
- from one room I'd like to talk to another...
If I think ideally - best would be to have range of "virtual" sound
destinations, that could be dinamically routed,mixed to physical devices. As
far as my novice knowledge goes I was thinking of using Alsaplayers as
music/wav players (they have software volume control) , Festival as speech
synthesis, some softphone for IP telephony (that could output to ecasound or
Jack) and every other valuable suggestion for software package I get. I
don't know much of Jack, maybe its also part of solution....
Any other advice in apps to use, more info or any other opinion would be
more than grateful. Also if anyone made some effort or thinking in this
direction - it'll be of great help...
Thanks in advance,
regards,
Rob.