# US 10,120,643 B2 · Portable playback device state variable

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

- Number: US 10,120,643 B2
- Document ID: US10120643B2
- Status: Granted
- Kind: B2
- Application number: 15/898,386
- Filed: 2018-02-16
- Published: 2018-06-21
- Granted: 2018-11-06
- Earliest claimed: 2012-06-27
- Assignees: Sonos, Inc.
- Applicants: Sonos, Inc.
- Inventors: Mieko Kusano
- Web page: https://patentgrep.com/patent/US10120643B2

## CPC

- G06F 3/165: {Management of the audio stream, e.g. setting of volume, audio stream path}
- G05B 15/02: electric
- H04N 21/41407: {embedded in a portable device, e.g. video client on a mobile phone, PDA, laptop (constructional details of equipment or arrangements specially adapted for portable computer application G06F1/1626; arrangements specially adapted for mobile receivers in broadcast systems H04H20/57)}
- H04N 21/43637: {involving a wireless protocol, e.g. Bluetooth®, RF or wireless LAN [IEEE 802.11] (arrangements for wireless networking or broadcasting of information in indoor or near-field type systems H04B10/114)}
- H04N 21/44209: {Monitoring of downstream path of the transmission network originating from a server, e.g. bandwidth variations of a wireless network (arrangements for maintenance or administration in data switching networks involving bandwidth and capacity management H04L41/0896)}
- H04N 21/44227: {Monitoring of local network, e.g. connection or bandwidth variations; Detecting new devices in the local network (configuring of peripheral devices in general G06F9/4411; monitoring connectivity in data switched networks H04L43/0811)}
- H04N 21/8113: {comprising music, e.g. song in MP3 format}
- H04R 2227/005: Audio distribution systems for home, i.e. multi-room use
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- G05B: CONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS (systems for controlling or regulating non-electric variables G05D; systems for regulating electric or magnetic variables G05F; control devices or systems insofar as characterised by mechanical features only G05G)
- H04N: PICTORIAL COMMUNICATION, e.g. TELEVISION
- 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

Systems, methods, apparatus, and articles of manufacture to facilitate playback of multimedia content are disclosed. An example apparatus includes a network interface configured to receive audio content over a playback network. A processor comprising instructions which when executed, cause the processor to detect that a portable playback device has joined the playback network. The processor is to update a state variable to indicate that the portable playback device has joined the playback network. The processor is to play audio content received over the playback network based on the state variable. The processor is to detect that the portable playback device is not joined to the playback network. The processor is to, after detecting that the portable playback device is not joined to the playback network, update the state variable to indicate that the portable playback device is not joined to the playback network.

## Claims

### Claim 1

A tangible, non-transitory computer-readable medium storing instructions that, when executed by a processor, cause a computing device to perform functions comprising:
receiving, via a wireless network interface, a state variable that a) does not identify a portable playback device as a member of a playback network and b) identifies a first playback device as a member of the playback network;
receiving a first update to the state variable that identifies the portable playback device as a member of the playback network and a member of a second zone;
based on the first update, displaying, via a user interface, a representation of the first playback device and a representation of the portable playback device;
receiving, via the user interface, an input to group the first playback device and the portable playback device for synchronous playback;
in response to receiving the input, transmitting, to at least one of the first playback device or the portable playback device, an instruction to form a playback device group comprising the first playback device and the portable playback device;
receiving, from at least one of the first playback device or the portable playback device, a second update to the state variable that identifies the portable playback device and the first playback device as members of the playback device group;
based on the second update, displaying a representation of the playback device group;
causing playback of audio content by the playback device group, wherein causing the playback comprises causing the first playback device and the portable playback device to play back the audio content synchronously;
receiving, via the user interface, a second input to remove the portable playback device from the playback device group;
transmitting, to at least one of the first playback device or the portable playback device, an instruction to remove the portable playback device from the playback device group;
receiving a third update to the state variable that identifies the portable playback device as not being a member of the playback device group and the first playback device as being a member of the playback device group; and
based on the third update, displaying a representation of the portable playback device and a representation of the first playback device.

### Claim 2 (depends on 1)

The computer-readable medium of claim 1, wherein the functions further comprise: based on the received state variable, displaying, via the user interface, a representation of the first playback device.

### Claim 3 (depends on 1)

The computer-readable medium of claim 1, wherein receiving the second update to the state variable comprises: receiving the second update to the state variable that identifies the portable playback device and the first playback device as members of a bonded zone.

### Claim 4 (depends on 3)

The computer-readable medium of claim 3, wherein receiving the second update to the state variable that identifies the portable playback device and the first playback device as members of a bonded zone comprises: receiving the second update to the state variable that indicates that the portable playback device is configured to play back at least one first channel of audio associated with the audio content and that the first playback device is configured to play back at least one second channel of audio associated with the audio content.

### Claim 5 (depends on 4)

The computer-readable medium of claim 4, wherein receiving a third update to the state variable that identities the portable playback device as not being a member of the playback device group and the first playback device as being a member of the playback device group comprises: receiving the third update to the state variable that indicates that the portable playback device is configured to play back a full range of audio associated with the audio content.

### Claim 6 (depends on 1)

The computer-readable medium of claim 1, wherein receiving the second update to the state variable comprises: receiving the second update to the state variable that identifies the portable playback device and the first playback device as stereo pairs.

### Claim 7 (depends on 1)

The computer-readable medium of claim 1, wherein the functions further comprise: receiving a fourth update to the state variable indicating that the portable playback device is not connected to the playback network; and based on the fourth update, ceasing display of the representation of the portable playback device.

### Claim 8 (depends on 1)

The computer-readable medium of claim 1, wherein the functions further comprise: connecting, via the wireless interface, to the playback network; and transmitting, to at least one of the first playback device or the portable playback device, a request for the state variable.

### Claim 9

A method performed by a processor of a computing device, the method comprising:
receiving, via a wireless network interface, a state variable that a) does not identify a portable playback device as a member of a playback network and b) identifies a first playback device as a member of the playback network;
receiving a first update to the state variable that identifies the portable playback device as a member of the playback network and a member of a second zone;
based on the first update, displaying, via a user interface, a representation of the first playback device and a representation of the portable playback device;
receiving, via the user interface, an input to group the first playback device and the portable playback device for synchronous playback;
in response to receiving the input, transmitting, to at least one of the first playback device or the portable playback device, an instruction to form a playback device group comprising the first playback device and the portable playback device;
receiving, from at least one of the first playback device or the portable playback device, a second update to the state variable that identifies the portable playback device and the first playback device as members of the playback device group;
based on the second update, displaying a representation of the playback device group;
causing playback of audio content by the playback device group, wherein causing the playback comprises causing the first playback device and the portable playback device to play back the audio content synchronously;
receiving, via the user interface, a second input to remove the portable playback device from the playback device group;
transmitting, to at least one of the first playback device or the portable playback device, an instruction to remove the portable playback device from the playback device group;
receiving a third update to the state variable that identifies the portable playback device as not being a member of the playback device group and the first playback device as being a member of the playback device group; and
based on the third update, displaying a representation of the portable playback device and a representation of the first playback device.

### Claim 10 (depends on 9)

The method of claim 9, wherein the further comprising:
based on the received state variable, displaying, via the user interface, a representation of the first playback device.

### Claim 11 (depends on 9)

The method of claim 9, wherein receiving the second update to the state variable comprises:
receiving the second update to the state variable that identifies the portable playback device and the first playback device as members of a bonded zone.

### Claim 12 (depends on 9)

The method of claim 9, wherein receiving the second update to the state variable that identifies the portable playback device and the first playback device as members of a bonded zone comprises:
receiving the second update to the state variable that indicates that the portable playback device is configured to play back at least one first channel of audio associated with the audio content and that the first playback device is configured to play back at least one second channel of audio associated with the audio content.

### Claim 13 (depends on 9)

The method of claim 9, wherein receiving the second update to the state variable comprises:
receiving the second update to the state variable that identifies the portable playback device and the first playback device as stereo pairs.

### Claim 14 (depends on 9)

The method of claim 9, further comprising:
connecting, via the wireless interface, to the playback network; and
transmitting, to at least one of the first playback device or the portable playback device, a request for the state variable.

### Claim 15

A computing device comprising:
one or more processors; and
a memory having stored instructions thereon executable by the one or more processors to perform functions comprising:
receiving, via a wireless network interface, a state variable that a) does not identify a portable playback device as a member of a playback network and b) identifies a first playback device as a member of the playback network;
receiving a first update to the state variable that identifies the portable playback device as a member of the playback network and a member of a second zone;
based on the first update, displaying, via a user interface, a representation of the first playback device and a representation of the portable playback device;
receiving, via the user interface, an input to group the first playback device and the portable playback device for synchronous playback;
in response to receiving the input, transmitting, to at least one of the first playback device or the portable playback device, an instruction to form a playback device group comprising the first playback device and the portable playback device;
receiving, from at least one of the first playback device or the portable playback device, a second update to the state variable that identifies the portable playback device and the first playback device as members of the playback device group;
based on the second update, displaying a representation of the playback device group;
causing playback of audio content by the playback device group, wherein causing the playback comprises causing the first playback device and the portable playback device to play back the audio content synchronously;
receiving, via the user interface, a second input to remove the portable playback device from the playback device group;
transmitting, to at least one of the first playback device or the portable playback device, an instruction to remove the portable playback device from the playback device group;
receiving a third update to the state variable that identifies the portable playback device as not being a member of the playback device group and the first playback device as being a member of the playback device group; and
based on the third update, displaying a representation of the portable playback device and a representation of the first playback device.

### Claim 16 (depends on 15)

The computing device of claim 15, wherein the functions further comprise:
based on the received state variable, displaying, via the user interface, a representation of the first playback device.

### Claim 17 (depends on 15)

The computing device of claim 15, wherein receiving the second update to the state variable comprises:
receiving the second update to the state variable that identifies the portable playback device and the first playback device as members of a bonded zone.

### Claim 18 (depends on 15)

The computing system of claim 15, wherein receiving the second update to the state variable that identifies the portable playback device and the first playback device as members of a bonded zone comprises:
receiving the second update to the state variable that indicates that the portable playback device is configured to play back at least one first channel of audio associated with the audio content and that the first playback device is configured to play back at least one second channel of audio associated with the audio content.

### Claim 19 (depends on 15)

The method of claim 15, wherein receiving the second update to the state variable comprises:
receiving the second update to the state variable that identifies the portable playback device and the first playback device as stereo pairs.

### Claim 20 (depends on 15)

The method of claim 15, further comprising:
connecting, via the wireless interface, to the playback network; and
transmitting, to at least one of the first playback device or the portable playback device, a request for the state variable.
