CN109845222B - 通用投射服务 - Google Patents

通用投射服务 Download PDF

Info

Publication number
CN109845222B
CN109845222B CN201780061156.2A CN201780061156A CN109845222B CN 109845222 B CN109845222 B CN 109845222B CN 201780061156 A CN201780061156 A CN 201780061156A CN 109845222 B CN109845222 B CN 109845222B
Authority
CN
China
Prior art keywords
casting
local
computing device
media item
session
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.)
Active
Application number
CN201780061156.2A
Other languages
English (en)
Other versions
CN109845222A (zh
Inventor
V·G·帕里克
林俊彦
P·V·博尔扎
B·T·施瓦兹
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.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
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 Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN109845222A publication Critical patent/CN109845222A/zh
Application granted granted Critical
Publication of CN109845222B publication Critical patent/CN109845222B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/1069Session establishment or de-establishment
    • 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/1083In-session procedures
    • H04L65/1089In-session procedures by adding media; by removing media
    • 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/1083In-session procedures
    • H04L65/1093In-session procedures by adding participants; by removing participants
    • 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/611Network streaming of media packets for supporting one-way streaming services, e.g. Internet radio for multicast or broadcast
    • 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/765Media network packet handling intermediate
    • 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/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
    • H04L67/025Protocols based on web technology, e.g. hypertext transfer protocol [HTTP] for remote control or remote monitoring of applications

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

描述了一种用于操作通用投射服务的方法。该方法从第一客户端接收投射请求;发起到第一投射设备的第一投射会话;建立针对第一投射设备的第一队列;从第一客户端向队列添加第一媒体项;从第二客户端接收投射请求;以及从第二客户端向第一队列添加第二媒体项。

Description

通用投射服务
背景技术
在过去几年中,智能设备出现了激增。这种连接设备的一个特定部分是投射设备。这些投射设备允许从例如电话、平板电脑或膝上型电脑远程控制显示器或扬声器。例如,Google Chromecast Audio允许安卓手机连接至它并且控制存在于起居室中的扬声器,所以房子的主人可以决定播放列表,例如,在乔迁派对期间。
今天,人们可以经由各种投射接收器或者由不同公司提供的智能设备投射媒体,比如Google Chromecast、Amazon Fire Stick、Microsoft Miracast、三星智能设备、AppleCarPlay和Android Auto。然而,用户正在使用的应用或操作系统必须为特定的投射接收器实施投射协议。例如,用户可以尝试经由Amazon Fire Stick将来自他的iPhone上的YouTube应用的视频投射到他的电视,但是她无法做到这一点,因为该YouTube应用仅为Google Chromecast实施了投射特征。或者一个用户可以尝试经由Chromecast投射媒体,但是由于另一用户已经连接至该相同的Chromecast设备,并且由于Chromecast上的YouTube不支持多个同时用户,所以他无法做到这一点。问题是所有这些投射接收器都是由不同公司设计的以供单个客户端使用,这导致来自相同或不同公司的单独接收器之间缺乏协调。
发明内容
本公开的非限制性示例描述了一种使用通用投射服务的方法。该方法从第一客户端接收投射请求;发起到第一投射设备的第一投射会话;为第一投射设备建立第一队列;从第一客户端向第一队列添加媒体;从第二客户端接收投射请求;以及从第二客户端向第一队列添加媒体。
本公开的另外的非限制性示例描述了一种通用投射系统。该系统包括:至少一个处理器;以及存储器,该存储器与存储计算机可执行指令的至少一个处理器可操作地连接,该计算机可执行指令在由至少一个处理器执行时使至少一个处理器执行方法。该方法包括:从第一客户端接收第一投射请求;发起到第一投射设备的第一投射会话;为第一投射设备建立第一队列;从第一客户端接收第二投射请求;发起到第二投射设备的第二投射会话;以及为第二投射设备建立第二队列。
本公开的另外的非限制性示例描述了一种具有存储在其上的计算机程序的非瞬态机器可读存储介质,该计算机程序包括用于使机器执行以下操作的指令集的例程:从第一客户端设备接收会话请求;创建具有GUID的与第一投射设备的会话;从第二客户端设备接收加入会话的请求;将第二客户端设备添加到会话;从第一客户端设备接收第一媒体项;从第二客户端设备接收第二媒体项;以及向针对第一投射设备的第一队列添加第一媒体项和第二媒体项。
提供该发明内容来以简化的形式介绍对在下面的详细说明中进一步描述的构思的选择。本发明内容不旨在标识所要求保护的主题内容的关键特征或者必要特征,也不旨在被用来限制所要求保护的主题内容的范围。示例的附加方面、特征和/或优点将在下面的描述中被部分阐述,并且将部分地从描述变得明显,或者可以通过本公开的实践来学习。
附图说明
参照以下附图描述非限制性和非穷举性示例。
图1是图示了可以实践本公开的各方面的用于通用投射服务的示例性系统的框图。
图2是图示了可以实践本公开的各方面的通用投射系统的示例性会话的流程图。
图3是图示了现有技术的投射服务的示例性会话的流程图。
图4是图示了可以实践本公开的各方面的计算设备的示例物理组件的框图。
图5A和图5B是可以实践本公开的各方面的移动计算设备的简化框图。
具体实施方式
本文所公开的示例描述了用于通用投射服务的系统和方法。为了克服仅允许单个设备访问投射接收器一次的问题,本公开引入了通用投射服务(UCS)的概念,其充当投射客户端与投射接收器之间的代理。这反过来允许多个用户协作地控制投射接收器所采取的动作。例如,UCS将会允许派对中的每个人排列不同歌曲,而不仅仅是派对的主人。这种行为更可能由朋友商定,其中,每个人依次决定接下来播放哪首歌曲。
虽然本公开中的大部分示例都围绕播放列表的想法,例如,歌曲队列,但是UCS也会实现其它协作的投射体验。例如,可以创建图片编辑投射会话,其中,多个用户对图像进行编辑。例如,用户A可以添加装饰品;用户B可以添加帽子;以及用户C可以添加太阳镜。任何类型的媒体项都可以是投射会话的主题。
此外,UCS统一了由不同硬件制造商采用的各种通信协议。当提及硬件时,系统不仅能够处理比如Google Chromecast、Amazon Fire stick、Roku等投射设备上的TV和扬声器,还能够处理比如冰箱甚或汽车等更先进的设备。被设计为各种投射API上方的层,UCS保持设备和用户上的协作投射会话;与聊天室/聊天群类似,可以将投射会话视为“投射室/投射群”。
UCS制造了能够处理复杂的投射场景的单个平台,同时支持投射通信协议的各种集合。UCS通过将场景特定的信息和要求抽象到单个通信信道中来充当冒名顶替(imposter)层,该单个通信信道可以在任何数目的客户端设备与接收器之间并且在短暂的设置周期之后独立于原始的投射通信协议。
现代投射环境在客户端设备与接收器之间具有通信协议的各种集合。这些投射协议允许在客户端与接收器之间发送结构化消息。然而,针对复杂的投射场景,这些限制性协议严重限制了特征集合。除了这些结构化消息流之外,投射协议通常允许交换非结构化字符串。在高水平下,接收器的通信协议可以被分成两个协议集合;一个允许非结构化字符串的双边通信,并且一个仅允许非结构化字符串的单边方向通信(从客户端到接收器)。在仅允许单边通信的协议的情况下,UCS创建了人工双边通信方法,其通过UCS通信以允许在接收器上开发这些复杂的投射场景,否则这些复杂的投射场景将无法支持双边通信。
由一些通信协议施加的另一限制是一次仅一个客户端设备与接收器配对的要求。为了解决该一对一映射限制,UCS使用一个设备来在客户端<->UCS与UCS<->接收器之间建立连接,并且然后使用UCS来管理多个客户端设备的连接。这允许我们支持多播场景,无论投射通信协议的建立连接的能力或要求如何。
UCS提供了对投射设备的更高效的使用,因为多个用户可以使用单个投射设备;此外,单个用户可以同时和同步地使用多个投射设备。通过允许多个用户同时访问单个投射设备,这也提供了对有限投射设备资源的更高效的使用。通过使用UCS,用户界面和体验也得到了显著改善。在现有技术的系统中,当用户正在投射设备上播放媒体并且第二用户中断接管投射设备的使用时,第一用户没有注意到发生了什么并且仅与投射设备断开。当用户来来去去并且从播放队列添加或删除项目时,UCS提供了对每个用户的播放队列视图的更新。现有的一对一限制系统的许多谜团被消除了。
图3是图示了投射服务的示例性会话的流程图,其图示了当前可用的一对一映射约束的限制。附图图示了两个投射客户端(设备1 310和设备2 320)投射到投射接收器340的系统。最初,投射客户端设备1 310在设备1 310与投射接收器340之间创建会话。接收器返回提到已经创建了会话的消息。假设设备1 310的用户正在播放媒体,则在投射接收器340上排列和播放媒体A;然后,可以排列媒体A2,并且在播放媒体A之后,在投射接收器340上播放媒体A2。当设备2 320的用户想要在投射接收器340上播放媒体时,设备2 320在投射接收器340上创建会话。通过设备2 320创建该新会话使投射接收器向设备1310发送消息,该消息通知设备1 310其与投射接收器340的会话已经停止,并且媒体A2将停止在投射接收器340上播放。然后,设备2 320的用户排列然后在投射接收器340上播放的媒体B。所以,可以看出多个设备不能够以协作方式同时使用投射接收器340。
图1是图示了可以实践本公开的各方面的用于通用投射服务的示例性系统的框图。在附图中,一个或多个客户端设备具有一个或多个应用,诸如,应用A 110、应用B 115和网络控制台120,其与充当客户端设备与一个或多个投射服务之间的中介或冒名顶替层的通用投射服务105通信,诸如,ChromeCast 165、Fire Stick 170、Roku 175或其它设备180。为了便于访问,通用投射服务105通常驻留在云中,例如,移除登录到派对主人的WiFi网络中以访问UCS的必要性;然而,UCS也可以驻留在本地,例如,驻留在存在于主机位置处的路由器或其它网络设备中。
在通用投射服务内,可以存在以下功能。客户端管理器130可以充当应用(应用A110、应用B 115和网络控制台120)的接口。客户端管理器130还可以管理与各种投射客户端上的应用的通信。与客户端管理器130通信的用户管理器125将管理到各种用户的连接。单个用户可能正在使用多个客户端。会话管理器135管理投射客户端上的应用与各种投射设备之间的每个会话。除了与设备管理器140通信之外,会话管理器135还与客户端管理器130和用户管理器125通信。会话管理器135充当UCS的中心部分,因为它管理每个会话、每个会话的状态、播放列表和播放状态以及其它特征,诸如,可以由某些智能电器使用的代办事项列表,以及用于提供例如音乐、播放列表、约会或代办事项的智能推荐。
设备管理器140负责经由投射设备适配器管理与各种投射设备的连接。例如,当与ChromeCast 165通信时,设备管理器140经由ChromeCast适配器145与ChromeCast 165通信。与Fire Sticks 170、Rokus 175和其它设备180的通信经由可比较的相应的Fire Stick适配器150、Roku适配器155和其它适配器160发生。
图2是图示了可以实践本公开的各方面的通用投射系统的示例性会话的流程图。通过该附图,可以看出通用投射服务的各个部件的功能以及UCS如何发挥冒名顶替层的功能。在该示例性附图中,两个投射客户端设备1 210和设备2 220经由UCS 230与投射设备接收器240通信。当设备1 210检测到与UCS 230兼容的投射设备时,设备1 210创建与UCS 230的会话。UCS 230利用已经创建了具有全球唯一标识符或GUID的会话(诸如,1234)的消息来作出响应。这模仿了双边通信投射协议,但是无论接收器240是否具有该双边通信能力,都可以建立该协议。设备1 210然后向接收器240发送消息以开始会话1234。接收器240然后向UCS发送消息以建立连接会话1234,并且UCS利用已经建立了连接会话1234的消息来作出响应。因此,无论接收器240是否具有该能力,都建立双向通信信道。
设备1 210的用户然后可以排列媒体A,例如,以通过向UCS 230发送消息以排列媒体A来在接收器240上播放。在此之后,从UCS发送两个消息:向接收器240发送第一消息以播放媒体A;以及向设备1210发送第二消息,其向设备1 210提供状态更新。当设备2 220想要附接至接收器240时,它上线并且被通知也使用会话1234。设备2 220然后可以向UCS 230发送消息以排列媒体B。UCS 230然后将接收器240的状态更新(即,播放列表更新)到设备1210和设备2 220两者。因此,当设备2上线时,对设备1 210来说没有会话丢失。由于会话状态由UCS 105的会话管理器135保持,所以当添加或移除客户端或投射设备时,没有数据丢失。因此,用户可以切换他们想要针对的哪个接收器并且允许哪些客户端能够以无缝方式观看或改变会话的共享状态。由某些投射设备的投射通信协议施加的限制被解除。
当媒体A的播放在接收器240处结束时,将媒体A结束的消息从接收器240发送到UCS 230。UCS 230然后查看其播放列表,并且指示接收器240播放媒体B。UCS然后向设备2220和设备1 210两者更新接收器240的状态,尤其是正在接收器240上播放媒体B。
通过在UCS处创建该冒名顶替层,许多不同功能是可能的。例如,多个投射设备可以同时播放音乐和/或同时和同步地播放视频。在该场景中,会话管理器135确保多个投射设备保持同步。与现有技术的一对一投射系统相比,UCS仅需要一个客户端来初始化与投射设备的连接,并且然后UCS将会在与接收器交互时充当该用户。在UCS上创建投射会话,并且UCS保持与投射设备的双向同步。多个用户可以在UCS上与相同投射会话交互以,例如,插入歌曲,改变播放顺序,从列表删除歌曲或者完全改变播放列表。类似地,多个用户可以在UCS上与相同投射会话交互以,例如,提交对作为投射会话的主题的图像的更改,并且每个用户将在它们发生时看到对图像的编辑。UCS保持与一个或多个投射设备的双向同步,所以从投射设备的视角来看,存在一个客户端。
另外,UCS允许创建具有来自不同源的内容的连续投射队列。例如,播放列表在相同队列中可以具有来自Spotify的音乐和本地存储的音乐。用户可以将来自各种源的内容添加到会话。
此外,通常为了连接和使用投射设备,客户端必须与投射设备处于相同的Wi-Fi网络上,这增加了在用户处于不熟悉的位置处时投射的复杂性。由于UCS处理用户与一个或多个投射设备之间的全部通信,所以客户端不需要知道投射设备,反之亦然。仅一个用户需要处于Wi-Fi网络上以建立从UCS到投射设备的初始连接。一旦创建了UCS投射会话,UCS就可以生成安全链接作为该会话的网络控制台。具有互联网访问的任何用户现在都可以作为访客连接至会话,其中,用户可以对UCS上的会话中的投射内容进行添加、移除或重新排序。这些交互在用户客户端与UCS之间。而且,UCS强制作为单个用户以保持与(多个)投射设备的连接并且传递命令。
UCS实施与投射接收器的连接作为适配器插件,这使其易于扩展。随着技术发展,推出越来越多的智能设备,比如电器和汽车。利用可扩展设计,UCS潜在地可以扩展其对所有种类的智能设备的支持,并且充当针对它们的通用远程控制。
图4至图5和相关联的描述提供了对可以实践本公开的各方面的各种操作环境的讨论。然而,相对于图4至图5说明和讨论的设备和系统是出于示例和说明的目的,并且不限制可以被用于实践本文所描述的本公开的各方面的大量计算设备配置。
图4是图示了可以实践本公开的各方面的计算设备400的物理组件(例如,硬件)的框图。下面描述的计算设备组件可以具有用于在计算设备上实施通用投射系统450的计算机可执行指令,包括可以被执行以实施本文所公开的方法的计算机可执行指令。在基本配置中,计算设备400可以包括至少一个处理单元402和系统存储器404。取决于计算设备的配置和类型,系统存储器404可以包括但不限于易失性存储设备(例如,随机存取存储器)、非易失性存储设备(例如,只读存储器)、闪速存储器或者这种存储器的任何组合。系统存储器404可以包括操作系统405和适用于运行队列分析应用450的一个或多个程序模块406。
例如,操作系统405可能适用于控制计算设备400的操作。此外,本公开的实施例可以结合图形库、其它操作系统或任何其它应用程序被实践并且不限于任何特定应用或系统。在图4中通过虚线408内的这些组件图示该基本配置。计算设备400可以具有附加特征或功能。例如,计算设备400还可以包括附加的数据存储设备(可移除和/或不可移除的),诸如,例如,磁盘、光盘或磁带。在图4中通过可移除存储设备409和不可移除存储设备410图示这种附加存储设备。
如上所述,若干程序模块和数据文件可以被存储在系统存储器404中。当在处理单元402上执行时,程序模块406(例如,通用投射系统450)可以执行包括但不限于本文所描述的各方面的过程。可以根据本公开的各方面使用其它程序模块。
此外,本公开的实施例可以在包括分立电子元件的电气电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路中或者在包含电子元件或微处理器的单个芯片上被实践。例如,本公开的实施例可以经由片上系统(SOC)被实践,其中,图4所图示的组件中的每一个或许多可以被集成到单个集成电路上。这种SOC设备可以包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元和各种应用功能,所有这些都被集成(或“烧制”)到芯片衬底上作为单个集成电路。当经由SOC操作时,本文所描述的关于客户端切换协议的能力的功能可以经由与单个集成电路(芯片)上的计算设备400的其它组件集成的专用逻辑来操作。还可以通过使用能够执行逻辑运算(诸如,例如,与(AND)、或(OR)和非(NOT))的其它技术来实践本公开的实施例,包括但不限于机械、光学、流体和量子技术。另外,本公开的实施例可以被实践在通用计算机内或者任何其它电路或系统中。
计算设备400还可以具有一个或多个输入设备412,诸如,键盘、鼠标、笔、声音或语音输入设备、触摸或滑动输入设备等。还可以包括(多个)输出设备414,诸如,显示器、扬声器、打印机等。前面提及的设备是示例,并且可以使用其它设备。计算设备400可以包括允许与其它计算设备418通信的一个或多个通信连接416。合适的通信连接416的示例包括但不限于射频(RF)发射器、接收器和/或收发器电路设备;通用串行总线(USB)、并行和/或串行端口。
本文所使用的术语“计算机可读介质”可以包括计算机存储介质。计算机存储介质可以包括以用于存储信息(诸如,计算机可读指令、数据结构或程序模块)的任何方法或技术实施的易失性和非易失性介质以及可移除和不可移除介质。系统存储器404、可移除存储设备409和不可移除存储设备410都是计算机存储介质示例(例如,存储器存储)。计算机存储介质可以包括RAM、ROM、电可擦除只读存储器(EEPROM)、闪速存储器或其它存储器技术、CD-ROM、数字通用盘(DVD)或其它光学存储、磁盒、磁带、磁盘存储或其它磁性存储设备或者可以被用来存储信息并且可以由计算设备400访问的任何其它制品。任何这种计算机存储介质都可以是计算设备400的一部分。计算机存储介质不包括载波或其它传播或调制的数据信号。
通信介质可以通过计算机可读指令、数据结构、程序模块或者诸如载波或其它传输机制等经调制的数据信号中的其它数据来体现,并且包括任何信息递送介质。术语“经调制的数据信号”可以描述具有以对信号中的信息进行编码的这种方式设置或改变的一个或多个特性的信号。通过示例而非限制,通信介质可以包括诸如有线网络或者直接有线连接等有线介质以及诸如声学、射频(RF)、红外和其它无线介质等无线介质。
图5A和图5B图示了可以实践本公开的实施例的移动计算设备500,例如,移动电话、智能电话、可穿戴计算机(诸如,智能手表)、平板计算机、膝上型计算机等。在一些方面中,客户端可以是移动计算设备。参照图5A,图示了用于实施各方面的移动计算设备500的一个方面。在基本配置中,移动计算设备500是具有输入元件和输出元件两者的手持式计算机。移动计算设备500通常包括显示器505和允许用户将信息录入到移动计算设备500中的一个或多个输入按钮510。移动计算设备500的显示器505还可以充当输入设备(例如,触摸屏显示器)。如果被包括,则可选的侧输入元件515允许进一步的用户输入。侧输入元件515可以是旋转开关、按钮或者任何其它类型的手动输入元件。在备选方面中,移动计算设备500可以包含更多或更少的输入元件。例如,显示器505在一些实施例中可以不是触摸屏。在又一备选实施例中,移动计算设备500是便携式电话系统,诸如,蜂窝电话。移动计算设备500还可以包括可选键盘535。可选键盘535可以是物理键盘或者在触摸屏显示器上被生成的“软”键盘。在各种实施例中,输出元件包括用于示出图形用户界面(GUI)、视觉指示器520(例如,发光二极管)和/或音频换能器525(例如,扬声器)的显示器505。在一些方面中,移动计算设备500包含用于向用户提供触觉反馈的振动换能器。在又一方面中,移动计算设备500包含用于向外部设备发送信号或者从外部设备接收信号的输入和/或输出端口,诸如,音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)和视频输出(例如,HDMI端口)。
图5B是图示了移动计算设备的一个方面的架构的框图。即,移动计算设备500可以包含系统(例如,架构)502以实施一些方面。在一个实施例中,系统502被实施为能够运行一个或多个应用(例如,浏览器、电子邮件、日程表安排、联系人管理器、消息发送客户端、游戏和媒体客户端/播放器)的“智能电话”。在一些方面中,系统502被集成为计算设备,诸如,集成个人数字助理(PDA)和无线电话。
一个或多个应用程序可以被加载到存储器562中,并且在操作系统564上运行或者与操作系统564相关联。应用程序的示例包括电话拨号器程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子制表程序、互联网浏览器程序、消息发送程序、通用投射系统等。系统502还包括存储器562内的非易失性存储区568。非易失性存储区568可以被用来存储如果系统502断电则应该不会丢失的持续信息。应用程序可以使用和存储非易失性存储区568中的信息,诸如,由电子邮件应用使用的电子邮件或其它消息等。同步应用(未示出)也驻留在系统502上,并且被编程为与驻留在主机计算机上的对应同步应用交互以使被存储在非易失性存储区568中的信息与被存储在主机计算机处的对应信息保持同步。如应该了解的,其它应用可以被加载到存储器562中,并且在移动计算设备500上运行,包括用于提供队列分析应用的指令。
系统502具有电源570,该电源570可以被实施为一个或多个电池。电源570可以进一步包括外部电源,诸如,对电池进行补充或重新充电的AC适配器或供电对接支架。
系统502还可以包括无线电接口层572,该无线电接口层572执行传送和接收射频通信的功能。无线电接口层572经由通信运营商或服务提供商促进系统502与“外部世界”之间的无线连接。在操作系统564的控制下进行到无线电接口层572的传输和来自无线电接口层572的传输。换言之,由无线电接口层572接收的通信可以经由操作系统564被传播到应用程序,反之亦然。
视觉指示器520可以被用来提供视觉通知,和/或音频接口574可以被用于经由音频换能器525(例如,图5A中所图示的音频换能器525)产生可听通知。在所图示的实施例中,视觉指示器520是发光二极管(LED),并且音频换能器525可以是扬声器。这些设备可以被直接耦合至电源570,使得在被激活时,即使处理器560和其它组件可能会关闭以用于节省电池功率,它们也会在由通知机制指示的持续时间内保持导通。LED可以被编程为无限期地保持导通,直到用户采取动作以指示设备的通电状态为止。音频接口574被用来向用户提供可听信号并且接收来自用户的可听信号。例如,除了被耦合至音频换能器525之外,音频接口574还可以被耦合至麦克风以接收可听输入,诸如,以促进电话交谈。根据本公开的实施例,麦克风还可以充当音频传感器以促进对通知的控制,如下面将描述的。系统502可以进一步包括视频接口576,该视频接口576使外围设备530(例如,车载摄像头)的操作能够记录静止图像、视频流等。
实施系统502的移动计算设备500可以具有附加特征或功能。例如,移动计算设备500还可以包括附加的数据存储设备(可移除和/或不可移除的),诸如,磁盘、光盘或磁带。在图5B中通过非易失性存储区568图示这种附加存储设备。
由移动计算设备500生成或捕获并且经由系统502存储的数据/信息可以被本地存储在移动计算设备500上,如上面所描述的,或者数据可以被存储在可以由设备经由无线电接口层572或者经由移动计算设备500和与移动计算设备500相关联的分离计算设备(例如,诸如互联网等分布式计算网络中的服务器计算机)之间的有线连接访问的任何数量的存储介质上。如应该了解的,这种数据/信息可以经由移动计算设备500,经由无线接口层572或者经由分布式计算网络访问。类似地,根据众所周知的数据/信息传递和存储部件,包括电子邮件和协作数据/信息共享系统,可以在计算设备之间容易地传递这种数据/信息以用于存储和使用。
如应该了解的,出于说明本方法和系统的目的,描述了图5A和5B,并且不旨在将本公开限制于特定步骤序列或者硬件或软件组件的特定组合。
例如,如上所述,参照根据本公开的各方面的方法、系统和计算机程序产品的框图和/或操作说明描述了本公开的各方面。框中所记录的功能/动作可以不按任何流程图所示的顺序发生。例如,实际上,连续示出的两个框可以大体上同时被执行,或者有时可以按照相反顺序执行这两个框,这取决于所涉及的功能/动作。
本申请中提供的一个或多个方面的描述和说明不旨在以任何方式限制或约束所要求保护的本公开的范围。本申请中提供的方面、示例和细节被认为足以传达所有权并且使其它人能够进行和使用所要求保护的本公开的最佳模式。所要求保护的公开内容不应被解释为限于本申请中提供的任何方面、示例或细节。无论是否组合或分离地示出和描述,旨在选择性地包括或省略各种特征(结构的和方法的)以产生具有特定特征集合的实施例。已经提供了本申请的描述和说明,本领域技术人员可以设想落入本申请中体现的总体发明构思的更广泛方面的精神内的变型、修改和替换方面,其不脱离所要求保护的公开内容的更广泛范围。

Claims (20)

1.一种用于通用投射服务的方法,所述方法包括:
在第一本地投射设备处通过通信协议从第一本地客户端计算设备接收第一投射请求;
发起与所述第一本地投射设备的第一投射会话;
响应于从所述第一本地客户端计算设备接收到第一媒体项,建立针对所述第一本地投射设备的第一队列;
在所述第一投射会话期间,在所述第一本地投射设备处通过所述通信协议从第二本地客户端计算设备接收第二投射请求,所述第二投射请求包括第二媒体项;以及
响应于从所述第二本地客户端计算设备接收到所述第二媒体项,向所述第一队列添加所述第二媒体项,使得所述第一本地投射设备在单个投射会话期间接收来自两个不同的计算设备的内容。
2.根据权利要求1所述的方法,还包括发起到第二本地投射设备的第二投射会话。
3.根据权利要求2所述的方法,还包括向所述第一本地投射设备和所述第二本地投射设备发送所述第一媒体项。
4.根据权利要求1所述的方法,还包括使所述第一媒体项在所述第一本地投射设备上的播放与所述第二媒体项在所述第二本地投射设备上的播放同步。
5.根据权利要求1所述的方法,还包括:
从所述第一本地客户端计算设备接收第三投射请求;
发起到第二本地投射设备的第二投射会话;
建立针对所述第二本地投射设备的第二队列;以及
从所述第一本地客户端计算设备向针对所述第二本地投射设备的所述第二队列添加第三媒体项。
6.根据权利要求1所述的方法,还包括:
从第三本地客户端计算设备接收第三投射请求;
发起到第二本地投射设备的第二投射会话;
建立针对所述第二本地投射设备的第二队列;以及
从所述第三本地客户端计算设备向针对所述第二本地投射设备的所述第二队列添加第三媒体项。
7.根据权利要求1所述的方法,还包括:响应于接收到所述第二媒体项,向所述第一本地客户端计算设备和所述第二本地客户端计算设备中的一个或多个提供媒体回放状态信息。
8.一种用于通用投射服务的系统,包括:
至少一个处理器;以及
存储器,所述存储器与存储计算机可执行指令的所述至少一个处理器可操作地连接,所述计算机可执行指令在由所述至少一个处理器执行时使所述至少一个处理器执行方法,所述方法包括:
在第一本地投射设备处通过通信协议从第一本地客户端计算设备接收第一投射请求;
发起与所述第一投射设备的第一投射会话;
响应于从所述第一本地客户端计算设备接收到第一媒体项,建立针对所述第一本地投射设备的第一队列;
在所述第一投射会话期间,在所述第一本地投射设备处通过所述通信协议从第二本地客户端计算设备接收第二投射请求,所述第二投射请求包括第二媒体项以及
响应于从所述第二本地客户端计算设备接收到所述第二媒体项,向所述第一队列添加所述第二媒体项,使得所述第一本地投射设备在单个投射会话期间接收来自两个不同的计算设备的内容。
9.根据权利要求8所述的系统,还包括用于从第三本地客户端计算设备接收用以投射到所述第一本地投射设备的第三投射请求的指令。
10.根据权利要求9所述的系统,还包括用于向所述第一队列添加来自所述第三本地客户端计算设备的第一媒体项的指令。
11.根据权利要求8所述的系统,还包括用于在所述第一本地投射设备上播放所述第一媒体项的指令。
12.根据权利要求8所述的系统,还包括用于更新所述第一本地客户端设备和所述第二本地客户端设备的状态的指令。
13.根据权利要求8所述的系统,还包括用于在所述第一本地投射设备上播放所述第一媒体项和将所述第二媒体项传送至第二本地投射设备的指令。
14.根据权利要求8所述的系统,还包括用于响应于接收到所述第二媒体项而向所述第一本地客户端计算设备和所述第二本地客户端计算设备中的一个或多个提供媒体回放状态信息的指令。
15.一种用于通用投射服务的方法,包括:
在第一本地投射设备处从第一本地计算设备接收会话请求;
创建具有全局唯一标识符的会话;
将所述会话与所述第一本地投射设备相关联;
从第二本地计算设备接收用以加入所述会话的请求;
向所述会话添加所述第二本地计算设备,使得所述第一本地投射设备和第二本地投射设备同时与所述会话相关联;
从所述第一本地计算设备接收第一媒体项;
从所述第二本地计算设备接收第二媒体项;以及
向针对所述第一本地投射设备的第一队列添加所述第一媒体项和所述第二媒体项。
16.根据权利要求15所述的方法,还包括从所述第一本地计算设备接收会话请求,以用于所述第二本地投射设备。
17.根据权利要求16所述的方法,还包括创建与所述第二本地投射设备的第二会话,所述第二会话具有全局唯一标识符。
18.根据权利要求17所述的方法,还包括从所述第一本地计算设备接收第三媒体项,以用于所述第二本地投射设备。
19.根据权利要求18所述的方法,还包括向第二队列添加所述第三媒体项,以用于所述第二本地投射设备。
20.根据权利要求15所述的方法,还包括响应于接收到所述第二媒体项而向所述第一本地计算设备和所述第二本地计算设备中的一个或多个提供媒体回放状态信息。
CN201780061156.2A 2016-10-13 2017-10-06 通用投射服务 Active CN109845222B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/292,504 US10805358B2 (en) 2016-10-13 2016-10-13 Universal casting service
US15/292,504 2016-10-13
PCT/US2017/055455 WO2018071279A1 (en) 2016-10-13 2017-10-06 Universal casting service

Publications (2)

Publication Number Publication Date
CN109845222A CN109845222A (zh) 2019-06-04
CN109845222B true CN109845222B (zh) 2021-05-25

Family

ID=60162277

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780061156.2A Active CN109845222B (zh) 2016-10-13 2017-10-06 通用投射服务

Country Status (4)

Country Link
US (1) US10805358B2 (zh)
EP (1) EP3526948B1 (zh)
CN (1) CN109845222B (zh)
WO (1) WO2018071279A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10725531B1 (en) * 2018-05-15 2020-07-28 Amazon Technologies, Inc. Mitigating thermal increases in electronic devices
TWI691204B (zh) * 2018-12-22 2020-04-11 弘真科技股份有限公司 無線影音資訊分享系統及方法
US11016717B1 (en) 2019-11-08 2021-05-25 Microsoft Technology Licensing, Llc Selective electronic content casting
CN111124332B (zh) * 2019-11-18 2024-03-01 北京小米移动软件有限公司 设备呈现内容的控制方法、控制装置及存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103826321A (zh) * 2012-11-19 2014-05-28 联想(北京)有限公司 一种电子设备连接的方法和设备
CN105094737A (zh) * 2015-08-07 2015-11-25 北京橙鑫数据科技有限公司 多媒体信息显示方法及装置

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5583561A (en) 1994-06-07 1996-12-10 Unisys Corporation Multi-cast digital video data server using synchronization groups
US6212566B1 (en) 1996-01-26 2001-04-03 Imec Interprocess communication protocol system modem
US7133502B2 (en) * 2002-01-31 2006-11-07 Hewlett-Packard Development Company, Lp. System for and method for dispatching service messages over a multicast network
US8054294B2 (en) 2006-03-31 2011-11-08 Sony Corporation Touch screen remote control system for use in controlling one or more devices
US20100011135A1 (en) * 2008-07-10 2010-01-14 Apple Inc. Synchronization of real-time media playback status
US8566869B2 (en) 2008-09-02 2013-10-22 Microsoft Corporation Pluggable interactive television
US20100079670A1 (en) 2008-09-30 2010-04-01 Verizon Data Services, Llc Multi-view content casting systems and methods
US9338488B1 (en) * 2011-04-06 2016-05-10 Tellabs, Inc. Method and apparatus for providing video optimization for broadcast media
US20130282820A1 (en) * 2012-04-23 2013-10-24 Onmobile Global Limited Method and System for an Optimized Multimedia Communications System
US9071866B2 (en) 2012-12-04 2015-06-30 Untethered, Llc Wireless video/audio signal transmitter/receiver
US10031647B2 (en) 2013-05-14 2018-07-24 Google Llc System for universal remote media control in a multi-user, multi-platform, multi-device environment
US9306992B2 (en) * 2013-06-07 2016-04-05 Qualcomm Incorporated Method and system for using Wi-Fi display transport mechanisms to accomplish voice and data communications
WO2015145421A1 (en) 2014-03-23 2015-10-01 Eran Bida Webcasting station platform
US9729599B2 (en) * 2014-06-04 2017-08-08 Sonos, Inc. Cloud queue access control
US20150373069A1 (en) * 2014-06-20 2015-12-24 Blackfire Research Corporation Managing a common shared play queue on multiple devices
CN110768961A (zh) 2014-06-27 2020-02-07 谷歌有限责任公司 用于计算和娱乐装置的移动播放接收器
US10200416B2 (en) 2015-02-24 2019-02-05 Vizio Inc Global setting for casting content to networked renderer
CN107431725B (zh) * 2015-03-13 2021-01-29 三星电子株式会社 用于通过无线链路维持持续传屏会话的方法
US10082939B2 (en) * 2015-05-15 2018-09-25 Spotify Ab Playback of media streams at social gatherings
CN107710770B (zh) * 2015-09-28 2021-02-09 谷歌有限责任公司 用于时间同步的多区域媒体流式传输的系统和方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103826321A (zh) * 2012-11-19 2014-05-28 联想(北京)有限公司 一种电子设备连接的方法和设备
CN105094737A (zh) * 2015-08-07 2015-11-25 北京橙鑫数据科技有限公司 多媒体信息显示方法及装置

Also Published As

Publication number Publication date
CN109845222A (zh) 2019-06-04
US10805358B2 (en) 2020-10-13
EP3526948B1 (en) 2020-11-25
WO2018071279A1 (en) 2018-04-19
US20180109566A1 (en) 2018-04-19
EP3526948A1 (en) 2019-08-21

Similar Documents

Publication Publication Date Title
EP3123467B1 (en) Flexible schema for language model customization
US11012385B2 (en) App powered extensibility of messages on an existing messaging service
CN107077661B (zh) 跨越使用共享工作空间的设备的任务完成
CN109845222B (zh) 通用投射服务
CN106716954B (zh) 电话呼叫期间的实时共享方法、系统和计算机可读存储器
US10389781B2 (en) Method for sharing media data among electronic devices having media contents sharing lists and electronic device thereof
US20160150009A1 (en) Actionable souvenir from real-time sharing
US10856130B2 (en) Smart discovery of wireless receivers
CN107077436A (zh) 向主机设备计算环境借出目标设备资源
CN104052801B (zh) 一种信息处理方法及电子设备
US11036712B2 (en) Latency-reduced document change discovery
US20140372524A1 (en) Proximity Operations for Electronic File Views
CN103595752B (zh) 一种信息管理方法及设备
JP2017225103A (ja) 動画メディアを提供するための移動端末、これを含むシステムおよびその制御方法
WO2021050140A1 (en) Proximity-based management of a computing device
CN113646057A (zh) 用于增强游戏体验的跨设备附件输入和输出
US12061914B2 (en) Using interchangeable non-compute resources for cloud-based applications
US20180143955A1 (en) Co-authoring on documents saved to non-cloud locations
CN117413504A (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