Broadcasting to multiple sites

The most efficient way to transmit audio to a group of sites is "IP Multicasting", which allows the creation of conference groups that individual hosts can join and leave at will. A multicast conference is far more efficient than sending duplicate messages to all recipients. Unfortunately, many networks do not support, or have not enabled Multicasting, and often setting up Multicast groups requires the involvement of a site's system administrator, making it difficult to use for informal, ad hoc groups.

Speak Freely's Broadcast facility provides an alternative which requires no special network configuration. Without the benefit of Multicasting is it forced, however, to send duplicate packets to each recipient, which usually works only on fast local networks. Since many educational institutions and enterprises have such networks, broadcasting can be an effective way to transmit classes, seminars, and meetings to multiple destinations within the organisation.

Broadcasting is activated by checking the Connection/Broadcast menu item. Audio input is sent to all currently-open connections and the title bar displays a legend indicating a broadcast is in progress. When a broadcast is underway, other hosts can "subscribe" to the broadcast simply by making a connection to the broadcasting host and sending a short (say, one second) burst of sound to it. (The sound is discarded by the broadcasting host and will not affect the broadcast). This opens a connection to the new host, which will then begin to receive the broadcast. A host can unsubscribe from the broadcast by sending another short burst of sound. To prevent rapid toggling between subscribed and unsubscribed state, at least 10 seconds must elapse between subscribe and unsubscribe requests, and transmission to a host may continue for up to 10 seconds after it sends an unsubscribe request.

Toggling broadcasting off immediately ceases the transmission. Connections established during the broadcast will time out according to the normal rules unless additional sound is received from them or sound is explicitly sent to their connection. During a broadcast, mouse and keyboard input to connection windows is ignored; all connections remain in transmit mode, as indicated by the ear icon when the mouse is over a connection window.