CN101707697A - 一种推送视频及数据内容的方法、系统及设备 - Google Patents
一种推送视频及数据内容的方法、系统及设备 Download PDFInfo
- Publication number
- CN101707697A CN101707697A CN200910253966A CN200910253966A CN101707697A CN 101707697 A CN101707697 A CN 101707697A CN 200910253966 A CN200910253966 A CN 200910253966A CN 200910253966 A CN200910253966 A CN 200910253966A CN 101707697 A CN101707697 A CN 101707697A
- Authority
- CN
- China
- Prior art keywords
- pvod
- content file
- file
- description document
- content
- 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
Abstract
本发明公开了一种推送视频及数据内容方法、系统及设备,服务器端将描述PVOD(Push Video On Demand,推送视频点播)内容文件的信息封装为PVOD描述文件;服务器端循环播发输出PVOD描述文件和PVOD内容文件;数字电视接收终端先对接收到的PVOD描述文件进行处理,并创建未推送的以及需要更新的PVOD内容文件并分配相应的存储空间;数字电视接收终端然后接收PVOD内容文件,利用创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件从接收的PVOD内容文件数据包中解析数据并保存。本发明能够支持任意格式数据的推送,使得接收速率快,硬件配置要求较低。
Description
技术领域
本发明涉及视频点播技术,特别涉及一种推送视频及数据内容的方法、系统及设备。
背景技术
推送视频点播(PVOD,Push Video On Demand)业务是一种新型数字电视增值业务,它以推送技术为基础,利用空闲的广播信道,在不妨碍电视用户正常收看节目的前提下,将各种扩展服务内容自动推送到用户数字电视接收终相连的存储设备中,用户可以选择在任意时段从数字电视接收终相连的存储设备中读取相关文件,以享受数字电视运营商提供的各种扩展服务内容,实现本地点播。上述扩展服务内容可以是音频、视频,也可以是其他数据内容,例如网页、图片等。
目前存在如下两种PVOD的实现方案:
第一、基于准视频点播(NVOD,Near Video On Demand)扩展的个人视频录像机实现方案。
服务器端每隔一段时间在某一频道从头播放同一套节目,即每隔一段时间在该频道向数字电视接收终推送相同的视频流,推送的方式与普通节目视频流的推送方式相同,用户在发出点播某一套节目的点播信号后,中间交换设备将数字电视接收终与最近将要从头开始播放该套节目的频道连通,然后数字电视接收终利用个人视频录像机(PVR,Personal Video Recorder)技术中的电子节目指南(EPG,Electronic Program Guide)对节目时段(例如节目开始时间、节目持续时间)的描述,对该套节目的视频流进行实时录制、创建视频流文件并存储。
该方案只适用于服务器端推送视频流的情况,另外由于对某个视频流的录制受限于当前EPG的描述,无法做到十分精确,无法做到对未接收完成的数据的断点续传。
第二、基于数字存储媒体命令与控制(DSM-CC,Dsca Storage MediaCommand and Control)的实现方案。
服务器端利用DSM-CC数据分段对推送的数据进行分段封装,然后进行轮播,数字电视接收终端根据DSM-CC协议,接收分段封装的DSM-CC数据,并分段进行文件创建,在成功创建文件后,进行数据解析并保存数据。
该方案虽然解决了第一种方案中只能实时录制视频流的情况,但由于DSM-CC协议的复杂性,使得数字电视接收终端对数据的解析效率大大降低,无法快速有效的保存数据,例如,对于较大的数据,数字电视接收终在接收该数据的同时需要创建该数据文件,而创建数据文件需要花费较多时间和占用较多资源,从而降低了数字电视接收终的数据接收速度、解析效率以及保存数据的速度;进而对数字电视接收终设备的硬件配置有较高的要求,包括要求中央处理器(CPU,Central Processing Unit)的性能更强,同步动态随机接入存储器(SDRAM,Synchronous Dynamic Random Access Memory)的容量更大,闪存(FLASH)的容量也更大等,增加了硬件的成本。
发明内容
本发明提供一种推送视频及数据内容的方法,能够支持任意格式数据的推送、提高数字电视接收终端接收速率。
本发明提供一种推送视频及数据内容的系统,能够支持任意格式数据的推送、提高数字电视接收终端接收速率。
本发明提供一种推送视频及数据内容的服务器端设备,能够支持任意格式数据的推送、提高数字电视接收终端接收速率。
本发明提供一种接收视频及数据内容的数字电视接收终端设备,能够支持任意格式数据的推送、提高数字电视接收终端接收速率。
本发明的技术方案是这样实现的:
一种推送视频及数据内容的方法,该方法包括:
服务器端为待播发的推送视频点播PVOD内容文件创建对应的PVOD描述文件,所述PVOD描述文件包含该PVOD内容文件的描述信息;
服务器端循环播发输出PVOD描述文件和PVOD内容文件;
数字电视接收终端接收PVOD描述文件并进行处理,在处理过程中判断是否存储有上一轮PVOD描述文件,如果是,匹配目前接收的PVOD描述文件以及已存储的上一轮PVOD描述文件,创建上一轮PVOD描述文件中未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间,如果数字电视接收终端没有存储上一轮PVOD描述文件,根据接收的PVOD描述文件创建所有未推送的PVOD内容文件并分配相应的存储空间;
数字电视接收终端接收PVOD内容文件,根据创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件从接收的PVOD内容文件中解析对应PVOD内容文件的数据包并保存到已创建的相应PVOD内容文件中。
所述服务器端为待播发的推送视频点播PVOD内容文件创建对应的PVOD描述文件包括:
服务器端获取所有需要推送的PVOD内容文件的描述信息,按照获取的PVOD内容文件在数字电视接收终端的存储结构组织PVOD内容文件的描述信息,将描述PVOD内容文件的概要信息的描述信息封装为PVOD描述文件。
所述PVOD描述文件中的描述信息包括:各PVOD内容文件名称、数字电视接收终端存储的相对路径、文件大小、文件的日期时间属性以及所有的PVOD数据包中实际数据长度阀值。
所述服务器端输出PVOD内容文件包括:服务器端按照PVOD描述文件中的PVOD数据包中实际数据长度阀值和PVOD内容文件大小将各具体PVOD内容文件封装为PVOD数据包后再进行数据的传输打包,然后输出。
所述根据接收的PVOD描述文件创建所有未推送的PVOD内容文件并分配相应的存储空间的步骤进一步包括:
删除数字电视接收终上的存储设备上存储PVOD内容文件的根目录下的所有文件和目录。
所述创建上一轮PVOD描述文件中未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间的步骤进一步包括:
更改存储的PVOD描述文件名称;
将接收的PVOD描述文件保存为当前PVOD描述文件;
比较当前存储的PVOD描述文件和更名的PVOD描述文件,在数字电视接收终存储设备的PVOD内容文件存储目录中,删除更名的PVOD描述文件中不存在描述的PVOD内容文件,并删除更名的PVOD描述文件中存在描述但当前存储的PVOD描述文件中不存在描述的PVOD内容文件,并删除更名的PVOD描述文件中和当前存储的PVOD描述文件中均存在描述、但描述大小或文件日期时间不一致的PVOD内容文件。
所述方法进一步包括:
遍历数字电视接收终存储设备中已存储的PVOD内容文件,删除当前存储的PVOD描述文件中不存在描述的PVOD内容文件,及删除当前存储的PVOD描述文件中存在描述、但大小或文件的日期时间属性与当前存储的PVOD描述文件中描述不一致的PVOD内容文件。
所述创建未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间包括:
根据接收的PVOD描述文件中的描述,创建内容为空的接收的PVOD描述文件中有描述但数字电视接收终存储设备中PVOD内容文件存储目录不存在的PVOD内容文件以及需要更新的PVOD内容文件的空文件并分配大小,并创建对应该文件的状态文件。
所述利用创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件从接收的PVOD内容文件中解析对应PVOD内容文件的内容数据并保存到数字电视接收终端存储设备包括:
判断数字电视接收终存储设备中是否已存在根据接收的PVOD描述文件描述的PVOD内容文件的完整接收文件,如存在即停止接收该PVOD内容文件的保存,并判断根据接收的PVOD描述文件的描述的PVOD内容文件是否已全部接收,如已完成接收则结束整个接收过程,否则继续接收PVOD内容文件的过程;
在上一步的判断中如不存在已完成接收的PVOD内容文件,则判断数字电视接收终存储设备中是否已存在根据接收的PVOD描述文件创建的PVOD内容文件的空文件或未接收完成的PVOD内容文件,如果不是,继续执行建立具有PVOD内容文件名称的空文件,并建立对应的状态文件,然后将从当前接收的PVOD内容文件中解析出的内容数据存储到该空文件中,该空文件成为未接收完成的PVOD内容文件,并更新状态文件中的记载;
否则获取对应该接收的PVOD内容文件的状态文件,并进一步通过状态文件中的记载判断出当前接收的PVOD内容文件中的内容数据没有保存过,如未保存,则将从当前接收的PVOD内容文件数据包中解析出的内容数据存储到该空文件中,并更新状态文件中对该接收的PVOD内容文件中的内容数据的记载;如已保存则放弃该次PVOD内容文件的保存,继续PVOD内容文件的接收过程。
进一步包括:
记录当前接收的PVOD内容文件中的内容数据的版本信息、PVOD内容文件总数目及已经推送完成的内容文件数目;
在确定该PVOD数据版本没有被更新、与数字电视接收终相连的存储设备中存在与该PVOD内容文件名称相同的PVOD内容文件、临时推送文件已存在后,判断该PVOD内容文件是否已接收完毕,如果没有,继续执行接收包含PVOD内容文件的PVOD数据包的步骤.
所述推送文件包括:片段总数、已存片段数以及推送标识区,
推送标识区,包含与PVOD内容文件片段总数对应的推送标识分区,每个推送标识分区包含一个字节,对应一个PVOD内容文件的一个片段,并设置第n个推送标识分区的字节为0表示还未接收对应PVOD内容文件的第n个片段数据;
所述判断该PVOD内容文件是否已接收完毕,如果没有,继续执行接收包含PVOD内容文件的PVOD数据包的步骤包括:数字电视接收终端判断存储的对应的PVOD内容文件是否存在临时推送文件后缀,如果存在,继续接收PVOD数据包,访问推送状态文件,如果相应PVOD内容文件对应的片段还未进行存储,则存储对应的片段,并将推送状态文件中的相应推送标识分区的字节数据设置为1,同时更新已存片段数。
一种推送视频及数据内容的系统,该系统包括:服务器端设备和数字电视接收终端设备,其中,
服务器端设备,将描述待推送视频点播PVOD内容文件中的描述信息封装为PVOD描述文件并输出,且将待推送PVOD内容文件输出;
数字电视接收终端设备,接收PVOD描述文件并进行处理,判断是否存储有上一轮PVOD描述文件,如果是,匹配目前接收的PVOD描述文件以及已存储的上一轮PVOD描述文件,创建上一轮PVOD描述文件中未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间,如果数字电视接收终端没有存储上一轮PVOD描述文件,根据接收的PVOD描述文件创建未推送的PVOD内容文件并分配相应的存储空间;利用创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件从接收的PVOD内容文件数据包中解析对应PVOD内容文件的内容数据并保存到与数字电视接收终相连存储设备创建的相应PVOD内容文件中。
所述PVOD描述文件的内容为所述对服务器端所有推送的PVOD内容文件的概况进行描述的描述数据。
一种推送视频及数据内容的服务器端设备,该服务器端设备包括:推送视频点播PVOD描述文件处理模块、PVOD内容文件处理模块和输出模块,其中:
PVOD描述文件处理模块,遍历所有需要推送的PVOD内容文件生成一个描述所有PVOD内容文件概要信息的PVOD描述文件,输出至输出模块;
PVOD内容文件处理模块,将所述PVOD内容文件中的内容数据封装为PVOD内容文件数据包,输出至输出模块;
输出模块,按照设置好的PVOD描述文件和PVOD内容文件数据包在同一个播发资源中互斥循环输出,每隔一段间隔在PVOD内容文件数据包的输出中插入一次PVOD描述文件输出的播出策略,将接收的PVOD描述文件和接收的PVOD内容文件进行传输打包后输出。
一种接收推送视频及数据内容的数字电视接收终端设备,该数字电视接收终端设备包括:接收模块、处理选择模块、PVOD描述文件处理模块、PVOD内容文件处理模块以及存储模块;其中,
接收模块,接收被打包好的PVOD描述文件和PVOD内容文件数据包,输出至处理选择模块;
处理选择模块,用于判断接收的为PVOD描述文件时,输出至PVOD描述文件处理模块;判断接收的为PVOD内容文件数据包时,输出至PVOD内容文件处理模块;
PVOD描述文件处理模块,对接收到的PVOD描述文件进行处理,获取未推送的PVOD内容文件以及需要更新的PVOD内容文件,通知存储模块创建所述未推送的PVOD内容文件以及需要更新的PVOD内容文件,并分配相应的存储空间,并将接收到的PVOD描述文件发送至存储模块;
PVOD内容文件处理模块;接收PVOD内容文件,从接收的PVOD内容文件数据包中获取与存储模块创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件相对应的PVOD内容文件,输出至存储模块已创建的相应PVOD内容文件中;
存储模块,接收PVOD描述文件处理模块发送的通知,创建未推送的PVOD内容文件以及需要更新的PVOD内容文件,并在创建完成后存储PVOD描述文件,接收PVOD内容文件处理模块输出的PVOD内容文件,将未推送的PVOD内容文件以及需要更新的PVOD内容文件存储至相应的已创建的未推送PVOD内容文件或需要更新的PVOD内容文件中。
所述PVOD描述文件处理模块进一步用于在通知存储模块创建未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间时,通知存储模块创建相应的状态文件;所述PVOD内容文件处理模块进一步用于在输出未推送的PVOD内容文件以及需要更新的PVOD内容文件至存储模块已创建的相应PVOD内容文件中时,通知存储模块更新相应的状态文件;
PVOD内容文件处理模块,在确定从接收的PVOD内容文件中获取与存储模块创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件相对应的PVOD内容文件已完成接收后,向存储模块输出删除相应状态文件的指示;
存储模块根据接收的指示删除相应状态文件。
进一步包括:PVOD内容文件更新模块,接收来自处理选择模块的PVOD描述文件,删除存储目录下所有PVOD内容文件和文件目录。
所述存储模块进一步存储有上一轮PVOD描述文件;
所述数字电视接收终端设备进一步包括:PVOD内容文件更新模块,接收来自处理选择模块的PVOD描述文件,遍历存储模块中已存储的PVOD内容文件,删除上一轮接收的PVOD描述文件中不存在描述的已存储的PVOD内容文件,及删除上一轮PVOD描述文件中存在描述、但大小或创建修改时间与当前接收的PVOD描述文件中描述不一致的已存储的PVOD内容文件;比较当前接收的描述文件和存储的上一轮PVOD描述文件,删除已存储的PVOD描述文件中存在描述但当前接收的PVOD描述文件中不存在描述的已存储的PVOD内容文件,并删除已存储的PVOD描述文件中和接收的PVOD描述文件中均存在描述、但描述大小或创建修改时间不一致的已存储的PVOD内容文件。
由以上技术方案可以看出,本发明提供的方法、系统及设备与现有第一种解决方案相比,由于推送的视频及数据内容用文件形式存储,可以支持任意格式数据的推送;本发明提供的方法、系统及设备与现有第二种解决方案相比,由于设置了对服务器端所有PVOD内容文件的概况进行描述的PVOD描述文件,服务器循环播发输出PVOD描述文件和PVOD内容文件,数字电视接收终首先接收PVOD描述文件,数字电视接收终端对接收的PVOD描述文件进行处理,在处理过程中判断是否存储有上一轮PVOD描述文件,如果是,匹配目前接收的PVOD描述文件以及已存储的上一轮PVOD描述文件,创建未推送以及需要更新的PVOD内容文件并分配相应的存储空间,从而使得数字电视接收终端能够根据PVOD描述文件中的内容快速接收并解析PVOD内容文件中的数据,快速有效的保存数据,提高了接收速率.
附图说明
图1为本发明中推送视频及数据内容的方法流程图;
图2为本发明实施例中服务器端的推送流程示意图;
图3为本发明实施例中数字电视接收终端的接收推送文件的流程示意图;
图4为本发明数字电视接收终端对接收的PVOD描述文件进行处理的流程示意图;
图5为本发明实施例中数字电视接收终端接收PVOD内容文件中的数据包的流程示意图;
图6为本发明实施例PVOD内容文件与推送状态文件的对应关系示意图;
图7为本发明推送视频及数据内容的系统结构示意图
图8为本发明推送视频及数据内容的服务器端设备结构示意图;
图9为本发明推送视频及数据内容的数字电视接收终端设备结构示意图。
具体实施方式
为使本发明的目的和优点更加清楚,下面结合附图和实施例对本发明作进一步的详细说明。
图1为本发明中推送视频及数据内容的方法流程图,图1所示流程包括:
步骤101:服务器端将描述待推送PVOD内容文件的描述信息封装为PVOD描述文件。
本步骤中,服务器端为待播发的PVOD内容文件创建对应的PVOD描述文件,所述PVOD描述文件包含该PVOD内容文件的描述信息,关于描述信息,后续在详细说明。
步骤102:服务器端输出PVOD描述文件和PVOD内容文件。
本步骤中,服务器端循环播发输出PVOD描述文件和PVOD内容文件。
步骤103:数字电视接收终端对接收到的PVOD描述文件进行处理,创建未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间。
本步骤中,数字电视接收终端接收PVOD描述文件并进行处理,在处理过程中判断是否存储有上一轮PVOD描述文件,如果是,匹配目前接收的PVOD描述文件以及已存储的上一轮PVOD描述文件,创建上一轮PVOD描述文件中未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间,如果数字电视接收终端没有存储上一轮PVOD描述文件,根据接收的PVOD描述文件创建所有未推送的PVOD内容文件并分配相应的存储空间。
步骤104:数字电视接收终端接收PVOD内容文件,利用创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件从接收的PVOD内容文件数据包中解析对应PVOD内容文件的内容数据并保存到数字电视接收终相连的存储设备。
由上述可见,本发明提供的推送视频及数据内容的方法,由于推送的描述信息、视频及数据内容用文件形式存储,可以支持任意格式数据的推送;进一步地,由于设置了对服务器端所有PVOD内容文件的概况进行描述的PVOD描述文件,PVOD内容文件和PVOD描述文件循环推送至数字电视接收终端,数字电视接收终端预先接收PVOD描述文件进行处理,在处理过程中判断是否存储有上一轮PVOD描述文件,如果是,匹配目前接收的PVOD描述文件以及已存储的上一轮PVOD描述文件,创建上一轮PVOD描述文件中未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间,如果数字电视接收终端没有存储上一轮PVOD描述文件,根据接收的PVOD描述文件创建所有未推送的PVOD内容文件并分配相应的存储空间,从而使得数字电视接收终端在多次接收PVOD内容文件的数据包时,不需要多次创建该PVOD内容文件和每次调整PVOD内容文件大小,减少了创建与调整文件大小的时间以及CPU资源,从而能够根据PVOD描述文件中的内容快速接收并解析PVOD内容文件中的数据,快速有效的保存数据到PVOD内容文件的准确位置,提高了接收速率;进一步地,由于只需要对未推送的以及需要更新的PVOD内容文件进行接收和存储,缩短了整个接收过程的时间、提高了接收效率、降低了对硬件容量的要求,从而降低了硬件的成本.
下面介绍本发明所提供方法的一个实施例。
在本实施例中,服务器端待推送的文件包含两种:PVOD描述文件和PVOD内容文件。其中PVOD内容文件中包括对应音视频及数据内容的内容数据,PVOD描述文件中包括对服务器端所有PVOD内容文件的概况进行描述的描述信息。数字电视接收终端先接收服务器端推送的PVOD描述文件,并根据接收的PVOD描述文件、或接收的PVOD描述文件与已存储的PVOD描述文件,进行处理后,再根据处理结果接收服务器端推送的PVOD内容文件中相应的内容数据。
图2为本发明实施例中服务器端的推送流程示意图,该流程开始之前,在服务器端利用个人计算机(PC,Personal Computer)及通用网页编辑工具创建PVOD内容文件的内容网站,该网站中的所有内容都以PVOD内容文件的形式按数字电视接收终存储结构组织并可将其置于推送目录(如pvod_root目录)下的任意目录下,每个PVOD内容文件的路径都为相对路径。
当服务器端将PVOD内容文件组织好之后触发PVOD播发器推送操作,图2所示流程开始,该流程包括:
步骤201,遍历所有的PVOD内容文件,生成对应所有PVOD内容文件的PVOD描述文件并循环发送。
本步骤中,PVOD描述文件中的描述信息描述所有PVOD内容文件的文件信息,即PVOD内容文件的概况,至少包括:PVOD数据包中实际数据长度阀值、各PVOD内容文件名称(包含路径信息,例如,相对数字电视接收终目录pvod_stb目录路径的内容文件的路径)、各PVOD内容文件大小以及各PVOD内容文件日期时间属性等。
描述信息组织顺序与PVOD内容文件在数字电视接收终端的存储结构相同,PVOD内容文件在数字电视接收终端的存储结构由服务器端决定。
PVOD描述文件中的描述信息的一个具体实施例格式如下所示:
pre_create_file_size 60KB
dir.
index.html,time=2009-04-24 09:12:34,size=4987
dir./Moive
moive.html,time=2009-04-24 09:12:34,size=2987
dir./Movie/wfcl
wfcl.html,time=2009-04-24 09:12:34,size=2345
wfcl1.ts,time=2009-04-24 10:11:34,size=2000000000
wfcl2.ts,time=2009-04-24 19:16:34,size=2000000000
上述格式的简要解释如下:
1)pre_create_file_size用于描述需要数字电视接收终端PVOD数据包中实际数据长度阀值,所有PVOD数据包中含有的实际数据的长度最大为该阀值60KB。在应用中必须设置该阀值,该阀值需要作为划分PVOD内容文件为PVOD数据包个数的大小依据。PVOD数据包中实际数据长度阀值也可作为其他作用,例如需要为超过阀值60KB的PVOD内容文件在数字电视接收终端创建相应文件并分配空间,这样,可以减少数字电视接收终在接收到PVOD内容文件时才创建该内容文件,需要花费较多时间和占用较多资源的问题;而对于未超过PVOD数据包中实际数据长度阀值的PVOD内容文件,可直接存储而不用创建相应文件并分配空间。PVOD数据包中实际数据长度阀值根据实际需要进行设置。
2)index.html文件的相对路径为pvod_stb目录,日期时间属性为2009-04-24 09:12:34,文件的内容大小为4987字节;
3)moive.html文件的相对路径为pvod_stb目录的子目录Moive,创建时间为2009-04-24 09:12:34,Moive文件的内容大小为2987字节;
4)wfcl.html文件的相对路径为pvod_stb目录的子目录Moive的子目录wfcl,创建时间为2009-04-24 09:12:34,文件的内容大小为2345字节;同在一个目录下保存的还有创建时间为2009-04-24 10:11:34、文件的内容大小为2000000000字节的文件wfcl1.ts,以及创建时间为2009-04-24 19:16:34、文件的内容大小为2000000000字节的文件wfcl2.ts。
步骤202,将PVOD内容文件按照PVOD描述文件中设置的PVOD数据包中实际数据长度阀值封装成PVOD内容文件数据包后打包并发送。
本步骤中,服务器端输出的每个数据中都可以包含本次数据的版本信息,用于描述本次数据的版本号,版本信息的作用是在数字电视接收终端检测到版本变化时重新启动PVOD数据接收过程。
服务器端按照PVOD描述文件中设置的pre_create_file_size值,将各具体PVOD内容文件封装成PVOD内容文件数据包后打包后发送至数字电视接收终端。
举例来说,按照前述PVOD描述文件中的描述数据(PVOD数据包中实际数据长度阀值),打包形成的PVOD数据包如表1所示。
表1
表1中,k和n为自然数,依据每个PVOD文件的大小以及pre_create_file_size确定,每个PVOD内容文件除最后一个数据包外,其他数据包中的大小都是pre_create_file_size,最后一个包的实际数据最大长度为pre_create_file_size.而且,服务器端发送每个PVOD内容文件的数据包的顺序可以是随机的.
实际应用中,服务器端发送PVOD描述文件和PVOD内容文件之间的间隔包数或时间可以由服务提供商根据实际需要设定。
图3为本发明实施例中数字电视接收终端接收推送文件的流程示意图。参见图3,该流程包括:
步骤301,数字电视接收终端接收PVOD描述文件,删除需要删除和需要更新的PVOD内容文件,获取并创建未推送的以及需要更新的PVOD内容文件并分配相应的存储空间。
本步骤中,数字电视接收终端在接收PVOD内容文件前,先接收PVOD描述文件,并对接收的PVOD描述文件进行处理。
本步骤中,如果数字电视接收终端已存储有服务器端以前发送的PVOD描述文件,即上一轮PVOD描述文件,则可以根据目前接收的PVOD描述文件以及已存储的PVOD描述文件,进行处理,也就是将目前接收的PVOD描述文件与已存储的上一轮PVOD描述文件进行比较、匹配,获取并创建上一轮PVOD描述文件中未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间。如果数字电视接收终端没有存储服务器端上一轮发送的PVOD描述文件,则可以根据接收的PVOD描述文件,遍历数字电视接收终相连的存储设备pvod_stb目录下的所有PVOD内容文件,获取并创建未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间。
实际应用中,获取并创建未推送的PVOD内容文件以及需要更新的PVOD内容文件可以不需要待推送的PVOD内容文件大小满足任何条件;当然,也可以要求PVOD内容文件大小满足一定条件,对于不满足条件的PVOD内容文件,则不需要预先创建。例如,如果待推送的PVOD内容文件大小超过描述信息中携带的PVOD数据包中实际数据长度阀值,则可以为超过PVOD数据包中实际数据长度阀值的该PVOD内容文件创建相应文件。
上述的获取并创建未推送的以及需要更新的PVOD内容文件并分配相应的存储空间,具体来说,根据接收的PVOD描述文件的描述,创建接收的PVOD描述文件中有描述,但数字电视接收终相连的存储设备中不存在的PVOD内容文件以及需要更新的PVOD内容文件,具体要求如下:
a)根据接收的PVOD描述文件中的描述创建具备该PVOD内容文件的文件名称,即临时推送文件的空文件并分配大小,创建时加上扩展名.dwn,例如,将a.ts创建为a.ts.dwn,同时创建对应该空文件的推送状态文件,文件扩展名为.sta,例如,将a.ts创建为a.ts.sta,该推送状态文件用来描述推送的状态,例如,哪些偏移值对应的数据已经推送至数字电视接收终端相连的存储设备中;
b)将空文件创建或修改时间设置为接收的PVOD描述文件中描述PVOD内容文件的“文件日期时间”属性值。
本步骤中预先创建空文件的目的在于避免数字电视接收终端在接收与数字电视接收终端相连的存储设备中不存在的PVOD内容文件时,对较大文件的创建花费太多时间,从而影响接收速度及解析效率,甚至来不及存储该内容文件,同时预先创建PVOD内容文件并分配空间,可在接收PVOD内容文件之前明确数字电视接收终相连的存储空间是否足够保存所有PVOD内容文件,如不能则不接收PVOD内容文件并报告失败.
步骤302,数字电视接收终端接收PVOD内容文件,利用创建的未推送以及需要更新的PVOD内容文件从接收的PVOD内容文件数据包中解析数据并进行相应存储。
本步骤中,从接收的PVOD内容文件中解析出的内容数据存储在数字电视接收终相连的存储设备中创建的相应PVOD内容文件中。
如前所述,如果未推送的PVOD内容文件以及需要更新的PVOD内容文件是根据PVOD内容文件大小超过PVOD数据包中实际数据长度阀值来创建的,当接收到PVOD内容文件时,解析接收的PVOD内容文件大小超过PVOD数据包中实际数据长度阀值的PVOD内容文件中的内容数据,并保存到数字电视接收终存储设备中已创建的未推送的以及需要更新的PVOD内容文件中。
本实施例中,可以对PVOD内容文件大小未超过PVOD数据包中实际数据长度阀值的PVOD内容文件,在接收前不创建PVOD内容文件也不分配空间,因而,当接收到PVOD内容文件,当接收的PVOD内容文件大小未超过PVOD数据包中实际数据长度阀值时,可直接从接收的PVOD内容文件数据包中解析内容数据,创建PVOD内容文件并保存到数字电视接收终存储设备。
数字电视接收终存储设备可以为具备通用总线协议(USB,UniversalSerial Bus)接口的存储设备,例如U盘或USB硬盘,这样通过数字电视接收终上的USB接口,该存储设备可以和数字电视接收终连接。
图4为本发明数字电视接收终端对接收的PVOD描述文件进行处理的流程示意图。参见图4,该流程包括:
步骤401,检测是否存储有上一轮PVOD描述文件,如果有,执行步骤402,否则,执行步骤403;
步骤402,更改存储的上一轮PVOD描述文件名称;
本步骤中,更改存储的上一轮PVOD描述文件名称以避免与待接收的PVOD描述文件名称相同而导致被覆盖。例如,假设已存储的PVOD描述文件为/pvod_stb/files.dat,则将/pvod_stb/files.dat更改为/pvod_stb/files_old.dat,执行步骤403。
步骤403,保存新接收的PVOD描述文件(如files.dat);
本步骤中,PVOD描述文件包含描述本次传输的PVOD内容文件的所有信息。
步骤404,根据接收的PVOD描述文件获取未推送的PVOD内容文件以及需要更新的PVOD内容文件;
本步骤中,为了进一步释放数字电视接收终端相连的设备的存储空间、以及减少数字电视接收终接收与已存在的PVOD内容文件相同名称、大小及创建时间的PVOD内容文件而导致的资源开销大的问题,在获取未推送的PVOD内容文件以及需要更新的PVOD内容文件前,可以先删除数字电视接收终端一些旧的PVOD内容文件,同时保留了不需要更新的文件,减少了接收与保存时间,支持了续传。
数字电视接收终端判断是否存储有上一轮PVOD描述文件,如果数字电视接收终端没有存储上一轮PVOD描述文件,释放数字电视接收终端存储空间的方式如下:
遍历pvod_stb目录下的所有PVOD内容文件,删除所有PVOD内容文件和所有的文件目录。
如果数字电视接收终端已存储有PVOD描述文件,释放数字电视接收终端存储空间的方式如下:
一、数字电视接收终相连的存储设备中存储的PVOD描述文件(files_old.dat)与当前接收的PVOD描述文件(files.dat)相一致,则表明数字电视接收终端不需要服务器端推送PVOD内容文件,因而,数字电视接收终端不需要接收PVOD内容文件,则结束该流程。
二、数字电视接收终相连的存储设备中存储的files_old.dat与当前接收的files.dat不一致:
删除files.dat中没有描述、和/或,与files.dat中描述不一致的数字电视接收终端存储的PVOD内容文件,包括:
对比files_old.dat和files.dat,按照以下规则删除数字电视接收终端存储的PVOD内容文件:
a)files_old.dat中有、但files.dat中没有描述的PVOD内容文件;
b)files_old.dat与files.dat都有,但大小、和/或,创建时间不相同的PVOD内容文件。
进一步地,为了预留后续PVOD内容文件充足的存储空间,还可以进一步按照以下规则删除数字电视接收终端存储的PVOD内容文件:
c)在files.dat中没有描述的其他PVOD内容文件,但文件扩展名为.dwn与.sta的PVOD内容文件要特别处理,其中.dwn为未完成推送的PVOD内容文件的文件扩展名,.sta为未完成推送的PVOD内容文件所对应状态文件的文件扩展名,如a.ts.dwn应当作a.ts处理,以避免将下载了半截的PVOD内容文件删除,又如a.ts.sta应当作a.ts处理,以避免将下载了半截的状态文件删除了。以及删除当前存储的PVOD描述文件中存在描述、但大小或创建修改时间与当前存储的PVOD描述文件中描述不一致的PVOD内容文件。这样就支持了上一次未下载完成的PVOD内容文件在下次继续接收,完成断点接收功能。
步骤405,根据接收的PVOD描述文件(files.dat)的描述,创建接收的PVOD描述文件(files.dat)中有描述,但与数字电视接收终端相连的存储设备中不存在的PVOD内容文件以及需要更新的PVOD内容文件。
步骤406,删除存储的更改了PVOD描述文件名称的PVOD描述文件(files_old.dat)。
本步骤中,如果没有存储上一轮PVOD描述文件(files_old.dat),则不作处理。
步骤407,记录此次PVOD数据的版本信息、PVOD内容文件总数目及已经推送完成的内容文件数目,即步骤404中利用遍历方式时,与files.dat中描述一致的PVOD内容文件数目,便于信息统计和监控内容数据的更新。
至此,数字电视接收终端对接收的PVOD描述文件进行处理的流程结束。
后续中,数字电视接收终端接收并解析PVOD内容文件中的内容数据并保存在预先分配的文件空间中。
实际应用中,如果在执行接收PVOD内容文件时,发现数字电视接收终相连的存储设备中既有file.dat,又有files_old.dat,则说明在前一轮次推送中的步骤403前出错(如断电),PVOD描述文件的处理过程未完成.此时应该将后续接收的PVOD描述文件存为file.dat,再从步骤404开始执行;如果数字电视接收终相连的存储设备中只有files_old.dat,没有files.dat,由于无法进行PVOD内容文件的信息比较,此时应该删除所有的PVOD内容文件,接收新的PVOD描述文件,保存为files.dat,再从步骤404开始执行.
上述数字电视接收终端接收并解析PVOD内容文件中的内容数据并保存在预先分配的文件空间中的具体实现流程如图5所示。
图5为本发明实施例中数字电视接收终端接收PVOD内容文件中的数据包的流程示意图。参见图5,预先解析PVOD描述文件得到待接收的内容文件总个数(记为n Total),例如,从前述步骤407中获取,该流程包括:
步骤501:接收包含PVOD内容文件的PVOD数据包,进行PVOD数据包回调处理,执行步骤502。
本步骤中,对PVOD内容文件进行封装形成PVOD数据包,进行PVOD数据包回调处理为现有技术,可参见相关技术文献,在此不再赘述。
本步骤中,数字电视接收终每次开始接收服务器端推送的数据前,必须先接收到PVOD描述文件中的描述数据,然后才开始接收PVOD内容文件中的内容数据。
步骤502,对接收的PVOD数据包进行校验,如果校验正确,执行步骤503,否则执行步骤501。
本步骤中,对接收的PVOD数据包进行校验的流程也为现有技术。
步骤503,解析PVOD数据包中封装的PVOD内容文件名称、路径、和PVOD数据版本信息,判断该PVOD数据版本是否已被更新,如果已更新,则接收新的PVOD描述文件,并解析得到待接收的PVOD内容文件个数和版本信息,执行步骤501;如果PVOD数据版本未更新,执行步骤504。
步骤504,判断数字电视接收终相连的存储设备中是否存在与该PVOD内容文件名称相同的PVOD内容文件,如果是,说明该PVOD内容文件已完成接收,执行步骤518,否则执行步骤505。
步骤505,判断推送状态文件(xxx.ts.sta)是否存在,如果存在,执行步骤507,如果不存在,执行步骤506。
本步骤中,数字电视接收终端判断相连存储设备中是否已存在根据接收的PVOD描述文件创建的空文件,如果是,获取对应该接收的PVOD内容文件的状态文件,并进一步通过状态文件中的记载判断出当前接收的PVOD内容文件中的内容数据没有保存过时,将从当前收的PVOD内容文件中解析出的内容数据存储到该空文件中,并更新状态文件中的记载。
步骤506,创建新的推送状态文件,执行步骤507。
本步骤中,数字电视接收终端判断相连存储设备中是否已存在根据接收的PVOD描述文件创建的空文件,如果不是,继续执行建立具有PVOD内容文件名称的空文件,并建立对应的状态文件,然后将从当前接收的PVOD内容文件中解析出的内容数据存储到该空文件中,并更新状态文件中的记载。
步骤507,判断临时推送文件(例如,xxx.ts.dwn)是否存在,如果存在,执行步骤509,如果不存在,执行步骤508。
步骤508,创建新的临时推送文件,执行步骤510。
步骤509,判断临时推送文件.dwn中对应数据是否已存储,如果已存储,执行步骤512;如果未存储,执行步骤510.
步骤510,将相应PVOD内容文件的内容数据写入预先分配的临时推送文件存储空间。
步骤511,更新推送状态文件(.sta)的状态。
本步骤中,对于某个PVOD内容文件(例如,xxx.ts),推送时,其中已经推送的文件片段信息记录在同目录的推送状态文件(例如,xxx.ts.sta)中。
步骤512,判断该PVOD内容文件是否已接收完毕,如果没有,返回执行步骤501;如果已接收完毕,执行步骤513。
本步骤中,比较已存片段数与片段总数,如果相等,则表示接收完毕。
步骤513,校验接收的PVOD内容文件是否正确,如果接收正确,执行步骤515;否则,执行步骤514。
步骤514,删除推送状态文件xxx.ts.sta和临时推送文件(xxx.ts.dwn),执行步骤501;
步骤515,将临时推送文件更名为推送文件,执行步骤516;
本步骤中,可将PVOD内容文件的.dwn的后缀去掉,例如,将临时推送文件xxx.ts.dwn更名为推送文件xxx.ts.。
步骤516,删除推送状态文件xxx.ts.sta,执行步骤517;
步骤517,将接收的内容文件总个数n Total减一,执行步骤518;
步骤518,判断n Total是否等于零,如果是,执行步骤519;否则,返回执行步骤501。
步骤519,PVOD内容文件中的内容数据接收完毕。
至此,结束接收PVOD内容文件中的内容数据并保存在设备中的流程。
图6为本发明实施例PVOD内容文件与推送状态文件(.sta)的对应关系示意图,参见图6,包括PVOD内容文件和推送状态文件(.sta),其中,
PVOD内容文件,包含若干个文件片断(片段(offset)0、片段1、片段2、……、片段n),除最后一个片断外,其余片断均按照PVOD数据包中实际数据长度阀值进行划分(例如:60KB);
推送状态文件.sta,包含片段总数、已存片段数以及推送标识区,
推送标识区,包含与PVOD内容文件片段总数对应的推送标识分区,每个推送标识分区包含一个字节,对应一个PVOD内容文件的一个片段(60KB的片段数据),如果推送标识区中第n个推送标识分区的字节为0,则表示还未接收对应PVOD内容文件的第n个片段数据,如果推送标识区中第k个推送标识分区的字节为1,则表示已完成接收对应PVOD内容文件的第k个片段数据。
这样,可以计算出一个PVOD内容文件所需的推送状态文件.sta大小,计算公式为:(PVOD内容文件大小+60KB-1B)/60KB,例如,对于一个大小为2GB的PVOD内容文件来说,所需的推送状态文件.sta大小约为34.6KB。
实际应用中,步骤509至步骤512中,具体来说,数字电视接收终端接收到PVOD数据包时,判断存储的对应的PVOD内容文件是否存在.dwn后缀,如果存在,表示还未完成推送,则:
继续接收PVOD数据包,访问推送状态文件.sta,如果相应PVOD内容文件对应的片段还未进行存储,则存储对应的片段,并将推送状态文件.sta中的相应推送标识分区的字节数据设置为1,同时更新已存片段数(加1)。
基于上述方法,本发明还提出了一种推送视频及数据内容的系统。
图7为本发明推送视频及数据内容的系统结构示意图,参见图7,该系统包括:服务器端设备和数字电视接收终端设备,其中,
服务器端设备,将描述待推送PVOD内容文件中的描述信息封装为PVOD描述文件并输出,将待推送PVOD内容文件输出;
本实施例中,可以在PVOD描述文件中携带PVOD内容文件大小以及PVOD数据包中实际数据长度阀值。
数字电视接收终端设备,对接收到的PVOD描述文件进行处理,删除需要删除和需要更新的PVOD内容文件,获取并创建未推送的以及需要更新的PVOD内容文件,并分配相应的存储空间;接收PVOD内容文件,利用创建的未推送的以及需要更新的PVOD内容文件从接收的PVOD内容文件数据包中解析内容数据并保存到与数字电视接收终端相连存储设备。
本实施例中,数字电视接收终端设备接收PVOD描述文件,判断是否存储有上一轮PVOD描述文件,如果是,匹配目前接收的PVOD描述文件以及已存储的上一轮PVOD描述文件,创建上一轮PVOD描述文件中未推送的PVOD内容文件名称以及需要更新的PVOD内容文件名称并分配相应的存储空间,如果数字电视接收终端没有存储上一轮PVOD描述文件,根据接收的PVOD描述文件创建未推送的PVOD内容文件并分配相应的存储空间;接收PVOD内容文件,利用创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件从接收的PVOD内容文件中解析对应PVOD内容文件的内容数据并保存到与数字电视接收终端相连存储设备创建的相应PVOD内容文件中。
如前所述,如果数字电视接收终端设备预先创建的未推送的以及需要更新的PVOD内容文件是根据PVOD数据包中实际数据长度阀值进行的,则:
数字电视接收终端设备,对接收到的PVOD描述文件进行处理,删除需要删除和需要更新的PVOD内容文件,获取并创建PVOD内容文件大小超过PVOD数据包中实际数据长度阀值的未推送的以及需要更新的PVOD内容文件,并分配相应的存储空间;接收PVOD内容文件,如果未推送以及需要更新的PVOD内容文件大小超过PVOD数据包中实际数据长度阀值,利用创建的未推送的及需要更新的PVOD内容文件从接收的PVOD内容文件中解析内容数据并保存到与数字电视接收终端相连存储设备,对PVOD内容文件大小未超过PVOD数据包中实际数据长度阀值的未推送以及需要更新的PVOD内容文件,从接收的PVOD内容文件中解析内容数据,创建相应的PVOD内容文件并保存到与数字电视接收终端相连的存储设备.也就是说,本实施例中,数字电视接收终端设备接收PVOD描述文件,判断是否存储有上一轮PVOD描述文件,如果是,匹配目前接收的PVOD描述文件以及已存储的上一轮PVOD描述文件,创建上一轮PVOD描述文件中未推送的PVOD内容文件名称以及需要更新的PVOD内容文件名称并分配相应的存储空间,如果数字电视接收终端没有存储上一轮PVOD描述文件,根据接收的PVOD描述文件创建未推送的PVOD内容文件并分配相应的存储空间,所述未推送的PVOD内容文件以及需要更新的PVOD内容文件大小超过PVOD数据包中实际数据长度阀值;接收PVOD内容文件,如果PVOD内容文件大小超过所述PVOD数据包中实际数据长度阀值,利用创建的未推送的以及需要更新的PVOD内容文件从接收的PVOD内容文件中解析对应PVOD内容文件的内容数据并保存到与数字电视接收终端相连的存储设备中已创建的相应PVOD内容文件中,如果PVOD内容文件大小未超过所述PVOD数据包中实际数据长度阀值,从接收的PVOD内容文件数据中解析内容数据,直接在数字电视接收终端相连的存储设备上创建相应PVOD内容文件并保存到与数字电视接收终端相连的存储设备.
与方法中已提到的内容相同,系统中的待推送PVOD文件包括PVOD描述文件和PVOD内容文件,待推送PVOD描述文件中的描述信息为对服务器端所有PVOD内容文件的概况进行描述的描述数据。
基于图7,本发明还提出了一种推送视频及数据内容的服务器端设备以及数字电视接收终端设备。
图8为本发明推送视频及数据内容的服务器端设备结构示意图,参见图8,该服务器端设备包括:PVOD描述文件处理模块、PVOD内容文件处理模块和输出模块,其中,
PVOD描述文件处理模块,遍历所有PVOD内容文件生成一个描述PVOD内容文件概要信息的PVOD描述文件,输出至输出模块;
PVOD内容文件处理模块,将所述PVOD内容文件中的内容数据封装为PVOD内容文件,输出至输出模块;
输出模块,按照设置的策略,将接收的PVOD描述文件输出,将接收的PVOD内容文件输出。
本实施例中,输出模块按照设置好的PVOD描述文件和PVOD内容文件数据包在同一个播发资源中互斥循环输出,每隔一段间隔在PVOD内容文件数据包的输出中插入一次PVOD描述文件输出的播出策略,将接收的PVOD描述文件和接收的PVOD内容文件进行传输打包后输出。
与方法中已提到的内容相同,PVOD描述文件至少包括:PVOD数据包中实际数据长度阀值、各PVOD内容文件名称、路径、大小、以及创建日期等。
图9为本发明推送视频及数据内容的数字电视接收终端设备结构示意图,参见图9,该数字电视接收终端设备包括:接收模块、处理选择模块、PVOD描述文件处理模块、PVOD内容文件处理模块以及存储模块,其中,
接收模块,接收PVOD描述文件和PVOD内容文件,输出至处理选择模块;
处理选择模块,用于判断接收的为PVOD描述文件时,输出至PVOD描述文件处理模块;判断接收的为PVOD内容文件时,输出至PVOD内容文件处理模块;
PVOD描述文件处理模块,对接收到的PVOD描述文件进行处理,删除需要删除和需要更新的PVOD内容文件,获取未推送的PVOD内容文件以及需要更新的PVOD内容文件,通知存储模块创建未推送的以及需要更新的PVOD内容文件并分配相应的存储空间,并将接收到的PVOD描述文件发送至存储模块;
PVOD内容文件处理模块;接收PVOD内容文件,从接收的PVOD内容文件数据包中获取与存储模块创建的未推送的以及需要更新的的PVOD内容文件,输出至存储模块;
存储模块,接收PVOD描述文件处理模块发送的通知,创建未推送的文件以及需要更新的PVOD内容文件,并在创建完成后存储PVOD描述文件,接收PVOD内容文件处理模块输出的PVOD内容文件,对未推送的以及需要更新的PVOD内容文件存储至相应的已创建的未推送PVOD内容文件或需要更新的PVOD内容文件中.
本实施例中,PVOD内容文件处理模块如果确定PVOD内容文件没有超过需要创建的PVOD内容文件的文件大小阀值,可不为该PVOD内容文件创建空文件,接收直接创建并存储接收的该PVOD内容文件中的内容数据,与现有技术处理流程相同,在此不再赘述。
本实施例中,PVOD描述文件处理模块进一步用于在通知存储模块创建未推送的以及需要更新的PVOD内容文件并分配相应的存储空间时,通知存储模块创建相应的状态文件;
PVOD内容文件处理模块,在确定从接收的PVOD内容文件中获取与存储模块创建的未推送的以及需要更新的PVOD内容文件相对应的PVOD内容文件后,向存储模块输出更新相应状态文件的指示,在确定PVOD内容文件已完成接收的时候向存储模块输出删除相应状态文件的指示;
存储模块根据接收的指示更新相应状态文件或删除相应状态文件。
较佳地,存储模块为与数字电视接收终端设备相连的U盘、USB硬盘、数字电视接收终端内部硬盘、同步动态随机接入存储器或闪存。
上述数字电视接收终端设备还可以进一步包括:PVOD内容文件更新模块,
PVOD内容文件更新模块,接收来自处理选择模块的PVOD描述文件,遍历存储模块中已存储的PVOD内容文件,删除存储目录下所有PVOD内容文件和文件目录。
上述存储模块进一步存储有上一轮PVOD描述文件,数字电视接收终端设备进一步包括:PVOD内容文件更新模块,
PVOD内容文件更新模块,接收来自选择处理模块的PVOD描述文件,,遍历存储模块中已存储的PVOD内容文件,删除上一轮接收的PVOD描述文件中不存在描述的已存储的PVOD内容文件,删除上一轮接收的PVOD描述文件中不存在描述的已存储的PVOD内容文件,及删除上一轮PVOD描述文件中存在描述、但大小或创建修改时间与当前接收的PVOD描述文件中描述不一致的已存储的PVOD内容文件;比较当前接收的描述文件和存储的上一轮PVOD描述文件,删除已存储的PVOD描述文件中存在描述但当前接收的PVOD描述文件中不存在描述的已存储的PVOD内容文件,并删除已存储的PVOD描述文件中和接收的PVOD描述文件中均存在描述、但描述大小或文件的日期时间属性不一致的已存储的PVOD内容文件。
所应说明的是,本发明提供的系统、服务端设备以及数字电视接收终端设备按照本发明提供的方法执行操作,具体的执行顺序及步骤这里不再赘述,本发明的数字电视接收终端包括但不限于:机顶盒、数字电视一体机、电视手机等具有接收数字电视功能的终端。
综上所述,以上仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (18)
1.一种推送视频及数据内容的方法,其特征在于,该方法包括:
服务器端为待播发的推送视频点播PVOD内容文件创建对应的PVOD描述文件,所述PVOD描述文件包含该PVOD内容文件的描述信息;
服务器端循环播发输出PVOD描述文件和PVOD内容文件;
数字电视接收终端接收PVOD描述文件并进行处理,在处理过程中判断是否存储有上一轮PVOD描述文件,如果是,匹配目前接收的PVOD描述文件以及已存储的上一轮PVOD描述文件,创建上一轮PVOD描述文件中未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间,如果数字电视接收终端没有存储上一轮PVOD描述文件,根据接收的PVOD描述文件创建所有未推送的PVOD内容文件并分配相应的存储空间;
数字电视接收终端接收PVOD内容文件,根据创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件从接收的PVOD内容文件中解析对应PVOD内容文件的数据包并保存到已创建的相应PVOD内容文件中。
2.如权利要求1所述的方法,其特征在于,所述服务器端为待播发的推送视频点播PVOD内容文件创建对应的PVOD描述文件包括:
服务器端获取所有需要推送的PVOD内容文件的描述信息,按照获取的PVOD内容文件在数字电视接收终端的存储结构组织PVOD内容文件的描述信息,将描述PVOD内容文件的概要信息的描述信息封装为PVOD描述文件。
3.如权利要求2所述的方法,其特征在于,所述PVOD描述文件中的描述信息包括:各PVOD内容文件名称、数字电视接收终端存储的相对路径、文件大小、文件的日期时间属性以及所有的PVOD数据包中实际数据长度阀值。
4.如权利要求3所述的方法,其特征在于,所述服务器端输出PVOD内容文件包括:服务器端按照PVOD描述文件中的PVOD数据包中实际数据长度阀值和PVOD内容文件大小将各具体PVOD内容文件封装为PVOD数据包后再进行数据的传输打包,然后输出。
5.如权利要求1所述的方法,其特征在于,所述根据接收的PVOD描述文件创建所有未推送的PVOD内容文件并分配相应的存储空间的步骤进一步包括:
删除数字电视接收终上的存储设备上存储PVOD内容文件的根目录下的所有文件和目录。
6.如权利要求1所述的方法,其特征在于,所述创建上一轮PVOD描述文件中未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间的步骤进一步包括:
更改存储的PVOD描述文件名称;
将接收的PVOD描述文件保存为当前PVOD描述文件;
比较当前存储的PVOD描述文件和更名的PVOD描述文件,在数字电视接收终存储设备的PVOD内容文件存储目录中,删除更名的PVOD描述文件中不存在描述的PVOD内容文件,并删除更名的PVOD描述文件中存在描述但当前存储的PVOD描述文件中不存在描述的PVOD内容文件,并删除更名的PVOD描述文件中和当前存储的PVOD描述文件中均存在描述、但描述大小或文件日期时间不一致的PVOD内容文件。
7.如权利要求6所述的方法,其特征在于,所述方法进一步包括:
遍历数字电视接收终存储设备中已存储的PVOD内容文件,删除当前存储的PVOD描述文件中不存在描述的PVOD内容文件,及删除当前存储的PVOD描述文件中存在描述、但大小或文件的日期时间属性与当前存储的PVOD描述文件中描述不一致的PVOD内容文件.
8.如权利要求1所述的方法,其特征在于,所述创建未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间包括:
根据接收的PVOD描述文件中的描述,创建内容为空的接收的PVOD描述文件中有描述但数字电视接收终存储设备中PVOD内容文件存储目录不存在的PVOD内容文件以及需要更新的PVOD内容文件的空文件并分配大小,并创建对应该文件的状态文件。
9.如权利要求1所述的方法,其特征在于,所述利用创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件从接收的PVOD内容文件中解析对应PVOD内容文件的内容数据并保存到数字电视接收终端存储设备包括:
判断数字电视接收终存储设备中是否已存在根据接收的PVOD描述文件描述的PVOD内容文件的完整接收文件,如存在即停止接收该PVOD内容文件的保存,并判断根据接收的PVOD描述文件的描述的PVOD内容文件是否已全部接收,如已完成接收则结束整个接收过程,否则继续接收PVOD内容文件的过程;
在上一步的判断中如不存在已完成接收的PVOD内容文件,则判断数字电视接收终存储设备中是否已存在根据接收的PVOD描述文件创建的PVOD内容文件的空文件或未接收完成的PVOD内容文件,如果不是,继续执行建立具有PVOD内容文件名称的空文件,并建立对应的状态文件,然后将从当前接收的PVOD内容文件中解析出的内容数据存储到该空文件中,该空文件成为未接收完成的PVOD内容文件,并更新状态文件中的记载;
否则获取对应该接收的PVOD内容文件的状态文件,并进一步通过状态文件中的记载判断出当前接收的PVOD内容文件中的内容数据没有保存过,如未保存,则将从当前接收的PVOD内容文件数据包中解析出的内容数据存储到该空文件中,并更新状态文件中对该接收的PVOD内容文件中的内容数据的记载;如已保存则放弃该次PVOD内容文件的保存,继续PVOD内容文件的接收过程。
10.如权利要求9所述的方法,其特征在于,进一步包括:
记录当前接收的PVOD内容文件中的内容数据的版本信息、PVOD内容文件总数目及已经推送完成的内容文件数目;
在确定该PVOD数据版本没有被更新、与数字电视接收终相连的存储设备中存在与该PVOD内容文件名称相同的PVOD内容文件、临时推送文件已存在后,判断该PVOD内容文件是否已接收完毕,如果没有,继续执行接收包含PVOD内容文件的PVOD数据包的步骤。
11.如权利要求10所述的方法,其特征在于,所述推送文件包括:片段总数、已存片段数以及推送标识区,
推送标识区,包含与PVOD内容文件片段总数对应的推送标识分区,每个推送标识分区包含一个字节,对应一个PVOD内容文件的一个片段,并设置第n个推送标识分区的字节为0表示还未接收对应PVOD内容文件的第n个片段数据;
所述判断该PVOD内容文件是否已接收完毕,如果没有,继续执行接收包含PVOD内容文件的PVOD数据包的步骤包括:数字电视接收终端判断存储的对应的PVOD内容文件是否存在临时推送文件后缀,如果存在,继续接收PVOD数据包,访问推送状态文件,如果相应PVOD内容文件对应的片段还未进行存储,则存储对应的片段,并将推送状态文件中的相应推送标识分区的字节数据设置为1,同时更新已存片段数。
12.一种推送视频及数据内容的系统,其特征在于,该系统包括:服务器端设备和数字电视接收终端设备,其中,
服务器端设备,将描述待推送视频点播PVOD内容文件中的描述信息封装为PVOD描述文件并输出,且将待推送PVOD内容文件输出;
数字电视接收终端设备,接收PVOD描述文件并进行处理,判断是否存储有上一轮PVOD描述文件,如果是,匹配目前接收的PVOD描述文件以及已存储的上一轮PVOD描述文件,创建上一轮PVOD描述文件中未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间,如果数字电视接收终端没有存储上一轮PVOD描述文件,根据接收的PVOD描述文件创建未推送的PVOD内容文件并分配相应的存储空间;利用创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件从接收的PVOD内容文件数据包中解析对应PVOD内容文件的内容数据并保存到与数字电视接收终相连存储设备创建的相应PVOD内容文件中。
13.如权利要求12所述的系统,其特征在于,所述PVOD描述文件的内容为所述对服务器端所有推送的PVOD内容文件的概况进行描述的描述数据。
14.一种推送视频及数据内容的服务器端设备,其特征在于,该服务器端设备包括:推送视频点播PVOD描述文件处理模块、PVOD内容文件处理模块和输出模块,其中:
PVOD描述文件处理模块,遍历所有需要推送的PVOD内容文件生成一个描述所有PVOD内容文件概要信息的PVOD描述文件,输出至输出模块;
PVOD内容文件处理模块,将所述PVOD内容文件中的内容数据封装为PVOD内容文件数据包,输出至输出模块;
输出模块,按照设置好的PVOD描述文件和PVOD内容文件数据包在同一个播发资源中互斥循环输出,每隔一段间隔在PVOD内容文件数据包的输出中插入一次PVOD描述文件输出的播出策略,将接收的PVOD描述文件和接收的PVOD内容文件进行传输打包后输出。
15.一种接收推送视频及数据内容的数字电视接收终端设备,其特征在于,该数字电视接收终端设备包括:接收模块、处理选择模块、PVOD描述文件处理模块、PVOD内容文件处理模块以及存储模块;其中,
接收模块,接收被打包好的PVOD描述文件和PVOD内容文件数据包,输出至处理选择模块;
处理选择模块,用于判断接收的为PVOD描述文件时,输出至PVOD描述文件处理模块;判断接收的为PVOD内容文件数据包时,输出至PVOD内容文件处理模块;
PVOD描述文件处理模块,对接收到的PVOD描述文件进行处理,获取未推送的PVOD内容文件以及需要更新的PVOD内容文件,通知存储模块创建所述未推送的PVOD内容文件以及需要更新的PVOD内容文件,并分配相应的存储空间,并将接收到的PVOD描述文件发送至存储模块;
PVOD内容文件处理模块;接收PVOD内容文件,从接收的PVOD内容文件数据包中获取与存储模块创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件相对应的PVOD内容文件,输出至存储模块已创建的相应PVOD内容文件中;
存储模块,接收PVOD描述文件处理模块发送的通知,创建未推送的PVOD内容文件以及需要更新的PVOD内容文件,并在创建完成后存储PVOD描述文件,接收PVOD内容文件处理模块输出的PVOD内容文件,将未推送的PVOD内容文件以及需要更新的PVOD内容文件存储至相应的已创建的未推送PVOD内容文件或需要更新的PVOD内容文件中.
16.如权利要求15所述的数字电视接收终端设备,其特征在于,所述PVOD描述文件处理模块进一步用于在通知存储模块创建未推送的PVOD内容文件以及需要更新的PVOD内容文件并分配相应的存储空间时,通知存储模块创建相应的状态文件;所述PVOD内容文件处理模块进一步用于在输出未推送的PVOD内容文件以及需要更新的PVOD内容文件至存储模块已创建的相应PVOD内容文件中时,通知存储模块更新相应的状态文件;
PVOD内容文件处理模块,在确定从接收的PVOD内容文件中获取与存储模块创建的未推送的PVOD内容文件以及需要更新的PVOD内容文件相对应的PVOD内容文件已完成接收后,向存储模块输出删除相应状态文件的指示;
存储模块根据接收的指示删除相应状态文件。
17.如权利要求15所述的数字电视接收终端设备,其特征在于,进一步包括:PVOD内容文件更新模块,接收来自处理选择模块的PVOD描述文件,删除存储目录下所有PVOD内容文件和文件目录。
18.如权利要求15所述的数字电视接收终端设备,其特征在于,所述存储模块进一步存储有上一轮PVOD描述文件;
所述数字电视接收终端设备进一步包括:PVOD内容文件更新模块,接收来自处理选择模块的PVOD描述文件,遍历存储模块中已存储的PVOD内容文件,删除上一轮接收的PVOD描述文件中不存在描述的已存储的PVOD内容文件,及删除上一轮PVOD描述文件中存在描述、但大小或创建修改时间与当前接收的PVOD描述文件中描述不一致的已存储的PVOD内容文件;比较当前接收的描述文件和存储的上一轮PVOD描述文件,删除已存储的PVOD描述文件中存在描述但当前接收的PVOD描述文件中不存在描述的已存储的PVOD内容文件,并删除已存储的PVOD描述文件中和接收的PVOD描述文件中均存在描述、但描述大小或创建修改时间不一致的已存储的PVOD内容文件。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102539665A CN101707697B (zh) | 2009-12-09 | 2009-12-09 | 一种推送视频及数据内容的方法、系统及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2009102539665A CN101707697B (zh) | 2009-12-09 | 2009-12-09 | 一种推送视频及数据内容的方法、系统及设备 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101707697A true CN101707697A (zh) | 2010-05-12 |
CN101707697B CN101707697B (zh) | 2011-09-28 |
Family
ID=42377877
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2009102539665A Active CN101707697B (zh) | 2009-12-09 | 2009-12-09 | 一种推送视频及数据内容的方法、系统及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101707697B (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102158758A (zh) * | 2011-02-28 | 2011-08-17 | 四川长虹电器股份有限公司 | 基于数字电视的推播系统实现方法 |
CN104639973A (zh) * | 2015-02-27 | 2015-05-20 | 北京奇艺世纪科技有限公司 | 一种信息推送方法及装置 |
CN106231354A (zh) * | 2016-07-28 | 2016-12-14 | 青岛海信传媒网络技术有限公司 | 节目聚合方法及装置 |
CN110177345A (zh) * | 2019-05-31 | 2019-08-27 | 东北大学 | 一种用于无蜂窝网络信号区域的文件传输、聊天系统及方法 |
CN110971942A (zh) * | 2018-09-28 | 2020-04-07 | 杭州海康威视数字技术股份有限公司 | 数据传输方法和装置 |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104702616A (zh) * | 2015-03-20 | 2015-06-10 | 浪潮集团有限公司 | 一种cs架构监测数据保存及传输实现方法 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7644103B2 (en) * | 2005-01-25 | 2010-01-05 | Microsoft Corporation | MediaDescription data structures for carrying descriptive content metadata and content acquisition data in multimedia systems |
CN101102466A (zh) * | 2006-07-03 | 2008-01-09 | 长江计算机(集团)公司 | 一种应用于宽带数字电视的频道点播方法 |
CN101072340B (zh) * | 2007-06-25 | 2012-07-18 | 孟智平 | 流媒体中加入广告信息的方法与系统 |
CN101252401B (zh) * | 2008-02-27 | 2011-06-15 | 华为技术有限公司 | 下载节目数据的方法、系统和终端设备 |
-
2009
- 2009-12-09 CN CN2009102539665A patent/CN101707697B/zh active Active
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102158758A (zh) * | 2011-02-28 | 2011-08-17 | 四川长虹电器股份有限公司 | 基于数字电视的推播系统实现方法 |
CN102158758B (zh) * | 2011-02-28 | 2013-08-07 | 四川长虹电器股份有限公司 | 基于数字电视的推播系统实现方法 |
CN104639973A (zh) * | 2015-02-27 | 2015-05-20 | 北京奇艺世纪科技有限公司 | 一种信息推送方法及装置 |
CN104639973B (zh) * | 2015-02-27 | 2020-11-27 | 北京奇艺世纪科技有限公司 | 一种信息推送方法及装置 |
CN106231354A (zh) * | 2016-07-28 | 2016-12-14 | 青岛海信传媒网络技术有限公司 | 节目聚合方法及装置 |
CN110971942A (zh) * | 2018-09-28 | 2020-04-07 | 杭州海康威视数字技术股份有限公司 | 数据传输方法和装置 |
CN110971942B (zh) * | 2018-09-28 | 2021-08-17 | 杭州海康威视数字技术股份有限公司 | 数据传输方法和装置 |
US11589101B2 (en) | 2018-09-28 | 2023-02-21 | Hangzhou Hikvision Digital Technology Co., Ltd. | Data transmission method and apparatus |
CN110177345A (zh) * | 2019-05-31 | 2019-08-27 | 东北大学 | 一种用于无蜂窝网络信号区域的文件传输、聊天系统及方法 |
Also Published As
Publication number | Publication date |
---|---|
CN101707697B (zh) | 2011-09-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101707697B (zh) | 一种推送视频及数据内容的方法、系统及设备 | |
US9451293B2 (en) | Apparatus and method for decoding a segment of an audiovisual stream | |
CN101668198B (zh) | 一种推送视频及数据内容实现本地点播的方法及系统 | |
US6966065B1 (en) | Data transmission control method, data transmitting method, data transmitting apparatus, and receiving apparatus | |
CN102231860B (zh) | 一种直播时移数据存储方法 | |
CN101222616B (zh) | 点播服务中的mpeg传送流的传输处理方法 | |
CN101800842B (zh) | 机顶盒软件升级方法 | |
US20140280784A1 (en) | File Transfer Based Upon Streaming Format | |
CN101789975A (zh) | 用于推送视频点播业务的下载内容的方法及系统 | |
RU2304855C2 (ru) | Запись интерактивных приложений | |
CN101477575A (zh) | 一种多媒体信息存储和播放方法及其装置 | |
CN104079983A (zh) | 一种hls节目录制和服务的系统和方法 | |
US8261312B2 (en) | Linear hint video streaming | |
CN101217553A (zh) | 一种媒体流的随机访问处理方法 | |
CN101984619A (zh) | 一种流媒体业务的实现方法及系统 | |
CN100578980C (zh) | 一种移动多媒体广播系统的文件接收方法 | |
US9794316B2 (en) | Method and system for content management | |
Zhang et al. | Design and implementation of broadcast file system based on DSM-CC data carousel protocol | |
US8316149B2 (en) | Information communication system, server, content holding device, content receiving device, information processing method, and program | |
JP2006033812A (ja) | 補助プログラムを管理する方法及び対応する受信器とシステム | |
US11159833B2 (en) | Buffer management for storing files of a received packet stream | |
JP6543819B2 (ja) | 処理装置およびプログラム | |
CN115048541A (zh) | 多媒体文件的获取方法、装置、设备及介质 | |
EP2357824A1 (en) | Content distribution method and content reception device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |