CN109309842B - 直播数据处理方法和装置、计算机设备和存储介质 - Google Patents
直播数据处理方法和装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN109309842B CN109309842B CN201710632535.4A CN201710632535A CN109309842B CN 109309842 B CN109309842 B CN 109309842B CN 201710632535 A CN201710632535 A CN 201710632535A CN 109309842 B CN109309842 B CN 109309842B
- Authority
- CN
- China
- Prior art keywords
- live broadcast
- live
- room
- request
- video stream
- 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
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/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
- H04N21/239—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests
- H04N21/2393—Interfacing the upstream path of the transmission network, e.g. prioritizing client content requests involving handling client requests
-
- 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/25—Management 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/262—Content 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
-
- 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/435—Processing of additional data, e.g. decrypting of additional data, reconstructing software from modules extracted from the transport stream
-
- 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/437—Interfacing the upstream path of the transmission network, e.g. for transmitting client requests to a VOD server
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Databases & Information Systems (AREA)
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本发明提供一种直播数据处理方法和装置、计算机设备和存储介质,该方法包括:当获取到加载请求时,加载直播列表;获取加载的直播列表中处于直播状态的直播房间的房间信息;当获取到对处于直播状态的直播房间的直播入口控件的触发操作时,根据所述直播入口控件对应的所述房间信息向服务器发送视频流请求;接收所述服务器根据所述视频流请求返回的视频流。采用该方法,无需用户选择某个直播房间后,再花费时间与服务器通信以获取该直播房间的房间信息,从而减少了用户选择直播房间到接收直播视频流之间的等待时间,达至首屏耗时短的效果。
Description
技术领域
本发明涉及互联网技术领域,特别是涉及一种直播数据处理方法和装置、计算机设备和存储介质。
背景技术
网络直播以其低成本和良好互动的优点,受到越来越多用户的喜欢,用户使用终端观看直播视频。
直播视频平台提供直播入口页面,该页面展示直播房间的直播列表,直播列表中各直播房间设置有直播入口控件。用户点击直播入口控件后,终端获取视频流并播放。其中,首屏耗时是衡量直播性能的重要指标。首屏耗时是第一次点击播放后,肉眼看到画面所等待的时间。
传统的直播数据处理方法,首屏时耗长。
发明内容
基于此,有必要针对首屏耗时长的情况,提供一种直播数据处理方法和装置、计算机设备和存储介质。
为达到上述目的,一个实施例采用以下技术方案:
一种直播数据处理方法,包括:
当获取到加载请求时,加载直播列表;
获取加载的直播列表中处于直播状态的直播房间的房间信息;
当获取到对处于直播状态的直播房间的直播入口控件的触发操作时,根据所述直播入口控件对应的所述房间信息向所述服务器发送视频流请求;
接收所述服务器根据所述视频流请求返回的视频流。
一种直播数据处理装置,包括:加载模块、信息获取模块、视频流请求模块和视频流接收模块;
所述加载模块,用于当获取到加载请求时,加载直播列表;
所述信息获取模块,用于获取加载的直播列表中处于直播状态的直播房间的房间信息;
所述视频流请求模块,用于当获取到对处于直播状态的直播房间的直播入口控件的触发操作时,根据所述直播入口控件对应的所述房间信息向服务器发送视频流请求;
所述视频流接收模块,用于接收所述服务器根据所述视频流请求返回的视频流。
一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述的直播数据处理方法的步骤。
一种存储介质,其上存储有计算机程序,该程序被处理器执行时,实现上述的直播数据处理方法的步骤。
上述的直播数据处理方法和装置、计算机设备和存储介质,当获取到加载请求时,加载直播列表,获取加载的直播列表中处于直播状态的直播房间的房间信息,当获取到对处于直播状态的直播房间的触发操作时,根据对应的房间信息向服务器发送视频流请求,并接收服务器返回的视频流。由于获取到对处于直播状态的直播房间的触发操作之前,即获取到用户选择的直播房间之前,已经提前获取直播列表中处于直播状态的直播房间的信息,在获取到对直播房间的触发操作(即用户选择进行的直播房间)时,即可利用已提前获取的房间信息与服务器通信以获取视频流,而无需用户选择某个直播房间后,再花费时间与服务器通信以获取该直播房间的房间信息,从而减少了用户选择直播房间到接收直播视频流之间的等待时间,达至首屏耗时短的效果。
附图说明
图1为一个实施例的直播数据处理方法和装置的应用环境示意图;
图2为一个实施例的接收终端的内部结构示意图;
图3为一个实施例的直播数据处理方法的流程图;
图4为一个实施例的获取加载的直播列表中处于直播状态的直播房间的房间信息的步骤的流程图;
图5为一个实施例的一种直播数据处理方法的流程图;
图6为一个实施例的一种直播数据处理方法的流程图;
图7为一个实施例的直播数据处理方法;
图8为一个实施例的接收终端加载直播视频时显示界面变化示意图;
图9为一个实施例的直播数据处理装置的结构框图;
图10为一个实施例的直播数据处理装置的结构框图。
具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步的详细说明。应当理解,此处所描述的具体实施方式仅仅用以解释本发明,并不限定本发明的保护范围。
图1为一个实施例提供的直播数据处理方法和装置的应用环境示意图。如图1所示,该应用环境包括主播终端101、服务器103和多个接收终端105,主播终端101以及接收终端105分别与服务器103通信连接。其中,主播通过主播终端101发起直播,接收终端105通过与服务器103通信接收直播视频数据。一种直播数据处理方法在接收终端105执行,具体地,当获取到加载请求时,加载直播列表,获取加载的直播列表中处于直播状态的直播房间的房间信息,当获取到对处于直播状态的直播房间的触发操作时,根据对应的房间信息向服务器发送视频流请求,接收服务器根据视频流请求返回的视频流。
图2为一个实施例中的接收终端的内部结构示意图。如图2所示,通过***总线连接的处理器、存储介质、内存储器、网络接口、显示屏和输入装置。其中,该处理器用于提供计算和控制能力,支撑整个终端的运行。终端的存储介质存储有操作***以及一种直播数据处理装置的计算机程序,该直播数据处理装置的计算机程序被处理器执行时,用于实现一种直播数据处理装置方法。终端的内存储器为存储介质中的直播数据处理装置的运行提供环境。终端的网络接口用于与服务器进行网络通信,例如,接收视频流等。终端的显示屏可以是液晶显示屏或者电子墨水显示屏等,输入装置可以是显示屏上覆盖的触摸层,也可以是终端外壳上设置的按键、轨迹球或触控板,也可以是外接的键盘、触控板或鼠标等。该接收终端可以为智能手机、平板电脑、笔记本电脑、台式计算机等。本领域技术人员可以理解,图2中示出的结构,仅仅是与本发明方案相关的部分结构的框图,并不构成对本发明方案所应用于其上的终端的限定,具体的终端可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供一种直播数据处理方法,运行在如图1所示的接收终端,如图3所示,该方法包括以下步骤S302至S308:
S302:当获取到加载请求时,加载直播列表。
当用户操作接收终端时,产生加载请求。用户的操作可以为打开直播平台,也可以为在当前屏幕显示的直播列表中向上滑动,拉取直播列表的下一页。当获取到加载请求时,接收终端与服务器通信,加载直播列表。在直播平台进行直播的直播房间以直播列表的形式展示在接收终端的显示界面。直播房间是指直播平台的虚拟房间,主播用户通过主播终端发起主播时建立直播房间,接收终端进入直播房间,即可观看主播终端的直播视频。
S304:获取加载的直播列表中处于直播状态的直播房间的房间信息。
直播平台提供正在直播的直播房间的直播视频的直播,也提供已完成直播的直播房间的视频回放。直播列表中包括正在进行直播的直播房间,还包括已完成直播的直播房间。
当加载完直播列表后,获取加载的直播列表中直于直播状态的直播房间的房间信息。房间信息包括主播用户信息、直播主题和直播地址等。主播用户信息是发起直播的主播的用户信息,主播用户信息包括主播用户标识和主播用户资料信息。主播用户标识用于唯一标识主播,例如主播用户账号,主播用户资料信息是与主播相关的信息,包括主播用户职业、直播主题和直播房间封面图片等。其中,房间封面图片为主播的照片或直播视频的截图。
本实施例中,在加载直播列表后,获取用户选择进入的直播房间之前,即获取加载的直播列表中处于直播状态的直播房间的房间信息,为用户进入直播房间观看直播视频提前做准备,当用户(观众)进入直播房间后,根据对应的直播房间的房间信息即可向服务器请求直播数据。
S306:当获取到对处于直播状态的直播房间的触发操作时,根据对应的房间信息向服务器发送视频流请求。
具体地,直播列表的每个房间显示有可操作的直播入口控件,用户可对该直播入口操作控件进行触发操作,例如通过点击该直播入口控件跳转至直播视频播放页面。具体地,在获取到对直播入口控件的触发操作时,根据直播入口控件对应的房间信息向服务器发送视频请求。可选地,直播入口控件可以显示主播设置的房间封面图片。
一个实施例中,房间信息包括直播地址,当获取到对直播房间的触发操作时,根据获取到直播地址向服务器发送视频流请求。
S308:接收服务器根据视频流请求返回的视频流。
服务器在获取到视频流请求后,根据直播地址,获取对应的直播视频,并将对应的直播视频数据发送至接收终端。
上述的直播数据处理方法,当获取到加载请求时,加载直播列表,获取加载的直播列表中处于直播状态的直播房间的房间信息,当获取到对处于直播状态的直播房间的触发操作时,根据对应的房间信息向服务器发送视频流请求,并接收服务器返回的视频流。由于获取到对处于直播状态的直播房间的触发操作之前,即获取到用户选择的直播房间之前,已经提前获取直播列表中处于直播状态的直播房间的信息,在获取到对直播房间的触发操作(即用户选择进行的直播房间)时,即可利用已提前获取的房间信息与服务器通信以获取视频流,而无需用户选择某个直播房间后,再花费时间与服务器通信以获取该直播房间的房间信息,从而减少了用户选择直播房间到接收直播视频流之间的等待时间,达至首屏耗时短的效果。
图4为一个实施例的获取加载的直播列表中处于直播状态的直播房间的房间信息的步骤的流程图。如图4所示,该步骤包括步骤S402至S408:
S402:向服务器发送直播状态询问请求,直播状态询问请求包括加载的直播列表中的直播房间的房间标识。
房间标识用于唯一标识直播房间,在主播创建直播时由***分配。在加载完直播列表后,获取直播列表中各直播房间的房间标识,根据房间标识向服务器发送直播状态询问请求。直播状态询问请求用于向服务器询问各直播房间的直播状态。
S404:接收服务器返回的房间标识对应的直播状态。
服务器接收直播状态询问请求,返回对应房间的直播状态。直播状态包括直播中和直播结束。
S406:向服务器发送房间信息获取请求,房间信息获取请求包括处于直播状态的直播房间的房间标识。
接收终端是指请求加入直播房间观看直播视频的观众用户对应的终端。接收终端根据接收到的各直播房间的直播状态,向服务器发送房间信息获取请求,房间信息获取请求用于向服务器获取请求的直播房间的房间信息,该请求包括处于直播状态的直播房间的房间标识。
S408:接收服务器返回的处于直播状态的直播房间的房间信息。
服务器根据房间信息获取请求,发送对应直播房间的房间信息至接收终端。房间信息包括主播用户信息、直播主题和直播地址等。主播用户信息包括主播用户标识、主播用户资料信息,如主播用户账号、主播用户职业等。
本实施例中,加载直播列表后,获取加载的直播列表中处于直播状态的直播房间的房间信息,为用户进入直播房间提前做准备,当用户(观众)进入直播房间后,根据对应直播房间的信息即可向服务器请求直播数据。
在一个实施例中,当用户登录直播平台后,首次加载直播列表。而由于当前屏幕显示的直播房间的数量受接收终端的显示屏尺寸的限制,不能在一屏全部显示。加载请求可通过滚动条的拖动操作或是对屏幕的滑动操作触发,当获取到加载请求时,加载直播列表。
一个实施例中,房间信息包括直播房间的房间预览图片的网络地址。预览图片是在进入直播房间后加载视频流时显示在终端的图片,传统的预览图片为直播房间的主播设置的封面图片。一种直播数据处理方法的流程图如图5所示,该方法包括以下步骤:
S502:当获取到加载请求时,加载直播列表。
S504:获取加载的直播列表中处于直播状态的直播房间的房间信息。
房间信息包括房间标识对应的房间预览图片的网络地址。预览图片是在进入直播房间后加载视频流时显示在终端的图片。
S506:当获取到对处于直播状态的直播房间的直播入口控件的触发操作时,根据直播入口控件对应的房间信息向服务器发送视频流请求。
直播列表的每个房间显示有可操作的直播入口控件,用户可对该直播入口操作控件进行触发操作,例如通过点击该直播入口控件跳转至直播视频播放页面。具体地,在获取到对直播入口控件的触发操作时,根据直播入口控件对应的房间信息向服务器发送视频请求。
S508:根据预览图片的网络地址,获取直播入口控件对应的视频截图;视频截图为直播入口控件对应的直播视频的截图。
服务器对于直播平台的每个直播视频,周期性的对该直播视频进行视频画面的截图,并将截取到的截图存储在该直播视频对应的预览图片的网络地址中。该网络地址中的截图也可以用于服务器鉴定直播视频是否涉及暴力、色情内容。一个实施例的截取视频截图的周期为5秒。通常,服务器返回的视频截图为最新截取的视频截图,即将截取的各截图中距离当前时间最近的截图的网络存储地址返回到接收终端。
在其它的实施例中,存储在预览图片的网络地址对应的预览图片,也可以为主播设置的其它图片。
S510:将截图作为直播入口控件对应的房间预览图片进行显示。
在进入直播房间,加载直播但未接收到播放数据时,将截图作为直播入口控件对应的房间预览图片进行显示,以过渡接收到的视频首帧播放前的等待时间。当接收到视频数据并播放时,由该截图过渡到直播视频。由于预览图片为距离当前时间最近的该房间的直播视频的截图,画面的间隔时间短,视频播放时过渡连续自然,达到无缝切换到直播间的效果。
S512:接收服务器根据视频流请求返回的视频流并播放。
房间信息包括房间标识和直播地址。服务器在获取到视频请求后,将对应直播地址的直播视频数据发送至接收终端。接收终端接收返回的视频流并播放。
上述的直播数据处理方法,一方面在用户点击直播列表的房间的直播入口控件前,已提前获取房间信息,无需再额外花费时间获取房间信息,在用户点击直播列表的房间的直播入口控件后,根据房间信息与服务器通信即可获取对应的视频流数据,首屏耗时短,另一方面,在进入直播房间,将截图作为直播入口控件对应的房间预览图片进行显示,当接收到视频数据并播放时,由该截图过渡到直播视频。由于预览图片为距离当前时间最近的该房间的直播视频的截图,画面的间隔时间短,视频播放时过渡连续自然,达到无缝切换到直播间的效果。采用本实施例的直播数据处理方法,能够实现快速打开直播视频,给予用户“秒开”的播放体验。
在再一个实施例中,在步骤S508之后,还包括:调用终端的图形处理器对截图作预设处理。
步骤S510包括:将进行预设处理后的截图作为直播入口控件对应的房间预览图片进行显示。
直播是强依赖网络的产品,因此必然存在首次加载等待播放的情形。为解决这一问题,在进入直播房间后,加载直播视频但未接收到播放数据时,将截图作为直播入口控件对应的房间预览图片进行显示,以过渡接收到的视频首帧播放前的等待时间。进一步地,对图片进行预设处理,以使画面看起来更加柔和。本实施中的预设处理为对截图的每个像素进行高斯模糊处理,以使预览图片具有毛玻璃片效果,从而过渡到视频播画面时更连续和自然,达到无缝切换直播间的效果。在其实的实现例中,为使预览图片具有其它显示效果,也可以采用其它滤镜对预览图片进行预设处理。进一步地,通过调用终端的图形处理器(GPU)对预览图片进行预设处理,图形处理器具有强大的图像处理能够,通过同时对截图的每个像素并行进行预设处理,极大地提高图片处理的效率。
具体地,图片美化滤镜采用特定的滤镜组件,支持实时和静态渲染图片滤镜特效。捕捉的图像交由滤镜框架进行图像渲染处理。
业界大部分拍照应用都是采用先拍照后选择的滤镜处理流程,对拍照后取得的图片每个像素点数据和滤镜图片对照表进行运算,并最终展示,整个流程全依赖与终端CPU进行计算,处理效率非常低。
为此滤镜组件将以上大部分工作通过OpenGL(Open Graphics Library)2.0图形***来处理实现,主CPU发出一个绘图指令,然后可能由硬件部件完成坐标变换,裁剪,添加颜色或是材质,最后在屏幕上显示出来。OpenGL ES 2.0允许提供编程来控制管道中一些重要的工序,其中包括着色器(shader)。着色器包含了允许在顶点上进行一般操作的顶点着色器,以及允许在片段(即最终像素)上进行一般操作的片段着色器。
滤镜组件将滤镜消耗资源时间最大的处理工序交予OpenGL完成,在着色器里创建shader、program,并编写shader程序,OpenGL编译shader并链接到program上。原程序获取图像数据,通过置于OpenGL管道流程的shader着色器对图片每个像素来进行变换处理,整个过程是并行的,用shader语言来编程处理变换,依赖终端GPU来进行运算,大大提高了处理效率,实现了滤镜的实时渲染,真正达到了所见所得的效果。
在再一个实施例中,一种直播数据处理方法的流程图如图6所示,包括以下步骤:
S602:当获取到加载请求时,加载直播列表。
S604:通过第一网络获取加载的直播列表中处于直播状态的直播房间的房间信息。
第一网络为直播平台的用户终端与服务器链接的网络通路。通过第一网络用户终端与服务器通信传递视频数据和房间信息等。房间信息包括主播用户信息、直播主题和直播地址等。主播用户信息包括主播用户标识、主播用户资料信息,如主播用户账号、主播用户职业、封面图片的网络地址和预览图片的网络地址等。
S606:通过第二网络与服务器通信获取直播列表中当前屏幕显示的房间的直播参数。
直播参数包括直播码率、分辨率,是否开户硬编码等。直播参数由房间的主播用户在主播终端进行设置。本实施例中,直播参数通过第二网络进行传输。第二传输网络为高连通、高可靠、强安全的网络连接通道服务,具有稳定连通的优点。
S608:当获取到对处于直播状态的直播房间的直播入口控件的触发操作时,根据直播入口控件对应的房间信息向服务器发送视频流请求。
直播列表的每个房间显示有可操作的直播入口控件,用户可对该直播入口操作控件进行触发操作,例如通过点击该直播入口控件跳转至直播视频播放页面。具体地,在获取到对直播入口控件的触发操作时,根据直播入口控件对应的房间信息向服务器发送视频请求。可选地,直播入口控件可以显示主播设置的房间封面图片。
S610:接收服务器根据视频流请求返回的视频流。
房间信息包括房间标识和直播地址。服务器在获取到视频请求后,将对应直播地址的直播视频数据发送至接收终端
S612:根据直播参数对接收到的视频流进行解码播放。
接收终端在接收到视频流后,根据直播参数对视频流进行解码播放。
本实施例中的直播数据处理方法,通过将直播参数利用第二网络进行传输,通过将非直播参数利用第一网络进行传输,提高直播参数传输的稳定性。
下面结合一个具体的实施例对本发明的直播数据处理方法进行说明。一个实施例的直播数据处理方法如图7所示,包括以下步骤:
S701:当获取到加载请求时,加载直播列表。
如图8的接收终端加载直播视频时显示界面变化示意图的第一张图所示,在直播列表中展示每个直播房间的信息,包括直播间的封面图片。
S702:通过第一网络向服务器发送直播状态询问请求,直播状态询问请求包括加载的直播列表中的直播房间的房间标识。
S703:接收服务器返回的房间标识对应的直播状态。
S704:通过第一网络向服务器发送信息获取请求,信息获取请求包括处于直播状态的直播房间的房间标识。
S705:接收服务器返回的处于直播状态的直播房间的房间信息。
房间信息包括房间标识和直播地址。服务器在获取到视频请求后,将对应直播地址的直播视频数据发送至接收终端。
S706:通过第二网络与服务器通信获取加载的直播列表中直播房间的直播参数。
S707:当获取到对处于直播状态的直播房间的直播入口控件的触发操作时,根据直播入口控件对应的房间信息向服务器发送视频流请求。
如图8的接收终端加载直播视频时显示界面变化示意图的第一张图所示,每个直播房间设置有直播入口控件,通过触发直播入口控件,跳转至直播视频播放画面,如图8的接收终端的显示界面示意图的第二张图所示。在触发直播入口控件后,接收终端向服务器发送视频流请求。
S708:房间信息还包括预览图片的网络地址,根据预览图片的网络地址,获取直播入口控件对应的视频截图;视频截图为直播入口控件对应的直播视频的截图。
S709:调用终端的图形处理器对截图作预设处理。
S710:将进行预设处理后的截图作为直播入口控件对应的房间预览图片进行显示。
如图8的接收终端加载直播视频时显示界面变化示意图的第二张图所示,在进入直播房间,加载直播但未接收到播放数据时,将截图作为直播入口控件对应的房间预览图片进行显示,以过渡接收到的视频首帧播放前的等待时间。当接收到视频数据并播放时,由该截图过渡到直播视频。
S711:接收服务器根据视频流请求返回的视频流。
S712:根据直播参数对接收到的视频流进行解码播放。
如图8的接收终端加载直播视频时显示界面变化示意图的第三图所示,接收终端接收返回的视频流并播放。由于预览图片为距离当前时间最近的该房间的直播视频的截图,画面的间隔时间短,视频播放时过渡连续自然,达到无缝切换到直播间的效果。
在实际应用中,直播进程的生命周期是跟随avtivity组件的生命周期,activity销毁后,直播进程也随之销毁,再打开需要耗时重新创建进程,而直播SDK的上下文是依赖直播进程,新进入也需要重新初化。为解决这一问题,本实施例中在获取加载的直播列表中处于直播状态的直播房间的房间信息的步骤之后,初始化SDK上下文,并在与服务器通信获取加载的直播列表中的直播房间的直播参数的步骤之后,根据房间信息,预先进行直播SDK房间。从而,进一步地缩短首屏耗时。
在一个实施例中,提供一种直播数据处理装置。如图9所示的直播数据处理装置的结构框图所示,该直播数据处理装置包括:加载模块901、信息获取模块902、视频流请求模块903和视频流接收模块904。
加载模块901,用于当获取到加载请求时,加载直播列表。
信息获取模块902,用于获取加载的直播列表中处于直播状态的直播房间的房间信息。
视频流请求模块903,用于当获取到对处于直播状态的直播房间的直播入口控件的触发操作时,根据直播入口控件对应的房间信息向服务器发送视频流请求。
视频流接收模块904,用于接收服务器根据视频流请求返回的视频流。
上述的直播数据处理装置,由于获取到对处于直播状态的直播房间的触发操作之前,即获取到用户选择的直播房间之前,已经提前获取直播列表中处于直播状态的直播房间的信息,在获取到对直播房间的触发操作(即用户选择进行的直播房间)时,即可利用已提前获取的房间信息与服务器通信以获取视频流,而无需用户选择某个直播房间后,再花费时间与服务器通信以获取该直播房间的房间信息,从而减少了用户选择直播房间到接收直播视频流之间的等待时间,达至首屏耗时短的效果。
在一个实施例中,如图10所示的直播数据处理装置的结构框图所示,信息获取模块902,包括:状态询问模块9021、状态接收模块9022、信息请求模块9023和信息接收模块9024。
状态询问模块9021,用于向服务器发送直播状态询问请求,直播状态询问请求包括加载的直播列表中的直播房间的房间标识。
状态接收模块9022,用于接收服务器返回的房间标识对应的直播状态。
信息请求模块9023,用于向服务器发送信息获取请求,信息获取请求包括处于直播状态的直播房间的房间标识。
信息接收模块9024,用于接收服务器返回的处于直播状态的直播房间的房间信息。
在再一个实施例中,加载模块901,还用于当获取到对直播列表的滑动操作时,加载直播列表。从而用户在对直播列表的滑动过程中,加载直播列表的下一页直播房间。
在又一个实施例中,房间信息包括房间标识对应的房间预览图片的网络地址;如图10所示,直播数据处理装置还包括:截图获取模块905和显示模块906。
截图获取模块905,用于根据预览图片的网络地址,获取直播入口控件对应的视频截图;视频截图为直播入口控件对应的直播视频的截图。
显示模块906,用于将截图作为直播入口控件对应的房间预览图片进行显示。
视频流接收模块904,用于接收服务器根据视频流请求返回的视频流并播放。
上述的直播数据处理装置,一方面在用户点击直播列表的房间的直播入口控件前,已提前获取房间信息,无需再额外花费时间获取房间信息,在用户点击直播列表的房间的直播入口控件后,根据房间信息与服务器通信即可获取对应的视频流数据,首屏耗时短,另一方面,在进入直播房间,将截图作为直播入口控件对应的房间预览图片进行显示,当接收到视频数据并播放时,由该截图过渡到直播视频。由于预览图片为距离当前时间最近的该房间的直播视频的截图,画面的间隔时间短,视频播放时过渡连续自然,达到无缝切换到直播间的效果。采用本实施例的直播数据处理方法,能够实现快速打开直播视频,给予用户“秒开”的播放体验。
在另一个实施例中,直播数据处理装置还包括处理模块907,用于调用终端的图形处理器对截图作预设处理。
显示模块906,用于将进行预设处理后的截图作为直播入口控件对应的房间预览图片进行显示。
通过对图片进行预设处理,以使画面看起来更加柔和,从而过渡到视频播画面时更连续和自然,达到无缝切换直播间的效果。
在又一个实施例中,如图10所示,直播数据处理装置还包括直播参数获取模块908和播放模块909。
直播参数获取模块908,用于与服务器通信获取加载的直播列表中的直播房间的直播参数。
播放模块909,用于根据直播参数对接收到的视频流进行解码播放。
接收终端在接收到视频流后,根据直播参数对视频流进行解码播放。
本实施例中的直播数据处理方法,通过将直播参数利用第二网络进行传输,通过将非直播参数利用第一网络进行传输,提高直播参数传输的稳定性。
基于如上的示例,在一个实施例中还提供一种计算机设备,该计算机设备包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其中,处理器执行程序时实现如上述各实施例中的任意一种直播数据处理方法。
基于如上的示例,在一个实施例中还提供一种存储介质,其上存储有计算机程序,其中,该程序被处理器执行时实现如上述各实施例中的任意一种直播数据处理方法。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性的计算机可读取存储介质中,如本发明实施例中,该程序可存储于计算机***的存储介质中,并被该计算机***中的至少一个处理器执行,以实现包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random Access Memory,RAM)等。
以上所述实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本发明的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对发明专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变形和改进,这些都属于本发明的保护范围。因此,本发明专利的保护范围应以所附权利要求为准。
Claims (10)
1.一种直播数据处理方法,其特征在于,包括:
当获取到加载请求时,加载直播列表;在直播平台进行直播的直播房间以直播列表的形式展示在接收终端的显示界面;当用户打开直播平台或对屏幕显示的直播列表的滚动条的拖动操作时或对屏幕显示的直播列表的滑动操作时产生加载请求;
获取加载的直播列表中处于直播状态的直播房间的房间信息,所述房间信息包括所述房间标识对应的房间预览图片的网络地址;
根据所述预览图片的网络地址,获取直播入口控件对应的视频截图;所述视频截图为所述直播入口控件对应的直播视频的截图;
调用终端的图形处理器对所述截图的每个像素并行作预设处理;所述预设处理为对截图的每个像素进行高斯模糊处理;
将进行预设处理后的截图作为所述直播入口控件对应的房间预览图片进行显示;
当获取到对处于直播状态的直播房间的直播入口控件的触发操作时,根据所述直播入口控件对应的所述房间信息向服务器发送视频流请求;
接收所述服务器根据所述视频流请求返回的视频流。
2.根据权利要求1所述的直播数据处理方法,其特征在于,获取加载的直播列表中处于直播状态的直播房间的房间信息的步骤包括:
向所述服务器发送直播状态询问请求,所述直播状态询问请求包括加载的直播列表中的直播房间的房间标识;
接收所述服务器返回的所述房间标识对应的直播状态;
向所述服务器发送信息获取请求,所述信息获取请求包括处于直播状态的直播房间的房间标识;
接收所述服务器返回的处于直播状态的直播房间的房间信息。
3.根据权利要求2所述的直播数据处理方法,其特征在于,
所述接收所述服务器根据所述视频流请求返回的视频流的步骤包括:接收所述服务器根据所述视频流请求返回的视频流并播放。
4.根据权利要求1所述的直播数据处理方法,其特征在于,根据所述直播入口控件对应的所述房间信息向服务器发送视频流请求的步骤之前,还包括:
与所述服务器通信获取加载的所述直播列表中的直播房间的直播参数;
接收所述服务器根据所述视频流请求返回的视频流的步骤之后,还包括:
根据所述直播参数对接收到的所述视频流进行解码播放。
5.一种直播数据处理装置,其特征在于,包括:加载模块、信息获取模块、视频流请求模块、视频流接收模块、截图获取模块、处理模块和显示模块;
所述加载模块,用于当获取到加载请求时,加载直播列表;在直播平台进行直播的直播房间以直播列表的形式展示在接收终端的显示界面;当用户打开直播平台或对屏幕显示的直播列表的滚动条的拖动操作时或对屏幕显示的直播列表的滑动操作时产生加载请求;
所述信息获取模块,用于获取加载的直播列表中处于直播状态的直播房间的房间信息,所述房间信息包括所述房间标识对应的房间预览图片的网络地址;
所述截图获取模块,用于根据所述预览图片的网络地址,获取直播入口控件对应的视频截图;所述视频截图为所述直播入口控件对应的直播视频的截图;
所述处理模块,用于调用终端的图形处理器对所述截图的每个像素并行作预设处理;所述预设处理为对截图的每个像素进行高斯模糊处理;
所述显示模块,用于将进行预设处理后的截图作为所述直播入口控件对应的房间预览图片进行显示;
所述视频流请求模块,用于当获取到对处于直播状态的直播房间的直播入口控件的触发操作时,根据所述直播入口控件对应的所述房间信息向服务器发送视频流请求;
所述视频流接收模块,用于接收所述服务器根据所述视频流请求返回的视频流。
6.根据权利要求5所述的直播数据处理装置,其特征在于,所述信息获取模块,包括:状态询问模块、状态接收模块、信息请求模块和信息接收模块;
所述状态询问模块,用于向所述服务器发送直播状态询问请求,所述直播状态询问请求包括加载的直播列表中的直播房间的房间标识;
所述状态接收模块,用于接收所述服务器返回的所述房间标识对应的直播状态;
所述信息请求模块,用于向所述服务器发送信息获取请求,所述信息获取请求包括处于直播状态的直播房间的房间标识;
所述信息接收模块,用于接收所述服务器返回的处于直播状态的直播房间的房间信息。
7.根据权利要求6所述的直播数据处理装置,其特征在于,
所述视频流接收模块,还用于接收所述服务器根据所述视频流请求返回的视频流并播放。
8.根据权利要求5所述的直播数据处理装置,其特征在于,所述装置还包括直播参数获取模块和播放模块;
所述直播参数获取模块,用于与所述服务器通信获取加载的所述直播列表中的直播房间的直播参数;
所述播放模块,用于根据所述直播参数对接收到的所述视频流进行解码播放。
9.一种计算机设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现权利要求1至4任一项所述的直播数据处理方法的步骤。
10.一种存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时,实现权利要求1至4任一项所述的直播数据处理方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710632535.4A CN109309842B (zh) | 2017-07-28 | 2017-07-28 | 直播数据处理方法和装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201710632535.4A CN109309842B (zh) | 2017-07-28 | 2017-07-28 | 直播数据处理方法和装置、计算机设备和存储介质 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109309842A CN109309842A (zh) | 2019-02-05 |
CN109309842B true CN109309842B (zh) | 2021-08-24 |
Family
ID=65205075
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201710632535.4A Active CN109309842B (zh) | 2017-07-28 | 2017-07-28 | 直播数据处理方法和装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN109309842B (zh) |
Families Citing this family (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110062250B (zh) * | 2019-03-14 | 2022-10-18 | 视联动力信息技术股份有限公司 | 一种推送直播列表的方法以及视联网服务器 |
CN110267053A (zh) * | 2019-06-27 | 2019-09-20 | 广州酷狗计算机科技有限公司 | 直播方法、装置及*** |
CN112243155B (zh) * | 2019-07-16 | 2022-09-30 | 腾讯科技(深圳)有限公司 | 一种直播的处理方法及装置 |
CN111294641B (zh) * | 2020-03-10 | 2022-10-21 | 北京奇艺世纪科技有限公司 | 视频播放方法、***、装置、电子设备及可读存储介质 |
CN113727164B (zh) * | 2020-05-26 | 2024-04-26 | 百度在线网络技术(北京)有限公司 | 直播间入口显示方法、装置、电子设备和存储介质 |
CN111654717B (zh) * | 2020-07-17 | 2023-11-03 | 腾讯科技(深圳)有限公司 | 数据处理方法、装置、设备及存储介质 |
CN113596499B (zh) * | 2021-07-29 | 2023-03-24 | 北京达佳互联信息技术有限公司 | 直播数据处理方法、装置、计算机设备及介质 |
CN114339296A (zh) * | 2022-03-02 | 2022-04-12 | 阿里巴巴(中国)有限公司 | 传输媒体流的方法、装置以及媒体*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104539977A (zh) * | 2014-12-17 | 2015-04-22 | 广州酷狗计算机科技有限公司 | 直播预览方法及装置 |
CN105120304A (zh) * | 2015-08-31 | 2015-12-02 | 广州酷狗计算机科技有限公司 | 信息显示方法、装置及*** |
CN105828163A (zh) * | 2016-04-19 | 2016-08-03 | 乐视控股(北京)有限公司 | 一种视频预览方法及装置 |
CN106534940A (zh) * | 2016-10-14 | 2017-03-22 | 腾讯科技(北京)有限公司 | 直播入口预览图的显示方法及装置 |
CN106954086A (zh) * | 2017-02-28 | 2017-07-14 | 北京潘达互娱科技有限公司 | 一种信息推荐方法与装置 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20100169303A1 (en) * | 2008-12-31 | 2010-07-01 | David Biderman | Playlists for real-time or near real-time streaming |
CN106331761A (zh) * | 2016-08-26 | 2017-01-11 | 北京小米移动软件有限公司 | 直播列表显示方法及装置 |
CN106385594A (zh) * | 2016-09-18 | 2017-02-08 | 深圳市青柠互动科技开发有限公司 | 一种优化视频直播服务的方法 |
-
2017
- 2017-07-28 CN CN201710632535.4A patent/CN109309842B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104539977A (zh) * | 2014-12-17 | 2015-04-22 | 广州酷狗计算机科技有限公司 | 直播预览方法及装置 |
CN105120304A (zh) * | 2015-08-31 | 2015-12-02 | 广州酷狗计算机科技有限公司 | 信息显示方法、装置及*** |
CN105828163A (zh) * | 2016-04-19 | 2016-08-03 | 乐视控股(北京)有限公司 | 一种视频预览方法及装置 |
CN106534940A (zh) * | 2016-10-14 | 2017-03-22 | 腾讯科技(北京)有限公司 | 直播入口预览图的显示方法及装置 |
CN106954086A (zh) * | 2017-02-28 | 2017-07-14 | 北京潘达互娱科技有限公司 | 一种信息推荐方法与装置 |
Also Published As
Publication number | Publication date |
---|---|
CN109309842A (zh) | 2019-02-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109309842B (zh) | 直播数据处理方法和装置、计算机设备和存储介质 | |
CN111681167B (zh) | 画质调整方法和装置、存储介质及电子设备 | |
CN106846040B (zh) | 一种直播间中虚拟礼物显示方法和*** | |
US10229651B2 (en) | Variable refresh rate video capture and playback | |
CN113038287B (zh) | 多人视频直播业务实现方法、装置、计算机设备 | |
CN113457160B (zh) | 数据处理方法、装置、电子设备及计算机可读存储介质 | |
WO2022257699A1 (zh) | 图像画面显示方法、装置、设备、存储介质及程序产品 | |
CN111541930B (zh) | 直播画面的显示方法、装置、终端及存储介质 | |
CN108173742B (zh) | 一种图像数据处理方法、装置 | |
US10929460B2 (en) | Method and apparatus for storing resource and electronic device | |
EP3410302B1 (en) | Graphic instruction data processing method, apparatus | |
CN111346378B (zh) | 游戏画面传输方法、装置、存储介质和设备 | |
CN114245228B (zh) | 页面链接投放方法、装置及电子设备 | |
CN111464828A (zh) | 虚拟特效显示方法、装置、终端及存储介质 | |
CN111359220B (zh) | 游戏广告生成方法、装置和计算机设备 | |
CN113949821A (zh) | 视频播放方法、装置、计算机设备和存储介质 | |
CN113568699A (zh) | 一种内容显示方法、装置、设备及存储介质 | |
KR101984825B1 (ko) | Api 정보를 이용한 클라우드 디스플레이 화면의 부호화 방법 및 그 장치 | |
JP7471510B2 (ja) | ピクチャのビデオへの変換の方法、装置、機器および記憶媒体 | |
CN109525852B (zh) | 直播视频流处理方法、装置、***及计算机可读存储介质 | |
CN113312237A (zh) | 信息反馈方法、装置、电子设备及存储介质 | |
CN113839829A (zh) | 云游戏延时测试方法、装置、***及电子设备 | |
KR20220159968A (ko) | 아바타를 이용한 컨퍼런스 처리 방법 및 시스템 | |
CN111954041A (zh) | 一种视频加载方法、计算机设备及可读存储介质 | |
CN111475240B (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 |