COORDINATED MEDIA PLAYBACK CONTROL

The system enables seamless multimedia playback across multiple devices by forming an ad-hoc network with a controller and playback devices, ensuring continuous synchronization and control transition, addressing the issue of playback interruptions.

DE112016004512B4Active Publication Date: 2025-09-04APPLE INC
View PDF 5 Cites 0 Cited by

Patent Information

Application Number
DE112016004512
Authority / Receiving Office
DE · DE
Patent Type
Patents
Current Assignee / Owner
Filing Date
2016-08-30
Publication Date
2025-09-04
Estimated Expiration
2036-08-30

AI Technical Summary

Technical Problem

Existing multimedia playback systems fail to seamlessly coordinate and control playback across multiple devices when a controlling device is disconnected or changes roles, leading to interruptions in media reproduction.

Method used

A system where devices can form an ad-hoc network, with one device acting as a controller and others as playback devices, maintaining a synchronized playlist and media control across the network, allowing seamless transition of control when devices join or leave the group.

Benefits of technology

Ensures continuous and synchronized multimedia playback across multiple devices, even when the controlling device changes roles or disconnects, by maintaining a synchronized playlist and enabling devices to operate independently with local information.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 00000000_0000_ABST
    Figure 00000000_0000_ABST
Patent Text Reader

Abstract

A method (500) for controlling playback of a media title, the method (500) comprising: on a first of a plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) forming a group (130, 132, 134): Maintaining a member list identifying the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650); Maintaining a playlist (116, 605) comprising at least one media title and a network resource location from which the media title can be retrieved; Controlling playback of the at least one media title on another of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) on the member list by transmitting the playlist (116, 605) to the member device; and upon detecting that a first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) no longer controls the group (130, 132, 134), transferring control of the playback to a second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), wherein transferring control comprises: after deciding to transfer control of playback to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), detecting a current status of the playlist (116, 605) at the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), and Transmitting information regarding the current status of the playlist (116, 605) from the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) to be used by the second for playback control.
Need to check novelty before this filing date? Find Prior Art

Description

BACKGROUND

[0001] The present disclosure relates to processing and sharing multimedia content. More specifically, it relates to methods and systems for playing and controlling multimedia data.

[0002] Music is played in multiple ways from multiple types of devices. For example, a user may plug or otherwise connect their smartphone to a speaker, television, or computer and use the device's speakers to broadcast their music into the room. However, if the user walks away or otherwise removes their device from the room, or if the device is used for a purpose other than music playback, such as receiving a phone call, playback is interrupted. Therefore, the inventors recognized a need in the art for controlling the playback of a shared multimedia stream by any of several participants in a group.

[0003] Prior art document US 2011 / 0225614 A1 describes methods, systems, and devices for collaborative content viewing by geographically separated participants. An invitation to view collaborative audio-video content is distributed to a plurality of individual clients of geographically separated content viewing participants. The invitation includes a description of the collaborative audio-video content, a time at which the collaborative audio-video content is available for distribution, means for accepting the invitation, and / or a comment.

[0004] The prior art document US 2007 / 0142944 A1 describes a method, a system and a device for synchronously playing an audio signal on a first mobile audio player and at least one second mobile audio player.

[0005] The prior art document US 2007 / 0038999 A1 describes a system for maintaining the synchronization of operations between a plurality of devices having independent clock arrangements.

[0006] The prior art document US 2014 / 0122589 A1 describes a system and method for transferring media playback control between electronic devices.

[0007] The prior art document US 2010 / 0095332 A1 describes a system and method for controlling media playback in a network using a mobile device. SUMMARY OF THE INVENTION

[0008] The present invention is defined in the independent claims. Advantageous further developments are specified in the dependent claims. BRIEF DESCRIPTION OF THE DRAWINGS Fig. 1 is a simplified functional block diagram of an example system according to an embodiment of the present disclosure. Fig. 2 illustrates an example system of connected devices according to an embodiment of the present disclosure. Fig. 3 illustrates an exemplary device according to an embodiment of the present disclosure. Fig. 4 illustrates an exemplary pair of devices in communication according to an embodiment of the present disclosure. Fig. 5 illustrates an exemplary method for playing multimedia content according to an embodiment of the present disclosure. Fig. 6 illustrates an example system with multiple playback devices according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0009] Methods and systems support coordinated control of playback of a media title or playlist between multiple devices. The multiple devices may use an ad hoc c network for sharing media control. Each device in the ad-ho c-network can take on a role. For example, in a first mode of operation, a device can play media. The device can be referred to as a "playback device" when the device is in the first mode of operation. In a second mode of operation, a device can control the playback of media. The device can be referred to as a "control device" when the device is in the second mode of operation. In one embodiment, each device of a group of devices can be a playback device. In an alternative embodiment, a group of devices can include a control device (also referred to as "a master device"). The control device can coordinate control of the playlist and enable playback of the media on a playback device.Then, when the control device leaves the group, a second device in the group seamlessly becomes the control device and controls playback and playlist coordination. The playback device can also be the control device. The playback device can be a network-capable speaker. When the playback device is separated from the control device, the playback device can maintain sufficient information to operate without a control device until a new control device is selected.

[0010] According to one embodiment, each device in a system having a plurality of connected devices includes a storage device for storing a playlist identifying at least one media track for playback on one of the plurality of connected devices, and a processor for managing the playlist and playback of tracks. At least one, but potentially a plurality of, devices also store a member list identifying a plurality of member devices that form a group. The processor of a first one of the plurality of devices is used to control playback of the at least one media track, and when the first one of the plurality of devices is removed from the group, a second one of the plurality of devices assumes control of playback.For example, the processor may implement an AV playlist and an AV playback device object for connecting to the user to present and modify a playlist, a FIG playlist controller object and a playback device plug-in object for identifying the location of a track on the playlist in memory and retrieving the stored track, and a playback device for playing the track.

[0011] According to one embodiment, information may be shared between devices. For example, the processor of one device may be configured to enable the acquisition of a current status of the playlist, credentials used to authorize playback of the track, or member list information identifying each member device in the group, and then transmit the information to another device. According to one embodiment, the processor of one of the devices is configured, upon detecting the addition of a new device to the group, to add the new device to the member list by updating the member list on all member devices and to enable the transmission of information related to the current status of the playlist from one of the plurality of member devices to the new device.

[0012] According to one embodiment, a playlist may be a fixed list of tracks that are edited and added to by one or more users, or may be an unlimited list that is dynamically generated, for example, when the playlist is generated by a radio application such as iTunes Radio. The playlist is then continuously updated as the radio application adds new songs to the playlist. Users may further interact with a dynamic playlist as described herein, for example, by pausing or skipping tracks or removing them from the playlist.

[0013] According to one embodiment, a track may be a single song, but additional types of tracks are also contemplated by this disclosure. For example, a track may be an advertisement, a commentary (e.g., from a DJ or other user), a video (such as a music video, a television show, or a movie), or another segment of audio and / or video content.

[0014] Fig. 1 is a simplified functional block diagram of an example system 100 according to one embodiment. As shown in Fig. 1, the system may include a media source 110 and one or more client devices 130, 132, and 134 interconnected via a communications network 140. The media source 110 may include a source server 112 that distributes the media resources to the client devices of the group 130, 132, 134. As part of the media source, a storage system 114 may store a copy of the playlist 116 for multiple media resources, such as an audio file or a movie file, and the available media resources 118.1-118.n. The playlist may include identifiers for one or more media resources. In one embodiment, the media resources stored in the storage system 114 may be encoded according to any known encoding protocol, for example, H.264 or HEVC, for transmission to the client devices 130, 132, 134.

[0015] According to one embodiment, a master playlist 116 may be stored at a media source 110 and may identify segments or titles of multimedia files stored by a server 112 of the media source 110. In one embodiment, the master playlist 116 may determine an order in which multimedia files are distributed to the one or more client devices 130, 132, and 134. The media source 110 may transmit the media resources 118.1-118.n to devices in the group and in the communications network 140 via a channel 142. In one embodiment (not shown), the media source 110 may be played back on one or more client devices, e.g., the one or more client devices 130, 132, and 134.

[0016] Client device(s) 130 represent media playback devices that download encoded multimedia data from media source 110, decode the encoded multimedia resources, and render them for playback. Playback of the received media resources may be coordinated as described herein.

[0017] Fig. 2 illustrates an example system 200 of connected devices according to one embodiment. The plurality of devices in the system may be connected via a communications network, such as via the Internet, Bluetooth, or other device interconnection methods, or as an ad hoc peer-to-peer network. For example, the devices may be compatible with one or more wireless communication protocols, such as Bluetooth or WLAN protocols (e.g., IEEE 802.11a, 802.11b, 802.11g, 802.11n, and 802.11ac). In some embodiments, the devices may also be adapted to support proprietary peer-to-peer protocols, such as Apple® Wireless Direct Link (AWDL). Other similar protocols may also be adopted to enable peer-to-peer communications.

[0018] In the Fig. In the exemplary communications network 200 illustrated in FIG. 2, a plurality of devices 212, 214, 216, and 218 are connected in an "ad hoc" or "peer-to-peer" arrangement, e.g., via Wi-Fi, and can exchange data in a fully or partially networked configuration. For example, device 212 can be connected to devices 214 and 216 through a series of peer-to-peer communication links (represented by the double-headed arrows).

[0019] Collectively, the plurality of devices 212, 214, 216, and 218 involved in communication may be referred to as a "group." For purposes of this discussion, a "group" of devices refers only to two or more devices actively involved in communication.

[0020] The plurality of devices 212, 214, 216, 218 connected via the network may include personal devices, such as a handheld smartphone or other network-enabled handheld device, a personal computer or laptop, or one or more speakers. For example, device 214 may be a Bluetooth-enabled speaker that provides a shared audio experience.

[0021] In one embodiment (not shown), multiple devices may be connected and in communication with a single device, but not with other devices in the group. For example, if device 212 acts as the master device (also referred to as "a control device"), devices 214 and 216 may be in communication with device 212, but not with each other.

[0022] According to one embodiment, one or more of the devices 212, 214, 216, or 218 may be in communication with a media source, as described with reference to Fig. 1. Any device connected to the media source can download the media resources required to perform playlist playback. Any devices not connected to the media source, for example, due to connection or data limitations, can receive the media resources from another source, such as local storage, or from one of the other group devices as needed.

[0023] Regardless of how the devices in the group are connected, the master device maintains a playlist for the group. The playlists used or displayed on the other devices can be coordinated with the playlist maintained by the master device. Synchronized playlists can be maintained as described in the concurrently filed U.S. patent application entitled "Earbud Sharing," the disclosure of which is incorporated herein in its entirety. As described therein, groups can modify the group playlist, and these modifications are distributed to the group in a real-time manner. Editing and / or control options for a group member can include pausing, rewinding, fast-forwarding, skipping, adding, deleting, etc.For a single device playing the synchronized playlist, modifications to the playlist are reflected in the playback of the multimedia content.

[0024] Fig. 3 illustrates an exemplary device 300 according to an embodiment of the present disclosure. As in Fig. 3, at least one device in the group includes an AV playback device 305 that provides an interface for controlling playback of items in the playlist, for example, by providing functionality to play, pause, or skip a track. The AV playback device 305 may be further controlled by an AV playlist controller 310 that manages and maintains the playlist, for example, by allowing users to insert or remove tracks or otherwise manipulate the playlist. The AV playlist controller 310 may further interact with a FIG playlist controller (FPC) object 315. An FPC object is used by a device to access tracks at a known location and retrieve the track for playback on the device.

[0025] According to one embodiment, a device can operate in different roles. For example, in one mode of operation, the device can have a controller role, while in another mode of operation, the device can have a player role. In one embodiment, a device can both control and play media. When a device plays a player role, it can be referred to as "a player" or "playback" for convenience. When a device plays a controller role, it can be referred to as a "controller" or "controller."

[0026] On the playback device, the FPC 315 interacts with a player plug-in (PP) 320 to identify the location of the next track. e.g., a Uniform Resource Locator (URL) or other indicator in the playlist points to the location, either local or remote, of the track. The PP 320 passes the URL information to the FPC 315, which in turn accesses the track at the identified URL and passes the URL-based track to the playback device 325. The playback device 325 then performs playback of the track.

[0027] Fig. Figure 4 illustrates an exemplary pair of devices in communication according to one embodiment. When two devices are operating together, as shown in Fig. 4, both a playlist managing device 405 and a playback device 420 include an FPC 425. On the control device 405, the FPC 415 communicates with the FPC 425 on the playback device 420 to identify the required tracks. The FPC 425 then interacts with the player plug-in (PP) 430 to identify the track's URL, and the PP 430 passes the URL information to the FPC 425, which in turn accesses the track at the identified URL and passes the URL-based track to the playback device 435. The playback device 435 on the playback device 420 then performs playback of the track.

[0028] The described embodiments may be adopted by portable, wireless, and / or stationary communication devices. These devices include mobile phones, tablets, laptops, desktops, internet-enabled televisions, wireless networking devices (e.g., a router), gaming terminals, speaker systems, and the like, which may include one or more accessory devices, such as headsets, speakers, keyboards, or other input or output accessories.

[0029] A plurality of devices can communicate with each other in a peer-to-peer arrangement using one or more communication protocols, such as Wi-Fi, and can communicate with wireless accessory devices using a short-range communication protocol. Each user in a group connected via a communication network can then interact with a playlist being played by one or more feedback devices. For example, a user can manage a playlist via a smartphone while music playback is transmitted from one or more speakers. When multiple speakers are used for playback, playback must be tightly synchronized. For example, an anchor time for starting or resuming playback of a track on each playback device can be distributed to all devices in the group, and playback is coordinated at each playback device according to an anchor time.

[0030] Methods for clock synchronization across multiple devices are described in U.S. patent application entitled "Clock Synchronization Techniques Including Modification of Sample Rate Conversion," filed concurrently herewith, the disclosure of which is incorporated herein in its entirety.

[0031] According to one embodiment, playback devices may be arranged together, such as a pair of speakers in one room, or may be arranged separately, such as a pair of speakers each located in a different room or location. According to one embodiment, playback may be divided into areas, for example, different locations or different rooms. Then, the main device may manage playback for each area. According to one embodiment, each area may play different content or otherwise have different playlists, and each area may be controlled separately. Additional topologies for areas and management of playback in different areas are of course usable with the devices described herein.Communication channels may be established between group devices by a scanning and discovery process that establishes a connection between the two devices, or by any other known means of establishing a connection.

[0032] Fig. 5 illustrates an exemplary method 500 for playing multimedia content according to an embodiment of the present disclosure. As in Fig. 5, a group may be previously formed to manage a playlist (block 502). When two or more devices are connected to manage playback of a playlist, a group is formed. In one embodiment, the group initiator may be configured as the master device. Instead, in one embodiment, the group device with the best features, for example, with the best network connection or the highest processing capacity, may be configured as the master device. Furthermore, at least one device in the group is identified as a playback device. The master device and the playback device may be the same device.

[0033] Once a group is formed, the playlist may be shared with each device in the group (block 504). As previously noted, the playlist may be maintained by a master device and may be managed by any member of the group. A member may have access to an interface on their device that provides access to the playlist and / or the currently playing track. The actions and commands the member performs on the device are transmitted to the group by synchronizing the playlist.

[0034] The playlist can then be played among the group devices. If a playback device is also a control device, e.g., if the playback device includes an AV playlist controller and an AV playback device (block 506), the local FPC operates with a local plug-in for each track on the playlist to identify the location of the track, e.g., the track's URL (block 508). The local plug-in then passes the track information to the FPC, which in turn accesses and retrieves the track at the identified URL and passes the URL-based track to the playback device (block 510). The local playback device then performs playback of the track (block 512).

[0035] If a playback device is a passive playback device, an FPC on a control device enables identification of the next track in the playlist (block 514) and forwards a track identifier to the playback device (block 516). The FPC located locally on the playback device then cooperates with a local plug-in to identify the location of the track (block 508). The local plug-in then forwards the track information to the local FPC, which in turn accesses and retrieves the track at the identified URL and forwards the URL-based track to the local playback device (block 510). The local playback device then performs playback of the track on the playback device (block 512).

[0036] According to one embodiment, the FPC located locally on the playback device can perform the required track identification when the playback device is not connected to a control device. Using a local version of the playlist, the playback device can retrieve and play the playlist tracks. This allows the master device to offload the majority of the playback work to the playback device. Then, if the master device leaves the group, enters a sleep mode, receives a phone call, or if another event occurs that causes the master device to relinquish control of the playlist, the playback device can resume transmitting the playlist track.However, in one embodiment, the playback device may not have the ability to manage and synchronize the playlist among the group devices, but instead retrieves tracks based on a local version of the playlist. This local version can then be overwritten by a master device or another group member.

[0037] Fig. 6 illustrates an example system 600 with multiple playback devices according to an embodiment of the present disclosure. As in Fig. As shown in Figure 6, multiple devices may be operated together, including a control device managing the playlist 605 and multiple playback devices 620, 650. On the control device 605, the FPC 615 communicates with the FPC 625 on a first of the playback devices 620 to identify the required tracks. In one embodiment, one of the playback devices may be a master playback device, and the other playback devices may be subordinate to or otherwise controlled by the master playback device.The FPC 625 on the main playback device 620 then interacts with the player plug-in (PP) 630 to identify the track's URL, and the PP 630 passes the URL information to the FPC 625, which in turn accesses the track at the identified URL and passes the URL-based track to the playback device 635 and to a parent speaker object 645 for the first device. The speaker device 645 can then forward the track to the child device 650. A parent speaker connection 655 on the child device 650 can coordinate playback on the child device 650 with playback on the main device 620 so that playback is appropriately synchronized.The playback device 635 on the playback device 620 and the playback device 660 on the subordinate device 650 then perform playback of the title.

[0038] When two or more devices are connected, they may form a group. A group may be created in a variety of ways. For example, information about other devices may be obtained through a scanning and discovery process such that a client device can identify and specify the groups or other devices to which the client device can connect or otherwise access. The client device may search for known contacts nearby, or a group member may send an invitation to one or more client devices inviting new members to the group.

[0039] In one embodiment, a group member can locate one or more passive devices, such as a speaker. For example, a user interface of the group member's device can list all devices discoverable by their device, such as speakers or other systems that can support playback of the playlist. Then, from this interface, the user can select one or more devices to add to the group. The added passive device can then become a playback device that plays the playlist tracks as described herein.

[0040] During group formation, a group list is created. The group list of all devices within the group may be maintained by at least one of the client devices. In one embodiment, each of the client devices within the group may also store and maintain a group list. The group list may include an identification and / or address of each device in the group. Then, each subsequent member joining the group or each subsequent device added to the group is added to the group list. For example, a group list may initially be created when two devices form a group, and entries may be added to or removed from the group list when a device joins or leaves the group.

[0041] In one embodiment, a group is formed when a user connects a master device controlling the playlist to a playback device, such as a speaker or other playback device. In response to the formation of the group, the playlist may then be shared with members of the group, including members who join the group after its formation. In one embodiment, the group playlist may include identifiers or pointers for one or more media resources, such as the media resources stored on a media resource, as in Fig. 1. According to one embodiment, each device in the group may store the group playlist locally. The master device may create, distribute, and maintain the group list and the group playlist.

[0042] According to one embodiment, a single device can control the playlist and media playback, and a group can be formed when a second device connects to the first device. The second device can then access and modify the playlist.

[0043] Once the group is created, playback of the playlist can be managed as described herein. To ensure that each playback device on jIf the master device can access every song in the playlist, the master device can locate a copy of each song in the playlist and distribute a copy (or a pointer to a copy and, if applicable, associated credentials) to each playback device in the group. The copy can be stored on networked or local media storage accessible to at least one device in the group, or it can be stored on one or more of the group devices. If stored on a group device, the master device can receive a copy of the song and any associated permissions necessary to play the song and distribute the song and associated permissions to the playback devices in the group. If a playback device has its own copy of the song, the local copy can be played instead of receiving a copy from the master device.If the title is stored on a network-accessible media storage device, a pointer for the stored title can be distributed to the playback device(s).

[0044] Multiple copies of a track may be available to the group. For example, a copy of the requested track may be available from one or more group devices, from storage such as the cloud, or from a device connected to one of the group devices but not itself a group device. For example, a smartphone group device may access tracks stored on a desktop computer. The best available copy of the track may be retrieved and distributed among the group devices for synchronized playback.

[0045] According to one embodiment, different group members can access different tracks. For example, one group may listen to a track while one member of the group listens to a different version of the same track. For example, the member may access a PG version of a track while the group accesses an R-rated version, or the member may access the track in a different language. Then, when the group listens to a song or watches a movie, different members of the group can access their preferred audio setting.

[0046] Group members may have access to a number of playlists and group features, or may be restricted in their use. For example, group members may be authorized to add or manage a playlist. According to one embodiment, some group members may have limited management capabilities; for example, a group member may be authorized to add a song to a playlist, but not to remove a song, or not to skip a song.

[0047] In one embodiment, when a leader leaves a group, another group member can be made the leader. For example, control of the playlist can be transferred to another group device. When control of the playlist is passed to a second group device, status information for the player plugin (PP) can be transferred or otherwise updated. Status information can include an identification for a radio or streaming service being played by the group, the current status of the playlist, a podcast feed, an episode guide, and the like.

[0048] As discussed herein, a group member may own or be licensed to digitally reproduce an audio file. A group member's digital rights may determine whether a song may be distributed to all group members. Whether a group member is authorized to play or share the audio file may be indicated by the contents of the device. In one embodiment, if an audio file is appropriately encrypted and includes an appropriate distribution key, the audio file may be shared with other group members, e.g., added to a group playlist and played on a playback device.

[0049] While the foregoing description includes various embodiments, it is to be understood that the words used are words of description and illustration, not words of limitation. Changes may be made within the scope of the appended claims, both as now amended and without departing from the scope and spirit of the disclosure in all aspects thereof. While the disclosure has been described with reference to particular means, materials, and embodiments, it is not intended that the disclosure be limited to the details disclosed; instead, the disclosure extends to all functionally equivalent structures, methods, and uses falling within the scope of the appended claims.

[0050] Some embodiments may be implemented using a non-transitory computer-readable storage medium or device that can store an instruction or set of instructions that, when executed by a processor, can cause the processor to perform a method according to the disclosed embodiments. The example methods and computer program instructions may be executed on a non-transitory machine-readable storage medium. Additionally, a server or database server may include machine-readable media configured to store machine-executable program instructions. The features of embodiments of the present invention may be implemented in hardware, software, firmware, or a combination thereof, and utilized in systems, subsystems, components, or subcomponents thereof.Machine-readable storage media can include any medium capable of storing information. Examples of machine-readable storage media include electronic circuitry, a semiconductor memory device, ROM, flash memory, erasable read-only memory (EROM), a floppy disk, a CD-ROM, an optical disk, a hard disk, a fiber-optic medium, or any electromagnetic or optical storage device.

[0051] The illustrations of the embodiments described herein are intended to provide a general understanding of the various embodiments. The illustrations are not intended to serve as a complete description of all elements and features of devices and systems that utilize the structures or methods described herein. Many other embodiments will become apparent to those skilled in the art after reviewing the disclosure. Other embodiments may be utilized and derived from the disclosure, so that structural and logical substitutions and changes may be made without departing from the scope of the disclosure. Furthermore, the illustrations are only illustrative and may not be drawn to scale. Certain proportions within the illustrations may be greatly exaggerated, while other proportions may be minimized.Accordingly, the disclosure and the figures are to be considered as illustrative and not restrictive.

[0052] For example, the operation of the disclosed embodiments has been described in the context of servers and client devices. These systems may be embodied in electronic devices or integrated circuits, such as application-specific integrated circuits, field-programmable gate arrays, and / or digital signal processors. Alternatively, they may be embodied in computer programs executing on personal computers, notebook computers, tablets, smartphones, or computer servers. These computer programs are typically stored in physical storage media, such as electronic-, magnetic-, and / or optical-based storage devices, where they can be read and executed by a processor under the control of an operating system.And of course, these components can be deployed as hybrid systems, distributing functionality as desired across dedicated hardware components and programmed general-purpose processors.

[0053] Furthermore, in the foregoing Detailed Description, various features may be grouped or described together for the purpose of streamlining the disclosure. This disclosure should not be construed as reflecting an intent that all of these features are required to provide an operative embodiment, nor that the claimed embodiments require more features than expressly recited in each claim. Instead, the subject matter may be directed to fewer than all of the features of any one of the disclosed embodiments, as reflected in the following claims. Therefore, the following claims are incorporated into the Detailed Description, with each claim standing on its own to specify separately claimed subject matter.

[0054] Furthermore, where certain claims recite methods, the sequence of reciting a particular method in a claim does not require that sequence to be essential to an operative claim. Instead, certain method elements or steps may be performed in various orders without departing from the scope or spirit of the invention.

[0055] Although the invention has been described in detail above with reference to several embodiments, variations within the scope and spirit of the invention will be apparent to one of ordinary skill in the art. Therefore, the invention is to be considered limited only by the scope of the appended claims.

Claims

[1] A method (500) for controlling playback of a media title, the method (500) comprising: on a first of a plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) forming a group (130, 132, 134): Maintaining a member list identifying the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650); Maintaining a playlist (116, 605) comprising at least one media title and a network resource location from which the media title can be retrieved; Controlling playback of the at least one media title on another of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) on the member list by transmitting the playlist (116, 605) to the member device; and upon detecting that a first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) no longer controls the group (130, 132, 134), transferring control of the playback to a second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), wherein transferring control comprises: after deciding to transfer control of playback to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), detecting a current status of the playlist (116, 605) at the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), and Transmitting information regarding the current status of the playlist (116, 605) from the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) to be used by the second for playback control. [2] The method (500) of claim 1, wherein transferring control of playback to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) comprises: Detecting a current status of the playlist (116, 605) on the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650); and Transmitting information relating to the current status of the playlist (116, 605) from the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [3] The method (500) of claim 1, wherein the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) is a network-enabled speaker. [4] The method (500) of claim 1, wherein transferring control of playback to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) comprises transferring, by the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), credentials authorizing playback of the at least one media title to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [5] The method (500) of claim 1, further comprising distributing, by the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), member list information to each other member device in the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [6] The method (500) of claim 1, further comprising distributing, by the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), playlist information to each other member device in the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [7] The method (500) of claim 1, further comprising: upon detecting an addition of a new device to the group (130, 132, 134), adding the new device to the member list by updating the member list on each of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650); and Transferring information relating to a current status of the playlist (116, 605) to the new device. [8] The method (500) of claim 1, wherein controlling playback of the at least one media title on another of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) includes: Identifying, by the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), a location of the at least one media title in the playlist (116, 605); and Transmitting a title identifier including the identified location information to the other of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) for retrieval and playback by the other of the plurality of media devices (212, 214, 216, 218, 300, 405, 420, 650). [9] A non-transitory computer-readable medium storing program instructions that, when executed, cause a processor to perform a method (500), the method (500) comprising: on a first of a plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) forming a group (130, 132, 134): Maintaining a member list identifying the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) and a network resource location from which the media title can be retrieved; Maintaining a playlist (116, 605) comprising at least one media title on the member list by transmitting the playlist (116, 605) to the member device; Controlling playback of the at least one media title on another of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650); and upon detecting that a first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) no longer controls the group (130, 132, 134), transferring control of the playback to a second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), wherein transferring control comprises: after deciding to transfer control of playback to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), detecting a current status of the playlist (116, 605) at the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), and Transmitting information regarding the current status of the playlist (116, 605) from the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) to be used by the second for playback control. [10] The non-transitory computer-readable medium of claim 9, the method (500) further comprising: Detecting a current status of the playlist (116, 605) on the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650); and Transmitting information relating to the current status of the playlist (116, 605) from the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [11] The non-transitory computer-readable medium of claim 9, wherein the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) is a network-enabled speaker. [12] The non-transitory computer-readable medium of claim 9, wherein the method (500) further comprises transmitting credentials authorizing playback of the at least one media title to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [13] The non-transitory computer-readable medium of claim 9, wherein the method (500) further comprises distributing, by the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), member list information to each other member device in the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [14] The non-transitory computer-readable medium of claim 9, wherein the method (500) further comprises distributing, by the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), playlist information to each other member device in the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [15] The non-transitory computer-readable medium of claim 9, the method (500) further comprising: upon detecting an addition of a new device to the group (130, 132, 134), adding the new device to the member list by updating the member list on each of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) that maintains the member list; and Transferring information relating to a current status of the playlist (116, 605) to the new device. [16] System comprising: a plurality of connected member devices (212, 214, 216, 218, 300, 405, 420, 650) forming a group (130, 132, 134), each member device (212, 214, 216, 218, 300, 405, 420, 650) including: a storage device for storing a playlist (116, 605) that identifies at least one media title and a network resource location from which the media title can be retrieved, and a processor; wherein at least one of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) also stores a member list identifying the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) in its storage device, and wherein the processor of a first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) is further configured to control playback of the at least one media title on another of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) by transmitting the playlist (116, 605) to the member device; and wherein upon detecting that a first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) no longer controls the group (130, 132, 134), a second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) is configured to assume control of the playback by: Detecting a current status of the playlist (116, 605) at the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650), and Transmitting information regarding the current status of the playlist (116, 605) from the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) to be used by the second for playback control. [17] The system of claim 16, wherein the processor of the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) is configured to acquire a current status of the playlist (116, 605) stored on the storage device of the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) and to transmit information related to the current status from the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [18] The system of claim 16, wherein the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) is a network-capable speaker. [19] The system of claim 16, wherein the processor of the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) is configured to transmit credentials authorizing playback of the at least one media title to the second of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [20] The system of claim 16, wherein the processor of the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) is configured to distribute member list information to each device (212, 214, 216, 218, 300, 405, 420, 650) in the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [21] The system of claim 16, wherein the processor of the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) is configured to distribute playlist information to each device (212, 214, 216, 218, 300, 405, 420, 650) in the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650). [22] The system of claim 16, wherein upon detecting the addition of a new device to the group (130, 132, 134), the processor of the first of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) is configured to add the new device to the member list by updating the member list on each of the at least one of the plurality of member devices (212, 214, 216, 218, 300, 405, 420, 650) storing the member list, and to transfer information related to the current status of the playlist (116, 605) from one of the plurality of devices (212, 214, 216, 218, 300, 405, 420, 650) to the new device. transmitted.

Citation Information

Patent Citations

  • System and method for synchronizing operations among a plurality of independently clocked digital data processing devices

    US20070038999A1

  • Audio player device for synchronous playback of audio signals with a compatible device

    US20070142944A1

  • System and method for controlling media rendering in a network using a mobile device

    US20100095332A1

  • Multi-point digital video recorder for internet-delivered television programming

    US20110225614A1

  • System and method of transferring control of media playback between electronic devices

    US20140122589A1