具体实施方式
为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解的是,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
实施例一
图1示出了本发明实施例一提供的字幕的处理方法的实现流程,详述如下:
在步骤S11中,获取多媒体文件对应的第一字幕数据,并提取所述多媒体文件的音频数据。
在本发明实施例中,多媒体文件包括视频文件或音频文件,其中,音频文件包括但不限于歌曲和有声小说。视频文件的文件格式包括但不限于MP4格式、WEBM格式和MOV格式;音频文件的文件格式包括但不限于MP3格式和AAC格式。
其中,字幕数据包括但不限于字幕文本和时间戳。在本发明实施例中,可以通过人工翻译和/或机器翻译的手段来生成字幕数据,根据对字幕数据的字幕文本的翻译方式的不同,字幕数据可以分为人工翻译字幕数据和软件翻译字幕数据。其中,人工翻译字幕数据为字幕翻译人员根据音频数据进行人工翻译的字幕数据;软件翻译字幕数据为通过智能翻译软件对音频数据进行机器翻译的字幕数据。
在本发明实施例中,具体地,字幕数据包括内挂字幕数据和外挂字幕数据。其中,内挂字幕数据为封装在多媒体容器中的字幕数据,在这里,多媒体容器中至少封装了字幕数据和音频数据,对于视频文件来说,多媒体容器中还封装了视频数据;外挂字幕数据为独立于多媒体容器的字幕数据。
若所述第一字幕数据为内挂字幕数据,则所述获取多媒体文件对应的第一字幕数据,包括:从所述多媒体文件中提取出所述第一字幕数据。
在本发明实施例中,由于第一字幕数据为内挂字幕数据,因此,多媒体文件和第一字幕数据的这种对应关系指代的就是内挂字幕数据和多媒体容器的这种“封装关系”,因为有这种“封装关系”,使得可以从多媒体文件中提取出字幕数据。对应地,提取字幕数据的过程为:首先对多媒体容器进行解析,将其中的视频数据、音频数据和字幕数据分流,然后从中提取出字幕数据对应的数据流。
若所述第一字幕数据为外挂字幕数据,则所述获取多媒体文件对应的第一字幕数据,包括:根据所述多媒体文件的文件名,从具备相同所述文件名的字幕文件中获取到所述第一字幕数据。
在本发明实施例中,外挂字幕数据类型包括但不限于纯文本字幕数据类型或高级文本字幕数据类型;其中,纯文本字幕数据包括但不限于SRT格式的字幕数据;高级字幕数据包括但不限于SSA格式的字幕数据。相较于纯文本字幕数据类型,高级文本字幕数据类型有更多的字幕特效,比如增大字体或给字幕加阴影等,使得字幕看起来更立体,也方便眼睛近视的人进行观看,但是也正是由于高级文本字幕数据的这些优势,所以相对于纯文本字幕数据,高级文本字幕数据制作起来更加复杂,占用的空间也更大。
对于外挂字幕,由于在多媒体文件播放的时候需要对其进行加载,如果没有成功加载,那么播放的多媒体文件是没有字幕的。外挂字幕的加载方式包括人工加载方式和自动加载方式。当字幕的加载方式为人工加载方式时,对字幕存放的位置,字幕的命名没有要求,可以通过人工选取文件的方式确定多媒体文件需要加载的字幕文件;当字幕的加载方式为自动加载方式时,被加载的外挂字幕必须是与多媒体文件同名的外挂字幕,因为如果外挂字幕与多媒体文件不同名,那么在播放多媒体文件的时候是不知道要加载哪个字幕的,从而导致播放的多媒体文件没有字幕。本发明实施例优选的为通过自动加载的方式对外挂字幕进行加载,因此,若第一字幕数据为外挂字幕数据,则根据多媒体文件的文件名,从具备相同文件名的字幕文件中获取到第一字幕数据。同时,当采用自动加载的方式对外挂字幕进行加载的时候,该外挂字幕的位置包括但不限于与多媒体文件处于同一文件夹中,以保证在用户点击播放该多媒体文件的时候该外挂字幕能够自动加载。虽然在播放多媒体文件的时候,为了使得字幕能够成功加载,需要字幕数据与多媒体文件处于同一文件夹中,但是对外挂字幕数据的获取却没有这样的限制,即外挂字幕数据可以是从网上下载的,也可以是从与多媒体文件存放位置不同的位置获取的,还可以是从与多媒体文件存放位置相同的位置获取的。
在步骤S12中,对所述音频数据进行语音识别处理,生成第二字幕数据。
在本发明实施例中,对音频数据进行语音识别处理包括但不限于利用语音引擎对音频数据进行语音识别处理,在这里,语音引擎可以是独立的语音引擎,也可以是多媒体文件中自带的语音引擎,即该多媒体文件中包含有语音引擎,用户可以利用该多媒体文件中的语音引擎对音频数据进行识别。
通过对音频数据进行语音识别,根据音频数据的播放内容及对该内容的语义理解,生成与该音频数据相对应的第二字幕数据,用以校正第一字幕数据。如上所述,字幕数据包括字幕文本和/或时间戳。其中,字幕文本是字幕内容,例如,当多媒体文件为视频文件时,字幕内容包括但不限于视频中人物的对话内容,当多媒体文件为音频文件时,字幕内容包括但不限于歌词或独白;时间戳是与该字幕内容相对应的字幕时间,即时间戳用于控制字幕内容开始显示和结束显示的时间,以保证多媒体文件中的音频数据的开始播放和结束播放与相应字幕内容的开始显示和结束显示在时间上的同步。例如,当多媒体文件为视频文件时,视频中的某个人物共说了两句话A和B,那么每句话会有一个与之对应的时间戳和字幕内容。假设第一句话A的时间戳是S1,字幕内容是T1,那么在该人物说第一句话A的同时需要通过时间戳S1控制与这第一句话A相对应的字幕内容T1的显示,而不是第二句话B的字幕内容T2的显示或者是其他人说的话的字幕内容T3的显示,然后,在该人物说完这第一句话A的时候,需要通过时间戳S1控制与这第一句话A相对应的字幕内容T1结束播放,以免影响其他字幕内容的播放。
如图2所示,所述对所述音频数据进行语音识别处理,生成第二字幕数据,包括:步骤S121:确定所述第一字幕数据中第一字幕文本的语言种类。其中,语言种类包括但不限于英语、粤语。步骤S122:对所述音频数据进行语音识别,根据识别结果生成第二字幕文本。步骤S123:根据所述语言种类,对所述第二字幕文本进行翻译,得到第三字幕文本,以基于所述第三字幕文本生成所述第二字幕数据。基于上述内容,所述基于所述第二字幕数据对所述第一字幕数据进行校正,包括:基于所述第三字幕文本,对所述第一字幕文本进行校正。
通过上述步骤可以实现对第一字幕数据中的字幕文本的校正。通常情况下,当播放的多媒体文件是从国外引进的多媒体文件的时候,由于语言种类的差异,用户可能无法很好的理解该多媒体文件中音频数据的内容,因此,为了方便用户的对多媒体文件的理解,多媒体文件的音频数据多数情况下都是需要进行翻译的。例如,当多媒体文件为视频文件时,原始的音频数据可能是粤语,现需要将其翻译给只能听懂英语的用户观看,因此需要首先利用语音引擎对该音频数据进行识别,得到语音识别后的字幕文本,此时的字幕文本的语言类型仍然是粤语,然后再将该粤语的字幕文本翻译成英语的字幕文本,从而方便这些只能听懂英语的用户对该视频文件的观看和理解;字幕文本和音频数据还可以是同一语言种类的,比如字幕文本和音频数据都是粤语,那么这个时候的校正就是粤语对粤语的校正,比如字幕文本是否因为音频数据播放的时候发音不清晰而没有准确识别该粤语的音频数据的内容,再如字幕文本虽然准确识别了该粤语的音频数据的内容,但是在得到该音频数据的字幕文本的时候却出现了错别字。
由于字幕数据包括字幕文本和时间戳,因此,本发明实施例不仅可以对字幕文本进行校正,还能够对时间戳进行校正,即所述对所述音频数据进行语音识别处理,生成第二字幕数据,包括:对所述音频数据进行语音识别,根据识别结果生成第二字幕文本,并确定所述第二字幕文本对应的时间戳。
在本发明实施例中,第二字幕文本和时间戳的对应关系指的是第二字幕文本中的每一条字幕文本和每一个时间戳一一对应的关系,具体如图3所示。可以看出,第二字幕文本中包含多条字幕文本,且每一条字幕文本有一个与之对应的时间戳,以控制这条字幕文本开始播放和结束播放的时间。基于上述内容,所述基于所述第二字幕数据对所述第一字幕数据进行校正,包括:基于所述第二字幕文本对应的时间戳,对所述第一字幕文本对应的时间戳进行校正。
在多媒体文件播放的过程中,还需要确定第一字幕数据中的时间戳是否和音频数据的时间戳同步。例如,当多媒体文件为视频文件的时候,如果第一字幕数据中的时间戳无法和音频数据的时间戳同步,那么观众在观看该视频文件的时候,很可能出现视频中的人物并没有对话,但是视频文件中却出现了字幕这种现象,或者视频中的人物虽然在对话且刚开始进行对话,但是与他们对话内容相对应的字幕在他们还在对话的过程中就已经播放完毕;再如多媒体文件为音频文件的时候,如果第一字幕数据中的时间戳无法和音频数据的时间戳同步,那么听众在收听该音频文件的时候,很可能出现音频数据还没有开始播放,但是在该音频文件中却出现了字幕这种现象。这些情况通常会引起用户的不适,影响用户对该多媒体文件的观看,因此,在实际进行字幕校正的过程中,除了对字幕文本进行校正,多数时候还需要对时间戳进行校正,进一步提高观众观影体验。
在步骤S13中,基于所述第二字幕数据对所述第一字幕数据进行校正。
在本发明实施例中,如步骤S11和S12内容所述,第一字幕数据包括字幕文本和/或时间戳,因此,在这里,基于所述第二字幕数据对所述第一字幕数据进行校正包括对字幕文本和/或时间戳的校正。
在本发明实施例中,第一字幕数据包括未经过校正但已经播放过的第一字幕数据和未经过校正且未播放的第一字幕数据。具体地,若第一字幕数据为未经过校正但已经播放过的第一字幕数据,那么,由于没有经过校正的第一字幕数据可能存在很多的问题,比如时间戳没有和字幕文本同步,再如对字幕文本的翻译不是很准确,如果急于将字幕数据进行播放,那么低质量的字幕数据很可能影响用户对多媒体文件的评价,从而影响该多媒体文件的收视或收听率,即使后面随着语音引擎和智能翻译软件等的更新或收到用户对字幕数据的反馈意见或其他原因需要对该未经过校正但已经播放过的字幕数据进行校正,那也为时过晚,用户很可能已经对该多媒体文件失去信心,选择放弃观看或收听了。因此,在本发明实施例中,优选地,所述基于所述第二字幕数据对所述第一字幕数据进行校正之后,还包括:根据校正之后的所述第一字幕数据对所述多媒体文件进行播放。其中,第一字幕数据为未经过校正且未播放的第一字幕数据。通过在播放之前对该第一字幕数据进行校正,可以在多媒体文件播放之前得到更准确的字幕数据,然后再将该更准确的字幕数据进行播放,降低了如上所述的因为字幕数据不准确的原因导致的用户兴趣下降的可能性。
本发明实施例提供了一种字幕的处理方法,所述方法首先获取第一字幕数据及与所述第一字幕数据相对应的音频数据,然后对所述音频数据进行语音识别,以根据识别后得到的音频数据去校正原始的字幕数据,由于整个校正过程不需要人工参与,因此实现了对字幕文本的自动化校正,解决了人工校正耗时长的问题,同时由于对所述音频数据进行了更准确的语音识别,得到更准确的第二字幕数据,也因此解决了人工校正得到的校正字幕质量参差不齐的缺点。
实施例二
图4示出了本发明实施例二提供的字幕的处理装置100,包括获取单元110、识别单元120和校正单元130。
获取单元110,用于获取多媒体文件对应的第一字幕数据,并提取所述多媒体文件的音频数据;
识别单元120,用于对所述音频数据进行语音识别处理,生成第二字幕数据;
校正单元130,用于基于所述第二字幕数据对所述第一字幕数据进行校正。
本发明实施例提供了一种字幕的处理装置,所述装置首先获取第一字幕数据及与所述第一字幕数据相对应的音频数据,然后对所述音频数据进行语音识别,以根据识别后得到的音频数据去校正原始的字幕数据,由于整个校正过程不需要人工参与,因此实现了对字幕文本的自动化校正,解决了人工校正耗时长的问题,同时由于对所述音频数据进行了更准确的语音识别,得到更准确的第二字幕数据,也因此解决了人工校正得到的校正字幕质量参差不齐的缺点。
在本发明实施例中,所述识别单元120包括:确定模块121,用于确定所述第一字幕数据中第一字幕文本的语言种类;识别模块122,用于对所述音频数据进行语音识别,根据识别结果生成第二字幕文本;翻译模块123,用于根据所述语言种类,对所述第二字幕文本进行翻译,得到第三字幕文本,以基于所述第三字幕文本生成所述第二字幕数据。基于上述内容,校正单元130,用于基于所述第二字幕数据对所述第一字幕数据进行校正,包括:基于所述第三字幕文本,对所述第一字幕文本进行校正。
在本发明实施例中,所述识别单元120包括:时间模块,用于对所述音频数据进行语音识别,根据识别结果生成第二字幕文本,并确定所述第二字幕文本对应的时间戳。基于上述内容,校正单元130,用于基于所述第二字幕数据对所述第一字幕数据进行校正,包括:基于所述第二字幕文本对应的时间戳,对所述第一字幕文本对应的时间戳进行校正。
需要说明的是,本发明实施例二提出的字幕的处理装置与本发明实施例一提出的字幕的处理方法基于相同的发明构思,装置实施例与方法实施例中的相应技术内容可互相适用,此处不再详述。
所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述一种操作系统的权限管理装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本申请的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
实施例三
图6是本发明实施例三提供的一种字幕的处理终端的示意图。如图6所示,该实施例的终端200包括:处理器230、存储器210以及存储在所述存储器210中并可在所述处理器200上运行的计算机程序220。所述处理器230执行所述计算机程序220时实现上述一种字幕校正方法实施例中的步骤,例如图1所示的步骤S11至S13,或者,所述处理器230执行所述计算机程序220时实现上述各装置100实施例中各单元的功能,例如图4所示单元110至130的功能。
示例性的,所述计算机程序220可以被分割成一个或多个单元,所述一个或者多个单元被存储在所述存储器210中,并由所述处理器230执行,以完成本发明。所述一个或多个单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序220在所述终端200中的执行过程。例如,所述计算机程序220可以被分割成获取单元、识别单元和校正单元,各单元具体功能如下:
获取单元,用于获取多媒体文件对应的第一字幕数据,并提取所述多媒体文件的音频数据;
识别单元,用于对所述音频数据进行语音识别处理,生成第二字幕数据;
校正单元,用于基于所述第二字幕数据对所述第一字幕数据进行校正。
所述终端可包括但不仅限于,处理器230、存储器210。本领域技术人员可以理解,图6仅仅是终端200的示例,并不构成对终端200的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件。
所称处理器230可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
所述存储器210可以是所述终端200的内部存储单元,例如终端200的硬盘或内存。所述存储器210也可以是所述终端200的外部存储设备,例如所述终端200上配备的插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(Secure Digital,SD)卡,闪存卡(Flash Card)等。进一步地,所述存储器210还可以既包括所述终端200的内部存储单元也包括外部存储设备。所述存储器210用于存储所述计算机程序以及所述终端200所需的其他程序和数据。所述存储器210还可以用于暂时地存储已经输出或者将要输出的数据。
在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、或者计算机软件和电子硬件的结合来实现。这些功能究竟以硬件还是软件方式来执行,取决于技术方案的特定应用和设计约束条件。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。
在本发明所提供的实施例中,应该理解到,所揭露的方法、装置及终端,可以通过其它的方式实现。例如,以上所描述的方法、装置及终端实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。其中,所述计算机程序包括计算机程序代码,所述计算机程序代码可以为源代码形式、对象代码形式、可执行文件或某些中间形式等。所述计算机可读介质可以包括:能够携带所述计算机程序代码的任何实体或装置、记录介质、U盘、移动硬盘、磁碟、光盘、计算机存储器、只读存储器(Read-Only Memory,ROM)、随机存取存储器(Random AccessMemory,RAM)、电载波信号、电信信号以及软件分发介质等。需要说明的是,所述计算机可读介质包含的内容可以根据司法管辖区内立法和专利实践的要求进行适当的增减,例如在某些司法管辖区,根据立法和专利实践,计算机可读介质不包括电载波信号和电信信号。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。