本发明涉及电子技术领域,尤其涉及的是一种移动终端获取机顶盒直播资源的方法、系统及存储介质。
背景技术:
随着智能移动终端的不断发展,功能越来越丰富,再加上容易携带的优点,人们已经习惯于在移动终端上获取自己所需要的信息,看新闻、影片、直播等。但是由于互联网上错综复杂的环境,移动终端用户很难便捷地找到优秀的电视直播资源。
目前国内带有DVB播放功能的机顶盒,播放条件不仅要依赖于电视显示屏,而且还需要插入数字电视信号线。相对于便携的移动终端而言,机顶盒的播放环境相对苛刻,用户无法便捷地观看机顶盒上的DVB数字电视直播资源。另外,当用户需要在夜晚使用时,需要电视播放,电视屏幕和声音都会对其他人造成影响。
因此,现有技术还有待于改进和发展。
技术实现要素:
鉴于上述现有技术的不足,本发明的目的在于提供一种移动终端获取机顶盒直播资源的方法、系统及存储介质,旨在解决现有技术中观看DVB数字电视直播资源需依赖于电视显示屏,用户无法便捷地观看机顶盒上的DVB数字电视直播资源的问题。
本发明的技术方案如下:
一种移动终端获取机顶盒直播资源的方法,其中,所述方法包括:
机顶盒接收用户开启指令,将数字电视信号数据包经解码、切割后,生成m3u8文件,并写入HTML5网页代码中;
所述机顶盒接入局域网,并将HTML5网页上的m3u8文件中的视频数据在局域网中进行播放;
移动终端登录所述局域网,打开HTML5网页视频播放页面获取所述视频数据。
所述的移动终端获取机顶盒直播资源的方法,其中,所述机顶盒接收用户开启指令,将数字电视信号数据包经解码、切割后,生成m3u8文件,并写入HTML5网页代码中具体包括:
机顶盒接收用户开启指令,将数字电视信号数据包解码成TS流;
将TS流切割成TS切片,保存至机顶盒服务器,并实时更新;
所述机顶盒服务器根据实时更新的TS切片生成符合HLS协议的m3u8文件,并将生成的m3u8文件写入HTML5网页代码中。
所述的移动终端获取机顶盒直播资源的方法,其中,所述机顶盒接入局域网时,需设置静态IP地址和开放端口。
所述的移动终端获取机顶盒直播资源的方法,其中,所述移动终端登录所述局域网时,需输入与机顶盒接入网络相同的IP地址。
所述的移动终端获取机顶盒直播资源的方法,其中,所述移动终端登录所述局域网,打开HTML5网页视频播放页面获取所述视频数据之后还包括:
获取所述视频数据后通过HTML5视频播放控件观看DVB直播。
一种移动终端获取机顶盒直播资源的系统,其中,所述系统包括:机顶盒及移动终端,所述机顶盒与移动终端网络连接;
所述机顶盒用于接收用户开启指令,将数字电视信号数据包经解码、切割后,生成m3u8文件,并写入HTML5网页代码中,以及用于接入局域网,并将HTML5网页上的m3u8文件中的视频数据在局域网中进行播放;
所述移动终端用于登录所述局域网,打开HTML5网页视频播放页面获取所述视频数据。
所述的移动终端获取机顶盒直播资源的系统,其中,所述机顶盒包括:
TS流解码器,用于接收用户开启指令,将数字电视信号数据包解码成TS流;
与TS流解码器连接的TS流切片程序,用于将TS流切割成TS切片;
与TS流切片程序连接的机顶盒服务器,用于保存实时更新的TS切片,根据实时更新的TS切片生成符合HLS协议的m3u8文件,并将生成的m3u8文件写入HTML5网页代码中。
所述的移动终端获取机顶盒直播资源的系统,其中,所述机顶盒接入局域网时,需设置静态IP地址和开放端口;所述移动终端登录所述局域网时,需输入与机顶盒接入网络相同的IP地址。
所述的移动终端获取机顶盒直播资源的系统,其中,所述移动终端还安装有HTML5视频播放控件,用于获取所述视频数据后观看DVB直播。
一种存储介质,其中,所述存储介质存储有移动终端获取机顶盒直播资源程序,所述移动终端获取机顶盒直播资源程序能够被执行以用于实现如上所述的移动终端获取机顶盒直播资源的方法。
与现有技术相比,本发明提供的一种移动终端获取机顶盒直播资源的方法,包括:机顶盒接收用户开启指令,将数字电视信号数据包经解码、切割后,生成m3u8文件,并写入HTML5网页代码中;所述机顶盒接入局域网,并将HTML5网页上的m3u8文件中的视频数据在局域网中进行播放;移动终端登录所述局域网,打开HTML5网页视频播放页面获取所述视频数据。本发明使得移动终端通过网络获取机顶盒中的DVB数字电视直播资源,让用户更便捷地观看机顶盒上的DVB数字电视直播资源,打破了只能在相对单一环境下观看机顶盒直播资源的局限性,为用户提供了方便。有效地解决了现有技术中观看DVB数字电视直播资源需依赖于电视显示屏,用户无法便捷地观看机顶盒上的DVB数字电视直播资源的问题。
附图说明
图1是本发明移动终端获取机顶盒直播资源的方法较佳实施例的流程图。
图2是本发明移动终端获取机顶盒直播资源的系统较佳实施例的功能原理框图。
具体实施方式
本发明提供了一种移动终端获取机顶盒直播资源的方法、系统及存储介质,为使本发明的目的、技术方案及效果更加清楚、明确,以下参照附图并举实例对本发明进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1是本发明移动终端获取机顶盒直播资源的方法较佳实施例的流程图。
如图1所示,本发明提供了一种移动终端获取机顶盒直播资源的方法,所述方法包括:
S100、机顶盒接收用户开启指令,将数字电视信号数据包经解码、切割后,生成m3u8文件,并写入HTML5网页代码中。
所述m3u8文件是HLS协议下用于索引TS流的一个索引文件,所述HLS (HTTP Live Streaming)是Apple的动态码率自适应技术,主要用于PC和Apple终端的音视频服务;包括一个m3u8的索引文件,TS媒体分片文件和key加密串文件。
HTML5是标准通用标记语言下的一个应用,其作用是:首先,强化了Web网页的表现性能;其次,追加了本地数据库等Web应用的功能。
步骤S100具体包括:
S101、机顶盒接收用户开启指令,将数字电视信号数据包解码成TS流;
S102、将TS流切割成TS切片,保存至机顶盒服务器,并实时更新;
S103、所述机顶盒服务器根据实时更新的TS切片生成符合HLS协议的m3u8文件,并将生成的m3u8文件写入HTML5网页代码中。
所述TS流(Transport Stream)为传输流,将具有共同时间基准或独立时间基准的一个或多个PES组合(复合)而成的单一数据流(用于数据传输)。TS流是一种位流(数字的),它是由ES流分割成PES后复用而成的;它经过网络传输被机顶盒接收到;数字电视机顶盒接收到TS流后将解析TS流。
在本发明较佳实施例中,当机顶盒开机时,数字电视信号进入机顶盒,用户选择多屏直播功能,将数字电视信号数据包在linux层先解码成TS流。linux层是Android 的核心系统,如安全性、内存管理、进程管理、网络协议栈和驱动模型等都依赖于该内核,Linux内核同时也作为硬件和软件栈之间的抽象层。
再将TS流切割成TS切片,具体的,机顶盒上安装有TS流解码器和TS流切片程序,TS流解码器可将数字电视信号数据包解码成可用的TS流;TS流切片程序会不断地循环把TS流切割成合适大小的TS切片。
由TS流切割成的TS切片通过控制中心暂存到机顶盒服务器作为文件存放,以供调用和视频传输,并且进行实时更新,控制中心将按照HLS协议的直播规范,生成相应的m3u8文件。
机顶盒服务器通过HLS协议的直播规范,把生成的m3u8文件写入HTML5网页代码中。由于从接收数字电视信号开始,整个解码、切割及写入过程是实时更新的,因此,被写入HTML5网页代码中的m3u8文件也是实时更新的。具体的,机顶盒服务器包括HLS协议传输单元,可将存放在机顶盒服务器上的TS流按照HLS协议的要求进行封装和打包,并实时更新TS流及m3u8文件,便于视频数据在局域网内的传输。
S200、所述机顶盒接入局域网,并将HTML5网页上的m3u8文件中的视频数据在局域网中进行播放。
在本发明较佳实施例中,将机顶盒服务器连接到路由器,并设置静态IP地址和开放端口,此时,机顶盒上的HTML5网页上的视频资源通过局域网网页来呈现,在局域网进行广播,也就是将机顶盒服务器上的资源共享到了局域网内,便于移动终端进行访问。
S300、移动终端登录所述局域网,打开HTML5网页视频播放页面获取所述视频数据。
在本发明较佳实施例中,移动终端通过连接WIFI,登录到局域网,在移动终端的浏览器中输入机顶盒服务器的局域网IP地址,打开HTML5网页视频播放页面。也就是说所述移动终端登录局域网时,输入与机顶盒接入网络相同的IP地址,实现了在局域网内访问机顶盒服务器内的视频数据,且不受外部宽带限制。
移动终端获取到HTML5网页视频播放页面上的视频数据,由于被写入HTML5网页代码中的m3u8文件是实时更新的,因此,移动终端能够获取不断更新的视频数据。
步骤S300之后还包括:
获取所述视频数据后通过HTML5视频播放控件观看DVB直播。
在本发明较佳实施例中,移动终端安装有HTML5视频播放控件,在移动终端获取到不断更新的视频数据后,用户可通过HTML5视频播放控件观看DVB直播。
移动终端为智能手机、PAD等移动设备,本发明可使多个移动终端同时获取机顶盒直播资源,这样,多个移动终端可同时观看DVB直播。
下面通过具体的实施例对本发明进行详细说明。
实施例一:
用户开机后,数字电视信号进入机顶盒后,运行在linux层的TS流解码器将传进来的数据包解码成相应的TS流。获取解码后的TS流之后,TS流切片程序将会不断地循环把TS流切割成合适大小的TS切片并且存放到Nginx静态服务器的指定路径下。Nginx是一款面向性能设计的HTTP服务器,相较于Apache、lighttpd具有占有内存少,稳定性高等优势。其优点为:一、处理静态文件,索引文件以及自动索引;打开文件描述符缓冲;二、无缓存的反向代理加速,简单的负载均衡和容错;三、FastCGI,简单的负载均衡和容错;四、模块化的结构。包括gzipping, byte ranges, chunked responses, 以及 SSI-filter等filter。如果由FastCGI或其它代理服务器处理单页中存在的多个SSI,则这项处理可以并行运行,而不需要相互等待。五、支持SSL和 TLS SNI。
机顶盒启动服务器(配置为PHP+Nginx),php后台程序将根据已有的最新TS切片,按照HLS协议的直播规范,生成m3u8文件,将m3u8文件写入HTML5网页代码中。
此时,机顶盒系统中将会弹出请求接入网络的通知,若用户规定时间内不操作,机顶盒将会以当前连接网络和IP地址为服务器地址;若当前无接入网络,则以上次设置好的WIFI网络和静态IP地址为标准;若不成功,将弹出网络设置界面。
机顶盒服务器成功接入网络后,将机顶盒服务器上的资源共享到局域网内,视频资源在局域网进行广播。
用户控制移动终端连接与机顶盒相同的网络,打开移动终端的浏览器,在地址栏输入(机顶盒IP+/video.php),获取机顶盒的直播页面。
用户可以通过移动终端的HTML5视频播放控件观看直播,并且可以控制直播的播放与暂停。
本发明还提供了一种移动终端获取机顶盒直播资源的系统,如图2所示,其中,本实施例的移动终端获取机顶盒直播资源的系统包括:
机顶盒10及移动终端20,所述机顶盒10与移动终端20网络连接;
所述机顶盒10用于接收用户开启指令,将数字电视信号数据包经解码、切割后,生成m3u8文件,并写入HTML5网页代码中,以及用于接入局域网,并将HTML5网页上的m3u8文件中的视频数据在局域网中进行播放;
所述移动终端20用于登录所述局域网,打开HTML5网页视频播放页面获取所述视频数据;具体如上所述。
进一步地,所述的移动终端20获取机顶盒10直播资源的系统,其中,所述机顶盒10包括:
TS流解码器,用于接收用户开启指令,将数字电视信号数据包解码成TS流;
与TS流解码器连接的TS流切片程序,用于将TS流切割成TS切片;
与TS流切片程序连接的机顶盒服务器,用于保存实时更新的TS切片,根据实时更新的TS切片生成符合HLS协议的m3u8文件,并将生成的m3u8文件写入HTML5网页代码中;具体如上所述。
进一步地,所述的移动终端20获取机顶盒10直播资源的系统,其中,所述机顶盒10接入局域网时,需设置静态IP地址和开放端口;所述移动终端20登录所述局域网时,需输入与机顶盒10接入网络相同的IP地址。
进一步地,所述的移动终端20获取机顶盒10直播资源的系统,其中,所述移动终端20还安装有HTML5视频播放控件,用于获取所述视频数据后观看DVB直播;具体如上所述。
一种存储介质,其中,所述存储介质存储有移动终端获取机顶盒直播资源程序,所述移动终端获取机顶盒直播资源程序能够被执行以用于实现所述的移动终端获取机顶盒直播资源的方法;具体如上所述。
综上所述,本发明提供的移动终端获取机顶盒直播资源的方法、系统及存储介质,包括:机顶盒接收用户开启指令,将数字电视信号数据包经解码、切割后,生成m3u8文件,并写入HTML5网页代码中;所述机顶盒接入局域网,并将HTML5网页上的m3u8文件中的视频数据在局域网中进行播放;移动终端登录所述局域网,打开HTML5网页视频播放页面获取所述视频数据。本发明使得移动终端通过网络获取机顶盒中的DVB数字电视直播资源,让用户更便捷地观看机顶盒上的DVB数字电视直播资源,打破了只能在相对单一环境下观看机顶盒直播资源的局限性,为用户提供了方便。有效地解决了现有技术中观看DVB数字电视直播资源需依赖于电视显示屏,用户无法便捷地观看机顶盒上的DVB数字电视直播资源的问题。
当然,本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关硬件(如处理器,控制器等)来完成,所述的程序可存储于一计算机可读取的存储介质中,该程序在执行时可包括如上述各方法实施例的流程。其中所述的存储介质可为存储器、磁碟、光盘等。
应当理解的是,本发明的应用不限于上述的举例,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,所有这些改进和变换都应属于本发明所附权利要求的保护范围。