一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

生成字幕的方法和智能字幕系统与流程

2022-05-17 23:45:03 来源:中国专利 TAG:


1.本公开涉及多媒体技术领域,具体而言,涉及一种生成字幕的方法和智能字幕系统。


背景技术:

2.字幕是内容生成侧的刚性需求,同时也是内容消费侧的基础性功能。随着直播、短视频时长的爆发,内容生成侧的数据量成爆发式增长。传统字幕工具是在得到视频录制完成以后,使用语音转文字软件,生成视音频文件中的音频内容对应的文本内容,这种生成方式对于直播和短视频来讲,如果直播和短视频中包含有快语速、多人对话的场景,则容易产生大段的混乱内容。这种混乱内容出现在字幕中,将影响内容消费侧的用户体验。


技术实现要素:

3.有鉴于此,本公开的目的是提供一种生成字幕的方法和智能字幕系统,以解决现有技术中存在的技术问题。
4.第一方面,本公开实施例提供一种生成字幕的方法,包括:
5.将音视频数据中的音频内容转写为文本内容,以得到第一文本;
6.对所述第一文本进行自然语义分析,并根据自然语义分析结果修正其中的混乱段落,以得到第二文本;
7.基于所述第二文本生成字幕数据;
8.在所述音视频数据播出时根据所述字幕数据同步显示字幕。
9.可选地,所述对所述第一文本进行自然语义分析,并根据自然语义分析结果修正其中的混乱段落,以得到第二文本包括:
10.对所述第一文本进行自然语义分析,并在其中标记所述混乱段落;以及
11.轮询所述第二文本,对带有标记的段落,整理出关键信息并删除无效内容,以得到所述第二文本。
12.可选地,所述方法还包括:
13.在将音频内容转写为文本内容的过程中,以字符为单位在所述第一文本中标记多个第一时间戳;以及
14.根据所述多个第一时间戳得到多个第二时间戳,并在所述第二文本中标记所述多个第二时间戳;
15.则所述基于所述第二文本生成字幕数据包括:
16.轮询所述第二文本,基于每个所述第二时间戳标记的一个字符或字符串构建一个字幕单元,所述字幕数据包括多个所述字幕单元。
17.可选地,所述方法还包括:将所述第二文本提供给用户,并根据用户反馈修正所述第二文本。
18.可选地,所述第一时间戳根据所述音视频数据中的音频内容的时间戳确定。
19.可选地,所述在所述音视频数据播出时根据所述字幕数据同步显示字幕之前,所述方法包括:
20.根据所述字幕数据在所述音视频数据中嵌入字幕;
21.则所述在所述音视频数据播出时根据所述字幕数据同步显示字幕包括:
22.播出带有字幕的音视频数据。
23.可选地,所述字幕单元包括字幕文本、字幕出现的时间和字幕显示的属性,则所述基于每个所述第二时间戳标记的一个字符或字符串构建一个字幕单元包括:
24.将每个所述第二时间戳标记的一个字符或字符串作为所述字幕单元的字幕文本,并同时设置所述字幕单元的字幕出现的时间和字幕显示的属性。
25.可选地,所述第一时间戳标记的一个字符或字符串组成词组,所述第二时间戳标记的一个字符或字符串组成词组。
26.可选地,所述将所述音视频数据中的音频内容转写为文本内容包括:采用训练好的语音转写模型将所述音视频数据中的音频内容转写为文本内容。
27.可选地,还包括:通过预先建立的特定场景下的背景知识图谱和用户侧语义与官方语义的映射关系对待训练模型进行训练,以便于所述训练好的语音转写模型可用于特定场景。
28.可选地,所述对所述第一文本进行自然语义分析,并根据自然语义分析结果修正其中的混乱段落包括:
29.采用训练好的自然语言处理模型对所述第一文本进行自然语义分析,并根据自然语义分析结果修正其中的混乱段落。
30.可选地,还包括:通过预先建立的特定场景下的背景知识图谱和用户侧语义与官方语义的映射关系对待训练模型进行训练,以便于所述训练好的自然语言处理模型可用于特定场景。
31.可选地,还包括:从输入的音频内容中提取音频特征,则所述基于所述第二文本生成字幕数据包括:基于所述第二文本和音频特征生成字幕数据。
32.可选地,所述特定场景包括:游戏、电竞、网购的直播和点播场景。
33.第二方面,本公开实施例提供一种智能字幕系统,包括:
34.语音转写模块,用于将音视频数据中的音频内容转写为文本内容,以得到第一文本;
35.文本处理模块,用于对所述第一文本进行自然语义分析,并根据自然语义分析结果修正其中的混乱段落,以得到第二文本;
36.字幕生成模块,用于基于所述第二文本生成字幕数据,以便于在所述音视频数据播出时根据所述字幕数据同步显示字幕。
37.可选地,所述文本处理模块包括:
38.对所述第一文本进行自然语义分析,并在其中标记所述混乱段落;以及
39.轮询所述第二文本,对带有标记的段落,整理出关键信息并删除无效内容,以得到所述第二文本。
40.可选地,其中,所述语音转写模块还包括:
41.在将音频内容转写为文本内容的过程中,以字符为单位在所述第一文本中标记多
个第一时间戳;
42.所述文本处理模块还包括:
43.根据所述多个第一时间戳得到多个第二时间戳,并在所述第二文本中标记所述多个第二时间戳;
44.所述字幕生成模块包括:
45.轮询所述第二文本,基于每个所述第二时间戳标记的一个字符或字符串构建一个字幕单元,所述字幕数据包括多个所述字幕单元。
46.可选地,智能字幕系统还包括:字幕嵌入模块,用于根据所述字幕数据在所述音视频数据中嵌入字幕,以便于播出带有字幕的音视频数据。
47.可选地,文本处理模块包括:
48.采用训练好的自然语言处理模型对所述第一文本进行自然语义分析,并根据自然语义分析结果修正其中的混乱段落,所述训练好的自然语言处理模型专用于特定场景下的自然语义分析。
49.第三方面,本公开实施例提供一种电子设备,包括存储器和处理器,所述存储器还存储有可由所述处理器执行的计算机指令,所述计算机指令被执行时,实现上述任一项所述的方法。
50.第四方面,本公开实施例提供一种计算机可读介质,所述计算机可读介质存储有可由电子设备执行的计算机指令,所述计算机指令被执行时,实现上述任一项所述的方法。
51.第五方面,本公开实施例提供一种经由播放器添加弹幕的方法,包括:
52.经由所述播放器接收语音弹幕;
53.将语音弹幕转写为文本内容,得到第一文本;
54.对所述第一文本进行自然语义分析,得到第二文本;
55.基于所述第二文本在所述播放器的播放界面中显示文本弹幕。
56.第六方面,本公开实施例提供一种电子设备,包括存储器和处理器,所述存储器还存储有可由所述处理器执行的计算机指令,所述计算机指令被执行时,实现上述经由播放器添加弹幕的方法。
57.第七方面,本公开实施例提供一种计算机可读介质,所述计算机可读介质存储有可由电子设备执行的计算机指令,所述计算机指令被执行时,实现上述经由播放器添加弹幕的方法。
58.第八方面,本公开实施例提供一种基于实时翻译生成字幕的方法,包括:
59.采集视频内容和音频内容;
60.将所述音频内容从源语言转换目标语言的文本内容,得到第一文本;
61.对所述第一文本进行自然语义分析,得到第二文本;
62.将所述第二文本从源语言翻译成目标语言,得到第三文本;以及
63.基于所述第三文本生成字幕文件,以便于在播放所述视频内容与所述音频内容构建的音视频数据时基于所述字幕文件显示字幕。
64.第九面,本公开实施例提供一种电子设备,包括存储器和处理器,所述存储器还存储有可由所述处理器执行的计算机指令,所述计算机指令被执行时,实现上述基于实时翻译生成字幕的方法。
65.第十方面,本公开实施例提供一种计算机可读介质,所述计算机可读介质存储有可由电子设备执行的计算机指令,所述计算机指令被执行时,实现上述基于实时翻译生成字幕的方法。
66.本公开实施例的生成字幕的方法以及智能字幕系统针对快语速、多人对话的场景下将语音转换为文本内容容易产生大段的混乱内容的问题,在音频内容转为文本内容之后,通过语义分析修正其中的混乱段落,这样处理过的文本内容更加准确,基于该文本内容生成字幕时提高了字幕的准确性。
67.在可选的实施例中,在将音视频数据的音频内容转为文本内容时,以字符为单位插入时间戳,然后在生成字幕时,从文本内容中逐一读取由时间戳标记的字符或字符串并逐一生成字幕,由此在视音频播放时,字幕的加载是字符级的,这样可以减少字幕延迟,提高字幕时效性。
附图说明
68.通过参考以下附图对本公开实施例的描述,本公开的上述以及其它目的、特征和优点将更为清楚,在附图中:
69.图1是视频制作和播放的场景示意图;
70.图2是本公开实施例的智能字幕系统的数据流示意图;
71.图3a是本公开一实施例的生成字幕的方法的流程图;
72.图3b是本公开另一实施例的生成字幕的方法的流程图;
73.图4a是示例性的视频流的示意图;
74.图4b是示例性的音频流的示意图;
75.图5是示例性的字幕数据的示意图;
76.图6是本公开第三实施例的生成字幕的方法的流程图;
77.图7是示例性的字幕显示的示意图;
78.图8a是本公开实施例提供的在播放器中添加弹幕的方法的流程图;
79.图8b是一个示例性的显示屏的示意图;
80.图9a是本公开实施例提供的一种基于实时翻译生成字幕的方法的流程图;
81.图9b是另一示例性的显示屏的示意图;
82.图10是本公开实施例所应用的电子设备的结构图。
具体实施方式
83.以下基于实施例对本公开进行描述,但是本公开并不仅仅限于这些实施例。在下文对本公开的细节描述中,详尽描述了一些特定的细节部分。对本领域技术人员来说没有这些细节部分的描述也可以完全理解本公开。为了避免混淆本公开的实质,公知的方法、过程、流程没有详细叙述。另外附图不一定是按比例绘制的。
84.在本文中使用以下术语。
85.字幕(subtitles of motion picture)是指以文字形式显示电视、电影、舞台作品中的对话等非影像内容,也泛指影视作品后期加工的文字。
86.直播是一种通过流媒体技术,将图像、声音、文字等丰富的元素经互联网向用户展
示生动、直观的真实画面的一整套技术,其涉及编码工具、流媒体数据、服务器、网络以及播放器等一系列服务模块。
87.实时翻译,
88.实时翻译是指通过计算机将一种语言的语音或者文本即时翻译为另一种语言的语音或者文本。
89.字幕单元是字幕数据的最小单元,每个字幕单元至少包括字幕文本、字幕出现的时间和字幕显示的属性。
90.图1是视频制作和播放的场景示意图。如图上所示,该场景100包括经由网络101连通的制作者终端103、消费者终端104和服务器102。
91.网络101为基于交换信号实现的各种通信技术之一或多种通信技术的组合,包括但不限于采用电和/或光传导线缆的有线技术,以及采用红外、射频和/或其它形式的无线技术。在不同的应用场景下,网络101可以是互联网、广域网或局域网,例如为公司的专有网络。网络101还可以为有线网络或无线网络。
92.制作者终端103是直播和短视频的制作者所使用的终端设备,此类终端设备上通常安装有诸如摄像头、麦克风等视音频采集部件以及视频编辑、直播等软件工具。它可以是个人电脑、手机、笔记本、平板电脑等设备,视频制作者可以使用这些设备进行直播或发布视频。
93.服务器104可以为单一服务器,也可以为云服务中心。单一服务器是独立的实体服务器,其上部署有视音频处理所需要的软硬件资源,通过软硬件资源向用户提供视频播放和制作服务。云服务中心是利用虚拟化技术可以将实体服务器的硬件和软件资源进行整合,在虚拟化层的基础上,再部署视音频处理系统,以向用户提供视频播放和制作服务。
94.消费者终端104是视频消费者所使用的终端设备,此类设备上安装视音频播放器,视频消费者可以使用播放器观看直播或短视频。此类终端可以是手机、个人电脑、笔记本、平板电脑、播放器、智能手表、等等。
95.图2是本公开实施例的智能字幕系统的数据流示意图。结合图1和2所示,视频制作者通过制作者终端103将点播视频或直播流提交到服务器102后,服务器102上会基于其上的视频处理系统,对点播视频或直播流作各种处理,包括格式转换、内容审核、字幕生成、字幕审核等,然后将处理后的直播流和点播视频分别经由内容分发网络204和客户平台207提供给消费者终端104。消费者终端104通过其上安装的播发器播放点播视频或直播流。
96.本公开实施例提供的智能字幕系统201从功能角度来说属于视频处理系统,主要用于完成字幕生成功能。
97.如图上所示,智能字幕系统201的输入数据为直播流301和点播视频302。该输入数据可以直接来自制作者终端103,也可以是服务器102上的其他视频处理系统已经处理过的音视频数据。智能字幕系统201的作用是结合语音识别技术和自然语言处理技术为直播流301和点播视频302生成字幕。智能字幕系统201的输出数据标记为303,包括带有字幕的直播流和点播视频以及独立的字幕文件。
98.如图上所示,智能字幕系统201包括语音转写模块2011、文本处理模块2012和字幕输出模块2013。
99.语音转写模块2011针对输入数据中的音频内容,基于语音识别技术,将音频内容
转写为文本内容。如果输入数据的音频内容和视频内容封装在一起,则智能字幕系统201还包括一个音频提取模块,用于依据格式规范解析封装好的音视频数据,并从中提取音频内容。语音识别技术有多种,例如有模型匹配法,包括矢量量化(vq)、动态时间规整(dtw)等;概率统计方法,包括高斯混合模型(gmm)、隐马尔科夫模型(hmm)等;辨别器分类方法,如人工神经网络(ann)和深度神经网络(dnn)等。理论上,语音转写模块2011可采用上述任意一种语音识别技术将音频内容转换为文本内容。
100.语音转写模块2011将文本内容传送给文本处理模块2012。文本处理模块2012对输入的文本进行自然语义分析。在跨快语速、多人对话、抢话场景下,通过语音转写模块2011产生的文本内容非常容易产生大段语义语序完全混乱的段落。因此文本处理模块2012在进行语义分析的过程中,会对混乱段落进行修正,并将修正后的文本内容提供给字幕生成模块2013。
101.字幕生成模块2013针对根据文本处理模块2012输出的文本内容,生成字幕数据。字幕数据由字幕单元组成。构建字幕数据的过程就是构建一个个字幕单元的过程。字幕单元包括各种属性,构建字幕单元就是设置字幕单元的各种属性。关于字幕单元,下文将有详细描述。字幕生成模块2013生成的字幕数据将随着音视频数据被推送给消费者终端104,在消费者终端104的播放器中在音视频数据播出时同步显示。
102.根据本实施例,智能字幕系统针对快语速、多人对话的场景下将语音转换为文本内容容易产生大段的混乱内容的问题,在音频内容转为文本内容之后,通过语义分析修正其中的混乱段落,这样处理过的文本内容更加准确,基于该文本内容生成字幕时提高了字幕的准确性。
103.根据本公开一个实施例,智能字幕系统还包括:音频特征提取模块,用于从输入的音频内容中提取音频特征,然后在字幕生成模块2013生成字幕数据时,根据音频特征生成字幕单元的各种属性。例如可将音频特征按照音频高低划分为多个分级,多个分级分别对应于多个不同的字幕显示颜色,从而字幕生成模块2013可在生成字幕数据时,根据分级设置字幕颜色。通过这种操作,增加字幕的趣味性和智能度。
104.根据本公开一个实施例,字幕生成模块2013可输出独立的字幕文件,或者输出带字幕的音视频数据。当智能字幕系统201设计为输出带字幕的音视频数据,则智能字幕系统还包括字幕嵌入模块(未示出),用于从字幕生成模块2013接收字幕数据,并根据字幕数据在音视频数据中嵌入字幕,从而得到带有字幕的音视频数据。
105.根据本公开一个实施例,文本处理模块2012针对语音转写模块2011提供的文本内容,可先通过自然语义分析标记其中语义语序混乱的段落,并在语义分析完成之后,轮询带有标记的文本内容,基于文本内容的上下文进行语义分析,从带有标记的段落中整理出关键信息,在文本内容中保留关键信息并删除无效内容,以达到对复杂语境的混乱段落进行优化的目的。
106.根据本公开一个实施例,语音转写模块2011还包括:在将音频内容转写为文本内容的过程中,根据音频内容和/或视频内容的时间戳,在由音频内容转写的文本内容中以字符为单位插入多个第一时间戳。文本处理模块2012还包括:根据多个第一时间戳得到多个第二时间戳,并在语音转写模块2011输出的文本中标记多个第二时间戳。字幕生成模块2013轮询文本处理模块2012输出的文本内容,基于每个第二时间戳标记的一个字符或字符
串构建一个字幕单元。
107.我们知道,智能字幕系统201接收到的音视频数据由音频内容和视频内容组成,音频内容和视频内容中都包括时间戳信息,用于控制音频内容和视频内容的播放时间,并以此控制音频内容和视频内容能够同步播放。当将音频内容转换为文本内容时,可在转换过程中或者转换完成之后,在文本内容中以字符为单位插入时间戳。这个时间戳表示对应字符或字符串作为字幕时出现的时间,它既可以是相对时间,也可以是绝对时间。现有技术中,在生成字幕时,通常以句子为单位插入时间戳,即在句子的开始位置和/或结束位置添加时间戳。但本实施例不同于现有技术。在本实施例中,在由音频内容转写而成的文本内容中以字符为单位插入时间戳。可以均匀地插入时间戳,例如,基于语音转写得到10个字符的句子,在每个字符的开始位置和/或结尾位置插入时间戳,或者,在两个字符或以上字符之间均匀插入时间戳。也可以在文本内容中不均匀地插入时间戳,例如在文本内容中,先在两个字符之后插入一个时间戳,然后再在四个字符之后插入另一时间戳,诸如此类。在文本处理模块2012输出的文本内容,其包含的大部分的时间戳与语音转写模块2011插入的时间戳相同,但是由于文本处理模块2012会修正文本内容中的混乱段落,因此对于由混乱段落修正后得到的段落,需要根据原时间戳确定新时间戳,但是新时间戳也是以字符为单位的。字幕生成模块2013对于文本处理模块2012输出的文本内容,轮询文本内容,基于每个时间戳标记的一个字符或字符串构建一个字幕单元。具体地,字幕单元包括字幕文本、字幕出现的时间和字幕显示的属性,则构建一个字幕单元的过程就是为字幕单元设置字幕文本、字幕出现的时间和字幕显示的属性的过程。字幕显示的属性可以包括字幕中字体的大小、字幕使用的语言、字幕显示位置、字幕区背景颜色、字体样式、字体颜色、是否输出提示信息以及提示信息、等等。这些都可以在字幕单元生成时设定。进一步地,可以预先设定字幕单元显示的默认属性,例如可提供关于字幕单元显示的默认属性的编辑界面,以便于工作人员可对字幕单元显示的默认属性进行设置和修改。
108.根据本实施例,智能字幕系统在将音视频数据的音频内容转为文本内容时,以字符为单位插入时间戳,然后在生成字幕单元时,从文本内容中逐一读取由时间戳标记的字符或字符串并逐一生成字幕单元,由此,在将字幕数据推送给分发网络或客户平台时,逐一推送字幕单元,因此在音视频数据播放时,可以按照字幕单元加载字幕,由此可见,字幕数据的推送和加载都是字符级的,这样可以减少字幕延迟,提高字幕时效性。
109.进一步地,由于智能字幕系统201需要时间进行语音转写、文本处理、字幕生成等操作,因此,即使对于时效性要求较高的直播流301,系统通常会延迟一段时间再将直播流301推送给内容分发网络204或客户平台207以便于在消费者终端104上播出,即,系统接收到直播流301之后的一段时间内会缓存直播流301,然后再推送直播流,以便于智能字幕系统201有时间生成字幕并推送给内容分发网络204和客户平台207。智能字幕系统200可以预先设置一个固定的延时时长,在获取到直播流开始计时,当计时到达上述延时时长时,推送直播流。
110.进一步地,当由智能字幕系统201生成的字幕数据存储在服务器104时,研发人员可对字幕数据进行审核和修正。同时,研发人员还可以对音视频数据进行切分,并且系统可根据音视频数据的切分结果,利用时间戳,切分字幕数据。当消费者终端104通过播放器播放由智能字幕系统201推送过来的音视频数据和字幕数据时,当字幕数据显示在播放器中
时,消费者可对系统提出反馈,系统可根据反馈修正字幕中的错误,也可以根据反馈修正字幕显示的属性。播放器还可以提供关于字幕方面的更多交互,例如当触摸字幕时,可以高亮显示,诸如此类。
111.根据本公开一个实施例,上述语音转写模块2011可采用一个训练好的语音转写模型对音频内容进行语音识别。
112.为了训练模型,一般需要构建大量的训练样本,然后将大量的训练样本输入给一个待训练模型,计算损失函数并根据损失函数不断地调整待训练模型的权重参数,直到损失函数达到可接受状态,权重参数的数值也达到稳定,则可以停止训练。按这种方式训练好的语音转写模型为了适用各种背景,采用的训练样本包含各种背景下的训练样本,因此得到的模型虽然具有通用型,但是针对特定背景应用时准确性不足的缺陷就会暴露出来。例如,在直播领域,针对网购直播和游戏类直播各自的直播流,如果采用通用语音转写模型进行语音转写,则出错概率较高。这是因为网购直播和游戏直播分别具有各自的用户侧语义,而一些非官方的语义由于广泛使用而被用户和直播播主接受,例如,“天哪”表示惊诧、惊叹,但在网购直播中,可能使用“天哪”表示某个商品特别便宜,但在游戏直播中,可能是指“落入陷阱”,再例如,在一款“七天大圣”的游戏直播中提到“猴子怎么样怎么样”,所有人都知道是指“孙悟空”。因此需要针对语音转写模型要应用的不同场景,训练不同的语音转写模型。为此,首先准备具有背景特征的训练样本,然后准备特定场景下的背景知识图谱,并建立特定场景下的用户侧语义和官方术语之间的映射关系,并在待训练的语音转写模型中,运用这些背景知识图谱以及用户侧语义和官方语义之间的映射关系,并基于训练样本进行训练,以得到特定场景下使用的语音转写模型。例如,针对游戏直播,上述语音转写模块2011采用游戏语音转写模型进行语音转写,最终得到的文本内容虽然可能和输入数据的音频内容在文字上有所区别,但是含义不变且表达更加符合规范。
113.同样,文本处理模块2012可采用一个训练好的自然语言处理模型执行语义分析。对于文本处理模块2012使用的自然语言处理模型,同样使用特定场景下的大量的背景知识图谱以及用户侧语义和官方术语之间的映射关系对待训练的自然语言处理模型进行训练,得到适用于特定场景的自然语言处理模型。例如,应用于游戏直播的自然语言处理模型在针对标记混乱的段落,应根据游戏图谱知识,提取关键信息并过滤掉混乱的无效内容。
114.进一步地,文本处理模块2012还包括脏话检测功能,用于对输入文本进行脏话检测,并基于检测结果对输入数据的音频片段做屏蔽、覆盖,同时在输出文本中覆盖对应的文本内容。
115.图3a是根据本公开一实施例提供的一种生成字幕的方法的流程图,该流程图包括步骤s301至s304。
116.在步骤s301中,将音视频数据中的音频内容转写为文本内容,以得到第一文本。
117.在步骤s302中,对第一文本进行自然语义分析,并根据自然语义分析结果修正其中的混乱段落,以得到第二文本。
118.在步骤s303中,基于第二文本生成字幕数据。
119.在步骤s304中,在音视频数据播出时根据字幕数据同步显示字幕。
120.本实施例接收到的音视频数据通常包括由多个图像帧构成的视频流和音频流,且在视频流和音频流中包含用于同步的时间戳信息。由于视频制作者在视频制作端会将多个
图像帧和对应的音频内容按照预设封装格式封装成音视频数据,因此实施例首先需先从音视频数据中分离出音频内容,然后利用语音识别技术将音频内容转换为文本内容。语音识别技术在语音转写模块2011中已有详细介绍,这里就不再赘述。然后对于文本内容进行自然语义分析,通过语义分析发现其中语义和语序混乱的段落,修正混乱段落。再根据修正后的文本内容生成字幕数据,字幕数据由字幕单元组成,构建字幕数据的过程就是构建一个个字幕单元的过程。关于字幕单元,下文将有详细描述。字幕数据将随着音视频数据被推送给消费者终端,当播放器播放音视频数据时根据字幕数据显示字幕。
121.本实施例提供的方法在音频内容转为文本内容之后,通过语义分析修正其中的混乱段落,这样处理过的文本内容更加准确,基于该文本内容生成字幕时提高了字幕的准确性。
122.根据本公开一个实施例,步骤s302包括:对第一文本进行自然语义分析,并在其中标记混乱段落;然后轮询第二文本,对带有标记的段落,整理出关键信息并删除无效内容,以得到第二文本。
123.根据本公开一个实施例,在步骤s301之前或之后,上述方法还包括:从输入的音频内容中提取音频特征,然后步骤s303生成字幕数据时,根据音频特征生成字幕数据。即将字幕单元的属性与音频特征关联。例如可将音频特征按照音频高低划分为多个分级,多个分级分别对应于多个不同的字幕显示颜色,从而字幕生成模块2013可在生成字幕数据时,根据分级设置字幕颜色。如此增加了用户体验。
124.根据本公开一个实施例,如图3b所示,包括以下步骤s311至s316。
125.在步骤s311中,将音视频数据中的音频内容转写为文本内容,以得到第一文本。
126.在步骤s312中,在将音频内容转写为文本内容的过程中,以字符为单位在第一文本中标记多个第一时间戳。
127.在步骤s313中,对第一文本进行自然语义分析,并根据自然语义分析结果修正其中的混乱段落,以得到第二文本。
128.在步骤s314中,根据多个第一时间戳得到多个第二时间戳,并在第二文本中标记多个第二时间戳。
129.在步骤s315中,轮询第二文本,基于每个第二时间戳标记的一个字符或字符串构建一个字幕单元。
130.在步骤s316中,在音视频数据播出时根据字幕数据同步显示字幕。
131.其中步骤s311、s313、s316与图3a中的相应步骤相同,下面将详细说明其余步骤。
132.图4a是示例性的视频流的示意图。图4b是示例性的音频流的示意图。参考图4a和4b所示,视频流由多个视频流数据块组成,音频流由音频流数据块组成。每个视频流数据块包括数据头、数据块大小、有效载荷大小、时长、协调世界时和时间戳等字段,音频流由多个音频流数据块组成,每个音频流数据块包括数据头、数据块大小、有效载荷大小、时长、协调世界时和时间戳等字段。每个视频流数据块可包括一个图像帧或多个图像帧。
133.基于上述数据结构,当提取音频流时,能够得到音频流中的时间戳信息,从音频流中提取时间戳信息,该时间戳信息可以包括音频流的开始时间和结束时间,或者该时间戳信息包括音频流的开始时间和持续时长。利用时间戳信息和语音识别技术,可以计算出由音频流转换为文本内容时的第一时间戳。本实施例是以字符为单位在第一文本中标记第一
时间戳。以字符为单位在第一文本中标记第一时间戳,既可以是均匀地标记时间戳,也可以是非均匀地标记时间戳。举例说明,假设原音频流转成的文本内容为“字幕是指以文字形式显示的等非影像内容”,原音频流的开始时间为16:30:10,则通过语音识别技术可以确定各个字符所耗用的时间,最终得到的插入时间戳的文本内容可类似为“16:30:10/字幕/16:30:11/是指/16:30:12/以文字形式/16:30:15/显示的/16:30:15/等非影像内/16:30:20/”。这里为了方便查看,采用“//”标识时间戳。这是一个非均匀标记时间戳的示例。在实时的语音识别中,通常需要听到若干个字符的语音之后,才能够确定该语音对应的文字内容(该文字内容通常是词组或者短语),因此如果实时插入时间戳,要在确定语音对应的文字内容之后再插入时间戳,由此造成的可能结果就是每个时间戳标记的字符个数并不相同。
134.应该理解的是,逐个字符地在文本内容中均匀地设置时间戳虽然比以两个或以上的字符为单位在文本内容中均匀地设置时间戳使得字幕显示的时效性更强,延迟时间更少,但是也应看到,在文本内容中插入时间戳需要花费更多的时间。因此在实际工程中,如何插入时间戳,需要结合实际情况以及通过实验确定。
135.第二文本是根据第一文本进行混乱段落修正之后得到的文本内容。要在第二文本插入第二时间戳,需要先根据第一时间戳得到第二时间戳。大部分第二时间戳与第一时间戳相同,但是由于第二文本中的一些无效内容被删除,因此和无效内容对应的时间戳也被删除掉了,此外,对于混乱段落,第二文本保存的是混乱段落的关键信息,这些关键信息与原始信息可能会有所区别,相应地,关键信息中的时间戳需要基于混乱段落的原时间戳计算得到。因此将第二文本中的时间戳称为第二时间戳,以与第一时间戳区别。但应知道,第二文本中仍旧以字符为单位标记第二时间戳。
136.然后轮询第二文本,基于每个第二时间戳标记的一个字符或字符串构建一个字幕单元。图5是一个示例性的字幕数据500的示意图。如图上所示,每个字幕数据由多个字幕单元组成。每个字幕单元包括以下信息:字幕序号、协调世界时、开始出现的时间、显示时长、字幕显示的属性和字幕文本。字幕显示的属性又包括字体大小、显示位置、背景显示等信息。其中,显示时长可以是对应的字幕在显示屏的持续时间,协调世界时可以是对应的字幕的起始时间点,时间戳可以是字幕对应的音频帧或图像帧的时间戳。由此可见,构建字幕数据的过程就是构建一个个字幕单元的过程,而构建一个字幕单元就是为字幕单元设置各种属性。
137.基于本实施例,在将音视频数据的音频内容转为文本内容时,以字符为单位插入时间戳,然后在生成字幕时,从文本内容中读取由时间戳标记的一个字符或字符串生成字幕单元,这样在视音频数据的推送和播放时,字幕数据的加载是字符级的,如此可减少字幕延迟,提高字幕时效性。本优点对于时效性要求较高的直播非常有意义。
138.进一步地,可以预先设定字幕显示的默认属性,如此,则在生成每个字幕单元时,使用字幕显示的默认属性作为字幕显示的属性。
139.举例说明。参考图7所示,假设显示屏上正在直播音视频数据,显示屏的下方同步播出字幕701。由于音视频数据由多个图像帧和音频帧组成,播放音视频数据本质上是逐一播放各个图像帧和音频帧,根据字幕中的时间戳和字幕出现的位置,当播放到相应图像帧和音频帧时,相应字幕单元会在显示屏下方的相应位置出现。由于本步骤输入的字幕单元
基于一个字符或字符串生成,因此在整个句子的字幕数据没有完全推送过来之前,就可以显示位于前列的字符生成的字幕单元。继续以图上为例,假设字幕单元7011对应图像帧1,字幕单元7012对应图像帧2,字幕单元7013对应图像帧3,当推送直播流时,可以同时推送图像帧1和2以及字幕单元7011和7012,当播放图像帧1和2时显示字幕7011和7012,而无需等候整个字幕701都推送过来之后再显示字幕。这种方式有助于图像和字幕的图文同步。
140.另外,通常,消费者终端上的播放器会设定一个最大字幕数,每个字幕不应超过该最大字幕数。因此步骤s301中,如果在两个或两个以上字符间插入时间戳,则这两个或两个以上字符的字符数也应不超过最大字幕数。
141.在一些场景下,字幕数据可作为独立文件存在。即按照预设的字幕格式将所有字幕单元组织成一个字幕文件。现在比较流行的字幕格式,分为图形格式和文本格式两类。图形格式字幕由idx和sub文件组成,idx相当于索引文件,里面包括了字幕出现的时间码和字幕显示的属性,sub文件就是字幕的文本内容。idx sub可以存放多种语言的字幕,在播放的时候可以方便的选择。
142.在此场景下,字幕文件会随着音视频数据被推送给终端设备,在终端设备播放音视频数据时加载字幕文件。由于字幕文件中指示了每个字幕出现的时间和字幕显示的属性,因此能够确保字幕和音视频数据同步播放,且字幕在播放时体现了设定的显示属性。
143.在一些场景下,字幕数据可被嵌入到音视频数据的图像帧中,首先依据该字幕出现的时间确定一个字幕单元应该嵌入到哪个图像帧中,然后在相应的图像帧中嵌入该字幕单元。在此情况下,字幕不再成为一个独立存在,而是和音视频数据融合在一起。由此,当播放音视频数据时,字幕单元将一并播出。
144.图6是本公开第三实施例提供的生成字幕的方法的流程图。如图上所示,步骤s604和s605和图3a中的步骤s304和s305完全一样,这里将不再赘述。
145.步骤s601是采用训练好的语音转用模型将音视频数据中的音频内容转写为文本内容,以得到第一文本。
146.步骤s602是采用训练好的自然语言处理模型对第一文本进行自然语义分析,并根据自然语义分析结果修正其中的混乱段落,以得到第二文本。
147.步骤s603是基于第二文本生成字幕数据。
148.步骤s604是在音视频数据播出时根据字幕数据同步显示字幕
149.本实施例主要强调通过训练好的语音转写模型来将音频内容转换为文本内容。该语音转写模型是神经网络模型,需经由大量样本训练得到。因此本步骤之前,要针对语音转写模型要应用的不同场景,训练不同的语音转写模型。为此,首先准备具有背景特征的训练样本,然后准备背景知识图谱,并建立用户侧语义和官方术语之间的映射关系,并在待训练的语音转写模型中,运用这些背景知识图谱以及用户侧语义和官方语义之间的映射关系,基于训练样本进行训练,得到不同场景下使用的不同语音转写模型。使用专用于特定场景下的语音转写模型,对于专用场景下的语音转用,其输出的文本内容精度更高,更具专业性。例如,针对游戏直播,采用专用于游戏直播的语音转写模型进行语音转写,最终得到的文本内容可能和输入数据的音频内容在文字上有所区别,但是其表达更加准确、更具专业性。
150.同理,本实施例使用的自然语言处理模型是专用于特定背景的自然语言处理模
型。同样,针对特定场景采集训练样本并收集和特定场景相关联的背景知识图谱以及用户侧语义和官方语义之间的映射关系,然后将训练数据输入给待训练模型,并利用背景知识图谱以及用户侧语义和官方语义之间的映射关系对待训练模型进行训练,得到适用于特定场景下的自然语言处理模型。由此自然语言处理模型的语义分析将更加准确、更具专业性。
151.本公开实施例尤其可以应用于互联网媒体的一些新兴场景,包括游戏、电竞、网购等的直播和点播场景,能够解决这些场景中采用传统字幕工具生成字幕精度较低的问题。
152.此外,基于上述实施例的思想理念,本公开实施例还可以提供适用于另外一些场景下的方法和系统。下面以在播放器中添加弹幕和在视频制作端进行实时翻译生成字幕为例进行介绍。
153.图8a是本公开实施例提供的在播放器中添加弹幕的方法的流程图。该方法包括以下步骤。
154.步骤s801是经由播放器接收语音弹幕。
155.步骤s802是将语音弹幕转换文本内容,并得到第一文本。
156.步骤s803是对第一文本进行自然语义分析,并得到第二文本。
157.步骤s804是基于第二文本在播放器的播放界面中显示文本弹幕。
158.图8b是一个示例性的显示屏的示意图。在图上,浏览器页面的功能区域801用于图文展示,功能区域802是内嵌在浏览器中的播放器的播放区域。播放器提供弹幕采集框,包括用于采集语音弹幕的按钮804和用于文本弹幕的输入和显示的文本框803。
159.结合图8a和8b,通过按钮804采集语音弹幕之后,利用语音识别技术将语音弹幕识别为文本内容,对该文本内容进行自然语义分析。自然语义分析可以发现文本内容中的语义语序混乱的段落,如果发现混乱段落,则可以从中提取关键信息,保留关键信息同时删除无效信息。自然语义分析还可以执行脏话检测,如果发现文本内容中包含脏话、非法词汇,则可以将其屏蔽或删除。基于自然语义分析之后的文本内容在播放器的播放区域802中作为文本弹幕显示。可选地,如图上所示,在构建文本弹幕之前,还可将经过自然语义分析之后的文本内容反馈给用户,例如将文本内容显示在文本框803中,以便于用户可以修正。
160.可选地,采用上文所述的训练好的语音转写模型将语音弹幕转换为文本内容。可选地,将经由语音转写模型转换而成的文本内容继续采用训练好的翻译模型翻译成其他语言的文本内容,并且在显示文本弹幕时,根据用户所在区域显示与所在区域相符的文本弹幕。可选地,采用上文所述的训练好的自然语言处理模型对由语音弹幕转成的文本内容进行语义分析。
161.此外,可以在语音弹幕转换为文本内容时,在文本内容中插入一个或多个时间戳,并根据文本内容生成弹幕文件,当播放器关闭后后续再次播放同一音视频数据时,从弹幕文件中读取时间戳来确定文本弹幕在音视频数据中的显示时间。文本弹幕在弹幕文件中的存储格式可参考图5所示的字幕信息,这里就不再详细描述。
162.应该理解的是,基于上述方法所形成的功能模块可以集成在播放器中,并随着播放器部署在终端设备中。
163.图9a是本公开实施例提供的一种基于实时翻译生成字幕的方法的流程图。包括以下步骤。
164.步骤s901是采集视频内容和音频内容。
165.步骤s902是将音频内容转换为文本内容,得到第一文本。
166.步骤s903是对第一文本进行自然语义分析,得到第二文本。
167.步骤s904是将第二文本由源语言翻译成目标语言,得到第三文本。
168.步骤s905是基于第三文本生成字幕文件,以便于在播放基于视频内容和音频内容构建的音视频数据时基于字幕文件显示字幕。
169.图9b是另一示例性的显示屏的示意图。在图上,900表示一个视频制作软件的视频采集界面,在该界面上主播在讲话,同时显示有语音生成的双语字幕,即,基于实时翻译生成双语字幕。
170.结合图9a和9b,通过视频采集部件采集视频内容,通过音频采集部件采集音频内容,根据语音识别技术将音频内容转换成文本内容,对文本内容进行自然语义分析。自然语义分析可以发现文本内容中的语义语序混乱的段落,如果发现混乱段落,则可以从中提取出关键信息,保留关键信息并删除无效信息。自然语义分析还可以执行脏话检测,如果发现文本内容中包含脏话、非法词汇,则可以将其屏蔽或删除。将自然语义分析之后的文本内容由源语言翻译成目标语言,然后根据目标语言的文本内容生成字幕文件。当基于视频内容和音频内容构建的音视频数据播放时基于字幕文本显示字幕。
171.可选地,采用上文所述的训练好的语音转写模型将音频内容转换为文本内容,采用训练好的翻译模型将文本内容从源语言转换为目标语言,以及采用上文所述的训练好的自然语言处理模型对由音频内容转成的文本内容进行语义分析。
172.此外,可以在音频内容转换为文本内容时,在文本内容中插入一个或多个时间戳,并根据文本内容生成字幕文件,以便于在播放音视频数据时根据时间戳同步播放字幕。字幕的存储格式可参考图5所示,这里就不再详细描述。应该理解的是,基于本方法所形成的功能模块可以集成在视频编辑软件中,并可部署在终端设备中。
173.本公开实施例还提供一种电子设备11,参考图10所示,在硬件层面,包括存储器112和处理器111,除此之外,一些情况下还包括输入输出设备113和其他硬件114。存储器112例如为高速随机存取存储器(random-access memory,ram),也可能是非易失性存储器(non-volatile memory),例如为至少1个磁盘存储器等。输入输出设备113例如为显示器、键盘、鼠标、网络控制器等设备。处理器111可以基于目前市场上各种型号的处理器构建。处理器111、存储器112、输入输出设备113和其他硬件114通过总线相互连接,该总线可以是isa(industry standard architecture,工业标准体系结构)总线、pci(peripheral component interconnect,外设部件互连标准)总线或eisa(extended industry standard architecture,扩展工业标准结构)总线等。所述总线可以分为地址总线、数据总线、控制总线等。为便于表示,图10中仅用一个线条表示,但并不表示仅有一根总线或一种类型的总线。
174.存储器112用于存放程序。具体地,程序可以包括程序代码,程序代码包括计算机指令。存储器可以包括内存和非易失性存储器,并向处理器111提供计算机指令和数据。处理器111从存储器112中读取对应的计算机程序到内存中然后运行,在逻辑层面上实现本公开实施例提供的各种方法。这些方法在上文中都有描述,这里就不再重复。
175.本领域的技术人员能够理解,本公开可以实现为系统、方法和计算机程序产品。因此,本公开可以具体实现为以下形式,即完全的硬件、完全的软件(包括固件、驻留软件、微
代码),还可以实现为软件和硬件结合的形式。此外,在一些实施例中,本公开还可以实现为一个或多个计算机可读介质中的计算机程序产品的形式,该计算机可读介质中包含计算机可读的程序代码。
176.可以采用一个或多个计算机可读介质的任意组合。计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质。计算机可读存储介质例如但不限于为电、磁、光、电磁、红外线或半导体的系统、装置或器件,或其他任意以上的组合。计算机可读存储介质的更具体的例子包括:具体一个或多个导线的电连接,便携式计算机磁盘、硬盘、随机存取存储器(ram)、只读存储器(rom)、可擦除可编程只读存储器(eprom或者闪存)、光纤、便携式紧凑磁盘只读存储器(cd-rom)、光存储器、磁存储器或者上述任意合适的组合。在本文中,计算机可读的存储介质可以是任意包含或存储程序的有形介质,该程序可以被处理单元、装置或者器件使用,或者与其结合使用。
177.计算机可读信号介质可以包括在基带中或者作为截波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或者其他任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质之外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令系统、装置或器件使用或者与其结合使用的程序。
178.计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、电线、光缆、rf等等,以及上述任意合适的组合。
179.可以以一种或者多种程序设计语言或者组合来编写用于执行本公开实施例的计算机程序代码。所述程序设计语言包括面向对象的程序设计语言,例如java、c ,还可以包括常规的过程式程序设计语言,例如c。程序代码可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络包括局域网(lan)或广域网(wan)连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。
180.以上所述仅为本公开的优选实施例,并不用于限制本公开,对于本领域技术人员而言,本公开可以有各种改动和变化。凡在本公开的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本公开的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献