CN106664300A - 云队列访问控制 - Google Patents

云队列访问控制 Download PDF

Info

Publication number
CN106664300A
CN106664300A CN201580041499.3A CN201580041499A CN106664300A CN 106664300 A CN106664300 A CN 106664300A CN 201580041499 A CN201580041499 A CN 201580041499A CN 106664300 A CN106664300 A CN 106664300A
Authority
CN
China
Prior art keywords
queue
access
media
playback system
media playback
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201580041499.3A
Other languages
English (en)
Other versions
CN106664300B (zh
Inventor
史蒂文·贝克哈特
安德鲁·舒勒特
格雷戈里·保罗·拉姆斯佩格
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Sonos Inc
Original Assignee
Sonos Inc
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Sonos Inc filed Critical Sonos Inc
Priority to CN201810784436.2A priority Critical patent/CN109088917A/zh
Priority claimed from PCT/US2015/033003 external-priority patent/WO2015187463A1/en
Publication of CN106664300A publication Critical patent/CN106664300A/zh
Application granted granted Critical
Publication of CN106664300B publication Critical patent/CN106664300B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/40Information retrieval; Database structures therefor; File system structures therefor of multimedia data, e.g. slideshows comprising image and additional audio data
    • G06F16/44Browsing; Visualisation therefor
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/60Information retrieval; Database structures therefor; File system structures therefor of audio data
    • G06F16/63Querying
    • G06F16/638Presentation of query results
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/951Indexing; Web crawling techniques
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/44Program or device authentication
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/16Sound input; Sound output
    • G06F3/165Management of the audio stream, e.g. setting of volume, audio stream path
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04HBROADCAST COMMUNICATION
    • H04H60/00Arrangements for broadcast applications with a direct linking to broadcast information or broadcast space-time; Broadcast-related systems
    • H04H60/76Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet
    • H04H60/78Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by source locations or destination locations
    • H04H60/80Arrangements characterised by transmission systems other than for broadcast, e.g. the Internet characterised by source locations or destination locations characterised by transmission among terminal devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/22Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks comprising specially adapted graphical user interfaces [GUI]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/105Multiple levels of security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/61Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio
    • H04L65/612Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for unicast
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/75Media network packet handling
    • H04L65/762Media network packet handling at the source 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/12Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/62Establishing a time schedule for servicing the requests
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/254Management at additional data server, e.g. shopping server, rights management server
    • H04N21/2541Rights Management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/258Client or end-user data management, e.g. managing client capabilities, user preferences or demographics, processing of multiple end-users preferences to derive collaborative data
    • H04N21/25808Management of client data
    • H04N21/25816Management of client data involving client authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/20Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
    • H04N21/25Management operations performed by the server for facilitating the content distribution or administrating data related to end-users or client devices, e.g. end-user or client device authentication, learning user preferences for recommending movies
    • H04N21/262Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists
    • H04N21/26258Content or additional data distribution scheduling, e.g. sending additional data at off-peak times, updating software modules, calculating the carousel transmission frequency, delaying a video stream transmission, generating play-lists for generating a list of items to be played back in a given order, e.g. playlist, or scheduling item distribution according to such list
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/432Content retrieval operation from a local storage medium, e.g. hard-disk
    • H04N21/4325Content retrieval operation from a local storage medium, e.g. hard-disk by playing back content from the storage medium
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/43Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
    • H04N21/436Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
    • H04N21/43615Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/45Management operations performed by the client for facilitating the reception of or the interaction with the content or administrating data related to the end-user or to the client device itself, e.g. learning user preferences for recommending movies, resolving scheduling conflicts
    • H04N21/462Content or additional data management, e.g. creating a master electronic program guide from data received from the Internet and a Head-end, controlling the complexity of a video stream by scaling the resolution or bit-rate based on the client capabilities
    • H04N21/4627Rights management associated to the content
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/40Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
    • H04N21/47End-user applications
    • H04N21/482End-user interface for program selection
    • H04N21/4825End-user interface for program selection using a list of items to be played back in a given order, e.g. playlists
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/63Control signaling related to video distribution between client, server and network components; Network processes for video distribution between server and clients or between remote clients, e.g. transmitting basic layer and enhancement layers over different transmission paths, setting up a peer-to-peer communication via Internet between remote STB's; Communication protocols; Addressing
    • H04N21/637Control signals issued by the client directed to the server or network components
    • H04N21/6377Control signals issued by the client directed to the server or network components directed to server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/654Transmission by server directed to the client
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/60Network structure or processes for video distribution between server and client or between remote clients; Control signalling between clients, server and network components; Transmission of management data between server and client, e.g. sending from server to client commands for recording incoming content stream; Communication details between server and client 
    • H04N21/65Transmission of management data between client and server
    • H04N21/658Transmission by the client directed to the server
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/81Monomedia components thereof
    • H04N21/8106Monomedia components thereof involving special audio data, e.g. different tracks for different languages
    • H04N21/8113Monomedia components thereof involving special audio data, e.g. different tracks for different languages comprising music, e.g. song in MP3 format
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/835Generation of protective data, e.g. certificates
    • H04N21/8355Generation of protective data, e.g. certificates involving usage data, e.g. number of copies or viewings allowed
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04NPICTORIAL COMMUNICATION, e.g. TELEVISION
    • H04N21/00Selective content distribution, e.g. interactive television or video on demand [VOD]
    • H04N21/80Generation or processing of content or additional data by content creator independently of the distribution process; Content per se
    • H04N21/83Generation or processing of protective or descriptive data associated with content; Content structuring
    • H04N21/845Structuring of content, e.g. decomposing content into time segments
    • H04N21/8455Structuring of content, e.g. decomposing content into time segments involving pointers to the content, e.g. pointers to the I-frames of the video stream
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R27/00Public address systems
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04RLOUDSPEAKERS, MICROPHONES, GRAMOPHONE PICK-UPS OR LIKE ACOUSTIC ELECTROMECHANICAL TRANSDUCERS; DEAF-AID SETS; PUBLIC ADDRESS SYSTEMS
    • H04R2227/00Details of public address [PA] systems covered by H04R27/00 but not provided for in any of its subgroups
    • H04R2227/005Audio distribution systems for home, i.e. multi-room use

Abstract

一种示例实现可以包括媒体回放系统获得与远程服务器处的媒体项目的特定队列对应的授权令牌。媒体回放系统可以向远程服务器发送:(i)所获得的授权令牌,以及(ii)对特定队列中的一个或更多个媒体项目的访问的请求。媒体回放系统可以从远程服务器接收媒体回放系统能够访问该一个或更多个媒体项目的指示。

Description

云队列访问控制
对相关申请的交叉引用
本申请要求以下优先权:于2015年2月6日提交的美国专利申请第14/616,310号的优先权、于2015年2月6日提交的美国专利申请第14/616,319号的优先权以及于2015年2月6日提交的美国专利申请第14/616,325号的优先权。本申请还要求于2014年6月4日提交的标题为“Cloud Queue”的美国临时专利申请第62/007,906号的优先权,该美国临时专利申请的全部内容并入本文中。
技术领域
本公开内容涉及消费者产品,更具体地,涉及与媒体回放或者其某个方面有关的方法、系统、产品、特征、服务和其他要素。
背景技术
直到2003年,用于以较大声音设定来访问和聆听数字音频的选项受到限制,在2003年,SONOS公司提交了标题为“Method for Synchronizing Audio Playback betweenMultiple Networked Devices”的其第一专利申请之一,并且在2005年开始公开发售媒体回放系统。Sonos无线HiFi系统使人们能够经由一个或更多个联网回放设备从多个源体验音乐。通过安装在智能手机、平板或计算机上的软件控制应用,一个人可以在具有联网回放设备的任意房间中回放他或她想要的音乐。另外,使用控制器,例如,可以将不同的歌曲流送至具有回放设备的每个房间,可以将房间分组在一起以同步回放,或者可以在所有房间中同步地聆听同一歌曲。
考虑到对数字媒体日益增长的兴趣,仍然需要开发消费者可访问的技术以进一步提高聆听体验。
附图说明
参照以下说明书、所附权利要求书和附图,可以更好地理解现在公开的技术的特征、方面和优点,在附图中:
图1示出了可以实施特定实施方式的示例媒体回放系统配置;
图2示出了示例回放设备的功能性框图;
图3示出了示例控制设备的功能性框图;
图4示出了示例控制器接口;
图5示出了可以实施特定实施方式的计算系统;
图6示出了可以实施特定实施方式的示例云计算系统;
图7是示例回放队列;
图8是便于基于授权令牌来访问云队列的示例流程图;
图9是便于基于授权令牌来控制对云队列的访问的示例流程图;
图10是便于提供访问控制水平的示例流程图;
图11是可以实施特定实施方式的示例环境;
图12是便于根据一个或更多个不同的访问水平来访问云队列的示例流程图;
图13是便于基于访问状态来控制对队列的访问的示例流程图;
图14A是可以实施特定实施方式的示例环境的第一实例;
图14B是可以实施特定实施方式的示例环境的第二实例;
图15是便于基于访问状态来访问队列的示例流程图;以及
图16是显示云队列的访问状态的指示的示例流程图。
附图是出于示出示例实施方式的目的,但是应当理解,本发明不限于附图中所示的布置和手段。
具体实施方式
Ι.概述
本文所描述的实施方式可以特别包括控制对基于云的回放队列(“云队列”)的访问。在一些实施方式中,计算系统可以保持或访问媒体项目的云队列。这样的计算系统可以帮助提供云服务。云服务的一个方面可以包括向媒体回放系统(或多个媒体回放系统)提供对云队列的访问。对云队列的访问可以包括关于云队列的各种操作。例如,对队列的访问可以包括通过媒体回放系统(可能与其他媒体回放系统同步地)回放队列或者修改队列(可能通过添加或移除媒体项目或者通过修改媒体项目的次序)。当控制对云队列的访问时,可以允许某些实体访问云队列,而其他实体可能被禁止访问云队列。
一些示例技术可以包括基于正在访问云队列的实体的身份来控制对云队列的访问。例如,控制对给定云队列的访问可以包括认证特定媒体回放系统访问云队列(并且可能禁止其他媒体回放系统访问云队列)。可替选地,特定用户账户(账户)可以可能通过与该账户相关联的设备而被认证以访问云队列。例如,与媒体回放系统的给定设备相关联的账户可以通过该设备来访问云队列。作为另一示例,控制对给定云队列的访问可以包括认证媒体回放系统的特定设备(或设备组)访问云队列。
用于控制对云队列的访问的机制可以包括使用一个或更多个认证令牌。例如,认证令牌可以认证具有用于访问云队列的令牌的实体。云队列的主机(例如,远程计算系统)可以限制对具有有效认证令牌的实体的访问。在其他示例中,实体可以是媒体回放系统、设备(或设备组)或用户账户。在一些情况下,给定认证令牌可以认证具有通用访问权限的实体。在其他情况下,认证令牌可以认证具有会话特定权限的实体,所述会话特定权限在给定会话的持续时间内认证实体。
在一些示例中,云队列的主机可以将实体限制于两个或更多个不同水平或类型的访问之一。例如,主机可以向第一实体(例如,媒体回放系统)授予第一类型的访问并且向第二实体(例如,另一媒体回放系统)授予第二类型的访问。在一些实施方式中,第一类型的访问和第二类型的访问可以分别包括“读取”访问和“完全”访问。完全访问可以认证实体执行关于云队列的操作的完整集合。在其他示例中,这样的操作可以包括队列回放和队列操纵。相比之下,读取访问可以认证实体执行关于云队列的操作子集,如队列回放或队列的显示。
其他示例技术可以包括基于云队列自身的配置或设置来控制对云队列的访问。例如,云队列的主机可以向云队列分配两个或更多个不同状态之一。在一个示例中,最初可以向云队列分配第一状态。当云队列具有第一状态时,云队列可以具有完全可用性。在之后的某些点处,可以将云队列的访问状态修改成第二访问状态。当云队列具有第二状态时,云队列可以具有有限的可用性。有限的可用性可以包括实体不访问队列或者可能受限于对队列的操作的子集的访问。例如,在有限的访问下,可以允许对队列的回放,但是可以限制对队列的修改。在其他示例中,主机可以基于检测到触发器比如经过阈值持续时间或者可能达到指示云队列的回放的阈值量的度量而修改访问状态。
如上面所指出的,示例技术可以包括基于授权令牌控制对云队列的访问。一方面,提供了一种方法。该方法可以包括获得与远程服务器处的媒体项目的特定队列对应的授权令牌。该方法还可以包括发送:(i)所获得的授权令牌,以及(ii)对特定队列中的一个或更多个媒体项目的访问的请求。该方法还可以包括接收媒体回放系统能够访问一个或更多个媒体项目的指示。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括获得与远程服务器处的媒体项目的特定队列对应的授权令牌。所述功能还可以包括发送:(i)所获得的授权令牌,以及(ii)对特定队列中的一个或更多个媒体项目的访问的请求。所述功能还可以包括接收媒体回放系统能够访问一个或更多个媒体项目的指示。
再一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括获得与远程服务器处的媒体项目的特定队列对应的授权令牌。所述功能还可以包括发送:(i)所获得的授权令牌,以及(ii)对特定队列中的一个或更多个媒体项目的访问的请求。所述功能还可以包括接收媒体回放系统能够访问一个或更多个媒体项目的指示。
再一方面,提供了另一方法。该方法可以包括接收:(i)与特定媒体回放系统相关联的授权令牌,以及(ii)由媒体回放系统对媒体项目的队列的访问的请求。该方法还可以包括确定授权令牌给媒体回放系统认证的对队列的访问。该方法还可以包括向媒体回放系统提供授权令牌给媒体回放系统认证的对媒体项目的访问。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括接收:(i)与特定媒体回放系统相关联的授权令牌,以及(ii)由媒体回放系统对媒体项目的队列的访问的请求。所述功能还可以包括确定授权令牌给媒体回放系统认证的对队列的访问。所述功能还可以包括向媒体回放系统提供授权令牌给媒体回放系统认证的对媒体项目的访问。
再一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括接收:(i)与特定媒体回放系统相关联的授权令牌,以及(ii)由媒体回放系统对媒体项目的队列的访问的请求。所述功能还可以包括确定授权令牌给媒体回放系统认证的对队列的访问。所述功能还可以包括向媒体回放系统提供授权令牌给媒体回放系统认证的对媒体项目的访问。
还如上面所指示的,示例技术可以包括向实体授予相应类型的访问。在一方面,提供了一种方法。该方法可以包括接收:(i)来自第一媒体回放系统的对媒体项目的队列的访问的请求,以及(ii)来自第二媒体回放系统的对媒体项目的队列的访问的请求。该方法还可以包括:(i)给第一媒体回放系统授予第一类型的访问,以及(ii)给第二媒体回放系统授予第二类型的访问。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。该方法还可以包括提供:(i)第一媒体回放系统能够如第一类型的访问所授权的那样访问队列的指示,以及(ii)第二媒体回放系统能够如第二类型的访问所授权的那样访问队列的指示。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括接收:(i)来自多个第一媒体回放系统的对媒体项目的队列的相应访问的相应请求,以及(ii)来自第二媒体回放系统的对媒体项目的队列的访问的请求。所述功能还可以包括:(i)给第一媒体回放系统授予第一类型的访问,以及(ii)给第二媒体回放系统授予第二类型的访问。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。所述功能还可以包括:(i)向第一媒体回放系统提供如第一类型的访问权限所授权的对队列的访问,以及(ii)向第二媒体回放系统提供如第二类型的访问权限所授权的对队列的访问。
再一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括接收:(i)来自多个第一媒体回放系统的对媒体项目的队列的相应访问的相应请求,以及(ii)来自第二媒体回放系统的对媒体项目的队列的访问的请求。所述功能还可以包括:(i)给第一媒体回放系统授予第一类型的访问,以及(ii)给第二媒体回放系统授予第二类型的访问。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。所述功能还可以包括:(i)向第一媒体回放系统提供如第一类型的访问权限所授权的对队列的访问,以及(ii)向第二媒体回放系统提供如第二类型的访问权限所授权的对队列的访问。
再一方面,提供了另一方法。该方法可以包括发送对媒体项目的队列的访问的请求。该方法还可以包括接收媒体回放系统能够如第一类型的访问所授权的那样访问队列的指示。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。该方法还可以包括接收队列中的一个或更多个媒体项目的指示。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括发送对媒体项目的队列的访问的请求。所述功能还可以包括接收媒体回放系统能够如第一类型的访问所授权的那样访问队列的指示。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。所述功能还可以包括接收队列中的一个或更多个媒体项目的指示。
再一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括发送对媒体项目的队列的访问的请求。所述功能还可以包括接收媒体回放系统能够如第一类型的访问所授权的那样访问队列的指示。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。所述功能还可以包括接收队列中的一个或更多个媒体项目的指示。
如上面还指示的,示例技术可以包括基于云队列自身的配置或设置来控制对云队列的访问。在一方面,提供了一种方法。该方法可以包括接收建立媒体项目的队列的请求。该方法还可以包括向队列分配第一访问状态。第一访问状态可以指示至少一个媒体回放系统被授权执行第一队列操作集合。在向队列分配第一访问状态之后,该方法可以包括检测指示队列的访问状态的改变的触发器。基于所检测到的触发器,该方法可以包括将队列的访问状态从第一访问状态修改为第二访问状态。第二访问状态可以指示至少一个媒体回放系统被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。该方法还可以包括向媒体回放系统发送第二访问状态的指示。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括接收建立媒体项目的队列的请求。所述功能还可以包括向队列分配第一访问状态。第一访问状态可以指示至少一个媒体回放系统被授权执行第一队列操作集合。在向队列分配第一访问状态之后,所述功能可以包括检测指示队列的访问状态的改变的触发器。所述功能可以包括将队列的访问状态从第一访问状态修改为第二访问状态。第二访问状态可以指示至少一个媒体回放系统被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。所述功能还可以包括向媒体回放系统发送第二访问状态的指示。
在另一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括接收建立媒体项目的队列的请求。所述功能还可以包括向队列分配第一访问状态。第一访问状态可以指示至少一个媒体回放系统被授权执行第一队列操作集合。在向队列分配第一访问状态之后,所述功能可以包括检测指示队列的访问状态的改变的触发器。所述功能可以包括将队列的访问状态从第一访问状态修改为第二访问状态。第二访问状态可以指示至少一个媒体回放系统被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。所述功能还可以包括向媒体回放系统发送第二访问状态的指示。
在另一方面,提供了另一方法。该方法可以包括接收:(i)媒体项目的队列的指示,以及(ii)队列具有第一访问状态的指示。第一访问状态可以指示回放设备被授权执行第一队列操作集合。该方法还可以包括建立队列的本地实例。该方法还可以包括接收队列已被分配有第二访问状态的指示。第二访问状态可以指示回放设备被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。该方法可以包括将队列的本地实例限制于第二队列操作集合。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括接收:(i)媒体项目的队列的指示,以及(ii)队列具有第一访问状态的指示。第一访问状态可以指示回放设备被授权执行第一队列操作集合。所述功能还可以包括建立队列的本地实例。所述功能还可以包括接收队列已被分配有第二访问状态的指示。第二访问状态可以指示回放设备被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。所述功能可以包括将队列的本地实例限制于第二队列操作集合。
再一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括接收:(i)媒体项目的队列的指示,以及(ii)队列具有第一访问状态的指示。第一访问状态可以指示回放设备被授权执行第一队列操作集合。所述功能还可以包括建立队列的本地实例。所述功能还可以包括接收队列已被分配有第二访问状态的指示。第二访问状态可以指示回放设备被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。所述功能可以包括将队列的本地实例限制于第二队列操作集合。
在另一方面,提供了一种方法。该方法可以包括在图形接口上显示队列的指示。该方法还可以包括接收队列的访问状态的指示。该方法还可以包括显示队列的访问状态的指示。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括在图形接口上显示队列的指示。所述功能还可以包括接收队列的访问状态的指示。所述功能还可以包括显示队列的访问状态的指示。
又一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括在图形接口上显示队列的指示。所述功能还可以包括接收队列的访问状态的指示。所述功能还可以包括显示队列的访问状态的指示。
本领域的普通技术人员之一应当理解,本公开内容包括许多其他实施方式。虽然本文所描述的一些示例可以涉及由给定角色如“用户”和/或其他实体执行的功能,但是应当理解的是,该描述仅是出于说明的目的。除非通过权利要求自身的语言所明确要求,否则权利要求不应当被解释为需要任何这样的示例角色的动作。
II.示例工作环境
图1示出了可以实施或实现本文中公开的一种或更多种实施方式的媒体回放系统100的示例配置。所示的媒体回放系统100与具有若干房间和空间例如主卧、办公室、餐厅和客厅的示例家庭环境相关联。如图1的示例中所示,媒体回放系统100包括:回放设备102至124、控制设备126和128以及有线或无线网络路由器130。
在以下部分可以发现与示例媒体回放系统100的不同部件以及所述不同部件可以如何交互来为用户提供媒体体验有关的另外的论述。虽然本文中的论述可以一般包括示例媒体回放系统100,但是本文中描述的技术不限于尤其图1所示的家庭环境中的应用。例如,本文中描述的技术可以在以下可以期望多区域音频的环境中有用,如例如商业环境像餐馆、商场或机场,交通工具像运动型多功能车(SUV)、公共汽车或小汽车、舰或船、飞机等。
a.示例回放设备
图2示出了示例回放设备200的功能性框图,该示例性回放设备200可以被配置成图1的媒体回放系统100的回放设备102至124中的一个或更多个。回放设备200可以包括处理器202、软件组件204、存储器206、音频处理部件208、音频放大器210、扬声器212以及包括无线接口216和有线接口218的网络接口214。在一种情况下,回放设备200可以不包括扬声器212,而可以包括用于连接回放设备200与外部扬声器的扬声器接口。在另一种情况下,回放设备200可以既不包括扬声器212也不包括音频放大器210,而可以只包括用于连接回放设备200与外部音频放大器或影音接收器的音频接口。
在一个示例中,处理器202可以是被配置成根据存储在存储器206中的指令来处理输入数据的时钟驱动计算部件。存储器206可以是被配置成存储能够由处理器202执行的指令的有形计算机可读介质。例如,存储器206可以是能够加载能够由处理器202执行以实现某些功能的软件组件204中的一个或更多个的数据存储装置。在一个示例中,功能可以包括回放设备200从音频源或另外的回放设备检索音频数据。在另一示例中,功能可以包括回放设备200向网络上的另一设备或回放设备发送音频数据。在又一示例中,功能可以包括回放设备200与一个或更多个回放设备的配对以创建多声道音频环境。
某些功能可以包括回放设备200与一个或更多个其他回放设备的音频内容的同步回放。在同步回放期间,听者优选地将不能感知到由回放设备200对音频内容的回放与由一个或更多个其他回放设备对音频内容的回放之间的时间延迟差。标题为“System andmethod for synchronizing operations among a plurality of independentlyclocked digital data processing devices”的在此通过引用被合并入本文的美国专利第8,234,395号更详细地提供了用于回放设备之间的音频回放同步的一些示例。
存储器206还可以被配置成存储与回放设备200相关联的数据如回放设备200是其中一部分的一个或更多个区域和/或区域组、能够由回放设备200访问的音频源或者回放设备200(或一些其他回放设备)可以与其相关联的回放队列。可以将该数据存储为周期性被更新并且用于描述回放设备200的状态的一个或更多个状态变量。存储器206还可以包括与媒体系统中的其他设备的状态相关联并且有时在设备之间共享使得所述设备中的一个或更多个具有与系统相关联的最新数据的数据。其他实施方式也是可以的。
音频处理部件208可以包括一个或更多个数模转换器(DAC)、音频预处理部件、音频增强部件或数字信号处理器(DSP)等。在一种实施方式中,音频处理部件208中的一个或更多个可以是处理器202的子部件。在一个示例中,音频处理部件208可以处理和/或有意地改变音频内容以产生音频信号。然后,可以将产生的音频信号提供至用于放大的音频放大器210并且通过扬声器212回放。特别地,音频放大器210可以包括被配置成将音频信号放大至用于驱动扬声器212中的一个或更多个的水平的设备。扬声器212可以包括单独的变换器(例如,“驱动器”)或者包括具有一个或更多个驱动器的外壳的完整的扬声器系统。扬声器212的特定驱动器可以包括例如超低音扬声器(例如,用于低频)、中档驱动器(例如,用于中频)和/或高频扬声器(例如,用于高频)。在一些情况下,一个或更多个扬声器212中的每个变换器可以由音频放大器210的单独的对应音频放大器来驱动。除了产生用于由回放设备200回放的模拟信号以外,音频处理部件208可以被配置成对要被发送至一个或更多个其他回放设备以供回放的音频内容进行处理。
可以如经由音频线路输入连接(例如,自动检测3.5mm音频线路输入连接)或网络接口214从外部源接收要由回放设备200处理和/或回放的音频内容。
网络接口214可以被配置成便于回放设备200与数据网络上的一个或更多个其他设备之间的数据流动。同样地,回放设备200可以被配置成通过数据网络从与该回放设备200、局域网内的网络设备进行通信的一个或更多个其他回放设备接收音频内容或者通过广域网如因特网接收音频内容源。在一个示例中,可以以包括基于互联网协议(IP)的源地址和基于IP的目标地址的数字分组数据的形式传输由回放设备200发送和接收的音频内容和其他信号。在这种情况下,网络接口214可以被配置成对数字分组数据进行解析,使得回放设备200正确地接收和处理去往该回放设备200的数据。
如所示的,网络接口214可以包括无线接口216和有线接口218。无线接口216可以为回放设备200提供网络接口功能以根据通信协议(例如任意无线标准,包括IEEE802.11a、802.11b、802.11g、802.11n、802.11ac、802.15、4G移动通信标准等)与其他设备(例如,数据网络内的与回放设备200相关联的其他回放设备、扬声器、接收器、网络设备、控制设备)进行无线通信。有线接口218可以为回放设备200提供网络接口功能以根据通信协议(例如,IEEE 802.3)通过有线连接与其他设备进行通信。虽然图2所示的网络接口214包括无线接口216和有线接口218两者,但是在一些实施方式中网络接口214可以仅包括无线接口或仅包括有线接口。
在一个示例中,可以将回放设备200与一个其他回放设备进行配对以回放音频内容的两个分开的音频分量。例如,回放设备200可以被配置成回放左声道音频分量,而其他回放设备可以被配置成回放右声道音频分量,从而产生或增强音频内容的立体声效果。配对的回放设备(也被称为“绑定的回放设备”)还可以与其他回放设备同步地回放音频内容。
在另一示例中,可以将回放设备200与一个或更多个其他回放设备在声音上联合以形成单个联合的回放设备。因为联合的回放设备可以具有可以通过其呈现音频内容的另外的扬声器驱动器,所以联合的回放设备可以被配置成与非联合的回放设备或配对的回放设备不同地处理和再现声音。例如,如果回放设备200是被设计成呈现低频段音频内容的回放设备(即,超低音扬声器),则回放设备200可以与被设计成呈现全频段音频内容的回放设备联合。在这样的情况下,当与低频回放设备200联合时,全频段回放设备可以被配置成呈现音频内容的仅中频分量和高频分量,而低频段回放设备200呈现音频内容的低频分量。联合的回放设备还可以与单个回放设备或另一联合的回放设备配对。
举例来说,SONOS公司目前公开发售(或已经公开发售)特定回放设备,所述特定回放设备包括“PLAY:1”、“PLAY:3”、“PLAY:5”、“PLAYBAR”、“CONNECT:AMP”、“CONNECT”和“SUB”。另外地或可替选地,任意其他过去的、现在的和/或将来的回放设备可以用于实现本文中公开的示例实施方式的回放设备。另外,应当理解,回放设备不限于图2所示的示例或SONOS产品供应。例如,回放设备可以包括有线或无线耳机。在另一示例中,回放设备可以包括用于个人移动媒体回放设备的插接站或者与所述插接站交互。在又一示例中,回放设备可能是构成另一设备或部件如电视、照明器材或者供室内或室外使用的一些其他设备所必需的。
b.示例回放区域配置
再参照图1的媒体回放系统100,环境可以具有一个或更多个回放区域,每个回放区域具有一个或更多个回放设备。可以用一个或更多个回放区域来创建媒体回放系统100,此后,一个或更多个区域可以被添加或移除以达到图1所示的示例配置。可以根据不同的房间或空间如办公室、浴室、主卧、卧室、厨房、餐厅、客厅和/或阳台给每个区域命名。在一种情况下,单独的回放区域可以包括多个房间或空间。在另一种情况下,单独的房间或空间可以包括多个回放区域。
如图1所示,阳台、餐厅、厨房、浴室、办公室和卧室区域每一个具有一个回放设备,而客厅和主卧区域每一个具有多个回放设备。在客厅区域中,回放设备104、106、108和110可以被配置成:作为单独的回放设备、作为一个或更多个绑定的回放设备、作为一个或更多个联合的回放设备或者上述任意组合来同步地回放音频内容。类似地,在主卧的情况下,回放设备122和124可以被配置成:作为单独的回放设备、作为绑定的回放设备或者作为联合的回放设备来同步地回放音频内容。
在一个示例中,图1的环境中的一个或更多个回放区域中的每个回放区域可以正在回放不同的音频内容。例如,用户可以正在阳台区域烧烤并且聆听由回放设备102正在回放的嘻哈音乐,同时另一用户可以正在厨房区域准备食物并且聆听由回放设备114正在回放的古典音乐。在另一示例中,回放区域可以与另一回放区域同步地回放同一音频内容。例如,用户可以在以下办公室区域中,在该办公室区域中回放设备118正在回放与阳台区域中的回放设备102正在回放的摇滚音乐相同的摇滚音乐。在这样的情况下,回放设备102和118可以同步地回放摇滚音乐,使得当用户在不同回放区域之间移动时可以无缝地(或至少基本上无缝地)欣赏正被响亮回放的音频内容。如在先前引用的美国专利第8,234,395号中描述的,可以以与回放设备之间的同步方式类似的方式实现回放区域之间的同步。
如上面提出的,可以动态地修改媒体回放系统100的区域配置,并且在一些实施方式中,媒体回放系统100支持许多配置。例如,如果用户在物理上将一个或更多个回放设备移至一个区域或者从该区域移出一个或更多个回放设备,则媒体回放系统100可以被重新配置成适应一个或更多个变化。例如,如果用户在物理上将回放设备102从阳台区域移到办公室区域,则办公室区域现在可以包括回放设备118和回放设备102两者。如果需要,则可以经由控制设备如控制设备126和128将回放设备102与办公区域配对或分组在一起和/或对该回放设备102重命名。另一方面,如果一个或更多个回放设备被移至家庭环境中已经不是回放区域的特定区域,则可以针对该特定区域创建新的回放区域。
另外,可以将媒体回放系统100的不同回放区域动态地组合成区域组或者将其划分成单独的回放区域。例如,可以将餐厅区域和厨房区域114组合成用于宴会的区域组,使得回放设备112和114可以同步地呈现音频内容。另一方面,如果一个用户想在客厅空间聆听音乐而另一用户想看电视,则可以将客厅区域划分成包括回放设备104的电视区域以及包括回放设备106、108和110的聆听区域。
c.示例控制设备
图3示出了示例控制设备300的功能性框图,该示例控制设备300可以被配置成媒体回放系统100的控制设备126和128中的一个或两个。还可以将控制设备300称为控制器300。如所示的,控制设备300可以包括处理器302、存储器304、网络接口306和用户接口308。在一个示例中,控制设备300可以是用于媒体回放系统100的专用控制器。在另一示例中,控制设备300可以是能够安装媒体回放系统控制器应用软件的网络设备,例如,iPhoneTM、iPadTM或者任意其他智能电话、平板或网络设备(例如,联网的计算机如PC或MacTM)。
处理器302可以被配置成执行与便于用户访问、控制和配置媒体回放系统100有关的功能。存储器304可以被配置成存储能够由处理器302运行以执行那些功能的指令。存储器304还可以被配置成存储媒体回放系统控制器应用软件以及与媒体回放系统100和用户相关联的其他数据。
在一个示例中,网络接口306可以基于行业标准(例如红外标准,无线标准,包括IEEE 802.3的有线标准,包括IEEE 802.11a、802.11b、802.11g、802.11n、802.11ac、802.15、4G移动通信标准的无线标准等)。网络接口306可以为控制设备300提供与媒体回放系统100中的其他设备进行通信的方法。在一个示例中,可以经由网络接口306在控制设备300与其他设备之间传送数据和信息(例如,如状态变量)。例如,控制设备300可以经由网络接口306从回放设备或另一网络设备接收媒体回放系统100中的回放区域和区域组配置或者控制设备300可以经由网络接口306将媒体回放系统100中的回放区域和区域组配置发送至另一回放设备或网络设备。在一些情况下,其他网络设备可以是另一控制设备。
还可以经由网络接口306将回放设备控制命令如音量控制和音频回放控制从控制设备300传送至回放设备。如上面提出的,媒体回放系统100的配置的变化还可以通过用户使用控制设备300来执行。配置变化可以包括:将一个或更多个回放设备添加至区域或从区域中移除一个或更多个回放设备;将一个或更多个区域添加至区域组或从区域组中移除一个或更多个区域;形成绑定的或联合的回放器;从绑定的或联合的回放器分离一个或更多个回放设备等。因此,不论控制设备300是专用控制器还是安装媒体回放系统控制器应用软件的网络设备,有时都可以将控制设备300称为控制器。
控制设备300的用户接口308可以被配置成通过提供控制器接口如图4所示的控制器接口400来便于用户对媒体回放系统100的访问和控制。控制器接口400包括回放控制区410、回放区域区420、回放状态区430、回放队列区440和音频内容源区450。所示的用户接口400仅是可以在网络设备如图3的控制设备300(和/或图1的控制设备126和128)上布置并且由用户访问以控制媒体回放系统如媒体回放系统100的用户接口的一个示例。可替选地,可以在一个或更多个网络设备上实现不同格式、不同类型和不同交互顺序的其他用户接口以提供对媒体回放系统的可比较的控制访问。
回放控制区410可以包括用于使所选择的回放区域或区域组中的回放设备回放或暂停、快进、快退、跳到下一首、跳到上一首、进入/退出随机模式、进入/退出重复模式、进入/退出交叉衰落模式的可选择(例如,通过触摸或通过使用光标)图标。在其他可能性中,回放控制区410还可以包括用于修改均衡设定和回放音量的可选择图标。
回放区域区420可以包括媒体回放系统100中的回放区域的表示。在其他可能性中,在一些实施方式中,回放区域的图形表示可以可选择地带出管理或配置媒体回放系统中的回放区域的另外的可选择图标,例如,绑定区域的创建、区域组的创建、区域组的分离以及区域组的重命名。
例如,如所示的,可以在回放区域的图形表示中的每一个中布置“分组”图标。在特定区域的图形表示中提供的“分组”图标可以可选择地带出对媒体回放系统中的要与该特定区域分组在一起的一个或更多个其他区域进行选择的选项。一旦被分组,已与特定区域分组在一起的区域中的回放设备将被配置成与特定区域中的一个或更多个回放设备同步地回放音频内容。类似地,可以在区域组的图形表示中提供“分组”图标。在此情况下,“分组”图标可以可选择地带出取消选择区域组中的要从该区域组中移除的一个或更多个区域的选项。用于经由用户接口如用户接口400对区域分组和取消分组的其他交互和实现也是可以的。随着回放区域或区域组配置被修改,可以动态地更新回放区域区420中的回放区域的表示。
回放状态区430可以包括所选择的回放区域或区域组中的目前正在被回放、先前被回放或被调度接下来要回放的音频内容的图形表示。在用户接口上如在回放区域区420和/或回放状态区430中可以视觉上区分所选择的回放区域或区域组。图形表示可以包括音轨名、艺术家名、专辑名、专辑年份、音轨长度以及对用户了解何时经由用户接口400来控制媒体回放系统而言有用的其他相关信息。
回放队列区440可以包括与所选择的回放区域或区域组相关联的回放队列中的音频内容的图形表示。在一些实施方式中,每个回放区域或区域组可以与包括和零个或更多个供回放区域或区域组回放的音频项目对应的信息的回放队列相关联。例如,回放队列中的每个音频项目可以包括回放区域或区域组中的回放设备可以用来从本地音频内容源或联网音频内容源查找和/或检索可能用于由回放设备回放的音频项目的统一资源标识符(URI)、统一资源定位符(URL)或一些其他标识符。
在一个示例中,可以将回放列表添加至回放队列,在此情况下,可以将与回放列表中的每个音频项目对应的信息添加至回放队列。在另一示例中,可以将回放队列中的音频项目存储为回放列表。在又一示例中,当回放区域或区域组正连续回放流式音频内容如可以连续回放直到以其他方式被停止的因特网广播而不是回放具有回放持续时间的离散音频项目时,回放队列可以是空的或者被填充但“不在使用中”。在可替选实施方式中,当回放区域或区域组正在回放因特网广播和/或其他流式音频内容项目时,回放队列可以包括那些项目并且“在使用中”。其他示例也是可以的。
当回放区域或区域组被“分组”或被“取消分组”时,可以清除或重新关联与所影响的回放区域或区域组相关联的回放队列。例如,如果将包括第一回放队列的第一回放区域与包括第二回放队列的第二回放区域分组在一起,则所创建的区域组可以具有关联的回放队列,所述关联的回放队列最初为空,所述关联的回放队列包括来自第一回放队列的音频项目(例如,如果第二回放区域被添加至第一回放区域),所述关联的回放队列包括来自第二回放队列的音频项目(例如,如果第一回放区域被添加至第二回放区域),或者所述关联的回放队列包括来自第一回放队列和第二回放队列两者的音频项目的组合。随后,如果所创建的区域组被取消分组,则所得到的第一回放区域可以与先前的第一回放队列重新关联,或者可以与以下新回放队列相关联,该新回放队列是空的或者包括来自与所创建的区域组被取消分组之前的该所创建的区域组相关联的回放队列的音频项目。类似地,所得到的第二回放区域可以与先前的第二回放队列重新关联,或者与以下新回放队列相关联,该新回放队列是空的或者包括来自与所创建的区域组被取消分组之前的该所创建的区域组相关联的回放队列的音频项目。其他示例也是可以的。
再参照图4的用户接口400,回放队列区440中的音频内容的图形表示可以包括音轨名、艺术家名、音轨长度以及与回放队列中的音频内容相关联的其他相关信息。在一个示例中,音频内容的图形表示可以可选择地带出用于管理和/或操纵回放队列和/或回放队列中表示的音频内容的另外的可选择图标。例如,在其他可能性中,可以从回放队列中移除所表示的音频内容,可以将所表示的音频内容移至回放队列中的不同位置,或者可以选择立即回放所表示的音频内容,或者可以选择在任何当前正在回放的音频内容之后回放所表示的音频内容。与回放区域或区域组相关联的回放队列可以被存储在回放区域或区域组中的一个或更多个回放设备上的存储器中,或者可以被存储在不在回放区域或区域组中的回放设备上的存储器中,和/或可以被存储在一些其他指定设备上的存储器中。这样的回放队列的回放可以包括可能按照顺序次序或随机次序回放队列中的媒体项目的一个或更多个回放设备。
音频内容源区450可以包括可选择的音频内容源的图形表示,可以从所述可选择的音频内容源检索音频内容并且由所选择的回放区域或区域组回放检索到的音频内容。在以下部分中可发现关于音频内容源的论述。
d.示例音频内容源
如前所述,区域或区域组中的一个或更多个回放设备可以被配置成从各种可用音频内容源检索供回放的音频内容(例如,根据音频内容的相应的URI或URL)。在一个示例中,回放设备可以从相应的音频内容源(例如,线路输入连接)直接检索音频内容。在另一示例中,可以通过网络经由一个或更多个其他回放设备或网络设备将音频内容提供至回放设备。
在其他可能性中,示例音频内容源可以包括:媒体回放系统如图1的媒体回放系统100中的一个或更多个回放设备的存储器、一个或更多个网络设备(例如,如控制设备、能够上网的个人计算机或网络附接存储装置(NAS))上的本地音乐库、经由互联网(例如,云)提供音频内容的流式音频服务、或者经由回放设备或网络设备上的线路输入连接与媒体回放系统连接的音频源。
在一些实施方式中,可以定期地向媒体回放系统如图1的媒体回放系统100添加音频内容源或从媒体回放系统如图1的媒体回放系统100中移除音频内容源。在一个示例中,无论何时添加、移除或更新一个或更多个音频内容源,都可以执行为音频项目编索引。为音频项目编索引可以包括:在能够由媒体回放系统中的回放设备访问的网络上被共享的所有文件夹/目录中扫描可标识的音频项目;以及生成或更新包括元数据(除了别的以外,例如,标题、艺术家、专辑、音轨长度)和其他关联信息如找到的每个可标识的音频项目的URI或URL的音频内容数据库。用于管理和保持音频内容源的其他示例也是可以的。
上面与回放设备、控制器设备、回放区域配置和媒体内容源有关的论述仅提供了可以在其中实现下述功能和方法的工作环境的一些示例。本文中没有明确描述的媒体回放系统、回放设备和网络设备的其他工作环境和配置也可应用于并适合于所述功能和方法的实现。
e.示例云计算功能
本文对“云计算”进行各种引用。术语“云计算”用于指使用通过网络如因特网的分布式计算所递送的服务。经由云所递送的服务的非穷尽列表包括电子邮件(例如,)、社交网络(例如,)、文件托管(例如,)以及流式音频(例如,)。当然也提供其他云服务。
云服务提供商可以提供用于通过网络访问他们的服务的一个或更多个接口。例如,可以通过使用网络浏览器访问网站来访问一些云服务。通过在计算设备上执行特定于云服务的特定应用来访问其他云服务。一些云服务可以提供用于便于通过第三方网站或应用来访问服务的应用编程接口(API)。云服务可以提供用于访问它们的服务的多种技术。在许多情况下,能够访问给定云服务的用户可以从连接至网络的任何计算设备来访问服务,条件是所述计算设备具有针对云服务的支持接口。
在一个实例中,访问云服务可以包括利用第一计算设备(即,客户端)来访问第二计算设备或系统(即,服务器)。在其他可能的设备中,示例客户端设备可以包括图2的回放设备200或图3的控制设备300。一个或更多个程序或应用(即,指令)可以在服务器上运行以执行云服务所支持的计算操作。客户端可以向服务器发送各种命令以指示服务器执行云服务所支持的计算任务。
图5示出了可以向一个或更多个用户提供云服务的示例计算系统500。示例计算系统500包括至少一个处理器502、存储器504以及网络接口506。存储器504可以包括能够由处理器502运行以执行云服务所支持的计算任务的指令。计算设备500可以经由网络接口506与其他计算设备进行通信。
总之,云服务的提供可以包括计算系统500的多个实例。计算系统500的每个实例可以向一个或更多个用户提供云服务。云服务提供商可以基于用户需求来安排在提供云服务时涉及的计算系统500的实例的数目。
示例中,“用户账户”的基于数据的表示可以便于对云服务的访问。单独的用户或一组用户可以创建基于数据的“用户账户”,所述“用户账户”也可以被简单地称为“账户”。特定用户或用户组的账户可以包括与特定用户或用户组有关的数据,所述数据被用户或用户组选择以用于与账户相关联。因此,特定用户的账户在某种意义上可以是该特定用户的基于数据的表示。
用户可以创建用于例如各种应用、网站和/或在线服务的账户。在其他可能性中,账户的示例包括电子邮件账户、社交网络账户、在线金融账户、服务提供商账户。另外,在一些情况下,用户可以具有提供用于多种服务、网站、应用等的用户的基于数据的表示的单个账户。例如,用户可以选择将他们的电子邮件账户或社交网络账户用作用于可以由不同实体提供的各种在线服务和应用的通用登录。这样的基于数据的表示可以用于在提供服务时涉及的计算系统的实例中的任何实例以使得实例中的任何实例可以在向服务认证特定账户(“登录”)时提供对服务的类似访问。
账户还可以与设备和系统一起使用。例如,诸如移动电话、平板计算机或膝上型计算机的设备的用户可以将账户与计算设备自身相关联,使得当在计算设备上认证账户时,将向计算设备上提供的应用来认证账户。用户还可以将账户与媒体回放系统相关联,使得当在媒体回放系统上认证账户时,媒体回放系统根据账户的偏好来操作。此外,在一些情况下,用于各种服务的用户的账户可以彼此关联。例如,用于媒体回放系统的用户账户可以与用于一个或更多个流式音乐服务的用户账户相关联,使得当用于媒体回放系统的用户账户被登录至媒体回放系统时,媒体回放系统能够访问与用于媒体回放系统的用户账户相关联的一个或更多个流式音乐服务。
图6示出了示例云600。示例云600可以包括经由一个或更多个网络互连的任何数目的计算设备。例如,云600可以包括计算系统500的一个或更多个实例。如图6所示,媒体回放系统610、620和630与云600相连。媒体回放系统610包括回放设备612和614以及控制设备616,所述的每个设备均具有与云600的相应连接。同样地,媒体回放系统620包括回放设备622和624以及控制设备626,所述的每个设备也均具有与云600的相应连接。并且,媒体回放系统630包括回放设备632和634以及控制设备636,所述的每个设备也均具有与云600的相应连接。
媒体回放系统610、620和630分别可以使用云600来访问各种云服务。例如,媒体回放系统610、620和630可以访问一个或更多个流式音频服务602。如上面所指出的,流式音频服务可以向媒体回放系统提供音频内容。当前可用的若干个示例流式音频服务包括: GOOGLE PLAY MUSICALLSONY MUSICITUNESXBOX以及TUNEIN当然存在其他流式音频服务,并且以后可以提供其他流式音频服务。
媒体回放系统610、620和630还可以分别访问一个或更多个社交网络服务604。通常,社交网络服务的特点至少部分在于服务的用户之间(或者可能服务的账户之间)的各种链接。在其他示例中,这样的链接被称为不同名称如“朋友”、“连接”、“追随者”或“喜爱”等。用户可以出于各种原因来创建这样的链接。例如,在一些情况下,用户可以具有社交网络之外的关系(例如,同事、亲属或大学朋友)。在其他情况下,两个用户可以具有类似的兴趣(例如,特定乐队或流派的粉丝)或属于某个组并且然后由于他们共享这些类似的兴趣因而在社交网络中形成链接。
云服务提供商可以提供云队列服务606。云队列服务606可以保持或能够访问一个或更多个回放队列(云队列)。在一些实例中,云队列服务606可以保持用于向云队列服务606注册的媒体回放系统的回放队列。可以将这样的回放队列称为云队列。在其他实例中,云队列服务606可以保持用于特定媒体回放系统的多个云队列,其中,可能在任何时刻处一个特定云队列“活跃”(即,“被选择”)。在另外的实例中,云队列服务606可以保持多个媒体回放系统能够访问的云队列。一个或更多个计算系统可以用于提供云队列服务606并且在数据存储装置中保持一个或更多个云队列。
各种设备可以访问云队列。访问云队列可以包括关于云队列的各种操作中的任何操作。例如,一些设备可以访问云队列以修改(例如,添加、移除或重新排序)云队列服务606保持的回放队列中的媒体项目。这样的设备可以包括控制设备如控制设备300或具有用于与云队列服务606通信的网络接口的任何适当设备。作为另一示例,媒体回放系统如媒体回放系统610和620可以访问云队列以回放云队列。
媒体回放系统中的设备可以提供产生对队列的访问的控制输入。例如,媒体回放系统中的控制设备(例如,控制设备300)可以提供包括各种控件的接口(例如,控制器接口400)。控制设备可以检测在这样的控件处的输入并且作为响应而执行关于云队列的操作。可替选地,媒体回放系统中的回放设备可以包括可以操作成生成用于请求关于云队列的各种操作的输入数据的各种控件(例如,按钮)。
如上面所指出的,可以使用各种技术来控制对云队列的访问。一些示例技术可以包括基于正在访问云队列的实体的身份来控制对云队列的访问。其他示例技术可以包括基于云队列自身的配置或设置来控制对云队列的访问。
图7示出了示例回放队列700。回放队列700包括条目列表702至732。条目702至732通过分别具有与每个条目相关联的每首歌曲的相应元数据而包括位置1至16的歌曲A至P。元数据还可以包括指示每首歌被存储的位置的指示如统一资源标识符(URI)。例如,对于特定歌曲,元数据可以包括以下统一资源定位符(URL),所述统一资源定位符(URL)指示可以从流式音频服务如图6中所描述的流式音频服务602中检索到特定歌曲的位置。歌曲A至P可以表示上面所指出的示例音频项目中的任何示例音频项目。虽然通过示例将回放队列700示出为包括15个条目,但是如果分别向回放队列700添加(即,插入)媒体项目或从回放队列700移除(即,删除)媒体项目,则回放队列700可以得到另外的条目或者具有更少的条目。媒体回放系统可能可以以特定顺序如通过位置的顺序回放或随机(无序)回放来回放队列700。
云队列服务如云队列服务606可以保持用于一个或更多个媒体回放系统的回放队列700,并且可以将回放队列700称为“云队列”。例如,图5的计算系统500的实例(其可以提供云队列服务606)可以保持用于媒体回放系统610的回放队列700。在这样的示例中,回放设备612和/或回放设备616可能可以将回放队列700的本地副本保持在如图2的存储器206的存储器中。替选地,可以将回放队列700保持在如图3的控制设备300的实例的另一计算系统上。在其他可能的益处中,这样的本地副本可以提供云队列的缓存实例,使得媒体回放系统中的设备可以访问本地副本并且避免在访问云队列时可能涉及的传输延迟。
上面与回放设备、控制器设备、回放区域配置、媒体内容源以及云计算有关的论述仅提供了在其中可以实现下述功能和方法的工作环境的一些示例。本文中没有明确描述的媒体回放系统、回放设备以及网络设备的其他工作环境和配置也可以应用于并适合于功能和方法的实现。
分别在图8、图9、图10、图12、图13、图15和图16中示出的方法800、900、1000、1200、1300、1500和1600表示可以在以下工作环境内实现的方法的实施方式,所述工作环境包括例如图1的媒体回放系统100、图2的回放设备200中的一个或更多个回放设备、图3的控制设备300中的一个或更多个控制设备或图5的计算系统500中的一个或更多个计算系统。另外,通过示例示出的由媒体回放系统执行的操作可以由任何适当设备如媒体回放系统中的回放设备或控制设备来执行。方法800、900、1000、1200、1300、1500和1600可以包括分别在图8、图9、图10、图12、图13、图15和图16中示出的一个或更多个块所示出的一个或更多个操作、功能或动作。虽然按照顺序次序示出了块,但是也可以按照并行次序和/或与本文所描述的次序不同的次序来执行这些块。而且,可以基于所期望的实现将各种块组合成较少的块、划分成另外的块和/或移除。
另外,对于本文中公开的方法和其他处理,流程图示出了当前实施方式的一种可能的实现的功能和操作。就这一点而言,每个块可以表示程序代码的模块、片段或一部分,程序代码包括能够由处理器执行的用于实现处理中的特定逻辑功能或步骤的一个或更多个指令。可以将程序代码存储在任意类型的计算机可读介质上,例如包括磁盘或硬盘驱动器的存储设备。计算机可读介质可以包括非暂态计算机可读介质,例如将数据存储短时间段的计算机可读介质如寄存器存储器、处理器高速缓冲存储器和随机存取存储器(RAM)。例如,计算机可读介质还可以包括非暂态介质如辅助存储器或持久长期存储装置,如只读存储器(ROM)、光盘或磁盘、致密盘只读存储器(CD-ROM)。计算机可读介质还可以是任何其他易失性或非易失性存储系统。例如,可以将计算机可读介质视为计算机可读存储介质或有形存储设备。另外,对于本文中公开的方法和其他处理,每个块可以表示被布线成执行处理中的特定逻辑功能的电路。
Ⅲ.基于授权令牌访问云队列的示例技术
如上面所论述的,本文所描述的实施方式可以包括基于授权令牌来访问云队列。授权令牌可以用于基于哪个实体(例如,特定媒体回放系统或设备)正在尝试访问云队列来控制对云队列的访问。例如,媒体回放系统中的设备可以访问云队列。在其他示例中,访问云队列可以包括显示云队列、回放云队列、或操纵云队列。图8示出了通过授权令牌访问队列的示例方法。
a.获得授权令牌
在方法800的块802处,方法包括获得与队列对应的授权令牌。例如,诸如图1的媒体回放系统100或图6的媒体回放系统610、620和630之一的媒体回放系统可以获得与媒体项目的特定队列对应的授权令牌。在一些情况下,媒体回放系统的特定设备如回放设备(例如,图2的回放设备200)或控制设备(例如,图3的控制设备300)可以获得授权令牌。可以经由网络接口通过诸如广域网(例如,因特网)的一个或更多个网络来获得授权。
可以将特定队列存储在远程服务器(例如,在提供云队列服务时涉及的服务器)处并且可以将特定队列称为“云队列”。将“远程”服务器视为通过包括广域网的一个或更多个网络与可以访问队列的实体分开。例如,参照图6,媒体回放系统610可以通过在通信上耦接媒体回放系统与远程服务器的一个或更多个网络从云队列服务606的服务器获得授权令牌。在一些情况下,媒体回放系统可以从特定队列被存储或保持的远程服务器获得与特定队列对应的授权令牌。可替选地,媒体回放系统可以从另一远程服务器获得与特定队列对应的授权令牌,所述另一远程服务器可能是与特定队列被存储或保持的远程服务器在通信上耦接的远程服务器。
如上面所指出的,所获得的授权令牌可以与媒体项目的特定队列对应。因此,授权令牌可以用于管理对特定队列的访问。例如,给定云队列服务可以保持或访问一个或更多个云队列,每个云队列包括零个或更多个媒体项目。在这样的情况下,所获得的授权令牌可以与一个或更多个云队列中的特定云队列对应。远程服务器可以使用授权令牌以管理对特定云队列的访问。可替选地,所获得的授权令牌可以与特定队列组对应。在其他示例中,这样的组可以包括由云队列服务代表特定媒体回放系统所保持的云队列或由云队列服务代表特定用户账户所保持的云队列。
在一些实现中,授权令牌可以授权或允许实体执行关于特定队列的某些操作,如访问特定队列。实体在尝试执行所允许的操作中的一个操作时可以具有或提供授权令牌,并且在给出授权令牌的有效性的情况下,允许实体执行操作。
授权令牌可以被视为与允许不同操作的某些“访问权限”相关联。在一些实现中,可以禁止尝试执行关于队列的某些操作的实体执行操作,除非该实体已经通过授权令牌被授权。例如,可以允许具有或提供授权令牌的实体执行在访问权限的特定水平或集合内的操作。可以通过授权令牌给不同的实体授予不同的访问权限。例如,第一实体(例如,媒体回放系统或设备)可以获得与第一访问权限相关联的第一授权令牌,并且第二实体可以获得与不同于第一访问权限的第二访问权限相关联的第二授权令牌。
作为一个示例,与给定授权令牌相关联的访问权限可以包括允许显示队列的显示权限,并且因此,可以允许已经获得了给定授权令牌的实体执行在队列的显示时涉及的操作。队列的显示可以包括可能通过图3的控制设备300的用户接口308来显示与在图4所示的控制器接口400的回放队列区440中的队列相关联的媒体项目的指示。通过示例,在队列的显示时涉及的操作可以包括向远程服务器发送对队列的至少一个媒体项目的指示的请求并且可能可以包括接收所请求的指示以及显示至少一个所指示的媒体项目。
作为另一示例,与给定授权令牌相关联的访问权限可以包括允许对与授权令牌对应的特定队列的操纵的队列权限。例如,在其他示例中,可以允许已经获得了与队列权限相关联的授权令牌的实体向队列添加媒体项目、从队列中移除媒体项目或者对队列内的媒体项目进行重新排序。在一些实施方式中,实体(例如,媒体回放系统或这样的系统中的设备)可以向正在保持队列的远程实体(例如,服务器)发送操纵队列的请求。
作为再一示例,与给定授权令牌相关联的访问权限可以包括允许对特定队列中的媒体项目的回放的回放权限。例如,可以允许已获得了与队列权限相关联的授权令牌的实体请求队列中的媒体项目的指示,然后回放那些媒体项目。如上面所指出的,设备可以保持云队列的本地副本。对云队列的回放可以包括:请求云队列的至少一个媒体项目的指示;将所指示的媒体项目包括在本地副本中;以及回放云队列的本地副本中的媒体项目。
在一个示例中,给定授权令牌可以认证媒体回放系统中的一个或更多个特定设备,如图2的回放设备200的一个或更多个实例。获得这样的授权令牌可以包括向远程服务器发送对如下授权令牌的请求,该授权令牌认证媒体回放系统中的一个或更多个特定设备回放队列中的媒体项目。在发送请求之后,媒体回放系统可以接收所请求的授权令牌。在一些情况下,两个或更多个设备可以联合成可以执行一些联合操作如同步回放的组。在这样的情况下,所获得的授权令牌可以认证两个或更多个设备同步地回放队列中的媒体项目。
如上面所指出的,在一些实施方式中,媒体回放系统可以与一个或更多个用户账户相关联。当用户账户可能通过图3的控制设备300的实例而登录进媒体回放系统时可以形成这样的关联。在一些情况下,授权令牌可以授权一个或更多个特定用户账户访问远程服务器处的云队列。通过利用授权令牌来认证用户账户,登录用户账户的任何媒体回放系统可以被认证以访问队列。在这样的实例中,获得授权令牌可以包括媒体回放系统向远程服务器发送对如下授权令牌的请求,该授权令牌认证特定账户访问远程服务器处的队列。如果特定用户账户被授权,则远程服务器可以批准请求并且发送所请求的授权令牌。媒体回放系统然后可以接收所请求的授权令牌。在一些情况下,所接收的授权令牌认证向特定账户注册了的控制设备访问远程服务器处的队列。控制设备可以是提供便于访问云队列的控制器接口的设备,并且因此,可以通过控制设备300来执行对云队列的访问。
在一些情况下,可能响应于接收到指示访问特定队列的请求的输入数据,媒体回放系统中的控制设备可以获得与特定队列对应的授权令牌。控制器可以使图形接口显示包括控件的控制器接口或对应于与所获得的授权令牌相关联的访问的其他接口元件。例如,如果授权令牌允许显示云队列,则控制器可以显示以下控制器接口,所述控制器接口具有示出云队列的回放队列区如图4所示的回放队列区440的实例。另外,如果授权令牌不允许云队列的回放,则控制器接口可以不包括回放控制区(例如,图4的回放控制区410)或可以指示回放控制区对于云队列被禁用或不可用。
在获得授权令牌之后,控制设备可以向媒体回放系统中的一个或更多个另外的设备发送授权令牌,并且所述另外的设备可以使用该授权令牌来访问队列。在一个示例中,媒体回放系统中的控制设备可以发送认证对远程服务器处的队列的访问的授权令牌的请求。之后,控制设备可以接收所请求的授权令牌。控制设备然后可以将所接收的授权令牌发送至媒体回放系统中的一个或更多个回放设备。如上面所指出的,由于向远程服务器提供授权令牌的实体可以被认证来访问队列,因此具有授权令牌的实体中的任何实体可以使用授权令牌来访问队列。
可替选地,可能响应于接收到回放或以其他方式访问特定队列的请求,媒体回放系统中的回放设备可以获得与特定队列对应的授权令牌。在获得授权令牌之后,回放设备可以向媒体回放系统中的一个或更多个另外的设备分发授权令牌,使得所述另外的设备可以使用授权令牌来访问队列。在一个示例中,媒体回放系统中的给定回放设备可以发送对授权令牌的请求,该授权令牌认证对远程服务器处的队列的访问。之后,给定回放设备可以接收所请求的授权令牌。控制设备然后可以将所接收的授权令牌发送至媒体回放系统中的一个或更多个另外的回放设备。在一个实现中,一个或更多个另外的回放设备可以是与给定回放设备分组在一起的回放设备。由于向远程服务器提供授权令牌的实体可以被认证来访问队列,因此具有授权令牌的所有回放设备可以访问队列。
在示例中,所获得的授权令牌可以采取各种形式。例如,所获得的授权令牌可以包括指示授权码的超文本传输协议头部,所述授权码认证关于云队列的某些操作。在这样的情况下,获得授权令牌可以包括接收指示超文本传输协议头部的数据,所述超文本传输协议头部指示授权码。头部中所指示的授权码可以认证对远程服务器处的媒体项目的队列(例如,云队列)的访问权限。可替选地,文件(即,非暂态数据)可以指示授权令牌。
在示例中,授权令牌可以授予在有限持续时间内对队列的访问。例如,授权令牌可以授予在会话的持续时间内对队列的访问权限。在这样的实施方式中,获得授权令牌可以包括:(i)向远程服务器发送媒体回放系统的给定会话的指示,以及(ii)对如下授权令牌的请求,该授权令牌认证媒体回放系统在给定会话的持续时间内访问远程服务器处的队列。此外,获得授权令牌可以包括媒体回放系统接收认证媒体回放系统在给定会话的持续时间内访问远程服务器处的队列的所请求的授权令牌。
在一些情况下,获得授权令牌可以包括实体向远程服务器发送一个或更多个证书(例如,用户名称或密码)。远程服务器可以确定,如果证书授权实体获得授权令牌,则向实体发送所请求的授权令牌。在一些情况下,证书可以包括用户账户的一个或更多个证书,如上面所指出的用户账户中的任何用户账户。
在获得授权令牌之后,设备(例如,回放设备或控制设备)可以将授权令牌存储在诸如回放设备200的存储器206或控制设备300的存储器304的数据存储装置中。然后设备在访问与授权令牌对应的云队列时可以向远程服务器提供所存储的授权令牌的指示。
b.发送授权令牌和访问队列的请求
在块804处,方法包括发送所获得的授权令牌和访问云队列的请求。例如,媒体回放系统可以向远程服务器发送所获得的授权令牌和访问特定云队列中的一个或更多个媒体项目的请求。媒体回放系统可以经由网络接口通过包括广域网的一个或更多个网络发送令牌和请求。
如上面所指出的,实体(例如,媒体回放系统或其设备)可以在尝试执行所允许的操作中的一个操作时具有或提供授权令牌,并且在给出授权令牌的有效性的情况下,允许实体执行操作。提供授权令牌可以包括向远程服务器发送授权令牌(或授权令牌的指示),所述远程服务器可以是正在保持云队列的远程服务器或者可能可以是与正在保持云队列的远程服务器在通信上耦接的不同的远程服务器。
如上面所指出的,在一些情况下,所获得的授权令牌可以允许显示队列。在一些示例中,发送访问的请求可以包括发送对供显示的一个或更多个媒体项目的指示的请求。在一些实现中,一个或更多个媒体项目可以包括云队列中的所有媒体项目。在其他实现中,一个或更多个媒体项目可以包括云队列中的媒体项目的子集。子集可以包括当前正在播放的媒体项目,并且可能可以包括与队列内当前正在播放的媒体项目最接近的一个或更多个媒体项目。
还如上面所指出的,所获得的授权令牌可以允许对队列的回放。在这样的示例中,发送访问的请求可以包括发送对供回放的一个或更多个媒体项目的指示的请求。
在另外的示例中,所获得的授权令牌可以允许对队列的操纵(例如,向队列添加项目、从队列中移除项目、或者对队列内的项目进行重新排序)。利用这样的授权令牌,发送访问的请求可以包括发送操纵队列的请求。媒体回放系统中的控制设备可以基于接收到指示这样的操纵的输入数据来发送这样的请求。
c.接收媒体回放系统可以访问队列的指示
在块706处,方法包括接收媒体回放系统可以访问队列的指示。例如,媒体回放系统可以从远程服务器接收媒体回放系统可以访问先前被请求访问的特定队列中的一个或更多个媒体项目的指示。媒体回放系统中的设备可以通过一个或更多个网络经由网络接口来接收指示。
接收媒体回放系统可以访问队列的指示可以包括接收指示特定队列中的一个或更多个媒体项目的数据。如上面所指出的,在一些情况下,所获得的授权令牌可以包括允许显示队列的显示权限。在这样的情况下,媒体回放系统可以请求供显示的队列中的一个或更多个媒体项目的指示。之后,媒体回放系统可以接收指示特定队列中的一个或更多个媒体项目的数据。在一些情况下,方法还可以包括显示一个或更多个媒体项目的相应指示。例如,媒体回放系统中的控制设备可以使图形接口显示一个或更多个媒体项目的指示。可以将该指示显示在控制器接口的回放队列区如控制器接口400的回放队列区440中。
在其他情况下,接收媒体回放系统可以访问队列的指示可以包括接收:(i)指示特定队列中的一个或更多个媒体项目的数据,以及(ii)指示一个或更多个媒体项目的相应源的数据。如上面所指出的,在一些实例中,所获得的授权令牌可以包括允许操纵队列的队列权限。对队列的操纵可以包括对队列中的媒体项目的添加、移除或重新排序,并且对队列的操纵还可以包括改变队列的回放次序(例如,通过快进或快退命令)。在这样的情况下,媒体回放系统可以向远程服务器发送操纵队列的请求。之后,媒体回放系统可以接收队列的指示,可能可以在所请求的操纵之后显示队列。例如,媒体回放系统可以向远程服务器发送向特定队列添加一个或更多个媒体项目的请求。远程服务器可以添加一个或更多个媒体项目,并且向媒体回放系统发送以下接收数据:(i)指示特定队列中的一个或更多个媒体项目的接收数据,以及(ii)指示一个或更多个媒体项目的相应源的接收数据。在一些实施方式中,媒体回放系统可以向媒体回放系统的本地队列添加所指示的一个或更多个媒体项目。
在其他情况下,接收媒体回放系统可以访问一个或更多个媒体项目的指示可以包括媒体回放系统接收指示(i)特定队列中的一个或更多个媒体项目以及(ii)一个或更多个媒体项目的相应源的数据。如上面所指出的,在一些实例中,所获得的授权令牌可以包括允许对特定队列中的媒体项目的回放的回放权限。在这样的情况下,可能响应于接收到指示回放队列的请求的输入数据,媒体回放系统可以请求供回放的队列中的至少一个媒体项目的指示。之后,媒体回放系统可以接收指示(i)特定队列中的一个或更多个媒体项目以及(ii)一个或更多个媒体项目的相应源的数据。在一些实例中,媒体回放系统可以从相应源获得一个或更多个媒体项目中的至少一个媒体项目,可能用于回放所述至少一个媒体项目。
接收指示一个或更多个媒体项目的相应源的数据可以包括接收可以用于获得媒体项目的相应标识符。例如,如上面所指出的,在一些示例中,媒体项目的队列中的每个媒体项目被分配有唯一标识符。唯一标识符可以是统一资源标识符(URI)、统一资源定位符(URL)或者设备可以用以从本地音频内容源或联网音频内容源中查找和/或检索可能用于由实体回放的音频项目的其他的一些标识符。
在一些情况下,方法还可以包括接收如下指示:所获得的授权令牌已过期,使得对远程服务器处的媒体项目的队列的访问从媒体回放系统被撤回。如上面所指出的,在一些情况下,授权令牌可以授予给定会话的持续时间内对特定队列的访问。因此,授权令牌可以基于条件的发生而过期。例如,在其他示例中,授权令牌可以在以下情况下过期:在给定持续时间之后、在已经发生阈值次数的访问之后、在队列已被回放达阈值持续时间之后或者在队列的阈值数目的媒体项目已被回放之后。在一些情况下,远程服务器可能可以通过检测上述条件中的一个条件来确定授权令牌已过期。远程服务器然后可以发送所获得的授权令牌已过期的指示,媒体回放系统可以接收该指示。
在某些条件下,授权令牌可以被更新而不是过期。例如,远程服务器可以确定对特定队列的回放已经满足更新的至少一个条件,并且基于这样的确定来更新授权令牌。更新的示例条件可以是对特定队列的该回放超过阈值持续时间或对特定队列的该回放超过给定会话的阈值比例(例如,阈值数目的媒体项目已被回放)。在一些情况下,媒体回放系统可以基于在给定会话期间由媒体回放系统对队列中的媒体项目的回放,向远程服务器发送更新所接收的授权令牌的请求。媒体回放系统可以发送指示在会话期间对特定队列的回放的回放数据,远程队列根据所述回放数据可以确定对特定队列的回放已经满足更新的至少一个条件。在给定媒体回放系统有资格得到更新了的授权令牌的情况下,媒体回放系统可以接收更新了的授权令牌,所述更新了的授权令牌认证媒体回放系统在给定会话的第二持续时间内或在其他的一些适当持续时间内如较短持续时间内访问远程服务器处的队列。
Ⅳ.基于授权令牌来控制对云队列的访问的示例技术
如上面所指出的,本文所描述的实施方式可以包括基于授权令牌来控制对云队列的访问和/或访问云队列。图9示出了远程服务器可以控制由各种媒体回放系统对云队列的访问的示例方法。
a.接收授权令牌和对队列的访问的请求
在图9的块902处,方法包括接收授权令牌和对特定队列的访问的请求。例如,计算系统(例如,远程服务器)可以经由网络接口接收与特定媒体回放系统相关联的授权令牌,以及(ii)媒体回放系统访问远离媒体回放系统的(可能由计算系统保持的)媒体项目的队列的请求。
可能取决于哪个实体被分配来控制对云队列的访问,可以由各种实体来操作计算服务器。在一个示例中,云队列服务器606的远程服务器可以通过在通信上与系统耦接的一个或更多个网络从媒体回放系统610接收授权令牌和访问请求。在另一示例中,流式音频服务602的远程服务器可以通过在通信上与系统耦接的一个或更多个网络从媒体回放系统610接收授权令牌和访问请求。在另一种情况下,可以由云托管提供商代表正在控制对云队列的访问的实体来操作服务器。所接收的授权令牌可以采取上面所提供的示例授权令牌中的任何授权令牌以及任何其他适当授权令牌的形式。
如上面所指出的,实体可以在尝试执行关于队列的操作时向正在保持云队列的计算系统提供授权令牌。在给定授权令牌指示实体被授权执行操作和授权令牌有效的情况下,计算系统可以允许操作被执行并且可以执行操作。在一些情况下,实体可以在同一消息中提供授权令牌和访问请求。可替选地,实体可以在不同消息中提供授权令牌和访问请求。
如上面所指出的,在其他示例中,访问云队列可以包括显示云队列、回放云队列或操纵云队列。因此,在一些情况下,接收访问请求可以包括接收对供显示的一个或更多个媒体项目的指示的请求。在其他情况下,接收访问请求可以包括接收对供回放的一个或更多个媒体项目的指示的请求。在另外的示例中,所接收的授权令牌可以允许对队列的操纵(例如,向队列添加项目、从队列中移除项目或者对队列内的项目进行重新排序)。利用这样的授权令牌,接收访问请求可以包括接收操纵队列的请求。
可以基于某些条件来更新将授权令牌与实体相关联的数据以及操作。例如,可以根据被授权的设备(例如,具有认证设备更新数据的授权令牌的设备)的请求来更新数据。可替选地,可以作为注册程序的一部分来更新数据。例如,可以在新的媒体回放系统或设备被注册(例如,与特定用户账户相关联)时更新数据。作为另一示例,可以在新内容源如流式音频服务被注册时更新数据。
如上面所指出的,授权令牌可以在有限持续时间内授予对队列的访问。例如,所接收的授权可以在给定会话的持续时间内授予对队列的访问。因此,在一些情况下,访问队列请求可以包括在给定会话的持续时间(例如,在会话的剩余时间内)内访问队列的请求。
b.确定授权令牌认证的对队列的访问
在块904处,方法包括确定授权令牌认证的对队列的访问。例如,计算系统可以保持或访问指示每个被授予的授权令牌提供的访问的数据。计算系统可以基于这样的数据来确定对所接收的授权令牌提供的队列的访问。数据可以采取数据库的形式。
确定授权令牌认证的对队列的访问包括标识授权令牌提供访问的云队列。如上面所指出的,每个授权令牌可以与一个或更多个特定队列对应。计算系统可以保持或访问将每个授权令牌链接至一个或更多个特定队列的数据,计算系统可以在标识授权令牌提供访问的云队列时参考所述数据。
在一些实施方式中,确定授权令牌认证的对队列的访问包括确定授权令牌认证实体执行的一个或更多个操作。对云队列的访问可以采取可以关于云队列执行的的定义了的操作集合的形式。如上面所指出的,每个操作可以包括从实体(如媒体回放系统)向远程服务器发送的请求,在该请求被授权的情况下,远程服务器可以执行该请求。在一些情况下,可以在应用编程接口(API)或其他适当定义中定义操作。
可以基于访问的类型将操作划分为不同类别。例如,在显示时涉及的操作如请求供显示的云队列中的媒体项目可以被归类为显示操作。作为另一示例,在队列操纵时涉及的操作如向队列添加媒体项目、从队列中移除媒体项目或者对队列内的媒体项目进行重新排序可以被归类为操纵操作。另一类别的操作可以是回放操作,回放操作可以包括在队列的回放时涉及的操作。在一些情况下,这样的类别可以用于确定授权令牌认证的对队列的访问。例如,计算系统可以确定授权令牌认证哪个类别的操作。
在一些实施方式中,可以将操作划分为彼此不同的两个或更多个访问水平。例如,可以将操作划分为“完全”访问和部分访问,“完全”访问包括操作的完整集合,部分访问包括操作的子集。作为另一示例,每个水平可以包括特定类别的操作。例如,第一水平可以包括操纵和显示类别,而另一水平包括回放和显示类别。在这样的实施方式中,给定授权令牌可以认证实体执行给定水平内的操作。
如上面所指出的,在一些示例中,授权令牌可以具有有效性持续时间。例如,授权令牌可以在给定会话的持续时间内有效。在这样的情况下,确定授权令牌认证的对队列的访问可以包括确定是授权令牌仍然有效还是令牌已过期。授权令牌的过期可以导致撤回对队列的访问。例如,过期的授权令牌可以不提供对队列的任何访问,或者过期的授权令牌可以提供与在令牌有效时相比的有限访问。例如,给定令牌在有效时可以授权回放和显示操作,而在过期之后,给定令牌可以仅授权显示操作或完全不授权操作。
c.提供授权令牌认证的访问
在块906处,方法包括提供授权令牌认证的访问。给定授权令牌认证请求的情况下,提供授权令牌指示的访问可以包括执行所接收的媒体回放系统的访问的请求。例如,计算系统可以根据访问请求所指示的操作的类型,通过执行在队列的显示、回放或操纵时涉及的操作来提供对队列中的媒体项目的访问。
在一些情况下,授权令牌可能过期。在这样的情况下,向媒体回放系统提供授权令牌授权的访问可以包括向媒体回放系统发送如下指示:授权令牌已过期,使得对远程服务器处的媒体项目的队列的访问被撤回或者以其他方式被限制。基于这样的消息,媒体回放系统可以限制关于队列的某些操作。例如,媒体回放系统中的控制设备可以使图形接口显示对云队列的访问被撤回的指示,并且媒体回放系统中的控制设备可能可以禁用要求所撤回的访问的某些控件。
在一些情况下,方法还可以包括向实体(例如,媒体回放系统或设备)提供授权令牌。计算系统可能可以在会话的开始处在提供对队列的访问之前提供授权令牌。在一个示例中,计算系统可以接收对认证实体(例如,发送请求的实体,实体可以是媒体回放系统中的设备)访问媒体项目的特定队列(或者可能特定队列组)的授权令牌的请求。计算系统还可以接收一个或更多个证书,如账户的用户名称和口令,所述一个或更多个证书可以用于确定发出请求的实体被授权被提供所请求的授权令牌。在确定请求被授权时,计算系统可以向实体发送所请求的授权令牌。换言之,计算设备可以发送授权令牌和所请求的访问。
在一些实施方式中,计算系统可以接收给定会话的指示和对在该给定会话的持续时间内认证实体的授权令牌的请求。计算系统然后可能可以基于由实体提供的一个或更多个证书来向实体发送这样的授权令牌。计算系统然后可以向实体提供对队列的访问直到授权令牌过期为止。
如上面所指出的,在一些示例中,可能可以在过期之后基于一个或更多个条件来更新授权令牌。例如,计算系统可以接收更新所接收的授权令牌的请求。计算系统还可以接收回放历史数据,计算系统可以使用所述回放历史数据以确定授权令牌是否可以更新。例如,回放历史数据可以指示在给定会话期间队列中的媒体项目的回放历史,并且基于所接收的回放历史,计算系统可以确定在给定会话期间对队列中的媒体项目的回放超过用于更新授权令牌的阈值。基于这样的条件,计算系统可以向实体发送更新了的授权令牌,所述更新了的授权令牌认证媒体回放系统在附加时间内如给定会话的第二持续时间内访问远程服务器处的队列。
Ⅴ.提供访问控制水平的示例技术
如上面所指出的,本文所描述的实施方式可以包括提供对云队列的不同水平的访问。图10示出了向两个或更多个实体提供不同水平的访问的示例方法。
a.接收访问队列的请求
在方法1000的块1002处,方法包括接收对媒体项目的队列的访问的一个或更多个请求。例如,计算系统可以从第一媒体回放系统接收对媒体项目的队列的访问的请求。计算系统还可以从第二媒体回放系统接收对媒体项目的队列的访问的请求。计算系统可以通过一个或更多个网络经由网络接口来接收请求。作为一个示例,诸如云队列服务606的云服务的远程服务器可以从媒体回放系统610和媒体回放612接收访问云队列的相应请求。
在一些实施方式中,每个访问请求可以包括执行关于云队列中的一个或更多个操作的请求。操作可以包括上面结合发送或接收访问请求所指出的示例类型的操作中的任何操作。例如,在其他示例中,访问请求可以包括执行在云队列的显示、云队列的回放或云队列的操纵时涉及的操作的请求。
在一些实施方式中,访问请求可以包括计算系统可以认证对队列的访问的机制。例如,每个访问请求可以包括授权令牌。可替选地,每个访问请求可以包括一个或更多个证书。
c.授权对队列的访问
在块1004处,方法包括授予对队列的访问。例如,计算系统可以给第一媒体回放系统授予第一类型的访问并且可以给第二媒体回放系统授予第二类型的访问。如上面所指出的,对云队列的访问可以包括可以关于云队列来执行的定义了的操作集合。授予访问可以包括授权媒体回放系统执行关于队列的某些操作。如上面所指出的,媒体回放系统可以通过经由网络接口向计算系统发送对这样的操作的请求来执行队列操作。该计算系统保持或能够访问媒体回放系统正在尝试访问的云队列。
每种类型的访问可以提供不同水平的访问。例如,第二类型的访问可以提供“完全”访问,“完全”访问可以包括用于执行关于云队列的操作的完整集合的授权。第一类型的访问然后可以提供部分访问,部分访问可以包括用于执行操作的子集的授权。可替选地,第一类型的访问和第二类型的访问可以授权实体分别执行第一操作子集和第二操作子集。第一操作子集和第二操作子集可以包括相同操作中的一些操作,但第一操作子集和第二操作子集彼此不同在于相应集合不包括相同操作中的所有操作。
如所指出的,可以将操作划分为不同的类别。例如,在显示时涉及的操作如请求供显示的云队列中的媒体项目可以被归类为显示操作。作为另一示例,在队列操纵时涉及的操作如向队列添加媒体项目、从队列中移除媒体项目或者对队列内的媒体项目进行重新排序可以被归类为操纵操作。另一类别的操作可以是回放操作,回放操作可以包括在队列的回放时涉及的操作。在一些情况下,每种类型的访问可以包括执行某些类别的操作的授权。例如,可以授权第二类型的访问执行操纵和显示类别中的操作,而可以授权第一类型的访问执行回放和显示类别中的操作。
在一些情况下,访问的类型可以通过其相应的授权(或缺乏授权)来区分:所述授权(或缺乏授权)用于控制云队列中的哪个媒体项目当前正在播放和/或云队列中的媒体项目是正在播放还是暂停。媒体回放系统可以通过发送与各种传输控件对应的请求来控制云队列中的哪个媒体项目当前正在播放。例如,在其他示例中,媒体回放系统可以向远程服务器发送请求,该请求用于回放、暂停、跳到队列中的下一媒体项目,跳到队列中的前一媒体项目,跃到队列中的特定媒体项目(或位置)。在一些实施方式中,被授予第二类型的访问的媒体回放可以被授权执行全部传输功能集合,而被授予第一类型的访问的媒体回放系统可以被授权执行传输功能子集。例如,第一类型的访问可以授权回放和暂停,但是可能不授权改变当前正在播放的媒体项目(例如,跳或跃)的传输功能。
在一些情况下,“播放头”指示符可能可以通过参考队列中的特定位置来指示队列中当前正在播放的媒体项目。例如,返回参照图7,歌曲E可以是当前正在播放的媒体项目,并且播放头指示符可以通过参考位置5来指示歌曲E。计算系统可以保持或能够访问指示播放头的数据。队列的回放可以发生在播放头所指示的媒体项目处。影响当前正在播放的媒体项目的操作可以改变播放头所指示的位置,该位置又可以影响哪个媒体项目当前正在播放。
如上面所指出的,媒体回放系统可能可以通过一个或更多个回放设备来回放云队列。另外,两个或更多个媒体回放系统可以同步地回放云队列,以使得媒体回放系统提供联合的聆听体验。在一些示例中,第二类型的访问可以包括用于控制云队列中哪个媒体项目当前正在播放的授权。因此,被授予第二类型的访问的媒体回放系统可以请求改变云队列中当前正在播放的媒体项目,从而改变针对当前正在回放云队列的其他媒体回放系统的当前正在播放的媒体项目。
因此,被授权改变云队列中当前正在播放的媒体项目的媒体回放系统可以被称为“DJ”媒体回放系统。被授予第一类型的访问的媒体回放系统可以不被授权改变当前正在播放的媒体项目,因此前述媒体回放系统可以被称为“收听器”。在一些回放模式中,DJ媒体回放系统可以通过控制哪个媒体项目当前正在播放来控制云队列的哪个媒体项目被回放。作为“收听器”的媒体回放系统可以“遵循”由DJ媒体回放系统设置的回放顺序。
图11示出了包括远程服务器1102的示例环境1100,远程服务器1102包括云队列1112。远程服务器1102通过一个或更多个网络1110连接至媒体回放系统1104、媒体回放系1106以及媒体回放系统1108。网络1110可以包括:诸如因特网的一个或更多个广域网;以及一个或更多个局域网。在一个示例中,远程服务器1102可以向媒体回放系统1104授予第二类型的访问。在该示例中,第二类型的访问可以允许媒体回放系统1104改变云队列1112中当前正在播放的媒体项目(即,成为“DJ”)并且可能还可以通过对项目进行插入、移除或重新排序来操纵队列。
远程服务器1102可以向媒体回放系统1106和1108授予第一类型的访问。第一类型的访问可能可以如媒体回放系统1102(“DJ”)所指导来允许云队列1112的回放。例如,如所示出的,媒体回放系统1104可能可以通过改变或设置播放头的位置来将队列1112的当前媒体项目设置为位置3处的歌曲C。媒体回放系统1106和/或媒体回放系统1108可以根据第一类型的访问来访问队列1112。如所指出的,这可以包括如媒体回放系统1104所指导来回放队列1112。通过媒体回放系统1104对队列1112或当前正在播放的媒体项目做出的改变可以经由远程服务器1102传播至媒体回放系统1106和1108。例如,媒体回放系统1104可以发送将播放头从队列1112中的第一位置改变为队列1112中的第二位置(例如,快进到队列中的下一媒体项目)的请求。远程服务器1102可以接收该请求,确定授予媒体回放系统1104的访问授权该系统执行所请求的动作并且然后执行该请求。远程服务器1102可能可以通过向媒体回放系统1106和1108发送新的当前正在播放的媒体项目的指示来使媒体回放系统1106和1108的相应回放设备回放与第二位置对应的媒体项目。
方法还可以包括确定发出请求的实体是否被授权访问队列。例如,计算系统可以确定所接收的授权令牌或证书是否授权实体被授予实体所请求的访问。计算系统可以基于这样的确定来授予访问(或可以不授予访问)。
方法还可以包括确定哪个媒体回放系统被授予哪种类型的访问。如上面所指出的,在一些情况下,第二类型的访问可以授权比第一类型的访问多的关于队列的操作(例如,可以执行访问的操作的完整集合)。可替选地,第二类型的访问可以授权包括与第一类型的访问相比的较多的关于队列的控件的操作(例如,与回放和/或显示操作相比,用于执行操纵操作的授权)。因此,一些实施方式可以限制哪个(哪些)媒体回放系统被授予这样的访问。
在一些实施方式中,可以将每种类型的访问限制于有限数目的媒体回放系统。例如,可以将第二类型的访问限制于一个媒体回放系统。在这样的情况下,当接收到向媒体回放系统授予特定类型的访问的请求时,计算系统可以确定向媒体回放系统授予该种类型的访问是否将超过媒体回放系统的阈值数目。如果向媒体回放系统授予该种类型的访问将超过媒体回放系统的阈值数目,则计算系统可以拒绝向媒体回放系统授予特定类型的访问的请求,并且可能可以向发出请求的媒体回放系统发送拒绝的指示。
在一些情况下,计算系统可以使访问的类型在正在访问特定云队列的媒体回放系统之间循环。在这样的示例中,每个媒体回放系统可以被授予有限持续时间内的第二类型的访问,并且可以被授予其他时间处的第二类型的访问。例如,返回参照图11的DJ示例,媒体回放系统1104、1106和1108可以每三十分钟(或其他的某个适当持续时间)轮流作为DJ。在操作中,计算系统可以检测出第一媒体回放系统已被授予在阈值持续时间内进行第二类型的访问,并且基于这样的检测,给第二媒体回放系统授予第二类型的访问并且给第一媒体回放系统授予第一类型的访问。
在一些情况下,授予每个媒体回放系统的访问的类型可以基于与相应媒体回放系统相关联的用户账户。在这样的实施方式中,可以向用户账户被登录(或以其他方式关联的)的任何媒体回放系统授予向该用户账户授予的访问。特定用户账户可以与多个媒体回放系统相关联,使得多个媒体回放系统可以具有向用户账户授予的访问。
在一些实施方式中,计算系统可以向正在首次访问特定云队列的媒体回放系统(或用户账户)授予特定类型的访问。例如,在向实体授予对特定云队列的访问的第一实例时,计算系统可以向实体授予有限持续时间(例如,绝对时间的有限持续时间或回放时间的有限持续时间)内的第二类型的访问(例如,完全访问)。例如,在操作中,计算系统可以从第三媒体回放系统接收访问队列的请求,确定该请求是来自第三媒体回放系统的请求的第一实例,并且基于这样的确定,给第三媒体回放系统授予第二类型的访问(例如,完全访问)。
在示例中,一些类型的访问可以允许实体请求另一实体被授予特定类型的访问。例如,可以授权具有第二类型的访问的媒体回放系统向另一媒体回放系统(可能具有第一类型的访问)授予第二类型的访问。在操作中,计算系统可以从第二媒体回放系统接收向特定媒体回放系统授予特定类型的访问的请求,确定给第二媒体回放系统授予的访问的类型授权第二媒体回放系统授予特定类型的访问,并且基于这样的确定,向特定媒体回放系统授予第二类型的访问。
在一些情况下,向实体授予的访问的类型可以基于哪个实体创建了云队列。例如,与特定用户账户相关联的设备可以向计算系统发送建立云队列的请求。计算系统可以通过建立云队列来执行请求,并且根据已经建立了云队列向用户账户授予第二类型的访问。可以向访问云队列的其他用户账户授予第二类型的访问。如上面所指出的,向每个实体授予的访问的类型可能可以基于某些条件来改变。
c.提供访问的指示
在块1006处,方法包括提供访问的指示。计算系统可以提供第一媒体回放系统可以访问由第一类型的访问授权的队列的指示,并且可以提供第二媒体回放系统可以能够如第二类型的访问所授权的那样访问队列的指示。
在一些情况下,计算系统可以通过发送指示媒体回放系统已经被授予特定类型的访问的消息来指示该媒体回放系统可以访问由特定类型的访问授权的队列。例如,计算系统可以通过一个或更多个网络向每个媒体回放系统发送相应消息。在接收到消息之后,计算系统可以根据它们已经被授予的访问来发送访问队列的请求。
在其他情况下,计算系统可以通过计算系统应媒体回放系统的请求而执行的发送请求的指示来指示媒体回放系统可以访问由特定类型的访问授权的队列。例如,计算系统可以从第一媒体回放系统接收回放队列的请求,确定给第一媒体回放系统授予的第一类型的访问授权第一媒体回放系统回放队列;并且向第一媒体回放系统发送指示队列中的一个或更多个媒体项目的数据。在一些情况下,计算系统还可以发送指示一个或更多个媒体项目的相应源的数据,一个或更多个媒体项目可由第一媒体回放系统从相应源中播放。
Ⅵ.根据访问控制水平来访问队列的示例技术
如上面所指出的,本文所描述的实施方式可以包括提供对云队列的不同水平的访问。图12示出了使用一个或更多个不同访问水平来访问云队列的示例方法。
a.发送对队列的访问的请求
在方法1200的块1202处,方法包括发送对媒体项目的队列的访问的请求。媒体回放系统中的设备(例如,控制设备或回放设备)可以请求访问媒体项目的云队列。例如,设备可以向保持或能够访问云队列的计算系统发送回放、显示或操纵队列中的媒体项目的请求。本文中提供了访问队列的许多示例,并且其他示例也是可以的。例如,访问的请求可以包括授权令牌。
b.接收对队列的访问的指示
在块1204处,方法包括接收对队列的访问的指示。例如,设备可以(例如,在其他示例中,基于用户账户、特定设备或设备的类型或授权令牌)接收媒体回放系统(或设备)可以访问由特定类型的访问授权的队列的指示。如上面所指出的,对云队列的多种类型的访问是可以的。每种类型的访问可以允许关于队列的不同操作集合。在一些情况下,设备可以接收指示媒体回放系统已经被授予特定类型的访问的消息。可替选地,设备可以接收计算系统代表媒体回放系统执行的请求的指示。其他示例也是可以的。
c.接收队列中的媒体项目的指示
在块1206处,方法包括接收队列中的一个或更多个媒体项目的指示。例如,设备可以请求供显示或回放的一个或更多个媒体项目的指示,并且可以接收所请求的指示。可替选地,设备可以请求修改队列,并且在修改之后接收队列内的媒体项目的指示。
如上面所指出的,在一些情况下,访问队列可以包括回放队列。另外,在一些情况下,媒体回放系统可以基于指示队列的当前媒体项目的播放头来回放云队列。在回放期间,设备(例如,回放设备)可以接收播放头的相应位置的一个或更多个指示并且启动队列的与播放头同步的回放。如上面所指出的,多个媒体回放系统可以分别与播放头同步地回放队列,以便于媒体回放系统之间的联合的聆听体验。
Ⅶ.根据云队列设置来控制队列的访问的示例技术
如上面所指出的,本文所描述的实施方式可以包括基于云队列的各种设置或属性来控制云队列的访问。示例计算系统可以保持或访问多个云队列,每个云队列具有控制由设备访问相应云队列的相应属性。图13示出了包括具有两个或更多个访问状态的云队列的示例方法,其中,每个访问状态指示允许关于队列来执行的不同队列操作集合。
a.接收建立队列的请求
在方法1300的块1302处,方法包括接收建立媒体项目的队列的请求。例如,计算系统可以从媒体回放系统接收建立媒体项目的云队列的请求。计算系统可以在计算系统自身处建立云队列,或者可以使云队列建立在与该计算系统通信上耦接的另一计算系统处。
所建立的云队列可以包括零个或更多个媒体项目。在一些情况下,计算系统可以接收将一个或更多个媒体项目插入到所建立的云队列中的指示。可替选地,云队列可以被配置成包括一个或更多个媒体项目,但并非包括任何媒体项目。
可以由唯一标识符如统一资源标识符来标识所建立的云队列以区分所建立的云队列与计算系统可以保持或访问的其他云队列。所执行的关于云队列的操作可以通过参考唯一标识符来参考云队列。
图14A示出了包括通过一个或更多个网络1410连接的远程服务器1402和媒体回放系统1404的示例环境1400。为了建立云队列,媒体回放系统1404可以经由网络接口通过一个或更多个网络1410发送在远程服务器1402处建立云队列的请求。当接收到请求时,远程服务器1402可以建立云队列1412。
在云队列1412被建立之后,媒体回放系统可以访问云队列1412。诸如媒体回放系统中的回放设备和控制设备的计算设备以及可能的其他计算设备可以通过各种操作来访问云队列。本文公开了可以执行的关于云队列的操作的许多示例,并且其他示例也是可以的。可以访问云队列的媒体回放系统可以包括已经被授予访问的那些媒体回放系统。如上面所指出的,由于媒体回放系统1102建立了云队列1412,因此媒体回放系统1102可以被授予访问。访问队列可以包括建立与云队列1412的全部或一部分同步的本地队列1414。
图14B还示出了示例环境1400。除媒体回放系统1402之外,环境1400作为示例包括正在访问云队列1412的媒体回放系统1406和1408,并且同样地环境1400已经建立了对云队列1412进行镜像的相应本地队列1416和1418。如上面所指出的,在其他可能的特征中,媒体回放系统1406和1408可以访问云队列1412以同步地回放云队列1412的媒体项目。
b.向队列分配第一访问状态
在块1304处,方法包括向队列分配第一访问状态。例如,计算系统可以向云队列分配第一访问状态。访问状态可以指示某些实体被允许执行的关于队列的队列操作集合。
在一些情况下,第一访问状态可以是通常向新建立的云队列分配的初始访问状态。可替选地,访问状态可以包括针对新建立的云队列所请求的访问状态。返回参照图14A,远程服务器1402可以向云队列1412分配第一访问状态。
计算系统可以通过云队列的当前分配的访问状态来控制对云队列的访问。例如,第一访问状态可以指示至少一个媒体回放系统被授权执行关于队列的第一队列操作集合。换言之,给定队列被分配有第一访问状态的情况下,被授权访问云队列(可能通过证书或授权令牌)的实体可以被授权执行关于队列的第一队列操作集合。
云队列可以具有可能的访问状态的有限集合。在一些示例中,访问状态的集合可以包括第一访问状态和第二访问状态。第一访问状态和第二访问状态分别可以指示媒体回放系统被授权执行第一操作集合和第二操作集合。虽然第一操作集合和第二操作集合可以包括相同操作中的一些操作,但是所述集合彼此不同在于它们不包括相同的操作集合。
在一些情况下,第一队列操作集合可以包括云队列的回放(并且第二操作集合可以不包括回放)。在操作中,媒体回放系统可以启动云队列的回放。例如,图14的媒体回放系统1404可以启动云队列1412在媒体回放系统1402中的一个或更多个回放设备上的回放。远程服务器1402可以从媒体回放系统1404接收对供回放的队列1412中的一个或更多个媒体项目的指示的请求。这样的请求可以用于使本地队列1414与云队列1412同步。远程服务器1402可以确定队列被分配有第一访问状态使得媒体回放系统被授权回放云队列1412,并且基于这样的确定,向媒体回放系统1404发送队列中的一个或更多个媒体项目的指示并且还可以发送相应源的指示,根据所述相应源的指示,媒体回放系统1104可以检索一个或更多个媒体项目。
在一些情况下,第一队列操作集合可以包括修改队列(并且第二操作集合可以不包括修改)。图14的媒体回放系统1404可以通过向远程服务器1402发送请求来请求在媒体回放系统1402的一个或更多个回放设备上修改云队列1412。例如,远程服务器1402可以接收通过将一个或更多个另外的媒体项目插入到队列中来修改云队列1412的请求。远程服务器1402可以确定队列被分配有第一访问状态使得媒体回放系统被授权修改队列,并且基于所述确定,根据请求来修改队列并且向媒体回放系统1404(并且可能还向媒体回放系统1406和1408)发送一个或更多个另外的媒体项目的指示。
在一些实施方式中,云队列可以具有有限的“寿命”。云队列在某些条件下可能过期。在这样的实施方式中,可以在其寿命期间向云队列分配第一访问状态并且可以向已经达到“寿命结束”或过期的云队列分配第二访问状态。
c.检测触发器
在块1306处,方法包括检测指示队列的访问状态的改变的触发器。例如,图14B的远程服务器1402可以检测指示云队列1412的访问状态的改变的触发器。如上面所指出的,在一些实施方式中,云队列可以具有有限的“寿命”并且触发器可以指示云队列的“寿命结束”。在各种实施方式中,触发器可以与不同的条件对应。
在一些实施方式中,触发器可以基于阈值持续时间而发生。例如,触发器可以基于自某个参考事件起经过的阈值持续时间而发生。参考事件可以包括队列的建立或者可能可以包括队列被回放的最后一个实例。在这样的示例中,检测触发器可以包括确定自参考事件发生(例如,自从队列被建立)起已经过了阈值持续时间。可替选地,云队列可以被限制于在达到寿命结束之前的特定回放持续时间。例如,检测触发器可以包括确定队列被回放的持续时间超过阈值持续时间。在该示例中,参考事件可以包括队列的回放的启动。
触发器可以基于与对队列的访问的范围有关的其他条件。例如,检测触发器可以包括确定一个或更多个媒体回放系统已将队列中的媒体项目回放了多于阈值数目的次数。在示例中,每个媒体项目可以被限制于特定阈值次数的播放,或者队列中的媒体项目可以被限制于组合阈值(例如,500次播放)。可替选地,检测触发器可以包括确定阈值数目的媒体回放系统已访问了队列,或者可能队列已被访问了阈值数目的次数。
在一些情况下,触发器可以与云队列内的媒体项目的许可限制对应。计算系统可以接收指示对于队列内的媒体项目中的每个媒体项目的相应许可限制的数据,并且基于这样的数据来标识触发器。例如,可以将来自特定标签的媒体项目限制于每周播放五次。为了遵循这样的限制,计算系统可以在达到这样的阈值之后改变队列的访问状态。
d.将队列的访问状态修改为第二访问状态
在块1308处,方法包括将队列的访问状态从第一访问状态修改为第二访问状态。例如,计算系统可以基于检测到指示访问状态的改变的触发器(例如,当检测到触发器时)来修改访问状态。如上面所指出的,第二访问状态指示了媒体回放系统被授权执行第二队列操作集合。第二操作集合可以包括较少的操作,或者包括涉及较小访问范围的操作。
例如,第二操作集合可以包括对队列的回放,但是可以不包括对队列的修改(对队列的修改可以包括在第一操作集合内)。返回参照图14B,远程服务器1402可以将云队列1412的访问状态从第一访问状态改变为第二访问状态。之后,远程服务器1402可以从媒体回放系统1404接收修改云队列1412(如通过将一个或更多个另外的媒体项目包括在队列中、从队列中移除项目或者对队列内的项目进行重新排序)的请求。远程服务器1402可以确定云队列1412被分配有第二访问状态使得媒体回放系统不被授权修改队列而不是修改云队列1412,远程服务器1402可以向媒体回放系统1404发送媒体回放系统不被授权修改队列的指示。
作为另一示例,第二操作集合可包括对队列子集的回放。例如,可以通过许可或其他限制来限制队列中的媒体项目中的一些媒体项目,然而可以不限制其他项目。为了说明,远程服务器1402可以从媒体回放系统1406接收对供回放的云队列1412中的一个或更多个媒体项目的指示的请求。远程服务器1402可以确定云队列1412被分配有第二访问状态使得媒体回放系统被授权回放队列的子集。远程服务器1402可以标识包括在子集中的媒体项目,并且向媒体回放系统1406发送所标识的媒体项目的指示。
其他的操作组合也是可以的。作为另外的示例,第二操作集合可以包括对队列的显示(并且可以不包括对队列的回放或修改),以使得队列仅可用于查看。如上面所指出的,媒体回放系统中的控制设备可以使图形接口显示云队列的指示,云队列的指示可以包括云队列中的媒体项目的指示,并且可能还包括对媒体项目的排序。这样的显示可以在一些访问状态下而不是在其他访问状态下被授权。作为另一示例,第二操作集合可以不包括回放。
e.发送第二访问状态的指示
在块1310处,方法包括向媒体回放系统发送第二访问状态的指示。例如,返回参照图14B,远程服务器1402可以向媒体回放系统1404(并且可能还可以向媒体回放系统1404和1408)发送云队列1412的第二访问状态的指示。当接收到第二访问状态的指示时,对云队列1412的访问可以限制于第二操作集合。
在一些情况下,接收到第二访问状态的指示可以引起对云队列的本地副本的删除(或移除)。例如,远程服务器1402可以向媒体回放系统1404、1406和1408发送云队列1412的第二访问状态的指示,该指示可以引起对本地队列1414、1416和1418的删除。更特别地,该指示可以包括引起本地队列移除的指令。
在一些情况下,第二访问状态的指示可以基于所请求的操作。例如,当接收到执行操作的请求时,计算系统可以确定队列的被分配的访问状态是否指示这样的操作被授权,并且作为响应允许或拒绝执行操作的请求。在允许请求时,计算系统可以执行所请求的操作并且向发出请求的媒体回放系统发送操作的指示。在拒绝请求时,计算系统可以发送这样的操作不被授权的指示,或者可能可以发送队列被分配有特定状态而在这种状态下操作不被允许的指示。
在一些实施方式中,可以将队列的访问状态从第二访问状态修改回到第一访问状态。例如,可能在某些条件下,可以恢复已过期的云队列。如果队列的访问状态可以被修改,则媒体回放系统可以接收到访问状态可以被修改的指示。这样的媒体回放系统可能可以基于检测到请求访问队列的输入数据来请求修改访问状态。当接收到这样的请求时,媒体回放系统可能可以基于上面所指出的许可数据来确定这样的请求是否被授权,并且在给定这样的操作被授权的情况下修改访问状态。
Ⅷ.根据云队列设置来控制对本地队列的访问的示例技术
如上面所指出的,本文所描述的实施方式可以包括基于云队列的各种设置或属性来控制对云队列的访问。图15示出了涉及具有两个或更多个访问状态的云队列的示例方法1500,其中,每个访问状态指示被允许执行的关于与云队列相关联的本地队列的不同队列操作集合。本地队列可以是云队列的本地实例(或副本)。
a.接收队列和队列的第一访问状态的指示
在方法1500的块1502处,方法包括接收媒体项目的队列的指示和队列具有第一访问状态的指示。例如,参照图14B,媒体回放系统1404的设备(例如,回放设备200或控制设备300的实例)可以接收云队列1412的指示和云队列1412具有第一访问状态的指示。如上面所指出的,第一访问状态可以指示回放设备被授权执行第一队列操作集合,如上面所指出的操作。
b.建立本地队列
在块1504处,方法包括建立本地队列。例如,媒体回放系统1404的回放设备可以建立本地队列1414,本地队列1414可以是云队列1412中的包括云队列1412中指示的媒体项目的本地实例。在一些情况下,本地实例可以包括云队列1412中的媒体项目的子集。子集可以包括一个或更多个媒体项目的序列,所述一个或更多个媒体项目包括可能通过播放头被指定为当前正在播放的媒体项目的媒体项目。
c.接收队列的第二访问状态的指示
在块1506处,方法包括接收队列已被分配有第二访问状态的指示。例如,媒体回放系统1404的回放设备可以接收云队列1402已被分配有第二访问状态的指示。如上面所指出的,第二访问状态可以指示媒体回放系统1404的回放设备被授权执行第二操作集合。第二访问状态可以指示队列已过期(即,达到寿命结束)并且因此队列仅可用于与在其寿命期间可用的操作相比的有限操作集合。
d.将本地队列限制于第二队列操作集合
在块1508处,方法包括将本地队列限制于第二操作集合。例如,媒体回放系统1404中的回放设备可以将本地队列1414限制于第二操作集合。在操作中,回放设备可能可以从控制设备接收执行关于本地队列和/或云队列的操作的请求。当接收到请求时,回放设备可以确定所请求的操作是否在第二操作集合中,并且在给定操作被授权的情况下执行操作。
回放设备还可以向媒体回放系统1404中的其他设备如一个或更多个另外的回放设备以及可能一个或更多个控制设备发送第二访问状态的指示。这可以在媒体回放系统1404中的设备之间分配云队列的状态。在一些情况下,媒体回放系统1404可以移除本地队列1414。例如,媒体回放系统中的每个设备可能可以基于接收到第二访问状态的指示来移除与云队列有关的数据。
如上面所指出的,在本地队列被限制之后,媒体回放系统1404可以执行第二操作集合。第二操作集合可以是与第一操作集合相比的有限操作集合。例如,在其他示例中,可以将队列的回放限制于媒体项目的子集或队列的显示。
Ⅳ.显示云队列设置的示例技术
图16示出了涉及云队列访问设定的显示的示例方法1600。
a.云队列的显示指示
在方法1600的块1602处,媒体回放系统中的控制设备可以显示控制器接口,如图4的控制器接口400。控制器接口可以包括媒体回放系统当前正在访问或已访问的一个或更多个云队列的指示。例如,控制器接口可以在回放队列区如图4的回放队列区440中显示媒体回放系统当前正在访问的云队列(即,“活跃的”队列)。在一些情况下,控制器接口可以包括媒体回放系统已经建立或访问的其他云队列和/或本地队列的指示。接口还可以包括对云队列的回放和/或修改的控制。
b.接收队列访问状态的指示
在块1604处,该方法包括接收队列的访问状态的指示。例如,控制设备可以从媒体回放系统中的回放设备或者可能从保持云队列或能够访问云队列的远程服务器接收云队列的访问状态的指示。控制设备可以周期性地接收访问状态的指示,或者可以在访问状态改变时接收访问状态的指示。
在一些实施方式中,接收访问状态可以包括接收在改变访问状态的触发器事件发生以前剩余“寿命”的指示。如上面所指出的,远程服务器可以基于触发器来修改云队列的访问状态。另外,触发器可以涉及与已经发生的队列访问的范围有关的各种阈值。在队列的寿命期间,控制器设备可以接收在达到触发器阈值之前剩余的寿命的量的一个或更多个指示。例如,控制设备可以接收在已经过了阈值持续时间之前剩余的时间的量的指示。作为另一示例,控制设备可以接收在达到阈值次数的回放之前剩余的回放的次数的指示。其他示例也是可以的。
c.显示队列访问状态的指示
在块1606处,方法包括使图形接口显示云队列的访问状态的指示。在一些实施方式中,控制器接口可以包括访问状态的指示(例如,云队列是具有第一访问状态还是具有第二访问状态)。例如,控制器接口可以指示云队列受限于寿命或云队列已过期(例如,达到寿命结束)。当队列达到寿命结束时,控制器接口可以指示云队列被限制于某些操作(即,第二操作集合)。控制设备可以显示能够操作成执行不在第二操作集合内的操作的控制器接口的控制。控制器接口可以例如通过改变不可用项目的颜色或外观来在视觉上改变以指示某些控件或项目不可用。
如上面所指出的,远程服务器可以基于触发器来修改云队列的访问状态。另外,触发器可以涉及与已经发生的队列访问的范围有关的各种阈值。在队列的寿命期间,控制器接口可以包括在达到触发器阈值之前剩余的寿命的量的指示。例如,控制器接口可以包括在已经过了阈值持续时间之前剩余的时间的量的指示。作为另一示例,控制器接口可以示出进度条或其他指示符,进度条或其他指示符示出在达到阈值次数的播放之前剩余多少次播放。用于示出队列的剩余寿命的其他示例指示也是可以的。
Ⅴ.结论
以上描述公开了各种示例系统、方法、装置以及包括固件和/或在硬件上执行的软件等部件的制品等。应当理解,这些示例仅是示意性的,而不应当被视为限制。例如,可以想到,这些固件、硬件和/或软件方面或部件中的任一个或全部可以专有地实施成硬件、专有地实施成软件、专有地实施成固件、或者实施成硬件、软件和/或固件的任意组合。因此,所提供的示例不是用于实现这样的系统、方法、装置和/或制品的唯一方式。
如上面所指出的,示例技术可以包括基于授权令牌控制对云队列的访问。一方面,提供了一种方法。该方法可以包括获得与远程服务器处的媒体项目的特定队列对应的授权令牌。该方法还可以包括发送:(i)所获得的授权令牌,以及(ii)对特定队列中的一个或更多个媒体项目的访问的请求。该方法还可以包括接收媒体回放系统能够访问一个或更多个媒体项目的指示。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括获得与远程服务器处的媒体项目的特定队列对应的授权令牌。所述功能还可以包括发送:(i)所获得的授权令牌,以及(ii)对特定队列中的一个或更多个媒体项目的访问的请求。所述功能还可以包括接收媒体回放系统能够访问一个或更多个媒体项目的指示。
再一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括获得与远程服务器处的媒体项目的特定队列对应的授权令牌。所述功能还可以包括发送:(i)所获得的授权令牌,以及(ii)对特定队列中的一个或更多个媒体项目的访问的请求。所述功能还可以包括接收媒体回放系统能够访问一个或更多个媒体项目的指示。
再一方面,提供了另一方法。该方法可以包括接收:(i)与特定媒体回放系统相关联的授权令牌,以及(ii)由媒体回放系统对媒体项目的队列的访问的请求。该方法还可以包括确定授权令牌给媒体回放系统认证的对队列的访问。该方法还可以包括向媒体回放系统提供授权令牌给媒体回放系统认证的对媒体项目的访问。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括接收:(i)与特定媒体回放系统相关联的授权令牌,以及(ii)由媒体回放系统对媒体项目的队列的访问的请求。所述功能还可以包括确定授权令牌给媒体回放系统认证的对队列的访问。所述功能还可以包括向媒体回放系统提供授权令牌给媒体回放系统认证的对媒体项目的访问。
再一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括接收:(i)与特定媒体回放系统相关联的授权令牌,以及(ii)由媒体回放系统对媒体项目的队列的访问的请求。所述功能还可以包括确定授权令牌给媒体回放系统认证的对队列的访问。所述功能还可以包括向媒体回放系统提供授权令牌给媒体回放系统认证的对媒体项目的访问。
还如上面所指示的,示例技术可以包括向实体授予相应类型的访问。在一方面,提供了一种方法。该方法可以包括接收:(i)来自第一媒体回放系统的对媒体项目的队列的访问的请求,以及(ii)来自第二媒体回放系统的对媒体项目的队列的访问的请求。该方法还可以包括:(i)给第一媒体回放系统授予第一类型的访问,以及(ii)给第二媒体回放系统授予第二类型的访问。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。该方法还可以包括提供:(i)第一媒体回放系统能够如第一类型的访问所授权的那样访问队列的指示,以及(ii)第二媒体回放系统能够如第二类型的访问所授权的那样访问队列的指示。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括接收:(i)来自多个第一媒体回放系统的对媒体项目的队列的相应访问的相应请求,以及(ii)来自第二媒体回放系统的对媒体项目的队列的访问的请求。所述功能还可以包括:(i)给第一媒体回放系统授予第一类型的访问,以及(ii)给第二媒体回放系统授予第二类型的访问。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。所述功能还可以包括:(i)向第一媒体回放系统提供如第一类型的访问权限所授权的对队列的访问,以及(ii)向第二媒体回放系统提供如第二类型的访问权限所授权的对队列的访问。
再一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括接收:(i)来自多个第一媒体回放系统的对媒体项目的队列的相应访问的相应请求,以及(ii)来自第二媒体回放系统的对媒体项目的队列的访问的请求。所述功能还可以包括:(i)给第一媒体回放系统授予第一类型的访问,以及(ii)给第二媒体回放系统授予第二类型的访问。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。所述功能还可以包括:(i)向第一媒体回放系统提供如第一类型的访问权限所授权的对队列的访问,以及(ii)向第二媒体回放系统提供如第二类型的访问权限所授权的对队列的访问。
再一方面,提供了另一种方法。该方法可以包括发送对媒体项目的队列的访问的请求。该方法还可以包括接收媒体回放系统能够如第一类型的访问所授权的那样访问队列的指示。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。该方法还可以包括接收队列中的一个或更多个媒体项目的指示。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括发送对媒体项目的队列的访问的请求。所述功能还可以包括接收媒体回放系统能够如第一类型的访问所授权的那样访问队列的指示。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。所述功能还可以包括接收队列中的一个或更多个媒体项目的指示。
再一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括发送对媒体项目的队列的访问的请求。所述功能还可以包括接收媒体回放系统能够如第一类型的访问所授权的那样访问队列的指示。第一类型的访问可以授权第一媒体回放系统对媒体项目的队列执行第一操作集合并且第二类型的访问可以授权第二媒体回放系统对媒体项目的队列执行第二操作集合,第二操作集合不同于第一操作集合。所述功能还可以包括接收队列中的一个或更多个媒体项目的指示。
如上面还指示的,示例技术可以包括基于云队列自身的配置或设置来控制对云队列的访问。在一方面,提供了一种方法。该方法可以包括接收建立媒体项目的队列的请求。该方法还可以包括向队列分配第一访问状态。第一访问状态可以指示至少一个媒体回放系统被授权执行第一队列操作集合。在向队列分配第一访问状态之后,该方法可以包括检测指示队列的访问状态的改变的触发器。基于所检测到的触发器,该方法可以包括将队列的访问状态从第一访问状态修改为第二访问状态。第二访问状态可以指示至少一个媒体回放系统被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。该方法还可以包括向媒体回放系统发送第二访问状态的指示。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括接收建立媒体项目的队列的请求。所述功能还可以包括向队列分配第一访问状态。第一访问状态可以指示至少一个媒体回放系统被授权执行第一队列操作集合。在向队列分配第一访问状态之后,所述功能可以包括检测指示队列的访问状态的改变的触发器。所述功能可以包括基于检测到的触发器将队列的访问状态从第一访问状态修改为第二访问状态。第二访问状态可以指示至少一个媒体回放系统被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。所述功能还可以包括向媒体回放系统发送第二访问状态的指示。
在另一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括接收建立媒体项目的队列的请求。所述功能还可以包括向队列分配第一访问状态。第一访问状态可以指示至少一个媒体回放系统被授权执行第一队列操作集合。在向队列分配第一访问状态之后,所述功能可以包括检测指示队列的访问状态的改变的触发器。所述功能可以包括基于检测到的触发器将队列的访问状态从第一访问状态修改为第二访问状态。第二访问状态可以指示至少一个媒体回放系统被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。所述功能还可以包括向媒体回放系统发送第二访问状态的指示。
在另一方面,提供了另一种方法。该方法可以包括接收:(i)媒体项目的队列的指示,以及(ii)队列具有第一访问状态的指示。第一访问状态可以指示回放设备被授权执行第一队列操作集合。该方法还可以包括建立队列的本地实例。该方法还可以包括接收队列已被分配有第二访问状态的指示。第二访问状态可以指示回放设备被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。该方法可以包括将队列的本地实例限制于第二队列操作集合。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括接收:(i)媒体项目的队列的指示,以及(ii)队列具有第一访问状态的指示。第一访问状态可以指示回放设备被授权执行第一队列操作集合。所述功能还可以包括建立队列的本地实例。所述功能还可以包括接收队列已被分配有第二访问状态的指示。第二访问状态可以指示回放设备被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。所述功能可以包括将队列的本地实例限制于第二队列操作集合。
再一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括接收:(i)媒体项目的队列的指示,以及(ii)队列具有第一访问状态的指示。第一访问状态可以指示回放设备被授权执行第一队列操作集合。所述功能还可以包括建立队列的本地实例。所述功能还可以包括接收队列已被分配有第二访问状态的指示。第二访问状态可以指示回放设备被授权执行第二队列操作集合,第二队列操作集合不同于第一队列操作集合。所述功能可以包括将队列的本地实例限制于第二队列操作集合。
在另一方面,提供了一种方法。该方法可以包括在图形接口上显示队列的指示。该方法还可以包括接收队列的访问状态的指示。该方法还可以包括显示队列的访问状态的指示。
在另一方面,提供了一种设备。该设备包括网络接口、至少一个处理器、数据存储装置以及存储在数据存储装置中的程序逻辑,程序逻辑能够由至少一个处理器运行以执行功能。所述功能可以包括在图形接口上显示队列的指示。所述功能还可以包括接收队列的访问状态的指示。所述功能还可以包括显示队列的访问状态的指示。
又一方面,提供了一种非暂态计算机可读存储器。该非暂态计算机可读存储器存储有指令,所述指令能够由计算设备执行以使该计算设备执行功能。所述功能可以包括在图形接口上显示队列的指示。所述功能还可以包括接收队列的访问状态的指示。所述功能还可以包括显示队列的访问状态的指示。
主要在说明性的环境、系统、过程、步骤、逻辑块、处理以及直接或间接地与耦接至网络的数据处理设备的操作相类似的其他象征性表示的方面上,提出本说明书。本领域技术人员通常使用这些处理描述和表示来向本领域其他技术人员最有效地传达他们的工作内容。阐述了各种具体细节,以提供对本公开内容的透彻理解。然而,本领域技术人员应当理解,在没有特定、具体细节的情况下也可以实施本公开内容的某些实施方式。在其他实例中,没有详细描述熟知的方法、过程、组件和电路,以避免不必要地使实施方式的方面模糊不清。因此,本公开内容的范围由所附权利要求书而不是由以上对实施方式的描述来限定。
当所附权利要求书中的任意权利要求被理解成涵盖纯软件和/或固件的实现时,在此将至少一个示例中的至少一个单元明确限定成包括存储软件和/或固件的有形非暂态介质如存储器、DVD、CD、蓝光等。

Claims (61)

1.一种方法,包括:
由媒体回放系统经由网络接口获得与远程服务器处的媒体项目的特定队列对应的授权令牌;
由所述媒体回放系统向所述远程服务器发送:(i)所获得的授权令牌,以及(ii)对所述特定队列中的一个或更多个媒体项目的访问的请求;以及
由所述媒体回放系统从所述远程服务器接收所述媒体回放系统能够访问所述一个或更多个媒体项目的指示。
2.根据权利要求1所述的方法,其中,所述授权令牌与访问权限相关联,其中,所述访问权限包括允许显示所述队列的显示权限,其中,接收所述媒体回放系统能够访问所述一个或更多个媒体项目的所述指示包括:接收指示所述特定队列中的所述一个或更多个媒体项目的数据,并且其中,所述方法还包括:
由所述媒体回放系统中的控制设备使图形接口显示所述一个或更多个媒体项目的相应指示。
3.根据权利要求1所述的方法,其中,所述授权令牌与访问权限相关联,其中,所述访问权限包括允许将所述特定队列中的所述媒体项目添加至一个或更多个本地队列的队列权限,其中,接收所述媒体回放系统能够访问所述一个或更多个媒体项目的所述指示包括:接收指示(i)所述特定队列中的所述一个或更多个媒体项目以及(ii)所述一个或更多个媒体项目的相应源的数据,并且其中,所述方法还包括:
将所述特定队列中的所述一个或更多个媒体项目添加至所述媒体回放系统的本地队列。
4.根据权利要求1所述的方法,其中,与所获得的授权令牌相关联的所述访问权限包括允许所述特定队列中的所述媒体项目的回放的回放权限,其中,接收所述媒体回放系统能够访问所述一个或更多个媒体项目的所述指示包括:接收指示(i)所述特定队列中的所述一个或更多个媒体项目以及(ii)所述一个或更多个媒体项目的相应源的数据,并且其中,所述方法还包括:
从所述相应源获得所述一个或更多个媒体项目中的至少一个媒体项目。
5.根据权利要求1所述的方法,还包括接收如下指示:所获得的授权令牌已过期,使得对所述远程服务器处的媒体项目的所述队列的访问从所述媒体回放系统被撤回。
6.根据权利要求1所述的方法,其中,获得与所述远程服务器处的媒体项目的所述特定队列对应的所述授权令牌包括:
向所述远程服务器发送对认证所述媒体回放系统中的一个或更多个特定设备同步地回放所述远程服务器处的所述队列中的媒体项目的授权令牌的请求;以及
接收所请求的授权令牌,其中,所接收的授权令牌认证所述媒体回放系统中的所述一个或更多个特定设备同步地回放所述远程服务器处的所述队列中的媒体项目。
7.根据权利要求1所述的方法,其中,所述媒体回放系统与特定账户相关联,并且其中,获得与远程服务器处的媒体项目的所述特定队列对应的所述授权令牌包括:
向所述远程服务器发送对认证所述特定账户访问所述远程服务器处的所述队列的授权令牌的请求;以及
接收所请求的授权令牌,其中,所接收的授权令牌认证向所述特定账户注册了的控制器访问所述远程服务器处的所述队列。
8.根据权利要求1所述的方法,其中,获得与所述远程服务器处的媒体项目的所述特定队列对应的所述授权令牌包括:
(i)将所述媒体回放系统的给定会话的指示发送至所述远程服务器,其中,所述给定会话具有持续时间;以及(ii)发送对认证所述媒体回放系统在所述给定会话的所述持续时间内访问所述远程服务器处的所述队列的授权令牌的请求;以及
接收所请求的认证令牌,其中,所接收的授权令牌认证所述媒体回放系统在所述给定会话的所述持续时间内访问所述远程服务器处的所述队列。
9.根据权利要求8所述的方法,还包括:
基于由所述媒体回放系统在所述给定会话期间对所述队列中的所述媒体项目的回放,向所述远程服务器发送更新所接收的授权令牌的请求。
10.根据权利要求9所述的方法,还包括:
接收更新了的授权令牌,其中,所接收的授权令牌认证所述媒体回放系统在所述给定会话的第二持续时间内访问所述远程服务器处的所述队列。
11.根据权利要求1所述的方法,其中,获得与远程服务器处的媒体项目的特定队列对应的所述授权令牌包括:
接收表示超文本传输协议头部的数据,其中,所述超文本传输协议头部指示认证对远程服务器处的媒体项目的队列的访问权限的授权码。
12.根据权利要求1所述的方法,其中,获得与远程服务器处的媒体项目的特定队列对应的所述授权令牌包括:
由所述媒体回放系统中的控制设备发送对认证对所述远程服务器处的所述队列的访问的授权令牌的请求;
由所述控制设备接收所请求的授权令牌,其中,所接收的授权令牌认证所述控制设备访问所述远程服务器处的所述队列;以及
由所述控制设备将所接收的授权令牌发送至所述媒体回放系统中的一个或更多个回放设备,其中,所接收的授权令牌认证所述一个或更多个回放设备访问所述远程服务器处的所述队列。
13.根据权利要求1所述的方法,其中,获得与远程服务器处的媒体项目的特定队列对应的所述授权令牌包括:
由所述媒体回放系统中的回放设备发送对认证对所述远程服务器处的所述队列的访问的授权令牌的请求;
由所述回放设备接收所请求的授权令牌,其中,所接收的授权令牌认证所述回放设备访问所述远程服务器处的所述队列;以及
由第一回放设备将所接收的授权令牌发送至所述媒体回放系统中的一个或更多个另外的设备,其中,所接收的授权令牌认证所述一个或更多个另外的回放设备访问所述远程服务器处的所述队列。
14.一种计算设备,包括:
网络接口;
至少一个处理器;
数据存储装置;以及
存储在所述数据存储装置中的程序逻辑,所述程序逻辑能够由所述至少一个处理器执行以:
经由所述网络接口获得与远程服务器处的媒体项目的特定队列对应的授权令牌;
向所述远程服务器发送:(i)所获得的授权令牌,以及(ii)对所述特定队列中的一个或更多个媒体项目的访问的请求;以及
接收媒体回放系统能够访问所述一个或更多个媒体项目的指示。
15.一种方法,包括:
由计算系统接收:(i)与特定媒体回放系统相关联的授权令牌,以及(ii)由所述媒体回放系统对媒体项目的队列的访问的请求;
由所述计算系统确定所述授权令牌给所述媒体回放系统认证的对所述队列的访问;以及
由所述计算系统向所述媒体回放系统提供所述授权令牌给所述媒体回放系统认证的对所述媒体项目的访问。
16.根据权利要求15所述的方法,还包括:
接收:(i)对认证所述媒体回放系统访问媒体项目的所述队列的授权令牌的请求,以及(ii)与所述媒体回放系统相关联的一个或更多个证书;以及
确定所述一个或更多个证书授权所述媒体回放系统访问媒体项目的所述队列;以及
基于确定了所述一个或更多个证书授权所述媒体回放系统访问媒体项目的所述队列,向所述媒体回放系统发送认证所述媒体回放系统访问媒体项目的所述队列的所请求的授权令牌。
17.根据权利要求15所述的方法,还包括:
接收:(i)所述媒体回放系统的给定会话的指示,其中,所述给定会话具有持续时间;以及(ii)对认证所述媒体回放系统在所述给定会话的所述持续时间内访问所述远程服务器处的所述队列的授权令牌的请求;以及
其中,确定所述授权令牌给所述媒体回放系统认证的对所述队列的访问包括:根据已经过了所述会话的所述持续时间来确定所述授权令牌已过期,其中,所述授权令牌的过期撤回对媒体项目的所述队列的访问。
18.根据权利要求17所述的方法,还包括:
接收:(i)更新所接收的授权令牌的请求,以及(ii)指示在所述给定会话期间所述队列中的所述媒体项目的回放历史的数据;
基于所接收的回放历史,确定在所述给定会话期间对所述队列中的所述媒体项目的回放超过用于更新所述授权令牌的阈值;以及
基于确定了在所述给定会话期间对所述队列中的所述媒体项目的回放超过用于更新所述授权令牌的阈值,发送更新了的授权令牌,其中,所接收的授权认证所述媒体回放系统在所述给定会话的第二持续时间内访问所述远程服务器处的所述队列。
19.根据权利要求15所述的方法:
其中,确定所述授权令牌给所述媒体回放系统认证的对所述队列的访问包括:确定所述授权令牌已过期;并且
其中,向所述媒体回放系统提供所述授权令牌给所述媒体回放系统认证的对所述媒体项目的访问包括:向所述媒体回放系统发送如下指示:所述授权令牌已过期,使得对所述远程服务器处的媒体项目的所述队列的访问被撤回。
20.根据权利要求15所述的方法:
其中,确定所述授权令牌给所述媒体回放系统认证的对所述队列的访问包括:确定所述授权令牌授权对媒体项目的所述队列的第一类型的访问,其中,所述第一类型的访问授权所述媒体回放系统中的所述一个或更多个回放设备回放所述队列中的所述媒体项目;并且
其中,向所述媒体回放系统提供所述授权令牌给所述媒体回放系统认证的对所述媒体项目的访问包括:将所述队列中的一个或更多个媒体项目的相应指示发送至所述媒体回放系统中的一个或更多个回放设备。
21.根据权利要求15所述的方法:
其中,确定由所述授权令牌给所述媒体回放系统授予的对所述队列的访问权限包括:确定所述授权令牌授权对媒体项目的所述队列的第二类型的访问,其中,所述第二类型的访问授权所述媒体回放系统修改所述队列;并且
其中,向所述媒体回放系统提供所述授权令牌给所述媒体回放系统认证的对所述媒体项目的访问包括:
从所述媒体回放系统接收指示对所述队列的一个或更多个修改的数据;以及
基于授予对媒体项目的所述队列的完全访问权限的所述授权令牌,允许对所述队列的所述一个或更多个修改。
22.一种方法,包括:
由计算系统经由网络接口接收:(i)来自第一媒体回放系统的对媒体项目的队列的访问的请求,以及(ii)来自第二媒体回放系统的对媒体项目的所述队列的访问的请求;
由所述计算系统:(i)给所述第一媒体回放系统授予第一类型的访问,其中,所述第一类型的访问授权所述第一媒体回放系统对媒体项目的所述队列执行第一操作集合,以及(ii)给所述第二媒体回放系统授予第二类型的访问,其中,所述第二类型的访问授权所述第二媒体回放系统对媒体项目的所述队列执行第二操作集合,并且其中,所述第二操作集合不同于所述第一操作集合;以及
由所述计算系统经由所述网络接口提供:(i)所述第一媒体回放系统能够如所述第一类型的访问所授权的那样访问所述队列的指示,以及(ii)所述第二媒体回放系统能够如所述第二类型的访问所授权的那样访问所述队列的指示。
23.根据权利要求22所述的方法,其中,所述第一操作集合对应于对所述队列的回放的控制,并且其中,所述第二操作集合对应于对所述队列的操纵。
24.根据权利要求22所述的方法:
其中,所述第一操作集合包括启动所述队列在给定媒体回放系统上的回放;并且
其中,所述第二操作集合包括以下中的一个或更多个:将媒体项目插入到所述队列中;从所述队列中移除媒体项目;以及对所述队列中的媒体项目进行重新排序。
25.根据权利要求22所述的方法,还包括:
从所述第一媒体回放系统接收回放所述队列的请求;
确定给所述第一媒体回放系统授予的所述第一类型的访问授权所述第一媒体回放系统回放所述队列;以及
向所述第一媒体回放系统发送指示(i)所述队列中的一个或更多个媒体项目以及(ii)所述一个或更多个媒体项目的相应源的数据,其中,所述一个或更多个媒体项目能够由所述第一媒体回放系统从所述相应源中播放。
26.根据权利要求22所述的方法,还包括:
从所述第二媒体回放系统接收将播放头从所述队列中的第一位置改变为所述队列内的第二位置的请求,其中,所述播放头指示所述队列中的与当前正在播放的特定媒体项目对应的给定位置;
确定给所述第二媒体回放系统授予的所述第二类型的访问授权所述第二媒体回放系统改变所述播放头的位置;以及
基于确定了给所述第二媒体回放系统授予的所述第二类型的访问权限授权所述第二媒体回放系统改变所述播放头的位置,将所述播放头从所述第一位置改变为所述第二位置。
27.根据权利要求26所述的方法,还包括:
检测出播放头已移动至所述队列内的一个或更多个相应位置,其中,所述播放头指示所述队列中的与当前正在播放的特定媒体项目对应的给定位置;以及
向所述第一媒体回放系统发送所述一个或更多个相应位置的相应指示。
28.根据权利要求22所述的方法,还包括:
接收给所述第一媒体回放系统授予所述第二类型的访问的请求;
确定给所述第一媒体回放系统授予所述第二类型的访问将超过媒体回放系统的阈值数目;以及
基于确定了给所述第一媒体回放系统授予所述第二类型的访问将超过媒体回放系统的阈值数目,拒绝给所述第一媒体回放系统授予所述第二类型的访问的请求。
29.根据权利要求22所述的方法,其中,接收来自第二媒体回放系统的对媒体项目的所述队列的访问的请求包括:接收来自所述第二媒体回放系统的建立所述队列的请求;并且其中,给所述第二媒体回放系统授予所述第二类型的访问包括:
确定所述第二媒体回放系统已建立了所述队列;以及
基于确定了所述第二媒体回放系统已建立了所述队列,给所述第二媒体回放系统授予所述第二类型的访问。
30.一种计算系统,包括:
网络接口;
至少一个处理器;
数据存储装置;以及
存储在所述数据存储装置中的程序逻辑,所述程序逻辑能够由所述至少一个处理器执行以:
经由所述网络接口接收:(i)来自多个第一媒体回放系统的对媒体项目的队列的相应访问的相应请求,以及(ii)来自第二媒体回放系统的对媒体项目的所述队列的访问的请求;
(i)给所述第一媒体回放系统授予第一类型的访问,其中,所述第一类型的访问授权所述第一媒体回放系统对媒体项目的所述队列执行第一操作集合;以及(ii)给所述第二媒体回放系统授予第二类型的访问,其中,所述第二类型的访问授权所述第二媒体回放系统对媒体项目的所述队列执行第二操作集合,其中,所述第二操作集合不同于所述第一操作集合;以及
经由所述网络接口:(i)向所述第一媒体回放系统提供如所述第一类型的访问权限所授权的对所述队列的访问,以及(ii)向所述第二媒体回放系统提供如所述第二类型的访问权限所授权的对所述队列的访问。
31.根据权利要求30所述的计算系统,其中,向所述多个第一媒体回放系统提供如所述第一类型的访问所授权的对所述队列的访问包括:
启动所述队列在所述第一媒体回放系统上的同步回放。
32.根据权利要求30所述的计算系统,其中,接收(i)来自所述多个第一媒体回放系统的对媒体项目的所述队列的相应访问的相应请求、以及(ii)来自所述第二媒体回放系统的对媒体项目的所述队列的访问的请求包括:接收(i)来自所述多个第一媒体回放系统的相应证书、以及(ii)来自所述第二媒体回放系统的证书;并且其中,(i)给所述第一媒体回放系统授予所述第一类型的访问、以及(ii)给所述第二媒体回放系统授予所述第二类型的访问包括:确定(i)来自所述多个第一媒体回放系统的相应证书授权所述第一媒体回放系统被授予所述第一类型的访问、以及(ii)来自所述第二媒体回放系统的证书授权所述第二媒体回放系统被授予所述第二类型的访问。
33.根据权利要求30所述的计算系统,其中,所述程序逻辑还能够由所述至少一个处理器执行以:
从所述第二媒体回放系统接收将播放头从所述队列内的第一位置改变为所述队列内的第二位置的请求;
确定给所述第二媒体回放系统授予的访问权限授权所述第二媒体回放系统改变所述播放头的位置;以及
使所述第一媒体回放系统中的一个或更多个相应回放设备回放与所述第二位置对应的媒体项目。
34.根据权利要求30所述的计算系统,其中,所述程序逻辑还能够由所述至少一个处理器执行以:
检测出所述第二媒体回放系统已被授予在阈值持续时间内进行所述第二类型的访问;以及
基于检测出所述第二媒体回放系统已被授予在阈值持续时间内进行所述第二类型的访问,给所述第一媒体回放系统中的至少一个媒体回放系统授予所述第二类型的访问并且给所述第二媒体回放系统授予所述第一类型的访问。
35.根据权利要求30所述的计算系统,其中,所述程序逻辑还能够由所述至少一个处理器执行以:
接收来自一个或更多个第三媒体回放系统的对媒体项目的所述队列的相应访问的相应请求;
确定所述相应请求是来自所述一个或更多个第三媒体回放系统的对媒体项目的所述队列的相应访问的请求的相应第一实例;以及
基于确定了所述相应请求是来自所述一个或更多个第三媒体回放系统的对媒体项目的所述队列的相应访问的请求的相应第一实例,给所述一个或更多个第三媒体回放系统授予在预定持续时间内进行所述第二类型的访问。
36.根据权利要求30所述的计算系统,其中,所述程序逻辑还能够由所述至少一个处理器执行以:
接收来自所述第二媒体回放系统的给特定的第一媒体回放系统授予所述第二类型的访问的请求;
确定给所述第二媒体回放系统授予的所述第二类型的访问授权所述第二媒体回放系统授予所述第二类型的访问;以及
基于确定了给所述第二媒体回放系统授予的所述第二类型的访问授权所述第二媒体回放系统授予所述第二类型的访问,给所述特定的第一媒体回放系统授予所述第二类型的访问。
37.一种方法,包括:
由媒体回放系统中的设备发送对媒体项目的队列的访问的请求;
由所述设备接收所述媒体回放系统能够如第一类型的访问所授权的那样访问所述队列的指示,其中,所述第一类型的访问授权所述第一媒体回放系统对媒体项目的所述队列执行第一操作集合,并且其中,第二类型的访问授权所述第二媒体回放系统对媒体项目的所述队列执行第二操作集合,所述第二操作集合不同于所述第一操作集合;以及
由所述设备接收所述队列中的一个或更多个媒体项目的指示。
38.根据权利要求37所述的方法,其中,所述第一操作集合包括对所述队列的回放,并且其中,所述第二操作集合包括对所述队列的操纵。
39.根据权利要求37所述的方法,其中,所述第一操作集合包括所述队列在所述媒体回放系统上的回放,所述方法还包括:
接收播放头的相应位置的指示,其中,所述播放头指示所述队列中的与当前正在播放的特定媒体项目对应的位置;以及
启动所述队列的与所述播放头同步的回放。
40.根据权利要求37所述的方法,所述方法还包括:
由所述设备接收所述媒体回放系统能够如所述第二类型的访问所授权的那样访问所述队列的指示;以及
发送将播放头从所述队列内的第一位置改变为所述队列内的第二位置的请求,其中,所述播放头指示所述队列中的与当前正在播放的特定媒体项目对应的位置。
41.根据权利要求37所述的方法,其中,所述第一操作集合包括对所述队列的修改,所述方法还包括:
由所述设备接收所述媒体回放系统能够如所述第二类型的访问所授权的那样访问所述队列的指示;以及
发送将一个或更多个另外的媒体项目添加至所述队列以便修改所述队列的请求。
42.一种方法,包括:
由计算系统接收建立媒体项目的队列的请求;
由所述计算系统向所述队列分配第一访问状态,其中,所述第一访问状态指示了至少一个媒体回放系统被授权执行第一队列操作集合;
在向所述队列分配所述第一访问状态之后,由所述计算系统检测指示所述队列的访问状态的改变的触发器;
基于所检测到的触发器,由所述计算系统将所述队列的访问状态从所述第一访问状态修改为第二访问状态,其中,所述第二访问状态指示了所述至少一个媒体回放系统被授权执行第二队列操作集合,其中,所述第二队列操作集合不同于所述第一队列操作集合;以及
由所述计算系统将所述第二访问状态的指示发送至媒体回放系统。
43.根据权利要求42所述的方法,其中,检测指示所述队列的访问状态的改变的所述触发器包括:
确定自所述队列被建立起已经过了阈值持续时间。
44.根据权利要求42所述的方法,其中,检测指示所述队列的访问状态的改变的所述触发器包括:
确定所述队列已被播放的持续时间超过阈值持续时间。
45.根据权利要求42所述的方法,其中,检测指示所述队列的访问状态的改变的所述触发器包括:
确定一个或更多个媒体回放系统已将所述队列中的所述媒体项目回放了多于阈值数目的次数。
46.根据权利要求42所述的方法,其中,检测指示所述队列的访问状态的改变的所述触发器包括:
确定阈值数目的媒体回放系统已访问了所述队列。
47.根据权利要求42所述的方法,其中,所述第一队列操作集合包括对所述队列的修改,所述方法还包括:
接收来自媒体回放系统的通过插入一个或更多个另外的媒体项目来修改所述队列的请求;
确定所述队列被分配有所述第一访问状态使得媒体回放系统被授权修改所述队列;以及
基于确定了所述队列被分配有所述第一访问状态使得媒体回放系统被授权修改所述队列,修改所述队列并且将所述队列中的所述一个或更多个另外的媒体项目的指示发送至所述媒体回放系统。
48.根据权利要求42所述的方法,其中,所述第一队列操作集合包括回放,所述方法还包括:
接收来自媒体回放系统的对供回放的所述队列中的一个或更多个媒体项目的指示的请求;
确定所述队列被分配有所述第一访问状态使得媒体回放系统被授权回放所述队列;以及
基于确定了所述队列被分配有所述第一访问状态使得媒体回放系统被授权回放所述队列,向所述媒体回放系统发送:(i)所述队列中的所述一个或更多个媒体项目的指示,以及(ii)所述一个或更多个媒体项目的相应源的指示。
49.根据权利要求42所述的方法,其中,所述第二队列操作集合不包括回放,所述方法还包括:
接收来自媒体回放系统的对供回放的所述队列中的一个或更多个媒体项目的指示的请求;
确定所述队列被分配有所述第二访问状态使得媒体回放系统不被授权回放所述队列;以及
基于确定了所述队列被分配有所述第二访问状态使得媒体回放系统不被授权回放所述队列,向所述媒体回放系统发送所述队列被分配有所述第二访问状态的指示。
50.根据权利要求42所述的方法,还包括:
向所述媒体回放系统发送所述队列的访问状态能够从所述第二访问状态被修改为第一访问状态的指示。
51.根据权利要求50所述的方法,还包括:
在发送所述队列的访问状态能够被修改的指示之后,从所述媒体回放系统接收将所述队列从所述第二访问状态修改为第一访问状态的请求;
确定所述媒体回放系统被授权将所述队列从所述第二访问状态修改为第一访问状态;以及
将所述队列从所述第二访问状态修改为第一访问状态。
52.根据权利要求50所述的方法,其中,发送所述队列被分配有所述第二访问状态的指示包括:
向所述媒体回放系统发送使所述媒体回放系统移除所述队列的本地实例的指令。
53.根据权利要求42所述的方法,其中,所述第二队列操作集合包括对所述队列的回放并且不包括对所述队列的修改,所述方法还包括:
接收来自媒体回放系统的通过将一个或更多个另外的媒体项目包括在所述队列中来修改所述队列的请求;
确定所述队列被分配有所述第二访问状态使得媒体回放系统不被授权修改所述队列;以及
基于确定了所述队列被分配有所述第二访问状态使得媒体回放系统不被授权修改所述队列,向所述媒体回放系统发送所述媒体回放系统不被授权修改所述队列的指示。
54.根据权利要求42所述的方法,其中,所述第二队列操作集合包括对所述队列的子集的回放,所述方法还包括:
接收来自媒体回放系统的对供回放的所述队列中的一个或更多个媒体项目的指示的请求;
确定所述队列被分配有所述第二访问状态使得媒体回放系统被授权回放所述队列的所述子集;
标识包括在所述队列的所述子集中的所述一个或更多个媒体项目中的至少一个媒体项目;以及
向所述媒体回放系统发送:(i)所述至少一个媒体项目的指示,以及(ii)所述至少一个媒体项目的相应源的指示。
55.根据权利要求42所述的方法,其中,所述第二队列操作集合包括对所述队列的显示,所述方法还包括:
接收来自媒体回放系统的对供显示的所述队列中的一个或更多个媒体项目的指示的请求;
确定所述队列被分配有所述第二访问状态使得媒体回放系统被授权显示所述队列的子集;以及
将所述至少一个媒体项目的指示发送至所述媒体回放系统。
56.一种计算系统,包括:
网络接口;
至少一个处理器;
数据存储装置;以及
存储在所述数据存储装置中的程序逻辑,所述程序逻辑能够由所述至少一个处理器执行以:
接收建立媒体项目的队列的请求;
向所述队列分配第一访问状态,其中,所述第一访问状态指示了至少一个媒体回放系统被授权执行第一队列操作集合;
在向所述队列分配所述第一访问状态之后,检测指示所述队列的访问状态的改变的触发器;
基于所检测到的触发器,将所述队列的访问状态从所述第一访问状态修改为第二访问状态,其中,所述第二访问状态指示了媒体回放系统被授权执行第二队列操作集合,其中,所述第二队列操作集合不同于所述第一队列操作集合;以及
将所述第二访问状态的指示发送至媒体回放系统。
57.一种回放设备,包括:
网络接口;
至少一个处理器;
数据存储装置;以及
存储在所述数据存储装置中的程序逻辑,所述程序逻辑能够由所述至少一个处理器执行以:
从计算系统接收:(i)媒体项目的队列的指示,以及(ii)所述队列具有第一访问状态的指示,其中,所述第一访问状态指示了所述回放设备被授权执行第一队列操作集合;
建立所述队列的本地实例;
从所述计算系统接收所述队列已被分配有第二访问状态的指示,其中,所述第二访问状态指示了所述回放设备被授权执行第二队列操作集合,其中,所述第二队列操作集合不同于所述第一队列操作集合;以及
将所述队列的所述本地实例限制于所述第二队列操作集合。
58.根据权利要求57所述的回放设备,其中,所述程序逻辑还能够被执行以:
基于接收到所述队列已被分配有第二访问状态的指示,删除所述队列的所述本地实例。
59.根据权利要求57所述的回放设备,其中,所述回放设备是媒体回放系统中的设备,并且其中,所述程序逻辑还能够被执行以:
向所述媒体回放系统中的一个或更多个另外的设备发送所述队列已被分配有所述第二访问状态的指示。
60.根据权利要求57所述的回放设备,其中,所述回放设备是媒体回放系统中的设备,其中,队列操作的子集包括对所述队列的子集的回放,并且其中,所述程序逻辑还能够被执行以:
从所述媒体回放系统中的控制器接收回放所述队列的请求;
向所述控制器发送所述队列的所述子集的指示;以及
启动所述队列的所述子集中的一个或更多个媒体项目的回放。
61.根据权利要求57所述的回放设备,其中,所述回放设备是媒体回放系统中的设备,其中,所述第二队列操作集合包括对所述队列的显示,并且其中,所述程序逻辑还能够被执行以:
从所述媒体回放系统中的控制器接收对供显示的所述队列中的一个或更多个媒体项目的指示的请求;
基于接收到所请求的供显示的所述队列中的一个或更多个媒体项目的指示,向所述计算系统发送对供显示的所述队列中的至少一个媒体项目的指示的请求;以及
将所接收的所述一个或更多个媒体项目中的至少一个媒体项目的指示发送至所述控制器。
CN201580041499.3A 2014-06-04 2015-05-28 云队列访问方法、计算设备和云队列访问控制方法 Active CN106664300B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201810784436.2A CN109088917A (zh) 2014-06-04 2015-05-28 云队列访问控制

Applications Claiming Priority (9)

Application Number Priority Date Filing Date Title
US201462007906P 2014-06-04 2014-06-04
US62/007,906 2014-06-04
US14/616,319 US9729599B2 (en) 2014-06-04 2015-02-06 Cloud queue access control
US14/616,319 2015-02-06
US14/616,325 US9363254B2 (en) 2014-06-04 2015-02-06 Cloud queue access control
US14/616,325 2015-02-06
US14/616,310 2015-02-06
US14/616,310 US9537852B2 (en) 2014-06-04 2015-02-06 Cloud queue access control
PCT/US2015/033003 WO2015187463A1 (en) 2014-06-04 2015-05-28 Cloud queue access control

Related Child Applications (1)

Application Number Title Priority Date Filing Date
CN201810784436.2A Division CN109088917A (zh) 2014-06-04 2015-05-28 云队列访问控制

Publications (2)

Publication Number Publication Date
CN106664300A true CN106664300A (zh) 2017-05-10
CN106664300B CN106664300B (zh) 2018-08-14

Family

ID=54769617

Family Applications (4)

Application Number Title Priority Date Filing Date
CN201580041499.3A Active CN106664300B (zh) 2014-06-04 2015-05-28 云队列访问方法、计算设备和云队列访问控制方法
CN201811599986.3A Active CN110086845B (zh) 2014-06-04 2015-05-28 回放设备、回放方法和有形非暂态计算机可读介质
CN201580041535.6A Active CN106537838B (zh) 2014-06-04 2015-05-28 媒体回放设备、方法和系统
CN201810784436.2A Pending CN109088917A (zh) 2014-06-04 2015-05-28 云队列访问控制

Family Applications After (3)

Application Number Title Priority Date Filing Date
CN201811599986.3A Active CN110086845B (zh) 2014-06-04 2015-05-28 回放设备、回放方法和有形非暂态计算机可读介质
CN201580041535.6A Active CN106537838B (zh) 2014-06-04 2015-05-28 媒体回放设备、方法和系统
CN201810784436.2A Pending CN109088917A (zh) 2014-06-04 2015-05-28 云队列访问控制

Country Status (4)

Country Link
US (20) US9537852B2 (zh)
EP (4) EP3111589A4 (zh)
JP (2) JP6193515B1 (zh)
CN (4) CN106664300B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109302376A (zh) * 2018-03-30 2019-02-01 浙江甲骨文超级码科技股份有限公司 一种账户生码方法、账户授权方法以及账户取码方法
CN111788560A (zh) * 2018-02-28 2020-10-16 国际商业机器公司 分布式存储网络中的动态授权批处理

Families Citing this family (204)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8677377B2 (en) 2005-09-08 2014-03-18 Apple Inc. Method and apparatus for building an intelligent automated assistant
US8106856B2 (en) 2006-09-06 2012-01-31 Apple Inc. Portable electronic device for photo management
US9318108B2 (en) 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US8977255B2 (en) 2007-04-03 2015-03-10 Apple Inc. Method and system for operating a multi-function portable electronic device using voice-activation
US10002189B2 (en) 2007-12-20 2018-06-19 Apple Inc. Method and apparatus for searching using an active ontology
US9330720B2 (en) 2008-01-03 2016-05-03 Apple Inc. Methods and apparatus for altering audio output signals
US20100030549A1 (en) 2008-07-31 2010-02-04 Lee Michael M Mobile device having human language translation capability with positional feedback
US8676904B2 (en) 2008-10-02 2014-03-18 Apple Inc. Electronic devices with voice command and contextual data processing capabilities
US8984431B2 (en) 2009-03-16 2015-03-17 Apple Inc. Device, method, and graphical user interface for moving a current position in content at a variable scrubbing rate
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US8698762B2 (en) 2010-01-06 2014-04-15 Apple Inc. Device, method, and graphical user interface for navigating and displaying content in context
US10276170B2 (en) 2010-01-18 2019-04-30 Apple Inc. Intelligent automated assistant
US8682667B2 (en) 2010-02-25 2014-03-25 Apple Inc. User profiling for selecting user specific voice input processing information
US9262612B2 (en) 2011-03-21 2016-02-16 Apple Inc. Device access using voice authentication
US10057736B2 (en) 2011-06-03 2018-08-21 Apple Inc. Active transport based notifications
US10706096B2 (en) 2011-08-18 2020-07-07 Apple Inc. Management of local and remote media items
US9002322B2 (en) 2011-09-29 2015-04-07 Apple Inc. Authentication with secondary approver
US9665339B2 (en) 2011-12-28 2017-05-30 Sonos, Inc. Methods and systems to select an audio track
US10134385B2 (en) 2012-03-02 2018-11-20 Apple Inc. Systems and methods for name pronunciation
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
JP2016508007A (ja) 2013-02-07 2016-03-10 アップル インコーポレイテッド デジタルアシスタントのためのボイストリガ
US10652394B2 (en) 2013-03-14 2020-05-12 Apple Inc. System and method for processing voicemail
WO2014143776A2 (en) 2013-03-15 2014-09-18 Bodhi Technology Ventures Llc Providing remote interactions with host device using a wireless device
US10748529B1 (en) 2013-03-15 2020-08-18 Apple Inc. Voice activated device for use with a voice-based digital assistant
WO2014197335A1 (en) 2013-06-08 2014-12-11 Apple Inc. Interpreting and acting upon commands that involve sharing information with remote devices
US10176167B2 (en) 2013-06-09 2019-01-08 Apple Inc. System and method for inferring user intent from speech inputs
CN110442699A (zh) 2013-06-09 2019-11-12 苹果公司 操作数字助理的方法、计算机可读介质、电子设备和系统
US10296160B2 (en) 2013-12-06 2019-05-21 Apple Inc. Method for extracting salient dialog usage from live data
USD792420S1 (en) * 2014-03-07 2017-07-18 Sonos, Inc. Display screen or portion thereof with graphical user interface
USD775632S1 (en) 2014-03-07 2017-01-03 Sonos, Inc. Display screen or portion thereof with graphical user interface
US10170123B2 (en) 2014-05-30 2019-01-01 Apple Inc. Intelligent assistant for home automation
JP6328797B2 (ja) 2014-05-30 2018-05-23 アップル インコーポレイテッド 1つのデバイスの使用から別のデバイスの使用への移行
US9715875B2 (en) 2014-05-30 2017-07-25 Apple Inc. Reducing the need for manual start/end-pointing and trigger phrases
US9430463B2 (en) 2014-05-30 2016-08-30 Apple Inc. Exemplar-based natural language processing
US10313506B2 (en) 2014-05-30 2019-06-04 Apple Inc. Wellness aggregator
US9966065B2 (en) 2014-05-30 2018-05-08 Apple Inc. Multi-command single utterance input method
US9633004B2 (en) 2014-05-30 2017-04-25 Apple Inc. Better resolution when referencing to concepts
US9720642B2 (en) 2014-06-04 2017-08-01 Sonos, Inc. Prioritizing media content requests
US20150355818A1 (en) 2014-06-04 2015-12-10 Sonos, Inc. Continuous Playback Queue
US9537852B2 (en) 2014-06-04 2017-01-03 Sonos, Inc. Cloud queue access control
US9338493B2 (en) 2014-06-30 2016-05-10 Apple Inc. Intelligent automated assistant for TV user interactions
US10339293B2 (en) 2014-08-15 2019-07-02 Apple Inc. Authenticated device used to unlock another device
CN110072131A (zh) 2014-09-02 2019-07-30 苹果公司 音乐用户界面
US9818400B2 (en) 2014-09-11 2017-11-14 Apple Inc. Method and apparatus for discovering trending terms in speech requests
US9668121B2 (en) 2014-09-30 2017-05-30 Apple Inc. Social reminders
US10074360B2 (en) 2014-09-30 2018-09-11 Apple Inc. Providing an indication of the suitability of speech recognition
US10127911B2 (en) 2014-09-30 2018-11-13 Apple Inc. Speaker identification and unsupervised speaker adaptation techniques
EP3484134B1 (en) 2015-02-02 2022-03-23 Apple Inc. Device, method, and graphical user interface for establishing a relationship and connection between two devices
US9521496B2 (en) * 2015-02-12 2016-12-13 Harman International Industries, Inc. Media content playback system and method
US9794618B2 (en) 2015-02-12 2017-10-17 Harman International Industries, Incorporated Media content playback system and method
US10152299B2 (en) 2015-03-06 2018-12-11 Apple Inc. Reducing response latency of intelligent automated assistants
US9721566B2 (en) 2015-03-08 2017-08-01 Apple Inc. Competing devices responding to voice triggers
US9886953B2 (en) 2015-03-08 2018-02-06 Apple Inc. Virtual assistant activation
EP3543865B1 (en) 2015-04-01 2022-04-20 Spotify AB System and method for generating dynamic playlists utilising device co-presence proximity
US9405597B1 (en) 2015-05-01 2016-08-02 Salesforce.Com, Inc. Centralized throttling service
US10460227B2 (en) 2015-05-15 2019-10-29 Apple Inc. Virtual assistant in a communication session
US10083688B2 (en) 2015-05-27 2018-09-25 Apple Inc. Device voice control for selecting a displayed affordance
US10200824B2 (en) 2015-05-27 2019-02-05 Apple Inc. Systems and methods for proactively identifying and surfacing relevant content on a touch-sensitive device
US9578173B2 (en) 2015-06-05 2017-02-21 Apple Inc. Virtual assistant aided communication with 3rd party service in a communication session
US10275116B2 (en) 2015-06-07 2019-04-30 Apple Inc. Browser with docked tabs
US11025565B2 (en) 2015-06-07 2021-06-01 Apple Inc. Personalized prediction of responses for instant messaging
US20160378747A1 (en) 2015-06-29 2016-12-29 Apple Inc. Virtual assistant for media playback
WO2017004190A1 (en) 2015-06-30 2017-01-05 K4Connect Inc. Home automation system including cloud and home message queue synchronization and related methods
US10523690B2 (en) 2015-06-30 2019-12-31 K4Connect Inc. Home automation system including device controller for terminating communication with abnormally operating addressable devices and related methods
US10630649B2 (en) 2015-06-30 2020-04-21 K4Connect Inc. Home automation system including encrypted device connection based upon publicly accessible connection file and related methods
US10003938B2 (en) 2015-08-14 2018-06-19 Apple Inc. Easy location sharing
US10747498B2 (en) 2015-09-08 2020-08-18 Apple Inc. Zero latency digital assistant
US10331312B2 (en) 2015-09-08 2019-06-25 Apple Inc. Intelligent automated assistant in a media environment
US10740384B2 (en) 2015-09-08 2020-08-11 Apple Inc. Intelligent automated assistant for media search and playback
US10671428B2 (en) 2015-09-08 2020-06-02 Apple Inc. Distributed personal assistant
US10445425B2 (en) 2015-09-15 2019-10-15 Apple Inc. Emoji and canned responses
US10691473B2 (en) 2015-11-06 2020-06-23 Apple Inc. Intelligent automated assistant in a messaging environment
US10956666B2 (en) 2015-11-09 2021-03-23 Apple Inc. Unconventional virtual assistant interactions
US20170142110A1 (en) * 2015-11-13 2017-05-18 Theplatform, Llc System and method of preauthorizing content
US10049668B2 (en) 2015-12-02 2018-08-14 Apple Inc. Applying neural network language models to weighted finite state transducers for automatic speech recognition
US10115435B2 (en) * 2015-12-14 2018-10-30 Spotify Ab Methods and systems for prioritizing playback of media content in a playback queue
US10223066B2 (en) 2015-12-23 2019-03-05 Apple Inc. Proactive assistance based on dialog communication between devices
US10044705B2 (en) * 2016-01-20 2018-08-07 Facebook, Inc. Session management for internet of things devices
US10659504B2 (en) * 2016-02-19 2020-05-19 Spotify Ab System and method for client-initiated playlist shuffle in a media content environment
US9900317B2 (en) 2016-02-25 2018-02-20 Red Hat, Inc. Access guards for multi-tenant logging
US10469885B2 (en) 2016-03-22 2019-11-05 Arris Enterprises Llc Playback synchronization among adaptive bitrate streaming clients
DK179186B1 (en) 2016-05-19 2018-01-15 Apple Inc REMOTE AUTHORIZATION TO CONTINUE WITH AN ACTION
US11227589B2 (en) 2016-06-06 2022-01-18 Apple Inc. Intelligent list reading
US10049663B2 (en) 2016-06-08 2018-08-14 Apple, Inc. Intelligent automated assistant for media exploration
US10586535B2 (en) 2016-06-10 2020-03-10 Apple Inc. Intelligent digital assistant in a multi-tasking environment
DK201670540A1 (en) 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
DK201770423A1 (en) 2016-06-11 2018-01-15 Apple Inc Activity and workout updates
DK179415B1 (en) 2016-06-11 2018-06-14 Apple Inc Intelligent device arbitration and control
AU2017100670C4 (en) 2016-06-12 2019-11-21 Apple Inc. User interfaces for retrieving contextually relevant media content
US10873786B2 (en) 2016-06-12 2020-12-22 Apple Inc. Recording and broadcasting application visual output
DK201670622A1 (en) 2016-06-12 2018-02-12 Apple Inc User interfaces for transactions
US10474753B2 (en) 2016-09-07 2019-11-12 Apple Inc. Language identification using recurrent neural networks
US10043516B2 (en) 2016-09-23 2018-08-07 Apple Inc. Intelligent automated assistant
US10805358B2 (en) * 2016-10-13 2020-10-13 Microsoft Technology Licensing, Llc Universal casting service
CN106507133B (zh) * 2016-11-28 2019-07-26 北京金山安全软件有限公司 弹幕消息的处理方法、装置、系统及其设备
US11281993B2 (en) 2016-12-05 2022-03-22 Apple Inc. Model and ensemble compression for metric learning
US10541992B2 (en) * 2016-12-30 2020-01-21 Google Llc Two-token based authenticated session management
US10462124B2 (en) 2016-12-30 2019-10-29 Google Llc Authenticated session management across multiple electronic devices using a virtual session manager
US11204787B2 (en) 2017-01-09 2021-12-21 Apple Inc. Application integration with a digital assistant
US20180197124A1 (en) * 2017-01-10 2018-07-12 Hitender Tholia Method of generating, assigning and managing a software (or an electronic) token/stub/rolling number (a.k.a queue token or a wait token) either by selecting or scanning a QR Code or a Bar-Code or a NFC Tag or any other electronic interfaces through a personal mobile device/s AND invoking integrated services using published visual interfaces through a personal mobile device/s.
WO2018134432A1 (en) * 2017-01-23 2018-07-26 Koninklijke Philips N.V. Method and system for health information reporting
US10992795B2 (en) 2017-05-16 2021-04-27 Apple Inc. Methods and interfaces for home media control
US11431836B2 (en) * 2017-05-02 2022-08-30 Apple Inc. Methods and interfaces for initiating media playback
DK201770383A1 (en) 2017-05-09 2018-12-14 Apple Inc. USER INTERFACE FOR CORRECTING RECOGNITION ERRORS
US10417266B2 (en) 2017-05-09 2019-09-17 Apple Inc. Context-aware ranking of intelligent response suggestions
US10726832B2 (en) 2017-05-11 2020-07-28 Apple Inc. Maintaining privacy of personal information
DK180048B1 (en) 2017-05-11 2020-02-04 Apple Inc. MAINTAINING THE DATA PROTECTION OF PERSONAL INFORMATION
US10395654B2 (en) 2017-05-11 2019-08-27 Apple Inc. Text normalization based on a data-driven learning network
DK201770429A1 (en) 2017-05-12 2018-12-14 Apple Inc. LOW-LATENCY INTELLIGENT AUTOMATED ASSISTANT
DK179745B1 (en) 2017-05-12 2019-05-01 Apple Inc. SYNCHRONIZATION AND TASK DELEGATION OF A DIGITAL ASSISTANT
US10928980B2 (en) 2017-05-12 2021-02-23 Apple Inc. User interfaces for playing and managing audio items
DK179496B1 (en) 2017-05-12 2019-01-15 Apple Inc. USER-SPECIFIC Acoustic Models
US11301477B2 (en) 2017-05-12 2022-04-12 Apple Inc. Feedback analysis of a digital assistant
EP3952317A1 (en) * 2017-05-16 2022-02-09 Apple Inc. Methods and interfaces for home media control
US10303715B2 (en) 2017-05-16 2019-05-28 Apple Inc. Intelligent automated assistant for media exploration
US10403278B2 (en) 2017-05-16 2019-09-03 Apple Inc. Methods and systems for phonetic matching in digital assistant services
CN111343060B (zh) 2017-05-16 2022-02-11 苹果公司 用于家庭媒体控制的方法和界面
DK179549B1 (en) 2017-05-16 2019-02-12 Apple Inc. FAR-FIELD EXTENSION FOR DIGITAL ASSISTANT SERVICES
US10311144B2 (en) 2017-05-16 2019-06-04 Apple Inc. Emoji word sense disambiguation
US20180336892A1 (en) 2017-05-16 2018-11-22 Apple Inc. Detecting a trigger of a digital assistant
US20220279063A1 (en) 2017-05-16 2022-09-01 Apple Inc. Methods and interfaces for home media control
US10657328B2 (en) 2017-06-02 2020-05-19 Apple Inc. Multi-task recurrent neural network architecture for efficient morphology handling in neural language modeling
US10805370B2 (en) * 2017-06-02 2020-10-13 Apple Inc. Alarms for a system of smart media playback devices
US11635908B2 (en) 2017-06-22 2023-04-25 Adobe Inc. Managing digital assets stored as components and packaged files
US10970302B2 (en) * 2017-06-22 2021-04-06 Adobe Inc. Component-based synchronization of digital assets
US10445429B2 (en) 2017-09-21 2019-10-15 Apple Inc. Natural language understanding using vocabularies with compressed serialized tries
FR3068852A1 (fr) * 2017-09-22 2019-01-11 Orange Procede de gestion du droit d'acces a un contenu numerique
USD854043S1 (en) 2017-09-29 2019-07-16 Sonos, Inc. Display screen or portion thereof with graphical user interface
US10755051B2 (en) 2017-09-29 2020-08-25 Apple Inc. Rule-based natural language processing
US10636424B2 (en) 2017-11-30 2020-04-28 Apple Inc. Multi-turn canned dialog
US10097879B1 (en) * 2017-12-29 2018-10-09 Rovi Guides, Inc. Systems and methods for extending storage space of a user device
US10733982B2 (en) 2018-01-08 2020-08-04 Apple Inc. Multi-directional dialog
US10733375B2 (en) 2018-01-31 2020-08-04 Apple Inc. Knowledge-based framework for improving natural language understanding
US10789959B2 (en) 2018-03-02 2020-09-29 Apple Inc. Training speaker recognition models for digital assistants
US10592604B2 (en) 2018-03-12 2020-03-17 Apple Inc. Inverse text normalization for automatic speech recognition
US10818288B2 (en) 2018-03-26 2020-10-27 Apple Inc. Natural assistant interaction
US10909331B2 (en) 2018-03-30 2021-02-02 Apple Inc. Implicit identification of translation payload with neural machine translation
KR20230023064A (ko) * 2018-04-09 2023-02-16 콘메드 코포레이션 말단에 위치된 액추에이터와 함께 작동되는 펜슬-그립 와이어 드라이버
US11145294B2 (en) 2018-05-07 2021-10-12 Apple Inc. Intelligent automated assistant for delivering content from user experiences
DK180171B1 (en) 2018-05-07 2020-07-14 Apple Inc USER INTERFACES FOR SHARING CONTEXTUALLY RELEVANT MEDIA CONTENT
US10928918B2 (en) 2018-05-07 2021-02-23 Apple Inc. Raise to speak
US10984780B2 (en) 2018-05-21 2021-04-20 Apple Inc. Global semantic word embeddings using bi-directional recurrent neural networks
US11386266B2 (en) 2018-06-01 2022-07-12 Apple Inc. Text correction
DK201870355A1 (en) 2018-06-01 2019-12-16 Apple Inc. VIRTUAL ASSISTANT OPERATION IN MULTI-DEVICE ENVIRONMENTS
DK179822B1 (da) 2018-06-01 2019-07-12 Apple Inc. Voice interaction at a primary device to access call functionality of a companion device
DK180639B1 (en) 2018-06-01 2021-11-04 Apple Inc DISABILITY OF ATTENTION-ATTENTIVE VIRTUAL ASSISTANT
US10892996B2 (en) 2018-06-01 2021-01-12 Apple Inc. Variable latency device coordination
US10496705B1 (en) 2018-06-03 2019-12-03 Apple Inc. Accelerated task performance
CN112640475B (zh) * 2018-06-28 2023-10-13 搜诺思公司 用于将回放设备与语音助理服务相关联的系统和方法
US10747493B2 (en) * 2018-07-09 2020-08-18 Sonos, Inc. Distributed provisioning of properties of operational settings of a media playback system
CN109151565B (zh) * 2018-09-04 2019-12-20 北京达佳互联信息技术有限公司 播放语音的方法、装置、电子设备及存储介质
US11128629B2 (en) * 2018-09-19 2021-09-21 Google Llc Escalating user privileges in cloud computing environments
US11010561B2 (en) 2018-09-27 2021-05-18 Apple Inc. Sentiment prediction from textual data
US11462215B2 (en) 2018-09-28 2022-10-04 Apple Inc. Multi-modal inputs for voice commands
US11170166B2 (en) 2018-09-28 2021-11-09 Apple Inc. Neural typographical error modeling via generative adversarial networks
US10839159B2 (en) 2018-09-28 2020-11-17 Apple Inc. Named entity normalization in a spoken dialog system
US11321012B2 (en) 2018-10-12 2022-05-03 Adobe Inc. Conflict resolution within synchronized composite-part-based digital assets
US11475898B2 (en) 2018-10-26 2022-10-18 Apple Inc. Low-latency multi-speaker speech recognition
USD963685S1 (en) 2018-12-06 2022-09-13 Sonos, Inc. Display screen or portion thereof with graphical user interface for media playback control
US11638059B2 (en) 2019-01-04 2023-04-25 Apple Inc. Content playback on multiple devices
US11102259B2 (en) * 2019-01-22 2021-08-24 Apple Inc. Network system for content playback on multiple devices
US11082742B2 (en) 2019-02-15 2021-08-03 Spotify Ab Methods and systems for providing personalized content based on shared listening sessions
CA3131489A1 (en) 2019-02-27 2020-09-03 Louisiana-Pacific Corporation Fire-resistant manufactured-wood based siding
US11348573B2 (en) 2019-03-18 2022-05-31 Apple Inc. Multimodality in digital assistant systems
US11184666B2 (en) * 2019-04-01 2021-11-23 Sonos, Inc. Access control techniques for media playback systems
US11307752B2 (en) 2019-05-06 2022-04-19 Apple Inc. User configurable task triggers
US11475884B2 (en) 2019-05-06 2022-10-18 Apple Inc. Reducing digital assistant latency when a language is incorrectly determined
DK201970535A1 (en) 2019-05-06 2020-12-21 Apple Inc Media browsing user interface with intelligently selected representative media items
DK201970509A1 (en) 2019-05-06 2021-01-15 Apple Inc Spoken notifications
US11423908B2 (en) 2019-05-06 2022-08-23 Apple Inc. Interpreting spoken requests
US11140099B2 (en) 2019-05-21 2021-10-05 Apple Inc. Providing message response suggestions
DK201970533A1 (en) 2019-05-31 2021-02-15 Apple Inc Methods and user interfaces for sharing audio
US11289073B2 (en) 2019-05-31 2022-03-29 Apple Inc. Device text to speech
US11010121B2 (en) 2019-05-31 2021-05-18 Apple Inc. User interfaces for audio media control
US11496600B2 (en) 2019-05-31 2022-11-08 Apple Inc. Remote execution of machine-learned models
DK180129B1 (en) 2019-05-31 2020-06-02 Apple Inc. USER ACTIVITY SHORTCUT SUGGESTIONS
US10904029B2 (en) 2019-05-31 2021-01-26 Apple Inc. User interfaces for managing controllable external devices
EP3948517A1 (en) 2019-05-31 2022-02-09 Apple Inc. User interfaces for audio media control
DK201970511A1 (en) 2019-05-31 2021-02-15 Apple Inc Voice identification in digital assistant systems
US11074408B2 (en) 2019-06-01 2021-07-27 Apple Inc. Mail application features
US11360641B2 (en) 2019-06-01 2022-06-14 Apple Inc. Increasing the relevance of new available information
US11194467B2 (en) 2019-06-01 2021-12-07 Apple Inc. Keyboard management user interfaces
US11468890B2 (en) 2019-06-01 2022-10-11 Apple Inc. Methods and user interfaces for voice-based control of electronic devices
GB2586785A (en) * 2019-08-30 2021-03-10 Mobilise Consulting Ltd Authentication
US11488406B2 (en) 2019-09-25 2022-11-01 Apple Inc. Text detection using global geometry estimators
US11204737B2 (en) 2019-11-11 2021-12-21 Sonos, Inc. Playback queues for shared experiences
US11636855B2 (en) 2019-11-11 2023-04-25 Sonos, Inc. Media content based on operational data
US11356460B2 (en) * 2019-12-31 2022-06-07 Equifax Inc. Secure online access control to prevent identification information misuse
US11206485B2 (en) 2020-03-13 2021-12-21 Bose Corporation Audio processing using distributed machine learning model
US11483608B2 (en) 2020-04-21 2022-10-25 Sonos, Inc. Priority media content
US11283846B2 (en) 2020-05-06 2022-03-22 Spotify Ab Systems and methods for joining a shared listening session
US11183193B1 (en) 2020-05-11 2021-11-23 Apple Inc. Digital assistant hardware abstraction
US11061543B1 (en) 2020-05-11 2021-07-13 Apple Inc. Providing relevant data items based on context
US11079913B1 (en) 2020-05-11 2021-08-03 Apple Inc. User interface for status indicators
US11197068B1 (en) 2020-06-16 2021-12-07 Spotify Ab Methods and systems for interactive queuing for shared listening sessions based on user satisfaction
US11503373B2 (en) 2020-06-16 2022-11-15 Spotify Ab Methods and systems for interactive queuing for shared listening sessions
US11490204B2 (en) 2020-07-20 2022-11-01 Apple Inc. Multi-device audio adjustment coordination
US11438683B2 (en) 2020-07-21 2022-09-06 Apple Inc. User identification using headphones
US11392291B2 (en) 2020-09-25 2022-07-19 Apple Inc. Methods and interfaces for media control with dynamic feedback
EP4323992A1 (en) 2021-05-15 2024-02-21 Apple Inc. User interfaces for group workouts
US11847378B2 (en) 2021-06-06 2023-12-19 Apple Inc. User interfaces for audio routing
US11366705B1 (en) * 2021-07-29 2022-06-21 Apex.AI, Inc. Deterministic replay of events between software entities
WO2023019097A1 (en) 2021-08-10 2023-02-16 Sonos, Inc. Edge data caching in a media playback system
US11936658B2 (en) 2021-11-15 2024-03-19 Bank Of America Corporation Intelligent assignment of a network resource

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070219910A1 (en) * 2006-03-02 2007-09-20 Yahoo! Inc. Providing a limited use syndicated media to authorized users
CN101247409A (zh) * 2008-03-21 2008-08-20 中国科学院电工研究所 一种基于p2p网络的直播流媒体的鉴权方法
CN103812828A (zh) * 2012-11-08 2014-05-21 华为终端有限公司 处理媒体内容的方法、控制设备、媒体服务器和媒体播放器

Family Cites Families (120)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5440644A (en) 1991-01-09 1995-08-08 Square D Company Audio distribution system having programmable zoning features
JP3094900B2 (ja) 1996-02-20 2000-10-03 ヤマハ株式会社 ネットワーク機器およびデータ送受信方法
US6404811B1 (en) 1996-05-13 2002-06-11 Tektronix, Inc. Interactive multimedia system
US6469633B1 (en) 1997-01-06 2002-10-22 Openglobe Inc. Remote control of electronic devices
US6611537B1 (en) 1997-05-30 2003-08-26 Centillium Communications, Inc. Synchronous network for digital media streams
WO1999027681A2 (en) 1997-11-25 1999-06-03 Motorola Inc. Audio content player methods, systems, and articles of manufacture
US6032202A (en) 1998-01-06 2000-02-29 Sony Corporation Of Japan Home audio/video network with two level device control
US20020002039A1 (en) 1998-06-12 2002-01-03 Safi Qureshey Network-enabled audio device
US7130616B2 (en) 2000-04-25 2006-10-31 Simple Devices System and method for providing content, management, and interactivity for client devices
US6256554B1 (en) 1999-04-14 2001-07-03 Dilorenzo Mark Multi-room entertainment system with in-room media player/dispenser
US7657910B1 (en) 1999-07-26 2010-02-02 E-Cast Inc. Distributed electronic entertainment method and apparatus
US6522886B1 (en) 1999-11-22 2003-02-18 Qwest Communications International Inc. Method and system for simultaneously sharing wireless communications among multiple wireless handsets
ES2277419T3 (es) 1999-12-03 2007-07-01 Telefonaktiebolaget Lm Ericsson (Publ) Un metodo para producir simultaneamente ficheros de audio en dos telefonos.
US20010042107A1 (en) 2000-01-06 2001-11-15 Palm Stephen R. Networked audio player transport protocol and architecture
AU2001231115A1 (en) 2000-01-24 2001-07-31 Zapmedia, Inc. System and method for the distribution and sharing of media assets between mediaplayers devices
JP2004500651A (ja) 2000-01-24 2004-01-08 フリスキット インコーポレイテッド ストリーミングメディアの検索および再生システム
AU2001237673A1 (en) 2000-02-18 2001-08-27 Bridgeco Ag Reference time distribution over a network
US6631410B1 (en) 2000-03-16 2003-10-07 Sharp Laboratories Of America, Inc. Multimedia wired/wireless content synchronization system and method
US20020022453A1 (en) 2000-03-31 2002-02-21 Horia Balog Dynamic protocol selection and routing of content to mobile devices
US6934269B1 (en) * 2000-04-24 2005-08-23 Microsoft Corporation System for networked component address and logical network formation and maintenance
KR100867760B1 (ko) 2000-05-15 2008-11-10 소니 가부시끼 가이샤 재생장치, 재생방법 및 기록매체
GB2363036B (en) 2000-05-31 2004-05-12 Nokia Mobile Phones Ltd Conference call method and apparatus therefor
JP2002044765A (ja) 2000-07-28 2002-02-08 Matsushita Electric Ind Co Ltd 遠隔制御システムとゲートウェイ装置
US6778869B2 (en) 2000-12-11 2004-08-17 Sony Corporation System and method for request, delivery and use of multimedia files for audiovisual entertainment in the home environment
US7143939B2 (en) 2000-12-19 2006-12-05 Intel Corporation Wireless music device and method therefor
US20020124097A1 (en) 2000-12-29 2002-09-05 Isely Larson J. Methods, systems and computer program products for zone based distribution of audio signals
US6757517B2 (en) 2001-05-10 2004-06-29 Chin-Chi Chang Apparatus and method for coordinated music playback in wireless ad-hoc networks
US7260672B2 (en) * 2001-09-07 2007-08-21 Intel Corporation Using data stored in a destructive-read memory
US7391791B2 (en) 2001-12-17 2008-06-24 Implicit Networks, Inc. Method and system for synchronization of content rendering
US7853341B2 (en) 2002-01-25 2010-12-14 Ksc Industries, Inc. Wired, wireless, infrared, and powerline audio entertainment systems
US8103009B2 (en) 2002-01-25 2012-01-24 Ksc Industries, Inc. Wired, wireless, infrared, and powerline audio entertainment systems
WO2003071818A2 (en) 2002-02-20 2003-08-28 Meshnetworks, Inc. A system and method for routing 802.11 data traffic across channels to increase ad-hoc network capacity
US7827259B2 (en) 2004-04-27 2010-11-02 Apple Inc. Method and system for configurable automatic media selection
US7797446B2 (en) 2002-07-16 2010-09-14 Apple Inc. Method and system for updating playlists
JP4555072B2 (ja) 2002-05-06 2010-09-29 シンクロネイション インコーポレイテッド ローカライズされたオーディオ・ネットワークおよび関連するディジタル・アクセサリ
EP1504367A4 (en) 2002-05-09 2009-04-08 Netstreams Llc AUDIO NETWORK DISTRIBUTION SYSTEM
US8060225B2 (en) 2002-07-31 2011-11-15 Hewlett-Packard Development Company, L. P. Digital audio device
DE60210177T2 (de) 2002-08-14 2006-12-28 Sony Deutschland Gmbh Bandbreitenorientierte Neukonfigurierung von drahtlosen Ad-Hoc-Netzen
US7295548B2 (en) 2002-11-27 2007-11-13 Microsoft Corporation Method and system for disaggregating audio/visual components
US7624158B2 (en) 2003-01-14 2009-11-24 Eycast Inc. Method and apparatus for transmission and storage of digital medical data
EP2357623A1 (en) 2003-04-25 2011-08-17 Apple Inc. Graphical user interface for browsing, searching and presenting media items
US6728729B1 (en) * 2003-04-25 2004-04-27 Apple Computer, Inc. Accessing media across networks
US8181022B2 (en) * 2003-06-24 2012-05-15 Realnetworks, Inc. Method and apparatus for controlling access restrictions for media playback
US7571014B1 (en) 2004-04-01 2009-08-04 Sonos, Inc. Method and apparatus for controlling multimedia players in a multi-zone system
US8234395B2 (en) 2003-07-28 2012-07-31 Sonos, Inc. System and method for synchronizing operations among a plurality of independently clocked digital data processing devices
US8001612B1 (en) 2003-11-03 2011-08-16 Wieder James W Distributing digital-works and usage-rights to user-devices
US7483538B2 (en) 2004-03-02 2009-01-27 Ksc Industries, Inc. Wireless and wired speaker hub for a home theater system
US7703141B2 (en) * 2004-03-11 2010-04-20 Microsoft Corporation Methods and systems for protecting media content
US9374607B2 (en) 2012-06-26 2016-06-21 Sonos, Inc. Media playback system with guest access
US7630501B2 (en) 2004-05-14 2009-12-08 Microsoft Corporation System and method for calibration of an acoustic system
US9226013B2 (en) 2004-09-14 2015-12-29 Opentv, Inc. Multimedia queue services
US7958441B2 (en) 2005-01-07 2011-06-07 Apple Inc. Media management for groups of media items
US8516093B2 (en) 2005-04-22 2013-08-20 Intel Corporation Playlist compilation system and method
GB2426623B (en) 2005-05-23 2011-01-26 British Sky Broadcasting Ltd Apparatus for media recording and playback
JP2007264922A (ja) 2006-03-28 2007-10-11 Seiko Epson Corp UPnPの規定に基づいてデジタルコンテンツを管理するサーバへのデジタルコンテンツのアップロード
US7805682B1 (en) 2006-08-03 2010-09-28 Sonos, Inc. Method and apparatus for editing a playlist
US8483853B1 (en) 2006-09-12 2013-07-09 Sonos, Inc. Controlling and manipulating groupings in a multi-zone media system
US8788080B1 (en) * 2006-09-12 2014-07-22 Sonos, Inc. Multi-channel pairing in a media system
US7987294B2 (en) 2006-10-17 2011-07-26 Altec Lansing Australia Pty Limited Unification of multimedia devices
JP4935345B2 (ja) 2006-12-25 2012-05-23 ソニー株式会社 コンテンツ再生システム、再生装置、再生制御方法及びプログラム
WO2008112944A1 (en) 2007-03-14 2008-09-18 Samuel Pierce Baron Interaction in a virtual social environment
FR2917095B1 (fr) 2007-06-07 2009-07-17 Biomerieux Sa Dispositif de lyse de microorganismes presents dans un echantillon environnemental ou clinique et d'extraction des acides nucleiques desdits microorganismes aux fins d'analyse.
US8041438B2 (en) 2007-06-28 2011-10-18 Apple Inc. Data-driven media management within an electronic device
US9047235B1 (en) * 2007-12-28 2015-06-02 Nokia Corporation Content management for packet-communicating devices
US8364296B2 (en) * 2008-01-02 2013-01-29 International Business Machines Corporation Method and system for synchronizing playing of an ordered list of auditory content on multiple playback devices
US20090199120A1 (en) 2008-02-01 2009-08-06 Moaec, Inc. Customizable, reconfigurable graphical user interface
WO2009120301A2 (en) * 2008-03-25 2009-10-01 Square Products Corporation System and method for simultaneous media presentation
US8429287B2 (en) 2009-04-29 2013-04-23 Rangecast Technologies, Llc Network audio distribution system and method
US8148622B2 (en) * 2009-07-01 2012-04-03 Apple Inc. Media playback queuing for playback management
US9203816B2 (en) 2009-09-04 2015-12-01 Echostar Technologies L.L.C. Controlling access to copies of media content by a client device
US8214740B2 (en) 2009-10-30 2012-07-03 Apple Inc. Song flow methodology in random playback
US9294526B2 (en) 2009-12-28 2016-03-22 Microsoft Technology Licensing, Llc Managing multiple dynamic media streams
US8422858B2 (en) 2010-01-21 2013-04-16 Robert Paul Morris Methods, systems, and computer program products for coordinating playing of media streams
CN102215115B (zh) * 2010-04-07 2014-11-05 腾讯科技(深圳)有限公司 播放列表信息同步方法及用于播放列表信息同步的服务器
US20110276155A1 (en) * 2010-05-07 2011-11-10 Apple Inc. Media playback settings for playlists
US20120117026A1 (en) 2010-06-10 2012-05-10 Cricket Communications, Inc. Play list management
US9015588B2 (en) 2010-06-10 2015-04-21 At&T Mobility Ii Llc Advanced playback queue management
WO2011156783A2 (en) 2010-06-10 2011-12-15 Cricket Communications, Inc. Mobile handset for media access and playback
US20110307927A1 (en) 2010-06-11 2011-12-15 Toshihisa Nakano Method, system and apparatus for managing network services
TWI504140B (zh) 2010-07-15 2015-10-11 Conexant Systems Inc 音訊驅動系統及方法
CN201928306U (zh) * 2010-10-21 2011-08-10 广州市浩云安防科技工程有限公司 一种视频联网管理系统
US9510061B2 (en) * 2010-12-03 2016-11-29 Arris Enterprises, Inc. Method and apparatus for distributing video
CN102104623A (zh) * 2010-12-20 2011-06-22 广州市动景计算机科技有限公司 通过移动终端进行媒体文件断点续播的方法和系统
US10631246B2 (en) * 2011-02-14 2020-04-21 Microsoft Technology Licensing, Llc Task switching on mobile devices
EP2490458B1 (en) 2011-02-15 2016-09-21 Nxp B.V. Control of a loudspeaker unit
US8321566B2 (en) 2011-02-24 2012-11-27 Jibe Mobile System and method to control application to application communication over a network
US9032497B2 (en) * 2011-06-15 2015-05-12 Cbs Interactive Inc. System and method for securing embedded media
US10333711B2 (en) 2011-06-17 2019-06-25 Microsoft Technology Licensing, Llc Controlling access to protected objects
JP5792901B2 (ja) * 2011-07-20 2015-10-14 ソノズ インコーポレイテッド ウェブベースの音楽パートナーシステムおよびその方法
US9286384B2 (en) * 2011-09-21 2016-03-15 Sonos, Inc. Methods and systems to share media
US8204890B1 (en) 2011-09-26 2012-06-19 Google Inc. Media content voting, ranking and playing system
CN103166783A (zh) * 2011-12-14 2013-06-19 华为技术有限公司 资源的控制方法及装置
US9654821B2 (en) * 2011-12-30 2017-05-16 Sonos, Inc. Systems and methods for networked music playback
US9215065B2 (en) 2012-02-17 2015-12-15 Cbs Interactive Inc. Media player security for full length episodes
US9986273B2 (en) * 2012-03-29 2018-05-29 Sony Interactive Entertainment, LLC Extracting media content from social networking services
US8908879B2 (en) 2012-05-23 2014-12-09 Sonos, Inc. Audio content auditioning
JP2013247591A (ja) * 2012-05-29 2013-12-09 Sony Corp 上映管理装置および上映管理方法
US9235867B2 (en) 2012-06-04 2016-01-12 Microsoft Technology Licensing, Llc Concurrent media delivery
US9674587B2 (en) * 2012-06-26 2017-06-06 Sonos, Inc. Systems and methods for networked music playback including remote add to queue
US20140075308A1 (en) 2012-09-10 2014-03-13 Apple Inc. Intelligent media queue
US9038138B2 (en) 2012-09-10 2015-05-19 Adobe Systems Incorporated Device token protocol for authorization and persistent authentication shared across applications
US20140074959A1 (en) 2012-09-10 2014-03-13 Apple Inc. Client side media station generation
US9078010B2 (en) 2012-09-28 2015-07-07 Sonos, Inc. Audio content playback management
WO2014064531A1 (en) * 2012-10-22 2014-05-01 Spotify Ab Systems and methods for pre-fetching media content
US20140123006A1 (en) 2012-10-25 2014-05-01 Apple Inc. User interface for streaming media stations with flexible station creation
WO2014071801A1 (zh) * 2012-11-12 2014-05-15 腾讯科技(深圳)有限公司 播放列表同步方法及装置
US20140189648A1 (en) 2012-12-27 2014-07-03 Nvidia Corporation Facilitated quality testing
CN103118138B (zh) * 2013-03-04 2016-02-10 中国信息安全测评中心 一种基于云服务的消息队列流处理方法
US9706237B2 (en) 2013-03-12 2017-07-11 Time Warner Cable Enterprises Llc TV playlist
US9356918B2 (en) 2013-03-13 2016-05-31 Google Inc. Identification delegation for devices
US9361371B2 (en) * 2013-04-16 2016-06-07 Sonos, Inc. Playlist update in a media playback system
US9501533B2 (en) * 2013-04-16 2016-11-22 Sonos, Inc. Private queue for a media playback system
US9703521B2 (en) * 2013-05-29 2017-07-11 Sonos, Inc. Moving a playback queue to a new zone
US9282403B1 (en) 2013-05-31 2016-03-08 Amazon Technologies, Inc User perceived gapless playback
CN103338387B (zh) * 2013-06-20 2016-05-25 上海大学 云计算下能量消耗和视频质量联合优化的数据包调度方法
US9411942B2 (en) 2013-08-30 2016-08-09 D&M Holdings, Inc. Network device, system and method for rendering an interactive multimedia playlist
US9078072B2 (en) 2013-10-07 2015-07-07 Bose Corporation Audio distribution
KR102070484B1 (ko) 2013-10-25 2020-01-29 미디어텍 인크. 슬라이스 높이로 균등하게 분할할 수 없는 화상 높이 및/또는 화소 그룹 폭으로 균등하게 분할할 수 없는 슬라이스 폭을 갖는 화상을 처리하는 방법 및 장치
US9558751B2 (en) * 2014-01-31 2017-01-31 Sparcq, Inc. Media content marking and tracking methods and apparatus
US9537852B2 (en) * 2014-06-04 2017-01-03 Sonos, Inc. Cloud queue access control

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20070219910A1 (en) * 2006-03-02 2007-09-20 Yahoo! Inc. Providing a limited use syndicated media to authorized users
CN101247409A (zh) * 2008-03-21 2008-08-20 中国科学院电工研究所 一种基于p2p网络的直播流媒体的鉴权方法
CN103812828A (zh) * 2012-11-08 2014-05-21 华为终端有限公司 处理媒体内容的方法、控制设备、媒体服务器和媒体播放器

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111788560A (zh) * 2018-02-28 2020-10-16 国际商业机器公司 分布式存储网络中的动态授权批处理
CN111788560B (zh) * 2018-02-28 2024-01-30 国际商业机器公司 分布式存储网络中的动态授权批处理
CN109302376A (zh) * 2018-03-30 2019-02-01 浙江甲骨文超级码科技股份有限公司 一种账户生码方法、账户授权方法以及账户取码方法
CN109302376B (zh) * 2018-03-30 2021-05-28 浙江甲骨文超级码科技股份有限公司 一种账户生码方法、账户授权方法以及账户取码方法

Also Published As

Publication number Publication date
US9537852B2 (en) 2017-01-03
US20150355879A1 (en) 2015-12-10
CN106664300B (zh) 2018-08-14
US10116641B2 (en) 2018-10-30
CN110086845A (zh) 2019-08-02
EP3111307A4 (en) 2017-10-18
CN109088917A (zh) 2018-12-25
JP6193515B1 (ja) 2017-09-06
US20150358310A1 (en) 2015-12-10
US10333920B2 (en) 2019-06-25
JP6253812B2 (ja) 2017-12-27
US20200358753A1 (en) 2020-11-12
CN106537838B (zh) 2019-01-29
EP3111589A4 (en) 2017-08-30
EP3771146A1 (en) 2021-01-27
US20200344223A1 (en) 2020-10-29
US20190028452A1 (en) 2019-01-24
US20160231985A1 (en) 2016-08-11
US9648071B2 (en) 2017-05-09
US10666634B2 (en) 2020-05-26
US9648070B2 (en) 2017-05-09
JP2017528861A (ja) 2017-09-28
US20160234277A1 (en) 2016-08-11
US20150358304A1 (en) 2015-12-10
US9654536B2 (en) 2017-05-16
US20170208056A1 (en) 2017-07-20
US20150358381A1 (en) 2015-12-10
US11831627B2 (en) 2023-11-28
US10326750B2 (en) 2019-06-18
US20160231984A1 (en) 2016-08-11
CN106537838A (zh) 2017-03-22
US9654459B2 (en) 2017-05-16
EP3111307A1 (en) 2017-01-04
US10158619B2 (en) 2018-12-18
CN110086845B (zh) 2022-02-22
EP3111589A1 (en) 2017-01-04
US9729599B2 (en) 2017-08-08
EP3829107A1 (en) 2021-06-02
US20150358380A1 (en) 2015-12-10
US20170041368A1 (en) 2017-02-09
JP2017526029A (ja) 2017-09-07
US20190068569A1 (en) 2019-02-28
US20190230074A1 (en) 2019-07-25
US10587602B2 (en) 2020-03-10
US20170026430A1 (en) 2017-01-26
US20150358375A1 (en) 2015-12-10
US9967246B2 (en) 2018-05-08
US20190028451A1 (en) 2019-01-24
US9363254B2 (en) 2016-06-07
US10412073B2 (en) 2019-09-10
EP3111307B1 (en) 2020-07-01
US20170208110A1 (en) 2017-07-20
US10462119B2 (en) 2019-10-29
US9942215B2 (en) 2018-04-10
US9363255B2 (en) 2016-06-07
US20190028453A1 (en) 2019-01-24

Similar Documents

Publication Publication Date Title
CN106664300B (zh) 云队列访问方法、计算设备和云队列访问控制方法
US11445261B2 (en) Multiple household management
CN104584061B (zh) 提供对众源播放列表的来宾访问的系统、方法、装置和制品
US9432365B2 (en) Streaming music using authentication information
CN105284076B (zh) 针对媒体回放系统的私有队列
US9977561B2 (en) Systems, methods, apparatus, and articles of manufacture to provide guest access
CN106031132A (zh) 基于回放区域认知的媒体内容
CN105308902A (zh) 媒体回放系统中的回放队列传送
CN106062810A (zh) 网页媒体回放
CN106134209A (zh) 知晓帐户情况下的媒体偏好

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant