发明内容
本发明提供一种媒体流的转移方法和用户设备,以实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
本发明第一方面提供一种媒体流的转移方法,包括:
第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
所述第一设备的浏览器缓存所述第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
所述第一设备的浏览器标识所述第一设备的浏览器缓存的每路媒体流;
当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,所述第一设备的浏览器对所述选定的一路媒体流进行解析,将解析获得的媒体流发送到所述选定的第二设备上呈现,所述选定的第二设备是根据所述至少一个第二设备的信息选定的。
结合第一方面,在第一方面的第一种可能的实现方式中,所述方法还包括:
所述第一设备的浏览器保留所述网站页面或所述网页应用;
当所述第一设备的浏览器接收到所述网站页面或所述网页应用发送的所述选定的一路媒体流的更新信息时,所述第一设备的浏览器将所述更新信息发送给所述选定的第二设备,以便所述选定的第二设备根据所述更新信息更新所述选定的一路媒体流并继续呈现。
结合第一方面或第一方面的第一种可能的实现方式,在第一方面的第二种可能的实现方式中,所述第一设备的浏览器转移到所述选定的第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
本发明第二方面提供一种媒体流的转移方法,包括:
第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
所述第一设备的浏览器缓存所述第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
所述第一设备的浏览器标识所述第一设备的浏览器缓存的每路媒体流;
当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,所述第一设备的浏览器将所述选定的一路媒体流的标识发送给所述选定的第二设备,以便所述选定的第二设备根据所述选定的一路媒体流的标识向所述第一设备获取所述选定的一路媒体流并呈现;所述选定的第二设备是根据所述至少一个第二设备的信息选定的。
结合第二方面,在第二方面的第一种可能的实现方式中,所述方法还包括:
所述第一设备的浏览器保留所述网站页面或所述网页应用;
当所述第一设备的浏览器接收到所述网站页面或所述网页应用发送的所述选定的一路媒体流的更新信息时,所述第一设备的浏览器将所述更新信息发送给所述选定的第二设备,以便所述选定的第二设备根据所述更新信息更新所述选定的一路媒体流并继续呈现。
结合第二方面或者第二方面的第一种可能的实现方式,在第二方面的第二种可能的实现方式中,所述第一设备的浏览器转移到所述选定的第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
本发明第三方面提供一种媒体流的转移方法,包括:
第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
所述第一设备的浏览器缓存所述第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
所述第一设备的浏览器标识所述第一设备的浏览器缓存的每路媒体流;
当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,所述第一设备的浏览器将所述选定的一路媒体流的链接发送给所述选定的第二设备,以便所述选定的第二设备根据所述链接获取并播放所述链接对应的媒体流;所述选定的第二设备是根据所述至少一个第二设备的信息选定的。
结合第三方面,在第三方面的第一种可能的实现方式中,所述方法还包括:
所述第一设备的浏览器保留所述网站页面或所述网页应用;
当所述第一设备的浏览器接收到所述网站页面或所述网页应用发送的所述链接对应的媒体流的更新信息时,所述第一设备的浏览器将所述更新信息发送给所述选定的第二设备,以便所述选定的第二设备根据所述更新信息更新所述链接对应的媒体流并继续呈现。
结合第三方面或者第三方面的第一种可能的实现方式,在第三方面的第二种可能的实现方式中,所述第一设备的浏览器转移到所述第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
本发明第四方面提供一种用户设备,包括:
获取模块,用于通过第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
缓存模块,用于通过第一设备的浏览器缓存所述第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
标识模块,用于标识所述缓存模块缓存的每路媒体流;
转移模块,用于当确定将从所述标识模块标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,通过所述第一设备的浏览器对所述选定的一路媒体流进行解析,将所述解析获得的媒体流发送到所述选定的第二设备上呈现,所述选定的第二设备是根据所述获取模块获取的至少一个第二设备的信息选定的。
结合第四方面,在第四方面的第一种可能的实现方式中,所述用户设备还包括:保留模块;
所述保留模块,用于保留所述网站页面或所述网页应用;
所述转移模块,还用于当所述获取模块接收到所述网站页面或所述网页应用发送的所述选定的一路媒体流的更新信息时,通过所述第一设备的浏览器将所述更新信息发送给所述选定的第二设备,以便所述选定的第二设备根据所述更新信息更新所述选定的一路媒体流并继续呈现。
结合第四方面或者第四方面的第一种可能的实现方式,在第四方面的第二种可能的实现方式中,所述第一设备的浏览器转移到所述第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
本发明第五方面提供一种用户设备,包括:
获取模块,用于通过第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
缓存模块,用于通过所述第一设备的浏览器缓存所述第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
标识模块,用于标识所述缓存模块缓存的每路媒体流;
转移模块,用于当确定将从所述标识模块标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,通过所述第一设备的浏览器将所述选定的一路媒体流的标识发送给所述选定的第二设备,以便所述选定的第二设备根据所述选定的一路媒体流的标识向所述第一设备获取所述选定的一路媒体流并呈现;所述选定的第二设备是根据所述至少一个第二设备的信息选定的。
结合第五方面,在第五方面的第一种可能的实现方式中,所述用户设备还包括:保留模块;
所述保留模块,用于保留所述网站页面或所述网页应用;
所述转移模块,还用于当所述获取模块接收到所述网站页面或所述网页应用发送的所述选定的一路媒体流的更新信息时,通过所述第一设备的浏览器将所述更新信息发送给所述选定的第二设备,以便所述选定的第二设备根据所述更新信息更新所述选定的一路媒体流并继续呈现。
结合第五方面或者第五方面的第一种可能的实现方式,在第五方面的第二种可能的实现方式中,所述第一设备的浏览器转移到所述第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
本发明第六方面提供一种用户设备,包括:
获取模块,用于通过第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
缓存模块,用于通过所述第一设备的浏览器缓存所述第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
标识模块,用于标识所述缓存模块缓存的每路媒体流;
转移模块,用于当确定将从所述标识模块标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,通过所述第一设备的浏览器将所述选定的一路媒体流的链接发送给所述选定的第二设备,以便所述选定的第二设备根据所述链接获取并播放所述链接对应的媒体流;所述选定的第二设备是根据所述至少一个第二设备的信息选定的。
结合第六方面,在第六方面的第一种可能的实现方式中,所述用户设备还包括:保留模块;
所述保留模块,用于保留所述网站页面或所述网页应用;
所述转移模块,还用于当所述获取模块接收到所述网站页面或所述网页应用发送的所述链接对应的媒体流的更新信息时,通过所述第一设备的浏览器将所述更新信息发送给所述选定的第二设备,以便所述选定的第二设备根据所述更新信息更新所述链接对应的媒体流并继续呈现。
结合第六方面或者第六方面的第一种可能的实现方式,在第六方面的第二种可能的实现方式中,所述第一设备的浏览器转移到所述第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
采用上述技术方案中的任意一个,都可以实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
具体实施方式
为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
图1为本发明媒体流的转移方法一个实施例的流程图,如图1所示,该媒体流的转移方法可以包括:
步骤101,第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息。
步骤102,第一设备的浏览器缓存上述第一设备的浏览器从网站页面或网页应用获取的每路媒体流。
步骤103,第一设备的浏览器标识第一设备的浏览器缓存的每路媒体流。
具体地,第一设备的浏览器标识第一设备的浏览器缓存的每路媒体流可以为:第一设备的浏览器为缓存的每路媒体流分配一个标识。
步骤104,当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,第一设备的浏览器对选定的一路媒体流进行解析,将解析获得的媒体流发送到上述选定的第二设备上呈现。
其中,上述选定的第二设备是根据至少一个第二设备的信息选定的。
具体地,步骤104中,第一设备的浏览器对选定的一路媒体流进行解析可以为:第一设备的浏览器对上述选定的一路媒体流进行解压缩和解码等解析处理,以将上述选定的一路媒体流解析为可以直接在选定的第二设备上播放的媒体流。
具体地,步骤104中,将解析获得的媒体流发送到上述选定的第二设备上呈现可以为:第一设备的浏览器可以通过有线连接的数据线将解析获得的媒体流发送给上述选定的第二设备,也可通过无线保真(Wireless Fidelity;以下简称:WiFi)、超文本传输协议(Hypertext Transfer Protocol;以下简称:HTTP)、通用即插即用(Universal Plug and Play;以下简称:UPnP)、数字生活网络联盟(Digital Living Network Alliance;以下简称:DLNA)、蓝牙、近距离无线通信(Near Field Communication;以下简称:NFC)和/或红外技术等传输技术将解析获得的媒体流发送给上述选定的第二设备。
进一步地,本实施例中,第一设备的浏览器还可以保留上述网站页面或上述网页应用;当第一设备的浏览器接收到上述网站页面或上述网页应用发送的上述选定的一路媒体流的更新信息时,第一设备的浏览器将上述更新信息发送给选定的第二设备,以便选定的第二设备根据上述更新信息更新上述选定的一路媒体流并继续呈现。其中,第一设备的浏览器将上述更新信息发送给选定的第二设备时可以采用与将解析获得的媒体流发送到上述选定的第二设备相同的方式,在此不再赘述。
本实施例中,第一设备的浏览器转移到上述选定的第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
上述实施例中,第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息之后,缓存并标识第一设备的浏览器从网站页面或网页应用获取的每路媒体流,当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,第一设备的浏览器对选定的一路媒体流进行解析,将解析获得的媒体流发送到选定的第二设备上呈现,上述选定的第二设备是根据至少一个第二设备的信息选定的,从而可以当第一设备的浏览器接收到多画面的媒体流,或者打开多个画面的媒体流时,实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
图2为本发明媒体流的转移方法另一个实施例的流程图,如图2所示,该媒体流的转移方法可以包括:
步骤201,第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息。
步骤202,第一设备的浏览器缓存上述第一设备的浏览器从网站页面或网页应用获取的每路媒体流。
步骤203,第一设备的浏览器标识上述第一设备的浏览器缓存的每路媒体流。
步骤204,当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,第一设备的浏览器将选定的一路媒体流的标识发送给选定的第二设备,以便上述选定的第二设备根据选定的一路媒体流的标识向上述第一设备获取选定的一路媒体流并呈现。
其中,上述选定的第二设备是根据至少一个第二设备的信息选定的。
具体地,步骤204中,第一设备的浏览器将选定的一路媒体流的标识发送给选定的第二设备可以为:第一设备的浏览器通过有线连接的数据线将选定的一路媒体流的标识发送给上述选定的第二设备,也可通过WiFi、HTTP、UPnP、DLNA、蓝牙、NFC和/或红外技术等传输技术将选定的一路媒体流的标识发送给上述选定的第二设备。
进一步地,在上述选定的第二设备接收到第一设备的浏览器发送的选定的一路媒体流的标识之后,第二设备可以将第一设备看作Web服务器,然后第二设备使用接收到的标识,通过HTTP请求向第一设备请求该标识对应的媒体流,第一设备响应该HTTP请求,向第二设备返回请求的媒体流,当然,第一设备向第二设备返回的请求的媒体流可以是第一设备解析处理后的可以直接在第二设备上播放的媒体流。
进一步地,上述第一设备的浏览器还可以保留上述网站页面或上述网页应用;当第一设备的浏览器接收到上述网站页面或上述网页应用发送的上述选定的一路媒体流的更新信息时,第一设备的浏览器将上述更新信息发送给选定的第二设备,以便上述选定的第二设备根据上述更新信息更新上述选定的一路媒体流并继续呈现。其中,第一设备的浏览器将上述更新信息发送给选定的第二设备时可以采用与将选定的一路媒体流的标识发送给选定的第二设备相同的方式,在此不再赘述。
本实施例中,第一设备的浏览器转移到上述选定的第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
上述实施例中,第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息之后,缓存并标识第一设备的浏览器从网站页面或网页应用获取的每路媒体流,当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,第一设备的浏览器将选定的一路媒体流的标识发送给选定的第二设备,以便上述选定的第二设备根据选定的一路媒体流的标识向上述第一设备获取选定的一路媒体流并呈现,上述选定的第二设备是根据至少一个第二设备的信息选定的,从而可以当第一设备的浏览器接收到多画面的媒体流,或者打开多个画面的媒体流时,实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
图3为本发明媒体流的转移方法再一个实施例的流程图,如图3所示,该媒体流的转移方法可以包括:
步骤301,第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息。
步骤302,第一设备的浏览器缓存上述第一设备的浏览器从网站页面或网页应用获取的每路媒体流。
步骤303,第一设备的浏览器标识第一设备的浏览器缓存的每路媒体流。
步骤304,当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,第一设备的浏览器将上述选定的一路媒体流的链接发送给选定的第二设备,以便选定的第二设备根据上述链接获取并播放上述链接对应的媒体流。
其中,上述选定的第二设备是根据至少一个第二设备的信息选定的。
具体地,步骤304中,第一设备的浏览器将上述选定的一路媒体流的链接发送给选定的第二设备可以为:第一设备的浏览器通过有线连接的数据线将上述选定的一路媒体流的链接发送给上述选定的第二设备,也可通过WiFi、HTTP、UPnP、DLNA、蓝牙、NFC和/或红外技术等传输技术将上述选定的一路媒体流的链接发送给上述选定的第二设备。
进一步地,第一设备的浏览器还可以保留上述网站页面或上述网页应用;当第一设备的浏览器接收到上述网站页面或上述网页应用发送的上述链接对应的媒体流的更新信息时,第一设备的浏览器将上述更新信息发送给选定的第二设备,以便上述选定的第二设备根据上述更新信息更新上述链接对应的媒体流并继续呈现。其中,第一设备的浏览器将上述更新信息发送给选定的第二设备时可以采用与将上述选定的一路媒体流的链接发送给选定的第二设备相同的方式,在此不再赘述。
本实施例中,第一设备的浏览器转移到第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
上述实施例中,第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息之后,缓存并标识第一设备的浏览器从网站页面或网页应用获取的每路媒体流,当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,第一设备的浏览器将选定的一路媒体流的链接发送给选定的第二设备,以便选定的第二设备根据上述链接获取并播放上述链接对应的媒体流,上述选定的第二设备是根据至少一个第二设备的信息选定的,从而可以当第一设备的浏览器接收到多画面的媒体流,或者打开多个画面的媒体流时,实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
图4为本发明媒体流的转移方法再一个实施例的流程图,本实施例中,使用第一设备的用户在通过第一设备的浏览器进行多媒体业务时,可以将第一设备的浏览器中获取的媒体流,转移到该第一设备的浏览器发现的第二设备上呈现。本实施例可以实现通过浏览器在不同设备上呈现不同的子页面或同一页面中的不同媒体流,带来更好的用户体验。
如图4所示,该媒体流的转移方法可以包括:
步骤401,使用第一设备的用户通过第一设备的浏览器,打开浏览的网页或基于Web的应用,第一设备的浏览器向相应的Web服务器发送业务请求。
举例来说,使用第一设备的用户通过第一设备的浏览器打开一个在线视频网站或在线视频的Web应用,经过媒体流协商过程,媒体流可以加载到第一设备的浏览器中准备呈现或进行呈现。
步骤402,第一设备的浏览器搜索可用于呈现媒体流的至少一个第二设备。
具体地,第一设备的浏览器可以通过无线保真(Wireless Fidelity;以下简称:WiFi)、超文本传输协议(Hypertext Transfer Protocol;以下简称:HTTP)、通用即插即用(Universal Plug and Play;以下简称:UPnP)、数字生活网络联盟(Digital Living Network Alliance;以下简称:DLNA)、蓝牙、近距离无线通信(Near Field Communication;以下简称:NFC)和红外技术等常用设备注册和/或设备查找协议搜索可用于呈现媒体流的至少一个第二设备。
可选地,至少一个第二设备可以是使用第一设备的用户可以访问的一个或多个设备。例如:第二设备可以是使用第一设备的用户的家庭网络中除第一设备之外的至少一个设备,或者可以是使用第一设备的用户有权限使用的至少一个设备。
步骤403,第一设备的浏览器将搜索到的至少一个第二设备的信息提示给上述使用第一设备的用户。
具体地,第一设备的浏览器可以通过Web页面或Web应用将上述至少一个第二设备的信息提示给上述使用第一设备的用户;或者,第一设备的浏览器也可以直接将上述至少一个第二设备的信息提示给上述使用第一设备的用户。
其中,上述至少一个第二设备的信息可以包括:第二设备的设备标识和/或第二设备的能力信息。具体地,第二设备的能力信息可以包括第二设备的设备类型和/或第二设备的业务能力等信息,例如:第二设备的能力信息可以为该第二设备是可以播放音频的设备、播放视频的设备或数据共享设备等。
步骤404,第一设备的浏览器标识该第一设备的浏览器接收的每路媒体流。
具体地,当第一设备的浏览器确定该第一设备的浏览器接收的媒体流包括至少两路媒体流,并且第一设备的浏览器已获得至少一个第二设备的信息时,第一设备的浏览器从媒体流中,解析出每路媒体流,缓存第一设备的浏览器接收的媒体流,并为缓存的每路媒体流分配一个标识。例如,当第一设备接收的媒体流为从同一个用户的同一设备的不同麦克风和/或摄像头采集的多路媒体流,第一设备的浏览器从接收的媒体流中解析出每路媒体流,并缓存每路媒体流及为缓存的每路媒体流分配标识;当第一设备接收的媒体流为从多个用户的不同设备采集的媒体流,经由服务器混频后发送给该第一设备,则第一设备的浏览器解析出不同的媒体流,并缓存所接收的媒体流及为缓存的媒体流分配标识。
另外,第一设备的浏览器还可以将标识的媒体流呈现给使用第一设备的用户供该用户处理和选择。
步骤405,当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,第一设备的浏览器将选定的媒体流与选定的至少一个第二设备关联。
其中,上述选定的至少一个第二设备是使用第一设备的用户根据第一设备的浏览器提示的至少一个第二设备的信息,从上述至少一个第二设备中选定的。
具体地,当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,第一设备的浏览器将选定的媒体流与选定的至少一个第二设备关联,需要说明的是:该关联是指在选定的媒体流与选定的至少一个第二设备之间建立联系,例如,在第一设备的屏幕上显示有选定的媒体流和选定的至少一个第二设备,通过连续点击选定的媒体流的标识和选定的至少一个第二设备的标识确定将选定的媒体流转移到选定的至少一个第二设备呈现,当然也可以将选定的媒体流的标识拖动到选定的至少一个第二设备的标识上,从而确定将选定的媒体流转移到选定的至少一个第二设备呈现。
其中,为选择的媒体流选定第二设备的步骤可以为选择不同的第二设备呈现不同的媒体流,例如为页面或Web应用中的至少一个媒体流对应地选择至少一个第二设备来呈现;在具体实现时,可以为选择的媒体流指定特定的第二设备,例如:可以指定视频会话的媒体流在手机上呈现,节目相关的视频媒体流在电视机上呈现等等。
步骤406,第一设备的浏览器将上述选定的一路媒体流转移到上述一路媒体流所关联的第二设备上呈现。
可选地,本实施例中,步骤402和步骤403可以在步骤401之前执行。
当然,本实施例中,使用第一设备的用户也可以先设置好媒体流对应的设备,第一设备的浏览器在接收到媒体流后,直接按照上述用户的预先设置,将媒体流发送到对应的设备上呈现。
进一步地,步骤406之后,当使用第一设备的用户需要操作媒体流时,例如:对媒体流进行暂停、继续播放、快进、快退、放大、缩小和/或截屏等操作时,该用户可以在第一设备的浏览器上操作,第一设备的浏览器根据用户的操作,对媒体流进行处理后再在第二设备上继续呈现。例如:当使用第一设备的用户快进时,第一设备的浏览器根据快进操作对媒体流进行缓存,将新的缓存后的媒体流,同步更新到相应的第二设备上呈现,以实现在一个设备的浏览器上可以操作多个设备上呈现的内容。
上述实施例可以实现将浏览器中子页面或子标签页中获得的媒体流,转移到不同设备上呈现,从而用户可以在该浏览器上进行其他操作,实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
图5为本发明媒体流的转移方法再一个实施例的流程图,本实施例主要实现在Web应用中,通过浏览器将媒体流分发给不同的设备单独呈现。Web应用为通过浏览器实现一些例如音视频通话,游戏等小应用的方式,不需要用户设备本地安装客户端,直接通过浏览器解析,渲染呈现给用户的页面。在Web应用中,浏览器可以解析出媒体流,获知媒体流的类型和媒体流的数量。浏览器获取可用于呈现媒体流的设备之后,将根据用户的需要,将媒体流根据用户的指示,转移到特定的设备上呈现,带来更好的用户体验。本实施例中,浏览器转移的媒体流可以为来自不同的Web应用的至少两路媒体流,也可以是同一个Web应用中的至少两路媒体流。
以下以基于Web的实时通信(WebRTC)业务为例,对本实施例提供的方法进行说明,本实施例可以实现浏览器在WebRTC业务中,解析接收到的媒体流,判断视频媒体流的数量,当有至少两路视频媒体流时,则提示用户可以将一路媒体流转移到另一设备上呈现;或者,在只有一路视频和一路音频的情况下,检测到有可用的视频呈现设备,则提示用户可以将视频在视频呈现设备上呈现,音频保留在原设备上呈现;最后,浏览器将拆分出不同的媒体流并将选定的媒体流转移到特定的设备上呈现,从而可以实现浏览器操作接收的媒体流分发到不同的设备上呈现。
如图5所示,该媒体流的转移方法可以包括:
步骤501,使用第一设备的用户A在第一设备上加载希望进行的业务的Web应用,例如基于Web的视频应用,这时,第一设备的浏览器向上述用户A呈现Web服务器返回的上述用户A加载的Web应用,用户A可以通过第一设备的浏览器所呈现的Web应用进行相应的业务。
步骤502,第一设备的浏览器呈现的Web应用指示第一设备的浏览器搜索可用于呈现媒体流的至少一个第二设备。
具体地,开发者在开发上述Web应用时,可以通过代码方式将搜索上述第二设备的指示写入该Web应用,当使用第一设备的用户A请求加载该Web应用时,代码将由该用户A触发执行或由上述Web应用自动执行,以指示第一设备的浏览器搜索可用于呈现媒体流的至少一个第二设备的信息。
步骤503,第一设备的浏览器发送搜索请求消息,以搜索可用于呈现媒体流的至少一个第二设备。
具体地,第一设备的浏览器可以通过WiFi、HTTP、UPnP、DLNA、蓝牙、NFC和红外技术等常用设备注册和/或设备查找协议搜索可用于呈现媒体流的至少一个第二设备。
可选地,第一设备的浏览器发送的搜索请求消息可以请求第二设备的业务信息、业务类型和/或能力信息等,例如:第一设备的浏览器可以通过“urn:schemas-services:audio/video/data”请求第二设备所支持的音频、视频或数据业务的能力,和/或请求第二设备所支持的媒体格式;或者,第一设备的浏览器可以通过“uuid/capability/type”请求第二设备的标识、第二设备支持的能力信息或第二设备的类型。
可选地,第一设备的浏览器可以根据搜索到的至少一个第二设备的信息,为每个第二设备分配一个标识;或者,第一设备的浏览器可以通过不同的统一资源定位符(Uniform Resource Locator;以下简称:URL)来识别不同的第二设备。
步骤504,第一设备的浏览器将获得的可用于呈现媒体流的至少一个第二设备的信息反馈给第一设备的浏览器呈现的Web应用,以供使用第一设备的用户A选择。
步骤505,使用第一设备的用户A通过第一设备的浏览器呈现的Web应用向用户B发起视频呼叫。
其中,用户A为拥有多个设备的用户,由于发起的是视频呼叫,第一设备的浏览器呈现的Web应用与第一设备的浏览器进行交互,发起信令协商,确定用户A发起的视频呼叫的媒体流信息,包括媒体流类型、端口号信息和媒体流格式等会话描述协议提供(Session Description Protocol;SDP Offer)信息。
步骤506,假设用户B也开启Web应用,用户B开启的Web应用接收到用户A发起的呼叫之后,完成信令协商,根据接收到的SDP Offer信息,生成SDP应答(SDP Answer)返回给Web服务器。
步骤507,Web服务器将接收到的SDP应答发送给第一设备的浏览器呈现的Web应用。
步骤508,用户A的设备和用户B的设备之间直接传递媒体流。
步骤509,第一设备的浏览器接收到媒体流后,解析出媒体流,并呈现给用户A。
可选地,第一设备的浏览器可以根据解析获得的媒体流类型,及获得的至少一个第二设备的信息判断是否可转移媒体流,并提示给用户A。举例来说,假设第一设备的浏览器接收的媒体流包括两个视频媒体流,用户A除第一设备之外,还有至少一个第二设备,则第一设备的浏览器可以向用户A提示可以将接收的两个视频媒体流之一或全部转移到第二设备上呈现,并且第一设备的浏览器还可以向用户A提示上述至少一个第二设备的信息。
可选地,第一设备的浏览器在接收到媒体流之后,在呈现给用户A之前可以根据接收的媒体流和获得的至少一个第二设备的信息判断是否有可转移的媒体流,如果存在时,第一设备的浏览器可对上述媒体流进行标识后再呈现给用户A,便于用户A直接选择需要转移到第二设备上呈现的媒体流。例如,在接收到两个视频媒体流之后,第一设备的浏览器可以拆分上述两个视频媒体流,并分别标识上述两个视频媒体流,呈现给用户A,供用户A选择并进一步操作选择的媒体流。
步骤510,用户A通过第一设备的浏览器呈现的Web应用向第一设备的浏览器发送媒体流转移请求。
可选地,如果媒体流已经被标识,则上述媒体流转移请求中可以携带用户A根据第一设备的浏览器提示的信息选择的需要转移到第二设备上呈现的媒体流,以及用户A为上述选择的媒体流选定的第二设备的信息。
步骤511,第一设备的浏览器根据上述媒体流转移请求,标识第一设备的浏览器接收的每路媒体流,当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,第一设备的浏览器将选定的媒体流与选定的至少一个第二设备关联。
需要说明的是:该关联是指在选定的媒体流与选定的至少一个第二设备之间建立联系,例如,在第一设备的屏幕上显示有选定的媒体流和选定的至少一个第二设备,通过连续点击选定的媒体流的标识和选定的至少一个第二设备的标识确定将选定的媒体流转移到选定的至少一个第二设备呈现,当然也可以将选定的媒体流的标识拖动到选定的至少一个第二设备的标识上,从而确定将选定的媒体流转移到选定的至少一个第二设备呈现。
可选地,在第一设备的浏览器接收到媒体流时可以不对媒体流进行标识,在接收到媒体流转移请求之后,再由第一设备的浏览器对接收的媒体流进行拆分和标识。
具体地,标识第一设备的浏览器接收的每路媒体流可以为:第一设备的浏览器接收到用户A发送的媒体流转移请求之后,缓存第一设备的浏览器接收到的每路媒体流,并为第一设备的浏览器缓存的每路媒体流分配一个标识,例如,第一设备的浏览器为缓存的每路媒体流分配一个URL。
在具体实现时,第一设备的浏览器可以通过调用媒体流标识分配的接口,例如createObjectURL(),则第一设备的浏览器将创建一个缓存的媒体流对象,并为缓存的每路媒体流分配一个标识,例如:URL,进一步地,还可以为该媒体流提供属性信息,例如:媒体流编码格式、所需带宽和/或发起方信息等,供后续操作该媒体流时使用。
其中,上述选定的至少一个第二设备是用户A根据第一设备的浏览器获得的至少一个第二设备的信息,从上述至少一个第二设备中选定的。
具体地,第一设备的浏览器可以将用户A选择的需要转移到第二设备上呈现的至少一路媒体流与用户A为上述选择的媒体流选定的至少一个第二设备进行关联。
步骤512,第一设备的浏览器将上述至少一路媒体流转移到上述至少一路媒体流所关联的第二设备上呈现。
具体地,上述媒体流的转移可以通过常用的设备间通信的协议实现。
其中,上述第一设备的浏览器可以对上述至少一路媒体流分别进行解析,将解析获得的至少一路媒体流发送到上述至少一路媒体流所关联的第二设备上呈现;或者,第一设备的浏览器也可以将上述至少一路媒体流的标识(例如:URL)发送给上述至少一路媒体流所关联的第二设备,以便上述至少一路媒体流所关联的第二设备根据上述标识向第一设备的浏览器获取用户A选择的媒体流并呈现。
举例来说,在具体实现时,第一设备的浏览器可以通过调用如下接口获取媒体流,并可以进一步将该媒体流传递给特定的第二设备。
Navigator OutputUserMedia{
void OutputUserMedia(constraints,successCallback,errorCallback);
};
其中,“constraints”包括以下参数之一或组合:缓存的所需转发的音频属性、视频属性、分配的媒体流标识和接收该转发的媒体流的第二设备标识等参数。
如下为,通过如下接口获取标识为stream1的视频媒体流,并为该媒体流创建一个URL的实现举例:
navigator.getUserMedia({video:true},gotStream);
var video=document.getElementById('stream1');
video.src=URL.createObjectURL(stream1);
另外,本实施例中,当有多个媒体流时,第一设备的浏览器可通过调用add()接口,在媒体流列表中增加新的媒体流供用户A选择转移到不同的第二设备。当用户A希望将某个媒体流在特定的第二设备上播放时,第一设备的浏览器可以通过调用remove()接口,将媒体流从媒体流列表中删除,并可以给出媒体流参数,这时,第一设备的浏览器将删除该第一设备的浏览器接收的已转移到第二设备上呈现的媒体流。
图6为本发明通过浏览器实现两个用户间实时通信一个实施例的示意图,如图6所示,用户A和用户B进行音视频实时通信,通过媒体协商后,媒体流将在两个浏览器之间直接通过实时传输协议(Real-time TransportProtocol;以下简称:RTP)传输。用户B有两个摄像头,一个麦克风作为输入设备,同时还有一个音频输出设备和一个视频输出设备。用户A在设备发现过程中,发现有一个音频输出设备,有两个视频输出设备,拥有一个摄像头和一个麦克风。用户A和用户B通过对等连接(PeerConnection)方法建立了两个RTP会话,两个RTP会话分别在不同的用户数据报协议(User DataProtocol;以下简称:UDP)端口上传输,每个RTP会话传输一种媒体类型,本例中,RTP1会话传输用户A浏览器与用户B浏览器之间双向传输的音频媒体流,RTP2会话传输用户A浏览器和用户B浏览器之间双向传输的视频媒体流,其中包括用户B发向用户A的两路视频媒体流和用户A发送给用户B的一路视频媒体流。用户A的浏览器解析出接收的用户B发送的两路视频媒体流,对媒体流缓存,分配URL,分别提供给两个视频输出设备呈现。
图7为本发明媒体流的转移方法再一个实施例的流程图,会议系统中,当用户A有多个设备时,用户A可以将多个与会方的视频,传递到不同设备上呈现。用户A的浏览器需要指示会议系统服务器该用户A为多设备用户,这样,会议系统服务器对发送给该用户A的视频不进行混频,其他与会方在媒体流中携带自身的标识,会议系统服务器在发送给上述用户A的媒体流中标识出与会方的信息,供用户A的会议终端上的浏览器将选定的与会方发送的视频媒体流分发到特定的设备上呈现。通过本实施例,可以避免在用户的一个显示设备的浏览器上以多个画面方式呈现多个与会方视频,画面较小的问题,提升用户在会议系统中的体验。
如图7所示,该媒体流的转移方法可以包括:
步骤701,第一设备的浏览器上加载使用第一设备的用户A希望进行业务的Web应用。
本实施例中,第一设备加载的Web应用为视频会议系统的Web应用,这时第一设备的浏览器中呈现视频会议系统返回的该Web应用给上述用户A,使用第一设备的用户A可以通过第一设备的浏览器呈现的页面进行相应的业务。
具体地,使用第一设备的用户A可以进入视频会议系统主页面加载该Web应用页面,也可通过给定的具体的某特定会议标识直接加载该特定会议的页面。
步骤702,第一设备的浏览器加载的Web应用指示第一设备的浏览器搜索可用于呈现媒体流的至少一个第二设备。
具体地,开发者在开发上述Web应用时,可以通过代码方式将搜索上述第二设备的指示写入该Web应用,当使用第一设备的用户A请求加载该Web应用时,代码将由该用户A触发执行或由上述Web应用自动执行,以指示第一设备的浏览器搜索可用于呈现媒体流的至少一个第二设备的信息。
步骤703,第一设备的浏览器发出搜索请求消息,以搜索可用于呈现媒体流的至少一个第二设备。
具体地,第一设备的浏览器可以通过WiFi、HTTP、UPnP、DLNA、蓝牙、NFC和红外技术等常用设备注册和/或设备查找协议搜索可用于呈现媒体流的至少一个第二设备。
可选地,第一设备的浏览器发送的搜索请求消息可以请求第二设备的业务信息、业务类型和/或能力信息等,例如:第一设备的浏览器可以通过“urn:schemas-services:audio/video/data”请求第二设备支持音频、视频或数据业务的能力,和/或请求第二设备支持的媒体格式;或者,第一设备的浏览器可以通过“uuid/capability/type”请求第二设备的标识、第二设备支持的能力信息或第二设备的类型。
可选地,第一设备的浏览器可以根据搜索到的至少一个第二设备的信息,为每个第二设备分配一个标识;或者,第一设备的浏览器可以通过不同的URL来识别不同的第二设备。
步骤704,第一设备的浏览器将获得的可用于呈现媒体流的至少一个第二设备的信息反馈给第一设备的浏览器加载的Web应用,以供使用第一设备的用户A选择。
步骤705,第一设备的浏览器通过第一设备的浏览器加载的Web应用向会议系统服务器发送SDP提供(SDP Offer)信息,并接收会议系统服务器返回的SDP应答(SDP Answer)信息。
其中,SDP提供信息可携带指示使用第一设备的用户A为多设备用户的指示信息,该指示信息用于指示会议系统服务器上述用户A希望将媒体流分发到不同呈现设备上呈现,这样,会议系统服务器对发送给使用第一设备的用户的媒体流不进行混频。
步骤706,第一设备的浏览器从会议系统服务器获得会议相关的媒体流。
其中,上述媒体流可包含音频、视频或数据等多媒体信息。媒体流中可携带该媒体流生成方的信息,例如:用户B的前摄像头视频和/或用户C的视频等媒体流生成方的标识,以便第一设备的浏览器根据该标识将对应的媒体流转发到选定的设备上。
步骤707,第一设备的浏览器接收到会议相关的媒体流之后,解析上述媒体流,并呈现给用户A。
可选地,第一设备的浏览器可以根据解析获得的媒体流类型,及获得的至少一个第二设备的信息判断是否可转移媒体流,并提示给用户A。举例来说,假设第一设备的浏览器接收的媒体流包括两个视频媒体流,用户A除第一设备之外,还有至少一个第二设备,则第一设备的浏览器可以向用户A提示可以将接收的两个视频媒体流之一或全部转移到第二设备上呈现,并且第一设备的浏览器还可以向用户A提示上述至少一个第二设备的信息。
步骤708,用户A通过第一设备的浏览器加载的Web应用向第一设备的浏览器发送媒体流转移请求。
具体地,用户A可根据与会方数量与可用于呈现媒体流的第二设备的数量,选择媒体流的转移。用户A可选择在第一设备的浏览器上呈现会议服务器发送的所有媒体流,并将部分媒体流复制并发送到其他设备上呈现。
可选地,如果媒体流已经被标识,则上述媒体流转移请求中可以携带用户A根据第一设备的浏览器提示的信息选择的需要转移到第二设备上呈现的媒体流,以及用户A为上述选择的媒体流选定的第二设备的信息。
可选地,用户A可以指定特定的媒体流发送给选定的第二设备,由第一设备的浏览器将用户A指定的媒体流与用户A为该指定的媒体流所选定的第二设备进行关联;例如:用户A除第一设备外,还有三个第二设备,则用户A可以将会议系统服务器发送的已经标识的媒体流对应的与会方视频,分别转移到三个第二设备上单独呈现。
步骤709,第一设备的浏览器根据用户A的请求,标识接收的每路媒体流。
具体地,第一设备的浏览器接收到用户A发送的媒体流转移请求之后,将缓存第一设备的浏览器接收到的每路媒体流,并为第一设备的浏览器缓存的每路媒体流分配一个标识,例如,第一设备的浏览器为缓存的每路媒体流分配一个URL。
当与会方的数量大于可用于呈现媒体流的第二设备的数量时,第一设备的浏览器可呈现所有与会方的视频,并将希望转移到第二设备上呈现的媒体流进行缓存和/或复制在第二设备上呈现。
步骤710,当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,第一设备的浏览器将选定的媒体流转移到上述选定的媒体流关联的第二设备上呈现。
具体地,上述媒体流的转移可以通过常用的设备间通信的协议实现。
其中,上述第一设备的浏览器可以对选定的一路媒体流进行解析,将解析获得的媒体流发送到上述选定的一路媒体流所关联的第二设备上呈现;或者,第一设备的浏览器也可以将上述选定的一路媒体流的标识(例如:URL)发送给上述选定的一路媒体流所关联的第二设备,以便上述选定的一路媒体流所关联的第二设备根据上述标识向第一设备的浏览器获取用户A选定的媒体流并呈现。
本实施例中,除了音视频媒体流,根据第一设备的浏览器搜索到的第二设备的业务类型信息,第一设备的浏览器还可以将接收到的数据共享内容,转移到带有数据共享服务的设备上,例如投影仪上。
图8为本发明通过浏览器实现两个用户间实时通信另一个实施例的示意图,如图8所示,用户A、用户B和用户C三个用户连接会议系统,其中用户C拥有两个视频显示设备,则会议服务器对于从用户A和用户B接收的媒体流,对于用户C发送时,对媒体流不进行混频,分为两路媒体流发送给用户C,并在两路媒体流中指示用户A和用户B的标识,以便用户C可以将两路媒体流区分选定在不同的视频显示设备上显示。
通过本发明提供的方法,用户终端上的浏览器,可以根据Web应用的指示,操作接收到的媒体流,并将接收到的媒体流转移到指定的设备上呈现。用户可以选择浏览器搜索到的设备,并在选定的设备上呈现指定的媒体流。特别在浏览器打开多个子页面时,可以将不同的子页面中的媒体流转移到不同的设备上呈现。在会议系统中,浏览器可以将一个Web应用页面上接收的多个媒体流分别转移到不同的呈现设备上呈现,以便于用户可以在更大的、独立的屏幕上观看不同的与会方。
本领域普通技术人员可以理解:实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一计算机可读取存储介质中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储介质包括:ROM、RAM、磁碟或者光盘等各种可以存储程序代码的介质。
图9为本发明用户设备一个实施例的结构示意图,本实施例中的用户设备可以为第一设备实现本发明图1所示实施例的流程,如图9所示,该用户设备可以包括:获取模块91、缓存模块92、标识模块93和转移模块94;
其中,获取模块91,用于通过第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
缓存模块92,用于通过第一设备的浏览器缓存上述第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
标识模块93,用于标识缓存模块92缓存的每路媒体流;具体地,标识模块93标识缓存模块92缓存的每路媒体流可以为:标识模块93为缓存的每路媒体流分配一个标识;
转移模块94,用于当确定将从标识模块93标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,通过上述第一设备的浏览器对选定的一路媒体流进行解析,将解析获得的媒体流发送到上述选定的第二设备上呈现。其中,上述选定的第二设备是根据获取模块91获取的至少一个第二设备的信息选定的。
具体地,转移模块94通过上述第一设备的浏览器对选定的一路媒体流进行解析可以为:转移模块94通过上述第一设备的浏览器对上述选定的一路媒体流进行解压缩和解码等解析处理,以将上述选定的一路媒体流解析为可以直接在选定的第二设备上播放的媒体流。
具体地,转移模块94将解析获得的媒体流发送到上述选定的第二设备上呈现可以为:转移模块94可以通过有线连接的数据线将解析获得的媒体流发送给上述选定的第二设备,也可通过WiFi、HTTP、UPnP、DLNA、蓝牙、NFC和/或红外技术等传输技术将解析获得的媒体流发送给上述选定的第二设备。
进一步地,本实施例的一种实现方式中,上述用户设备还可以包括:保留模块95;
保留模块95,用于保留上述网站页面或上述网页应用;
转移模块94,还用于当获取模块91接收到上述网站页面或上述网页应用发送的选定的一路媒体流的更新信息时,通过第一设备的浏览器将上述更新信息发送给选定的第二设备,以便上述选定的第二设备根据上述更新信息更新选定的一路媒体流并继续呈现。其中,转移模块94将上述更新信息发送给选定的第二设备时可以采用与将解析获得的媒体流发送到上述选定的第二设备相同的方式,在此不再赘述。
本实施例中,转移模块94转移到上述选定的第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
本实施例中,用户设备可以为手机、个人计算机(Personal Computer;以下简称:PC)、平板电脑、电视和/或机顶盒、车载设备、屏类终端等可以使用浏览器浏览网页和/或实现网页应用的设备。
上述实施例中所提供的用户设备可以实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
图10为本发明用户设备另一个实施例的结构示意图,本实施例中的用户设备可以为第一设备实现本发明图2所示实施例的流程,如图10所示,该用户设备可以包括:获取模块1001、缓存模块1002、标识模块1003和转移模块1004;
其中,获取模块1001,用于通过第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
缓存模块1002,用于通过第一设备的浏览器缓存第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
标识模块1003,用于标识缓存模块1002缓存的每路媒体流;
转移模块1004,用于当确定将从标识模块1003标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,通过第一设备的浏览器将上述选定的一路媒体流的标识发送给上述选定的第二设备,以便上述选定的第二设备根据选定的一路媒体流的标识向第一设备获取上述选定的一路媒体流并呈现。
其中,上述选定的第二设备是根据至少一个第二设备的信息选定的。
具体地,转移模块1004通过第一设备的浏览器将上述选定的一路媒体流的标识发送给上述选定的第二设备可以为:转移模块1004通过有线连接的数据线将选定的一路媒体流的标识发送给上述选定的第二设备,也可通过WiFi、HTTP、UPnP、DLNA、蓝牙、NFC和/或红外技术等传输技术将选定的一路媒体流的标识发送给上述选定的第二设备。
进一步地,在上述选定的第二设备接收到第一设备的浏览器发送的选定的一路媒体流的标识之后,第二设备可以将第一设备看作Web服务器,然后第二设备使用接收到的标识,通过HTTP请求向第一设备请求该标识对应的媒体流,最后第一设备响应该HTTP请求,向第二设备返回请求的媒体流,当然,第一设备向第二设备返回的请求的媒体流可以是第一设备解析处理后的可以直接在第二设备上播放的媒体流。
进一步地,本实施例的一种实现方式中,上述用户设备还可以包括:保留模块1005;
保留模块1005,用于保留上述网站页面或上述网页应用;
转移模块1004,还用于当获取模块1001接收到上述网站页面或上述网页应用发送的上述选定的一路媒体流的更新信息时,通过第一设备的浏览器将上述更新信息发送给上述选定的第二设备,以便上述选定的第二设备根据上述更新信息更新上述选定的一路媒体流并继续呈现。其中,转移模块1004通过第一设备的浏览器将上述更新信息发送给选定的第二设备时可以采用与将选定的一路媒体流的标识发送给选定的第二设备相同的方式,在此不再赘述。
本实施例中,转移模块1004转移到上述选定的第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
本实施例中,用户设备可以为手机、PC、平板电脑、电视和/或机顶盒、车载设备、屏类终端等可以使用浏览器浏览网页和/或实现网页应用的设备。
上述实施例中所提供的用户设备可以实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
图11为本发明用户设备再一个实施例的结构示意图,本实施例中的用户设备可以为第一设备实现本发明图3所示实施例的流程,如图11所示,该用户设备可以包括:获取模块1101、缓存模块1102、标识模块1103和转移模块1104;
其中,获取模块1101,用于通过第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
缓存模块1102,用于通过第一设备的浏览器缓存第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
标识模块1103,用于标识缓存模块1102缓存的每路媒体流;
转移模块1104,用于当确定将从标识模块1103标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,通过第一设备的浏览器将上述选定的一路媒体流的链接发送给选定的第二设备,以便选定的第二设备根据上述链接获取并播放上述链接对应的媒体流。其中,上述选定的第二设备是根据至少一个第二设备的信息选定的。
具体地,转移模块1104通过第一设备的浏览器将上述选定的一路媒体流的链接发送给选定的第二设备可以为:转移模块1104通过有线连接的数据线将上述选定的一路媒体流的链接发送给上述选定的第二设备,也可通过WiFi、HTTP、UPnP、DLNA、蓝牙、NFC和/或红外技术等传输技术将上述选定的一路媒体流的链接发送给上述选定的第二设备。
进一步地,本实施例的一种实现方式中,上述用户设备还可以包括:保留模块1105;
保留模块1105,用于保留上述网站页面或上述网页应用;
转移模块1104,还用于当获取模块1101接收到上述网站页面或上述网页应用发送的上述链接对应的媒体流的更新信息时,通过第一设备的浏览器将上述更新信息发送给上述选定的第二设备,以便上述选定的第二设备根据上述更新信息更新上述链接对应的媒体流并继续呈现。其中,转移模块1104通过第一设备的浏览器将上述更新信息发送给选定的第二设备时可以采用与将上述选定的一路媒体流的链接发送给选定的第二设备相同的方式,在此不再赘述。
本实施例中,转移模块1104转移到第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
本实施例中,用户设备可以为手机、PC、平板电脑、电视和/或机顶盒、车载设备、屏类终端等可以使用浏览器浏览网页和/或实现网页应用的设备。
上述实施例中所提供的用户设备可以实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
图12为本发明用户设备再一个实施例的结构示意图,本实施例中的用户设备可以为第一设备实现本发明图1所示实施例的流程,如图12所示,该用户设备可以包括:处理器1201、存储器1202和总线1203,其中,处理器1201和存储器1202通过总线1203进行相互间的通信,存储器1202用于存储程序,处理器1201用于执行存储器1202中存储的程序,所述程序在被执行时包括如下操作:
通过第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
通过第一设备的浏览器缓存上述第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
标识第一设备的浏览器缓存的每路媒体流;
当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,通过第一设备的浏览器对选定的一路媒体流进行解析,将解析获得的媒体流发送到上述选定的第二设备上呈现。
其中,上述选定的第二设备是根据至少一个第二设备的信息选定的。
具体地,标识第一设备的浏览器缓存的每路媒体流可以为:为缓存的每路媒体流分配一个标识。
具体地,通过第一设备的浏览器对选定的一路媒体流进行解析可以为:通过第一设备的浏览器对上述选定的一路媒体流进行解压缩和解码等解析处理,以将上述选定的一路媒体流解析为可以直接在选定的第二设备上播放的媒体流。
具体地,将解析获得的媒体流发送到上述选定的第二设备上呈现可以为:通过有线连接的数据线将解析获得的媒体流发送给上述选定的第二设备,也可通过WiFi、HTTP、UPnP、DLNA、蓝牙、NFC和/或红外技术等传输技术将解析获得的媒体流发送给上述选定的第二设备。
进一步地,处理器1201用于执行存储器1202中存储的程序,所述程序在被执行时,还包括:保留上述网站页面或上述网页应用;当接收到上述网站页面或上述网页应用发送的上述选定的一路媒体流的更新信息时,通过第一设备的浏览器将上述更新信息发送给选定的第二设备,以便选定的第二设备根据上述更新信息更新上述选定的一路媒体流并继续呈现。其中,将上述更新信息发送给选定的第二设备时可以采用与将解析获得的媒体流发送到上述选定的第二设备相同的方式,在此不再赘述。
本实施例中,转移到上述选定的第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
本实施例中,用户设备可以为手机、PC、平板电脑、电视和/或机顶盒等可以使用浏览器浏览网页和/或视频的设备。
上述用户设备当第一设备的浏览器接收到多画面的媒体流时,或者打开多个画面的媒体流时,可以实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
图13为本发明用户设备再一个实施例的结构示意图,本实施例中的用户设备可以为第一设备实现本发明图2所示实施例的流程,如图13所示,该用户设备可以包括:处理器1301、存储器1302和总线1303,其中,处理器1301和存储器1302通过总线1303进行相互间的通信,存储器1302用于存储程序,处理器1301用于执行存储器1302中存储的程序,所述程序在被执行时,包括如下操作:
通过第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
通过第一设备的浏览器缓存上述第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
标识上述第一设备的浏览器缓存的每路媒体流;
当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,通过第一设备的浏览器将选定的一路媒体流的标识发送给选定的第二设备,以便上述选定的第二设备根据选定的一路媒体流的标识向上述第一设备获取选定的一路媒体流并呈现。
其中,上述选定的第二设备是根据至少一个第二设备的信息选定的。
具体地,通过第一设备的浏览器将选定的一路媒体流的标识发送给选定的第二设备可以为:通过有线连接的数据线将选定的一路媒体流的标识发送给上述选定的第二设备,也可通过WiFi、HTTP、UPnP、DLNA、蓝牙、NFC和/或红外技术等传输技术将选定的一路媒体流的标识发送给上述选定的第二设备。
进一步地,在上述选定的第二设备接收到第一设备的浏览器发送的选定的一路媒体流的标识之后,第二设备可以将第一设备看作Web服务器,然后第二设备使用接收到的标识,通过HTTP请求向第一设备请求该标识对应的媒体流,最后第一设备响应该HTTP请求,向第二设备返回请求的媒体流,当然,第一设备向第二设备返回的请求的媒体流可以是第一设备解析处理后的可以直接在第二设备上播放的媒体流。
进一步地,处理器1301用于执行存储器1302中存储的程序,所述程序在被执行时,还包括:保留上述网站页面或上述网页应用;当接收到上述网站页面或上述网页应用发送的上述选定的一路媒体流的更新信息时,通过第一设备的浏览器将上述更新信息发送给选定的第二设备,以便上述选定的第二设备根据上述更新信息更新上述选定的一路媒体流并继续呈现。其中,将上述更新信息发送给选定的第二设备时可以采用与将选定的一路媒体流的标识发送给选定的第二设备相同的方式,在此不再赘述。
本实施例中,转移到上述选定的第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
本实施例中,用户设备可以为手机、PC、平板电脑、电视和/或机顶盒等可以使用浏览器浏览网页和/或视频的设备。
上述用户设备在当第一设备的浏览器接收到多画面的媒体流时,或者打开多个画面的媒体流时,可以实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
图14为本发明用户设备再一个实施例的结构示意图,本实施例中的用户设备可以为第一设备实现本发明图3所示实施例的流程,如图14所示,该用户设备可以包括:处理器1401、存储器1402和总线1403,其中,处理器1401和存储器1402通过总线1403进行相互间的通信,存储器1402用于存储程序,处理器1401用于执行存储器1402中存储的程序,所述程序在被执行时,包括如下操作:
通过第一设备的浏览器获取可用于呈现媒体流的至少一个第二设备的信息;
通过第一设备的浏览器缓存上述第一设备的浏览器从网站页面或网页应用获取的每路媒体流;
标识第一设备的浏览器缓存的每路媒体流;
当确定将从标识的媒体流中选定的一路媒体流转移到选定的第二设备上呈现时,通过第一设备的浏览器将上述选定的一路媒体流的链接发送给选定的第二设备,以便选定的第二设备根据上述链接获取并播放上述链接对应的媒体流。
其中,上述选定的第二设备是根据至少一个第二设备的信息选定的。
具体地,通过第一设备的浏览器将上述选定的一路媒体流的链接发送给选定的第二设备可以为:通过有线连接的数据线将上述选定的一路媒体流的链接发送给上述选定的第二设备,也可通过WiFi、HTTP、UPnP、DLNA、蓝牙、NFC和/或红外技术等传输技术将上述选定的一路媒体流的链接发送给上述选定的第二设备。
进一步地,处理器1401用于执行存储器1402中存储的程序,所述程序在被执行时,还包括:保留上述网站页面或上述网页应用;当接收到上述网站页面或上述网页应用发送的上述链接对应的媒体流的更新信息时,通过第一设备的浏览器将上述更新信息发送给选定的第二设备,以便上述选定的第二设备根据上述更新信息更新上述链接对应的媒体流并继续呈现。其中,将上述更新信息发送给选定的第二设备时可以采用与将上述选定的一路媒体流的链接发送给选定的第二设备相同的方式,在此不再赘述。
本实施例中,第一设备的浏览器转移到第二设备上呈现的媒体流包括来自不同子页面的媒体流中的一个,或者来自同一页面中的多个媒体流中的一个。
本实施例中,用户设备可以为手机、PC、平板电脑、电视和/或机顶盒等可以使用浏览器浏览网页和/或视频的设备。
上述用户设备在当第一设备的浏览器接收到多画面的媒体流时,或者打开多个画面的媒体流时,可以实现浏览器将接收到的多个媒体流中的某个媒体流转移到指定的设备上呈现。
本领域技术人员可以理解附图只是一个优选实施例的示意图,附图中的模块或流程并不一定是实施本发明所必须的。
本领域技术人员可以理解实施例中的装置中的模块可以按照实施例描述进行分布于实施例的装置中,也可以进行相应变化位于不同于本实施例的一个或多个装置中。上述实施例的模块可以合并为一个模块,也可以进一步拆分成多个子模块。
最后应说明的是:以上各实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述各实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分或者全部技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的范围。