# US 9,521,360 B2 · Communication system and method

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 9,521,360 B2
- Document ID: US9521360B2
- Status: Granted
- Kind: B2
- Application number: 14/596,156
- Filed: 2015-01-13
- Published: 2015-05-07
- Granted: 2016-12-13
- Earliest claimed: 2010-12-31
- Assignees: Skype
- Applicants: Skype
- Inventors: Derek MacDonald
- Web page: https://patentgrep.com/patent/US9521360B2

## CPC

- H04L 65/1094: Inter-user-equipment sessions transfer or sharing
- H04N 7/142: {Constructional details of the terminal equipment, e.g. arrangements of the camera and the display}
- G06V 40/172: {Classification, e.g. identification}
- G06V 40/20: Movements or behaviour, e.g. gesture recognition (recognition of facial expressions G06V40/16)
- G10L 17/00: Speaker identification or verification techniques
- H04L 65/1059: End-user terminal functionalities specially adapted for real-time communication
- H04L 65/1069: Session establishment or de-establishment
- H04M 1/2535: {adapted for voice communication over an Internet Protocol [IP] network (Voice over Internet Protocol (VoIP) network equipment and services H04M7/006; implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP] H04L69/16)}
- H04R 29/005: {Microphone arrays}
- H04R 2420/01: Input selection or mixing for amplifiers or loudspeakers
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- G06V: IMAGE OR VIDEO RECOGNITION OR UNDERSTANDING
- G10L: SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- H04M: TELEPHONIC COMMUNICATION (circuits for controlling other apparatus via a telephone cable and not involving telephone switching apparatus G08)
- H04R: LOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; ELECTRIC HEARING AIDS; PUBLIC ADDRESS SYSTEMS (producing sounds with frequency not determined by supply frequency G10K)

## Abstract

A method, client application and user terminal, the method including providing a packet-based communication system for conducting voice or video calls over a packet-based network and providing an instance of a client application enabling a first user terminal to access the packet-based communication system. The client application is configured so as when executed on the first terminal to receive an input from multiple different audio and/or video input transducers of the first terminal, to analyze those inputs in relation to one another, and based on that analysis to select at least one audio and/or video input transducer and/or output transducer of the first terminal for use in conducting a voice or video call with a remote user terminal via the packet-based communication system.

## Claims

### Claim 1

One or more computer-readable storage memories for selecting at least one transducer of a user terminal for a voice or video call, the computer-readable storage memories comprising instructions of a client application, for conducting voice or video calls over a communication system, the instructions executable by one or more processors of the user terminal to perform operations comprising:
receiving, by the user terminal, input signals from multiple audio or video input transducers of the user terminal;
analyzing the received input signals in relation to one another; and
responsive to the analyzing, selecting, by the user terminal, at least one audio input transducer, video input transducer, or output transducer of the user terminal for use in conducting the voice or video call with a remote user terminal via the communication system.

### Claim 2 (depends on 1)

The computer-readable storage memories of claim 1, wherein the analyzing relates to a relative proximity of a user to the input transducers.

### Claim 3 (depends on 1)

The computer-readable storage memories of claim 1, wherein the analyzing comprises one or more of:
comparing the energy or power level of the input signals from two or more of the audio input transducers;
performing a Fourier analysis of the input signals from two or more different audio or video input transducers;
performing a voice recognition algorithm applied to the input signals from two or more of the audio input transducers;
performing a facial recognition algorithm applied to the input signals from two or more of the video input transducers; or
performing a motion recognition algorithm applied to the input signals from two or more of the video input transducers.

### Claim 4 (depends on 1)

The computer-readable storage memories of claim 1, wherein said selecting is made upon answering a call, initiating the call, or during an outgoing call.

### Claim 5 (depends on 1)

The computer-readable storage memories of claim 1, wherein the instructions are executable to perform recognizing voice commands for controlling the call, and said selecting is based on analyzing audio input signals received due to one or more voice commands.

### Claim 6 (depends on 1)

The computer-readable storage memories of claim 1, wherein the analyzing of the input signals from the audio input transducers is used to select one or more of:
the audio input transducer for use in the call;
an audio output transducer for use in the call;
the video input transducer for use in the call; or
a video output transducer for use in the call.

### Claim 7 (depends on 1)

The computer-readable storage memories of claim 1, wherein the analyzing of the input signals from the video input transducers is used to select one or more of:
the video input transducer for use in the call;
the video output transducer for use in the call;
the audio input transducer for use in the call; or
the audio output transducer for use in the call.

### Claim 8 (depends on 1)

The computer-readable storage memories of claim 1, wherein the instructions are executable to perform an initial calibration process to determine relative input response properties of the different input transducers.

### Claim 9

A system for selecting one or more transducers of a user terminal for a voice or video call, the system comprising:
a transceiver operable to access a communication system to conduct voice or video calls over the communication system;
multiple audio or video input transducers;
one or more processors operably coupled to the transceiver and the multiple audio and video input transducers;
one or more computer-readable memories, coupled to the one or more processors, comprising instructions of a client application, for the conducting voice or video calls over the communication system, the instructions executable by the one or more processors of the user terminal to configure the system to:
receive, by the user terminal, input signals from the multiple audio or video input transducers;
analyze the received input signals in relation to one another; and
in response to the analysis, select, by the user terminal, at least one audio input transducer, video input transducer, or output transducer of the system for use in conducting the voice or video call with a remote user terminal via the communication system.

### Claim 10 (depends on 9)

The system of claim 9, wherein the analysis relates to a relative proximity of a user to the input transducers.

### Claim 11 (depends on 9)

The system of claim 9, wherein the analysis comprises one or more of:
comparing the energy or power level of the input signals from two or more of the audio input transducers;
performing a Fourier analysis of the input signals from two or more different audio or video input transducers;
performing a voice recognition algorithm applied to the input signals from two or more of the audio input transducers;
performing a facial recognition algorithm applied to the input signals from two or more of the video input transducers; or
performing a motion recognition algorithm applied to the input signals from two or more of the video input transducers.

### Claim 12 (depends on 9)

The system of claim 9, wherein the selection is made upon answering a call, initiating the call, or during an outgoing call.

### Claim 13 (depends on 9)

The system of claim 9, wherein the instructions are executable to configure the system to recognize voice commands for controlling the call, and the selection is based on analyzing input signals received due to one or more voice commands.

### Claim 14 (depends on 9)

The system of claim 9, wherein the analysis of the input signals from the audio input transducers is used to select one or more of:
the audio input transducer of the system for use in the call;
an audio output transducer of the system for use in the call;
the video input transducer of the system for use in the call; or
a video output transducer of the system for use in the call.

### Claim 15 (depends on 9)

The system of claim 9, wherein the analysis of the input signals from the video input transducers is used to select one or more of:
the video input transducer of the system for use in the call;
the video output transducer of the system for use in the call;
the audio input transducer of the system for use in the call; or
the audio output transducer of the system for use in the call.

### Claim 16 (depends on 9)

The system of claim 9, wherein the instructions are executable to configure the system to perform an initial calibration to determine relative input response properties of the different input transducers.

### Claim 17

A user terminal for selecting one or more transducers of the user terminal for conducting voice or video calls over a communication system, the user terminal comprising:
multiple audio or video input transducers;
one or more processors operably coupled to the multiple audio or video input transducers;
one or more computer-readable memories, coupled to the one or more processors, comprising instructions executable by the one or more processors of the user terminal to configure the user terminal to:
receive, by the user terminal, input signals from the multiple audio or video input transducers;
analyze the received input signals in relation to one another; and
in response to the analysis, select, by the user terminal, at least one audio input transducer, video input transducer, or output transducer of the user terminal for use in conducting a voice or video call with a remote user terminal via the communication system.

### Claim 18 (depends on 17)

The user terminal of claim 17, wherein the analysis comprises one or more of:
comparing the energy or power level of the input signals from two or more of the audio input transducers of the user terminal;
performing a Fourier analysis of the input signals from two or more different audio or video input transducers of the user terminal;
performing a voice recognition algorithm applied to the audio input signals from two or more of the audio input transducers of the user terminal;
performing a facial recognition algorithm applied to the video input signals from two or more of the video input transducers of the user terminal; or
performing a motion recognition algorithm applied to the video input signals from two or more of the video input transducers of the user terminal.

### Claim 19 (depends on 17)

The user terminal of claim 17, wherein the analysis of the input signals from the audio input transducers is used to select one or more of:
the audio input transducer of the user terminal for use in the call;
an audio output transducer of the user terminal for use in the call;
the video input transducer of the user terminal for use in the call; or
a video output transducer of the user terminal for use in the call.

### Claim 20 (depends on 17)

The user terminal of claim 17, wherein the analysis of the input signals from the video input transducers is used to select one or more of:
the video input transducer of the user terminal for use in the call;
the video output transducer of the user terminal for use in the call;
the audio input transducer of the user terminal for use in the call; or
the audio output transducer of the user terminal for use in the call.
