一种视频处理方法及其设备、存储介质、电子设备与流程

文档序号:16130789发布日期:2018-12-01 00:17阅读:210来源:国知局

本发明涉及计算机技术领域,尤其涉及一种视频处理方法及其设备、存储介质、电子设备。

背景技术

随着移动互联网的快速发展,用户终端上的各种应用越来越多,其中视频应用基本是每台用户终端的必备,用户利用视频应用能够观赏到丰富多彩的视频文件。用户在观赏的同时有时会需要对视频进行相应的编辑,如对视频文件进行美颜、添加滤镜等,有时还需要对视频添加文本内容(字幕),从而可以将自己想要表达的内容以字幕的形式在视频中显示出来,娱乐性和互动性十足,达到二次创作的目的。

现如今市场上大部分视频编辑app在视频中添加字幕的处理过程为用户在当前界面点击字幕添加控件,然后拉起字幕编辑页面,用户在字幕编辑页面中输入文本内容并确认后再跳转回之前的页面显示字幕。这个交互操作包含三步,拉起编辑界面,编辑字幕内容,返回视频界面并将字幕显示在视频上,步骤繁琐,需要花费较长的时间,并不能将所添加的字幕实时显示在视频上。



技术实现要素:

本发明实施例提供了一种视频处理方法及其设备、存储介质、电子设备,可以直接在当前界面完成对视频添加字幕的过程,能够将所添加的字幕实时显示在视频上,可以提升交互的实时性以及添加字幕的便利性。

本发明实施例一方面提供一种视频处理方法,可包括:

获取针对当前界面播放的源视频所输入的文本添加信号,基于所述文本添加信号在所述源视频的视频播放区域中的第一设定区域创建文本编辑组件;

获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数;

基于所述内容参数将所述文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

可选的,所述获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数,包括:

在所述第一设定区域所显示的文本编辑组件集合中获取文本编辑组件;

获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数。

可选的,所述获取针对所述文本内容所设置的内容参数,包括:

获取针对所述文本内容在文本动画格式集合中所选择的文本动画格式,所述文本动画格式集合位于所述当前界面中除所述视频播放区域以外的第二设定区域,和/或;

获取针对所述文本内容在文本风格集合中所选择的文本风格,所述文本风格集合位于所述当前界面中除所述视频播放区域以外的第三设定区域,和/或;

获取针对所述文本内容对应的文本播放时间信息所设置的时间调整信息,所述文本播放时间信息位于所述当前界面中除所述视频播放区域以外的第四设定区域。

可选的,所述文本播放时间信息包括文本起始时间和文本结束时间,所述获取针对所述文本内容对应的文本播放时间信息所设置的时间调整信息,包括:

当获取针对所述文本起始时间所设置的时间调整信息时,基于所述时间调整信息对所述文本起始时间进行调整,并采用调整后的文本起始时间所指示的图像替换所述视频播放区域的当前显示图像;

当获取针对所述文本结束时间所设置的时间调整信息时,基于所述时间调整信息对所述文本结束时间进行调整,并采用调整后的文本结束时间所指示的图像替换所述视频播放区域的当前显示图像。

可选的,所述基于所述内容参数将所述文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频,包括:

将所述内容参数与所述文本内容进行合成处理,得到所述文本内容对应的特效文本内容;

获取所述文本内容在所述源视频的当前视频分辨率下的文本对齐信息;

基于所述文本对齐信息将所述特效文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

可选的,所述获取所述文本内容在所述源视频的当前视频分辨率下的文本对齐信息,包括:

获取所述文本内容在基准视频分辨率下的第一中心点坐标以及第一字体大小;

获取所述当前视频分辨率与所述基准视频分辨率的缩放比例,基于所述缩放比例分别对所述第一中心点坐标以及所述第一字体大小进行调整,得到所述文本内容在所述当前视频分辨率下的第二中心点坐标以及第二字体大小,所述文本对齐信息包括第二中心点坐标以及第二字体大小。

可选的,还包括:

获取针对所述文本内容所输入的文本编辑信号,基于所述文本编辑信号编辑所述文本内容,所述文本编辑信号包括如下至少一种:文本修改信号、文本删除信号、文本查询信号以及文本缩放信号。

本发明实施例一方面提供一种视频处理设备,可包括:

组件创建单元,用于获取针对当前界面播放的源视频所输入的文本添加信号,基于所述文本添加信号在所述源视频的视频播放区域中的第一设定区域创建文本编辑组件;

参数获取单元,用于获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数;

视频生成单元,用于基于所述内容参数将所述文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

可选的,所述参数获取单元,包括:

组件获取子单元,用于在所述第一设定区域所显示的文本编辑组件集合中获取文本编辑组件;

参数获取子单元,用于获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数。

可选的,所述参数获取单元,具体用于:

获取针对所述文本内容在文本动画格式集合中所选择的文本动画格式,所述文本动画格式集合位于所述当前界面中除所述视频播放区域以外的第二设定区域,和/或;

获取针对所述文本内容在文本风格集合中所选择的文本风格,所述文本风格集合位于所述当前界面中除所述视频播放区域以外的第三设定区域,和/或;

获取针对所述文本内容对应的文本播放时间信息所设置的时间调整信息,所述文本播放时间信息位于所述当前界面中除所述视频播放区域以外的第四设定区域。

可选的,所述参数获取单元,具体用于:

当获取针对所述文本起始时间所设置的时间调整信息时,基于所述时间调整信息对所述文本起始时间进行调整,并采用调整后的文本起始时间所指示的图像替换所述视频播放区域的当前显示图像;

当获取针对所述文本结束时间所设置的时间调整信息时,基于所述时间调整信息对所述文本结束时间进行调整,并采用调整后的文本结束时间所指示的图像替换所述视频播放区域的当前显示图像。

可选的,所述视频生成单元,包括:

特效文本生成子单元,用于将所述内容参数与所述文本内容进行合成处理,得到所述文本内容对应的特效文本内容;

对齐信息获取子单元,用于获取所述文本内容在所述源视频的当前视频分辨率下的文本对齐信息;

目标视频生成子单元,用于基于所述文本对齐信息将所述特效文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

可选的,所述对齐信息获取子单元,具体用于:

获取所述文本内容在基准视频分辨率下的第一中心点坐标以及第一字体大小;

获取所述当前视频分辨率与所述基准视频分辨率的缩放比例,基于所述缩放比例分别对所述第一中心点坐标以及所述第一字体大小进行调整,得到所述文本内容在所述当前视频分辨率下的第二中心点坐标以及第二字体大小,所述文本对齐信息包括第二中心点坐标以及第二字体大小。

可选的,还包括:

文本编辑单元,用于获取针对所述文本内容所输入的文本编辑信号,基于所述文本编辑信号编辑所述文本内容,所述文本编辑信号包括如下至少一种:文本修改信号、文本删除信号、文本查询信号以及文本缩放信号。

本发明实施例一方面提供一种计算机存储介质,所述计算机存储介质存储有多条指令,所述指令适于由处理器加载并执行上述的方法步骤。

本发明实施例一方面提供一种电子设备,可包括:处理器和存储器;其中,所述存储器存储有计算机程序,所述计算机程序适于由所述处理器加载并执行上述的方法步骤。

在本发明实施例中,通过获取针对当前界面播放的源视频所输入的文本添加信号,基于该文本添加信号在源视频的视频播放区域中的第一设定区域创建文本编辑组件,并获取在文本编辑组件中所输入的文本内容以及文本内容的内容参数,基于该内容参数将文本内容与源视频进行合成处理,从而实现将文本内容(字幕)添加到视频中。可以直接在当前界面完成对视频添加字幕的过程,能够将所添加的字幕实时显示在视频上,可以提升交互的实时性以及添加字幕的便利性。

附图说明

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

图1是本发明实施例提供的一种网络架构的结构示意图;

图2是本发明实施例提供的一种视频处理方法的流程示意图;

图3是本发明实施例提供的一种视频处理方法的流程示意图;

图4是本发明实施例提供的一种当前界面的界面示意图;

图5是本发明实施例提供的一种文本内容输入方式的界面示意图;

图6是本发明实施例提供的一种文本动画格式显示效果示意图;

图7是本发明实施例提供的一种视频处理方法的流程示意图;

图8是本发明实施例提供的一种文本内容在基准视频分辨率下的展示效果示意图;

图9是本发明实施例提供的一种文本内容在当前视频分辨率下的展示效果示意图;

图10是本发明实施例提供的一种视频处理设备的结构示意图;

图11是本发明实施例提供的一种视频处理设备的结构示意图;

图12是本发明实施例提供的一种参数获取单元的结构示意图;

图13是本发明实施例提供的一种视频生成单元的结构示意图;

图14是本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

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

请参见图1,为本发明实施例提供的一种网络架构的结构示意图。如图1所示,所述网络架构可以包括服务器2000以及用户终端集群;所述用户终端集群可以包括多个用户终端,如图1所示,具体包括用户终端3000a、用户终端3000b、…、用户终端3000n;为便于理解,本发明实施例可以在图1所示的多个用户终端中选择一个用户终端作为本方案的执行主体,或者,选择服务器作为本方案的执行主体。

所述用户终端可以包括平板电脑、个人计算机(pc)、智能手机、掌上电脑以及移动互联网设备(mid)等具备视频处理功能的终端设备,所述用户终端还可以包括具备视频处理功能的应用程序(如小程序或者客户端app)。

所述服务器可以为具备视频处理功能的应用服务器。

当以用户终端为执行主体时,为便于理解,本发明实施例可以图1中的用户终端3000a为例进行描述。

如图1所示,所述用户终端3000a用于获取针对当前界面播放的源视频所输入的文本添加信号,基于所述文本添加信号在所述源视频的视频播放区域中的第一设定区域创建文本编辑组件;

其中,所述当前界面可以包括多个区域,可将其中一个区域作为视频播放区域用于播放视频。所述源视频是指未添加文本内容的初始视频,当然还可以理解为已经添加了部分文本内容,还需要再添加新的文本内容的视频。

所述文本添加信号由用户触发,对于用户终端3000a而言则接收到的是文本添加信号。而用户触发的方式可以是通过触控当前界面的虚拟控件,也可以是触控用户终端3000a上的物理按键,当然还可以通过用户终端3000a上的麦克风进行语音输入,或者由用户终端3000a上的摄像头采用用户输入的手势动作等方式。

当然,在所述视频播放区域中又包括有添加文本编辑组件的区域,将该区域作为第一设定区域,可以是视频播放区域中的任何位置,在该区域可以同时显示多个文本编辑组件。

所述文本编辑组件即为用于编辑文本内容的文本框组件,用户可在所添加的文本框组件中输入任何形式的文本内容,如文字、图片、表情图片等。

进一步的,所述用户终端3000a还用于获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数;

其中,所述内容参数可以包含文本动画格式,如旁白、冒泡、弹幕、标题、颤抖以及跑马灯等格式;还可以包含文本风格,如字体形式、字体大小、字体颜色、描边颜色、描边宽度等,还可以包含文本内容对应的文本显示时间信息,如文本起始时间、文本结束时间、文本持续时间。

当然,若在第一设定区域显示了多个文本组件时,用户可选择其一作为当前用于输入文本内容的组件。

所述用户终端3000a还用于基于所述内容参数将所述文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

其中,所述合成处理即为将文本内容添加到源视频上而得到目标视频,即为添加了文本内容的视频。

还可以理解为,在得到目标视频后,用户还可以对所添加的文本内容进行编辑,如修改文本内容、删除文本内容、对文本内容的字体大小进行缩放等。

当以服务器为执行主体时,为便于理解,本发明实施例可以在图1所示的多个用户终端中选择一个用户终端作为目标用户终端(如3000a)。

服务器2000用于获取针对当前界面播放的源视频所输入的文本添加信号,基于所述文本添加信号在所述源视频的视频播放区域中的第一设定区域创建文本编辑组件;

所述服务器2000还用于获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数;

所述服务器2000还用于基于所述内容参数将所述文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

当然,还可以是用户终端3000a用于获取针对当前界面播放的源视频所输入的文本添加信号,基于所述文本添加信号在所述源视频的视频播放区域中的第一设定区域创建文本编辑组件;

所述用户终端3000a还用于获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数;

所述用户终端3000a还用于将所述内容参数发送至所述服务器2000;

所述服务器2000用于基于所述内容参数将所述文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频;

所述服务器2000还用于将所述目标视频发送至所述用户终端3000a。

其中,用户终端3000a、用户终端3000b、…、用户终端3000n可以分别与所述服务器2000进行网络连接,以向所述服务器上传所述内容参数,并接收所述服务器2000下发的目标视频。

下面将结合附图2-附图9,对本发明实施例提供的视频处理方法进行详细介绍。其中,本发明实施例中的视频处理方法由视频处理设备执行,所述视频处理设备可以是图1所示的用户终端3000a、3000b、…、3000n中的任一个,也可以是图1所示的服务器2000。

请参见图3,为本发明实施例提供了一种视频处理方法的流程示意图。如图1所示,本发明实施例的所述方法可以包括以下步骤s101-步骤s103。

s101,视频处理设备获取针对当前界面播放的源视频所输入的文本添加信号,基于所述文本添加信号在所述源视频的视频播放区域中的第一设定区域创建文本编辑组件;

可以理解的是,所述源视频是指在当前界面正在播放或即将播放的视频文件。所述源视频的格式可以为avi格式、quicktime格式、realvideo格式、navi格式、divx格式或mpeg格式等。

可通过用户在视频处理设备上输入获取视频文件的操作信号后通过视频处理设备的视频输入单元获取源视频文件,例如,从本地视频库(如相册)中选择获取、或者是当前通过摄像头拍摄获取、或者当前从网络下载获取等。

所述源视频在当前界面的视频播放区域进行显示,所述视频播放区域可以为当前界面的全部区域,如全屏显示区域,也可以为当前界面的一部分区域。

具体的,当用户针对当前界面所显示的源视频进行文本添加操作时,如通过点击界面上的“添加字幕”虚拟控件、通过语音接收器输入语音“添加字幕”、采用虚拟键盘输入“添加字幕”等操作,视频处理设备检测到文本添加信号,则在当前界面创建文本编辑组件,优选为在视频播放区域中创建文本编辑组件。所述文本编辑组件即文本框组件,是指一种可移动、可调大小的对象或图形容器。文本框组件具有多个属性,例如,text:在单行编辑情况下获取或设置文本框中当前文本;multiline:指示是否为多行文本框控件;lines:在多行编辑情况下获取或设置文本框控件中的文本行取或设置文本框控件中的文本行;wordwrap:多行文本框中,如果一行的宽度超出控件的宽度,其文本是否自动换行等,通过设置文本框组件的属性,可以控制该文本框组件中所显示的文本内容的显示格式。在android中,文本框组件使用textview表示,用于在屏幕上显示文本。android中的文本框可以显示单行文本(android:singleline="true")也可以是多行文本(android:singleline="false"),以及带图片(android:drawabletop="@drawable/ic_launcher")的文本等。当然,可以对所述文本编辑组件进行设置,如设置文本框的边框形状、颜色、线条宽度、底色等。

需要说明的是,所述第一设定区域为视频播放区域中的任一区域,在所述第一设定区域中可以包括多个文本编辑组件,也就是说,在视频播放区域可以同时显示多个文本。当视频处理设备检测到文本添加信号时,不去检测在默认的第一设定区域的默认位置是否已经存在文本编辑组件而直接在该位置再次创建文本编辑组件;也可以理解为所述第一设定区域中各组件显示位置是按顺序排列的,当视频处理设备检测到文本添加信号时,按照顺序依次遍历第一设定区域中各位置中是否已经存在文本编辑组件,若存在,则将当前需要创建的文本编辑组件排列在下一个位置;当然,还可以当视频处理设备检测到文本添加信号时,直接在视频播放区域随机创建文本编辑组件。

可选的,在用户输入文本添加操作前,可先暂停正在播放的源视频,从而可以在当前帧图像上进行文本编辑。其中,可通过触控播放键进行暂停,也可以是在用户输入文本添加操作时,源视频同步暂停播放,或者输入语音信号控制暂停等方式。

s102,所述视频处理设备获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数;

可以理解的是,所述文本内容可以包括文字、表情图片、符号、图片等任何形式的数据或其组合,所述文字可以为不同语言的文字,如中文、英文、法文等。用户可通过视频处理设备的键盘(实体键盘按键或虚拟键盘控件)或手写区域输入文本内容,也可以通过视频处理设备的语音接收器输入语音信号并进行解析以生成文本内容。

所述文本内容的内容参数可以包含文本动画格式,如旁白、冒泡、弹幕、标题、颤抖以及跑马灯等格式,若后续还需要扩展新的文本动画格式时,可通过字幕基类(如qhostickerstyleconfig)进行添加。所述文本内容的内容参数还可以包含文本风格,如字体形式、字体大小、字体颜色、描边颜色、描边宽度等,可以理解为任何一种文本动画格式都可以对应所有种类的文本风格,还可以理解为,每一种文本动画格式只对应几种设定的文本风格。所述文本内容的内容参数还可以包含文本内容对应的文本显示时间信息,如文本起始时间、文本结束时间、文本持续时间。可对其中的一个内容参数进行设置,也可同时对其中的两个或者多个进行设置。当然,若用户当前未对文本内容进行参数设置,则所述文本参数是指默认的(预设的)文本参数。所述默认的文本参数可以是用户预设的,也可以是系统自带的。

可选的,当对文本显示时间进行调整时,源视频也可以随着调整时间同步调整。即当针对所述文本起始时间进行时间调整时,视频处理设备采用调整后的文本起始时间所指示的图替换所述视频播放区域的当前显示图像;当对所述文本结束时间进行时间调整时,视频处理设备采用调整后的文本结束时间所指示的图像替换所述视频播放区域的当前显示图像。

具体的,若在视频播放区域包括多个文本编辑组件时,通过选择其一作为用户输入文本内容的组件,若在视频播放区域只包括一个文本编辑组件,用户在文本编辑组件中输入文本内容后,可以点击当前界面上的完成按钮以完成对文本内容的编辑过程,并可由字幕容器视图(如qhostickercontainedview)承载字幕内容,以实现对整个文本内容的缩放,移动以及删除功能。同时,将文本内容通过渲染实时显示。当所输入的文本内容实时显示在第一设定区域时,用户可对所输入的文本内容的内容参数进行设置,并由图层动画工具(如qholayeranimationutil)实现内容参数的设置功能。如用户在当前界面中除所述视频播放区域以外的第二设定区域所显示的文本动画格式集合中选择其一,视频播放设备获取针对所述文本内容在文本动画格式集合中所选择的文本动画格式以完成对文本动画格式的设置。当然,还可以通过用户在文本动画格式集合上输入的切换操作实现文本动画格式的切换。如用户在当前界面中除所述视频播放区域以外的第三设定区域所显示的文本风格集合中选择其一,视频播放设备获取针对所述文本内容在文本风格集合中所选择的文本风格以完成对文本风格的设置。如用户在所述当前界面中除所述视频播放区域以外的第四设定区域所显示的文本播放时间信息进行调整,视频播放设备获取针对所述文本内容对应的文本播放时间信息所设置的时间调整信息。

其中,将文本内容的显示过程通过用户界面ui控件进行渲染实现。例如,对于ios系统,可采用uilabel实现。当用户输入新的文本内容时,视频播放设备会遍历当前字幕样式中所有的uilabel,将当前输入的文本内容赋值给该uilabel并实时渲染。所述uilabel继承自uiview,是ios中使用非常频繁的一个视图控件一般用于显示文字。

例如,其创建过程可以为:

uilabel*label=[[uilabelalloc]initwithframe:cgrectmake(20,64,100,30)];

[self.viewaddsubview:label];

再通过使用直接“.”属性英文名称,或者“set”属性英文名称实现属性设置,如:

label.backgroundcolor=[uicoloryellowcolor];//设置背景颜色

label.textcolor=[uicolorredcolor];//设置label上文字的颜色

label.text=@"我是一个uilabel";//设置label上的文字

label.font=[uifontsystemfontofsize:15];//设置label上文字的大小默认为15

label.textalignment=nstextalignmentcenter;//设置文字位子默认靠左

label.numberoflines=0;//设置行数默认为1,当为0时可以就是设置多行

label.font=[uifontfontwithname:@"arial"size:30];//设置内容字体和字体大小

label.highlighted=yes;//label是否高亮。

可选的,在获取所输入的文本内容后,可通过字幕数据管理器(如qhostickeritemmanager)对目标视频中所显示的文本内容进行文本修改、文本删除、文本查询或者文本缩放等处理。

s103,所述视频处理设备基于所述内容参数将所述文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

可以理解的是,所述文本内容与所述源视频的合成处理是指将所导出的文本内容与源视频进行对齐(中心点对齐和字号大小对齐)后将文本内容添加到源视频中的过程。若未对所述文本内容的文本参数进行设置,则所述文本内容是指采用默认的文本参数所显示的文本内容,若对所述文本内容的文本参数进行了设置,则所述文本内容是指采用设置过的内容参数所显示的特效文本内容。

其中,可采用字幕导出工具(如qhoexportparam)导出文本内容,以保证文本内容中的每个字幕在不同的分辨率之下导出的字号大小和中心点位置保持一致。所述字幕导出工具可通过文本内容在基准视频下的字号大小以及中心点位置与当前设备下的字号大小以及中心点位置计算出文本内容在当前设备的视频中的中心点位置以及字号大小。

具体的,视频处理设备将所述内容参数与所述文本内容进行合成处理,从而得到所述文本内容对应的特效文本内容并导出,然后获取所述文本内容在基准视频分辨率下的第一中心点坐标以及第一字体大小,并获取所述当前视频分辨率与所述基准视频分辨率的缩放比例,基于所述缩放比例对第一中心点坐标以及第一字体大小进行同比例缩放,从而得到所述文本内容在所述当前视频分辨率下的第二中心点坐标以及第二字体大小,再基于所述第二中心点坐标以及第二字体大小将所述特效文本内容添加到所述源视频中(如通过合成工具avvideocompositioncoreanimationtool将特效文本内容与源视频合成),从而得到添加了文本内容(即字幕)的目标视频,进而对目标视频进行渲染以在当前视频分辨率下进行显示。

可选的,在生成目标视频之后,可控制该目标视频的播放,同时,还可通过字幕数据管理器(如qhostickeritemmanager)对目标视频中所显示的文本内容进行编辑,如修改文本内容、删除文本内容、添加文本内容等。

当然,也可以是获取在文本编辑组件中输入的文本内容后,通过字幕数据管理器(如qhostickeritemmanager)对目标视频中所显示的文本内容进行编辑,如修改文本内容、删除文本内容、添加文本内容等。

在本发明实施例中,通过获取针对当前界面播放的源视频所输入的文本添加信号,基于该文本添加信号在源视频的视频播放区域中的第一设定区域创建文本编辑组件,并获取在文本编辑组件中所输入的文本内容以及文本内容的内容参数,基于该内容参数将文本内容与源视频进行合成处理,从而实现将文本内容(字幕)添加到视频中。可以直接在当前界面完成对视频添加字幕的过程,能够将所添加的字幕实时显示在视频上,可以提升交互的实时性以及添加字幕的便利性。

请参见图3,为本发明实施例提供了一种视频处理方法的流程示意图。如图3所示,本发明实施例的所述方法可以包括以下步骤s201-步骤s210。

s201,视频处理设备获取针对当前界面播放的源视频所输入的文本添加信号,基于所述文本添加信号在所述源视频的视频播放区域中的第一设定区域创建文本编辑组件;

可以理解的是,所述源视频是指在当前界面正在播放或即将播放的视频文件。所述源视频的格式可以为avi格式、quicktime格式、realvideo格式、navi格式、divx格式或mpeg格式等。

可通过用户在视频处理设备上输入获取视频文件的操作信号后通过视频处理设备的视频输入单元获取源视频文件,例如,从本地视频库(如相册)中选择获取、或者是当前通过摄像头拍摄获取、或者当前从网络下载获取等。

所述源视频在当前界面的视频播放区域进行显示,所述视频播放区域可以为当前界面的全部区域,如全屏显示区域,也可以为当前界面的一部分区域。例如,如图4所示为当前界面的界面示意图,在当前界面中可以包括多个区域,1为视频播放区域、2为视频编辑选项显示区域、3为文本的时间显示区域、4为文本动画格式显示区域等。其中,所述源视频在当前界面的视频播放区域1进行显示。

具体的,当用户针对当前界面所显示的源视频进行文本添加操作时,如通过点击2中的“添加字幕”虚拟控件、通过语音接收器输入语音“添加字幕”、采用虚拟键盘输入“添加字幕”等操作,视频处理设备检测到文本添加信号,则在当前界面创建文本编辑组件,优选为在视频播放区域1中创建文本编辑组件。所述文本编辑组件即文本框组件,是指一种可移动、可调大小的对象或图形容器。文本框组件具有多个属性,例如,text:在单行编辑情况下获取或设置文本框中当前文本;multiline:指示是否为多行文本框控件;lines:在多行编辑情况下获取或设置文本框控件中的文本行取或设置文本框控件中的文本行;wordwrap:多行文本框中,如果一行的宽度超出控件的宽度,其文本是否自动换行等,通过设置文本框组件的属性,可以控制该文本框组件中所显示的文本内容的显示格式。在android中,文本框组件使用textview表示,用于在屏幕上显示文本。android中的文本框可以显示单行文本(android:singleline="true")也可以是多行文本(android:singleline="false"),以及带图片(android:drawabletop="@drawable/ic_launcher")的文本等。当然,可以对所述文本编辑组件进行设置,如设置文本框的边框形状、颜色、线条宽度、底色等。

需要说明的是,所述第一设定区域为视频播放区域中的任一区域,在所述第一设定区域中可以包括多个文本编辑组件,也就是说,在视频播放区域可以同时显示多个文本,如图4中在视频播放区域1中同时显示“aaa”、“bbb”和“ccc”。当视频处理设备检测到文本添加信号时,不去检测在默认的第一设定区域的默认位置是否已经存在文本编辑组件而直接在该位置再次创建文本编辑组件,此时,可能新创建的文本编辑组件会覆盖原本已存在的文本编辑组件,通过将新创建的文本编辑组件或者已存在的文本编辑组件移动至第一设定区域的另一位置即可;也可以理解为所述第一设定区域中各组件显示位置是按顺序排列的,如1号位置、2号位置、3号位置…等,当视频处理设备检测到文本添加信号时,按照顺序依次遍历第一设定区域中各位置中是否已经存在文本编辑组件,如检测1号位置是否存在文本编辑组件,若存在,则遍历2号位置,然后再检测,若2号位置不存在文本编辑组件,则将当前需要创建的文本编辑组件排列在2号位置;当然,还可以当视频处理设备检测到文本添加信号时,直接在视频播放区域随机创建文本编辑组件,若存在文本编辑组件覆盖的情况,可通过手动移动即可。

可选的,在用户输入文本添加操作前,可先暂停正在播放的源视频,从而可以在当前帧图像上进行文本编辑。其中,可通过触控播放键(如图4中区域2的左边的播放控件)进行暂停,也可以是在用户输入文本添加操作(如点击图4中区域2的“添加字幕”控件)时,源视频同步暂停播放。

s202,所述视频处理设备在所述第一设定区域所显示的文本编辑组件集合中获取文本编辑组件;

可以理解的是,所述文本编辑组件集合中包括至少一个文本编辑组件。当在第一设定区域显示有多个文本编辑组件时,如图4所示承载“aaa”、承载“bbb”和承载“ccc”的组件,用户可选择其一作为文本内容输入的组件。

可选的,当在预设时长内未检测到用户针对文本编辑组件集合输入的选择信号时,可将离当前时间最近所创建的文本编辑组件作为文本内容输入的组件。

s203,所述视频处理设备获取在所述文本编辑组件中所输入的文本内容;

可以理解的是,所述文本内容可以包括文字、表情图片(如emoji)、符号、图片等任何形式的数据或其组合,所述文字可以为不同语言的文字,如中文、英文、法文等。用户可通过视频处理设备的键盘(实体键盘按键或虚拟键盘控件)或手写区域输入文本内容,也可以通过视频处理设备的语音接收器输入语音信号并进行解析以生成文本内容。

如图5所示为一种可行的文本内容输入方式,当在第一设定区域创建文本编辑组件后,同步弹出虚拟键盘,通过虚拟键盘输入文本内容,并在输入结束后点击确认手势以完成文本的输入。

具体的,用户在文本编辑组件中输入文本内容后,可以点击当前界面上的完成按钮(如图4中区域2右上角的完成按钮)以完成对文本内容的编辑过程,并可由字幕容器视图(如qhostickercontainedview)承载文本内容,可实现对整个文本内容的缩放,移动以及删除功能。视频处理设备获取所承载的文本内容,并将所述文本内容实时显示在第一设定区域。

其中,将文本内容的显示过程通过用户界面ui控件进行渲染实现。例如,对于ios系统,可采用uilabel实现。当用户输入新的文本内容时,会遍历当前字幕样式中所有的uilabel,并将当前输入的文本内容赋值给该uilabel并实时渲染。所述uilabel继承自uiview,是ios中使用非常频繁的一个视图控件一般用于显示文字。

例如,其创建过程可以为:

uilabel*label=[[uilabelalloc]initwithframe:cgrectmake(20,64,100,30)];

[self.viewaddsubview:label];

再通过使用直接“.”属性英文名称,或者“set”属性英文名称实现属性设置,如:

label.backgroundcolor=[uicoloryellowcolor];//设置背景颜色

label.textcolor=[uicolorredcolor];//设置label上文字的颜色

label.text=@"我是一个uilabel";//设置label上的文字

label.font=[uifontsystemfontofsize:15];//设置label上文字的大小默认为17

label.textalignment=nstextalignmentcenter;//设置文字位子默认靠左

label.numberoflines=0;//设置行数默认为1,当为0时可以就是设置多行

label.font=[uifontfontwithname:@"arial"size:30];//设置内容字体和字体大小

label.highlighted=yes;//label是否高亮。

可选的,在获取所输入的文本内容后,可通过字幕数据管理器(如qhostickeritemmanager)对目标视频中所显示的文本内容进行文本修改、文本删除、文本查询或者文本缩放等处理。

s204,所述视频处理设备获取针对所述文本内容在文本动画格式集合中所选择的文本动画格式,所述文本动画格式集合位于所述当前界面中除所述视频播放区域以外的第二设定区域;

可以理解的是,所述文本动画格式集合位于所述当前界面中除所述视频播放区域以外的第二设定区域,如图4中的区域4。在所述文本动画格式集合中包括至少一个文本动画格式,可以为旁白、冒泡、弹幕、标题、颤抖以及跑马灯等格式。当然,当所包含的文本动画格式数量较多时,可通过滚动显示所包含的文本动画格式。

若后续还需要扩展新的文本动画格式时,可通过字幕基类(如qhostickerstyleconfig)添加至文本动画格式集合中。

具体的,用户在当前界面中除所述视频播放区域以外的第二设定区域(如图4中的区域4)所显示的文本动画格式集合中选择其一,视频播放设备获取针对所述文本内容在文本动画格式集合中所选择的文本动画格式以完成对文本动画格式的设置。当然,还可以通过用户在文本动画格式集合上输入的切换操作实现文本动画格式的切换。

若当前针对三个文本内容所选择的文本动画格式分别为“普通字幕”、“冒泡动画”和“弹幕动画”,则在第一设定区域分别以这三种文本动画格式进行展示,如图6所示。

可选的,若用户当前未选择文本动画格式,则可认为所述文本动画格式是指默认的(预设的)文本动画格式。所述默认的文本动画格式可以是用户预设的,也可以是系统自带的。

s205,所述视频处理设备获取针对所述文本内容在文本风格集合中所选择的文本风格,所述文本风格集合位于所述当前界面中除所述视频播放区域以外的第三设定区域;

可以理解的是,文本风格集合位于所述当前界面中除所述视频播放区域以外的第三设定区域,如图4中的区域4。在所述文本风格集合中包括至少一个文本风格,所述文本风格包括字体形式、字体大小、字体颜色、描边颜色、描边宽度等。可以理解为任何一种文本动画格式都可以对应所有种类的文本风格,还可以理解为,每一种文本动画格式只对应几种设定的文本风格。

例如,一共有10种文本动画格式,100种文本风格,可以为这10种文本动画格式中每种文本动画格式均对应100种文本风格,即每种文本动画格式可以配备任意形式的文本风格。也可以为第1种文本动画格式对应1~10种文本风格,第2种文本动画格式对应11~20种文本风格,…,第10种文本动画格式对应10~100种文本风格,即每种文本动画格式只配备特定类型的文本风格,当然,每种动画格式所对应的文本风格的数量也可以不同。

同时,所述第三设定区域和所述第二设定区域可以为同一区域,也可以为不同区域。即可以通过同一区域实现对文本风格以及文本动画格式的设置,也可通过不同的区域分别进行设置。当然,对于文本风格以及文本动画格式的设置,可以只选择其一进行设置,也可以都设置,还可以都不设置。

具体的,用户在当前界面中除所述视频播放区域以外的第三设定区域所显示的文本风格集合中选择其一,视频播放设备获取针对所述文本内容在文本风格集合中所选择的文本风格以完成对文本风格的设置。

s206,所述视频处理设备获取针对所述文本内容对应的文本播放时间信息所设置的时间调整信息,所述文本播放时间信息位于所述当前界面中除所述视频播放区域以外的第四设定区域;

可以理解的是,所述文本播放时间信息包括文本起始时间、文本结束时间和文本持续时间。如图4中的区域3,以进度条的形式显示文本播放时间信息,且一个文本内容对应一个文本播放时间信息。

具体的,用户在所述当前界面中除所述视频播放区域以外的第四设定区域(如图4中的区域3)所显示的文本播放时间信息进行调整,当获取针对所述文本起始时间所设置的时间调整信息时,基于所述时间调整信息对所述文本起始时间进行调整,并将视频播放区域的显示图像随着其实时间的移动也同步移动,即采用调整后的文本起始时间所指示的图像替换所述视频播放区域的当前显示图像;当获取针对所述文本结束时间所设置的时间调整信息时,基于所述时间调整信息对所述文本结束时间进行调整,并将视频播放区域的显示图像随着其实时间的移动也同步移动,即采用调整后的文本结束时间所指示的图像替换所述视频播放区域的当前显示图像。

可选的,当对文本显示时间进行调整时,源视频也可以随着调整时间同步调整。例如,如图4所示,当拖动“ccc”对应的文本起始时间至时刻t时,区域1中的显示画面也随着变化并停留在t时刻对应的画面。

例如,视频总时长为5分钟,所对应的起始时间为00:00:00,结束时间为00:05:00,而所添加的文本播放时间(以进度条形式显示)也是00:00:00~00:05:00,此时,视频播放区域的当前显示画面停留在00:00:00时刻,若将进度条的起点位置移动到00:01:00时,视频播放区域的显示画面同步变化并最终停留在00:01:00时刻对应的图像。

s207,所述视频处理设备将所述内容参数与所述文本内容进行合成处理,得到所述文本内容对应的特效文本内容;

可以理解的是,将内容参数与文本内容的合成是指为文本内容添加特效的过程。

例如,文本内容为“aaa”,内容参数为“弹幕、红绿黄渐变色”,那么所生成的特效文本内容为以“弹幕”和“红绿黄渐变色”形式显示的“aaa”。

当然,若未对所述文本内容的文本参数进行设置,则所述文本内容是指采用默认的文本参数所显示的文本内容。

s208,所述视频处理设备获取所述文本内容在所述源视频的当前视频分辨率下的文本对齐信息;

可以理解的是,所述当前视频分辨率是指当前播放源视频的视频处理设备的显示分辨率。所述显示分辨率是屏幕图像的精密度,是指显示器所能显示的像素有多少。

所述文本对齐信息是指文本内容在当前视频分辨率下的显示位置以及显示字体大小。

在一种具体的实现方式中,所述视频处理设备获取所述文本内容在所述源视频的当前视频分辨率下的文本对齐信息,可以包括以下步骤,如图7所示:

s301,所述视频处理设备获取所述文本内容在基准视频分辨率下的第一中心点坐标以及第一字体大小;

可以理解的是,所述基准视频分辨率即为针对所有视频处理设备所设置的标准视频分辨率大小,如s0*t0。

例如,如图8所示为基准视频分辨率s1*t1,中心点坐标为o1(坐标原点),而文本编辑组件中的文本内容在s1*t1下的第一中心点坐标为o2(x2,y2)而言,第一字体大小为“楷体小三”。

s302,所述视频处理设备获取所述当前视频分辨率与所述基准视频分辨率的缩放比例,基于所述缩放比例分别对所述第一中心点坐标以及所述第一字体大小进行调整,得到所述文本内容在所述当前视频分辨率下的第二中心点坐标以及第二字体大小,所述文本对齐信息包括第二中心点坐标以及第二字体大小。

例如,如图10所示,若当前视频分辨率为s2*t2,中心点坐标为o3(坐标原点),那么当前视频分辨率与基准视频分辨率的缩放比例为横轴s2/s1,纵轴t2/t1,此时,通过对第一中心点坐标o2和第一字体大小为“楷体小三”同比例缩放,该文本内容在当前视频分辨率下的第二中心点坐标o4为(x2*s2/s1,y2*t2/t1),对应的第二字体大小为也同比缩放,如“楷体小四”。

s209,所述视频处理设备基于所述文本对齐信息将所述特效文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

可以理解的是,所述文本内容与所述源视频的合成处理是指将所导出的文本内容与源视频进行对齐(中心点对齐和字体大小对齐)后将文本内容添加到源视频中的过程。

具体的,将特效文本内容的第二中心点与源视频中第二中心点指示的坐标重合,并将特效文本内容以第二字体大小进行显示,通过采用合成工具(如avvideocompositioncoreanimationtool)将特效文本内容与源视频合成,从而得到添加了文本内容(即字幕)的目标视频,进而对目标视频进行渲染以在当前视频分辨率下进行显示。

s210,所述视频处理设备获取针对所述文本内容所输入的文本编辑信号,基于所述文本编辑信号编辑所述文本内容,所述文本编辑信号包括如下至少一种:文本修改信号、文本删除信号、文本查询信号以及文本缩放信号。

可以理解的是,所述文本编辑信号是指用户针对所显示的目标视频输入的文本编辑操作,如文本修改、文本删除、文本查询或者文本缩放等。也就是说,在视频中添加了字幕后,还可对所添加的字幕进行编辑。

具体的,在生成目标视频之后,可控制该目标视频的播放,当用户想要针对所播放的目标视频中的文本内容进行编辑时,可通过字幕数据管理器(如qhostickeritemmanager)对目标视频中所显示的文本内容进行文本修改、文本删除、文本查询或者文本缩放等处理。

例如,针对所播放的目标视频中所显示的文本内容“aaa”、“bbb”和“ccc”,当用户想要删除“aaa”时,可基于用户针对“aaa”所输入的触发操作由字幕数据管理器删除“aaa”,那么再继续播放时,目标视频中所显示的文本内容只包括“bbb”和“ccc”。

在本发明实施例中,通过获取针对当前界面播放的源视频所输入的文本添加信号,基于该文本添加信号在源视频的视频播放区域中的第一设定区域创建文本编辑组件,并获取在文本编辑组件中所输入的文本内容以及文本内容的内容参数,基于该内容参数将文本内容与源视频进行合成处理,从而实现将文本内容(字幕)添加到视频中。可以直接在当前界面完成对视频添加字幕的过程,能够将所添加的字幕实时显示在视频上,可以提升交互的实时性以及添加字幕的便利性。同时,还可以对文本内容的内容参数进行设置,如动画展示、移动或者缩放等并将文本内容放置在视频中合适的位置上,丰富了显示效果并增加了视频处理的趣味性。

下面将结合具体的实施场景对本发明提供的视频处理方法进行描述。

当用户在手机上观看视频时,想要在该视频上添加文本内容(字幕),此时,通过点击显示界面的播放控件暂停视频的播放,然后再点击显示界面的“添加字幕”控件,此时,手机检测到针对该视频所输入的文本添加信号,并在该视频的显示区域创建文本编辑组件(如文本框),并可以在另一区域同步生成该文本框对应的显示进度条;

若添加了多个文本框时,可通过用户的选择来确定当前用于输入文本内容的文本框;

用户再通过手机上的虚拟键盘输入想要添加的文本内容,输入完成后进行确认,同时,还可以在显示界面的文本格式集合中选择喜欢的文本格式以及所对应的文本字样,比如字体、字号、文本颜色等,另外,还可以对显示进度条所显示的时间进行调整,那么所暂停的图像也同一移动并最终停留在调整后的时间所对应的画面。在用户设置完成后,手机获取所设置的参数以及所输入的文本内容;

手机将所获取的参数以及文本内容进行合成,从而得到特效文本内容,并计算所添加的文本内容在手机的当前视频分辨率下的文本对齐信息(如添加位置以及字号大小),最后基于所得到的文本对齐信息将特效文本内容添加到该视频上,从而将文本内容添加到视频中合适的位置上,得到所述源视频对应的目标视频。能够将所添加的字幕实时显示在视频上,可以提升交互的实时性以及添加字幕的便利性,丰富了显示效果。

另外,在添加完成后,用户还可以对所添加的文本内容进行编辑,如删除所添加的文本内容或修改所添加的文本内容等,增加了视频处理的趣味性。

同时,还可以将所得到的目标视频分享至其他用户或者发布到共享平台,又或者通过用户点击播放键继续播放。

下面将结合附图10-附图14,对本发明实施例提供的视频处理设备进行详细介绍。需要说明的是,附图10-附图14所示的视频处理设备,用于执行本发明图2-图9所示实施例的方法,为了便于说明,仅示出了与本发明实施例相关的部分,具体技术细节未揭示的,请参照本发明图2-图9所示的实施例。

请参见图10,为本发明实施例提供了一种视频处理设备的结构示意图。如图10所示,本发明实施例的所述视频处理设备1可以包括:对象创建单元11、参数获取单元12和视频生成单元13。

组件创建单元11,用于获取针对当前界面播放的源视频所输入的文本添加信号,基于所述文本添加信号在所述源视频的视频播放区域中的第一设定区域创建文本编辑组件;

可以理解的是,所述源视频是指在当前界面正在播放或即将播放的视频文件。所述源视频的格式可以为avi格式、quicktime格式、realvideo格式、navi格式、divx格式或mpeg格式等。可通过用户在视频处理设备上输入获取视频文件的操作信号后通过视频处理设备的视频输入单元获取源视频文件,例如,从本地视频库(如相册)中选择获取、或者是当前通过摄像头拍摄获取、或者当前从网络下载获取等。

所述源视频在当前界面的视频播放区域进行显示,所述视频播放区域可以为当前界面的全部区域,如全屏显示区域,也可以为当前界面的一部分区域。

需要说明的是,所述第一设定区域为视频播放区域中的任一区域,在所述第一设定区域中可以包括多个文本编辑组件,也就是说,在视频播放区域可以同时显示多个文本。

可选的,在用户输入文本添加操作前,可先暂停正在播放的源视频,从而可以在当前帧图像上进行文本编辑。其中,可通过触控播放键进行暂停,也可以是在用户输入文本添加操作时,源视频同步暂停播放,或者输入语音信号控制暂停等方式。

参数获取单元12,用于获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数;

可以理解的是,所述文本内容可以包括文字、表情图片、符号、图片等任何形式的数据或其组合,所述文字可以为不同语言的文字,如中文、英文、法文等。用户可通过视频处理设备的键盘(实体键盘按键或虚拟键盘控件)或手写区域输入文本内容,也可以通过视频处理设备的语音接收器输入语音信号并进行解析以生成文本内容。

所述文本内容的内容参数可以包含文本动画格式,如旁白、冒泡、弹幕、标题、颤抖以及跑马灯等格式,若后续还需要扩展新的文本动画格式时,可通过字幕基类(如qhostickerstyleconfig)进行添加。当然,还可以通过用户在文本动画格式集合上输入的切换操作实现文本动画格式的切换。所述文本内容的内容参数还可以包含文本风格,如字体形式、字体大小、字体颜色、描边颜色、描边宽度等,可以理解为任何一种文本动画格式都可以对应所有种类的文本风格,还可以理解为,每一种文本动画格式只对应几种设定的文本风格。所述文本内容的内容参数还可以包含文本内容对应的文本显示时间信息,如文本起始时间、文本结束时间、文本持续时间。可对其中的一个内容参数进行设置,也可同时对其中的两个或者多个进行设置。当然,若用户当前未对文本内容进行参数设置,则所述文本参数是指默认的(预设的)文本参数。所述默认的文本参数可以是用户预设的,也可以是系统自带的。

可选的,当对文本显示时间进行调整时,源视频也可以随着调整时间同步调整。即当针对所述文本起始时间进行时间调整时,所述视频播放区域的当前显示图像调整至所述调整后的文本起始时间所指示的图像;当对所述文本结束时间进行时间调整时,所述视频播放区域的当前显示图像调整至所述调整后的文本结束时间所指示的图像。

其中,将文本内容的显示过程通过用户界面ui控件进行渲染实现。例如,对于ios系统,可采用uilabel实现。这里使用ios系统提供的ui控件uilabel实现。当用户输入新的文本内容时,会遍历当前字幕样式中所有的uilabel,并将当前输入的文本内容赋值给该uilabel并实时渲染。所述uilabel继承自uiview,是ios中使用非常频繁的一个视图控件一般用于显示文字。

可选的,在获取所输入的文本内容后,可通过字幕数据管理器(如qhostickeritemmanager)对目标视频中所显示的文本内容进行文本修改、文本删除、文本查询或者文本缩放等处理。

视频生成单元13,用于基于所述内容参数将所述文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

可以理解的是,所述文本内容与所述源视频的合成处理是指将所导出的文本内容与源视频进行对齐(中心点对齐和字号大小对齐)后将文本内容添加到源视频中的过程。若未对所述文本内容的文本参数进行设置,则所述文本内容是指采用默认的文本参数所显示的文本内容,若对所述文本内容的文本参数进行了设置,则所述文本内容是指采用设置过的内容参数所显示的特效文本内容。

其中,可采用字幕导出工具(如qhoexportparam)导出文本内容,以保证文本内容中的每个字幕在不同的分辨率之下导出的字号大小和中心点位置保持一致。所述字幕导出工具可通过文本内容在基准视频下的字号大小以及中心点位置与当前设备下的字号大小以及中心点位置计算出文本内容在当前设备的视频中的中心点位置以及字号大小。

可选的,在生成目标视频之后,可控制该目标视频的播放,同时,还可通过字幕数据管理器(如qhostickeritemmanager)对目标视频中所显示的文本内容的进行编辑,如修改文本内容、删除文本内容、添加文本内容等。

当然,也可以是获取在文本编辑组件中输入的文本内容后,通过字幕数据管理器(如qhostickeritemmanager)对目标视频中所显示的文本内容的进行编辑,如修改文本内容、删除文本内容、添加文本内容等。

在本发明实施例中,通过获取针对当前界面播放的源视频所输入的文本添加信号,基于该文本添加信号在源视频的视频播放区域中的第一设定区域创建文本编辑组件,并获取在文本编辑组件中所输入的文本内容以及文本内容的内容参数,基于该内容参数将文本内容与源视频进行合成处理,从而实现将文本内容(字幕)添加到视频中。可以直接在当前界面完成对视频添加字幕的过程,能够将所添加的字幕实时显示在视频上,可以提升交互的实时性以及添加字幕的便利性。

请参见图11,为本发明实施例提供了一种视频处理设备的结构示意图。如图11所示,本发明实施例的所述视频处理设备1可以包括:对象创建单元11、参数获取单元12、视频生成单元13和文本编辑单元14。

组件创建单元11,用于获取针对当前界面播放的源视频所输入的文本添加信号,基于所述文本添加信号在所述源视频的视频播放区域中的第一设定区域创建文本编辑组件;

可以理解的是,所述源视频是指在当前界面正在播放或即将播放的视频文件。所述源视频的格式可以为avi格式、quicktime格式、realvideo格式、navi格式、divx格式或mpeg格式等。可通过用户在视频处理设备上输入获取视频文件的操作信号后通过视频处理设备的视频输入单元获取源视频文件,例如,从本地视频库(如相册)中选择获取、或者是当前通过摄像头拍摄获取、或者当前从网络下载获取等。

所述源视频在当前界面的视频播放区域进行显示,所述视频播放区域可以为当前界面的全部区域,如全屏显示区域,也可以为当前界面的一部分区域。例如,如图4所示,在当前界面中可以包括多个区域,1为视频播放区域、2为视频编辑选项显示区域、3为文本的时间显示区域、4为文本动画格式显示区域等。其中,所述源视频在当前界面的视频播放区域1进行显示。

需要说明的是,所述第一设定区域为视频播放区域中的任一区域,在所述第一设定区域中可以包括多个文本编辑组件,也就是说,在视频播放区域可以同时显示多个文本,如图4中同时显示“aaa”、“bbb”和“ccc”。当组件创建单元11检测到文本添加信号时,不去检测在默认的第一设定区域的默认位置是否已经存在文本编辑组件而直接在该位置再次创建文本编辑组件,此时,可能新创建的文本编辑组件会覆盖原本已存在的文本编辑组件,通过将新创建的文本编辑组件或者已存在的文本编辑组件移动至第一设定区域的另一位置即可;也可以理解为所述第一设定区域中各组件显示位置是按顺序排列的,如1号位置、2号位置、3号位置…等,当组件创建单元11检测到文本添加信号时,按照顺序依次遍历第一设定区域中各位置中是否已经存在文本编辑组件,如检测1号位置是否存在文本编辑组件,若存在,则遍历2号位置,然后再检测,若2号位置不存在文本编辑组件,则将当前需要创建的文本编辑组件排列在2号位置;当然,还可以当组件创建单元11检测到文本添加信号时,直接在视频播放区域随机创建文本编辑组件,若存在文本编辑组件覆盖的情况,可通过手动移动即可。

可选的,在用户输入文本添加操作前,可先暂停正在播放的源视频,从而可以在当前帧图像上进行文本编辑。其中,可通过触控播放键(如图4中区域2的左边的播放控件)进行暂停,也可以是在用户输入文本添加操作(如点击图4中区域2的“添加字幕”控件)时,源视频同步暂停播放,或者输入语音信号控制暂停等方式。

参数获取单元12,用于获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数;

可以理解的是,所述文本内容可以包括文字、表情图片、符号、图片等任何形式的数据或其组合,所述文字可以为不同语言的文字,如中文、英文、法文等。用户可通过视频处理设备的键盘(实体键盘按键或虚拟键盘控件)或手写区域输入文本内容,也可以通过视频处理设备的语音接收器输入语音信号并进行解析以生成文本内容。

所述文本内容的内容参数可以包含文本动画格式,如旁白、冒泡、弹幕、标题、颤抖以及跑马灯等格式,若后续还需要扩展新的文本动画格式时,可通过字幕基类(如qhostickerstyleconfig)进行添加。所述文本内容的内容参数还可以包含文本风格,如字体形式、字体大小、字体颜色、描边颜色、描边宽度等,可以理解为任何一种文本动画格式都可以对应所有种类的文本风格,还可以理解为,每一种文本动画格式只对应几种设定的文本风格。所述文本内容的内容参数还可以包含文本内容对应的文本显示时间信息,如文本起始时间、文本结束时间、文本持续时间。可对其中的一个内容参数进行设置,也可同时对其中的两个或者多个进行设置。当然,若用户当前未对文本内容进行参数设置,则所述文本参数是指默认的(预设的)文本参数。所述默认的文本参数可以是用户预设的,也可以是系统自带的。

可选的,如图12所示,所述参数获取单元12,包括:

组件获取子单元121,用于在所述第一设定区域所显示的文本编辑组件集合中获取文本编辑组件;

可以理解的是,所述文本编辑组件集合中包括至少一个文本编辑组件。当在第一设定区域显示有多个文本编辑组件时,如图2所示承载“aaa”、承载“bbb”和承载“ccc”的组件,用户可选择其一作为文本内容输入的组件。

可选的,当在预设时长内未检测到用户针对文本编辑组件集合输入的选择信号时,可将离当前时间最近所创建的文本编辑组件作为文本内容输入的组件。

参数获取子单元122,用于获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数。

可以理解的是,所述文本内容可以包括文字、表情图片(如emoji)、符号、图片等任何形式数据或其组合,所述文字可以为不同语言的文字,如中文、英文、法文等。用户可通过视频处理设备的键盘(实体键盘按键或虚拟键盘控件)或手写区域输入文本内容,也可以通过视频处理设备的语音接收器输入语音信号并进行解析以生成文本内容。

如图5所示为一种可行的文本内容输入方式,当在第一设定区域创建文本组件后,同步弹出虚拟键盘,通过虚拟键盘输入文本内容,并在输入结束后点击确认手势以完成文本的输入。

其中,将文本内容的显示过程通过用户界面ui控件进行渲染实现。例如,对于ios系统,可采用uilabel实现。这里使用ios系统提供的ui控件uilabel实现。当用户输入新的文本内容时,会遍历当前字幕样式中所有的uilabel,并将当前输入的文本内容赋值给该uilabel并实时渲染。所述uilabel继承自uiview,是ios中使用非常频繁的一个视图控件一般用于显示文字。

可选的,在获取所输入的文本内容后,可通过字幕数据管理器(如qhostickeritemmanager)对目标视频中所显示的文本内容进行文本修改、文本删除、文本查询或者文本缩放等处理。

可选的,所述参数获取单元12,具体用于:

获取针对所述文本内容在文本动画格式集合中所选择的文本动画格式,所述文本动画格式集合位于所述当前界面中除所述视频播放区域以外的第二设定区域,和/或;

可以理解的是,所述文本动画格式集合位于所述当前界面中除所述视频播放区域以外的第二设定区域,如图4中的区域4。在所述文本动画格式集合中包括至少一个文本动画格式,可以为旁白、冒泡、弹幕、标题、颤抖以及跑马灯等格式。当然,当所包含的文本动画格式数量较多时,可通过滚动显示所包含的文本动画格式。当然,还可以通过用户在文本动画格式集合上输入的切换操作实现文本动画格式的切换。

若后续还需要扩展新的文本动画格式时,可通过字幕基类(如qhostickerstyleconfig)添加至文本动画格式集合中。

具体的,用户在当前界面中除所述视频播放区域以外的第二设定区域(如图4中的区域4)所显示的文本动画格式集合中选择其一,参数获取单元12获取针对所述文本内容在文本动画格式集合中所选择的文本动画格式以完成对文本动画格式的设置。

若当前针对三个文本内容所选择的文本动画格式分别为“普通字幕”、“冒泡动画”和“弹幕动画”,则在第一设定区域分别以这三种文本动画格式进行展示,如图4所示。

可选的,若用户当前未选择文本动画格式,则可认为所述文本动画格式是指默认的(预设的)文本动画格式。所述默认的文本动画格式可以是用户预设的,也可以是系统自带的。

获取针对所述文本内容在文本风格集合中所选择的文本风格,所述文本风格集合位于所述当前界面中除所述视频播放区域以外的第三设定区域,和/或;

文本风格集合位于所述当前界面中除所述视频播放区域以外的第三设定区域,如图4中的区域4。在所述文本风格集合中包括至少一个文本风格,所述文本风格包括字体形式、字体大小、字体颜色、描边颜色、描边宽度等。可以理解为任何一种文本动画格式都可以对应所有种类的文本风格,还可以理解为,每一种文本动画格式只对应几种设定的文本风格。

同时,所述第三设定区域和所述第二设定区域可以为同一区域,也可以为不同区域。即可以通过同一区域实现对文本风格以及文本动画格式的设置,也可通过不同的区域分别进行设置。当然,对于文本风格以及文本动画格式的设置,可以只选择其一进行设置,也可以都设置,还可以都不设置。

获取针对所述文本内容对应的文本播放时间信息所设置的时间调整信息,所述文本播放时间信息位于所述当前界面中除所述视频播放区域以外的第四设定区域。

可以理解的是,所述文本播放时间信息包括文本起始时间、文本结束时间和文本持续时间。如图4中的区域3,以进度条的形式显示文本播放时间信息,且一个文本内容对应一个文本播放时间信息。

可选的,所述参数获取单元12,具体用于:

当获取针对所述文本起始时间所设置的时间调整信息时,基于所述时间调整信息对所述文本起始时间进行调整,并采用调整后的文本起始时间所指示的图像替换所述视频播放区域的当前显示图像;

当获取针对所述文本结束时间所设置的时间调整信息时,基于所述时间调整信息对所述文本结束时间进行调整,并采用调整后的文本结束时间所指示的图像替换所述视频播放区域的当前显示图像。

可选的,当对文本显示时间进行调整时,源视频也可以随着调整时间同步调整。例如,如图4所示,当拖动“ccc”对应的文本起始时间至时刻t时,区域1中的显示画面也随着变化并停留在t时刻对应的画面。

视频生成单元13,用于基于所述内容参数将所述文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

可选的,如图13所示,所述视频生成单元13,包括:

特效文本生成子单元131,用于将所述内容参数与所述文本内容进行合成处理,得到所述文本内容对应的特效文本内容;

可以理解的是,将内容参数与文本内容的合成是指为文本内容添加特效的过程。

例如,文本内容为“aaa”,内容参数为“弹幕、红绿黄渐变色”,那么所生成的特效文本内容为以“弹幕”和“红绿黄渐变色”形式显示的“aaa”。

当然,若未对所述文本内容的文本参数进行设置,则所述文本内容是指采用默认的文本参数所显示的文本内容。

对齐信息获取子单元132,用于获取所述文本内容在所述源视频的当前视频分辨率下的文本对齐信息;

可以理解的是,所述当前视频分辨率是指当前播放源视频的视频处理设备的显示分辨率。显示分辨率是屏幕图像的精密度,是指显示器所能显示的像素有多少。

所述文本对齐信息是指文本内容在当前视频分辨率下的显示位置以及显示字体大小。

可选的,所述对齐信息获取子单元132,具体用于:

获取所述文本内容在基准视频分辨率下的第一中心点坐标以及第一字体大小;

可以理解的是,所述基准视频分辨率即为针对所有视频处理设备所设置的视频分辨率大小。

获取所述当前视频分辨率与所述基准视频分辨率的缩放比例,基于所述缩放比例分别对所述第一中心点坐标以及所述第一字体大小进行调整,得到所述文本内容在所述当前视频分辨率下的第二中心点坐标以及第二字体大小,所述文本对齐信息包括第二中心点坐标以及第二字体大小。

目标视频生成子单元133,用于基于所述文本对齐信息将所述特效文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

可以理解的是,所述文本内容与所述源视频的合成处理是指将所导出的文本内容与源视频进行对齐(中心点对齐和字体大小对齐)后将文本内容添加到源视频中的过程。

文本编辑单元14,用于获取针对所述文本内容所输入的文本编辑信号,基于所述文本编辑信号编辑所述文本内容,所述文本编辑信号包括如下至少一种:文本修改信号、文本删除信号、文本查询信号以及文本缩放信号。

可以理解的是,所述文本编辑信号是指用户针对所显示的目标视频输入的文本编辑操作,如文本修改、文本删除、文本查询或者文本缩放等。也就是说,在视频中添加了字幕后,还可对所添加的字幕进行编辑。

在本发明实施例中,通过获取针对当前界面播放的源视频所输入的文本添加信号,基于该文本添加信号在源视频的视频播放区域中的第一设定区域创建文本编辑组件,并获取在文本编辑组件中所输入的文本内容以及文本内容的内容参数,基于该内容参数将文本内容与源视频进行合成处理,从而实现将文本内容(字幕)添加到视频中。可以直接在当前界面完成对视频添加字幕的过程,能够将所添加的字幕实时显示在视频上,可以提升交互的实时性以及添加字幕的便利性。同时,还可以对文本内容的内容参数进行设置,如动画展示、移动或者缩放等并将文本内容放置在视频中合适的位置上,丰富了显示效果并增加了视频处理的趣味性。

本发明实施例还提供了一种计算机存储介质,所述计算机存储介质可以存储有多条指令,所述指令适于由处理器加载并执行如上述图2-图9所示实施例的方法步骤,具体执行过程可以参见图2-图9所示实施例的具体说明,在此不进行赘述。

请参见图14,为本发明实施例提供了一种电子设备的结构示意图。如图14所示,所述电子设备1000可以包括:至少一个处理器1001,例如cpu,至少一个网络接口1004,用户接口1003,存储器1005,至少一个通信总线1002。其中,通信总线1002用于实现这些组件之间的连接通信。其中,用户接口1003可以包括显示屏(display)、摄像头(camera),可选用户接口1003还可以包括标准的有线接口、无线接口。网络接口1004可选的可以包括标准的有线接口、无线接口(如wi-fi接口)。存储器1005可以是高速ram存储器,也可以是非不稳定的存储器(non-volatilememory),例如至少一个磁盘存储器。存储器1005可选的还可以是至少一个位于远离前述处理器1001的存储装置。如图14所示,作为一种计算机存储介质的存储器1005中可以包括操作系统、网络通信模块、用户接口模块以及视频处理应用程序。

在图14所示的电子设备1000中,用户接口1003主要用于为用户提供输入的接口,获取用户输入的数据;而处理器1001可以用于调用存储器1005中存储的视频处理应用程序,并具体执行以下操作:

获取针对当前界面播放的源视频所输入的文本添加信号,基于所述文本添加信号在所述源视频的视频播放区域中的第一设定区域创建文本编辑组件;

获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数;

基于所述内容参数将所述文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

在一个实施例中,所述处理器1001在执行获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数时,具体执行以下操作:

在所述第一设定区域所显示的文本编辑组件集合中获取文本编辑组件;

获取在所述文本编辑组件中所输入的文本内容,获取针对所述文本内容所设置的内容参数。

在一个实施例中,所述处理器1001在执行获取针对所述文本内容所设置的内容参数时,具体执行以下操作:

获取针对所述文本内容在文本动画格式集合中所选择的文本动画格式,所述文本动画格式集合位于所述当前界面中除所述视频播放区域以外的第二设定区域,和/或;

获取针对所述文本内容在文本风格集合中所选择的文本风格,所述文本风格集合位于所述当前界面中除所述视频播放区域以外的第三设定区域,和/或;

获取针对所述文本内容对应的文本播放时间信息所设置的时间调整信息,所述文本播放时间信息位于所述当前界面中除所述视频播放区域以外的第四设定区域。

在一个实施例中,所述文本播放时间信息包括文本起始时间和文本结束时间,所述处理器1001在执行获获取针对所述文本内容对应的文本播放时间信息所设置的时间调整信息时,具体执行以下操作:

当获取针对所述文本起始时间所设置的时间调整信息时,基于所述时间调整信息对所述文本起始时间进行调整,并采用调整后的文本起始时间所指示的图像替换所述视频播放区域的当前显示图像;

当获取针对所述文本结束时间所设置的时间调整信息时,基于所述时间调整信息对所述文本结束时间进行调整,并采用调整后的文本结束时间所指示的图像替换所述视频播放区域的当前显示图像。

在一个实施例中,所述处理器1001在执行基于所述内容参数将所述文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频时,具体执行以下操作:

将所述内容参数与所述文本内容进行合成处理,得到所述文本内容对应的特效文本内容;

获取所述文本内容在所述源视频的当前视频分辨率下的文本对齐信息;

基于所述文本对齐信息将所述特效文本内容与所述源视频进行合成处理,得到所述源视频对应的目标视频。

在一个实施例中,所述处理器1001在执行获取所述文本内容在所述源视频的当前视频分辨率下的文本对齐信息时,具体执行以下操作:

获取所述文本内容在基准视频分辨率下的第一中心点坐标以及第一字体大小;

获取所述当前视频分辨率与所述基准视频分辨率的缩放比例,基于所述缩放比例分别对所述第一中心点坐标以及所述第一字体大小进行调整,得到所述文本内容在所述当前视频分辨率下的第二中心点坐标以及第二字体大小,所述文本对齐信息包括第二中心点坐标以及第二字体大小。

在一个实施例中,所述处理器1001还执行以下操作:

获取针对所述文本内容所输入的文本编辑信号,基于所述文本编辑信号编辑所述文本内容,所述文本编辑信号包括如下至少一种:文本修改信号、文本删除信号、文本查询信号以及文本缩放信号。

在本发明实施例中,通过获取针对当前界面播放的源视频所输入的文本添加信号,基于该文本添加信号在源视频的视频播放区域中的第一设定区域创建文本编辑组件,并获取在文本编辑组件中所输入的文本内容以及文本内容的内容参数,基于该内容参数将文本内容与源视频进行合成处理,从而实现将文本内容(字幕)添加到视频中。可以直接在当前界面完成对视频添加字幕的过程,能够将所添加的字幕实时显示在视频上,可以提升交互的实时性以及添加字幕的便利性。同时,还可以对文本内容的内容参数进行设置,如动画展示、移动或者缩放等并将文本内容放置在视频中合适的位置上,丰富了显示效果并增加了视频处理的趣味性。

本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(read-onlymemory,rom)或随机存储记忆体(randomaccessmemory,ram)等。

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。

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