CN117241068B - 一种视频字幕生成方法及装置 - Google Patents
一种视频字幕生成方法及装置 Download PDFInfo
- Publication number
- CN117241068B CN117241068B CN202311514701.2A CN202311514701A CN117241068B CN 117241068 B CN117241068 B CN 117241068B CN 202311514701 A CN202311514701 A CN 202311514701A CN 117241068 B CN117241068 B CN 117241068B
- Authority
- CN
- China
- Prior art keywords
- png
- graph
- data
- channel data
- color channel
- 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.)
- Active
Links
- 238000000034 method Methods 0.000 title claims abstract description 64
- 230000006835 compression Effects 0.000 claims abstract description 85
- 238000007906 compression Methods 0.000 claims abstract description 85
- 230000006837 decompression Effects 0.000 claims abstract description 37
- 238000004806 packaging method and process Methods 0.000 claims abstract description 28
- 230000002194 synthesizing effect Effects 0.000 claims abstract description 7
- 239000002131 composite material Substances 0.000 claims description 13
- 238000001914 filtration Methods 0.000 claims description 8
- 230000015572 biosynthetic process Effects 0.000 claims description 7
- 238000003786 synthesis reaction Methods 0.000 claims description 7
- 238000005538 encapsulation Methods 0.000 description 18
- 238000003860 storage Methods 0.000 description 14
- 238000010586 diagram Methods 0.000 description 13
- 230000008569 process Effects 0.000 description 11
- 230000006870 function Effects 0.000 description 9
- 230000006872 improvement Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 7
- 230000000694 effects Effects 0.000 description 7
- 238000005516 engineering process Methods 0.000 description 6
- 238000012545 processing Methods 0.000 description 6
- 230000005540 biological transmission Effects 0.000 description 5
- 230000009286 beneficial effect Effects 0.000 description 3
- 238000006243 chemical reaction Methods 0.000 description 3
- 239000003086 colorant Substances 0.000 description 3
- 230000018109 developmental process Effects 0.000 description 3
- 238000004519 manufacturing process Methods 0.000 description 3
- 238000009877 rendering Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000000750 progressive effect Effects 0.000 description 2
- 230000007480 spreading Effects 0.000 description 2
- 238000003892 spreading Methods 0.000 description 2
- 230000032683 aging Effects 0.000 description 1
- 230000003321 amplification Effects 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 230000001413 cellular effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000004891 communication Methods 0.000 description 1
- 238000013480 data collection Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000010365 information processing Effects 0.000 description 1
- 230000005055 memory storage Effects 0.000 description 1
- 239000000203 mixture Substances 0.000 description 1
- 238000003199 nucleic acid amplification method Methods 0.000 description 1
- 229920001296 polysiloxane Polymers 0.000 description 1
- 239000010979 ruby Substances 0.000 description 1
- 229910001750 ruby Inorganic materials 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000003068 static effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
Abstract
本说明书实施例公开了一种视频字幕生成方法,包括:对任一PNG图,对该PNG图的颜色通道数据进行加密操作和第一压缩操作,得到该PNG图对应的颜色通道压缩数据;以及,对该PNG图的目标alpha通道数据进行第二压缩操作,得到该PNG图对应的alpha通道压缩数据;将颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装,得到封装文件;当判断需要播放服务器存储的目标视频时,对封装文件进行解压缩操作和解密操作,得到颜色通道数据和目标alpha通道数据;将解密得到的颜色通道数据和解压缩得到的目标alpha通道数据与目标视频进行合成,得到合成视频,以使在播放合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕。
Description
技术领域
本申请涉及计算机技术领域,尤其涉及一种视频字幕生成方法及装置。
背景技术
现有技术中,在各种视频中添加字幕,可以有效提高视频内容的丰富性,也便于理解视频内容,因而受到欢迎。
较为常用的为视频添加字幕的方式是利用终端将动态PNG序列图直接对视频进行渲染,从而形成带字幕的视频。由于动态PNG序列图本身体量较大,这种添加字幕的方式会占用大量资源,效率较低。另外,若其他终端需要播放带字幕的视频,则需要将带字幕的视频分别发送给各终端,也不利于字幕效果或字幕内容的传播。
特别的,随着导播技术的发展,将远端形成的视频画面,特别是直播视频画面,推送给各终端进行播放,已被广泛应用,这中间也会产生对视频添加字幕的需求。若是将远端产生的视频画面先用终端添加字幕,再推送给各终端进行播放,无疑将大大降低字幕生成效率,降低导播效果和效率,影响用户体验。
有鉴于此,需要更高效的视频字幕生成方案。
发明内容
本说明书实施例提供一种视频字幕生成方法及装置,用以解决如何更高效地生成视频字幕的技术问题。
为解决上述技术问题,本说明书实施例提供如下技术方案:
本说明书实施例提供一种视频字幕生成方法,所述方法包括:
获取PNG图序列后,对所述PNG图序列中的任一PNG图,对该PNG图的颜色通道数据进行加密操作,得到该PNG图对应的颜色通道加密数据;对该PNG图对应的颜色通道加密数据进行第一压缩操作,得到该PNG图对应的颜色通道压缩数据;以及,对该PNG图的目标alpha通道数据进行第二压缩操作,得到该PNG图对应的alpha通道压缩数据;
将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装,得到封装文件,所述封装文件存储于服务器;
当判断需要播放所述服务器存储的目标视频时,对所述封装文件进行解压缩操作和解密操作,得到颜色通道数据和目标alpha通道数据;
将解密得到的颜色通道数据和解压缩得到的目标alpha通道数据与所述目标视频进行合成,得到合成视频,以使在播放所述合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕。
本说明书实施例提供一种视频字幕生成装置,所述装置包括:
加密压缩模块,用于获取PNG图序列后,对所述PNG图序列中的任一PNG图,对该PNG图的颜色通道数据进行加密操作,得到该PNG图对应的颜色通道加密数据;对该PNG图对应的颜色通道加密数据进行第一压缩操作,得到该PNG图对应的颜色通道压缩数据;以及,对该PNG图的目标alpha通道数据进行第二压缩操作,得到该PNG图对应的alpha通道压缩数据;
封装模块,用于将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装,得到封装文件,所述封装文件存储于服务器;
解密解压模块,用于当判断需要播放所述服务器存储的目标视频时,对所述封装文件进行解压缩操作和解密操作,得到颜色通道数据和目标alpha通道数据;
字幕合成模块,用于将解密得到的颜色通道数据和解压缩得到的目标alpha通道数据与所述目标视频进行合成,得到合成视频,以使在播放所述合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕。
本说明书实施例采用的上述至少一个技术方案能够达到以下有益效果:
通过对PNG序列中各PNG图进行加密操作和压缩操作,可以得到各PNG图对应的颜色通道压缩数据和alpha通道压缩数据。将各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装得到封装文件,封装文件用于生成图文字幕。这样一来,一方面,在封装前已进行过加密操作,可以有效保障用于生成视频字幕的文件的安全性;另一方面,在封装前已进行过压缩操作,可以有效降低封装文件的体量,便于存储;再一方面,是对各PNG图对应的颜色通道压缩数据和alpha通道压缩数据进行封装,可以有效提高封装效率,缩短封装时间。
在此基础上,当需要对视频添加字幕时,就对封装文件进行解压缩和解密操作,得到PNG序列中各PNG图对应的颜色通道数据和目标alpha通道数据,仅通过各PNG图对应的颜色通道数据和目标alpha通道数据与视频合成,就可以得到带字幕的视频。由于是将各PNG图对应的颜色通道数据和目标alpha通道数据与视频合成,且相对于PNG序列,颜色通道数据和目标alpha通道数据体量大大降低,故可以大大提高合成效率,降低合成占用资源量,从而提高视频字幕生成效率。
通过服务器存储封装文件和视频文件,这样所得的合成视频可以由服务器发送给各种视频,从而提高字幕传播速度和传播效率。
附图说明
为了更清楚地说明本说明书实施例或现有技术中的技术方案,下面将对本说明书实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本说明书第一个实施例中的视频字幕生成方法的执行主体示意图。
图2是本说明书第一个实施例中的视频字幕生成方法的流程示意图。
图3是本说明书第一个实施例中的一种加密、压缩和封装过程示意图。
图4是本说明书第一个实施例中的另一种加密、压缩和封装过程示意图。
图5是本说明书第一个实施例中的加密操作示意图。
图6是本说明书第二个实施例中的视频字幕生成装置的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书中的技术方案,下面将结合本说明书实施例中的附图,对本说明书实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本说明书实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本说明书第一个实施例(以下简称“实施例一”)提供了一种视频字幕生成方法,实施例一的执行主体可以是终端(包括但不限于手机、计算机、pad、电视)或者服务器或者操作系统或者应用程序或者视频字幕生成平台或者视频字幕生成系统等,即执行主体可以是多种多样的,可以根据需要设置、使用或者变换执行主体。另外,也可以有第三方应用程序协助所述执行主体执行实施例一。例如图1所示,可以由服务器来执行实施例一中的视频字幕生成方法,并且可以在(用户所持有的)终端上安装(与所述服务器)相对应的应用程序,终端或应用程序与服务器之间可以进行数据传输,通过终端或应用程序来进行数据的采集或输入或输出或(向用户)进行页面或信息处理,从而辅助服务器执行实施例一中的视频字幕生成方法。
特别的,实施例一的执行主体可以是服务器(例如远端服务器或云端服务器)。
如图2所示,实施例一提供的视频字幕生成方法包括:
S101:(执行主体)获取PNG图序列后,对所述PNG图序列中的任一PNG图,对该PNG图的颜色通道数据进行加密操作,得到该PNG图对应的颜色通道加密数据;对该PNG图对应的颜色通道加密数据进行第一压缩操作,得到该PNG图对应的颜色通道压缩数据;以及,对该PNG图的目标alpha通道数据进行第二压缩操作,得到该PNG图对应的alpha通道压缩数据;
如前所述,可以将需要添加到视频中的图文字幕制作成PNG图序列,PNG图序列包含一个或多个PNG图,各PNG图之间可以有顺序,PNG图中的内容包括但不限于色彩、图像、文字、动画、线条。
实施例一的执行主体可以获取制作完成的PNG图序列。其中,若使用实施例一的执行主体以外的其他主体制作PNG图序列,则所述其他主体可以将制作完成的PNG图序列发送给实施例一的执行主体或实施例一的执行主体从所述其他主体处获取制作完成的PNG图序列。
获取PNG图序列后,实施例一的执行主体可以对PNG图序列执行加密操作和压缩操作,下面分别说明:
加密操作
如图3、图4和图5所示,对PNG图序列中的任一PNG图,实施例一的执行主体可以对该PNG图的颜色通道数据进行加密操作,得到该PNG图对应的颜色通道加密数据。
其中,对该PNG图的颜色通道数据进行加密操作,得到该PNG图对应的颜色通道加密数据,可以包括:
S1011:确定该PNG图的各像素点的颜色通道数据对应的二进制数,对各二进制数进行XOR加密操作;
实施例一中,该PNG图的每个像素点包括R、G、B三个颜色通道,每个颜色通道具有亮度值,亮度值在0至255之间,可以将像素点的各颜色通道的亮度值称为像素点的颜色通道数据,将该PNG图的各像素点的颜色通道数据称为该PNG图的颜色通道数据。
可以确定该PNG图的各像素点的颜色通道数据对应的二进制数,且确定该PNG图的各像素点的颜色通道数据对应的二进制数可以包括:根据ASCII码确定该PNG图的各像素点的颜色通道数据对应的二进制数。
具体的,对该PNG图的任一像素点,可以确定该像素点的各颜色通道的亮度值对应的二进制数。亮度值对应的二进制数一般是8位二进制数,并可以根据ASCII码确定亮度值对应的(ASCII码中的)二进制数。
这样一来,可以得到该像素点的三个颜色通道的亮度值对应的3个二进制数,这3个二进制数形成或组合成该像素点的颜色通道数据对应的二进制数(即这3个二进制数作为该像素点的颜色通道数据所对应的一组24位二进制数)。
对该像素点的颜色通道数据对应的二进制数进行XOR加密(异或加密)操作,得到XOR加密后的二进制数(以下称为“该像素点对应的XOR加密二进制数”)。
由于是对该PNG图的每个像素点的颜色通道数据对应的二进制数进行XOR加密,故会得到该PNG图的每个像素点对应的XOR加密二进制数。
S1013:将XOR加密操作后得到的各二进制数转换成字母或字符;
实施例一中,对该PNG图的任一像素点对应的XOR加密二进制数,可以按照ASCII码,确定“该像素点对应的XOR加密二进制数”对应的(ASCII码中的)字母或字符(因为在ASCII码中,二进制数既可能对应字母,也可能对应字符),从而可以将该像素点对应的XOR加密二进制数转换成对应的字母或字符(以下称为“该像素点对应的初始字母或初始字符”)。其中,该像素点对应的XOR加密二进制数为24位的情况下,该像素点对应的XOR加密二进制数对应的字母或字符就有3种。即该像素点对应的XOR加密二进制数中的1至8位对应一种字母或字符,9至16位对应一种字母或字符,17至24位对应一种字母或字符。
这样一来,也就将XOR加密后的各二进制数转换成了字母或字符,即将该PNG图的各像素点对应的XOR加密二进制数,分别转换成了该PNG图的各像素点对应的初始字母或初始字符。
S1035:对各所述字母或字符进行移位加密操作,得到该PNG图对应的颜色通道加密数据。
实施例一中,可以对该PNG图的各像素点对应的各初始字母或各初始字符进行移位加密操作,得到该PNG图对应的颜色通道加密数据。其中,对该PNG图的各像素点对应的各初始字母或各初始字符进行移位加密操作,得到该PNG图对应的颜色通道加密数据,可以包括:
将该PNG图的各像素点对应的初始字母或初始字符作为整体的一组字母或字符,称为一组初始字母或初始字符。将这一组初始字母或初始字符都转换成0至25之间的数字(这样就形成了整数环Z26);例如,假设这一组初始字母或初始字符包括n个字母或字符,则得到n个数字;
确定这一组初始字母或初始字符转换得到的各数字对应的移位密码,且可以通过移位加密方式确定各数字对应的移位密码。其中,移位加密用公式可以表示为:y = (x +k) mod 26。其中,x是明文中的字母或数字,k是密钥,k可以是大于0且小于26的任意整数,y是所得到的密文中的字母或数字,即x对应的移位密码。通过这种移位加密,可以确定这一组初始字母或初始字符转换得到的各数字对应的移位密码,即可以得到一组移位密码;沿用上例,假设这一组初始字母或初始字符包括n个字母或字符,并得到一组n个数字,则可以确定一组n个移位密码;另外,如果某移位密码超过了26,则可以将该移位密码减去26作为实际的移位密码;
将各移位密码进行方向移位操作,将经方向移位操作后得到的各数字转换成字母,作为该PNG图对应的颜色通道加密数据。
其中,将各移位密码进行方向移位操作可以包括:将各移位密码的前后数据互换移位。沿用上例,假设得到n个移位密码,这n个移位密码作为一组,将第一位移位密码和最后一位移位密码互换,将第二位移位密码和倒数第二位移位密码互换,以此类推。若n为奇数,则中间的移位密码不需要互换。
经方向移位操作后得到的各数字(实际就是重新排列或重新确定位置的各移位密码)转换成字母或字符(即前述将初始字母或初始字符转换成数字的反过程),这里转换得到的字母或字符可以称为加密字母或加密字符,这些加密字母或加密字符可以作为该PNG图对应的颜色通道加密数据。
从整体上看,上述的加密操作可以概述为:对该PNG图的任一像素点,确定该像素点的颜色通道数据对应的二进制数,确定该像素点对应的XOR加密二进制数,确定该像素点对应的初始字母或初始字符,将该像素点对应的初始字母或初始字符转换成数字,并确定“该像素点对应的初始字母或初始字符转换得到的数字”对应的移位密码(称为“该像素点对应的移位密码”),重新确定该像素点对应的移位密码的位置(即方向移位操作),确定该像素点对应的移位密码转换得到的字母或字符(称为“该像素点对应的加密字母或加密字符”)。
可见,上述加密操作过程中,一方面,像素点、二进制数、初始字母或初始字符、数字、移位密码、加密字母或字符始终保持对应关系,即每个像素点都会得到对应的加密字母或加密字符;另一方面,各加密字母或加密字符是基于各像素点的颜色通道数据生成的,故该PNG图的所有像素点对应的加密字母或加密字符,可以作为该PNG图的各像素点的颜色通道数据的加密结果(称为“该PNG图对应的颜色通道加密数据”)。
压缩操作
如图3和图4所示,对PNG图序列中的任一PNG图,可以对该PNG图对应的颜色通道加密数据进行第一压缩操作,得到该PNG图对应的颜色通道压缩数据;以及,对该PNG图的目标alpha通道数据进行第二压缩操作,得到该PNG图对应的alpha通道压缩数据。其中,该PNG图的目标alpha通道数据是该PNG图的全部alpha通道数据(alpha通道数据即像素点的alpha通道的值,全部alpha通道数据即各像素点的alpha通道的值的全部)的部分或全部。
下面分别说明:
1、第一压缩操作
实施例一中,对该PNG图对应的颜色通道加密数据进行第一压缩操作可以包括:对该PNG图对应的颜色通道加密数据进行h264编码,从而实现对该PNG图对应的颜色通道加密数据的压缩。
2、第二压缩操作
首先介绍确定该PNG图的目标alpha通道数据的可用方式。实施例一中,(实施例一的执行主体)可以按照如下2.1和/或2.2的方式确定该PNG图的目标alpha通道数据。
2.1、该PNG图的非透明像素点的alpha通道数据属于该PNG图的目标alpha通道数据。
2.2、根据该PNG图与该PNG图的后一PNG图各对应像素点(PNG图之间相同位置的像素点为相对应的像素点)的alpha通道数据比对结果,确定该PNG图的目标alpha通道数据。
其中,根据该PNG图与该PNG图的后一PNG图各对应像素点的alpha通道数据比对结果,确定该PNG图的目标alpha通道数据,可以包括:若该PNG图中某像素点透明,该PNG图的后一PNG图中该像素点的对应像素点(该像素点的对应像素点即为与该像素点位置相同的像素点)不透明,则该像素点的alpha通道数据属于该PNG图的目标alpha通道数据。
2.1和2.2可以结合使用,一方面,该PNG图中不透明的像素点的alpha通道数据属于目标alpha通道数据;另一方面,若该PNG图中某像素点透明,下一PNG图中对应位置的像素点不透明,则该像素点的通道数据同样属于该PNG图的目标alpha通道数据。并且,PNG图序列中最后一个PNG图可以只用2.1的方式确定其目标alpha通道数据。
实施例一中,对该PNG图的目标alpha通道数据进行第二压缩操作可以包括:对该PNG图的目标alpha通道数据按百分比进行压缩。对该PNG图的目标alpha通道数据按百分比进行压缩可以通过对该PNG图进行缩放实现。例如该PNG图分辨率为1920*1080,将该PNG图压缩为原来的五分之一,自然就实现了对该PNG图的目标alpha通道数据按20%进行压缩。
对该PNG图的目标alpha通道数据进行第二压缩操作,由该PNG图的目标alpha通道数据经第二压缩操作所得的压缩数据,即为该PNG图对应的alpha通道压缩数据。
实施例一中,对该PNG图的颜色通道数据进行加密操作前,可以滤除PNG图封装数据,即(实施例一的执行主体)可以对该PNG图进行数据滤除操作,获取该PNG图的颜色通道数据,以便执行上述加密操作;和/或,对该PNG图的目标alpha通道数据进行第二压缩操作前,可以对该PNG图进行数据滤除操作,获取该PNG图的alpha通道数据,以便确定目标alpha通道数据和/或执行上述第二压缩操作。当然,可以仅通过一次数据滤除操作,就获取该PNG图的颜色通道数据和全部alpha通道数据,并实现颜色通道数据和alpha通道数据的分离。
需要说明的是,针对任一PNG图,可以先确定该PNG图的目标alpha通道数据,再执行第二压缩操作,得到该PNG图对应的alpha通道压缩数据;或者可以先对该PNG图进行整体压缩(即对该PNG图的所有像素点的alpha通道数据进行第二压缩操作,自然也包含了对“其中将被确定为目标alpha通道数据的alpha通道数据”进行第二压缩操作,即使尚未确定目标alpha通道数据),然后再确定该PNG图的目标alpha通道数据,并将由该PNG图的目标alpha通道数据经第二压缩操作得到的压缩数据作为该PNG图对应的alpha通道压缩数据。
另外,第二压缩操作与加密操作或第二压缩操作之间并无绝对的先后顺序。
S103:(执行主体)将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装,得到封装文件,所述封装文件存储于服务器;
通过上述步骤,可以得到PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据,进而可以将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装,得到封装文件,并将封装文件存储于服务器。若实施例一的执行主体是服务器,存储封装文件的服务器就可以是实施例一的执行主体。
实施例一中,将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装可以包括:分别将PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据,按照PNG图序列中各PNG图的顺序对各关键帧数据进行封装。
具体的,每个PNG图对应的颜色通道压缩数据和alpha通道压缩数据可以作为关键帧数据,并且可以按照PNG图序列中各PNG图的顺序,确定各关键帧数据的顺序。即若PNG图序列中PNG图A在另一PNG图B之前,则PNG图A对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据,排在PNG图B对应的颜色通道压缩数据和alpha通道压缩数据之前。
封装文件的格式可以根据需要设置或变化,例如,上述封装文件可以是MP4 文件。
针对不同的字幕需求或内容,可以制作不同的PNG序列,自然可以得到不同的封装文件。
S105:(执行主体)当判断需要播放所述服务器存储的目标视频时,对所述封装文件进行解压缩操作和解密操作,得到颜色通道数据和目标alpha通道数据;
实施例一的执行主体可以判断是否需要播放存储有上述封装文件的服务器上存储的视频。例如,可以根据终端(实施例一中所述终端可以包括各类设备、装置或其他类型的主体,也可以包括其上的应用程序,实施例一不进行具体限定)发送的请求判断是否需要播放存储有上述封装文件的服务器上存储的视频以及具体需要播放的视频。并且,可以根据终端发送的请求判断是否需要使用封装文件对视频进行渲染或为视频添加字幕以及对视频进行渲染或为视频添加字幕所用的封装文件。
具体的,用户或其他人员可以通过终端或终端上的应用程序查看服务器上存储的各视频和各封装文件(封装文件在终端或应用程序上不要求体现具体格式,可以仅体现其性质或内容,其性质或内容可以表征其是字幕或用于生成字幕的文件),并可以通过操作终端或终端上的应用程序选择要播放的视频或是否使用封装文件对视频进行渲染或为视频添加字幕以及选择对视频进行渲染或为视频添加字幕所用的封装文件。终端或终端上的应用程序可以根据其接收到的操作形成请求,并将请求发送给实施例一的执行主体,以便实施例一的执行主体根据终端发送的请求判断是否需要播放存储有上述封装文件的服务器上存储的视频,具体需要播放的视频,是否需要使用封装文件对视频进行渲染或为视频添加字幕以及对视频进行渲染或为视频添加字幕所用的封装文件。
若判断需要播放所述服务器存储的视频,则需要播放的视频可以作为目标视频。或者,可以预先将存储有上述封装文件的服务器上存储的某个或某些视频作为目标视频。
当判断需要播放目标视频时,实施例一的执行主体可以对封装文件(上述内容已经说明了如何确定对视频进行渲染或为视频添加字幕所用的封装文件)进行解压缩操作和解密操作,得到颜色通道数据和目标alpha通道数据。其中,对封装文件进行解压缩操作和解密操作,得到颜色通道数据和目标alpha通道数据,可以包括:
根据第一压缩操作和第二压缩操作对封装文件进行解压缩操作,分别得到颜色通道加密数据和目标alpha通道数据(由前述内容可知,解压缩操作得到的目标alpha通道数据是某PNG序列各PNG图的目标alpha通道数据);其中,解压缩操作可以包括与第一压缩操作相反的解压缩操作(例如第一压缩操作是h264编码,则解压缩操作是解码)和与第二压缩操作相反的解压缩操作(例如第二压缩操作是按百分比压缩,则解压缩操作是按百分比放大);
以及,根据加密操作,对经解压缩操作得到的颜色通道加密数据进行解密操作(即前述加密操作的反操作),得到颜色通道数据(由前述内容可知,解密操作得到的颜色通道数据是某PNG序列各PNG图的颜色通道数据)。
当然,可能需要对封装文件进行解封装,然后再进行上述解压缩操作和解密操作。
加密操作、解密操作、压缩操作(包括第一压缩操作和第二压缩操作,下同)、解压缩操作的规则可以预先部署或固定在实施例一的执行主体上;或者加密操作、压缩操作的规则可以预先部署或固定在实施例一的执行主体上,实施例一的执行主体可以根据加密操作的规则确定解密操作的规则,根据压缩操作的规则确定解压缩操作的规则。
S107:(执行主体)将解密得到的颜色通道数据和解压缩得到的目标alpha通道数据与所述目标视频进行合成,得到合成视频,以使在播放所述合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕。
实施例一的执行主体可以将解密得到的颜色通道数据和解压缩得到的目标alpha通道数据与目标视频进行合成,得到合成视频,相当于使用解密得到的颜色通道数据和解压缩得到的目标alpha通道数据对目标视频进行渲染。其中,合成视频可以存储于服务器。
这样一来,就可以使在播放合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕。即可以在目标视频播放过程中,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的各种字幕。
实施例一中,并不限制上述合成视频由什么样的终端播放或由多少个终端播放,故使在播放所述合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕,可以包括:使任一终端获取并播放合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕。终端获取合成视频的方式可以多种多样,例如终端可以从服务器获取,或者服务器可以将合成视频推送给终端。
实施例一的内容能够达到以下有益效果:
PNG图的内容(包括但不限于色彩、图像、文字、动画、线条)实际就是由PNG图的颜色通道数据和目标alpha通道数据决定的,实施例一中无需使用PNG图,而是使用各PNG图对应的颜色通道数据和目标alpha通道数据对视频进行渲染,以生成字幕。由于颜色通道数据和目标alpha通道数据体量远小于PNG图的体量,且过滤掉了透明的alpha通道数据,这样可以大大提高合成效率,降低合成占用资源量或带宽,从而提高视频字幕生成效率,缩短字幕生成时间,并且可以提高合成视频的播放流畅度和播放速度。
实施例一中,在封装前已进行过加密操作,可以有效保障用于生成视频字幕的文件(包括颜色通道数据和目标alpha通道数据)的安全性和正确性(即保证了通过解密和解压缩操作能够获得正确的颜色通道数据和目标alpha通道数据),避免被盗取或篡改。并且,实施例一中综合采用了确定二进制数(相当于二进制加密)、XOR加密、二进制与字母或字符转换、字母或字符与数字转换(相当于转换加密)、移位加密、方向移位加密等多种加密方式,进一步提高了用于生成视频字幕的文件的安全性。
实施例一中,为了便于生成字幕,在封装前已进行过压缩操作,以便对各PNG图对应的颜色通道压缩数据和alpha通道压缩数据进行封装。由于经过压缩后,颜色通道压缩数据和alpha通道压缩数据的体量进一步降低,就可以大幅降低封装文件的体量,有效提高封装效率,缩短封装时间,降低封装占用资源量或带宽,从而有利于提高字幕生成效率。另外,先压缩后封装也便于存储。
实施例一中,可以通过前后PNG图片对应像素点的alpha通道数据比对结果,确定PNG图的目标alpha通道数据,既可以精确查找到感兴趣的目标alpha通道数据,又有利于降低目标alpha通道数据体量,且增加了前后PNG图片之间的数据共用。
实施例一中的封装文件可以是MP4格式文件。MP4是一种封装格式,其分为20多种盒子类型(MP4的所有数据都放在一个叫box的盒子里,盒子里又可以放多个不同的盒子,盒子的种类是20多种),每种类型都需要对盒子进行封装和存储。盒子前期对封装复杂,所有信息都存储在盒子中,当获取每个帧的时候可以快速跳转到当前数据位置。
PNG图的内容(包括但不限于色彩、图像、文字、动画、线条)实际就是由PNG图的颜色通道数据和目标alpha通道数据决定的,颜色通道数据和目标alpha数据相当于PNG图的关键内容或关键信息,颜色通道压缩数据和alpha通道压缩数据自然也是PNG图的(加密、压缩后的)关键内容或关键信息。
实施例一中,将PNG图的关键内容或关键信息,作为封装的关键帧数据,进而可以封装成MP4文件。也就是说,实施例一中是将基于PNG图所得到的关键内容或关键信息作为关键帧数据进行封装,即只需封装关键帧数据,也就只需要关键帧盒子就可以,其他的盒子可以全部省掉。后续对MP4封装文件进行解析时,则通过封装盒子的关键帧盒子进行解析,解析直接指向关键帧内容。这种封装方式简单明白,实现了对MP4封装格式重新定义,将MP4的复杂BOX方式重新定义处理,只留关键帧盒子,有效提高MP4封装和读取速度,便于对封装文件进行解析、解密和解压缩,也便于对PNG图以及PNG图的关键内容或关键信息进行管理,从而有利于提高字幕生成效率。
实施例一的执行主体可以就是(远端或云端)服务器,从而封装文件和目标视频都可以存储在实施例一的执行主体上,这样通过(远端或云端)服务器就可以实现上述视频字幕生成技术方案,所生成的合成视频可直接供各种终端从服务器获取或由服务器传输给各种终端,能够提高合成视频和字幕效果或字幕内容的传播效率和传播速度,广泛适用于云导播服务,云剪辑服务,云虚拟演播室服务,云视频直播、视频导播、视频剪辑等多种领域(例如实施例一的执行主体是服务器,可以从各种终端获取视频以作为目标视频或根据请求将其作为目标视频,并将添加了字幕的合成视频推送给各种导播终端或演播终端或直播终端进行播放)。由于实施例一占用资源量或带宽更少,也就更有利于服务器向各种终端或主体传播合成视频。
特别的,上面说明了实施例一能够提高视频字幕生成效率,缩短字幕生成时间,减少资源量或带宽占用,并且可以提高合成视频的播放流畅度和播放速度以及传播效率和传播速度,故实施例一尤其适用于导播或直播等高时效要求或多终端播放的场景下的视频字幕生成和展示。
另外,实施例一的执行主体也可以是终端,或者加密操作、压缩操作、解密操作、解压缩操作、合成等操作也可以由不同的主体执行,但仍然是将封装文件、目标视频以及合成视频都存储在服务器上,并由服务器发送给各种终端,也都可以取得上述有益效果。
如图6所示,本说明书第二个实施例提供一种与实施例一所述方法对应的一种视频字幕生成装置,所述装置包括:
加密压缩模块202,用于获取PNG图序列后,对所述PNG图序列中的任一PNG图,对该PNG图的颜色通道数据进行加密操作,得到该PNG图对应的颜色通道加密数据;对该PNG图对应的颜色通道加密数据进行第一压缩操作,得到该PNG图对应的颜色通道压缩数据;以及,对该PNG图的目标alpha通道数据进行第二压缩操作,得到该PNG图对应的alpha通道压缩数据;
封装模块204,用于将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装,得到封装文件,所述封装文件存储于服务器;
解密解压模块206,用于当判断需要播放所述服务器存储的目标视频时,对所述封装文件进行解压缩操作和解密操作,得到颜色通道数据和目标alpha通道数据;
字幕合成模块208,用于将解密得到的颜色通道数据和解压缩得到的目标alpha通道数据与所述目标视频进行合成,得到合成视频,以使在播放所述合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕。
可选的,对该PNG图的颜色通道数据进行加密操作,得到该PNG图对应的颜色通道加密数据,包括:
确定该PNG图的各像素点的颜色通道数据对应的二进制数,对各二进制数进行XOR加密操作;
将XOR加密操作后得到的各二进制数转换成字母或字符;
对各所述字母或字符进行移位加密操作,得到该PNG图对应的颜色通道加密数据。
可选的,确定该PNG图的各像素点的颜色通道数据对应的二进制数包括:
根据ASCII码确定该PNG图的各像素点的颜色通道数据对应的二进制数。
可选的,对各所述字母或字符进行移位加密操作,得到该PNG图对应的颜色通道加密数据,包括:
将各所述字母或字符转换成0至25之间的数字,确定各数字对应的移位密码;
将各移位密码进行方向移位操作,将经方向移位操作后得到的各数字转换成字母或字符,作为该PNG图对应的颜色通道加密数据。
可选的,对该PNG图对应的颜色通道加密数据进行第一压缩操作包括:
对该PNG图对应的颜色通道加密数据进行h264编码。
可选的,对该PNG图的目标alpha通道数据进行第二压缩操作包括:
对该PNG图按百分比进行压缩,以对该PNG图的目标alpha通道数据进行压缩。
可选的,该PNG图的非透明像素点的alpha通道数据属于该PNG图的目标alpha通道数据。
可选的,该PNG图的目标alpha通道数据的确定方式包括:
根据该PNG图与该PNG图的后一PNG图各对应像素点的alpha通道数据比对结果,确定该PNG图的目标alpha通道数据。
可选的,根据该PNG图与该PNG图的后一PNG图各对应像素点的alpha通道数据比对结果,确定该PNG图的目标alpha通道数据,包括:
若该PNG图中某像素点透明,该PNG图的后一PNG图中该像素点的对应像素点不透明,则该像素点的alpha通道数据属于该PNG图的目标alpha通道数据。
可选的,所述装置还包括:
数据滤除模块,用于对该PNG图的颜色通道数据进行加密操作前,对该PNG图进行数据滤除操作,获取该PNG图的颜色通道数据;
和/或,
对该PNG图的目标alpha通道数据进行第二压缩操作前,对该PNG图进行数据滤除操作,获取该PNG图的alpha通道数据。
可选的,将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装包括:
分别将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据,按照所述PNG图序列中各PNG图的顺序对各关键帧数据进行封装。
可选的,所述封装文件为MP4文件。
可选的,对所述封装文件进行解压缩操作和解密操作,得到颜色通道数据和目标alpha通道数据,包括:
根据所述第一压缩操作和第二压缩操作对所述封装文件进行解压缩操作,分别得到颜色通道加密数据和目标alpha通道数据;以及,根据所述加密操作,对经解压缩操作得到的颜色通道加密数据进行解密操作,得到颜色通道数据。
可选的,所述装置还包括:
播放判断模块,用于根据终端发送的请求判断是否需要播放所述服务器存储的目标视频。
可选的,使在播放所述合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕,包括:
使任一终端获取并播放所述合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕。
上述各实施例可以结合使用,不同实施例之间或同一实施例内的名称相同的模块可以是相同或不同的模块。
上述对本说明书特定实施例进行了描述,其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,附图中描绘的过程不一定必须按照示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于装置、设备、非易失性计算机可读存储介质实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本说明书实施例提供的装置、设备、非易失性计算机可读存储介质与方法是对应的,因此,装置、设备、非易失性计算机存储介质也具有与对应方法类似的有益技术效果,由于上面已经对方法的有益技术效果进行了详细说明,因此,这里不再赘述对应装置、设备、非易失性计算机存储介质的有益技术效果。
在20世纪90年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device, PLD)(例如现场可编程门阵列(Field Programmable GateArray,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware DescriptionLanguage)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(RubyHardware Description Language)等,目前最普遍使用的是VHDL(Very-High-SpeedIntegrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20 以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书实施例可提供为方法、系统、或计算机程序产品。因此,本说明书实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带式磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本说明书实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (12)
1.一种视频字幕生成方法,其特征在于,所述方法包括:
获取PNG图序列后,对所述PNG图序列中的任一PNG图,对该PNG图的颜色通道数据进行加密操作,得到该PNG图对应的颜色通道加密数据;对该PNG图对应的颜色通道加密数据进行第一压缩操作,得到该PNG图对应的颜色通道压缩数据;以及,对该PNG图的目标alpha通道数据进行第二压缩操作,得到该PNG图对应的alpha通道压缩数据;其中,所述PNG图序列是由需要添加到视频中的图文字幕制作成的;
将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装,得到封装文件,所述封装文件存储于服务器;
当判断需要播放所述服务器存储的目标视频时,对所述封装文件进行解压缩操作和解密操作,得到颜色通道数据和目标alpha通道数据;
将解密得到的颜色通道数据和解压缩得到的目标alpha通道数据与所述目标视频进行合成,得到合成视频,以使在播放所述合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕。
2.如权利要求1所述的方法,其特征在于,对该PNG图的颜色通道数据进行加密操作,得到该PNG图对应的颜色通道加密数据,包括:
确定该PNG图的各像素点的颜色通道数据对应的二进制数,对各二进制数进行XOR加密操作;
将XOR加密操作后得到的各二进制数转换成字母或字符;
对各所述字母或字符进行移位加密操作,得到该PNG图对应的颜色通道加密数据。
3.如权利要求2所述的方法,其特征在于,
确定该PNG图的各像素点的颜色通道数据对应的二进制数包括:
根据ASCII码确定该PNG图的各像素点的颜色通道数据对应的二进制数;
和/或,
对各所述字母或字符进行移位加密操作,得到该PNG图对应的颜色通道加密数据,包括:
将各所述字母或字符转换成0至25之间的数字,确定各数字对应的移位密码;
将各移位密码进行方向移位操作,将经方向移位操作后得到的各数字转换成字母或字符,作为该PNG图对应的颜色通道加密数据。
4.如权利要求1至3中任一项所述的方法,其特征在于,
对该PNG图对应的颜色通道加密数据进行第一压缩操作包括:
对该PNG图对应的颜色通道加密数据进行h264编码;
和/或,
对该PNG图的目标alpha通道数据进行第二压缩操作包括:
对该PNG图按百分比进行压缩,以对该PNG图的目标alpha通道数据进行压缩。
5.如权利要求1所述的方法,其特征在于,该PNG图的非透明像素点的alpha通道数据属于该PNG图的目标alpha通道数据。
6.如权利要求1所述的方法,其特征在于,该PNG图的目标alpha通道数据的确定方式包括:
根据该PNG图与该PNG图的后一PNG图各对应像素点的alpha通道数据比对结果,确定该PNG图的目标alpha通道数据。
7.如权利要求6所述的方法,其特征在于,根据该PNG图与该PNG图的后一PNG图各对应像素点的alpha通道数据比对结果,确定该PNG图的目标alpha通道数据,包括:
若该PNG图中某像素点透明,该PNG图的后一PNG图中该像素点的对应像素点不透明,则该像素点的alpha通道数据属于该PNG图的目标alpha通道数据。
8.如权利要求1所述的方法,其特征在于,对该PNG图的颜色通道数据进行加密操作前,所述方法还包括:
对该PNG图进行数据滤除操作,获取该PNG图的颜色通道数据;
和/或,
对该PNG图的目标alpha通道数据进行第二压缩操作前,所述方法还包括:
对该PNG图进行数据滤除操作,获取该PNG图的alpha通道数据;
和/或,
所述方法还包括:
根据终端发送的请求判断是否需要播放所述服务器存储的目标视频。
9.如权利要求1所述的方法,其特征在于,将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装包括:
分别将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据,按照所述PNG图序列中各PNG图的顺序对各关键帧数据进行封装。
10.如权利要求1所述的方法,其特征在于,对所述封装文件进行解压缩操作和解密操作,得到颜色通道数据和目标alpha通道数据,包括:
根据所述第一压缩操作和第二压缩操作对所述封装文件进行解压缩操作,分别得到颜色通道加密数据和目标alpha通道数据;以及,根据所述加密操作,对经解压缩操作得到的颜色通道加密数据进行解密操作,得到颜色通道数据。
11.如权利要求1所述的方法,其特征在于,使在播放所述合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕,包括:
使任一终端获取并播放所述合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕。
12.一种视频字幕生成装置,其特征在于,所述装置包括:
加密压缩模块,用于获取PNG图序列后,对所述PNG图序列中的任一PNG图,对该PNG图的颜色通道数据进行加密操作,得到该PNG图对应的颜色通道加密数据;对该PNG图对应的颜色通道加密数据进行第一压缩操作,得到该PNG图对应的颜色通道压缩数据;以及,对该PNG图的目标alpha通道数据进行第二压缩操作,得到该PNG图对应的alpha通道压缩数据;其中,所述PNG图序列是由需要添加到视频中的图文字幕制作成的;
封装模块,用于将所述PNG图序列中各PNG图对应的颜色通道压缩数据和alpha通道压缩数据作为关键帧数据进行封装,得到封装文件,所述封装文件存储于服务器;
解密解压模块,用于当判断需要播放所述服务器存储的目标视频时,对所述封装文件进行解压缩操作和解密操作,得到颜色通道数据和目标alpha通道数据;
字幕合成模块,用于将解密得到的颜色通道数据和解压缩得到的目标alpha通道数据与所述目标视频进行合成,得到合成视频,以使在播放所述合成视频时,展示由解密得到的颜色通道数据和解压缩得到的目标alpha通道数据所形成的字幕。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311514701.2A CN117241068B (zh) | 2023-11-15 | 2023-11-15 | 一种视频字幕生成方法及装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202311514701.2A CN117241068B (zh) | 2023-11-15 | 2023-11-15 | 一种视频字幕生成方法及装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN117241068A CN117241068A (zh) | 2023-12-15 |
CN117241068B true CN117241068B (zh) | 2024-01-19 |
Family
ID=89086474
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202311514701.2A Active CN117241068B (zh) | 2023-11-15 | 2023-11-15 | 一种视频字幕生成方法及装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117241068B (zh) |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008228242A (ja) * | 2007-03-16 | 2008-09-25 | Nippon Telegr & Teleph Corp <Ntt> | 映像再生装置 |
CN103700385A (zh) * | 2012-09-27 | 2014-04-02 | 深圳市快播科技有限公司 | 媒体播放器和播放方法、硬件加速下的视频的后处理方法 |
CN107172351A (zh) * | 2017-06-16 | 2017-09-15 | 福建星网智慧科技股份有限公司 | 一种摄像头实时快速字幕叠加的方法 |
WO2018100332A1 (en) * | 2016-11-29 | 2018-06-07 | Sony Europe Limited | A decoder, encoder, computer program and method |
CN112235521A (zh) * | 2020-09-29 | 2021-01-15 | 东软集团股份有限公司 | 一种实现字幕转换的方法、装置及设备 |
-
2023
- 2023-11-15 CN CN202311514701.2A patent/CN117241068B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2008228242A (ja) * | 2007-03-16 | 2008-09-25 | Nippon Telegr & Teleph Corp <Ntt> | 映像再生装置 |
CN103700385A (zh) * | 2012-09-27 | 2014-04-02 | 深圳市快播科技有限公司 | 媒体播放器和播放方法、硬件加速下的视频的后处理方法 |
WO2018100332A1 (en) * | 2016-11-29 | 2018-06-07 | Sony Europe Limited | A decoder, encoder, computer program and method |
CN107172351A (zh) * | 2017-06-16 | 2017-09-15 | 福建星网智慧科技股份有限公司 | 一种摄像头实时快速字幕叠加的方法 |
CN112235521A (zh) * | 2020-09-29 | 2021-01-15 | 东软集团股份有限公司 | 一种实现字幕转换的方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN117241068A (zh) | 2023-12-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10777231B2 (en) | Embedding thumbnail information into video streams | |
US20180232128A1 (en) | Image reproduction apparatus and method for simultaneously displaying multiple moving-image thumbnails | |
US20070206682A1 (en) | Method And Apparatus For Coding Information | |
WO1999064991A1 (en) | Compressed video graphics system and methodology | |
CN111899322A (zh) | 视频处理方法、动画渲染sdk和设备及计算机存储介质 | |
JP6617719B2 (ja) | 情報処理装置、情報記録媒体、および情報処理方法、並びにプログラム | |
CN109327698B (zh) | 动态预览图的生成方法、系统、介质和电子设备 | |
JP2023521553A (ja) | 機械用のパッチベースのビデオコーディング | |
CN117241068B (zh) | 一种视频字幕生成方法及装置 | |
US20150288979A1 (en) | Video frame reconstruction | |
CN111464812B (zh) | 编码解码的方法、系统、装置、存储介质及处理器 | |
US11922561B2 (en) | Methods and systems for implementing scene descriptions using derived visual tracks | |
CN112738564B (zh) | 数据处理方法、装置、电子设备及存储介质 | |
JP2012029010A (ja) | 情報処理装置、フレームデータ変換方法及びプログラム | |
CN110933418B (zh) | 一种视频数据处理方法、设备、介质以及装置 | |
US11706374B2 (en) | Methods and apparatus for re-timing and scaling input video tracks | |
CN104718764A (zh) | 信息处理设备 | |
EP3422347A1 (en) | Information processing device, display device, information recording medium, information processing method and program | |
JP3901499B2 (ja) | 表示装置及び背景画像生成方法 | |
US11743559B2 (en) | Methods and systems for derived immersive tracks | |
CN111405335B (zh) | 一种教育盒子基于opengl渲染的高清帧动画方法 | |
CN114760525A (zh) | 视频生成及播放方法、装置、设备、介质 | |
CN117218269A (zh) | 视频处理方法、装置、设备及存储介质 | |
CN115379251A (zh) | 一种视频直播流的转码方法、装置、系统及可读存储介质 | |
CN117176978A (zh) | 一种推流方法、装置、设备及介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |