Multimedia coordination system
First Claim
1. In a network interconnecting a central server and a plurality of client workstations adapted to sending and receiving out-of-band data, out-of-band data being multicast between some of the client workstations without going through the central server or any intermediary device controlled by the central server, a method for coordinating communication of out-of-band data between some of the client workstations, comprising the steps of:
- associating a first client workstation with a device, the device providing multimedia input at the first client workstation;
defining a first transmitter object in a memory of the central server, the first transmitter object being associated with a first transmitter for transmitting data from the device over a first channel;
defining a first receiver object in the memory of the central server, the first receiver object being associated with a first receiver for receiving audio signals over the first channel at a second client workstation;
providing a first encryption key to the first client workstation and the second client workstation to provide secure communication of data over the first channel;
defining, subsequent to said providing step, a second receiver object in the memory of the server, the second receiver object being associated with a second receiver for receiving audio signals over the first channel at a third client workstation; and
replacing, in response to said defining step, the first encryption key with a second encryption key, the second encryption key being provided to the first client workstation, the second client workstation, and the third client workstation for communication of data over the first channel so that communication broadcast over the first channel is secure.
5 Assignments
0 Petitions
Accused Products
Abstract
In a network, a media coordination system provides secure multimedia communication channels in a collaborative network environment. The media coordination system provides automatic encryption, dynamic interconnection of streams of data, and user interface elements that provide users with control over the ultimate destination of their audio and video data. The infrastructure of the system includes a plurality of client workstations that are connected to a central server using point-to-point network connections. The central server maintains a persistent virtual world of network places with objects located therein. Streams of audio and video data are coordinated between client workstations operating in the persistent virtual world by a key manager object using channels, transmitters, and receivers. The client workstations multicast their audio and video data over the network to defined recipients after receiving a multicast address and an encryption key for a specific multicast channel. In order to protect the privacy of all communications and the integrity of the coordination system, each client workstation retains significant control over distribution and reception of audio and video data since multicast transmission is tied to specific user interface elements. The multimedia user interface elements include cameras, speakers, microphones, and video panes. Since the central server only coordinates where audio and video data is broadcast for a particular interface element, each client workstation ultimately controls the destination of multimedia data through selection of the element at the user interface.
257 Citations
21 Claims
-
1. In a network interconnecting a central server and a plurality of client workstations adapted to sending and receiving out-of-band data, out-of-band data being multicast between some of the client workstations without going through the central server or any intermediary device controlled by the central server, a method for coordinating communication of out-of-band data between some of the client workstations, comprising the steps of:
-
associating a first client workstation with a device, the device providing multimedia input at the first client workstation;
defining a first transmitter object in a memory of the central server, the first transmitter object being associated with a first transmitter for transmitting data from the device over a first channel;
defining a first receiver object in the memory of the central server, the first receiver object being associated with a first receiver for receiving audio signals over the first channel at a second client workstation;
providing a first encryption key to the first client workstation and the second client workstation to provide secure communication of data over the first channel;
defining, subsequent to said providing step, a second receiver object in the memory of the server, the second receiver object being associated with a second receiver for receiving audio signals over the first channel at a third client workstation; and
replacing, in response to said defining step, the first encryption key with a second encryption key, the second encryption key being provided to the first client workstation, the second client workstation, and the third client workstation for communication of data over the first channel so that communication broadcast over the first channel is secure. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A method of coordinating multicast audio data between a plurality of client workstations connected over a network, each client workstation having a point to point connection with a central server, multicast audio data not going through the central server or any intermediary device controlled by the central server, the method comprising the steps of:
-
displaying a communicator at a client workstation, the communicator providing a first user interface element to direct audio data from an audio device at the client workstation to a first set of client workstations and a second user interface element to direct audio data from the audio device to a second set of client workstations, the second set of client workstations being a sub-set of the first set of client workstations;
defining, in a memory of the central server, a public channel object associated with a public channel for transmission of audio data to the first set of client workstations and a private channel object associated with a private channel for transmission of audio data to the second set of client workstations;
receiving, at the central server, a first user signal from the communicator at the client workstation to direct audio data from the audio device to the public channel;
providing via the central server, in response to the first user signal, a first encryption key to the client workstation, the first encryption key facilitating encryption of audio data to be transmitted between the client workstation and the first set of client workstations over the public channel;
receiving, at the central server, a second user signal from the communicator at the client workstation to direct audio data from the audio device to the private channel;
providing via the central server, in response to the second user signal, a second encryption key to the client workstation, the second encryption key facilitating encryption of audio data to be transmitted between the client workstation and the second set of client workstations over the private channel; and
switching, at the client workstation, between the first encryption key upon receipt of a termination request signal from the communicator to terminate transmission of audio data from the audio device to the private channel and the second encryption key upon receipt of a resume request signal from the communicator to resume transmission of audio data from the audio device to the private channel, the switching step being performed without the client workstation communicating with the central server so that latency perceived at the communicator is reduced. - View Dependent Claims (9, 10)
-
-
11. In a network interconnecting a central server having a memory and a plurality of client workstations adapted to broadcasting data, the broadcast data not going through the central server or any intermediary device controlled by the central server, a system for coordinating communication of data between each of the plurality of client workstations, comprising:
-
a device for receiving data at a first client workstation;
a first transmitter facilitating transmission of data from said device over a channel, said first transmitter being associated with a transmitter object stored in the memory of the central server, the transmitter object including a multicast address and an encryption key assigned to the transmitter;
a first receiver facilitating receipt of data over the channel at a second client workstation, said first receiver being associated with a receiver object stored in the memory of the central server, the receiver object including a multicast address and an encryption key assigned to the receiver;
a key manager providing a first encryption key to the first client workstation and the second client workstation for secure broadcast of data over the channel;
said key manager providing a second encryption key to the first client workstation and the second client workstation in response to creation of a second receiver object in the memory of the central server for a third client workstation, the second receiver object being associated with a second receiver, the second receiver being associated with the third client workstation, the second receiver object coordinating receipt of data over the channel by the second receiver at the third client workstation, the second encryption key facilitating secure broadcast of data over the channel from the first client workstation to the second client workstation and the third client workstation. - View Dependent Claims (12, 13, 14)
-
-
15. In a networked computing environment interconnecting a plurality of client workstations and a central server, the plurality of client workstations communicating directly with the central server, each of the client workstations broadcasting data to sets of the plurality of client workstations, the broadcast data not going through the central server or any intermediary device controlled by the central server, a coordination system for providing dynamic interconnection of streams of data between each of the plurality of client workstations, the coordination system comprising:
-
an object database, resident in a memory of the central server, for storing a plurality of database objects, the object database storing therein a room object with a channel associated therewith;
a first user object being stored in the object database and having associated therewith a first client workstation, the first user object identifying a device for providing multimedia input at the first client workstation, the device directing multimedia input to a transmitter aiming at the channel;
a second user object being stored in the object database and having associated therewith a second client workstation, the second user object identifying a receiver directed at the channel for receiving data broadcast over the channel; and
a key manager being stored in the object database and communicating with the first user object and the second user object, the key manager providing coordination information to enable the first user object and the second user object to broadcast data between the first client workstation and the second client workstation over the channel. - View Dependent Claims (16, 17, 18, 19, 20, 21)
-
Specification