数据传输、处理方法及系统、微视仪及电子设备与流程

文档序号:12754246阅读:195来源:国知局
数据传输、处理方法及系统、微视仪及电子设备与流程

本发明涉及数据处理领域,特别是涉及一种数据传输、处理方法及系统、微视仪及电子设备。



背景技术:

由于家庭微视仪需要适配大量的手机或平板电脑终端(覆盖高中低端)使用,各终端的多媒体播放能力各异,高端手机可以支持720P 30fps,而很多低端的终端只能支持720P 10fps的MJPEG播放能力,因此需要在不同的终端环境下使用不同的策略保证实时视频录制的用户体验为最优。

针对处理能力较弱的终端产品,瓶颈主要在处理器的多媒体处理能力方面不能匹配实时播放和录制视频的需求,造成视频播放的延迟等不好的用户体验。



技术实现要素:

鉴于以上所述现有技术的缺点,本发明的目的在于提供一种数据传输、处理方法及系统、微视仪及电子设备,用于解决现有技术中终端产品视频处理能力弱,而不能匹配实时播放和录制视频的需求的问题。

为实现上述目的及其他相关目的,本发明提供一种双码流视频数据传输方法,应用于一微视仪中,所述微视仪与一电子设备进行通信,所述方法包括:对获取的视频进行处理,以生成对应所述视频的MJPEG码流视频数据以及H.264码流视频数据;传输所述MJPEG码流视频数据以供播放户视频且传输所述H.264码流视频数据以供存储所述视频。

为实现上述目的及其他相关目的,本发明还提供一种双码流视频数据传输系统,应用于一微视仪中,所述微视仪与一电子设备进行通信,包括:视频处理模块,用以对获取的视频进行处理,以生成对应所述视频的MJPEG码流视频数据以及H.264码流视频数据;数据传输模块,用以传输所述MJPEG码流视频数据以供播放户视频且传输所述H.264码流视频数据以供存储所述视频。

为实现上述目的及其他相关目的,本发明还提供一种微视仪,包括摄像头以及处理器;所述摄像头用于摄取视频;所述处理器用以对所述摄像头摄取的视频进行处理,以生成对应所述视频的MJPEG码流视频数据以及H.264码流视频数据;传输所述MJPEG码流视频数据以供播放户视频且传输所述H.264码流视频数据以供存储所述视频。

为实现上述目的及其他相关目的,本发明还提供一种视频数据处理方法,应用于一电子设备中,所述电子设备与一微视仪进行通信,所述方法包括:接收对应一视频的MJPEG码流视频数据以及H.264码流视频数据,对接收的所述H.264码流视频数据进行存储;获取对应所述视频的每帧的时延以及相邻帧之间的帧间隔;比较所述时延与所述帧间隔的大小,且根据所述比较的结果选取对应的播放模式对接收的所述MJPEG码流视频数据进行所述视频的播放。

于本发明一具体实施例中,所述播放模式包括第一播放模式以及第二播放模式,当所述时延大于或等于所述帧间隔时,选取所述第一播放模式对接收的所述MJPEG码流视频数据进行所述视频的播放;当所述时延小于所述帧间隔时,选取所述第二播放模式对接收的所述MJPEG码流视频数据进行所述视频的播放;所述第一播放模式包括:通过预定帧数长度的补偿窗口将所述视频分为多个部分以供分别处理,在每个所述补偿窗口内均选取一MJPEG帧进行播放,且丢弃剩余的其他帧;所述第二播放模式包括:通过预定帧数长度的补偿窗口将所述视频分为多个部分以供分别处理,在每个所述补偿窗口内均选取一MJPEG帧进行丢弃,且播放剩余的的其他帧。

于本发明一具体实施例中,所述第一播放模式包括:在一补偿窗口内,接收一视频帧,获取对应所述视频帧的MJPEG帧和H.264帧;判断是否播放过与所述补偿窗口对应的MJPEG帧;若播放过,则丢弃所述视频帧对应的MJPEG帧;若没有播放过,则判断所述视频帧是否为所述补偿窗口内的最后一帧,若是,则直接播放所述视频帧对应的MJPEG帧;若不是所述补偿窗口内的最后一帧,则判断与所述视频帧对应的H.264帧的类型,H.264帧的类型若是关键帧,则直接播放所述视频帧对应的MJPEG帧;H.264帧的类型若是前向预测编码帧,则计算预设统计窗口对应的信息量的当前EMA与所述H.264帧的信息量之间的差值,且当所述差值大于或等于预设的阈值时,丢弃所述视频帧对应的MJPEG帧;丢弃或播放当前视频帧对应的MJPEG帧后,返回所述接收一视频帧的步骤以重新接收与所述补偿窗口对应的新的视频帧,直到当前补偿窗口内的视频帧全部接收完。

于本发明一具体实施例中,所述第二播放模式包括:在一补偿窗口内,接收一视频帧,获取对应所述视频帧的MJPEG帧和H.264帧;判断是否丢弃过与所述补偿窗口对应的MJPEG帧;若丢弃过,则播放所述视频帧对应的MJPEG帧;若没有丢弃过,则判断所述视频帧是否为所述补偿窗口内的最后一帧,若是,则直接丢弃所述视频帧对应的MJPEG帧;若不是所述补偿窗口内的最后一帧,则判断与所述视频帧对应的H.264帧的类型,H.264帧的类型若是关键帧,则直接播放所述视频帧对应的MJPEG帧;H.264帧的类型若是前向预测编码帧,则计算预设统计窗口对应的信息量的当前EMA与所述H.264帧的信息量之间的差值,且当所述差值大于或等于预设的阈值时,丢弃所述视频帧对应的MJPEG帧;丢弃或播放当前视频帧对应的MJPEG帧后,返回所述接收一视频帧的步骤以重新接收与所述补偿窗口对应的新的视频帧,直到当前补偿窗口内的视频帧全部接收完。

于本发明一具体实施例中,根据所述时延以及帧间隔计算所述补偿窗口的帧数。

于本发明一具体实施例中,所述补偿窗口的帧数为所述时延与所述帧间隔的比值加1。

于本发明一具体实施例中,所述当前EMA为当前H.264帧的信息量与旧的EMA进行加权处理后的结果。

于本发明一具体实施例中,所述旧的EMA为除去当前H.264帧的信息量的影响的EMA。

为实现上述目的及其他相关目的,本发明还提供一种视频数据处理系统,应用于一电子设备中,所述电子设备与一微视仪进行通信,所述系统包括:数据接收模块,用以接收对应一视频的MJPEG码流视频数据以及H.264码流视频数据;存储模块,用以对所述数据接收模块接收的所述H.264码流视频数据进行存储;播放模块,用以获取对应所述视频的每帧的时延以及相邻帧之间的帧间隔;且比较所述时延与所述帧间隔的大小,且根据所述比较的结果选取对应的播放模式对接收的所述MJPEG码流视频数据进行所述视频的播放。

为实现上述目的及其他相关目的,本发明还提供一种电子设备,应用如上任一项所述的视频数据处理方法对接收到的对应一视频的MJPEG码流视频数据以及H.264码流视频数据进行处理。

如上所述,本发明的数据传输、处理方法及系统、微视仪及电子设备,在微视仪拍摄到视频时,将视频处理为MJPEG码流视频数据以及H.264码流视频数据的双码流数据进行传输,其中MJPEG码流用于实时视频的播放具有对多媒体处理能力要求低的特点,H.264视频码流用于实时视频的录制具有占用存储空间小的特点,所以,在电子设备端,将MJPEG码流视频数据根据视频的时延以及帧间隔的关系选择相应的播放模式进行播放,减少播放的延时,保证播放视频的质量,且对H.264码流视频数据进行存储,从而实现对拍摄的视频的存储的同时,可以保证视频播放的质量,且降低对终端产品的硬件性能的要求。本发明一方面将视频播放录制的硬件需求降到最低,另一方面保证即使硬件的播放能力比标称的要求更低,软件仍然可以较好的适应硬件平台的播放能力,而不会出现其他多媒体软件中常见的累积延迟和马赛克等问题。

附图说明

图1显示为本发明的通信系统在一具体实施例中的结构示意图。-

图2显示为本发明的双码流视频数据传输方法在一具体实施例中的流程示意图。

图3显示为本发明的双码流视频数据传输系统在一具体实施例中的模块示意图。

图4显示为本发明的视频数据处理方法在一具体实施例中的流程示意图。

图5显示为本发明的第一播放模式在一具体实施例中的应用示意图。

图6显示为本发明的第二播放模式在一具体实施例中的应用示意图。

图7显示为本发明的视频数据处理系统在一具体实施例中的模块示意图.

图8显示为本发明的电子设备在一具体实施例中采用的软件结构示意图。

元件标号说明

10 通信系统

11 微视仪

12 电子设备

20 双码流视频数据传输方法

21、22 方法步骤

30 双码流视频数据传输系统

31 视频处理模块

32 数据传输模块

40 视频数据处理方法

41~43 方法步骤

70 视频数据处理系统

71 数据接收模块

72 存储模块

73 播放模块

具体实施方式

以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的具体实施方式加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。

需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图示中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。

家庭微视仪通常与相应的终端产品进行通信,终端产品在接收到微视仪上传的视频后进行播放和存储,由于无线家庭微视仪需要适配大量的终端(覆盖高中低端)使用,各终端的多媒体播放能力各异,高端终端可以支持720P 30fps,而很多低端的终端只能支持720P 10fps的MJPEG播放能力,因此需要在不同的终端环境下使用不同的策略保证实时视频录制的用户体验为最优。本发明一方面将硬件播放录制的硬件需求降到最低,另一方面保证即使硬件的播放能力比标称的要求更低,软件仍然可以较好的适应硬件平台的播放能力,而不会出现其他多媒体软件中常见的累积延迟和马赛克等问题。本发明具体的系统结构如图1所示,通信系统10包括微视仪11和电子设备12。

进一步参阅图2,显示为本发明的双码流视频数据传输方法在一具体实施例中的流程示意图。所述双码流视频数据传输方法20,应用于所述微视仪11中,所述方法20包括:

21:对获取的视频进行处理,以生成对应所述视频的MJPEG码流视频数据以及H.264码流视频数据;所述视频的获取方式包括通过搭载于所述微视仪11的摄像头进行获取。

22:传输所述MJPEG码流视频数据以供播放户视频且传输所述H.264码流视频数据以供存储所述视频。所述微视仪11还包括处理器,用以对所述摄像头摄取的视频进行处理,以生成对应所述视频的MJPEG码流视频数据以及H.264码流视频数据,并传输所述MJPEG码流视频数据以供播放户视频且传输所述H.264码流视频数据以供存储所述视频。

请参阅图3,显示为本发明的双码流视频数据传输系统在一具体实施例中的模块示意图。所述双码流视频数据传输系统30应用于所述微视仪11中,所述双码流视频数据传输系统30包括:

视频处理模块31,用以对获取的视频进行处理,以生成对应所述视频的MJPEG码流视频数据以及H.264码流视频数据;

数据传输模块32,用以传输所述MJPEG码流视频数据以供播放户视频且传输所述H.264码流视频数据以供存储所述视频。

进一步的参阅图4,显示为本发明的视频数据处理方法在一具体实施例中的流程示意图。所述视频数据处理方法40应用于所述电子设备12中,所述方法40包括:

41:接收对应一视频的MJPEG码流视频数据以及H.264码流视频数据,对接收的所述H.264码流视频数据进行存储;

42:获取对应所述视频的每帧的时延以及相邻帧之间的帧间隔;于本发明一具体实施例中,根据所述时延TDelay以及帧间隔TInt计算所述补偿窗口的帧数N。具体为,所述补偿窗口的帧数为所述时延与所述帧间隔的比值加1,公式为:N=TDelay/TInt+1。

43:比较所述时延与所述帧间隔的大小,且根据所述比较的结果选取对应的播放模式对接收的所述MJPEG码流视频数据进行所述视频的播放。

于本发明一具体实施例中,所述播放模式包括第一播放模式以及第二播放模式,当所述时延大于或等于所述帧间隔时,即TDelay>=Tint时,此时FDrop>=1,代表丢弃的帧数大于等于播放的帧数,其中FDrop为每帧需要丢弃的帧数。选取所述第一播放模式对接收的所述MJPEG码流视频数据进行所述视频的播放;当所述时延小于所述帧间隔时,即TDelay<Tint时,此时FDrop<1,代表丢弃的帧数小于播放的帧数,选取所述第二播放模式对接收的所述MJPEG码流视频数据进行所述视频的播放。

进一步的,所述第一播放模式包括:通过预定帧数长度N的补偿窗口将所述视频分为多个部分以供分别处理,在每个所述补偿窗口内均选取一MJPEG帧进行播放,且丢弃剩余的其他帧;所述第二播放模式包括:通过预定帧数长度N的补偿窗口将所述视频分为多个部分以供分别处理,在每个所述补偿窗口内均选取一MJPEG帧进行丢弃,且播放剩余的的其他帧。

于本发明一具体实施例中,结合图5所示的第一播放模式应用示意图,所述第一播放模式具体包括:

在一补偿窗口内,接收一视频帧,获取对应所述视频帧的MJPEG帧和H.264帧,其中H.264帧直接进行存储;

判断是否播放过与所述补偿窗口对应的MJPEG帧;

若播放过,则丢弃所述视频帧对应的MJPEG帧;

若没有播放过,则判断所述视频帧是否为所述补偿窗口内的最后一帧,若是所述补偿窗口内的最后一帧,则直接播放所述视频帧对应的MJPEG帧;

若不是所述补偿窗口内的最后一帧,则判断与所述视频帧对应的H.264帧的类型,

H.264帧的类型若是关键帧(I帧),则直接播放所述视频帧对应的MJPEG帧;

H.264帧的类型若是前向预测编码帧(P帧),则计算预设统计窗口对应的信息量的当前EMAnew与所述H.264帧的信息量Sizenew之间的差值,且当所述差值大于或等于预设的阈值Threshold时,丢弃所述视频帧对应的MJPEG帧;采用的公式为EMAnew-Sizenew>=Threshold。其中,EMAnew=α*Sizenew+(1-α)*EMAold,α=2/(C+1)为平滑系数C为统计窗口帧数,窗口越大则信息量实时性越差,波动越小。一般Fps(每秒帧率)为30。EMA初始值为0。一种,EMA为指数平滑平均(Exponential Moving Average)。

丢弃或播放当前视频帧对应的MJPEG帧后,返回所述接收一视频帧的步骤以重新接收与所述补偿窗口对应的新的视频帧,直到当前补偿窗口内的视频帧全部接收完。

于本发明一具体实施例中,结合图6所示的第二播放模式应用示意图,所述第二播放模式包括:

在一补偿窗口内,接收一视频帧,获取对应所述视频帧的MJPEG帧和H.264帧;

判断是否丢弃过与所述补偿窗口对应的MJPEG帧;

若丢弃过,则播放所述视频帧对应的MJPEG帧;

若没有丢弃过,则判断所述视频帧是否为所述补偿窗口内的最后一帧,

若是所述补偿窗口内的最后一帧,则直接丢弃所述视频帧对应的MJPEG帧;

若不是所述补偿窗口内的最后一帧,则判断与所述视频帧对应的H.264帧的类型,

H.264帧的类型若是关键帧(I帧),则直接播放所述视频帧对应的MJPEG帧;

H.264帧的类型若是前向预测编码帧(P帧),则计算预设统计窗口对应的信息量的当前EMAnew与所述H.264帧的信息量Sizenew之间的差值,且当所述差值大于或等于预设的阈值Threshold时,丢弃所述视频帧对应的MJPEG帧;采用的公式为EMAnew-Sizenew>=Threshold。其中,EMAnew=α*Sizenew+(1-α)*EMAold,α=2/(C+1)为平滑系数C为统计窗口帧数,窗口越大则信息量实时性越差,波动越小。一般Fps(每秒帧率)为30。EMA初始值为0。一种,EMA为指数平滑平均(Exponential Moving Average)。

丢弃或播放当前视频帧对应的MJPEG帧后,返回所述接收一视频帧的步骤以重新接收与所述补偿窗口对应的新的视频帧,直到当前补偿窗口内的视频帧全部接收完。

进一步参阅图7,显示为本发明的视频数据处理系统在一具体实施例中的模块示意图。所述视频数据处理系统70应用于所述电子设备12中,所述系统70包括:

数据接收模块71,用以接收对应一视频的MJPEG码流视频数据以及H.264码流视频数据;

存储模块72,用以对所述数据接收模块接收的所述H.264码流视频数据进行存储;

播放模块73,用以获取对应所述视频的每帧的时延以及相邻帧之间的帧间隔;且比较所述时延与所述帧间隔的大小,且根据所述比较的结果选取对应的播放模式对接收的所述MJPEG码流视频数据进行所述视频的播放。

所述视频数据处理系统70为与所述视频数据处理方法40对应的系统项,两者技术方案一一对应,所有关于所述视频数据处理方法40的描述均可应用于本实施例中,在此不一一赘述。

进一步参阅图8,显示为本发明的电子设备在一具体实施例中采用的软件结构示意图。

所述电子设备12在接收到MJPEG码流和H.264码流后,对H.264码流直接进行存储,而同时对H.264码流的类型(I帧或P帧)以及信息量进行判断,根据判断结果对MJPEG码流进行自适应选择性丢帧,且根据丢帧处理后对MJPEG码流进行相应的显示。

本发明具有如下有益效果:

1.采用MJPEG码流做图片实时预览,解码时间短,有效缩短解码延时。

2.采用MJPEG码流做图片实时预览,解码强度低,功耗低,对硬件多媒体性能要求低,可以适配大多数低端机型。

3.采用H.264码流录制多媒体视频,压缩比高,占用空间小。

4.自适应选择性丢帧算法保证在硬件支持的帧率下视频播放较为流畅。

综上所述,本发明的数据传输、处理方法及系统、微视仪及电子设备,在微视仪拍摄到视频时,将视频处理为MJPEG码流视频数据以及H.264码流视频数据的双码流数据进行传输,其中MJPEG码流用于实时视频的播放具有对多媒体处理能力要求低的特点,H.264视频码流用于实时视频的录制具有占用存储空间小的特点,所以,在电子设备端,将MJPEG码流视频数据根据视频的时延以及帧间隔的关系选择相应的播放模式进行播放,减少播放的延时,保证播放视频的质量,且对H.264码流视频数据进行存储,从而实现对拍摄的视频的存储的同时,可以保证视频播放的质量,且降低对终端产品的硬件性能的要求。所以,本发明有效克服了现有技术中的种种缺点而具高度产业利用价值。

上述实施例仅例示性说明本发明的原理及其功效,而非用于限制本发明。任何熟悉此技术的人士皆可在不违背本发明的精神及范畴下,对上述实施例进行修饰或改变。因此,举凡所属技术领域中具有通常知识者在未脱离本发明所揭示的精神与技术思想下所完成的一切等效修饰或改变,仍应由本发明的权利要求所涵盖。

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