# US 10,455,277 B2 · Linking devices

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

- Number: US 10,455,277 B2
- Document ID: US10455277B2
- Status: Granted
- Kind: B2
- Application number: 15/553,856
- Filed: 2016-02-26
- Published: 2018-02-08
- Granted: 2019-10-22
- Earliest claimed: 2015-02-26
- Assignees: Piksel, Inc.
- Applicants: Piksel, Inc.
- Inventors: Philip Shaw
- Web page: https://patentgrep.com/patent/US10455277B2

## CPC

- H04N 21/43615: {Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals (home Audio Video Interoperability [HAVI] data switching networks H04L12/2805)}
- G06F 21/16: Program or content traceability, e.g. by watermarking
- G06F 21/445: {by mutual authentication, e.g. between devices or programs}
- G10L 19/018: Audio watermarking, i.e. embedding inaudible data in the audio signal
- H04N 1/32144: {embedded in the image data, i.e. enclosed or integrated in the image, e.g. watermark, super-imposed logo or stamp}
- H04N 21/43078: {for seamlessly watching content streams when changing device, e.g. when watching the same programme sequentially on a TV and then on a tablet}
- H04N 21/4394: {involving operations for analysing the audio stream, e.g. detecting features or characteristics in audio streams (arrangements characterised by components specially adapted for monitoring, identification or recognition of audio in broadcast systems H04H60/58)}
- H04N 21/4518: {involving characteristics of one or more peripherals, e.g. peripheral type, software version, amount of memory available or display capabilities}
- H04N 21/6547: comprising parameters, e.g. for client setup
- H04N 21/8358: involving watermark {(protecting executable software by watermarking G06F21/16; image watermarking in general G06T1/0021; watermarks inserted in still images for transmission purposes H04N1/32144; inserting watermarks during video coding H04N19/467)}
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G10L: SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING

## Abstract

There is disclosed a method of establishing a communication link between first and second devices, the method comprising: receiving a link request from a first device with a first unique identifier; allocating a media content from multiple media content to the first unique identifier; sending the media content to the first device; receiving a media identifier from a second device with a second unique identifier; comparing the media identifier and the media content, and in dependence on identifying a match, transmitting the first unique identifier to the second device and the second unique identifier to the first device, whereby the first and second device can establish a communication link based on the exchanged first and second unique identifiers.

## Claims

### Claim 1

A method, implemented at a computer device, of establishing a communication link between a first device and a second device, the method comprising:
storing, at the computer device, a plurality of media segments;
marking, at the computer device, any of the plurality of media segments which have been allocated;
receiving from the first device, at the computer device, a message including a link request and a unique identifier of the first device;
selecting, at the computer device, an unallocated media segment;
allocating, at the computer device, the selected unallocated media segment to the unique identifier of the first device;
marking, at the computer device, the selected unallocated media segment as allocated to the unique identifier of the first device;
sending, from the computer device, the marked selected media segment to the first device;
receiving from the second device, at the computer device, a message including a media identifier and a unique identifier of the second device;
identifying, at the computer device, a media segment associated with the media identifier;
comparing, at the computer device, the media segment associated with the media identifier and the stored plurality of media segments;
identifying, at the computer device, a match between the media segment associated with the media identifier and the stored plurality of media segments;
retrieving the unique identifier of the first device, associated with the retrieved media segment;
transmitting, from the computer device, the unique identifier of the first device corresponding to that match to the second device; and
transmitting, from the computer device, the unique identifier of the second device to the first device, whereby a communication link is established between the first and second devices based on the exchanged unique identifiers.

### Claim 2 (depends on 1)

A method according to claim 1, wherein the step of allocating the selected unallocated media segment comprises selecting the selected unallocated media segment from multiple unallocated media content held in an electronic storage.

### Claim 3 (depends on 1)

A method according to claim 1, further comprising the step of returning the selected unallocated media segment to a store of unallocated media content after it has been used in identifying the match.

### Claim 4 (depends on 1)

A method according to claim 1, wherein the selected unallocated media segment is one of an audio content and a piece of video content.

### Claim 5 (depends on 4)

A method according to claim 4, wherein the audio content is an audio track associated with a video clip.

### Claim 6 (depends on 1)

A method according to claim 1, carried out at a server in communication with the first and the second devices via a communication system.

### Claim 7 (depends on 1)

A method according to claim 1, further comprising the step of establishing a persistent connection to the first device after receiving the link request, wherein the step of transmitting the unique identifier of the second device to the first device takes place over the persistent connection.

### Claim 8 (depends on 1)

A method according to claim 1, wherein one or both of the unique identifiers are device identifiers, and wherein one or both of the unique identifiers includes an authentication token issued by one of the first and the second devices.

### Claim 9 (depends on 1)

A method according to claim 1, wherein the selected unallocated media segment includes audio data which, when played out by the first device, generates an audible signal.

### Claim 10 (depends on 1)

A method according to claim 1, wherein the selected unallocated media segment includes one of an audio watermark and a video watermark which, when played out by the first device, is detectable by the second device.

### Claim 11 (depends on 1)

A method according to claim 1, wherein the selected unallocated media segment includes video data which, when played out by the first device, generates a visible signal.

### Claim 12 (depends on 1)

A computer device for establishing a communication link between a first device and a second device, the computer device comprising:
electronic storage holding multiple media content; and
a processor arranged to execute a computer program which, when executed, carries out the steps of claim 1.

### Claim 13

A method, at a first device, of establishing a communication link with a second device, the method comprising:
issuing a link request from the first device to a computer device, the link request comprising a unique identifier of the first device;
receiving, at the first device from the computer device, information identifying a media segment, wherein the media segment is selected at the computer device as an unallocated media segment and then allocated and marked at the computer device to the unique identifier of the first device;
accessing and playing out, at the first device, the media segment in a vicinity of the second device, wherein the second device transmits to the computer device a message including the media segment and a unique identifier of the second device, wherein the computer device compares the media segment to a stored plurality of media segments, to retrieve the unique identifier of the first device which is allocated to the media segment;
receiving, at the first device from the computer device, a second unique identifier associated with the second device; and
enabling the communication link between the first device and the second device using the second unique identifier received at the first device.

### Claim 14 (depends on 13)

A method according to claim 13, wherein the information identifying the media segment is a uniform locator to identify and access the media content.

### Claim 15 (depends on 13)

A computer device including a processor arranged to execute a computer program which, when executed, carries out the steps of claim 13.

### Claim 16

A method of establishing a communication link between a first device and a second device, the method carried out at the second device and comprising:
detecting, at the second device, a media segment played out by the first device when in a vicinity of the second device, wherein the media segment is selected at a computer device as an unallocated media segment, allocated and marked at the computer device to the unique identifier of the first device, and then transmitted from the computer device to the first device;
transmitting, from the second device to the computer device, a message including the detected media segment and a unique identifier of the second device, wherein the computer device compares the media segment to a stored plurality of media segments, to retrieve a unique identifier of the first device which is allocated to the media segment;
receiving, at the second device from the computer device, the unique identifier of the first device; and
enabling the communication link between the second device and the first device using the first unique identifier received at the second device.

### Claim 17 (depends on 16)

A method according to claim 16, wherein the step of detecting the media segment comprises detecting a watermark in a media clip.

### Claim 18 (depends on 16)

A method according to claim 16, wherein the media segment is one of an audio segment and a video segment.

### Claim 19 (depends on 18)

A method according to claim 18, wherein the step of detecting the audio segment includes detecting an audible signal using a microphone, and wherein the step of detecting the video segment includes detecting a visual signal using a camera.

### Claim 20 (depends on 16)

A computer device including a processor arranged to execute a computer program which, when executed, carries out the steps of claim 16.
