一种智能电视开机动画的播放方法和智能电视的制作方法

文档序号:7779369阅读:401来源:国知局
一种智能电视开机动画的播放方法和智能电视的制作方法
【专利摘要】本发明适用于智能电视【技术领域】,提供了一种智能电视开机动画的播放方法和智能电视,包括:取开机动画的帧率区间中的最小帧率作为开机动画服务帧率;获取待播放的开机视频文件;取每个待播放的开机视频文件的帧率与所述开机动画服务帧率中较小的帧率作为图像提取帧率提取该待播放的开机视频文件的帧图像并分配帧序号;将属于同一待播放的开机视频文件的帧图像对应的帧序号存入同一帧目录,对所述帧目录分配目录序号;在所述智能电视下次开机时,按照所述目录序号和所述帧序号的顺序以及所述图像提取帧率播放所述目录序号和所述帧序号对应的帧图像。本发明降低了开机动画的播放难度,减少了人力成本,大大提高了广告视频的投放率。
【专利说明】—种智能电视开机动画的播放方法和智能电视
【技术领域】
[0001]本发明属于智能电视【技术领域】,尤其涉及一种智能电视开机动画的播放方法和智能电视。
【背景技术】
[0002]随着智能电视的快速发展,智能电视越来越广泛地应用于千家万户。智能电视开机过程中广告的投放,可以大大提高智能电视的附加值,从而带来可观的经济效益。现有的Android (安卓)智能电视开机动画显示过程如下:首先在uboot或者kernel里显示静态图片,接着init进程启动初始化Android环境,在surfaceflinger服务初始化时,启动在init.rc中注册的开机动画服务,该服务读取固定目录下的动画文件并显示,系统启动完成后surfaceflinger服务通知退出开机动画服务,最后显示launcher或者TV界面。由于开机动画在这个启动显示过程中时间最长,因此是广告显示的最佳位置。
[0003]由于开机动画文件制作步骤繁琐,需要了解开机动画文件结构及控制参数配置,因此从已有的素材去制作开机动画的工作量很大,且开机动画的动态更新需要消耗额外的人力成本。
[0004]综上所述,现有的智能电视开机动画的播放的难度大、便捷度低。

【发明内容】

[0005]本发明实施例的目的在于提供一种智能电视开机动画的播放方法,旨在解决现有的智能电视开机动画播放难度大、便捷度低的问题。
[0006]本发明实施例是这样实现的,一种智能电视开机动画的播放方法,包括:
[0007]计算播放所述开机动画的帧率区间,取所述开机动画的帧率区间中的最小帧率作为开机动画服务巾贞率;
[0008]获取待播放的开机视频文件;
[0009]取每个待播放的开机视频文件的帧率与所述开机动画服务帧率中较小的帧率作为图像提取帧率,用所述图像提取帧率提取该待播放的开机视频文件的帧图像,对提取的所述帧图像按时间先后顺序分配帧序号;
[0010]将属于同一待播放的开机视频文件的帧图像存入同一目录,按所述目录对应的待播放的开机视频文件的优先级对所述帧目录分配目录序号;
[0011]在所述智能电视下次开机时,按照所述目录序号和所述帧序号的顺序以及所述图像提取帧率播放所述目录序号和所述帧序号对应的帧图像。
[0012]本发明实施例的另一目的在于提供一种智能电视,包括:
[0013]开机动画服务帧率计算模块,用于计算播放所述开机动画的帧率区间,取所述开机动画的帧率区间中的最小帧率作为开机动画服务帧率;
[0014]待播放的开机视频文件获取模块,用于获取待播放的开机视频文件;
[0015]帧图像提取模块,用于取每个待播放的开机视频文件的帧率与所述开机动画服务帧率中较小的帧率作为图像提取帧率,用所述图像提取帧率提取该待播放的开机视频文件的帧图像,对提取的所述帧图像按时间先后顺序分配帧序号;
[0016]目录序号分配模块,用于将属于同一待播放的开机视频文件的帧图像存入同一目录,按所述目录对应的待播放的开机视频文件的优先级对所述帧目录分配目录序号;
[0017]开机动画播放模块,用于在所述智能电视下次开机时,按照所述目录序号和所述帧序号的顺序以及所述图像提取帧率播放所述目录序号和所述帧序号对应的帧图像。
[0018]本发明实施例通过比较待播放的开机视频文件的帧率与开机动画服务帧率的大小,取其中较小的帧率提取待播放的开机视频文件的帧图像,再按照开机视频文件的优先级以及每个待播放的开机视频文件的帧图像的时间顺序分配目录序号和帧序号,生成下次开机时的开机动画,由此降低了开机动画的播放难度,减少了人力成本,大大提高了广告视频的投放率。
【专利附图】

【附图说明】
[0019]图1是本发明实施例提供的智能电视开机动画的播放方法的实现流程图;
[0020]图2是本发明实施例提供的智能电视开机动画的播放方法步骤SlOl的具体实现流程图;
[0021]图3是本发明实施例提供的智能电视的结构框图。
【具体实施方式】
[0022]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
[0023]本发明实施例通过比较待播放的开机视频文件的帧率与开机动画服务帧率的大小,取其中较小的帧率提取待播放的开机视频文件的帧图像,再按照开机视频文件的优先级以及每个待播放的开机视频文件的帧图像的时间顺序分配目录序号和帧序号,生成下次开机时的开机动画,由此降低了开机动画的播放难度,减少了人力成本,大大提高了广告视频的投放率。
[0024]在本发明实施例中,智能电视的操作系统可以为Android、Windows、IOS等,在此不作限定。
[0025]图1示出了本发明实施例提供的智能电视开机动画的播放方法的实现流程图,参照图1,该方法包括步骤S101-S105:
[0026]在步骤SlOl中,计算播放所述开机动画的帧率区间,取所述开机动画的帧率区间中的最小帧率作为开机动画服务帧率。
[0027]进一步地,所述计算播放所述开机动画的帧率区间包括:
[0028]计算所述智能电视的原始开机动画的每一帧图像的时长;
[0029]计算所述每一帧图像的时长的倒数,得到所述每一帧图像的帧率以及播放所述开机动画的帧率区间。
[0030]需要说明的是,标准的开机动画文件是一个zip压缩归档文件,它里面包含了开机动画文件的每一帧图像文件和开机动画文件的描述文件。描述文件主要描述每一帧图像的显示尺寸、帧率,每个part (部分)开机动画文件的播放次数以及延时等控制参数。通常,开机动画文件默认有三个存储位置,这三个存储位置分别用于存储系统默认的开机动画文件、用户自定义的开机动画文件和加密的开机动画文件。
[0031]智能电视是通过OpenGL (Open Graphics Library,开放图像库)本地接口将开机动画文件中的帧图像一帧一帧播放的。智能电视解析开机动画文件中的描述文件并初始化相应数据结构之后,再一帧一帧地播放帧图像。每一帧图像在播放的过程中都要经过OpenGL参数配置初始化、绑纹理、解码图像数据到位图对象,构造纹理对象、渲染并显示。
[0032]因此,在当前帧图像做OpenGL参数配置初始化时,获取当前系统时钟,记为Tl,单位为ns ;在当前巾贞图像渲染完成后,获取当前系统时钟,记为T2,单位为ns。把Is转换为1000000000ns,计算当前第i帧的帧图像的帧率为Animation_fps[i]=1000000000/(T2[i]-Tl[i]),其中i为正整数,表示当前帧图像的帧序号,T2[i]表示当前帧图像渲染完成的系统时钟,Tl [i]表示当前巾贞图像OpenGL参数配置初始化的系统时钟,Animation_fps[i]表示当前巾贞的播放巾贞率。
[0033]采用上面的方法,可以计算出原始开机动画文件每一帧的帧率,对得到的原始开机动画文件每一帧的帧率按照从小到大的顺序排列,得到开机动画的帧率区间,并得到开机动画播放的最小巾贞率Animation_fps [min]和开机动画播放的最大巾贞率Animation_fps [max]。将开机动画播放的最小帧率作为开机动画服务帧率。
[0034]在步骤S102中,获取待播放的开机视频文件。
[0035]进一步地,在所述获取待播放的开机视频文件之前,所述方法还包括:
[0036]与服务器连接,判断所述服务器是否有新的视频文件推送请求,若所述服务器有新的视频文件推送请求,则下载所述新的视频文件并保存为开机视频文件。
[0037]在本发明实施例中,在智能电视开机完成后,与服务器通过HTTP (Hyper TextTransfer Protocol,超文本传输协议)连接,发送携带电视参数XML的Post请求至服务器。在这里,电视参数包括当前开机动画信息、智能电视类型和开机视频文件注册信息等。服务器接收到智能电视发来的XML后返回相应的XML,这个XML包括是否有新的视频文件需要推送。如果服务器没有新的视频文件需要推送,则智能电视等待固定时间间隔后再与服务器连接。如果服务器有新的视频文件需要推送,则解析服务器发来的XML中包含的新的视频文件的信息,包括新的视频文件的个数、新的视频文件的优先级以及每个新的视频文件对应的下载链接。保存新的视频文件的信息到进程的preferences文件中,供后续使用。根据新的视频文件的个数,分别通过每个新的视频文件对应的下载链接下载各个新的视频文件。下载完成后,对下载的新的视频文件进行检查,如果有错误,则重新下载。新的视频文件下载完成后,保存为开机视频文件,并保存开机视频文件的信息到preferences文件中。
[0038]在本发明实施例中,智能电视每隔固定时间间隔自动下载服务器推送的新的视频文件,使得智能电视能够第一时间获取服务器的新的视频文件,大大简化了广告视频的投放流程,由此大大提高了广告视频的投放率。
[0039]优选地,步骤S102所述获取待播放的开机视频文件的步骤包括步骤S201-S203,具体为:
[0040]在步骤S201中,获取所述智能电视中已下载的所有开机视频文件的视频时长。
[0041]在这里,获取开机视频文件的元数据,从开机视频文件的元数据中提取开机视频文件的时长属性。
[0042]在步骤S202中,根据优先级对所述开机视频文件按时间先后顺序进行排序。
[0043]通过解析服务器发来的XML可以获取开机视频文件的优先级。
[0044]在步骤S203中,保留不超出开机时间的所述开机视频文件为待播放的开机视频文件。
[0045]按照优先级对开机视频文件按时间先后顺序进行排序后,如果某个开机视频文件的一部分不超出开机时间且一部分超出开机时间,则该开机视频文件被认定为超出开机时间的开机视频文件。
[0046]在步骤S103中,取每个待播放的开机视频文件的帧率与所述开机动画服务帧率中较小的帧率作为图像提取帧率,用所述图像提取帧率提取该待播放的开机视频文件的帧图像,对提取的所述帧图像按时间先后顺序分配帧序号。
[0047]如果直接采用开机视频文件元数据里面的帧率,智能电视在播放开机视频文件时,由于此时系统正在启动,可能会导致动画播放的实际帧率小于开机视频文件元数据里面的帧率,而有卡顿滞后感,动画播放时间延长。
[0048]因此,比较开机动画服务帧率与待播放的开机视频文件的帧率的大小,如果待播放的开机视频文件的帧率高于开机动画服务帧率,则采用开机动画服务帧率作为图像提取帧率;如果待播放的开机视频文件的帧率低于开机动画服务帧率,则采用待播放的开机视频文件的帧率作为图像提取帧率。在这里,对于不同的待播放的开机视频文件,图像提取帧率可能不同。
[0049]作为本发明的一个实施例,利用图像提取帧率,依次对每个待播放的开机视频文件调用MediaMetadataRetriever类的getFrameAtTime接口取得对应帧图像的位图对象,然后将位图对象进行png压缩,以流输出到对应文件,该对应文件命名为videoscXXX.png,其中,XXX是帧序号。`
[0050]在步骤S104中,将属于同一待播放的开机视频文件的帧图像存入同一目录,按所述目录对应的待播放的开机视频文件的优先级对所述帧目录分配目录序号。
[0051]作为本发明的一个实施例,将当前待播放的开机视频文件的所有帧图像存入同一目录,这里命名目录名为partX,X表示目录序号,也就是该目录对应的待播放的开机视频文件的播放次序,X越小则越早播放。按照上述方法,将所有待播放的开机视频文件的所有
中贞图像--存入目录partX,并将所有目录partX放在一个总目录下,这里假定这个目录叫
animation。
[0052]在步骤S105中,在所述智能电视下次开机时,按照所述目录序号和所述帧序号的顺序以及所述图像提取帧率播放所述目录序号和所述帧序号对应的帧图像。
[0053]进一步地,所述方法还包括:
[0054]计算所有待播放的开机视频文件的视频时长之和,得到视频总时长;
[0055]计算所述开机时间与所述视频总时长的时间差值Tlast ;
[0056]取优先级最低的待播放的开机视频文件的最后一帧图像为定格图像;
[0057]在步骤S105所述按照所述目录序号和所述帧序号的顺序以及所述图像提取帧率播放所述目录序号和所述帧序号对应的帧图像之后,所述方法还包括:
[0058]以1/Tlast帧每秒的帧率播放所述定格图像。[0059]如果同时有两个以上待播放的开机视频文件,那么,这些待播放的开机视频文件的帧率可能不一样。在这里,每个part采用该待播放的开机视频文件对应的图像提取帧率,这个图像提取帧率是基于前述方法获得的。作为本发明的一个实施例,首先扩充待播放的开机视频文件的描述文件,在每个描述文件的开始行添加标识语句,例如bootAnimationVer=2.0,这样就可以区分待播放的开机视频文件的描述文件版本。再在描述文件每个part的语句中添加当前part的巾贞率。
[0060]在智能电视解析描述文件时,读取文件开始行内容,确定是否包含多个待播放的开机视频文件,如果是,则解析part语句时,获取当前part的巾贞率,并保存到part对应的帧率变量中。
[0061]作为本发明的一个实施例,在animation目录下创建一个part (M+1)的目录,M表示当前最大part的目录序号,复制partM的最后一巾贞图像到part (M+1)目录,part (M+1) —直播放直到智能电视启动完成。
[0062]下面对生成开机动画描述文件的过程进行说明:在animation目录下创建dest.txt文件,由于有part(M+l),因此,part的个数不小于2,开始行写入版本标记。接着写入屏幕尺寸和开机动画服务帧率,再依次写入每个part的帧率。最后用zip类相关接口对animation目录进行归档,这里假定重命名该文件为bootanimation.zip,放在/data/local下,以使下次开机时播放。
[0063]本发明实施例通过比较待播放的开机视频文件的帧率与开机动画服务帧率的大小,取其中较小的帧率提取待播放的开机视频文件的帧图像,再按照开机视频文件的优先级以及每个待播放的开机视频文件的帧图像的时间顺序分配目录序号和帧序号,生成下次开机时的开机动画,由此降低了开机动画的播放难度,减少了人力成本,大大提高了广告视频的投放率。
[0064]图3是本发明实施例示出的智能电视的结构框图,用于运行图1和图2所述的智能电视开机动画的播放方法,为了便于说明,仅示出了与本实施例相关的部分。
[0065]参照图3,一种智能电视,包括:
[0066]开机动画服务帧率计算模块31,计算播放所述开机动画的帧率区间,取所述开机动画的帧率区间中的最小帧率作为开机动画服务帧率。
[0067]待播放的开机视频文件获取模块32,获取待播放的开机视频文件。
[0068]帧图像提取模块33,比较每个待播放的开机视频文件的帧率与所述开机动画服务帧率的大小,取其中较小的帧率提取该待播放的开机视频文件的帧图像,对提取的所述帧图像按时间先后顺序分配帧序号。
[0069]目录序号分配模块34,将属于同一待播放的开机视频文件的帧图像对应的帧序号存入同一帧目录,按所述帧目录对应的待播放的开机视频文件的优先级对所述帧目录分配
目录序号。
[0070]开机动画播放模块35,在所述智能电视下次开机时,按照所述目录序号和所述帧序号的顺序以及所述图像提取帧率播放所述目录序号和所述帧序号对应的帧图像。
[0071]进一步地,所述智能电视还包括定格图像播放模块,所述定格图像播放模块用于:
[0072]计算所有待播放的开机视频文件的视频时长之和,得到视频总时长;[0073]计算所述开机时间与所述视频总时长的时间差值Tlast ;
[0074]取优先级最低的待播放的开机视频文件的最后一帧图像为定格图像;
[0075]在所述按照所述目录序号和所述帧序号的顺序以及所述图像提取帧率播放所述目录序号和所述帧序号对应的帧图像之后,以1/Tlast帧每秒的帧率播放所述定格图像。
[0076]进一步地,所述开机动画服务帧率计算模块32包括开机动画帧率区间计算子模块,所述开机动画帧率区间计算子模块用于:
[0077]计算所述智能电视的原始开机动画的每一帧图像的时长;
[0078]计算所述每一帧图像的时长的倒数,得到所述每一帧图像的帧率以及播放所述开机动画的帧率区间。
[0079]进一步地,所述待播放的开机视频文件获取模块31具体用于:
[0080]获取所述智能电视中已下载的所有开机视频文件的视频时长;
[0081]根据优先级对所述开机视频文件按时间先后顺序进行排序;
[0082]保留不超出开机时间的所述开机视频文件为待播放的开机视频文件。
[0083]进一步地,所述智能电视还包括开机视频文件下载模块,所述开机视频文件下载模块用于:
[0084]与服务器连接,判断所述服务器是否有新的视频文件推送请求,若所述服务器有新的视频文件推送请求,则下载所述新的视频文件并保存为开机视频文件。
[0085]本发明实施例通过比较待播放的开机视频文件的帧率与开机动画服务帧率的大小,取其中较小的帧率提取待播放的开机视频文件的帧图像,再按照开机视频文件的优先级以及每个待播放的开机视频文件的帧图像的时间顺序分配目录序号和帧序号,生成下次开机时的开机动画,由此降低了开机动画的播放难度,减少了人力成本,大大提高了广告视频的投放率。
[0086]以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,凡在本发明的精神和原则之内所作的任何修改、等同替换和改进等,均应包含在本发明的保护范围之内。
【权利要求】
1.一种智能电视开机动画的播放方法,其特征在于,包括: 计算播放所述开机动画的帧率区间,取所述开机动画的帧率区间中的最小帧率作为开机动画服务帧率; 获取待播放的开机视频文件; 取每个待播放的开机视频文件的帧率与所述开机动画服务帧率中较小的帧率作为图像提取帧率,用所述图像提取帧率提取该待播放的开机视频文件的帧图像,对提取的所述帧图像按时间先后顺序分配帧序号; 将属于同一待播放的开机视频文件的帧图像存入同一目录,按所述目录对应的待播放的开机视频文件的优先级对所述帧目录分配目录序号; 在所述智能电视下次开机时,按照所述目录序号和所述帧序号的顺序以及所述图像提取帧率播放所述目录序号和所述帧序号对应的帧图像。
2.如权利要求1所述的方法,其特征在于,所述方法还包括: 计算所有待播放的开机视频文件的视频时长之和,得到视频总时长; 计算所述开机时间与所述视频总时长的时间差值Tlast ; 取优先级最低的待播放的开机视频文件的最后一帧图像为定格图像; 在所述按照所述目录序号和所述帧序号的顺序以及所述图像提取帧率播放所述目录序号和所述帧序号对应的帧图像之后,所述方法还包括: 以1/Tlast帧每秒的帧率播放所述`定格图像。
3.如权利要求1所述的方法,其特征在于,所述计算播放所述开机动画的帧率区间包括: 计算所述智能电视的原始开机动画的每一帧图像的时长; 计算所述每一帧图像的时长的倒数,得到所述每一帧图像的帧率以及播放所述开机动画的帧率区间。
4.如权利要求1所述的方法,其特征在于,所述获取待播放的开机视频文件具体为: 获取所述智能电视中已下载的所有开机视频文件的视频时长; 根据优先级对所述开机视频文件按时间先后顺序进行排序; 保留不超出开机时间的所述开机视频文件为待播放的开机视频文件。
5.如权利要求1或4所述的方法,其特征在于,在所述获取待播放的开机视频文件之前,所述方法还包括: 与服务器连接,判断所述服务器是否有新的视频文件推送请求,若所述服务器有新的视频文件推送请求,则下载所述新的视频文件并保存为开机视频文件。
6.一种智能电视,其特征在于,包括: 开机动画服务帧率计算模块,用于计算播放所述开机动画的帧率区间,取所述开机动画的帧率区间中的最小帧率作为开机动画服务帧率; 待播放的开机视频文件获取模块,用于获取待播放的开机视频文件; 帧图像提取模块,用于取每个待播放的开机视频文件的帧率与所述开机动画服务帧率中较小的帧率作为图像提取帧率,用所述图像提取帧率提取该待播放的开机视频文件的帧图像,对提取的所述帧图像按时间先后顺序分配帧序号; 目录序号分配模块,用于将属于同一待播放的开机视频文件的帧图像存入同一目录,按所述目录对应的待播放的开机视频文件的优先级对所述帧目录分配目录序号; 开机动画播放模块,用于在所述智能电视下次开机时,按照所述目录序号和所述帧序号的顺序以及所述图像提取帧率播放所述目录序号和所述帧序号对应的帧图像。
7.如权利要求6所述的智能电视,其特征在于,所述智能电视还包括定格图像播放模块,所述定格图像播放模块用于: 计算所有待播放的开机视频文件的视频时长之和,得到视频总时长; 计算所述开机时间与所述视频总时长的时间差值Tlast ; 取优先级最低的待播放的开机视频文件的最后一帧图像为定格图像; 在所述按照所述目录序号和所述帧序号的顺序以及所述图像提取帧率播放所述目录序号和所述帧序号对应的帧图像之后,以1/Tlast帧每秒的帧率播放所述定格图像。
8.如权利要求6所述的智能电视,其特征在于,所述开机动画服务帧率计算模块包括开机动画帧率区间计算子模块,所述开机动画帧率区间计算子模块用于: 计算所述智能电视的原始开机动画的每一帧图像的时长; 计算所述每一帧图像的时长的倒数,得到所述每一帧图像的帧率以及播放所述开机动画的帧率区间。
9.如权利要求6所述的智能电视,其特征在于,所述待播放的开机视频文件获取模块具体用于: 获取所述智能电视中已下载的所有开机视频文件的视频时长; 根据优先级对所述开机视频文件按时间先后顺序进行排序; 保留不超出开机时间的所述开机视频文件为待播放的开机视频文件。
10.如权利要求6或9所述的智能电视,其特征在于,所述智能电视还包括开机视频文件下载模块,所述开机视频文件下载 模块用于: 与服务器连接,判断所述服务器是否有新的视频文件推送请求,若所述服务器有新的视频文件推送请求,则下载所述新的视频文件并保存为开机视频文件。
【文档编号】H04N21/462GK103618952SQ201310654834
【公开日】2014年3月5日 申请日期:2013年12月5日 优先权日:2013年12月5日
【发明者】张航志 申请人:Tcl集团股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1