×

Peer-to-peer communications

  • US 9,270,784 B2
  • Filed: 02/16/2011
  • Issued: 02/23/2016
  • Est. Priority Date: 02/16/2011
  • Status: Active Grant
First Claim
Patent Images

1. A method for communicating at least voice, comprising:

  • providing a first plurality of user terminals including at least a first master and a number of slaves, including at least a first slave and a second slave, at least said first master, said first slave and said second slave being parts of a particular peer-to-peer system, with said at least first master functioning differently than each of said first and second slaves, each of said plurality of user terminals having at least an audio input device and an audio output device, said first plurality of user terminals being associated with a first determined topology that relates to connections among them in said particular peer-to-peer system,wherein each master including said at least first master is a user terminal that has at least the following master functions;

    (i) provides its own audio data;

    (ii) combines at least (a) audio data provided by at least one other user terminal and (b) its own audio data or audio data from a second other user terminal;

    (iii)combines audio data only when said user terminal outputs processed audio data to at least one slave such that the communication path therebetween is without any other user terminal intermediate thereof; and

    (iv)outputs audio data using its own audio output device;

    and each slave including said first slave and said second slave is a user terminal that has at least the following slave functions;

    (i) provides its own audio data;

    (ii) processes only its own audio data, including not combining audio data from any other user terminal;

    (iii)does not send another user terminal'"'"'s audio data to any other user terminal; and

    (iv)outputs audio data using its own audio output device;

    processing audio data from said first slave using said at least first master to generate processed first slave audio data;

    processing audio data from said second slave using said at least first master to generate processed second slave audio data;

    sending at least said processed first slave audio data to said second slave using said at least first master;

    sending at least said processed second slave audio data to said first slave using said at least first master; and

    transitioning, while communications are occurring utilizing said first determined topology, from said first determined topology to a second determined topology associated with a second plurality of user terminals and with said second plurality of user terminals being different from said first plurality of user terminals, wherein said transitioning comprises;

    dropping out by said first master from said first plurality of user terminals and with said second plurality of user terminals including said first and second slaves of said first predetermined topology and not including said first master,determining which one of said second plurality of user terminals is said second master and in which said second master replaces said first master for communicating audio data with other of said second plurality of user terminals, wherein said second master performs at least master functions in said second determined topology that are comparable to master functions performed by said first master in said first determined topology involving communications with at least one of said first and second slaves, said determining including;

    (i) utilizing a first bandwidth obtained using data sent from said second master to said first slave;

    (ii) utilizing a second bandwidth obtained using data sent from said first slave to said second master;

    (iii) utilizing a third bandwidth obtained using data sent from said second master to said second slave;

    (iv) utilizing a fourth bandwidth obtained using data sent from said second slave to said second master;

    (v) utilizing a fifth bandwidth obtained using data sent from said first slave to said second slave; and

    (vi) utilizing a sixth bandwidth obtained using data sent from said second slave to said first slave, andusing said second determined topology for communicating by said second plurality of user terminals after said determining.

View all claims
  • 1 Assignment
Timeline View
Assignment View
    ×
    ×