CN102789804A - 视频播放方法、播放器、监控平台及视频播放系统 - Google Patents
视频播放方法、播放器、监控平台及视频播放系统 Download PDFInfo
- Publication number
- CN102789804A CN102789804A CN201110127232XA CN201110127232A CN102789804A CN 102789804 A CN102789804 A CN 102789804A CN 201110127232X A CN201110127232X A CN 201110127232XA CN 201110127232 A CN201110127232 A CN 201110127232A CN 102789804 A CN102789804 A CN 102789804A
- Authority
- CN
- China
- Prior art keywords
- frame
- video data
- video
- request
- data frame
- 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
Landscapes
- Television Signal Processing For Recording (AREA)
- Television Systems (AREA)
Abstract
本发明实施例公开了一种视频播放方法、播放器、监控平台及视频播放系统,用于解决现有视频回放方案对连续多针图像进行对比分析时操作复杂的问题。本发明实施例方法包括:播放器向监控平台发送多画面逐帧播放视频的请求,接收监控平台返回的媒体包并组帧,该媒体包中包含多画面逐帧播放视频的请求中所请求播放的视频数据,将组帧生成的视频数据帧按照帧序号从小到大的顺序解码图像,将解码后的每帧图像在预划分的每个子画面上显示。
Description
技术领域
本发明涉及网络通信技术领域,尤其涉及一种视频播放方法、播放器、监控平台及视频播放系统。
背景技术
网络视频监控系统以数字信号处理为基础,采用网络化的方式实现信号的传输、交换、控制、录像存储以及回放,并通过设立强大的中心业务平台,实现对系统内所有编解码设备及录像存储设备的统一管理与集中控制,当监控区域出现异常事件,如刑事案件,监控人员进行调查、分析、取证过程中,经常需要对历史录像进行多帧图像比对分析,以便查找到事件线索。
在现有网络视频监控系统技术中,对录像进行多帧图像对比分析而进行视频回放时,打开多个播放器,在每个播放器上进行视频图像的逐帧播放,且每个播放器的播放的视频图像是同步的。
但在以上现有技术中,为实现在每个播放器上播放的视频图像同步,需要在多个播放器上进行人工定位同步,这种定位方式难以准确定位,且操作过程复杂,为操作者带来不便。
发明内容
本发明实施例提供了一种视频播放方法、播放器、监控平台及视频播放系统,用以在播放器上进行多帧视频图像播放。
本发明实施例提供的视频播放方法,包括:向监控平台发送多画面逐帧播放视频的请求;接收所述监控平台根据所述多画面逐帧播放视频的请求发送的媒体包,并将媒体包进行组帧,所述媒体包中包含所述多画面逐帧播放视频的请求中所请求播放的视频数据;将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码;将解码后的每帧图像在预划分的每个子画面上显示,其中,图像的帧序号与子画面的预置编号按照从小到大的顺序一一对应。
本发明实施例提供的视频播放方法,其特征在于,包括:接收播放器发送的多画面逐帧播放视频的请求,所述视频播放请求中携带请求播放的视频的参数;根据所述视频播放请求中携带的参数读取视频数据帧;将所读取的视频数据帧组成媒体包并向所述播放器发送。
本发明实施例提供的播放器,包括:发送单元,用于向监控平台发送多画面逐帧播放视频的请求;组帧单元,用于接收所述监控平台根据所述多画面逐帧播放视频的请求发送的媒体包,并将媒体包进行组帧,所述媒体包中包含所述多画面逐帧播放视频的请求中所请求播放的视频数据;解码单元,用于将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码;显示单元,用于将解码后的每帧图像在预划分的每个子画面上显示,其中,图像的帧序号与子画面的预置编号按照从小到大的顺序一一对应。
本发明实施例提供的监控平台,包括:接收单元,用于接收播放器发送的多画面逐帧播放视频的请求,所述视频播放请求中携带请求播放的视频的参数;读取单元,用于根据所述视频播放请求中携带的参数读取视频数据帧;组包单元,用于将所读取的视频数据帧组成媒体包;发送单元,用于将组包单元组成的媒体包向所述播放器发送。
本发明实施例提供的视频播放系统,包括:以上所述的播放器,以及以上所述的监控平台。
从以上技术方案可以看出,本发明实施例具有以下优点:播放器向监控平台发送多画面逐帧播放视频的请求,将监控平台反馈的媒体包进行组帧,该媒体包中包含所请求播放的视频数据,再将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码,而后将每帧图像在预划分每个子画面上显示,其中,图像的帧序号与子画面的预置编号按照从小到大的顺序一一对应,从而在播放器上实现多画面逐帧显示多个视频图像帧,不需要进行人工定位,进而在进行多帧图像比对分析时,在播放器上显示视频图像简便易操作。
附图说明
图1为本发明实施例中视频播放方法的一个实施例示意图;
图2为本发明实施例中视频播放方法的另一个实施例示意图;
图3为本发明实施例中视频播放方法的另一个实施例示意图;
图4为本发明实施例中视频播放方法的另一个实施例示意图;
图5为本发明实施例中视频播放方法的另一个实施例示意图;
图6为本发明实施例中视频播放方法的另一个实施例示意图;
图7为本发明实施例中视频播放方法的另一个实施例示意图;
图8为本发明实施例中播放器的一个实施例示意图;
图9为本发明实施例中监控平台的另一个实施例示意图;
图10为本发明实施例中视频播放系统的一个实施例示意图。
具体实施方式
本发明实施例提供了视频播放方法、播放器、监控平台及视频播放系统,用于解决现有视频回放方案存在的对连续多针图像进行对比分析时操作复杂,使用极不方便的问题。以下分别进行详细说明。
本发明实施例中涉及的主要网元包括播放器及监控平台,其中,播放器为客户端软件,可提供授权用户进行实时浏览、历史录像回放、下载功能,在本发明实施例中仅涉及其历史录像回放功能;监控平台可提供视频实时浏览、录像、历史录像回放、下载、告警等功能,在本发明实施例中仅涉及历史录像回放功能。
请参阅图1,本发明实施例中的视频播放方法包括:
101、播放器向监控平台发送多画面逐帧播放视频的请求;
用户通过播放器选择进行多画面逐帧播放视频,播放器向监控平台发送多画面逐帧播放视频的请求,携带参数可以包括:请求播放的视频文件标识、该视频的播放起始时间、请求播放的方式(多画面逐帧播放)、请求播放的子画面数量以及请求播放的视频数据的帧间隔的信息,以便监控平台侧参照以上参数进行视频数据的读取。
102、接收监控平台根据多画面逐帧播放视频的请求发送的媒体包,并将该媒体包进行组帧;
播放器将接收到的监控平台发送的媒体包进行组帧,该媒体包中包含步骤101中播放器向该监控平台发送的视频播放请求中所请求播放的视频数据。
具体的,监控平台以帧为单位发送视频数据,发送时可将每帧视频数据拆分成若干媒体包,播放器将接收到的监控平台发送的媒体包进行缓冲,当接收完毕一帧视频数据的所有媒体包,便将这些媒体包进行组帧,生成一帧视频数据帧,直至将请求播放的多个视频数据帧的所有媒体包全部组帧成视频数据帧,同时根据媒体包中携带帧序号字段生成相应的帧序号。
103、将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码;
将步骤102中组帧生成的视频数据帧,按照帧序号从小到大的顺序进行图像解码。
104、将解码后的每帧图像在预划分的每个子画面上显示。
本实施例中,根据用户播放请求,预先将播放器显示画面的区域划分成多个子画面,并对子画面进行编号,将步骤103中解码后的每帧图像在每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序,分别一一对应。假设在8个子画面上分别显示8帧图像,画面编号与图像帧序号均为1至8,则画面编号与图像帧序号的对应关系可参加下表:
子画面编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
图像帧序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
本发明实施例中,播放器向监控平台发送视频播放请求,收到该监控平台反馈的包含所请求的视频数据媒体包时,将接收到的媒体包进行组帧从而生成视频数据帧,然后将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码,在预划分的每个子画面上一一对应的显示解码后的图像,图像的帧序号与子画面的预置编号按照从小到大的顺序对应,这样可以多画面逐帧显示多个图像帧,不需人工设置,操作简便。
为便于理解,下面以另一实施例对本发明实施例中的视频播放方法进行详细描述,请参阅图2,本发明实施例中的视频播放方法的另一实施例包括:
201、若播放器播放当前视频数据帧的N帧相邻视频数据帧,则向监控平台发送相邻视频数据帧的播放请求;
当用户通过播放器进行多画面逐帧播放,若此时用户选择播放相邻视频数据帧,该相邻视频数据帧可以是相邻的上N帧,也可以是相邻的下N帧的视频数据帧,其中,N大于等于1,则播放器向监控平台发送请求播放相邻视频数据帧的播放请求,所携带的参数可参见图1所示实施例中步骤101中所描述的内容,此处不再赘述。
202、将接收到的监控平台发送的媒体包进行组帧;
播放器将接收到的监控平台发送的媒体包进行组帧,该媒体包中包含所请求播放的N帧相邻视频数据帧,具体内容可参见图1所示实施例中步骤102中所描述的内容,此处不再赘述。
203、根据请求播放的N帧相邻视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并将组帧生成的相邻视频数据帧存储至缓冲区中;
根据请求播放的N帧相邻视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并将组帧生成的相邻视频数据帧存储至缓冲区中,需要说明的是,该缓冲区可分为若干缓冲块区,并对缓冲块区进行编号。
具体可分为两种情况:
一、请求播放的N帧相邻视频数据帧是当前播放的视频数据帧的下N帧视频数据帧;
若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,则清除缓存区中的前N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区尾。
例如,假设在8个子画面上连续显示8帧图像帧,且帧间隔为1帧,当前播放的视频数据帧的序号为1~8,若请求播放的相邻数据帧是当前播放的视频数据帧的下一帧视频数据帧,则清除缓存区中第一帧视频数据,将组帧生成的一帧视频数据帧存储至缓冲区尾,则播放器缓存区中(具体到各缓冲块区中)存储视频帧的变化情况如下表所示:
缓冲块序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(存储前) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(存储后) | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
若请求播放的相邻数据帧是当前播放的视频数据帧的下3帧视频数据帧,则清除缓存区中前3帧视频数据,将组帧生成的3帧视频数据帧存储至缓冲区尾,则播放器缓存区中存储视频帧的变化情况如下表所示:
缓冲块序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(存储前) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(存储后) | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
当请求播放的相邻数据帧的帧数大于子画面的个数,例如,若请求播放的相邻数据帧是当前播放的视频数据帧的下11帧视频数据帧,则清除缓存区中8帧视频数据帧,将组帧生成的8帧视频数据帧存储至缓冲区尾,则播放器缓存区中存储视频帧的变化情况如下表所示:
缓冲块序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(存储前) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(存储后) | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
二、请求播放的N帧相邻视频数据帧是当前播放的视频数据帧的上N帧视频数据帧。
若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,则清除缓存区中的后N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区头。
例如,假设在8个子画面上分别显示8帧图像,且帧间隔为1帧,当前播放的视频数据帧的序号为13~21,若请求播放的相邻数据帧是当前播放的视频数据帧的上一帧视频数据帧,则清除缓存区中最后一帧视频数据,将组帧生成的一帧视频数据帧存储至缓冲区头,其帧序号为12,那么,播放器缓存区中(具体到各缓冲块区中)存储视频帧的变化情况如下表所示:
缓冲块序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(接收前) | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
帧序号(接收后) | 12 | 13 | 14 | 15 | 16 | 17 | 18 | 19 |
若请求播放的相邻数据帧是当前播放的视频数据帧的上3帧视频数据帧,则清除缓存区中后3帧视频数据,将组帧生成的3帧视频数据帧存储至缓冲区头,则播放器缓存区中存储视频帧的变化情况如下表所示:
缓冲块序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(接收前) | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
帧序号(接收后) | 10 | 11 | 12 | 13 | 14 | 15 | 16 | 17 |
当请求播放的相邻数据帧的帧数大于子画面的个数,例如,若请求播放的相邻数据帧是当前播放的视频数据帧的上10帧视频数据帧,则清除缓存区中8帧视频数据帧,将组帧生成的8帧视频数据帧存储至缓冲区尾,则播放器缓存区中存储视频帧的变化情况如下表所示:
缓冲块序号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(接收前) | 13 | 14 | 15 | 16 | 17 | 18 | 19 | 20 |
帧序号(接收后) | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
可以理解的是,用户可以任意选择播放当前正在播放的视频数据帧的相邻N帧数据帧,但当前已播放到视频文件的第一帧数据时,用户只能选择播放下N帧相邻数据帧,当前已播放到视频文件的最后一帧数据时,用户只能选择播放上N帧相邻数据帧。
204、将缓冲区中的视频数据帧按照帧序号从小到大的顺序进行图像解码;
将步骤203中存储相邻视频帧后的缓冲区内的所有视频数据帧,按照帧序号从小到大的顺序进行图像解码。
205、将解码后的每帧图像在预划分的每个子画面上显示。
根据用户播放请求,预先将播放器显示画面的区域划分成多个子画面,并对子画面的进行编号,将步骤204中解码后的每帧图像在每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序,分别一一对应。
例如,假设在8个子画面上连续显示8帧图像帧,且帧间隔为1帧,当前播放的视频数据帧的序号为3~10。
一、若请求播放的相邻数据帧是当前播放的视频数据帧的下一帧视频数据帧,则图像的帧序号与子画面的预置编号的对应关系的变化情况如下表所示:
子画面编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
图像帧序号(操作前) | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
图像帧序号(操作后) | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 |
二、若请求播放的相邻数据帧是当前播放的视频数据帧的上一帧视频数据帧,则图像的帧序号与子画面的预置编号的对应关系的变化情况如下表所示:
子画面编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
图像帧序号(操作前) | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
图像帧序号(操作后) | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
本发明实施中,用户可以选择播放当前的视频数据帧的相邻N帧视频数据,播放器根据用户的选择,向监控该平台发送请求播放相邻视频数据帧的播放请求,相邻数据帧可以是相邻的上N帧,也可以是相邻的下N帧的视频数据帧,N大于等于1,将接收到的监控平台发送的媒体包进行组帧,该媒体包中包含所请求播放的N帧相邻视频数据帧,根据请求播放的N帧相邻视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并将组帧生成的相邻视频数据帧存储至缓冲区中,然后将缓冲区中的全部视频数据帧,按照帧序号从小到大的顺序进行图像解码;将解码后的每帧图像在预划分的每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序分别一一对应,这样,当用户选择播放当前数据帧的相邻数据帧时,在播放器的子画面显示的各帧图像均同步地向前或向后移动N帧,操作简便易实现。
以上实施例中描述的是播放当前视频数据帧的相邻N帧视频数据帧的方法,下面对重新设置视频数据帧的帧间隔的方法进行说明。
请参阅图3,本发明实施例中的视频播放方法的另一实施例包括:
301、若重新设置播放的视频数据帧的帧间隔,则播放器向监控平台发送视频数据帧的播放请求;
本发明实施例中请求播放的视频数据帧的帧间隔可重新设置,播放器向监控平台发送视频数据帧的播放请求,该播放请求中携带请求播放的视频数据帧的移动帧数及重新设置的新的帧间隔信息。
需要说明的是,当帧间隔发生改变时,相应的在子画面上显示的图像帧序号将发生改变,图像帧序号为对应的画面编号乘以帧间隔减2,例如,当用户选择播放下一帧视频数据时将帧间隔改为2帧,则播放器向监控平台发送的播放请求中携带的帧间隔信息为“2帧”,那么播放器若要在8个子画面上连续显示8帧图像帧,则需要播放的视频数据帧序号及子画面编号的对应关系如下图所示:
子画面编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
图像帧序号 | 1 | 3 | 5 | 7 | 9 | 11 | 13 | 15 |
302、将接收到的监控平台发送的媒体包进行组帧;
将接收到的监控平台发送的媒体包进行组帧,该媒体包中包含所请求播放的视频数据帧;
组帧的具体过程请参见图1所示实施例中步骤102中所描述的内容,此处不再赘述。
303、根据组帧生成的视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区中;
根据组帧生成的视频数据帧与当前播放的视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区中,其中N大于等于1,需要说明的是,该缓冲区可分为若干缓冲块区,并对缓冲块区进行编号。
具体可分为两种情况:
一、组帧生成的视频数据帧是当前播放的视频数据帧的下N帧;
若组帧生成的视频数据帧是当前所播放的视频数据帧的下N帧视频数据帧,则清除缓存区中的前N帧视频数据帧,将组帧生成的视频数据帧存储至缓冲区尾。
例如,组帧生成的视频数据帧是当前所播放的视频数据帧的下一帧视频数据帧,重新设置的帧间隔为2帧,则播放器缓存区中存储视频帧的变化情况如下表所示:
缓冲块号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(存储前) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(存储后) | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
二、组帧生成的视频数据帧是当前播放的视频数据帧的上N帧。
若组帧生成的视频数据帧是当前所播放的视频数据帧的上N帧视频数据帧,则清除缓存区中的后N帧视频数据帧,将组帧生成的视频数据帧存储至缓冲区头。
例如,组帧生成的视频数据帧是当前所播放的视频数据帧的上一帧视频数据帧,重新设置的帧间隔为2帧,则播放器缓存区中存储视频帧的变化情况如下表所示:
缓冲块号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
帧序号(存储前) | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
帧序号(存储后) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
304、将缓冲区中的视频数据帧按照帧序号从小到大的顺序进行图像解码;
将步骤303中缓冲区的视频数据帧,按照帧序号从小到大的顺序进行图像解码。
305、将解码后的每帧图像在预划分的每个子画面上显示。
根据用户播放请求,预先将播放器显示画面的区域划分成多个子画面,并对子画面的进行编号,将步骤304中解码后的每帧图像在每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序,分别一一对应。
例如,假设当前播放的视频数据帧是在8个画面上连续显示8帧图像帧,帧间隔为1帧,组帧生成的视频数据帧仍在8个画面上连续显示8帧图像帧,重新设置的帧间隔为2帧。
一、组帧生成的视频数据帧是当前播放的视频数据帧的下一帧,则图像的帧序号与子画面的预置编号的对应关系的变化情况如下表所示:
子画面编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
图像帧序号(存储前) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
图像帧序号(存储后) | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 |
二、组帧生成的视频数据帧是当前播放的视频数据帧的上一帧,则图像的帧序号与子画面的预置编号的对应关系的变化情况如下表所示:
子画面编号 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
图像帧序号(存储前) | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 |
图像帧序号(存储后) | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 |
本发明实施例中,若需重新设置播放的视频数据帧的帧间隔,则播放器向监控平台发送视频数据帧的播放请求,在播放请求中携带移动帧数及新的帧间隔信息,将接收到的监控平台发送的媒体包进行组帧,该媒体包中包含所请求播放的视频数据帧,根据组帧生成的视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区中,其中N大于等于1,将缓冲区中的视频数据帧,按照帧序号从小到大的顺序进行图像解码,之后将解码后的每帧图像在预划分的每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序,分别一一对应,因而重新设置播放的视频数据帧的帧间隔,使得播放视频时可选择的播放方式更为多样。
以上从播放器侧的角度对本发明实施例提供的视频播放方法进行的描述,为便于理解,下面从监控平台侧的角度对本发明实施例提供的视频播放方法进行描述,发明实施例提供的视频播放方法的另一个实施例包括:
401、监控平台接收播放器发送的多画面逐帧播放视频的请求;
监控平台接收播放器发送的多画面逐帧播放视频的请求,该请求中携带请求播放的视频文件标识,请求播放的视频文件起始时间,请求播放的方式(多画面逐帧播放),请求播放的子画面数量及请求播放的视频数据帧间隔的信息。
需要说明的是,该多画面逐帧播放视频请求中携带的请求播放的视频文件标识,可以是视频文件的名称,也可以是视频文件的编号,或者,视频文件的路径等唯一可以标识视频文件的参数,此处不作具体限定。
402、根据视频播放请求中携带的参数读取视频数据帧;
根据播放器发送的视频播放请求中携带的参数连续读取视频数据帧,具体读取过程将在后续实施例中详细描述。
403、将所读取的视频数据帧进行组包并向播放器发送。
将步骤402中连续读取到的视频数据帧分别组成多个媒体包,然后将媒体包向播放器发送。
本发明实施例中,监控平台接收播放器发送的视频播放请求,根据视频播放请求中携带的参数连续读取视频数据帧,将所读取的视频数据帧进行组包并向播放器发送,将播放器请求播放的视频数据帧发送给播放器进行播放,与播放器共同完成视频的多画面逐帧播放过程。
为便于理解,下面以另一实施例对本发明实施中的视频播放方法进行描述,请参阅图5,本发明实施中的视频播放方法的另一实施例包括:
501、监控平台接收播放器发送的视频播放请求;
监控平台接收播放器发送的视频播放请求,该视频播放请求中携带请求播放的视频文件标识,请求播放的视频起始时间,请求播放的方式,请求播放的子画面数量及请求播放的视频数据帧间隔的信息。
502、根据视频播放请求中携带的请求播放的视频文件标识及请求播放的视频起始时间的信息,定位视频的播放起始位置;
根据接收到的视频播放请求中携带的所请求播放视频文件标识,查询到并打开该视频文件,然后根据所请求播放的视频起始时间,定位视频的播放起始位置。
503、根据视频播放请求中携带的请求播放的子画面数量及请求播放的视频数据帧间隔的信息,计算读取的视频数据帧的数量;
根据视频播放请求中携带的请求播放的子画面数量及请求播放的视频数据帧间隔的信息,计算读取的视频数据帧的数量,所读取的视频数据帧的数量的取值为请求播放的子画面数量乘以帧间隔。
例如,视频播放请求中携带的请求播放的子画面数量为8,帧间隔为1,则所读取的视频数据帧的数量为8×1,即此时需读取的视频数据帧为8帧,视频播放请求中携带的请求播放的子画面数量为8,帧间隔为4,则所读取的视频数据帧的数量为8×4,即此时需读取的视频数据帧为32帧。
504、读取计算得到的视频数据帧数量的视频数据;
连续读取步骤503中计算得到的帧数量的视频数据。
505、记录请求播放的视频文件的读取位置及读取模式信息;
记录此次读取视频文件的位置及读取模式信息,其中,读取模式分为帧尾读取模式及帧头读取模式。
506、将所读取的视频数据帧进行组包并向播放器发送。
将步骤504中读取到的视频数据帧分别组成多个媒体包,然后将媒体包向播放器发送。
本发明实施例中,监视平台接收播放器发送的视频播放请求,根据视频播放请求中携带的请求播放的视频文件标识及请求播放的视频起始时间的信息,定位视频的播放起始位置,根据视频播放请求中携带的请求播放的子画面数量及请求播放的视频数据帧间隔的信息,计算读取的视频数据帧数量,记录此次读取视频文件的位置及读取模式信息,连续读取计算得到的视频数据帧数量的视频数据并发送给播放器,这样,将播放器请求播放的视频数据帧发送给播放器进行播放,与播放器共同完成视频的多画面逐帧播放过程,并且记录此次读取的视频文件的位置及读取模式,方便下次视频的读取。
下面介绍当用户选择播放当前视频数据帧的相邻视频数据帧时,本发明实施例中的视频播放方法,请参阅图6,本发明中的视频播放方法的另一实施例包括:
601、监控平台接收播放器发送的播放当前视频数据帧的N帧相邻视频数据帧的请求;
本实施例中,当用户选择播放当前视频数据帧的N帧相邻视频数据帧,N大于等于1,播放器发送相应的播放请求,监控平台接收该播放请求,在播放请求中携带请求播放的子画面数量,请求播放的视频数据帧间隔及移动帧数的信息。
602、根据请求播放的相邻视频数据帧与当前视频数据帧的关系,请求播放的子画面数量,前次读取的视频文件的位置及读取模式信息,定位请求播放的视频文件的读取位置;
本实施例中,根据请求播放的相邻视频数据帧与当前视频数据帧的关系,请求播放的子画面数量,前次读取的视频文件的位置及前次读取视频文件的读取模式信息,定位请求播放的视频文件的读取位置。
需要说明的是,读取模式可分为帧尾模式及帧头模式,其中,帧尾模式是指是指前次操作为“下N帧”,读取视频文件时停留的位置,即停留在当前播放视频帧的最后一帧的下一帧,帧头模式是指指前端操作为“上N帧”,读取视频文件时停留的位置,即停留在当前播视频帧的第N+1帧。
这样,具体读取位置的定位方式可分为以下四种方式:
一、若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧尾模式,则将请求播放的视频文件读取位置定位为从前次读取位置向前跳过A帧视频数据,其中,A等于子画面数量乘以帧间隔与帧间隔乘以N之和;
当请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧尾模式时,要定位请求播放的视频文件读取位置,需先跳过前次播放时子画面所占用的帧数(即子画面数×帧间隔),再向前跳过本次需要读取的帧数(即帧间隔×N),因此,请求播放的视频文件读取位置定位为此二者之和。
例如,请求播放的相邻视频数据帧是当前视频数据帧的上2帧视频数据帧,读取模式为帧尾模式,子画面数量为8,帧间隔为2,则请求播放的视频文件的读取位置定位为前次记录的读取位置向前跳过8×2+2×2帧,即向前跳过20帧。
二、若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧头模式,则将请求播放的视频文件读取位置定位为从前次读取位置向前跳过B帧视频数据,其中,B等于N乘以帧间隔再乘以2;
当请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧头模式时,要定位请求播放的视频文件读取位置,需先跳过前次播放视频文件时读取的帧数(即帧间隔×N),再向前跳过本次需要读取的帧数(即帧间隔×N)
例如,请求播放的相邻视频数据帧是当前视频数据帧的上2帧视频数据帧,读取模式为帧头模式,子画面数量为8,帧间隔为2,则请求播放的视频文件的读取位置定位为前次记录的读取位置向前跳过2×2×2帧,即向前跳过8帧。
三、若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,读取模式为帧尾模式,则将请求播放的视频文件读取位置为前次读取位置,此时,请求播放的视频文件的读取位置即为前次的读取位置,不需移动。
四、若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,读取模式为帧头模式,则当N大于等于子画面的数量时,请求播放的视频文件读取位置为前次读取位置,当N小于子画面数量时,将请求播放的视频文件读取位置定位为从前次读取位置向后跳过C帧视频数据,其中,C等于子画面数量减N之后再乘以帧间隔;
例如,请求播放的相邻视频数据帧是当前视频数据帧的下10帧视频数据帧,读取模式为帧头模式,子画面数量为8,帧间隔为2,此时,N大于子画面的数量,则请求播放的视频文件读取位置即为前次播放的视频文件的读取位置,不需移动。
请求播放的相邻视频数据帧是当前视频数据帧的下3帧视频数据帧,读取模式为帧头模式,子画面数量为8,帧间隔为2,此时,N小于子画面的数量,则将请求播放的视频文件读取位置定位为,从前次读取位置向后跳过(8-3)×2帧,即向后跳过10帧。
603、计算读取的视频数据帧的数量;
步骤602中定位请求播放的视频文件读取位置后,计算读取的视频数据帧的数量,所读取的视频数据帧数量的取值为请求播放的视频数据帧间隔与移动帧数的乘积。
例如,请求播放的视频数据帧间隔为2,移动帧数为3,则所需读取的视频数据帧的数量为2×3帧,即需要读取6帧视频数据帧。
604~606、本实施例中的步骤604至606的具体内容,可参见图5所示实施例中步骤504至506所描述的内容,此处不再赘述。
为便于理解,下面以一具体应用场景对播放视频时播放器侧与监控平台侧之间交互过程进行描述,请参阅图7,本发明实施例中的视频播放方法的另一个实施例包括:
701、播放器发送多画面逐帧播放请求;
用户选择视频的多画面逐帧播放,播放器向监控平台发送多画面逐帧请求,该请求中携带所请求播放的视频文件参数。
702、监控平台读取所请求的视频数据并组成媒体包;
监控平台接收到播放器发送的播放请求,根据其中携带的所要求播放的视频文件参数连续读取视频数据,并组成媒体包。
703、发送媒体包;
监控平台向播放器发送媒体包。
704、播放器接收媒体包并进行组帧;
播放器接收监控平台发送的媒体包,将媒体包进行组帧。
705、将组帧生成的数据帧进行解码;
播放器将组帧生成的视频数据帧进行解码,按照帧序号从小到大的顺序进行图像解码。
706、在多个子画面上显示视频数据帧;
将解码后的每帧图像在预划分的每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序,分别一一对应。
下面介绍本发明实施例中的播放器,请参阅图8,本发明实施例中的播放器的一个实施例包括:
发送单元801,用于向监控平台发送多画面逐帧播放视频的请求,还用于若播放当前视频数据帧的N帧相邻视频数据帧,或者若重新设置播放的视频数据帧的帧间隔,则向监控平台发送视频数据帧的播放请求,其中N大于等于1;
组帧单元802,用于接收到所述监控平台根据该所画面逐帧播放视频的请求发送的媒体包,并将该媒体包进行组帧,该媒体包中包含多画面逐帧播放视频的请求中所请求播放的视频数据;
解码单元803,用于将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码;
显示单元804,用于将解码后的每帧图像在预划分的每个子画面上显示,其中,图像的帧序号与子画面的预置编号按照从小到大的顺序一一对应。
需要进一步说明的是,播放器还可以进一步包括:
清除单元805,用于根据请求播放的N帧相邻视频数据帧与当前视频数据帧的关系,或者,根据组帧生成的视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,还用于若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,或者,若组帧生成的视频数据帧是当前视频数据帧的下N帧视频数据帧,则清除缓存区中的前N帧视频数据帧,若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,或者,若组帧生成的视频数据帧是当前视频数据帧的上N帧视频数据帧,则清除缓存区中的后N帧视频数据帧,其中N大于等于1;
存储单元806,用于通过将组帧生成的视频数据帧存储至缓冲区尾或缓冲区头,将组帧生成的视频数据帧存储至缓冲区中。
本发明实施例中,用户通过播放器选择进行多画面逐帧播放视频,发送单元801向监控平台发送多画面逐帧播放视频的请求,携带主要参数包括:请求播放的视频文件标识、该视频的播放启始时间、请求播放的方式(多画面逐帧播放)、请求播放的子画面数量以及请求播放的视频数据的帧间隔的信息,组帧单元802将接收到的监控平台发送的媒体包进行组帧,该媒体包中包含多画面逐帧播放视频的请求中所请求播放的视频数据。
具体的,监控平台以帧为单位发送视频数据,发送时可将每帧视频数据拆分成若干媒体包,播放器将接收到的监控平台发送的媒体包进行缓冲,当接收完毕一帧视频数据的所有媒体包,便将这些媒体包进行组帧,生成一帧视频数据帧,直至将请求播放的多个视频数据帧的所有媒体包全部组帧成视频数据帧。
解码单元803将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码,显示单元804将解码后的每帧图像在预划分的每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序,分别一一对应,需要说明的是,本实施例中,根据用户播放请求,预先将播放器显示画面的区域划分成多个子画面,并对子画面进行编号,然后显示单元804将解码单元803解码后的每帧图像在每个子画面上显示,从而在多个子画面上逐帧显示多帧图像。
在用户通过播放器进行多画面逐帧播放的过程中,若此时用户选择播放相邻视频数据帧,该相邻视频数据帧可以是相邻的上N帧,也可以是相邻的下N帧的视频数据帧,其中,N大于等于1,则发送单元801向监控平台发送请求播放相邻视频数据帧的播放请求,组帧单元802将接收到的监控平台发送的媒体包进行组帧,该媒体包中包含所请求播放的N帧相邻视频数据帧,清除单元805根据请求播放的N帧相邻视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并由存储单元806将组帧生成的相邻视频数据帧存储至缓冲区中,需要说明的是,该缓冲区可分为若干缓冲块区,并对缓冲块区进行编号。
具体可分为以下两种情况:若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,则清除单元805清除缓存区中的前N帧视频数据帧,存储单元806将组帧生成的视频数据帧存储至缓冲区尾;若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,则清除单元805清除缓存区中的后N帧视频数据帧,存储单元806将组帧生成的视频数据帧存储至缓冲区头。
然后,解码单元803将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码,显示单元804将解码后的每帧图像在预划分的每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序,分别一一对应。
若用户选择重新设置帧间隔,则发送单元801向监控平台发送视频数据帧的播放请求,该播放请求中携带请求播放的视频数据帧的移动帧数及重新设置的新的帧间隔信息,组帧单元802将接收到的监控平台发送的媒体包进行组帧,该媒体包中包含所请求播放的视频数据帧,清除单元805根据组帧生成的视频数据帧与当前播放的视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并由存储单元806将组帧生成的视频数据帧存储至缓冲区中,其中N大于等于1,该缓冲区可分为若干缓冲块区,并对缓冲块区进行编号。
具体可分为以下两种情况:若组帧生成的视频数据帧是当前所播放的视频数据帧的下N帧视频数据帧,则清除单元805清除缓存区中的前N帧视频数据帧,存储单元806将组帧生成的视频数据帧存储至缓冲区尾;若组帧生成的视频数据帧是当前所播放的视频数据帧的上N帧视频数据帧,则清除单元805清除缓存区中的后N帧视频数据帧,存储单元806将组帧生成的视频数据帧存储至缓冲区头。
然后,解码单元803将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码,显示单元804将解码后的每帧图像在预划分的每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序,分别一一对应。
本发明实施中,发送单元801向监控平台发送多画面逐帧播放视频的请求,组帧单元802将接收到的监控平台发送的媒体包进行组帧,该媒体包中包含多画面逐帧播放视频的请求中所请求播放的视频数据,解码单元803将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码,显示单元804将解码后的每帧图像在预划分的每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序,分别一一对应,这样可以多画面逐帧显示多个图像帧,不需人工设置,操作简便。
在用户通过播放器进行多画面逐帧播放的过程中,若此时用户选择播放N帧相邻视频数据帧,N大于等于1,则发送单元801向监控平台发送请求播放相邻视频数据帧的播放请求,组帧单元802将接收到的监控平台发送的媒体包进行组帧,该媒体包中包含所请求播放的N帧相邻视频数据帧,清除单元805根据请求播放的N帧相邻视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并由存储单元806将组帧生成的相邻视频数据帧存储至缓冲区中,然后,解码单元803将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码,显示单元804将解码后的每帧图像在预划分的每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序,分别一一对应,这样可以实现用户随意选择播放相邻的数据帧,播放方式更为灵活。
若用户选择重新设置帧间隔,则发送单元801向监控平台发送视频数据帧的播放请求,该播放请求中携带请求播放的视频数据帧的移动帧数及重新设置的新的帧间隔信息,组帧单元802将接收到的监控平台发送的媒体包进行组帧,该媒体包中包含所请求播放的视频数据帧,清除单元805根据组帧生成的视频数据帧与当前播放的视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并由存储单元806将组帧生成的视频数据帧存储至缓冲区中,其中N大于等于1,然后,解码单元803将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码,显示单元804将解码后的每帧图像在预划分的每个子画面上显示,图像的帧序号与画面的预置编号按照从小到大的顺序,分别一一对应,这样实现了重新设置所请求播放视频的帧间隔,使得多画面逐帧播放视频的播放方式更灵活。
下面介绍本发明实施例中的监控平台,请参阅图9,本发明实施例中的监控平台的一个实施例包括:
接收单元901,用于接收播放器发送的多画面逐帧播放视频的请求,该视频播放请求中携带请求播放的视频参数,该参数包括:请求播放的视频文件标识,请求播放的视频起始时间,请求播放的方式,请求播放的子画面数量及请求播放的视频数据帧间隔的信息,还用于接收播放器发送的播放当前视频数据帧的N帧相邻视频数据帧的请求,该请求中携带请求播放的子画面数量,请求播放的视频数据帧间隔及移动帧数的信息,其中N大于等于1;
读取单元902,用于根据视频播放请求中携带的参数读取视频数据帧,还用于读取计算得到的视频数据帧数量的视频数据;
组包单元903,用于将所读取的视频数据帧组成媒体包;
发送单元904,用于将组包单元903组成的媒体包向播放器发送。
需要说明的是,读取单元还可以进一步包括:
定位单元905,用于根据视频播放请求中携带的请求播放的视频文件标识及请求播放的视频的起始时间的信息,定位视频的播放起始位置,若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧尾模式,则将请求播放的视频文件读取位置定位为从前次读取位置向前跳过A帧视频数据,其中,A等于子画面数量乘以帧间隔与帧间隔乘以N之和,若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧头模式,则将请求播放的视频文件读取位置定位为从前次读取位置向前跳过B帧视频数据,其中,B等于N乘以帧间隔再乘以2,若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,读取模式为帧尾模式,则将请求播放的视频文件读取位置为前次读取位置,若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,读取模式为帧头模式,则当N大于等于子画面的数量时,请求播放的视频文件读取位置为前次读取位置,当N小于子画面数量时,将请求播放的视频文件读取位置定位为从前次读取位置向后跳过C帧视频数据,其中,C等于子画面数量减N之后再乘以帧间隔;还用于根据请求播放的相邻视频数据帧与当前视频数据帧的关系,请求播放的子画面数量,前次读取的视频文件的位置及读取模式信息,定位请求播放的视频文件的读取位置;
计算单元906,用于根据视频播放请求中携带的请求播放的子画面数量及请求播放的视频数据帧间隔的信息,或者根据请求播放的视频数据帧间隔与移动帧数,计算读取的视频数据帧数量;
记录单元907,用于记录请求播放的视频文件的读取位置及读取模式信息。
本实施例中,接收单元901接收播放器发送的多画面逐帧播放视频的请求,该请求中携带请求播放的视频文件名,请求播放的视频文件起始时间,请求播放的方式(多画面逐帧播放),请求播放的子画面数量及请求播放的视频数据帧间隔的信息,读取单元902根据播放器发送的视频播放请求中携带的参数读取视频数据帧,具体的,定位单元905根据接收到的视频播放请求中携带的所请求播放视频文件标识,查询到并打开该视频文件,然后根据所请求播放的视频起始时间,定位视频的播放起始位置,计算单元906根据视频播放请求中携带的请求播放的子画面数量及请求播放的视频数据帧间隔的信息,计算读取的视频数据帧数量,如果移动帧数发生改变,则计算单元906根据请求播放的视频数据帧间隔与移动帧数,计算读取的视频数据帧数量,记录单元907记录请求播放的视频文件的读取位置及读取模式信息,而后读取单元902读取计算得到的视频数据帧数量的视频数据,组包单元903将所读取的视频数据帧组成媒体包,由发送单元904将该媒体包向播放器发送。
若播放器发送的播放请求为请求播放相邻视频数据帧,则接收单元901接收播放器发送的播放当前视频数据帧的N帧相邻视频数据帧的请求,该请求中携带请求播放的子画面数量,请求播放的视频数据帧间隔及移动帧数的信息,其中N大于等于1,读取单元902根据视频播放请求中携带的参数读取视频数据帧,具体的,定位单元905根据接收到的N帧相邻视频数据帧请求中携带的所请求播放视频文件标识,查询到并打开该视频文件,然后根据所请求播放的视频起始时间,定位视频的播放起始位置。
定位视频的播放起始位置可分为以下四种情况:若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧尾模式,则将请求播放的视频文件读取位置定位为从前次读取位置向前跳过A帧视频数据,其中,A等于子画面数量乘以帧间隔与帧间隔乘以N之和;若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧头模式,则将请求播放的视频文件读取位置定位为从前次读取位置向前跳过B帧视频数据,其中,B等于N乘以帧间隔再乘以2;若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,读取模式为帧尾模式,则将请求播放的视频文件读取位置为前次读取位置;若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,读取模式为帧头模式,则当N大于等于子画面的数量时,请求播放的视频文件读取位置为前次读取位置,当N小于子画面数量时,将请求播放的视频文件读取位置定位为从前次读取位置向后跳过C帧视频数据,其中,C等于子画面数量减N之后再乘以帧间隔。
然后,计算单元906根据视频播放请求中携带的请求播放的子画面数量及请求播放的视频数据帧间隔的信息,计算读取的视频数据帧数量,如果移动帧数发生改变,则计算单元906根据请求播放的视频数据帧间隔与移动帧数,计算读取的视频数据帧数量,记录单元907记录请求播放的视频文件的读取位置及读取模式信息,而后读取单元902读取计算得到的视频数据帧数量的视频数据,组包单元903将所读取的视频数据帧组成媒体包,由发送单元904将该媒体包向播放器发送。
本发明实施例还提供了一种视频播放系统,请参阅图10,本发明实施例中的视频播放系统包括:
播放器1001,以及监控平台1002;
其中,播放器1001用于向监控平台发送多画面逐帧播放视频的请求,接收该监控平台根据该多画面逐帧播放视频的请求发送的媒体包,并将媒体包进行组帧,该媒体包中包含所述多画面逐帧播放视频的请求中所请求播放的视频数据,然后将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码,将解码后的每帧图像在预划分的每个子画面上显示,其中,图像的帧序号与子画面的预置编号按照从小到大的顺序一一对应。
监控平台1002用于接收播放器发送的多画面逐帧播放视频的请求,该视频播放请求中携带请求播放的视频的参数,根据该视频播放请求中携带的参数读取视频数据帧,将所读取的视频数据帧组成媒体包,将组包单元组成的媒体包向播放器发送。
需要说明的是,本实施例中的播放器1001可以与前述图8所示的实施例中的播放器相同,本实施例中的监控平台1002可以与前述图9所示的实施例中的监控平台相同,具体不再赘述。
本领域技术人员可以理解实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上对本发明所提供的视频播放方法、播放器、监控平台及视频播放系统进行了详细介绍,对于本领域的技术人员,依据本发明实施例的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (20)
1.一种视频播放方法,其特征在于,包括:
向监控平台发送多画面逐帧播放视频的请求;
接收所述监控平台根据所述多画面逐帧播放视频的请求发送的媒体包,并将媒体包进行组帧,所述媒体包中包含所述多画面逐帧播放视频的请求中所请求播放的视频数据;
将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码;
将解码后的每帧图像在预划分的每个子画面上显示,其中,图像的帧序号与子画面的预置编号按照从小到大的顺序一一对应。
2.根据权利要求1所述的方法,其特征在于,所述将解码后的每帧图像在预划分的每个子画面上显示之后,还包括:
若播放当前视频数据帧的N帧相邻视频数据帧,则向监控平台发送相邻视频数据帧的播放请求,其中,N大于等于1;
将接收到的所述监控平台发送的媒体包进行组帧,所述媒体包中包含所请求播放的N帧相邻视频数据帧;
根据请求播放的N帧相邻视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区中;
将缓冲区中的视频数据帧,按照帧序号从小到大的顺序进行图像解码,将解码后的每帧图像在预划分的每个子画面上显示,其中,图像的帧序号与子画面的预置编号按照从小到大的顺序一一对应。
3.根据权利要求1或2所述的方法,其特征在于,所述根据请求播放的N帧相邻视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区中包括:
若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,则清除缓存区中的前N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区尾;
若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,则清除缓存区中的后N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区头。
4.根据权利要求1所述的方法,其特征在于,还包括:
若重新设置播放的视频数据帧的帧间隔,则向监控平台发送视频数据帧的播放请求;
将接收到的所述监控平台发送的媒体包进行组帧,所述媒体包中包含所请求播放的视频数据帧;
根据组帧生成的视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区中,其中N大于等于1;
将缓冲区中的视频数据帧,按照帧序号从小到大的顺序进行图像解码,将解码后的每帧图像在预划分的每个子画面上显示,其中,图像的帧序号与子画面的预置编号按照从小到大的顺序一一对应。
5.根据权利要求4所述的方法,所述根据组帧生成的视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区中的步骤包括:
若组帧生成的视频数据帧是当前视频数据帧的下N帧视频数据帧,则清除缓存区中的前N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区尾;
若组帧生成的视频数据帧是当前视频数据帧的上N帧视频数据帧,则清除缓存区中的后N帧视频数据帧,并将组帧生成的视频数据帧存储至缓冲区头。
6.一种视频播放方法,其特征在于,包括:
接收播放器发送的多画面逐帧播放视频的请求,所述视频播放请求中携带请求播放的视频的参数;
根据所述视频播放请求中携带的参数读取视频数据帧;
将所读取的视频数据帧组成媒体包并向所述播放器发送。
7.根据权利要求6所述的方法,其特征在于,所述视频播放请求中携带请求播放的视频的参数包括:
所述视频播放请求中携带请求播放的视频文件标识,请求播放的视频起始时间,请求播放的方式,请求播放的子画面数量及请求播放的视频数据帧间隔。
8.根据权利要求7所述的方法,其特征在于,所述根据视频播放请求中携带的参数读取视频数据帧,具体包括:
根据所述视频播放请求中携带的请求播放的视频文件标识及请求播放的视频的起始时间的信息,定位视频的播放起始位置;
根据所述视频播放请求中携带的请求播放的子画面数量及请求播放的视频数据帧间隔的信息,计算读取的视频数据帧数量,所读取的视频数据帧数量的取值为请求播放的子画面数量乘以帧间隔;
读取计算得到的视频数据帧数量的视频数据。
9.根据权利要求7所述的方法,其特征在于,还包括:
接收播放器发送的播放当前视频数据帧的N帧相邻视频数据帧请求,所述N帧相邻视频数据帧请求中携带请求播放的子画面数量,请求播放的视频数据帧间隔及移动帧数的信息,其中N大于等于1;
根据所述N帧相邻视频数据帧请求播放的相邻视频数据帧与当前视频数据帧的关系,请求播放的子画面数量,前次读取的视频文件的位置及读取模式信息,定位请求播放的视频文件的读取位置;
计算读取的视频数据帧的数量,所读取的视频数据帧数量的取值为请求播放的视频数据帧间隔与移动帧数的乘积;
读取计算得到的视频数据帧数量的视频数据;
将所读取的视频数据帧组成媒体包并向所述播放器发送。
10.根据权利要求9所述的方法,其特征在于,所述根据N帧相邻视频数据帧请求播放的相邻视频数据帧与当前视频数据帧的关系,请求播放的子画面数量,前次读取的视频文件的位置及读取模式信息,定位当前请求播放的视频文件的读取位置步骤包括:
若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧尾模式,则将请求播放的视频文件读取位置定位为从前次读取位置向前跳过A帧视频数据,其中,A等于子画面数量乘以帧间隔与帧间隔乘以N之和;
若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧头模式,则将请求播放的视频文件读取位置定位为从前次读取位置向前跳过B帧视频数据,其中,B等于N乘以帧间隔再乘以2;
若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,读取模式为帧尾模式,则请求播放的视频文件读取位置为前次读取位置;
若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,读取模式为帧头模式,则当N大于等于子画面的数量时,请求播放的视频文件读取位置为前次读取位置,当N小于子画面数量时,将请求播放的视频文件读取位置定位为从前次读取位置向后跳过C帧视频数据,其中,C等于子画面数量减N之后再乘以帧间隔。
11.根据权利要求6至10任意一项所述的方法,其特征在于,所述将所读取的视频数据帧组成媒体包并向所述播放器发送之前包括:
记录请求播放的视频文件的读取位置及读取模式信息。
12.一种播放器,其特征在于,包括:
发送单元,用于向监控平台发送多画面逐帧播放视频的请求;
组帧单元,用于接收所述监控平台根据所述多画面逐帧播放视频的请求发送的媒体包,并将媒体包进行组帧,所述媒体包中包含所述多画面逐帧播放视频的请求中所请求播放的视频数据;
解码单元,用于将组帧生成的视频数据帧按照帧序号从小到大的顺序进行图像解码;
显示单元,用于将解码后的每帧图像在预划分的每个子画面上显示,其中,图像的帧序号与子画面的预置编号按照从小到大的顺序一一对应。
13.根据权利要求12所述的播放器,其特征在于,
所述发送单元,还用于若播放当前视频数据帧的N帧相邻视频数据帧,或者,若重新设置播放的视频数据帧的帧间隔,则向监控平台发送相邻视频数据帧的播放请求,其中,N大于等于1;
所述播放器还包括:
清除单元,用于根据请求播放的N帧相邻视频数据帧与当前视频数据帧的关系,或者,根据组帧生成的视频数据帧与当前视频数据帧的关系,清除缓存区中的前N帧或后N帧视频数据帧,其中N大于等于1;
存储单元,用于将组帧生成的视频数据帧存储至缓冲区中。
14.根据权利要求13所述的播放器,其特征在于,
所述清除单元,还用于若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,或者,若组帧生成的视频数据帧是当前视频数据帧的下N帧视频数据帧,则清除缓存区中的前N帧视频数据帧;若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,或者,若组帧生成的视频数据帧是当前视频数据帧的上N帧视频数据帧,则清除缓存区中的后N帧视频数据帧;
所述存储单元,用于通过将组帧生成的视频数据帧存储至缓冲区尾或缓冲区头,将组帧生成的视频数据帧存储至缓冲区中。
15.一种监控平台,其特征在于,包括:
接收单元,用于接收播放器发送的多画面逐帧播放视频的请求,所述视频播放请求中携带请求播放的视频的参数;
读取单元,用于根据所述视频播放请求中携带的参数读取视频数据帧;
组包单元,用于将所读取的视频数据帧组成媒体包;
发送单元,用于将组包单元组成的媒体包向所述播放器发送。
16.根据权利要求15所述的监控平台,其特征在于,所述视频播放请求中携带请求播放的视频的参数包括:
请求播放的视频文件标识,请求播放的视频起始时间,请求播放的方式,请求播放的子画面数量及请求播放的视频数据帧间隔的信息。
17.根据权利要求16所述的监控平台,其特征在于,
所述监控平台还包括:
定位单元,用于根据所述视频播放请求中携带的请求播放的视频文件标识及请求播放的视频的起始时间的信息,定位视频的播放起始位置,若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧尾模式,则将请求播放的视频文件读取位置定位为从前次读取位置向前跳过A帧视频数据,其中,A等于子画面数量乘以帧间隔与帧间隔乘以N之和,若请求播放的相邻视频数据帧是当前视频数据帧的上N帧视频数据帧,读取模式为帧头模式,则将请求播放的视频文件读取位置定位为从前次读取位置向前跳过B帧视频数据,其中,B等于N乘以帧间隔再乘以2,若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,读取模式为帧尾模式,则将请求播放的视频文件读取位置为前次读取位置,若请求播放的相邻视频数据帧是当前视频数据帧的下N帧视频数据帧,读取模式为帧头模式,则当N大于等于子画面的数量时,请求播放的视频文件读取位置为前次读取位置,当N小于子画面数量时,将请求播放的视频文件读取位置定位为从前次读取位置向后跳过C帧视频数据,其中,C等于子画面数量减N之后再乘以帧间隔;
计算单元,用于根据所述视频播放请求中携带的请求播放的子画面数量及请求播放的视频数据帧间隔的信息,计算读取的视频数据帧数量,所读取的视频数据帧数量的取值为请求播放的子画面数量乘以帧间隔;
所述读取单元,用于读取计算得到的视频数据帧数量的视频数据。
18.根据权利要求17所述的监控平台,其特征在于,
所述接收单元,还用于接收播放器发送的播放当前视频数据帧的N帧相邻视频数据帧请求,所述N帧相邻视频数据帧请求中携带请求播放的子画面数量,请求播放的视频数据帧间隔及移动帧数的信息,其中N大于等于1;
所述定位单元,还用于根据N帧相邻视频数据帧请求播放的相邻视频数据帧与当前视频数据帧的关系,请求播放的子画面数量,前次读取的视频文件的位置及读取模式信息,定位请求播放的视频文件的读取位置;
所述计算单元,还用于计算读取的视频数据帧的数量,所读取的视频数据帧数量的取值为请求播放的视频数据帧间隔与移动帧数的乘积。
19.根据权利要求15所述的监控平台,其特征在于,所述监控平台还包括:
记录单元,用于记录请求播放的视频文件的读取位置及读取模式信息。
20.一种视频播放系统,其特征在于,包括:
权利要求12至14任意一项所述的播放器,以及权利要求15至19任意一项所述的监控平台。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110127232.XA CN102789804B (zh) | 2011-05-17 | 2011-05-17 | 视频播放方法、播放器、监控平台及视频播放系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201110127232.XA CN102789804B (zh) | 2011-05-17 | 2011-05-17 | 视频播放方法、播放器、监控平台及视频播放系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN102789804A true CN102789804A (zh) | 2012-11-21 |
CN102789804B CN102789804B (zh) | 2016-03-02 |
Family
ID=47155186
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201110127232.XA Active CN102789804B (zh) | 2011-05-17 | 2011-05-17 | 视频播放方法、播放器、监控平台及视频播放系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102789804B (zh) |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104581055A (zh) * | 2014-12-22 | 2015-04-29 | 深圳市科漫达智能管理科技有限公司 | 图像显示方法及装置 |
CN105578089A (zh) * | 2015-12-30 | 2016-05-11 | 深圳市海云天科技股份有限公司 | 一种视频快速浏览的方法及系统 |
CN106686466A (zh) * | 2017-01-10 | 2017-05-17 | 武汉卓威视讯科技有限公司 | 一种视频数据的定位方法 |
CN106713927A (zh) * | 2016-11-14 | 2017-05-24 | 珠海格力电器股份有限公司 | 一种图像输出装置、方法及解码器 |
CN108696505A (zh) * | 2017-04-07 | 2018-10-23 | 佳能株式会社 | 视频分发设备、视频接收设备、视频分发方法和记录介质 |
CN109698965A (zh) * | 2017-10-20 | 2019-04-30 | 株洲中车时代电气股份有限公司 | 一种视频同步播放方法、装置、设备及计算机存储介质 |
CN111526404A (zh) * | 2020-04-27 | 2020-08-11 | 杭州海康威视系统技术有限公司 | 单帧播放方法、装置、设备以及存储介质 |
WO2023103954A1 (zh) * | 2021-12-06 | 2023-06-15 | 极限人工智能有限公司 | 视频读取方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040179825A1 (en) * | 2003-03-11 | 2004-09-16 | Im Jin Seok | Digital video record/playback apparatus and playback method thereof |
CN101009824A (zh) * | 2006-01-24 | 2007-08-01 | 成都索贝数码科技股份有限公司 | 一种音/视频数据的网络传输方法 |
CN101206899A (zh) * | 2006-12-21 | 2008-06-25 | 三星电子株式会社 | 用于编码/解码具有预览功能的多媒体数据的方法以及装置 |
CN101917568A (zh) * | 2009-12-17 | 2010-12-15 | 新奥特(北京)视频技术有限公司 | 一种基于流媒体技术的网络视频播放器及播放系统 |
-
2011
- 2011-05-17 CN CN201110127232.XA patent/CN102789804B/zh active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20040179825A1 (en) * | 2003-03-11 | 2004-09-16 | Im Jin Seok | Digital video record/playback apparatus and playback method thereof |
CN101009824A (zh) * | 2006-01-24 | 2007-08-01 | 成都索贝数码科技股份有限公司 | 一种音/视频数据的网络传输方法 |
CN101206899A (zh) * | 2006-12-21 | 2008-06-25 | 三星电子株式会社 | 用于编码/解码具有预览功能的多媒体数据的方法以及装置 |
CN101917568A (zh) * | 2009-12-17 | 2010-12-15 | 新奥特(北京)视频技术有限公司 | 一种基于流媒体技术的网络视频播放器及播放系统 |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104581055A (zh) * | 2014-12-22 | 2015-04-29 | 深圳市科漫达智能管理科技有限公司 | 图像显示方法及装置 |
CN104581055B (zh) * | 2014-12-22 | 2018-06-19 | 深圳市科漫达智能管理科技有限公司 | 图像显示方法及装置 |
CN105578089A (zh) * | 2015-12-30 | 2016-05-11 | 深圳市海云天科技股份有限公司 | 一种视频快速浏览的方法及系统 |
CN106713927A (zh) * | 2016-11-14 | 2017-05-24 | 珠海格力电器股份有限公司 | 一种图像输出装置、方法及解码器 |
CN106713927B (zh) * | 2016-11-14 | 2019-08-13 | 珠海格力电器股份有限公司 | 一种图像输出装置、方法及解码器 |
CN106686466A (zh) * | 2017-01-10 | 2017-05-17 | 武汉卓威视讯科技有限公司 | 一种视频数据的定位方法 |
CN108696505A (zh) * | 2017-04-07 | 2018-10-23 | 佳能株式会社 | 视频分发设备、视频接收设备、视频分发方法和记录介质 |
US11102527B2 (en) | 2017-04-07 | 2021-08-24 | Canon Kabushiki Kaisha | Video distribution apparatus, video reception apparatus, video distribution method, and recording medium |
CN109698965A (zh) * | 2017-10-20 | 2019-04-30 | 株洲中车时代电气股份有限公司 | 一种视频同步播放方法、装置、设备及计算机存储介质 |
CN111526404A (zh) * | 2020-04-27 | 2020-08-11 | 杭州海康威视系统技术有限公司 | 单帧播放方法、装置、设备以及存储介质 |
WO2023103954A1 (zh) * | 2021-12-06 | 2023-06-15 | 极限人工智能有限公司 | 视频读取方法、装置、电子设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN102789804B (zh) | 2016-03-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102789804A (zh) | 视频播放方法、播放器、监控平台及视频播放系统 | |
CN103119955B (zh) | 内容发送设备、内容发送方法、内容再现设备、内容再现方法及内容分发系统 | |
US7720350B2 (en) | Methods and systems for controlling trick mode play speeds | |
US6848117B1 (en) | Video-on-demand system capable of performing a high-speed playback at a correct speed | |
EP2824885B1 (en) | A manifest file format supporting panoramic video | |
CN108924582B (zh) | 视频录制方法、计算机可读存储介质及录播系统 | |
JP2008236321A (ja) | コンテンツ配信システム、このコンテンツ配信システムで使用されるサーバ装置及び受信装置 | |
KR100884400B1 (ko) | 영상처리장치 및 그 방법 | |
US20150113582A1 (en) | Communication System, Terminal Device, Video Display Method, and Storage Medium | |
US20150110469A1 (en) | Communication System, Terminal Device, Registration Method, and Storage Medium | |
US7305171B2 (en) | Apparatus for recording and/or reproducing digital data, such as audio/video (A/V) data, and control method thereof | |
CN104618673A (zh) | 一种基于nvr的多路录像同步回放控制方法和装置 | |
JP2016134701A (ja) | 映像再生制御プログラム、映像再生制御方法、映像配信サーバ、送信プログラム、及び送信方法 | |
CN102065320B (zh) | 用于处理关于ts码流的特技播放命令的方法和设备 | |
JP2005303925A (ja) | ストリームデータ送信装置、ストリームデータ受信装置およびそれらの処理をコンピュータに実行させるための処理プログラムを記録した記録媒体 | |
JP2020524450A (ja) | 多チャネル映像のための伝送システム及びその制御方法、多チャネル映像再生方法及びその装置 | |
KR20070032894A (ko) | 동화상 시청 시스템, 동화상 시청 장치, 그 제어 방법 및프로그램 | |
JP2014204265A (ja) | 再生制御装置及び再生制御方法 | |
CN100517494C (zh) | 提供视频信号的方法和设备 | |
US10805027B2 (en) | Method, device, and non-transitory computer-readable recording medium for supporting relay broadcast | |
JP2012156808A (ja) | 画像伝送システムおよび画像再生装置 | |
JP2017199994A (ja) | 映像配信装置及び映像配信方法 | |
JP6579007B2 (ja) | 制御装置 | |
JP2003091936A (ja) | ストリームデータ蓄積装置、プログラム及び方法 | |
US20080320511A1 (en) | High-speed programs review |
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 | ||
TR01 | Transfer of patent right | ||
TR01 | Transfer of patent right |
Effective date of registration: 20200207 Address after: 518129 Bantian HUAWEI headquarters office building, Longgang District, Guangdong, Shenzhen Patentee after: HUAWEI TECHNOLOGIES Co.,Ltd. Address before: 210012 Ande Gate No. 94, Yuhuatai District, Jiangsu, Nanjing Patentee before: Huawei Technologies Co.,Ltd. |