CN110740337A - 直播播放方法、装置、电子设备及存储介质 - Google Patents
直播播放方法、装置、电子设备及存储介质 Download PDFInfo
- Publication number
- CN110740337A CN110740337A CN201910962076.5A CN201910962076A CN110740337A CN 110740337 A CN110740337 A CN 110740337A CN 201910962076 A CN201910962076 A CN 201910962076A CN 110740337 A CN110740337 A CN 110740337A
- Authority
- CN
- China
- Prior art keywords
- browser
- live
- live broadcast
- information
- service state
- 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
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/21—Server components or server architectures
- H04N21/218—Source of audio or video content, e.g. local disk arrays
- H04N21/2187—Live feed
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/41—Structure of client; Structure of client peripherals
- H04N21/4104—Peripherals receiving signals from specially adapted client devices
- H04N21/4126—The peripheral being portable, e.g. PDAs or mobile phones
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing 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/431—Generation of visual interfaces for content selection or interaction; Content or additional data rendering
- H04N21/4312—Generation of visual interfaces for content selection or interaction; Content or additional data rendering involving specific graphical features, e.g. screen layout, special fonts or colors, blinking icons, highlights or animations
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/478—Supplemental services, e.g. displaying phone caller identification, shopping application
- H04N21/4782—Web browsing, e.g. WebTV
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/47—End-user applications
- H04N21/485—End-user interface for client configuration
- H04N21/4858—End-user interface for client configuration for modifying screen layout parameters, e.g. fonts, size of the windows
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Human Computer Interaction (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
- Information Transfer Between Computers (AREA)
Abstract
本公开是关于一种直播播放方法、装置、电子设备及存储介质,涉及视频处理技术领域,用以解决相关技术中在直播过程中根据直播流尺寸的变化实时调整浏览器端播放器的播放窗口显示样式的问题,本公开方法包括:在直播播放过程中,接收浏览器当前正在播放的直播流的业务状态信息,其中业务状态信息用于表示浏览器当前正在播放的直播流的状态发生变化;根据业务状态信息调整浏览器的播放窗口的显示样式。由于本公开实施例中的浏览器可以在直播播放过程中实时接收直播了尺寸发送变化后的业务状态信息,根据接收到的业务状态信息调整浏览器的播放窗口的显示样式,因而可以实现动态适配直播的播放样式。
Description
技术领域
本公开涉及视频处理技术领域,尤其涉及一种直播播放方法、装置、电子设备及存储介质。
背景技术
手机视频直播是近几年流行的一种视频播放形式,具有很强的实时性。在移动端,通过浏览器播放是一种有别于直播APP(Application,客户端)播放的形式,目前在移动端浏览器上对直播或者点播的视频进行播放时,都是采用预获取视频尺寸信息的方式,在直播播放前就根据预先得到的视频尺寸信息设置好视频播放器的播放窗口显示样式,达到视频横竖屏播放的效果。
随着直播形式的不断增加,直播画面不再单一,例如在直播过程中会有两个直播流合成一个直播流的情况出现,但是浏览器没有办法在不改变手机摆放方式(手机摆成横屏或者竖屏)的同时根据实时直播流的视频尺寸动态调整播放器尺寸,来适应新的直播流,这时浏览器端直播画面会变的不协调,造成新的直播显示出现错位的视觉体验,不利于直播观看者的使用。
综上,相关技术中采用浏览器观看直播时,无法在直播过程中根据直播流尺寸的变化实时调整浏览器端播放器的播放窗口显示样式。
发明内容
本公开提供一种直播播放方法、装置、电子设备及存储介质,以至少解决相关技术中浏览器无法在直播过程中根据直播流尺寸的变化实时调整浏览器端播放器的播放窗口显示样式的问题。本公开的技术方案如下:
根据本公开实施例的第一方面,提供一种直播播放方法,应用于浏览器,包括:
在直播播放过程中,接收所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,所述接收所述浏览器当前正在播放的直播流的业务状态信息的步骤,包括:
接收接口服务器发送的业务状态信息,其中所述业务状态信息为所述接口服务器根据所述浏览器当前正在播放的直播流的尺寸信息确定的,所述尺寸信息是所述直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后通知给所述接口服务器的。
在一种可选的实施方式中,所述根据所述业务状态信息调整所述浏览器的播放窗口的显示样式的步骤,包括:
根据所述业务状态信息设置所述浏览器的视频标签中的目标属性;
根据所述目标属性调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,在所述接收所述浏览器当前正在播放的直播流的业务状态信息的步骤之前,还包括:
在直播加载时,向Web(World Wide Web,万维网)服务器发送直播请求;
在接收到所述Web服务器根据所述直播请求返回的直播信息后,从所述直播信息中获取接口服务器的地址信息;
根据所述地址信息与所述接口服务器建立连接。
在一种可选的实施方式中,所述根据所述地址信息与所述接口服务器建立连接的步骤,包括:
在直播播放过程中根据所述地址信息周期与所述接口服务器建立短连接;
在所述与所述接口服务器建立短连接步骤之后,所述接收接口服务器发送的业务状态信息步骤之前,还包括:
通过与所述接口服务器之间的短连接向所述接口服务器发送业务状态请求;
所述接收接口服务器发送的业务状态信息的步骤包括:
从接收到的所述接口服务器返回的响应中获取所述业务状态信息。
在一种可选的实施方式中,所述根据所述地址信息与所述接口服务器建立连接的步骤,包括:
在开始播放直播时根据所述地址信息与所述接口服务器建立长连接;
所述接收接口服务器发送的业务状态信息的步骤包括:
通过与所述接口服务器之间的长连接接收所述接口服务器发送的所述业务状态信息。
根据本公开实施例的第二方面,提供一种直播播放方法,应用于接口服务器,包括:
确定浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
将所述业务状态信息发送给所述浏览器,以使所述浏览器根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,所述确定浏览器当前正在播放的直播流的业务状态信息的步骤,包括:
接收直播服务器通知的与所述接口服务器建立连接的浏览器当前正在播放的直播流的尺寸信息,其中所述尺寸信息为所述直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后通知给所述接口服务器的;
根据所述尺寸信息确定所述浏览器当前正在播放的直播流的业务状态信息。
在一种可选的实施方式中,在所述将所述业务状态信息发送给所述浏览器步骤之前,还包括:
周期与所述浏览器建立短连接;
通过与所述浏览器之间的短连接接收所述浏览器发送的业务状态请求;
所述将所述业务状态信息发送给所述浏览器的步骤包括:
通过与所述浏览器之间的短连接,将包含所述业务状态信息的响应发送给所述浏览器。
在一种可选的实施方式中,在所述将所述业务状态信息发送给浏览器步骤之前,还包括:
与所述浏览器建立长连接;
所述将所述业务状态信息发送给所述浏览器的步骤包括:
通过与所述浏览器之间的长连接,将所述业务状态信息发送给所述浏览器。
在一种可选的实施方式中,通过下列方式确定所述业务状态信息:
接收直播服务器发送的所述浏览器当前正在播放的直播流的业务状态信息;或
从数据库中获取所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息是直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后存储到所述数据库中的。
根据本公开实施例的第三方面,提供一种直播播放方法,应用于Web服务器,包括:
接收浏览器发送的直播请求;
根据所述直播请求确定包含接口服务器的地址信息的直播信息后,将所述直播信息发送给所述浏览器,以使所述浏览器根据所述地址信息与所述接口服务器建立连接后,根据接收到的所述接口服务器发送的所述浏览器当前正在播放的直播流的业务状态信息,调整所述浏览器的播放窗口的显示样式,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化。
根据本公开实施例的第四方面,提供一种直播播放方法,应用于直播服务器,包括:
确定浏览器当前正在播放的直播流的尺寸发生变化;
将所述直播流的尺寸信息通知接口服务器,以使所述接口服务器将根据所述尺寸信息确定的用于调整所述浏览器的播放窗口的显示样式的业务状态信息发送给所述浏览器。
在一种可选的实施方式中,所述将所述直播流的尺寸信息通知接口服务器步骤包括:
将所述尺寸信息直接发送给所述接口服务器;或
将所述尺寸信息存储到数据库,以使所述接口服务器从所述数据库中获取所述尺寸信息。
根据本公开实施例的第五方面,提供一种直播播放装置,应用于浏览器,包括:
第一处理单元,被配置为执行在直播播放过程中,接收所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
调整单元,被配置为执行根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,所述第一处理单元具体被配置为执行:
接收接口服务器发送的业务状态信息,其中所述业务状态信息为所述接口服务器根据所述浏览器当前正在播放的直播流的尺寸信息确定的,所述尺寸信息是所述直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后通知给所述接口服务器的。
在一种可选的实施方式中,所述调整单元具体被配置为执行:
根据所述业务状态信息设置所述浏览器的视频标签中的目标属性;
根据所述目标属性调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,所述第一处理单元在接收所述浏览器当前正在播放的直播流的业务状态信息之前还被配置为执行:
在直播加载时,向Web服务器发送直播请求;
在接收到所述Web服务器根据所述直播请求返回的直播信息后,从所述直播信息中获取接口服务器的地址信息;
根据所述地址信息与所述接口服务器建立连接。
在一种可选的实施方式中,所述第一处理单元具体被配置为执行:
在直播播放过程中根据所述地址信息周期与所述接口服务器建立短连接;
所述第一处理单元还被配置为执行:
在与所述接口服务器建立短连接之后,接收接口服务器发送的业务状态信息之前,通过与所述接口服务器之间的短连接向所述接口服务器发送业务状态请求;
所述第一处理单元具体被配置为执行:
从接收到的所述接口服务器返回的响应中获取所述业务状态信息。
在一种可选的实施方式中,所述第一处理单元具体被配置为执行:
在开始播放直播时根据所述地址信息与所述接口服务器建立长连接;
通过与所述接口服务器之间的长连接接收所述接口服务器发送的所述业务状态信息。
根据本公开实施例的第六方面,提供一种直播播放装置,应用于接口服务器,包括:
第一确定单元,被配置为执行确定浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
第二处理单元,被配置为执行将所述业务状态信息发送给所述浏览器,以使所述浏览器根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,所述第一确定单元具体被配置为执行:
接收直播服务器通知的与所述接口服务器建立连接的浏览器当前正在播放的直播流的尺寸信息,其中所述尺寸信息为所述直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后通知给所述接口服务器的;
根据所述尺寸信息确定所述浏览器当前正在播放的直播流的业务状态信息。
在一种可选的实施方式中,所述第二处理单元还被配置为执行:
在将所述业务状态信息发送给所述浏览器之前,周期与所述浏览器建立短连接;
通过与所述浏览器之间的短连接接收所述浏览器发送的业务状态请求;
所述第二处理单元具体被配置为执行:
通过与所述浏览器之间的短连接,将包含所述业务状态信息的响应发送给所述浏览器。
在一种可选的实施方式中,所述第二处理单元还被配置为执行:
在将所述业务状态信息发送给浏览器之前,与所述浏览器建立长连接;
所述第二处理单元具体被配置为执行:
通过与所述浏览器之间的长连接,将所述业务状态信息发送给所述浏览器。
在一种可选的实施方式中,所述确定单元还被配置为执行通过下列方式确定所述业务状态信息:
接收直播服务器发送的所述浏览器当前正在播放的直播流的业务状态信息;或
从数据库中获取所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息是直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后存储到所述数据库中的。
根据本公开实施例的第七方面,提供一种直播播放装置,应用于Web服务器,包括:
接收单元,被配置为执行接收浏览器发送的直播请求;
发送单元,被配置为执行根据所述直播请求确定包含接口服务器的地址信息的直播信息后,将所述直播信息发送给所述浏览器,以使所述浏览器根据所述地址信息与所述接口服务器建立连接后,根据接收到的所述接口服务器发送的所述浏览器当前正在播放的直播流的业务状态信息,调整所述浏览器的播放窗口的显示样式,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化。
根据本公开实施例的第八方面,提供一种直播播放装置,应用于直播服务器,包括:
第二确定单元,被配置为执行确定浏览器当前正在播放的直播流的尺寸发生变化;
通知单元,被配置为执行将所述直播流的尺寸信息通知接口服务器,以使所述接口服务器将根据所述尺寸信息确定的用于调整所述浏览器的播放窗口的显示样式的业务状态信息发送给所述浏览器。
在一种可选的实施方式中,所述通知单元具体用于:
将所述尺寸信息直接发送给所述接口服务器;或
将所述尺寸信息存储到数据库,以使所述接口服务器从所述数据库中获取所述尺寸信息。
根据本公开实施例的第九方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现本公开实施例第一方面中任一项所述的直播播放方法。
根据本公开实施例的第十方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现本公开实施例第二方面中任一项所述的直播播放方法。
根据本公开实施例的第十一方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现本公开实施例第三方面中任一项所述的直播播放方法。
根据本公开实施例的第十二方面,提供一种电子设备,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现本公开实施例第四方面中任一项所述的直播播放方法。
根据本公开实施例的第十三方面,提供一种非易失性可读存储介质,当所述存储介质中的指令由直播播放装置的处理器执行时,使得直播播放装置能够执行本公开实施例第一方面至第四方面中任一项所述的直播播放方法。
根据本公开实施例的第十三方面,提供一种计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行实现本公开实施例上述第一方面至第四方面以及第一方面至第四方面涉及的任一可能设计的方法。
根据本公开实施例的第十四方面,提供一种直播播放系统,该系统包括:浏览器、web服务器、直播服务器和接口服务器;
所述浏览器,用于在直播播放过程中,接收所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;根据所述业务状态信息调整所述浏览器的播放窗口的显示样式;
所述web服务器,用于确定浏览器当前正在播放的直播流的业务状态信息;将所述业务状态信息发送给所述浏览器;
所述直播服务器,用于接收浏览器发送的直播请求;根据所述直播请求确定包含接口服务器的地址信息的直播信息后,将所述直播信息发送给所述浏览器;
所述接口服务器,用于确定浏览器当前正在播放的直播流的尺寸发生变化;将所述直播流的尺寸信息通知接口服务器。
本公开的实施例提供的技术方案至少带来以下有益效果:
由于本公开实施例中的接口服务器与浏览器在开始播放直播时建立连接,其中接口服务器的地址信息是在浏览器向Web服务器发送直播请求后,Web服务器发送给浏览器的,接口服务器在确定浏览器当前正在播放的直播流的尺寸发生变化后,将业务状态信息发送给浏览器,进而浏览器则可在直播播放过程中动态调整浏览器的播放窗口的显示样式,其中接口服务器发送的业务状态信息是接口服务器根据直播服务器通知的浏览器当前正在播放的直播流的尺寸信息确定的,由于本公开实施例中的浏览器可以在直播播放过程中根据接收到的业务状态信息实时调整浏览器的播放窗口的显示样式,因而可以实现动态适配直播的播放样式,优化视频特殊处理后在浏览器的显示效果。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理,并不构成对本公开的不当限定。
图1A是根据一示例性实施例示出的一种直播播放界面的示意图。
图1B是根据一示例性实施例示出的另一种直播播放界面的示意图。
图2是根据一示例性实施例示出的一种直播播放的应用场景示意图。
图3是根据一示例性实施例示出的一种直播播放系统的结构图。
图4是根据一示例性实施例示出的一种动态调整后直播播放界面的示意图。
图5是根据一示例性实施例示出的另一种动态调整后直播播放界面的示意图。
图6是根据一示例性实施例示出的第一种直播播放方法的流程图。
图7是根据一示例性实施例示出的第二种直播播放方法的流程图。
图8是根据一示例性实施例示出的第三种直播播放方法的流程图。
图9是根据一示例性实施例示出的第四种直播播放方法的流程图。
图10是根据一示例性实施例示出的一种直播播放的完整方法的流程图。
图11是根据一示例性实施例示出的第一种直播播放装置的框图。
图12是根据一示例性实施例示出的第一种电子设备的框图。
图13是根据一示例性实施例示出的第二种直播播放装置的框图。
图14是根据一示例性实施例示出的第二种电子设备的框图。
图15是根据一示例性实施例示出的第三种直播播放装置的框图。
图16是根据一示例性实施例示出的第三种电子设备的框图。
图17是根据一示例性实施例示出的第四种直播播放装置的框图。
图18是根据一示例性实施例示出的第四种电子设备的框图。
具体实施方式
为了使本领域普通人员更好地理解本公开的技术方案,下面将结合附图,对本公开实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本公开的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本公开的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本公开相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本公开的一些方面相一致的装置和方法的例子。
下面对文中出现的一些词语进行解释:
1、本公开实施例中术语“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。
2、本公开实施例中术语“电子设备”是指由集成电路、晶体管、电子管等电子元器件组成,应用电子技术(包括)软件发挥作用的设备,包括电子计算机以及由电子计算机控制的机器人、数控或程控系统等。
3、本公开实施例中术语“直播流”是指直播视频的流媒体数据。
4、本公开实施例中术语“移动端”是指移动通信终端,可以在移动中使用的计算机设备,大部分情况下是指手机或者具有多种应用功能的智能手机以及平板电脑、个人电脑(personal computer,PC)、个人数字助理(personal digital assistant,PDA)、移动上网设备(mobile Internet device,MID)等。
5、本公开实施例中术语“Web”:全球广域网,也称为万维网,它是一种基于超文本和HTTP(HyperText Transfer Protocol,超文本传输协议)的、全球性的、动态交互的、跨平台的分布式图形信息系统。是建立在Internet(因特网)上的一种网络服务,为浏览者在Internet上查找和浏览信息提供了图形化的、易于访问的直观界面,其中的文档及超级链接将Internet上的信息节点组织成一个互为关联的网状结构。
6、本公开实施例中术语“服务器”,是为终端服务的,服务的内容诸如向终端提供资源,保存终端数据;服务器是与终端上安装的应用程序相对应的,与终端上的应用程序配合运行,例如网络服务器、数据库服务器、云端服务器等等。
7、本公开实施例中术语“客户端”,既可以指软件类的APP(Application,应用程序),也可以指终端设备。它具有可视的显示界面,能与用户进行交互;是与服务器相对应,为客户提供本地服务。针对软件类的应用程序,除了一些只在本地运行的应用程序之外,一般安装在普通的客户终端上,需要与服务器互相配合运行。因特网发展以后,较常用的应用程序包括了如收寄电子邮件时的电子邮件客户端,以及即时通讯的客户端等。对于这一类应用程序,需要网络中有相应的服务器和服务程序来提供相应的服务,如数据库服务,配置参数服务等等,这样在客户终端和服务器,需要建立特定的通信连接,来保证应用程序的正常运行。
在本公开实施例中,客户端的操作系统可以是,但不限于:安卓(Android)系统、IOS(iPhone operating system)系统、Windows phone系统、Windows系统等。
本公开实施例描述的应用场景是为了更加清楚的说明本公开实施例的技术方案,并不构成对于本公开实施例提供的技术方案的限定,本领域普通技术人员可知,随着新应用场景的出现,本公开实施例提供的技术方案对于类似的技术问题,同样适用。其中,在本公开的描述中,除非另有说明,“多个”的含义。
如图1A及图1B所示为相关技术中常见的两种直播播放的方式,其中图1A是最常的一种方式,即手机浏览器用户播放画面A与直播客户端画面A相同,服务器只需简单处理即可;图1B所示即在直播过程中两个直播流合成一个直播流的情况,这种情况下需要服务器对直播客户端画面A与直播客户端画面B对应的直播流进行合流处理,合成一个直播流后,在手机浏览器用户播放画面显示时即将画面一分为二进行显示,如图所示,左半侧画面与直播客户端画面A对应,右半侧画面与直播客户端画面B对应。
本公开的技术方案可以应用于观众使用浏览器观看直播的场景下,在浏览器直播过程中,浏览器与接口服务器建立连接,便于接口服务器向浏览器下发业务状态信息,使得浏览器根据接口服务器实时推送过了的业务状态信息,在不改变播放终端摆放位置的前提下,能够实时调整播放器的尺寸,来优化直播显示效果。
一种可选的应用场景如图2所示的示意图,终端22可以为电脑、手机等。终端22可以通过WiFi(Wireless-Fidelity,无线保真)或有线的方式接入通信网络。终端22中安装浏览器A,该浏览器A可用于播放直播。当观众21操作终端22使用浏览器A加载直播时,终端22上的浏览器A通过通信网络向对应的Web服务器23发送直播请求,web服务器23将直播信息返回给浏览器A;浏览器A根据直播信息中的接口服务器地址信息与接口服务器25建立通信连接,在直播播放过程中,当直播流的尺寸发生变化时,接口服务器25将直播服务器24通知的浏览器A当前正在播放的直播流的尺寸信息,确定表示浏览器A当前正在播放的直播流的状态发生变化的业务状态信息,由接口服务器25将确定的业务状态信息发送给浏览器A,以便浏览器A可以根据接收到的业务状态信息调整当前播放界面的尺寸。
在该场景下,图3是根据一示例性实施例示出的一种直播播放系统的框图,如图3所示,该系统包括:浏览器10,Web服务器20,直播服务器30,接口服务器40;
浏览器10,用于在直播播放过程中,接收所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;根据所述业务状态信息调整所述浏览器的播放窗口的显示样式;
Web服务器20,用于确定浏览器当前正在播放的直播流的业务状态信息;将所述业务状态信息发送给所述浏览器;
直播服务器30,用于接收浏览器发送的直播请求;根据所述直播请求确定包含接口服务器的地址信息的直播信息后,将所述直播信息发送给所述浏览器;
接口服务器40,用于确定浏览器当前正在播放的直播流的尺寸发生变化;将所述直播流的尺寸信息通知接口服务器。
通过上述方案,接口服务器与浏览器在开始播放直播时建立连接,其中接口服务器的地址信息是在浏览器向Web服务器发送直播请求后,Web服务器发送给浏览器的,接口服务器在确定浏览器当前正在播放的直播流的尺寸发生变化后,将业务状态信息发送给浏览器,进而浏览器则可在直播播放过程中动态调整浏览器的播放窗口的显示样式,其中接口服务器发送的业务状态信息是接口服务器根据直播服务器通知的浏览器当前正在播放的直播流的尺寸信息确定的,由于本公开实施例中的浏览器可以在直播播放过程中根据接收到的业务状态信息实时调整浏览器的播放窗口的显示样式,因而可以实现动态适配直播的播放样式,优化视频特殊处理后在浏览器的显示效果。
在一种可选的实施方式中,浏览器用于调整播放窗口显示样式的业务状态信息是接口服务器发送过来的。
例如两个视频流合成一个时,直播服务器进行合流处理,并将浏览器当前播放的直播流合流处理后的尺寸信息发送给接口服务器,接口服务器根据接收到的尺寸信息生成业务状态信息。
例如:合流处理后的尺寸信息比较适合横屏显示时,则可生成与横屏显示相关的业务状态信息;合流处理后的尺寸信息比较适合竖屏显示时,则可生成与竖屏显示相关的业务状态信息,等等。
在本公开实施例中,浏览器根据业务状态信息调整播放窗口的显示样式时,具体过程为:根据业务状态信息设置浏览器的视频标签中的目标属性;并根据目标属性调整浏览器的播放窗口的显示样式。
例如,根据业务状态信息确定浏览器的video(视频)标签的object-fit(对象适合)属性,然后进行相应调整,以进行窗口适配。
例如,业务状态信息是横屏时,调整object-fit为contain(包含);业务状态信息是竖屏时,调整object-fit为cover(覆盖)。
其中,object-fit属性指定替换元素的内容应该如何适应到其使用的高度和宽度确定的框。contain表示:被替换的内容将被缩放,以在填充元素的内容框时保持其宽高比。整个对象在填充盒子的同时保留其长宽比,因此如果宽高比与框的宽高比不匹配,该对象可能会在容器内留下空白。cover表示:被替换的内容大小保持其宽高比,同时填充元素的整个内容框。如果对象的宽高比与盒子的宽高比不匹配,该对象将被剪裁以适应即部分区域不可见。
在本公开实施例中,直播服务端即与主播方直播所使用的客户端,也就是直播客户端对应的服务端,web服务端为浏览器对应的服务端,接口服务端是用于实时向浏览器反馈直播状态和直播流业务状态信息的。
在直播页面加载时,浏览器需要从Web服务器获取直播信息,直播信息中包括直播地址和直播尺寸信息,浏览器则可根据直播当前的状态及直播尺寸信息预先设置浏览器上直播播放器的样式,来适应初始的播放的状态,横屏或竖屏播放直播。
其中,浏览器从Web服务器获取直播信息具体的获取过程为:浏览器向Web服务器发送直播请求,Web服务器在接收到浏览器发送的直播请求后,根据直播请求确定直播信息,并将确定的直播信息发送给浏览器。
其中,Web服务器根据直播请求确定直播信息的过程为:
Web服务器根据直播请求中请求的信息的类型确定具体的信息发送给浏览器,例如直播请求中请求的信息的类型包括直播地址、接口服务器的地址信息以及直播流尺寸信息,则Web服务器将具体的直播地址(例如URL(Uniform Resource Locator,统一资源定位符)地址),以及接口服务器的地址(例如域名+接口),以及直播流的具体的尺寸携带在直播信息中返回给浏览器。
浏览器根据直播信息中的直播流尺寸信息调整该浏览器上直播播放器的样式,例如调整成如图1A所示的样式用于使用初始的播放状态,并根据直播信息中的直播地址从CDN(Content Delivery Network,内容分发网络)服务器获取相应的直播流进行播放。
在开始播放直播后,浏览器根据直播信息中的包含的接口服务器的地址信息和相应的接口服务器建立连接。
在一种可选的实施方式中,接口服务器的地址信息也可以是由web服务器发送给其他设备后,经其他设备中转后发送给浏览器的,不一定是由文本服务器直接发送给浏览器;或者,接口服务器的地址信息也可以是用户输入的,浏览器根据用户输入的地址信息与相应的接口服务器建立连接。
其中,浏览器与接口服务器建立连接的方式可以分为如下两种:
方式一、建立短连接。
其中,短连接指通讯双方有数据交互时,就建立一个连接,数据发送完成后,则断开此连接,即每次连接只完成一项业务的发送。例如,Web网站的http服务一般都用短连接。
具体的,浏览器在直播播放过程中根据获取的接口服务器的地址信息周期与该接口服务器建立短连接;并在与接口服务器建立短连接之后,向接口服务器发送业务状态请求;在接收到服务器发送的响应后从响应中获取业务状态信息。
在本公开实施例中,浏览器周期与接口服务器建立短连接,并发送业务状态请求,该方式相当于浏览器主动轮询接口服务器,周期向接口服务器发送轮询请求,询问接口服务器直播流的业务状态信息。
方式二、建立长连接。
其中,长连接指在一个连接上可以连续发送多个数据包,在连接保持期间,如果没有数据包发送,需要双方发链路检测包。长连接多用于操作频繁,点对点的通讯,而且连接数不能太多情况。每个TCP(Transmission Control Protocol,传输控制协议)连接都需要三步握手,这需要时间,如果每个操作都是短连接,再操作的话那么处理速度会降低很多,所以每个操作完后都不断开,下次处理时直接发送数据包即可,不用建立TCP连接。例如:数据库的连接用长连接,如果用短连接频繁的通信会造成socket(套接字)错误,而且频繁的socket创建也是对资源的浪费。
在一种可选的实施方式中接口服务器为websocket服务器,其中WebSocket协议是基于TCP的一种新的网络协议。它实现了浏览器与服务器full-duplex(全双工)通信--允许服务器主动发送信息给客户端。
具体的,浏览器在开始播放直播时根据接口服务器地址信息与相应的接口服务器建立长连接,并在建立长连接后实时获取接口服务器发送的直播流的业务状态信息。
在一种可选的实施方式中,接口服务器与浏览器保持长连接,并实时向浏览器返回直播状态,例如直播中或者直播结束等。
在一种可选的实施方式中,浏览器与接口服务器建立连接的过程为浏览器根据获取的接口服务器的地址信息向相应的接口服务器发起建立连接的请求,接口服务器在接收到请求后与浏览器建立连接,浏览器与接口服务器也建立连接。若浏览器与接口服务器建立短连接,则可由浏览器周期向接口服务器发起建立连接的请求。
需要说明的是,在使用浏览器播放直播的一次过程中,浏览器获取的直播信息中的直播地址保持不变,即使直播流的尺寸发生变化,直播地址也不会发生变化,故浏览器实时依据该地址从CDN获取直播流进行播放。
在本公开实施例中,当接口服务器通过接收到的直播服务器发送的直播流的尺寸信息确定浏览器当前正在播放的直播流的尺寸发生变化,例如两个直播流合流时,这时接口服务器根据接收到的尺寸信息确定浏览器当前正在播放的直播流的业务状态信息。浏览器实时从接口服务器端获取当前直播的状态,并接收接口服务器下发的直播流的业务状态信息,动态调整浏览器的播放窗口的显示样式,来完成对直播流的展示的适配。其中直播的状态一般表示直播中,直播结束等状态。
在本公开实施例中,直播流的尺寸发生变化的原因有很多种,下面列举几种:
第一种:直播方被动合流,一般指在直播过程中两个直播流合成一个直播流的情况。
例如,主播A在直播时接收到主播B发起的挑战,或者主播B在直播时向主播A发起挑战,这种情况下一但挑战接受,两个直播间的主播就开始连麦互动,直播界面一分为二,同时显示两个主播的画面,两方粉丝也会进入到同一个直播间中,这种即跨直播间PK(PlayerKilling,挑战)。
这种情况下主播A的直播客户端会向直播服务器发起合流请求,直播服务器在接收到合流请求后,对直播流进行合流处理,并将合流处理后的直播流尺寸信息通知接口服务器,由接口服务器下发给浏览器;同时直播服务器将合流处理后的直播流推到CDN服务器上。
其中主播A的直播服务器与主播B的直播服务器可以为同一个,也可以为同一组服务器中的服务器。
在本公开实施例中,合流处理前后直播流的地址没有发生变化,浏览器仍旧可以根据之前获得的直播地址从CDN服务器获取合流处理后的直播流,CDN服务器中存的合流处理后的直播流是在直播服务器合流处理后发送给CDN服务器的。
如图4所示,为本公开实施例示出的一种动态调整浏览器播放界面尺寸的示意图,表示在直播播放过程中,直播流A和直播流B经服务器合流处理后,输出的直播流可保存到CDN服务器,这里的服务器指直播服务器,同时直播服务器将输出的直播流的尺寸信息通知给接口服务器,接口服务器根据尺寸信息确定直播状态信息后发送给浏览器,以使浏览器动态调整浏览器的播放窗口的显示样式,以适应合流后得到的直播流的尺寸,提升用户的体验,例如切换为图中所示横屏显示的方式,在不调整手机摆放位置的前提下,将竖屏调整为横屏,显示的位置可以位置手机界面的上、中、下等位置,可以根据用户设置调整,也可以依据预设的固定位置进行展示等。
第二种:直播方主动切换,例如将竖屏展示的游戏A切换为横屏展示的游戏B。
如图5所示,这种情况下,则可由直播服务器对直播流处理后,这里的处理可以指直播流尺寸调整等,将直播流的尺寸信息通知给接口服务器,接口服务器确定业务状态信息后,在下发业务状态信息给浏览器时,可以由接口服务器主动下发给浏览器,或者由接口服务器接收到浏览器的轮询后下发给浏览器。
在本公开实施例中,直播流的业务状态信息是用于调整浏览器的播放窗口的显示样式的信息,用于表示所述浏览器当前正在播放的直播流的状态发生变化。
需要说明的是,本公开实施例中所列举的直播流的尺寸发送变化的方式只是举例说明,任何一种直播流的尺寸发送变化的方式都适用于本公开实施例。
在本公开实施例中,在直播服务器确定浏览器当前正在播放的直播流的尺寸发生变化,例如直播服务器确定直播客户端当前正在直播的直播流的尺寸发生变化后,将业务状态信息通知接口服务器。
其中,直播服务器将尺寸信息通知给接口服务器的方式有很多种,下面列举两种:
方式一、尺寸信息直播服务器将尺寸信息存储到数据库,接口服务器从数据库中获取尺寸信息。
例如,直播服务器把发送尺寸变化的直播流的尺寸信息存储到数据库中,接口服务器会从数据库中获取与该接口服务器建立连接的浏览器当前正在播放的直播流的尺寸信息,由于尺寸信息都是从后端数据库中获取的,所以基本所有的尺寸信息都可以获取到。
方式二、直播服务器直接与接口服务器直接通信,将尺寸信息直接发送给接口服务器,接口服务器接收尺寸信息。
需要说明的是,本公开实施例中所列举的直播服务器将尺寸信息通知给接口服务器的方式只是举例说明,任何一种直播服务器将尺寸信息通知给接口服务器的方式都适用于本公开实施例。
在本公开实施例中,接口服务器也可以是web服务器、直播服务器或其它服务器中的一种,或者接口服务器也可以与web服务器、直播服务器或其它服务器合并为一个服务器。其中,可以将直播流的业务状态信息下发给浏览器的服务器都可以作为接口服务器。当接口服务器为Web服务器时,则不需要再向浏览器返回接口服务器的地址信息;当接口服务器为直播服务器时,则不再需要由直播服务器将尺寸信息通知给接口服务器。
图6是根据一示例性实施例示出的一种直播播放方法的流程图,应用于浏览器,如图6所示,包括以下步骤:
在步骤S61中,在直播播放过程中,接收所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
在步骤S62中,根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,所述接收所述浏览器当前正在播放的直播流的业务状态信息的步骤,包括:
接收接口服务器发送的业务状态信息,其中所述业务状态信息为所述接口服务器根据所述浏览器当前正在播放的直播流的尺寸信息确定的,所述尺寸信息是所述直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后通知给所述接口服务器的。
在一种可选的实施方式中,所述根据所述业务状态信息调整所述浏览器的播放窗口的显示样式的步骤,包括:
根据所述业务状态信息设置所述浏览器的视频标签中的目标属性;
根据所述目标属性调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,在所述接收所述浏览器当前正在播放的直播流的业务状态信息的步骤之前,还包括:
在直播加载时,向Web服务器发送直播请求;
在接收到所述Web服务器根据所述直播请求返回的直播信息后,从所述直播信息中获取接口服务器的地址信息;
根据所述地址信息与所述接口服务器建立连接。
在一种可选的实施方式中,所述根据所述地址信息与所述接口服务器建立连接的步骤,包括:
在直播播放过程中根据所述地址信息周期与所述接口服务器建立短连接;
在所述与所述接口服务器建立短连接步骤之后,所述接收接口服务器发送的业务状态信息步骤之前,还包括:
通过与所述接口服务器之间的短连接向所述接口服务器发送业务状态请求;
所述接收接口服务器发送的业务状态信息的步骤包括:
从接收到的所述接口服务器返回的响应中获取所述业务状态信息。
在一种可选的实施方式中,所述根据所述地址信息与所述接口服务器建立连接的步骤,包括:
在开始播放直播时根据所述地址信息与所述接口服务器建立长连接;
所述接收接口服务器发送的业务状态信息的步骤包括:
通过与所述接口服务器之间的长连接接收所述接口服务器发送的所述业务状态信息。
图7是根据一示例性实施例示出的一种直播播放方法的流程图,应用于接口服务器,如图7所示,包括以下步骤:
在步骤S71中,确定浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
在步骤S72中,将所述业务状态信息发送给所述浏览器,以使所述浏览器根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,所述确定浏览器当前正在播放的直播流的业务状态信息的步骤,包括:
接收直播服务器通知的与所述接口服务器建立连接的浏览器当前正在播放的直播流的尺寸信息,其中所述尺寸信息为所述直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后通知给所述接口服务器的;
根据所述尺寸信息确定所述浏览器当前正在播放的直播流的业务状态信息。
在一种可选的实施方式中,在所述将所述业务状态信息发送给所述浏览器步骤之前,还包括:
周期与所述浏览器建立短连接;
通过与所述浏览器之间的短连接接收所述浏览器发送的业务状态请求;
所述将所述业务状态信息发送给所述浏览器的步骤包括:
通过与所述浏览器之间的短连接,将包含所述业务状态信息的响应发送给所述浏览器。
在一种可选的实施方式中,在所述将所述业务状态信息发送给浏览器步骤之前,还包括:
与所述浏览器建立长连接;
所述将所述业务状态信息发送给所述浏览器的步骤包括:
通过与所述浏览器之间的长连接,将所述业务状态信息发送给所述浏览器。
在一种可选的实施方式中,通过下列方式确定所述业务状态信息:
接收直播服务器发送的所述浏览器当前正在播放的直播流的业务状态信息;或
从数据库中获取所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息是直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后存储到所述数据库中的。
图8是根据一示例性实施例示出的一种直播播放方法的流程图,应用于web服务器,如图8所示,包括以下步骤:
在步骤S81中,接收浏览器发送的直播请求;
在步骤S82中,根据所述直播请求确定包含接口服务器的地址信息的直播信息后,将所述直播信息发送给所述浏览器,以使所述浏览器根据所述地址信息与所述接口服务器建立连接后,根据接收到的所述接口服务器发送的所述浏览器当前正在播放的直播流的业务状态信息,调整所述浏览器的播放窗口的显示样式,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化。
图9是根据一示例性实施例示出的一种直播播放方法的流程图,应用于直播服务器,如图9所示,包括以下步骤:
在步骤S91中,确定浏览器当前正在播放的直播流的尺寸发生变化;
在步骤S92中,将所述直播流的尺寸信息通知接口服务器,以使所述接口服务器将根据所述尺寸信息确定的用于调整所述浏览器的播放窗口的显示样式的业务状态信息发送给所述浏览器。
在一种可选的实施方式中,所述将所述直播流的尺寸信息通知接口服务器的步骤,包括:
将所述尺寸信息直接发送给所述接口服务器;或
将所述尺寸信息存储到数据库,以使所述接口服务器从所述数据库中获取所述尺寸信息。
图10是根据一示例性实施例示出的一种直播播放的完整方法流程图,具体包括以下步骤:
在步骤S101中,浏览器在直播加载时向Web服务器发送直播请求;
在步骤S102中,Web服务器向浏览器返回直播信息;
在步骤S103中,浏览器根据直播信息中的直播地址向CDN服务器请求直播流;
在步骤S104中,CDN服务器向浏览器返回直播流;
在步骤S105中,浏览器在开始播放直播时根据直播信息中的接口服务器地址信息与接口服务器建立长连接;
在步骤S106中,接口服务器与浏览器保持长连接,实时返回直播状态;
在步骤S107中,接口服务器确定浏览器当前正在播放的直播流的尺寸发生变化后,将该直播流的业务状态信息发送给浏览器;
在步骤S108中,浏览器根据接收到的业务状态信息调整浏览器的播放窗口的显示样式。
其中,在步骤S103中,浏览器根据直播信息中的直播地址向CDN服务器请求直播流,由于直播是实时的,直播流的获取也是实时的,所以这一步骤在本次直播过程中是一直保持的,即浏览器需要实时依据直播信息中的直播地址向CDN服务器请求直播流。
在步骤S107中,接口服务器确定浏览器当前正在播放的直播流的尺寸发生变化时是根据直播服务器发送的尺寸信息确定的,之后接口服务器根据直播流尺寸发送变化后的尺寸信息确定该直播流的业务状态信息,并将该直播流的业务状态信息发送给浏览器。
图11是根据一示例性实施例示出的一种直播播放装置框图,应用于浏览器。参照图11,该装置包括第一处理单元1100和调整单元1101。
所述第一处理单元1100,被配置为执行在直播播放过程中,接收所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
所述调整单元1101,被配置为执行根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,所述第一处理单元1100具体被配置为执行:
接收接口服务器发送的业务状态信息,其中所述业务状态信息为所述接口服务器根据所述浏览器当前正在播放的直播流的尺寸信息确定的,所述尺寸信息是所述直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后通知给所述接口服务器的。
在一种可选的实施方式中,所述调整单元1101具体被配置为执行:
根据所述业务状态信息设置所述浏览器的视频标签中的目标属性;
根据所述目标属性调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,所述第一处理单元1100在接收所述浏览器当前正在播放的直播流的业务状态信息之前还被配置为执行:
在直播加载时,向Web服务器发送直播请求;
在接收到所述Web服务器根据所述直播请求返回的直播信息后,从所述直播信息中获取接口服务器的地址信息;
根据所述地址信息与所述接口服务器建立连接。
在一种可选的实施方式中,所述第一处理单元1100具体被配置为执行:
在直播播放过程中根据所述地址信息周期与所述接口服务器建立短连接;
所述第一处理单元1100还被配置为执行:
在与所述接口服务器建立短连接之后,接收接口服务器发送的业务状态信息之前,通过与所述接口服务器之间的短连接向所述接口服务器发送业务状态请求;
所述第一处理单元1100具体被配置为执行:
从接收到的所述接口服务器返回的响应中获取所述业务状态信息。
在一种可选的实施方式中,所述第一处理单元1100具体被配置为执行:
在开始播放直播时根据所述地址信息与所述接口服务器建立长连接;
通过与所述接口服务器之间的长连接接收所述接口服务器发送的所述业务状态信息。
图12是根据一示例性实施例示出的一种电子设备1200的框图,该装置包括:
处理器1210;
用于存储所述处理器1210可执行指令的存储器1220;
其中,所述处理器1210被配置为执行所述指令,以实现上述实施例中任意一项所述的直播播放方法。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器1220,上述指令可由电子设备1200的处理器1210执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图13是根据一示例性实施例示出的一种直播播放装置框图,应用于接口服务器。参照图13,该装置包括第一确定单元1300和第二处理单元1301。
所述第一确定单元1300,被配置为执行确定浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
所述第二处理单元1301,被配置为执行将所述业务状态信息发送给所述浏览器,以使所述浏览器根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
在一种可选的实施方式中,所述第一确定单元1300具体被配置为执行:
接收直播服务器通知的与所述接口服务器建立连接的浏览器当前正在播放的直播流的尺寸信息,其中所述尺寸信息为所述直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后通知给所述接口服务器的;
根据所述尺寸信息确定所述浏览器当前正在播放的直播流的业务状态信息。
在一种可选的实施方式中,所述第二处理单元1301还被配置为执行:
在将所述业务状态信息发送给所述浏览器之前,周期与所述浏览器建立短连接;
通过与所述浏览器之间的短连接接收所述浏览器发送的业务状态请求;
所述第二处理单元1301具体被配置为执行:
通过与所述浏览器之间的短连接,将包含所述业务状态信息的响应发送给所述浏览器。
在一种可选的实施方式中,所述第二处理单元1301还被配置为执行:
在将所述业务状态信息发送给浏览器之前,与所述浏览器建立长连接;
所述第二处理单元1301具体被配置为执行:
通过与所述浏览器之间的长连接,将所述业务状态信息发送给所述浏览器。
在一种可选的实施方式中,所述第一确定单元1300还被配置为执行通过下列方式确定所述业务状态信息:
接收直播服务器发送的所述浏览器当前正在播放的直播流的业务状态信息;或
从数据库中获取所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息是直播服务器在所述浏览器当前正在播放的直播流的尺寸发生变化后存储到所述数据库中的。
图14是根据一示例性实施例示出的一种电子设备1400的框图,该装置包括:
处理器1410;
用于存储所述处理器1410可执行指令的存储器1420;
其中,所述处理器1410被配置为执行所述指令,以实现上述实施例中任意一项所述的直播播放方法。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器1420,上述指令可由电子设备1400的处理器1410执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图15是根据一示例性实施例示出的一种直播播放装置框图,应用于Web服务器。参照图15,该装置包括接收单元1500和发送单元1501。
接收单元1500,被配置为执行接收浏览器发送的直播请求;
发送单元1501,被配置为执行根据所述直播请求确定包含接口服务器的地址信息的直播信息后,将所述直播信息发送给所述浏览器,以使所述浏览器根据所述地址信息与所述接口服务器建立连接后,根据接收到的所述接口服务器发送的所述浏览器当前正在播放的直播流的业务状态信息,调整所述浏览器的播放窗口的显示样式,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化。
图16是根据一示例性实施例示出的一种电子设备1600的框图,该装置包括:
处理器1610;
用于存储所述处理器1610可执行指令的存储器1620;
其中,所述处理器1610被配置为执行所述指令,以实现上述实施例中任意一项所述的直播播放方法。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器1620,上述指令可由电子设备1600的处理器1610执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
图17是根据一示例性实施例示出的一种直播播放装置框图,应用于直播服务器。参照图17,该装置包括第二确定单元1700和通知单元1701
所述第二确定单元1700,被配置为执行确定浏览器当前正在播放的直播流的尺寸发生变化;
所述通知单元1701,被配置为执行将所述直播流的尺寸信息通知接口服务器,以使所述接口服务器将根据所述尺寸信息确定的用于调整所述浏览器的播放窗口的显示样式的业务状态信息发送给所述浏览器。
在一种可选的实施方式中,所述通知单元1701具体用于:
将所述尺寸信息直接发送给所述接口服务器;或
将所述尺寸信息存储到数据库,以使所述接口服务器从所述数据库中获取所述尺寸信息。
关于上述实施例中的装置,其中各个单元执行请求的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
图18是根据一示例性实施例示出的一种电子设备1800的框图,该装置包括:
处理器1810;
用于存储所述处理器1810可执行指令的存储器1820;
其中,所述处理器1810被配置为执行所述指令,以实现上述实施例中任意一项所述的直播播放方法。
在示例性实施例中,还提供了一种包括指令的存储介质,例如包括指令的存储器1820,上述指令可由电子设备1800的处理器1810执行以完成上述方法。可选地,存储介质可以是非临时性计算机可读存储介质,例如,所述非临时性计算机可读存储介质可以是ROM、随机存取存储器(RAM)、CD-ROM、磁带、软盘和光数据存储设备等。
本公开实施例还提供一种计算机程序产品,当所述计算机程序产品在电子设备上运行时,使得所述电子设备执行实现本公开实施例上述任意一项直播播放方法或任意一项直播播放方法任一可能设计的方法。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其它实施方案。本公开旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由下面的权利要求指出。
应当理解的是,本公开并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本公开的范围仅由所附的权利要求来限制。
Claims (10)
1.一种直播播放方法,其特征在于,应用于浏览器,包括:
在直播播放过程中,接收所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
2.一种直播播放方法,其特征在于,应用于接口服务器,包括:
确定浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
将所述业务状态信息发送给所述浏览器,以使所述浏览器根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
3.一种直播播放方法,其特征在于,应用于Web服务器,包括:
接收浏览器发送的直播请求;
根据所述直播请求确定包含接口服务器的地址信息的直播信息后,将所述直播信息发送给所述浏览器,以使所述浏览器根据所述地址信息与所述接口服务器建立连接后,根据接收到的所述接口服务器发送的所述浏览器当前正在播放的直播流的业务状态信息,调整所述浏览器的播放窗口的显示样式,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化。
4.一种直播播放方法,其特征在于,应用于直播服务器,包括:
确定浏览器当前正在播放的直播流的尺寸发生变化;
将所述直播流的尺寸信息通知接口服务器,以使所述接口服务器将根据所述尺寸信息确定的用于调整所述浏览器的播放窗口的显示样式的业务状态信息发送给所述浏览器。
5.一种直播播放装置,其特征在于,应用于浏览器,包括:
第一处理单元,被配置为执行在直播播放过程中,接收所述浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
调整单元,被配置为执行根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
6.一种直播播放装置,其特征在于,应用于接口服务器,包括:
第一确定单元,被配置为执行确定浏览器当前正在播放的直播流的业务状态信息,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化;
第二处理单元,被配置为执行将所述业务状态信息发送给所述浏览器,以使所述浏览器根据所述业务状态信息调整所述浏览器的播放窗口的显示样式。
7.一种直播播放装置,其特征在于,应用于Web服务器,包括:
接收单元,被配置为执行接收浏览器发送的直播请求;
发送单元,被配置为执行根据所述直播请求确定包含接口服务器的地址信息的直播信息后,将所述直播信息发送给所述浏览器,以使所述浏览器根据所述地址信息与所述接口服务器建立连接后,根据接收到的所述接口服务器发送的所述浏览器当前正在播放的直播流的业务状态信息,调整所述浏览器的播放窗口的显示样式,其中所述业务状态信息用于表示所述浏览器当前正在播放的直播流的状态发生变化。
8.一种直播播放装置,其特征在于,应用于直播服务器,包括:
第二确定单元,被配置为执行确定浏览器当前正在播放的直播流的尺寸发生变化;
通知单元,被配置为执行将所述直播流的尺寸信息通知接口服务器,以使所述接口服务器将根据所述尺寸信息确定的用于调整所述浏览器的播放窗口的显示样式的业务状态信息发送给所述浏览器。
9.一种电子设备,其特征在于,包括:
处理器;
用于存储所述处理器可执行指令的存储器;
其中,所述处理器被配置为执行所述指令,以实现如权利要求1所述的直播播放方法或权利要求2所述的直播播放方法或权利要求3所述的直播播放方法或权利要求4所述的直播播放方法。
10.一种存储介质,其特征在于,当所述存储介质中的指令由电子设备的处理器执行时,使得所述电子设备能够执行如权利要求1至权利要求4中任一项所述的直播播放方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910962076.5A CN110740337B (zh) | 2019-10-11 | 2019-10-11 | 直播播放方法、装置、电子设备及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910962076.5A CN110740337B (zh) | 2019-10-11 | 2019-10-11 | 直播播放方法、装置、电子设备及存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110740337A true CN110740337A (zh) | 2020-01-31 |
CN110740337B CN110740337B (zh) | 2022-02-08 |
Family
ID=69269855
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910962076.5A Active CN110740337B (zh) | 2019-10-11 | 2019-10-11 | 直播播放方法、装置、电子设备及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110740337B (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111343152A (zh) * | 2020-02-07 | 2020-06-26 | 北京达佳互联信息技术有限公司 | 数据处理方法、装置及电子设备、存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2681920A1 (en) * | 2011-03-01 | 2014-01-08 | Telefonaktiebolaget L M Ericsson (PUBL) | Methods and apparatuses for resuming paused media |
CN104253814A (zh) * | 2014-09-12 | 2014-12-31 | 清华大学 | 一种流媒体处理方法、服务器及浏览器 |
CN106020852A (zh) * | 2016-06-30 | 2016-10-12 | 北京奇虎科技有限公司 | 运行窗口直播方法、系统及浏览器 |
CN108989836A (zh) * | 2017-05-31 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 一种多媒体数据流的处理方法及装置 |
-
2019
- 2019-10-11 CN CN201910962076.5A patent/CN110740337B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2681920A1 (en) * | 2011-03-01 | 2014-01-08 | Telefonaktiebolaget L M Ericsson (PUBL) | Methods and apparatuses for resuming paused media |
CN104253814A (zh) * | 2014-09-12 | 2014-12-31 | 清华大学 | 一种流媒体处理方法、服务器及浏览器 |
CN106020852A (zh) * | 2016-06-30 | 2016-10-12 | 北京奇虎科技有限公司 | 运行窗口直播方法、系统及浏览器 |
CN108989836A (zh) * | 2017-05-31 | 2018-12-11 | 腾讯科技(深圳)有限公司 | 一种多媒体数据流的处理方法及装置 |
Non-Patent Citations (2)
Title |
---|
FLORIAN RHINOW ET AL: "P2P Live Video Streaming in WebRTC", 《 2014 WORLD CONGRESS ON COMPUTER APPLICATIONS AND INFORMATION SYSTEMS (WCCAIS)》 * |
邓庚盛等: "HLS和HTML5S技术在视频直播中的应用", 《科技广场》 * |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111343152A (zh) * | 2020-02-07 | 2020-06-26 | 北京达佳互联信息技术有限公司 | 数据处理方法、装置及电子设备、存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN110740337B (zh) | 2022-02-08 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN103248939B (zh) | 一种实现多屏同步显示的方法及系统 | |
CN103269362B (zh) | 网页中图片局部内容的分享方法、系统和装置 | |
CN102263988B (zh) | 交互式网络电视iptv的消息业务的实现方法及系统 | |
CN104539977B (zh) | 直播预览方法及装置 | |
CN100589552C (zh) | 网络电视系统中发送多媒体消息的系统和方法 | |
CN109561351A (zh) | 网络直播回放方法、装置及存储介质 | |
CN113126839B (zh) | 一种对象播放方法、装置、电子设备及存储介质 | |
CN105407369A (zh) | 一种基于Web应用的终端通信方法与装置 | |
EP2712126A2 (en) | Networking method, server end device, client end device and network system | |
US20130080560A1 (en) | System and Method for Sharing Digital Data on a Presenter Device to a Plurality of Participant Devices | |
EP3070935B1 (en) | Apparatus, system, and method of controlling output of content data, and carrier means | |
MX2014007234A (es) | Soporte de multiples modos de interaccion de usuario basados en atencion. | |
CN102970331A (zh) | 图片提供系统 | |
JP2006510310A (ja) | マルチメディアメッセージ処理サービスのための方法及びシステム | |
KR101593780B1 (ko) | 상이한 디바이스들에 걸친 콘텐츠의 끊김 없는 네비게이션을 위한 방법 및 시스템 | |
CN104618785A (zh) | 音视频播放方法、装置及系统 | |
WO2017028655A1 (zh) | 一种截屏方法、终端及机顶盒 | |
CN109640113A (zh) | 一种拖拉视频数据的处理方法及代理服务器 | |
CN103167327A (zh) | 信息互动方法、装置及系统 | |
CN105142030A (zh) | 一种基于电视的实现社交功能的系统及方法 | |
CN107396136A (zh) | 一种视频数据获取方法、装置、服务器及介质 | |
CN107786415A (zh) | 一种业务处理方法及相关设备与系统 | |
JP6083039B1 (ja) | 携帯端末にプッシュ通知を行うための通知方法及び通知サーバ | |
CN110740337B (zh) | 直播播放方法、装置、电子设备及存储介质 | |
CN105100949A (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 |