本发明涉及视频处理的技术领域,尤其涉及一种像素级的视频加解密方法,以及像素级的视频加解密系统。
背景技术:
经调研,目前业界是不存在能够同时适用于多种终端(ipad、iphone、android pad、android phone、PC)的视频加解密方法。
公司的各种产品都有视频播放的需求,而产品的终端有ipad、iphone、android pad、android phone、PC等各种形式,针对每一种终端单独开发视频加解密方法的成本过于高昂,因此亟需开发一种统一的视频加解密方法,来达到这一目的。
技术实现要素:
为克服现有技术的缺陷,本发明要解决的技术问题是提供了一种像素级的视频加解密方法,其能够同时适用于多种终端来进行视频加解密,通用性好,大大降低了开发成本。
本发明的技术方案是:这种像素级的视频加解密方法,该方法包括以下步骤:
(1)对每一个像素点的数据进行加密,其中每一个像素点的数据都包含红、绿、蓝三个原色与透明度值,红、绿、蓝三个原色的值在0~255之间,透明度值在0~1之间;
(2)在客户端播放时,对扭曲的像素数据进行解密还原后播放。
本发明对每一个像素点的数据进行加密,在客户端播放时,对扭曲的像素数据进行解密还原后播放,因此,该方法能够同时适用于多种终端来进行视频加解密,通用性好,大大降低了开发成本。
还提供了一种像素级的视频加解密系统,该系统包括:
加密模块,其配置来对每一个像素点的数据进行加密,其中每一个像素点的数据都包含红、绿、蓝三个原色与透明度值,红、绿、蓝三个原色的值在0~255之间,透明度值在0~1之间;
解密模块,其配置来在客户端播放时,对扭曲的像素数据进行解密还原后播放。
附图说明
图1所示为根据本发明的像素级的视频加解密方法的流程图。
图2所示为图像帧按矩阵方式保存了每一个像素点的数据。
图3所示为每个像素点加解密的过程。
图4所示为根据本发明的像素级的视频加解密方法的步骤(1)的流程图。
图5所示为根据本发明的像素级的视频加解密方法的步骤(2)的流程图。
具体实施方式
如图1所示,这种像素级的视频加解密方法,该方法包括以下步骤:
(1)对每一个像素点的数据进行加密,其中每一个像素点的数据都包含红、绿、蓝三个原色与透明度值,红、绿、蓝三个原色的值在0~255之间,透明度值在0~1之间;
(2)在客户端播放时,对扭曲的像素数据进行解密还原后播放。
本发明对每一个像素点的数据进行加密,在客户端播放时,对扭曲的像素数据进行解密还原后播放,因此,该方法能够同时适用于多种终端来进行视频加解密,通用性好,大大降低了开发成本。
另外,所述步骤(1)中,加密红色值=255-原红色值/2,加密绿色值=255-原绿色值/2,加密蓝色值=255-原蓝色值/2,加密透明度值=原透明度值/2。
另外,所述步骤(2)中,解密红色值=(255-加密红色值)*2,解密绿色值=(255-加密绿色值)*2,解密蓝色值=(255-加密蓝色值)*2,解密透明度值=加密透明度值*2。
另外,如图4所示,所述步骤(1)包括以下分步骤:
(1.1)取一帧图像数据;
(1.2)取一个像素点的数据;
(1.3)进行像素加密;
(1.4)判断是否已加密所有像素,是则执行步骤(1.5),否则执行步骤(1.2);
(1.5)判断是否已加密所有帧,是则执行步骤(1.6),否则执行步骤(1.1);
(1.6)结束。
另外,如图5所示,所述步骤(2)包括以下分步骤:
(2.1)取一帧图像数据;
(2.2)取一个像素点的数据;
(2.3)进行像素解密;
(2.4)判断是否已解密所有像素,是则执行步骤(2.5),否则执行步骤(2.2);
(2.5)判断是否已解密所有帧,是则执行步骤(2.6),否则执行步骤(2.1);
(2.6)结束。
本领域普通技术人员可以理解,实现上述实施例方法中的全部或部分步骤是可以通过程序来指令相关的硬件来完成,所述的程序可以存储于一计算机可读取存储介质中,该程序在执行时,包括上述实施例方法的各步骤,而所述的存储介质可以是:ROM/RAM、磁碟、光盘、存储卡等。因此,与本发明的方法相对应的,本发明还同时包括一种像素级的视频加解密系统,该系统通常以与方法各步骤相对应的功能模块的形式表示。使用该方法的系统包括:
加密模块,其配置来对每一个像素点的数据进行加密,其中每一个像素点的数据都包含红、绿、蓝三个原色与透明度值,红、绿、蓝三个原色的值在0~255之间,透明度值在0~1之间;
解密模块,其配置来在客户端播放时,对扭曲的像素数据进行解密还原后播放。
另外,所述加密模块中,加密红色值=255-原红色值/2,加密绿色值=255-原绿色值/2,加密蓝色值=255-原蓝色值/2,加密透明度值=原透明度值/2。
另外,所述解密模块中,解密红色值=(255-加密红色值)*2,解密绿色值=(255-加密绿色值)*2,解密蓝色值=(255-加密蓝色值)*2,解密透明度值=加密透明度值*2。
另外,所述加密模块执行以下步骤:
(1.1)取一帧图像数据;
(1.2)取一个像素点的数据;
(1.3)进行像素加密;
(1.4)判断是否已加密所有像素,是则执行步骤(1.5),否则执行步骤(1.2);
(1.5)判断是否已加密所有帧,是则执行步骤(1.6),否则执行步骤(1.1);
(1.6)结束。
另外,所述解密模块执行以下步骤:
(2.1)取一帧图像数据;
(2.2)取一个像素点的数据;
(2.3)进行像素解密;
(2.4)判断是否已解密所有像素,是则执行步骤(2.5),否则执行步骤(2.2);
(2.5)判断是否已解密所有帧,是则执行步骤(2.6),否则执行步骤(2.1);
(2.6)结束。
以上所述,仅是本发明的较佳实施例,并非对本发明作任何形式上的限制,凡是依据本发明的技术实质对以上实施例所作的任何简单修改、等同变化与修饰,均仍属本发明技术方案的保护范围。