一种视频数据传输方法、视频数据解码方法及相关装置

文档序号:473034 发布日期:2021-12-31 浏览:24次 >En<

阅读说明:本技术 一种视频数据传输方法、视频数据解码方法及相关装置 (Video data transmission method, video data decoding method and related devices ) 是由 张贞雷 李拓 满宏涛 刘同强 周玉龙 邹晓峰 王贤坤 于 2021-12-06 设计创作,主要内容包括:本申请公开了一种视频数据传输方法,应用于基板管理控制芯片,视频数据传输方法包括:按照乒乓操作的结构将视频压缩数据分别存储至第一存储空间和第二存储空间;从第一存储空间和第二存储空间中读取相同字节长度的数据;判断第一待传输数据和第二待传输数据的相似度是否大于或等于预设值;若是,则将添加有第一传输标识符的第一待传输数据设置为当前帧数据,将与第一传输标识符对应的第二传输标识符设置为后一帧数据;将当前帧数据和后一帧数据发送至视频数据接收端。本申请能够降低数据传输对网络带宽的占用。本申请还公开了一种视频数据解码方法、视频数据传输装置、视频数据解码装置、电子设备及存储介质,具有以上有益效果。(The application discloses a video data transmission method, which is applied to a substrate management control chip and comprises the following steps: respectively storing the video compression data to a first storage space and a second storage space according to a ping-pong operation structure; reading data with the same byte length from the first storage space and the second storage space; judging whether the similarity of the first data to be transmitted and the second data to be transmitted is greater than or equal to a preset value; if so, setting the first to-be-transmitted data added with the first transmission identifier as current frame data, and setting a second transmission identifier corresponding to the first transmission identifier as next frame data; and sending the current frame data and the next frame data to a video data receiving end. The method and the device can reduce the occupation of data transmission on the network bandwidth. The application also discloses a video data decoding method, a video data transmission device, a video data decoding device, an electronic device and a storage medium, which have the beneficial effects.)

一种视频数据传输方法、视频数据解码方法及相关装置

技术领域

本申请涉及数据处理领域,特别涉及一种视频数据传输方法、视频数据解码方法及相关装置。

背景技术

传统的基板管理控制芯片中视频压缩系统的传输流程是:首先VGA将主机HOST的视频信息传递到视频压缩控制模块进行视频压缩,完成压缩之后,将数据写入到DDR,EMAC(网卡)驱动读取完成压缩的数据,通过网络将视频数据传输至远程,进行远程显示。

但是上述传统方案存在视频数据大,占用过网络带宽的情况。基板管理芯片的一个重要功能就是要实现远程的监控管理,在应用场景中,除了视频压缩功能要占用网络带宽外,很多其他的功能也要占用网络带宽,比如在远程进行固件更新(固件文件通过网络传输到本地)或者是读取/设置本地的服务器状态信息等。如果视频功能占用的网络带宽很大,将对基板管理控制芯片的其他功能造成很大的影响,在一定或者很大程度上影响基板管理控制芯片的性能,尤其是本地服务器遇到需要紧急处理的情况,甚至会造成本地服务器的安全风险。

因此,如何降低数据传输对网络带宽的占用是本领域技术人员目前需要解决的技术问题。

发明内容

本申请的目的是提供一种视频数据传输方法、一种视频数据解码方法、一种视频数据传输装置、一种视频数据解码装置、一种电子设备及一种存储介质,能够降低数据传输对网络带宽的占用。

为解决上述技术问题,本申请提供一种视频数据传输方法,应用于基板管理控制芯片,该视频数据传输方法包括:

对主机端发送的视频数据进行压缩得到视频压缩数据,并按照乒乓操作的结构将所述视频压缩数据分别存储至第一存储空间和第二存储空间;

若接收到数据传输指令,则从所述第一存储空间中读取预设字节长度的第一待传输数据,并从所述第二存储空间中读取所述预设字节长度的第二待传输数据;

判断所述第一待传输数据和所述第二待传输数据的相似度是否大于或等于预设值;

若是,则将添加有第一传输标识符的所述第一待传输数据设置为当前帧数据,将与所述第一传输标识符对应的第二传输标识符设置为后一帧数据;

将所述当前帧数据和所述后一帧数据发送至视频数据接收端。

可选的,在判断所述第一待传输数据和所述第二待传输数据的相似度是否大于预设值之后,还包括:

若所述第一待传输数据和所述第二待传输数据的相似度小于所述预设值,则将所述第一待传输数据设置为所述当前帧数据,将所述第二待传输数据设置为所述后一帧数据。

可选的,在所述将添加有第一传输标识符的所述第一待传输数据设置为当前帧数据之前,还包括:

生成所述第一待传输数据对应的第一传输标识符;其中,所述第一传输标识符包括标识字段Flag、帧类型字段First_frame,起始位置字段Begin_cnt,重复数据长度字段pixel_num;所述第一传输标识符的帧类型字段First_frame的值为1。

可选的,将添加有第一传输标识符的所述第一待传输数据设置为当前帧数据,包括:

在所述第一待传输数据之前添加所述第一传输标识符,得到所述当前帧数据。

可选的,在将与所述第一传输标识符对应的第二传输标识符设置为后一帧数据之前,还包括:

生成所述第一传输标识符对应的第二传输标识符;其中,所述第二传输标识符包括标识字段Flag、帧类型字段First_frame,起始位置字段Begin_cnt,重复数据长度字段pixel_num;所述第二传输标识符的帧类型字段First_frame的值为0,所述第二传输标识符中标识字段Flag、起始位置字段Begin_cnt和重复数据长度字段pixel_num的值均与所述第一传输标识符相同。

本申请还提供了一种视频数据解码方法,应用于视频数据接收端,所述视频数据解码方法包括:

接收基板管理控制芯片通过上述视频数据传输方法传输的当前帧数据和后一帧数据;

判断所述当前帧数据中是否包括第一传输标识符;若是,则对所述当前帧数据中的第一待传输数据进行解码得到第一解码结果,并将所述第一解码结果添加至缓存;

判断所述后一帧数据中是否包括第二传输标识符;若是,则从缓存中读取所述第一解码结果作为所述后一帧数据对应的第二解码结果;

根据所述第一解码结果和所述第二解码结果生成待显示视频数据。

本申请还提供了一种视频数据传输装置,应用于基板管理控制芯片,所述视频数据传输装置包括:

数据存储模块,用于对主机端发送的视频数据进行压缩得到视频压缩数据,并按照乒乓操作的结构将所述视频压缩数据分别存储至第一存储空间和第二存储空间;

数据读取模块,用于若接收到数据传输指令,则从所述第一存储空间中读取预设字节长度的第一待传输数据,并从所述第二存储空间中读取所述预设字节长度的第二待传输数据;

相似度判断模块,用于判断所述第一待传输数据和所述第二待传输数据的相似度是否大于或等于预设值;

数据设置模块,用于若所述第一待传输数据和所述第二待传输数据的相似度大于或等于所述预设值,则将添加有第一传输标识符的所述第一待传输数据设置为当前帧数据,将与所述第一传输标识符对应的第二传输标识符设置为后一帧数据;

数据传输模块,用于将所述当前帧数据和所述后一帧数据发送至视频数据接收端。

本申请还提供了一种视频数据解码装置,应用于视频数据接收端,所述视频数据解码装置包括:

数据接收模块,用于接收基板管理控制芯片通过上述视频数据传输方法传输的当前帧数据和后一帧数据;

第一判断模块,用于判断所述当前帧数据中是否包括第一传输标识符;若是,则对所述当前帧数据中的第一待传输数据进行解码得到第一解码结果,并将所述第一解码结果添加至缓存;

第二判断模块,用于判断所述后一帧数据中是否包括第二传输标识符;若是,则从缓存中读取所述第一解码结果作为所述后一帧数据对应的第二解码结果;

显示模块,用于根据所述第一解码结果和所述第二解码结果生成待显示视频数据。

本申请还提供了一种存储介质,其上存储有计算机程序,所述计算机程序执行时实现上述视频数据传输方法和/或上述一种视频数据解码方法的步骤。

本申请还提供了一种电子设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器调用所述存储器中的计算机程序时实现上述视频数据传输方法和/或上述一种视频数据解码方法的步骤。

本申请提供了一种频数据传输方法,应用于基板管理控制芯片,所述视频数据传输方法包括:对主机端发送的视频数据进行压缩得到视频压缩数据,并按照乒乓操作的结构将所述视频压缩数据分别存储至第一存储空间和第二存储空间;若接收到数据传输指令,则从所述第一存储空间中读取预设字节长度的第一待传输数据,并从所述第二存储空间中读取所述预设字节长度的第二待传输数据;判断所述第一待传输数据和所述第二待传输数据的相似度是否大于或等于预设值;若是,则将添加有第一传输标识符的所述第一待传输数据设置为当前帧数据,将与所述第一传输标识符对应的第二传输标识符设置为后一帧数据;将所述当前帧数据和所述后一帧数据发送至视频数据接收端。

本申请按照乒乓操作的结构将所述视频压缩数据分别存储至第一存储空间和第二存储空间,在需要将视频压缩数据传输至数据接收端时,从所述第一存储空间中读取预设字节长度的第一待传输数据,并从所述第二存储空间中读取所述预设字节长度的第二待传输数据。若第一待传输数据和第二待传输数据的相似度大于或等于预设值,则认为这两份数据为内容相同的数据,此时将添加有第一传输标识符的所述第一待传输数据设置为当前帧数据,将与所述第一传输标识符对应的第二传输标识符设置为后一帧数据,进而将当前帧数据和后一帧数据发送至视频数据接收端。通过上述方式能够避免相同数据重复传输,进而降低了数据传输对网络带宽的占用。本申请同时还提供了一种视频数据解码方法、一种视频数据传输装置、一种视频数据解码装置、一种电子设备及一种存储介质,具有上述有益效果,在此不再赘述。

附图说明

为了更清楚地说明本申请实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1为本申请实施例所提供的一种视频数据传输方法的流程图;

图2为本申请实施例所提供的一种视视频数据解码方法的流程图;

图3为传统方案中压缩视频数据传输方案示意图;

图4为本申请实施例所提供的一种压缩视频数据传输方案示意图;

图5为本申请实施例所提供的一种视频数据传输装置的结构示意图;

图6为本申请实施例所提供的一种视频数据解码装置的结构示意图。

具体实施方式

为使本申请实施例的目的、技术方案和优点更加清楚,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本申请保护的范围。

下面请参见图1,图1为本申请实施例所提供的一种视频数据传输方法的流程图。

具体步骤可以包括:

S101:对主机端发送的视频数据进行压缩得到视频压缩数据,并按照乒乓操作的结构将所述视频压缩数据分别存储至第一存储空间和第二存储空间;

其中,本实施例可以应用于基板管理控制芯片,基板管理控制系统通常指服务器领域中对服务器的状态(温度,风扇,主CPU运行情况等)进行监控的系统,基板管理控制芯片还可以将本地的视频信息,通过网络传递给远端,供远端显示和监控。

接收到主机端发送的视频压缩数据后,可以利用视频压缩模块对视频数据进行压缩得到视频压缩数据。在得到视频压缩数据值后,可以以帧为单位,按照乒乓操作的结构,分别写入DDR中A和B两块区域,即第0帧写入地址A,第1帧写入地址B,第2帧写入地址A,第3帧写入地址B……。通过上述方式可以使得第一存储空间存储奇数帧的视频压缩数据,第二存储空间存储偶数帧的视频压缩数据。在进行相邻帧数据比较时,本实施例可以将第N帧与第N+1帧进行对比,将第N+2帧与第N+3帧进行对比,将N+4帧与第N+5帧进行对比,……,以此类推。在相邻帧数据比较后,可以对后一帧数据(添加标识符修改之后的)进行暂存,然后优先发送当前帧数据,再发送后一帧数据。例如在比较0和第1帧的时候,是将第0和第1帧都从DDR中读回,但是会优先发送第0帧,再发送第1帧,因此需将第1帧(添加标识符修改之后的)进行暂存。

S102:若接收到数据传输指令,则从所述第一存储空间中读取预设字节长度的第一待传输数据,并从所述第二存储空间中读取所述预设字节长度的第二待传输数据;

其中,在得到数据传输指令后可以分别从第一存储空间和第二存储空间读取相同长度的第一待传输数据和第二待传输数据。作为一种可行的实施方式,本实施例可以实时统计网络带宽,根据网络带宽确定读取的数据长度,即:根据网络带宽确定预设字节长度,网络带宽的大小与预设字节长度正相关。

S103:判断第一待传输数据和第二待传输数据的相似度是否大于或等于预设值;若是,则进入S104;若否,则结束流程。

其中,由于本实施例按照乒乓操作的结构将所述视频压缩数据分别存储至第一存储空间和第二存储空间,因此第一待传输数据和第二待传输数据为相邻帧的视频数据,若第一待传输数据和第二待传输数据的相似度,则可以判定第一待传输数据和所述第二待传输数据对应的图像内容为相同内容。若是,则可以进入S104的相关操作;若否,则可以结束本实施例的操作流程,还可以将第一待传输数据设置为当前帧数据、将第二待传输数据设置为后一帧数据,进而将当前帧数据和后一帧数据发送至视频数据接收端。因此在判断所述第一待传输数据和所述第二待传输数据的相似度是否大于预设值之后,若所述第一待传输数据和所述第二待传输数据的相似度小于所述预设值,则将所述第一待传输数据设置为所述当前帧数据,将所述第二待传输数据设置为所述后一帧数据。

具体的,本实施例可以生成所述第一待传输数据对应的第一传输标识符;其中,所述第一传输标识符包括标识字段Flag、帧类型字段First_frame,起始位置字段Begin_cnt,重复数据长度字段pixel_num;所述第一传输标识符的帧类型字段First_frame的值为1。本实施例还可以生成所述第一传输标识符对应的第二传输标识符;其中,所述第二传输标识符包括标识字段Flag、帧类型字段First_frame,起始位置字段Begin_cnt,重复数据长度字段pixel_num;所述第二传输标识符的帧类型字段First_frame的值为0,所述第二传输标识符中标识字段Flag、起始位置字段Begin_cnt和重复数据长度字段pixel_num的值均与所述第一传输标识符相同。

S104:将添加有第一传输标识符的所述第一待传输数据设置为当前帧数据,将与所述第一传输标识符对应的第二传输标识符设置为后一帧数据;

作为一种可行的实施方式,本实施例可以在所述第一待传输数据之前添加所述第一传输标识符,得到所述当前帧数据。

S105:将所述当前帧数据和所述后一帧数据发送至视频数据接收端。

本实施例按照乒乓操作的结构将所述视频压缩数据分别存储至第一存储空间和第二存储空间,在需要将视频压缩数据传输至数据接收端时,从所述第一存储空间中读取预设字节长度的第一待传输数据,并从所述第二存储空间中读取所述预设字节长度的第二待传输数据。若第一待传输数据和第二待传输数据的相似度大于或等于预设值,则认为这两份数据为内容相同的数据,此时将添加有第一传输标识符的所述第一待传输数据设置为当前帧数据,将与所述第一传输标识符对应的第二传输标识符设置为后一帧数据,进而将当前帧数据和后一帧数据发送至视频数据接收端。通过上述方式能够避免相同数据重复传输,进而降低了数据传输对网络带宽的占用。

下面请参见图2,图2为本申请实施例所提供的一种视视频数据解码方法的流程图。

具体步骤可以包括:

S201:接收基板管理控制芯片传输的当前帧数据和后一帧数据;

本实施例可以应用于视频数据接收端,上述当前帧数据和后一帧数据可以为按照图1对应实施例所述的视频数据传输方法传输的数据

S202:判断所述当前帧数据中是否包括第一传输标识符;若是,则对所述当前帧数据中的第一待传输数据进行解码得到第一解码结果,并将所述第一解码结果添加至缓存;

进一步的,若当前帧数据中不包括第一传输标识符,则可以直接对当前帧数据和后一帧数据进行解码,得到第一解码结果和第二解码结果。

S203:判断所述后一帧数据中是否包括第二传输标识符;若是,则从缓存中读取所述第一解码结果作为所述后一帧数据对应的第二解码结果;

进一步的,若后一帧数据中不包括第二传输标识符,则可以对后一帧数据进行解码得到第二解码结果。

S204:根据所述第一解码结果和所述第二解码结果生成待显示视频数据。

本实施例接收图1对应实施例传输的当前帧数据和后一帧数据,若当前帧数据中包括第一传输标识符,则说明当前帧数据为重复数据的第一帧,若后一帧数据中包括第二传输标识符,则说明后一帧数据为当前帧数据的重复数据,此时可以从缓存中读取所述第一解码结果作为所述后一帧数据对应的第二解码结果,进而根据所述第一解码结果和所述第二解码结果生成待显示视频数据。通过上述方式能够避免相同数据重复传输,进而降低了数据传输对网络带宽的占用,还能够降低解码数据的计算量。

下面通过在实际应用中的实施例说明上述实施例描述的流程。

请参见图3,图3为传统方案中压缩视频数据传输方案示意图,本实施例提供的压缩视频传输流程包括:主机HOST的视频信息传递到基板管理控制芯片的视频压缩控制模块(CMP,compress);视频压缩控制模块对原始的视频数据进行压缩,并且将压缩完成的数据写入到DDR。网络驱动发起读压缩视频数据的命令,将读回的数据进行网络打包。网卡EMAC将包含视频数据的网络包转换成以太网帧格式,发给端口物理层PHY。端口物理层PHY通过网线/网络将视频数据传递到远端。

上述传统方案中,存在如下弊端:主机显卡的视频数据的一直不断的产生,数据量巨大的视频信息在通过网络发送的时候,将极大的占用网络带宽,而基板管理芯片的一个重要功能就是要实现远程的监控管理,在应用场景中,除了视频压缩功能要占用网络带宽外,很多其他的功能也要占用网络带宽,比如在远程进行固件更新(固件文件通过网络传输到本地)或者是读取/设置本地的服务器状态信息等。如果视频功能占用的网络带宽很大,将对基板管理控制芯片的其他功能造成很大的影响,在一定或者很大程度上影响基板管理控制芯片的性能,尤其是本地服务器遇到需要紧急处理的情况,甚至会造成本地服务器的安全风险,如果此时SoC系统需要运行比较重要的应用程序(需快速响应的)此时系统将无法满足此需求。SoC(System on Chip,简称SoC)即片上系统,SoC将微处理器、模拟IP核、数字IP核和存储器(或片外存储控制接口)集成在单一芯片上,SoC通常是客户定制的,或是面向特定用途的标准产品。

针对上述传统方案中存在的缺陷,本申请提供一种新的基板管理控制芯片中降低网络带宽的方案。本方案在传统方案基础上进行了优化,视频压缩模块在写压缩数据的时候采取乒乓操作,写入A/B两块DDR地址空间,修改EMAC驱动,依次分别读取A/B两块区域,EMAC内部增加COMP比较单元,比较前后两帧视频数据在当前描述符长度上的一致性,如果后一帧的在当前描述符下与前一帧的数据相同,则将对应的数据修改为标志位,然后再远端视频解码时候,解析对应的标志位信息。由于在真实应用场景中,前后两帧变化很小或者不变化,或者只局部发生变化的概率是极大的,因此本方案能够极大的减少网络传输的视频数据量。

请参见图4,图4为本申请实施例所提供的一种压缩视频数据传输方案示意图,本方案的实现流程如下:

步骤1:主机端将视频信息传递给基板管理控制芯片的视频压缩控制模块CMP;

其中,本地显卡输出的原始图像信息,在通过网络传给远端之前,需要可以使用视频压缩控制模块CMP进行视频压缩以便降低视频数据量和网络带宽。

步骤2:视频压缩模块CMP完成视频压缩后,以帧为单位,按照乒乓操作的结构,分别写入DDR中A和B两块区域,即第0帧写入地址A,第1帧写入地址B,第2帧写入地址A,第3帧写入地址B……。

步骤3:CPU上运行的网络驱动,依次发起读A和B地址的操作,值得注意的是,每次发起的操作,读的数据长度需要统一,比如,都是读256字节/1024字节等。 同时这个数据长度可以用户根据实时统计网络带宽进行调整,以最大程度上降低视频数据所占的网络带宽。

步骤4:网卡EMAC中新增的COMP(compare,比较单元),对网络驱动本次读回的压缩视频数据进行比较,如果一致则将后一帧中对应的数据修改为标识符的形式,标识符格式为{Flag,Fisrt_frame,Begin_cnt,pixel_num},其中 Flag为标识符,可参考设置为32’hFFFFFFFF, Fisrt_frame设置为0,表示当前数据为后一帧,需要在解码端需要补全的数据。Begin_cnt,表示当前数据段在帧中的起始位置, pixel_num表示重复数据的长度。

进一步的对应当前帧的修改,需在与后一帧重复的数据端之前加入标识符{Flag,Fisrt_frame,Begin_cnt,pixel_num},其中可参考设置为32’hFFFFFFFF, Fisrt_frame设置为1,表示当前数据为当前帧,需要在解码端进行缓存的数据(以备后一帧补全数据之用)。Begin_cnt,表示当前数据段在帧中的起始位置, pixel_num表示重复数据的长度。根据以上论述可知,当前帧需要传输标识符+重复的数据端,而后一帧则只需要传输标识符。

步骤5:网卡EMAC将经过COMP模块之后的两帧数据分别发送至远端,远端的解码程序也需要对应的修改,在检测到Flag=32’hFFFFFFFF之后,再检测 Fisrt_frame,如果Fisrt_frame=1,则需缓存从 Begin_cnt开启的 pixel_num数量的数据。同时在检测到Flag=32’hFFFFFFFF之后,如果再检测到 Fisrt_frame,如果 Fisrt_frame=0,则直接依次到缓存中取pixel_num数量的数据进行补全当前帧即可。

本实施例在传统方案基础上进行了优化,视频压缩模块在写压缩数据的时候采取乒乓操作,写入A/B两块DDR地址空间,修改EMAC驱动,依次分别读取A/B两块区域,EMAC内部增加COMP比较单元,比较前后两帧视频数据在当前描述符长度上的一致性,如果后一帧的在当前描述符下与前一帧的数据相同,则将对应的数据修改为标志符,同时对应的修改当前帧数据(增加标识符),然后在远端视频解码时候,解析对应的标志位信息,进行数据的补全操作。由于在真实应用场景中,前后两帧变化很小或者不变化,或者只局部发生变化的概率是极大的,因此本方案能够极大的减少网络传输的视频数据量。

本实施例在网卡EMAC内部增加COMP比较功能,比较前后两帧数据在同一区域的数据一致性,如果数据一致,则后一帧对应的区域只传标识符,当前帧数据传输标识符+正常数据,在到解码端进行后一帧的数据补全,极大降低了网络传输的视频数据量,降低了网络带宽,提升系统性能。本实施例中网络驱动可实时检测网络带宽,动态调整网络驱动读取DDR中的数据长度,可达到最佳的数据长度。本实施例采用乒乓结构存储压缩视频数据,只修改了传统方案中的局部且实现不复杂,但是可极大降低基板管理控制芯片中的视频数据量,降低网络带宽。

请参见图5,图5为本申请实施例所提供的一种视频数据传输装置的结构示意图,该装置应用于基板管理控制芯片,所述视频数据传输装置包括:

数据存储模块501,用于对主机端发送的视频数据进行压缩得到视频压缩数据,并按照乒乓操作的结构将所述视频压缩数据分别存储至第一存储空间和第二存储空间;

数据读取模块502,用于若接收到数据传输指令,则从所述第一存储空间中读取预设字节长度的第一待传输数据,并从所述第二存储空间中读取所述预设字节长度的第二待传输数据;

相似度判断模块503,用于判断所述第一待传输数据和所述第二待传输数据的相似度是否大于或等于预设值;

数据设置模块504,用于若所述第一待传输数据和所述第二待传输数据的相似度大于或等于所述预设值,则将添加有第一传输标识符的所述第一待传输数据设置为当前帧数据,将与所述第一传输标识符对应的第二传输标识符设置为后一帧数据;

数据传输模块505,用于将所述当前帧数据和所述后一帧数据发送至视频数据接收端。

本实施例按照乒乓操作的结构将所述视频压缩数据分别存储至第一存储空间和第二存储空间,在需要将视频压缩数据传输至数据接收端时,从所述第一存储空间中读取预设字节长度的第一待传输数据,并从所述第二存储空间中读取所述预设字节长度的第二待传输数据。若第一待传输数据和第二待传输数据的相似度大于或等于预设值,则认为这两份数据为内容相同的数据,此时将添加有第一传输标识符的所述第一待传输数据设置为当前帧数据,将与所述第一传输标识符对应的第二传输标识符设置为后一帧数据,进而将当前帧数据和后一帧数据发送至视频数据接收端。通过上述方式能够避免相同数据重复传输,进而降低了数据传输对网络带宽的占用。

进一步的,还包括:

数据设置模块,用于在判断所述第一待传输数据和所述第二待传输数据的相似度是否大于预设值之后,若所述第一待传输数据和所述第二待传输数据的相似度小于所述预设值,则将所述第一待传输数据设置为所述当前帧数据,将所述第二待传输数据设置为所述后一帧数据。

进一步的,还包括:

第一标识符生成模块,用于在所述将添加有第一传输标识符的所述第一待传输数据设置为当前帧数据之前,生成所述第一待传输数据对应的第一传输标识符;其中,所述第一传输标识符包括标识字段Flag、帧类型字段First_frame,起始位置字段Begin_cnt,重复数据长度字段pixel_num;所述第一传输标识符的帧类型字段First_frame的值为1。

进一步的,数据设置模块504用于在所述第一待传输数据之前添加所述第一传输标识符,得到所述当前帧数据。

进一步的,还包括:

第二标识符生成模块,用于在将与所述第一传输标识符对应的第二传输标识符设置为后一帧数据之前,生成所述第一传输标识符对应的第二传输标识符;其中,所述第二传输标识符包括标识字段Flag、帧类型字段First_frame,起始位置字段Begin_cnt,重复数据长度字段pixel_num;所述第二传输标识符的帧类型字段First_frame的值为0,所述第二传输标识符中标识字段Flag、起始位置字段Begin_cnt和重复数据长度字段pixel_num的值均与所述第一传输标识符相同。

请参见图6,图6为本申请实施例所提供的一种视频数据解码装置的结构示意图,该装置应用于视频数据接收端,所述视频数据解码装置包括:

数据接收模块601,用于接收基板管理控制芯片通过权利要求1至5任一项所述的视频数据传输方法传输的当前帧数据和后一帧数据;

第一判断模块602,用于判断所述当前帧数据中是否包括第一传输标识符;若是,则对所述当前帧数据中的第一待传输数据进行解码得到第一解码结果,并将所述第一解码结果添加至缓存;

第二判断模块603,用于判断所述后一帧数据中是否包括第二传输标识符;若是,则从缓存中读取所述第一解码结果作为所述后一帧数据对应的第二解码结果;

显示模块604,用于根据所述第一解码结果和所述第二解码结果生成待显示视频数据。

本实施例接收图1对应实施例传输的当前帧数据和后一帧数据,若当前帧数据中包括第一传输标识符,则说明当前帧数据为重复数据的第一帧,若后一帧数据中包括第二传输标识符,则说明后一帧数据为当前帧数据的重复数据,此时可以从缓存中读取所述第一解码结果作为所述后一帧数据对应的第二解码结果,进而根据所述第一解码结果和所述第二解码结果生成待显示视频数据。通过上述方式能够避免相同数据重复传输,进而降低了数据传输对网络带宽的占用,还能够降低解码数据的计算量。

由于装置部分的实施例与方法部分的实施例相互对应,因此装置部分的实施例请参见方法部分的实施例的描述,这里暂不赘述。

本申请还提供了一种存储介质,其上存有计算机程序,该计算机程序被执行时可以实现上述上述视频数据传输方法和/或上述一种视频数据解码方法所提供的步骤。该存储介质可以包括:U盘、移动硬盘、只读存储器(Read-Only Memory ,ROM)、随机存取存储器(Random Access Memory ,RAM)、磁碟或者光盘等各种可以存储程序代码的介质。

本申请还提供了一种电子设备,可以包括存储器和处理器,所述存储器中存有计算机程序,所述处理器调用所述存储器中的计算机程序时,可以实现上述视频数据传输方法和/或上述一种视频数据解码方法所提供的步骤。当然所述电子设备还可以包括各种网络接口,电源等组件。

说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本申请原理的前提下,还可以对本申请进行若干改进和修饰,这些改进和修饰也落入本申请权利要求的保护范围内。

还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的状况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。

17页详细技术资料下载
上一篇:一种医用注射器针头装配设备
下一篇:HEVC中邻近块的运动矢量存储方法及系统

网友询问留言

已有0条留言

还没有人留言评论。精彩留言会获得点赞!

精彩留言,会给你点赞!

技术分类