集成YouTube应用的低端机顶盒系统及播放YouTube网站视频的方法与流程

文档序号:12498725阅读:392来源:国知局

本发明涉及计算机软件和网络技术领域,具体涉及集成YouTube应用的低端机顶盒系统及播放YouTube网站视频的方法。



背景技术:

YouTube是世界范围的视频分享网站,为全球成千上万的用户提供高水平的视频上传、分发、展示、浏览服务。随着YouTube的出现,市场上出现各种视频播放软件,通过互联网实现对YouTube视频网站的文件下载。这些功能强大的播放软件依赖于PC机环境,且操作复杂。对于普通用户而言,如果能通过机顶盒就像看电视般简单的搜索YouTube网站的视频,会让更多人分享到YouTube视频。

在机顶盒上集成YouTube应用,对机顶盒硬件的处理速度和存储空间有一定的要求,并要求支持流媒体相关协议。常见的三种流媒体协议是:基于HTTP的渐进下载、RTP/RTSP的实时流媒体协议,以及apple提出的HTTP Live Streaming协议。不同平台的机顶盒对流媒体协议的支持种类不尽相同,通常大部分的机顶盒都支持HTTP的渐进下载协议。

传统技术中通常选取高端配置的机顶盒,并基于浏览器环境集成YouTube应用。通过浏览器实现视频搜索,视频网址解析,视频媒体封装解析获得音视频帧后再传入解码器进行解码播放。该方法除去开发周期长外还要求机顶盒本身处理速度高,存储设备空间大,因此并不适用于低端机顶盒。



技术实现要素:

本发明所要解决的技术问题是:提出一种集成YouTube应用的低端机顶盒系统及播放YouTube网站视频的方法,解决传统技术中只能在高端机顶盒上集成YouTube应用,对机顶盒处理速度和存储空间要求较高,而不能适用于低端机顶盒的问题。

本发明解决其技术问题所采用的技术方案是:

集成YouTube应用的低端机顶盒系统,包括:

HTTP引擎模块,用于组织请求内容,并向YouTube网站发起媒体文件请求,在请求成功后接收到一个载有N个视频ATOM供稿信息的纲要文件,并将该文件存储在硬盘;

媒体信息处理模块,解析所述纲要文件,并将视频元信息分类存储,待UI界面模块调用显示;

UI界面模块,负责视频元信息展示及视频播放;

IPC控制模块,将含有视频元ID的网址发送至VLC服务器进程进行网址解析;并负责将网址解析模块获取的下载网址传回至媒体信息处理模块;

播放控制模块,在媒体信息处理模块获取下载网址后对网址所对应视频进行播放控制;

网址解析模块,将带有视频元ID号的网址解析为视频实时下载的网址。

作为进一步优化,所述视频元信息包括:视频元作者、发布时间、视频元ID、缩略图片下载网址以及下一页搜索ID号信息。

此外,本发明的另一目的还在于提出一种播放YouTube网站视频的方法,其包括:

a.HTTP引擎向YouTube服务器发送请求;在请求成功后接收到一个载有N个视频ATOM供稿信息的纲要文件;

b.媒体信息处理模块解析HTTP引擎接收的视频元纲要文件;

c.UI界面显示视频元信息以及播放控制;

d.网址解析模块将带有视频元ID号的网址解析为视频实时下载的网址;

e.播放控制模块经媒体信息处理模块获取视频实时下载网址后进行视频播放。

作为进一步优化,步骤a中,HTTP引擎根据GOOGLE API V3对搜索视频资源所作的约束进行默认请求设置,请求YouTube网站上某国家搜索率前M个高清视频,并每次返回N个视频元的纲要文件,其中,国家和视频发布时间可设置,所述M大于等于N。

作为进一步优化,步骤b中,媒体信息处理模块获取纲要文件后,逐一分析每一个视频ATOM供稿,获取视频元作者、发布时间,视频元ID,缩略图片下载网址以及下一页搜索ID号等信息,将下一页搜索ID号写入HTTP引擎请求中便可获取下一个N视频元的纲要文件,如此反复搜索下去可获取M个视频元信息,在获得视频元缩略图下载网址后可通过WGET指令下载图片,并存入缩略图缓存,将视频元作者,发布时间信息存入媒体信息进行缓存。

作为进一步优化,步骤c中,UI界面模块展示视频缩略图、视频作者、发布时间信息,用户通过操作播放控制按钮,视频搜索按钮实现对YouTube网站媒体文件的下载和浏览。

作为进一步优化,步骤d中,当网址解析模块获取实时下载网址后便将该实时下载网址经IPC控制模块传回至媒体信息处理模块。

作为进一步优化,步骤e中,播放控制模块接收到视频元实时下载网址后,利用底层支持的IP播放接口进行播放,并且实现快进,快退特技播放。

本发明的有益效果是:在低端机顶盒中集成YouTube应用以满足低端市场取得YouTube网站视频资源的需求,另外本发明采用客服端-服务器的方式,将网址解析模块作为服务器进程,实时网址需求作为客服端进程处理。当有网址解析需求时服务器请求才进行网址解析工作,其他时候处于循环等待模式,这种处理方式方便在基于不同平台的低成本机顶盒上集成YouTube应用。

附图说明

图1为集成YouTube应用的低端机顶盒系统构架图。

具体实施方式

本发明旨在提出一种集成YouTube应用的低端机顶盒系统及播放YouTube网站视频的方法,解决传统技术中只能在高端机顶盒上集成YouTube应用,对机顶盒处理速度和存储空间要求较高,而不能适用于低端机顶盒的问题。

本发明是在低端机顶盒中引入高需求的YouTube应用。低端机顶盒中已集成网络接口,普遍支持基于HTTP的渐进下载的流媒体协议;同时还有丰富的音视频解码接口。低端机顶盒不基于浏览器环境集成YouTube应用,可以利用现有资源开发HTTP引擎模块,媒体信息处理模块,UI界面模块,网址解析模块结合播放控制处理模块,实现对YouTube网站资源的浏览、搜索。YouTube网站的媒体下载网址是经过编码加扰的,需解扰解码才能获取媒体文件的实时下载网址。开源软件VLC中集成有YouTube媒体文件网址解析的插件,可以利用VLC开源软件实现网址解析模块。

如图1所示,本发明中的机顶盒系统主要由六部分组成:HTTP引擎模块,媒体信息处理模块,UI界面模块,IPC控制模块,播放控制模块和网址解析模块。以客服端-服务器的开发模式,VLC开源软件作为网址解析的服务器进程运行。当UI界面模块反馈有网址解析需求时,便将对应的视频元ID号经过IPC控制端口传送至VLC的服务器处理进程进行网址解析。VLC服务器进程解析出实时下载网址后立即经IPC控制端口传回至播放控制接口进行播放。

各个功能模块的功能如下:

HTTP引擎模块,用于组织请求内容,并向YouTube网站发起媒体文件请求,在请求成功后接收到一个载有N个视频ATOM供稿信息的纲要文件,并将该文件存储在硬盘;

媒体信息处理模块,解析所述纲要文件,并将视频元信息分类存储,待UI界面模块调用显示;

UI界面模块,负责视频元信息展示及视频播放;

IPC控制模块,将含有视频元ID的网址发送至VLC服务器进程进行网址解析;并负责将网址解析模块获取的下载网址传回至媒体信息处理模块;

播放控制模块,在媒体信息处理模块获取下载网址后对网址所对应视频进行播放控制;

网址解析模块,将带有视频元ID号的网址解析为视频实时下载的网址。

基于上述机顶盒系统,本发明实现的播放YouTube网站视频的方法包括以下步骤:

a.HTTP引擎模块发起对YouTube网站的媒体文件的请求,根据GOOGLE API V3对搜索视频资源所作的约束进行默认请求设置。请求YouTube网站某国家搜索率前M位高清视频,并每次返回载有N个视频元信息的纲要文件。M值说明按照服务器提供的纲要文件内容可以将这M个结果进行遍历,M值通常可取值1000,M值大于N值。可设置国家,发布时间,视频关键词等信息进行搜索。也可通过UI界面中的Search按钮调出屏幕软键盘,设置关键词搜索相关主题视频。HTTP引擎请求成功后会接收到一个载有N个视频ATOM供稿信息的纲要文件。并将该文件存储在硬盘等待媒体信息处理模块分析。

b.媒体信息处理模块获取纲要文件后,逐一分析每一个视频ATOM供稿,获取视频元作者、发布时间,视频元ID,缩略图片下载网址以及下一页搜索ID号等信息。将下一页ID号写入HTTP引擎请求中便可获取下一个N视频元的纲要文件。如此反复搜索下去可获取M个视频元信息。获得视频元缩略图下载网址后可通过WGET指令下载图片,并存入缩略图缓存。将其他视频元如作者,发布时间等存入媒体信息缓存。媒体信息接收IPC传回的网址如果是带有视频元ID的网址与之前传出的一致则显示信息条提示网络异常以便通知用户知晓。

c.UI界面模块负责视频播放,视频元信息展示。展示视频缩略图,视频作者,发布时间等。设置视频的播放模式,如全屏,小窗口;操作播放控制按钮实现视频的播放、暂停、静音等操作。操作视频控制按钮Find便可调用HTTP引擎模块进行下一页视频搜索;操作Search按钮可调出软件盘,可输入关键词进行主题列视频搜索。用户点击视频缩略图便会将视频元ID经媒体信息处理模块组合成API规定的网址格式传送至IPC控制模块。

d.IPC控制模块将含有视频元ID的网址发送至VLC服务器进程,进行网址解析;当VLC网址解析模块获取实时下载网址后便将该实时下载网址经IPC控制模块传回至媒体信息处理模块。

e.VLC服务器进程接收到含有视频元ID的网址后,创建播放列表将该网址加载进播放列表传递给网址解析模块。按照VLC的默认控制流程是要启动相应的播放列表控制线程,媒体信息预提取线程和解析线程。从用户体验感官出发,用户点击视频元缩略图后不能常时间等待,因此要求在网速带宽足够的条件下从用户点击视频到出视频图像必须在10秒以内完成。为缩短时间即要求VLC服务器进程完成网址解析后立即将实时下载网址传回给播放控制模块,并退出处理线程处于循环等待模式。因此VLC开源软件的二次开发是关闭媒体信息预提取线程,简化网址解析过程即得到网址后立即退出解析线程并回传网址给播放器控制模块,缩短解析时间。当网络出现异常时应立即将返回带有视频元ID的网址给媒体信息处理模块。VLC服务器进程立即退出解析,返回循环等待模式。

f.播放控制模块在获取实时下载网址后,便可进行视频播放。

下面以一个具体的实施例阐述本发明中播放YouTube视频的方法:

实施例:

1、机顶盒经UI界面操作,通过HTTP引擎接口向YouTube服务器发送请求某类视频资源的请求;并要求每次返回N个视频元的纲要文件。N值可根据UI界面显示设置确定。其请求格式如下:

https://www.googleapis.com/youtube/v3/search?videoDefinition=high&&order=viewCount&type=video&maxResults=N&part=snippet&key=GOOGLEKEY;

其中videoDefinition选取高清,标清;type=video请求视频;maxResults=N每次最多返回包含N个视频元的纲要文件;key=GOOGLEKEY是在GOOGLE申请的会员密钥。

2、HTTP引擎请求成功后会接收到YouTube数据API(应用程序编程接口)返回的有N个视频元ATOM供稿的纲要文件。

2.1机顶盒内媒体信息处理单元,解析纲要文件,获得N个视频资源信息包括视频资源ID,视频作者,发布日期,更新时间以及视频元缩略图链接。

2.2机顶盒内媒体信息处理单元将视频元作者,发布日期,简介等信息分N行在UI界面上显示。

2.3机顶盒内媒体信息处理单元利用WGET下载视频元缩略图并送UI界面显示。WGET是Linux/Unix命令行文件下载器,是下载网站上文件的免费非交互下载工具,支持HTTP、HTTPS和FTP协议,也支持通过HTTP代理检索。媒体信息处理单元需设置缩略图地址(JPG_URL),存储地址(SAVE_FILEPATH),下载参数等进行缩略图下载,待下载完毕后送入显示。

2.4用户可根据UI界面上的视频元的缩略图,简介等信息选择要观看的视频元。

3、机顶盒内媒体信息处理单元在用户选定某个视频元后,将带有该视频元的ID信息,组合成YouTubeAPI规定的网址格式发送至网址解析模块,进行网址解析。

4、网址解析模块利用视频元ID号解析视频元网址。网址解析模块获取视频元ID,依据YouTube API规定,组合成下面的请求内容:https://www.youtube.com/watch?v=VIDEO_ID。网址解析模块通过上述请求内容,向YouTube服务器发送播放VIDEO_ID的视频的请求。YouTube服务器回复VIDEO_ID对应的视频元供稿。网址解析模块解析供稿文件可以获取视频元IP地址,时长,视频格式,分辨率,帧率等信息,并获取YouTube服务器要求的HTML5播放器库文件地址。运行库文件中视频签名函数获取相应签名内容。将上述信息进行组合,即获取视频元实时的下载地址,只有含有签名内容的地址才能播放。获得视频元下载网址后传回给媒体信息处理模块。

5、机顶盒内播放控制模块经媒体信息处理模块获得视频元实时下载网址后,通过基于HTTP渐进下载流媒体协议进行视频播放。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1