CN108053821A - 生成音频数据的方法和装置 - Google Patents
生成音频数据的方法和装置 Download PDFInfo
- Publication number
- CN108053821A CN108053821A CN201711316756.7A CN201711316756A CN108053821A CN 108053821 A CN108053821 A CN 108053821A CN 201711316756 A CN201711316756 A CN 201711316756A CN 108053821 A CN108053821 A CN 108053821A
- Authority
- CN
- China
- Prior art keywords
- audio data
- target
- write
- sub
- audio
- 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.)
- Granted
Links
- 238000000034 method Methods 0.000 title claims abstract description 40
- 230000015654 memory Effects 0.000 claims abstract description 131
- 241001269238 Data Species 0.000 claims abstract description 27
- 230000008569 process Effects 0.000 claims description 10
- 238000012163 sequencing technique Methods 0.000 claims description 5
- 238000000151 deposition Methods 0.000 claims 2
- 238000012545 processing Methods 0.000 description 19
- 238000010586 diagram Methods 0.000 description 13
- 230000001133 acceleration Effects 0.000 description 9
- 230000015572 biosynthetic process Effects 0.000 description 9
- 238000003058 natural language processing Methods 0.000 description 9
- 238000003786 synthesis reaction Methods 0.000 description 9
- 238000004891 communication Methods 0.000 description 8
- 230000006870 function Effects 0.000 description 8
- 230000002093 peripheral effect Effects 0.000 description 7
- 230000003139 buffering effect Effects 0.000 description 4
- 238000001514 detection method Methods 0.000 description 4
- 238000007493 shaping process Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 241000209140 Triticum Species 0.000 description 2
- 235000021307 Triticum Nutrition 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 2
- 230000008901 benefit Effects 0.000 description 2
- 230000005540 biological transmission Effects 0.000 description 2
- 239000000919 ceramic Substances 0.000 description 2
- 230000008859 change Effects 0.000 description 2
- 239000002131 composite material Substances 0.000 description 2
- 230000006835 compression Effects 0.000 description 2
- 238000007906 compression Methods 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 230000005284 excitation Effects 0.000 description 2
- 230000004927 fusion Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 238000005457 optimization Methods 0.000 description 2
- 230000033764 rhythmic process Effects 0.000 description 2
- 230000001052 transient effect Effects 0.000 description 2
- 230000009471 action Effects 0.000 description 1
- 238000012512 characterization method Methods 0.000 description 1
- 239000003795 chemical substances by application Substances 0.000 description 1
- 239000013078 crystal Substances 0.000 description 1
- 230000001186 cumulative effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 230000008451 emotion Effects 0.000 description 1
- 238000003384 imaging method Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000006698 induction Effects 0.000 description 1
- 239000004615 ingredient Substances 0.000 description 1
- 230000001788 irregular Effects 0.000 description 1
- 239000007788 liquid Substances 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 238000010801 machine learning Methods 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000006855 networking Effects 0.000 description 1
- 239000003973 paint Substances 0.000 description 1
- 230000000306 recurrent effect Effects 0.000 description 1
- 230000009467 reduction Effects 0.000 description 1
- 238000009877 rendering Methods 0.000 description 1
- 230000006403 short-term memory Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 238000001228 spectrum Methods 0.000 description 1
- 230000006641 stabilisation Effects 0.000 description 1
- 238000011105 stabilization Methods 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000007704 transition Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/02—Methods for producing synthetic speech; Speech synthesisers
- G10L13/04—Details of speech synthesis systems, e.g. synthesiser structure or memory management
Landscapes
- Engineering & Computer Science (AREA)
- Computational Linguistics (AREA)
- Health & Medical Sciences (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Physics & Mathematics (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Telephone Function (AREA)
Abstract
本发明实施例公开了一种生成音频数据的方法和装置,属于文语转换领域。所述方法包括:将目标文本转换为多个声学特征单元;基于每个声学特征单元,生成所述每个声学特征单元对应的音频数据单元;复用目标内存区域,根据所述目标文本的多个音频数据单元,生成多个子音频数据,其中,每次在所述目标内存区域中写入预设数目的音频数据单元以得到子音频数据;每生成一个子音频数据,将所述子音频数据写入存储器;对所述存储器中所写入的多个子音频数据进行合并,得到所述目标文本对应的目标音频数据。采用本发明,可以减少内存占用量。
Description
技术领域
本发明涉及文语转换领域,特别涉及一种生成音频数据的方法和装置。
背景技术
随着TTS(Text To Speech,文本转换到语音)技术的发展,电子设备可以实现将文本数据转换为音频数据,进而,可以将文本对应的语音播放出来,丰富了人们的阅读方式。
在实现的过程中,电子设备可以在内存中申请一个缓冲区,并将该缓冲区中的数据初始化为全0。当电子设备将文本数据转换为音频数据时,可以按照固定的时间间隔往缓冲区中写入音频数据,并利用一个计数器统计写入的音频数据的长度。在文本数据全部转换为音频数据之后,电子设备可以按照计数器统计的数据长度向存储器或硬盘中写入完整的音频数据。
在实现本发明的过程中,发明人发现现有技术至少存在以下问题:
为了保证音频的叠加完整性以及相位连续性,缓冲区中需要写入完整的音频数据,因此,电子设备在内存中申请的缓冲区的长度必须足够长,一般来说,这个长度会在100Mb(Mbit,兆比特)到300Mb之间,对内存占用量较高,可能影响电子设备的正常运行。
发明内容
为了解决现有技术的问题,本发明实施例提供了一种生成音频数据的方法和装置。所述技术方案如下:
一方面,提供了一种生成音频数据的方法,所述方法包括:
将目标文本转换为多个声学特征单元;
基于每个声学特征单元,生成所述每个声学特征单元对应的音频数据单元;
复用目标内存区域,根据所述目标文本的多个音频数据单元,生成多个子音频数据,其中,每次在所述目标内存区域中写入预设数目的音频数据单元以得到子音频数据;
每生成一个子音频数据,将所述子音频数据写入存储器;
对所述存储器中所写入的多个子音频数据进行合并,得到所述目标文本对应的目标音频数据。
一方面,提供了一种生成音频数据的装置,所述装置包括:
转换模块,用于将目标文本转换为多个声学特征单元;
生成模块,用于基于每个声学特征单元,生成所述每个声学特征单元对应的音频数据单元;
复用模块,用于复用目标内存区域,根据所述目标文本的多个音频数据单元,生成多个子音频数据,其中,每次在所述目标内存区域中写入预设数目的音频数据单元以得到子音频数据;
存储模块,用于每生成一个子音频数据,将所述子音频数据写入存储器;
合并模块,用于对所述存储器中所写入的多个子音频数据进行合并,得到所述目标文本对应的目标音频数据。
一方面,提供了一种终端,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如上所述的生成音频数据的方法。
一方面,提供了一种计算机可读存储介质,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如上所述的生成音频数据的方法。
本发明实施例提供的技术方案带来的有益效果是:
本发明实施例中,终端将目标文本转换为多个声学特征单元,基于每个声学特征单元,生成个声学特征单元对应的音频数据单元,复用目标内存区域,根据目标文本的多个音频数据单元,生成多个子音频数据,每生成一个子音频数据,将子音频数据写入存储器,对存储器中所写入的多个子音频数据进行合并,得到目标文本对应的目标音频数据。这样,通过复用内存区域,可以使得在将文本转换语音的过程中,内存占用量显著减少。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种简化的发音模型的示意图;
图2是本发明实施例提供的一种声学特征合成音频数据的示意图;
图3是本发明实施例提供的一种生成音频数据的方法流程图;
图4是本发明实施例提供的一种生成音频数据的处理流程示意图;
图5是本发明实施例提供的一种尾帧拼接示意图;
图6是本发明实施例提供的一种在尾帧音频数据之后写入音频数据单元的示意图;
图7是本发明实施例提供的一种播放文本对应的语音的场景示意图;
图8是本发明实施例提供的一种生成音频数据的装置示意图;
图9是本发明实施例提供的一种终端的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
本发明实施例提供了一种生成音频数据的方法,该方法的执行主体可以是终端。其中,终端可以是智能手机、车载音响设备等电子设备。
终端可以包括处理器、存储器、屏幕等部件。处理器,可以为CPU(CentralProcessing Unit,中央处理单元)等,可以用于将目标文本转换为多个声学特征单元、基于声学特征单元生成音频数据单元、生成子音频数据、生成目标音频数据等处理。存储器,可以为RAM(Random Access Memory,随机存取存储器),Flash(闪存)等,可以用于存储接收到的数据、处理过程所需的数据、处理过程中生成的数据等,如目标文本、声学特征单元、音频数据单元、子音频数据、目标音频数据等。屏幕可以是触控屏,可以用于显示设备列表、控制页面,还可以用于检测触碰信号等。终端还可以包括收发器、图像检测部件、音频输出部件和音频输入部件等。收发器,可以用于与其它设备进行数据传输,例如,向服务器发送目标文本、接收服务器发送的声学特征单元,可以包括天线、匹配电路、调制解调器等。图像检测部件可以是摄像头等。音频输出部件可以是音箱、耳机等。音频输入部件可以是麦克风等。
终端中可以安装有将文本数据转换为音频数据的TTS系统。现阶段,可实际应用的TTS系统通常都不是直接对音频信号进行建模,而是对表征语音的一系列声学特征进行建模和预测,这样做的好处是可以得到稳定的语音信息表达,便于声学模型进行建模和预测,主流的声学模型包括LSTM(Long Short Term Memory,长短时记忆网络)和HMM(HiddenMarkov Model,隐马尔科夫模型)等。一般来说,一套完整的TTS系统可以包括前端NLP(Natural Language Processing,自然语言处理)、后端声学模型和声码器三个模块。当终端需要将文本转换为语音时,前端NLP可以将输入的文本进行一系列的规整,对输入的文本进行解析得到对应的语言学特征,如韵律、词性等信息,用于指导声学模型输出带有自然韵律和语气的合成语音。而后端声学模型以前端NLP处理后得到的语言学特征与原文本作为输入,预测出文本对应的声学特征。最后,声码器利用信号处理的一系列算法,将声学特征合成为可以播放的音频数据。
常用的声学特征包括MGC(Mel Generalized Cepstral features,梅尔泛化谱特征)、BAP(Band Aperiodicity,带状非周期成分)、F0(Frequency,基频成分)。其中,MGC表征的是声道对周期/非周期激励的整形幅度,包含了声音的内容以及音色信息;F0表征的是音调信息,控制发音的抑扬顿挫以及情感等;而BAP用于控制清音/浊音以及有声/无声之间的自然切换,使得合成的语音有更好的听感。
简化的发音模型如图1所示,图中周期脉冲对应的是F0的信息,通过声道整形后可以产生浊音;而白噪声对应的是清音激励,此时通常对应的F0取值为0或-∞,但BAP和MGC信息都存在,通过声道整形后可以产生清音。声道整形对应于MGC的信息,而BAP负责平滑清音段/浊音段和有声/无声段的过渡。如图2所示的声学特征合成音频数据的示意图,清音和浊音在时间域上通过有交叠的累加,可以合成类似于自然语音听感的合成语音。
结合图3所示的生成音频数据的方法流程图与图4所示的生成音频数据的处理流程示意图,该方法的处理流程可以如下:
301、终端将目标文本转换为多个声学特征单元。
其中,声学特征单元中可以包含一组MGC、BAP和F0的信息,用于生成一帧音频数据。一帧音频数据对应的语音长度可以是20ms(毫秒)。
在实施中,终端当需要将目标文本转换为语音时,可以通过上述前端NLP与后端声学模型,生成目标文本对应的声学特征单元。而目标文本可以对应于不止20ms的语音,因此,目标文本可以转换为多个声学特征单元。
可选的,终端中可以安装有完整的TTS系统,也可以只安装有声码器,相应的处理可以如下:当接收到目标文本时,按照文本内容的顺序,将目标文本转换为多个声学特征单元;或当接收到目标文本时,向服务器发送目标文本,接收服务器发送的目标文本对应的多个声学特征单元。
在实施中,终端可以在多种情景下将文本转换为语音。例如,在社交应用中,可以将接收到的聊天消息转换为语音进行播放;或者,在阅读软件中,可以选择听书的模式,将文章转换为语音进行播放;或者,开车时不方便查看短信,车载电子设备在与司机的手机进行蓝牙连接后,当接收到短信时将短信的内容转换成语音进行播放。
如果终端中安装有完整的TTS系统,则当终端接收到需要转换为语音的目标文本时,可以按照文本内容的顺序,通过上述前端NLP与后端声学模型,可以将每个字或者短语生成对应的多个声学特征单元。按照文本内容的顺序生成声学特征单元,可以保证最终得到的语音与原文本保持一致。
如果终端中仅安装有声码器,则前端NLP与后端声学模型可以安装在服务器中。当终端接收到需要转换为语音的目标文本时,可以将该目标文本发送给服务器。进而,服务器可以按照文本内容的顺序,通过服务器侧的前端NLP与后端声学模型,可以将每个字或者短语生成对应的多个声学特征单元。然后,服务器可以将生成的多个声学特征单元发送回终端。终端可以接收到目标文本对应的多个声学特征单元,继续后续的处理。
这样,终端上始终安装有声码器,可以将语音合成的任务放在终端进行处理,保证了语音接收和播放的实时性。同时,由于声学特征的数据量与音频数据的数据量相比要小得多,可以放宽对网络带宽的限制。这就保证了在弱网络甚至无网络的场景下,TTS系统依然能够正常的工作。
302、终端基于每个声学特征单元,生成每个声学特征单元对应的音频数据单元。
在实施中,终端中可以根据生成声学特征单元的顺序,通过声码器,依次生成每个声学特征单元对应的音频数据单元。音频数据单元可以用于描绘一段音频的波形,例如,描绘语音长度为20ms的音频波形。生成音频数据单元时,可以是每当生成一个声学特征单元,就可以进行生成其对应的音频数据单元的处理;也可以是将目标文本全部转换为声学特征单元后,再进行生成音频数据单元的处理,此处不作限定。
303、终端复用目标内存区域,根据目标文本的多个音频数据单元,生成多个子音频数据。
其中,复用目标内存区域是指重复使用目标内存区域作为写入区域。该目标内存区域可以为预设大小,由终端预先配置或在确定要进行音频数据生成时分配,本发明实施例对此不做限定。
可选的,生成多个子音频数据的具体步骤可以如下:将目标内存区域初始化;每生成预设数目的音频数据单元时,将预设数目的音频数据单元写入目标内存区域,得到一个子音频数据,重复上述过程,直到最后一个音频数据单元写入目标内存区域为止,得到多个子音频数据。在上述过程中,每次均将预设数目的音频数据单元写入该目标内存区域,以得到一个合成的子音频数据,在每次写入完毕后,将已合成的子音频数据存储至存储器,并将目标内存区域初始化,再继续进行下一次音频数据单元的写入,来覆盖上一次写入的音频数据单元,直到所有音频数据单元写入完毕后,可以在存储器中得到多个子音频数据。这样,复用内存区域可以使得在将文本转换语音的过程中,内存占用量显著减少,仅为1至3MB,内存优化十分明显。
在实施中,每当生成一个音频数据单元,终端可以将该音频数据单元写入目标内存区域中,对于前后写入的两个音频数据单元来说,在写入后一音频数据单元时,需要与前一音频数据单元之间存在写入的交叠。例如,可以将前一音频数据单元的后5ms的音频数据与后一音频数据单元的前5ms的音频数据进行叠加。而根据F0的取值不同,语音和语音之间的叠加长度是可变的,叠加长度可以是通过F0推导出的相位信息计算而来。F0越大,叠加长度越短;F0越小,叠加长度越长。当在目标内存区域中写入预设数目为N的音频数据单元后,可以得到一个合成的子音频数据。该子音频数据即是目标文本对应的目标音频数据中的一部分。为了便于程序上的优化,上述预设数目N通常取2的整数倍,例如16、32或64等。
当子音频数据保存到存储器或硬盘后,可以将目标内存区域进行初始化,该初始化可以是全部置为0,然后将下一组预设数目的音频数据单元写入目标内存区域,合成另一个子音频数据,将其保存到存储器或硬盘中。重复上述过程,将所有的音频数据单元写入目标内存区域,当最后一个音频数据单元写入目标内存区域时,生成最后一个子音频数据,最终可以得到目标文本对应的多个子音频数据。
可选的,可以将未能写入目标内存区域的音频数据与下一组音频数据单元一起写入目标内存区域,相应的处理可以如下:如果目标内存区域写满时,预设数目的音频数据单元中的最后一个音频数据单元还未写入完毕,则将未写入内存的数据作为尾帧音频数据;将尾帧音频数据写入目标内存区域的起始位置;基于下一组预设数目的音频数据单元继续执行写入目标内存区域的步骤。
在实施中,终端根据预设数目的音频数据单元能够合成的音频数据大小,对分配的目标内存区域的大小进行估计,使得目标内存区域能够写入预设数目的音频数据单元中的最后一个音频数据单元中的部分数据,而不能写入完整的数据。因此,当目标内存区域写满时,将目标内存区域当前存储的音频数据作为一个子音频数据。如图5所示的尾帧拼接示意图,在目标内存区域初始化后,再将未写入的数据作为尾帧音频数据,继续写入目标内存区域的起始位置。然后,终端可以在尾帧音频数据的位置之后,将下一组预设数目的音频数据单元写入目标内存区域。这样可以使得总能存在尾帧音频数据与下一组音频数据单元进行合成一个子音频数据,由于尾帧音频数据携带有上一组音频数据单元延续下来的相位,因此,子音频数据可以与上一个子音频数据保持相位连续,保证最后合成的语音的连续性。
可选的,生成下一个子音频数据时,需要与上一个子音频数据的相位保持连续,相应的处理可以如下:将下一组预设数目的音频数据单元中第一个音频数据单元的起始相位设置为0,基于尾帧音频数据的基频成分,重新确定第一个音频数据单元的相位;以目标内存区域的预设位置为起始,写入下一组预设数目的音频数据单元,得到一个子音频数据。
在实施中,在写入下一组预设数目的音频数据单元时,如果第一个音频单元的起始相位不为0,则在叠加时,可能与尾帧音频数据的相位不连续,使得合成的语音产生不连续或语音截断的问题,听感上会出现不连续的“梆梆”声。因此,可以在写入第一个音频数据单元时,将其起始相位设置为0,然后根据写入的位置上的尾帧音频数据的相位,重新确定第一个音频数据单元的相位。写入的位置上的尾帧音频数据的相位可以通过尾帧音频数据的基频成分F0与写入的位置来确定。并且,该写入的位置可以是预设位置,如果1s的音频数据中包含有16000个样本点,则可以将第81个样本点的位置作为写入第一个音频数据单元的起始位置,即尾帧音频数据与第一个音频数据单元之间有5ms(包含有80个样本点)的间隔。进而,可以将后续的音频数据单元继续写入目标内存区域,此处不再赘述。这样,可以保证前后两帧音频数据单元之间相位连续,保证合成的语音的连续性,使得听感上自然连续。在尾帧音频数据之后写入音频数据单元的示意图如图6所示。
304、终端每生成一个子音频数据,将子音频数据写入存储器。
在实施中,上述过程中每生成一个子音频数据,终端可以将该子音频数据保存在存储器或硬盘中,以便实现目标内存区域的复用以及音频数据的合并。这样,最终可以在存储器或硬盘中得到目标文本对应的多个子音频数据。
305、终端对存储器中所写入的多个子音频数据进行合并,得到目标文本对应的目标音频数据。
在实施中,当在存储器或硬盘中得到目标文本的所有子音频数据后,可以将所有子音频数据进行合并,从而得到目标文本对应的完整的目标音频数据。然后,终端可以播放目标音频数据,实现将目标文本通过语音的方式播放出来的目的,播放文本对应的语音的场景示意图如图7所示。
可选的,可以将存储器中所写入的多个子音频数据按照先后顺序拼接,得到目标文本对应的目标音频数据。在实施中,在合并子音频数据时,可以直接按照先后顺序对子音频数据进行拼接,即可得到目标音频数据。子音频数据之间没有重复的音频数据,可以避免存在重复的音频数据时还需要查找重复的部分并删除,提高合并子音频数据的效率。
本发明实施例中,终端将目标文本转换为多个声学特征单元,基于每个声学特征单元,生成个声学特征单元对应的音频数据单元,复用目标内存区域,根据目标文本的多个音频数据单元,生成多个子音频数据,每生成一个子音频数据,将子音频数据写入存储器,对存储器中所写入的多个子音频数据进行合并,得到目标文本对应的目标音频数据。这样,通过复用内存区域,可以使得在将文本转换语音的过程中,内存占用量显著减少,避免了对终端正常运行的影响。
基于相同的技术构思,本发明实施例还提供了一种生成音频数据的装置,该装置可以是上述实施例中的终端。如图8所示,该装置包括:
转换模块810,用于将目标文本转换为多个声学特征单元;
生成模块820,用于基于每个声学特征单元,生成所述每个声学特征单元对应的音频数据单元;
复用模块830,用于复用目标内存区域,根据所述目标文本的多个音频数据单元,生成多个子音频数据,其中,每次在所述目标内存区域中写入预设数目的音频数据单元以得到子音频数据;
存储模块840,用于每生成一个子音频数据,将所述子音频数据写入存储器;
合并模块850,用于对所述存储器中所写入的多个子音频数据进行合并,得到所述目标文本对应的目标音频数据。
可选的,所述复用模块830用于:
将目标内存区域初始化;
每生成预设数目的音频数据单元时,将所述预设数目的音频数据单元写入所述目标内存区域,得到一个子音频数据,重复上述过程,直到最后一个音频数据单元写入所述目标内存区域为止,得到所述多个子音频数据。
可选的,所述复用模块830还用于:
如果所述目标内存区域写满时,所述预设数目的音频数据单元中的最后一个音频数据单元还未写入完毕,则将未写入内存的数据作为尾帧音频数据;
将所述尾帧音频数据写入所述目标内存区域的起始位置;
基于下一组预设数目的音频数据单元继续执行写入所述目标内存区域的步骤。
可选的,所述复用模块830用于:
将下一组预设数目的音频数据单元中第一个音频数据单元的起始相位设置为0,基于所述尾帧音频数据的基频成分,重新确定所述第一个音频数据单元的相位;
以所述目标内存区域的预设位置为起始,写入所述下一组预设数目的音频数据单元,得到一个子音频数据。
可选的,所述合并模块850用于:
将所述存储器中所写入的多个子音频数据按照先后顺序拼接,得到所述目标文本对应的目标音频数据。
可选的,所述转换模块810用于:
当接收到目标文本时,按照文本内容的顺序,将所述目标文本转换为多个声学特征单元;或
当接收到目标文本时,向服务器发送所述目标文本,接收所述服务器发送的所述目标文本对应的多个声学特征单元。
本发明实施例中,终端将目标文本转换为多个声学特征单元,基于每个声学特征单元,生成个声学特征单元对应的音频数据单元,复用目标内存区域,根据目标文本的多个音频数据单元,生成多个子音频数据,每生成一个子音频数据,将子音频数据写入存储器,对存储器中所写入的多个子音频数据进行合并,得到目标文本对应的目标音频数据。这样,通过复用内存区域,可以使得在将文本转换语音的过程中,内存占用量显著减少,避免了对终端正常运行的影响。
需要说明的是:上述实施例提供的生成音频数据的装置在生成音频数据时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将终端的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的生成音频数据的装置与生成音频数据的方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
图9示出了本发明一个示例性实施例提供的终端900的结构框图。该终端900可以是便携式移动终端,比如:智能手机、平板电脑、MP3播放器(Moving Picture ExpertsGroup Audio Layer III,动态影像专家压缩标准音频层面3)、MP4(Moving PictureExperts Group Audio Layer IV,动态影像专家压缩标准音频层面4)播放器、车载音响设备。终端900还可能被称为用户设备、嵌入式终端等其他名称。
通常,终端900包括有:处理器901和存储器902。
处理器901可以包括一个或多个处理核心,比如4核心处理器、8核心处理器等。处理器901可以采用DSP(Digital Signal Processing,数字信号处理)、FPGA(Field-Programmable Gate Array,现场可编程门阵列)、PLA(Programmable Logic Array,可编程逻辑阵列)中的至少一种硬件形式来实现。处理器901也可以包括主处理器和协处理器,主处理器是用于对在唤醒状态下的数据进行处理的处理器,也称CPU(Central ProcessingUnit,中央处理器);协处理器是用于对在待机状态下的数据进行处理的低功耗处理器。在一些实施例中,处理器901可以在集成有GPU(Graphics Processing Unit,图像处理器),GPU用于负责显示屏所需要显示的内容的渲染和绘制。一些实施例中,处理器901还可以包括AI(Artificial Intelligence,人工智能)处理器,该AI处理器用于处理有关机器学习的计算操作。
存储器902可以包括一个或多个计算机可读存储介质,该计算机可读存储介质可以是有形的和非暂态的。存储器902还可包括高速随机存取存储器,以及非易失性存储器,比如一个或多个磁盘存储设备、闪存存储设备。在一些实施例中,存储器902中的非暂态的计算机可读存储介质用于存储至少一个指令,该至少一个指令用于被处理器901所执行以实现本申请中提供的重构语音信号的方法。
在一些实施例中,终端900还可选包括有:外围设备接口903和至少一个外围设备。具体地,外围设备包括:射频电路904、触摸显示屏905、摄像头906、音频电路907、定位组件908和电源909中的至少一种。
外围设备接口903可被用于将I/O(Input/Output,输入/输出)相关的至少一个外围设备连接到处理器901和存储器902。在一些实施例中,处理器901、存储器902和外围设备接口903被集成在同一芯片或电路板上;在一些其他实施例中,处理器901、存储器902和外围设备接口903中的任意一个或两个可以在单独的芯片或电路板上实现,本实施例对此不加以限定。
射频电路904用于接收和发射RF(Radio Frequency,射频)信号,也称电磁信号。射频电路904通过电磁信号与通信网络以及其他通信设备进行通信。射频电路904将电信号转换为电磁信号进行发送,或者,将接收到的电磁信号转换为电信号。可选地,射频电路904包括:天线系统、RF收发器、一个或多个放大器、调谐器、振荡器、数字信号处理器、编解码芯片组、用户身份模块卡等等。射频电路904可以通过至少一种无线通信协议来与其它终端进行通信。该无线通信协议包括但不限于:万维网、城域网、内联网、各代移动通信网络(2G、3G、4G及5G)、无线局域网和/或WiFi(Wireless Fidelity,无线保真)网络。在一些实施例中,射频电路904还可以包括NFC(Near Field Communication,近距离无线通信)有关的电路,本申请对此不加以限定。
触摸显示屏905用于显示UI(User Interface,用户界面)。该UI可以包括图形、文本、图标、视频及其它们的任意组合。触摸显示屏905还具有采集在触摸显示屏905的表面或表面上方的触摸信号的能力。该触摸信号可以作为控制信号输入至处理器901进行处理。触摸显示屏905用于提供虚拟按钮和/或虚拟键盘,也称软按钮和/或软键盘。在一些实施例中,触摸显示屏905可以为一个,设置终端900的前面板;在另一些实施例中,触摸显示屏905可以为至少两个,分别设置在终端900的不同表面或呈折叠设计;在再一些实施例中,触摸显示屏905可以是柔性显示屏,设置在终端900的弯曲表面上或折叠面上。甚至,触摸显示屏905还可以设置成非矩形的不规则图形,也即异形屏。触摸显示屏905可以采用LCD(LiquidCrystal Display,液晶显示器)、OLED(Organic Light-Emitting Diode,有机发光二极管)等材质制备。
摄像头组件906用于采集图像或视频。可选地,摄像头组件906包括前置摄像头和后置摄像头。通常,前置摄像头用于实现视频通话或自拍,后置摄像头用于实现照片或视频的拍摄。在一些实施例中,后置摄像头为至少两个,分别为主摄像头、景深摄像头、广角摄像头中的任意一种,以实现主摄像头和景深摄像头融合实现背景虚化功能,主摄像头和广角摄像头融合实现全景拍摄以及VR(Virtual Reality,虚拟现实)拍摄功能。在一些实施例中,摄像头组件906还可以包括闪光灯。闪光灯可以是单色温闪光灯,也可以是双色温闪光灯。双色温闪光灯是指暖光闪光灯和冷光闪光灯的组合,可以用于不同色温下的光线补偿。
音频电路907用于提供用户和终端900之间的音频接口。音频电路907可以包括麦克风和扬声器。麦克风用于采集用户及环境的声波,并将声波转换为电信号输入至处理器901进行处理,或者输入至射频电路904以实现语音通信。出于立体声采集或降噪的目的,麦克风可以为多个,分别设置在终端900的不同部位。麦克风还可以是阵列麦克风或全向采集型麦克风。扬声器则用于将来自处理器901或射频电路904的电信号转换为声波。扬声器可以是传统的薄膜扬声器,也可以是压电陶瓷扬声器。当扬声器是压电陶瓷扬声器时,不仅可以将电信号转换为人类可听见的声波,也可以将电信号转换为人类听不见的声波以进行测距等用途。在一些实施例中,音频电路907还可以包括耳机插孔。
定位组件908用于定位终端900的当前地理位置,以实现导航或LBS(LocationBased Service,基于位置的服务)。定位组件908可以是基于美国的GPS(GlobalPositioning System,全球定位系统)、中国的北斗系统或俄罗斯的伽利略系统的定位组件。
电源909用于为终端900中的各个组件进行供电。电源909可以是交流电、直流电、一次性电池或可充电电池。当电源909包括可充电电池时,该可充电电池可以是有线充电电池或无线充电电池。有线充电电池是通过有线线路充电的电池,无线充电电池是通过无线线圈充电的电池。该可充电电池还可以用于支持快充技术。
在一些实施例中,终端900还包括有一个或多个传感器910。该一个或多个传感器910包括但不限于:加速度传感器911、陀螺仪传感器912、压力传感器913、指纹传感器914、光学传感器918以及接近传感器916。
加速度传感器911可以检测以终端900建立的坐标系的三个坐标轴上的加速度大小。比如,加速度传感器911可以用于检测重力加速度在三个坐标轴上的分量。处理器901可以根据加速度传感器911采集的重力加速度信号,控制触摸显示屏905以横向视图或纵向视图进行用户界面的显示。加速度传感器911还可以用于游戏或者用户的运动数据的采集。
陀螺仪传感器912可以检测终端900的机体方向及转动角度,陀螺仪传感器912可以与加速度传感器911协同采集用户对终端900的3D动作。处理器901根据陀螺仪传感器912采集的数据,可以实现如下功能:动作感应(比如根据用户的倾斜操作来改变UI)、拍摄时的图像稳定、游戏控制以及惯性导航。
压力传感器913可以设置在终端900的侧边框和/或触摸显示屏905的下层。当压力传感器913设置在终端900的侧边框时,可以检测用户对终端900的握持信号,根据该握持信号进行左右手识别或快捷操作。当压力传感器913设置在触摸显示屏905的下层时,可以根据用户对触摸显示屏905的压力操作,实现对UI界面上的可操作性控件进行控制。可操作性控件包括按钮控件、滚动条控件、图标控件、菜单控件中的至少一种。
指纹传感器914用于采集用户的指纹,以根据采集到的指纹识别用户的身份。在识别出用户的身份为可信身份时,由处理器901授权该用户执行相关的敏感操作,该敏感操作包括解锁屏幕、查看加密信息、下载软件、支付及更改设置等。指纹传感器914可以被设置终端900的正面、背面或侧面。当终端900上设置有物理按键或厂商Logo时,指纹传感器914可以与物理按键或厂商Logo集成在一起。
光学传感器915用于采集环境光强度。在一个实施例中,处理器901可以根据光学传感器915采集的环境光强度,控制触摸显示屏905的显示亮度。具体地,当环境光强度较高时,调高触摸显示屏905的显示亮度;当环境光强度较低时,调低触摸显示屏905的显示亮度。在另一个实施例中,处理器901还可以根据光学传感器915采集的环境光强度,动态调整摄像头组件906的拍摄参数。
接近传感器916,也称距离传感器,通常设置在终端900的正面。接近传感器916用于采集用户与终端900的正面之间的距离。在一个实施例中,当接近传感器916检测到用户与终端900的正面之间的距离逐渐变小时,由处理器901控制触摸显示屏905从亮屏状态切换为息屏状态;当接近传感器916检测到用户与终端900的正面之间的距离逐渐变大时,由处理器901控制触摸显示屏905从息屏状态切换为亮屏状态。
本领域技术人员可以理解,图9中示出的结构并不构成对终端900的限定,可以包括比图示更多或更少的组件,或者组合某些组件,或者采用不同的组件布置。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (14)
1.一种生成音频数据的方法,其特征在于,所述方法包括:
将目标文本转换为多个声学特征单元;
基于每个声学特征单元,生成所述每个声学特征单元对应的音频数据单元;
复用目标内存区域,根据所述目标文本的多个音频数据单元,生成多个子音频数据,其中,每次在所述目标内存区域中写入预设数目的音频数据单元以得到子音频数据;
每生成一个子音频数据,将所述子音频数据写入存储器;
对所述存储器中所写入的多个子音频数据进行合并,得到所述目标文本对应的目标音频数据。
2.根据权利要求1所述的方法,其特征在于,所述复用目标内存区域,根据所述目标文本的多个音频数据单元,生成多个子音频数据,包括:
将目标内存区域初始化;
每生成预设数目的音频数据单元时,将所述预设数目的音频数据单元写入所述目标内存区域,得到一个子音频数据,重复上述过程,直到最后一个音频数据单元写入所述目标内存区域为止,得到所述多个子音频数据。
3.根据权利要求2所述的方法,其特征在于,所述得到一个子音频数据之后,还包括:
如果所述目标内存区域写满时,所述预设数目的音频数据单元中的最后一个音频数据单元还未写入完毕,则将未写入内存的数据作为尾帧音频数据;
将所述尾帧音频数据写入所述目标内存区域的起始位置;
基于下一组预设数目的音频数据单元继续执行写入所述目标内存区域的步骤。
4.根据权利要求3所述的方法,其特征在于,所述基于下一组预设数目的音频数据单元继续执行写入所述目标内存区域的步骤,包括:
将下一组预设数目的音频数据单元中第一个音频数据单元的起始相位设置为0,基于所述尾帧音频数据的基频成分,重新确定所述第一个音频数据单元的相位;
以所述目标内存区域的预设位置为起始,写入所述下一组预设数目的音频数据单元,得到一个子音频数据。
5.根据权利要求3所述的方法,其特征在于,所述对所述存储器中所写入的多个子音频数据进行合并,得到所述目标文本对应的目标音频数据,包括:
将所述存储器中所写入的多个子音频数据按照先后顺序拼接,得到所述目标文本对应的目标音频数据。
6.根据权利要求1所述的方法,其特征在于,所述将目标文本转换为多个声学特征单元,包括:
当接收到目标文本时,按照文本内容的顺序,将所述目标文本转换为多个声学特征单元;或
当接收到目标文本时,向服务器发送所述目标文本,接收所述服务器发送的所述目标文本对应的多个声学特征单元。
7.一种生成音频数据的装置,其特征在于,所述装置包括:
转换模块,用于将目标文本转换为多个声学特征单元;
生成模块,用于基于每个声学特征单元,生成所述每个声学特征单元对应的音频数据单元;
复用模块,用于复用目标内存区域,根据所述目标文本的多个音频数据单元,生成多个子音频数据,其中,每次在所述目标内存区域中写入预设数目的音频数据单元以得到子音频数据;
存储模块,用于每生成一个子音频数据,将所述子音频数据写入存储器;
合并模块,用于对所述存储器中所写入的多个子音频数据进行合并,得到所述目标文本对应的目标音频数据。
8.根据权利要求7所述的装置,其特征在于,所述复用模块用于:
将目标内存区域初始化;
每生成预设数目的音频数据单元时,将所述预设数目的音频数据单元写入所述目标内存区域,得到一个子音频数据,重复上述过程,直到最后一个音频数据单元写入所述目标内存区域为止,得到所述多个子音频数据。
9.根据权利要求8所述的装置,其特征在于,所述复用模块还用于:
如果所述目标内存区域写满时,所述预设数目的音频数据单元中的最后一个音频数据单元还未写入完毕,则将未写入内存的数据作为尾帧音频数据;
将所述尾帧音频数据写入所述目标内存区域的起始位置;
基于下一组预设数目的音频数据单元继续执行写入所述目标内存区域的步骤。
10.根据权利要求9所述的装置,其特征在于,所述复用模块用于:
将下一组预设数目的音频数据单元中第一个音频数据单元的起始相位设置为0,基于所述尾帧音频数据的基频成分,重新确定所述第一个音频数据单元的相位;
以所述目标内存区域的预设位置为起始,写入所述下一组预设数目的音频数据单元,得到一个子音频数据。
11.根据权利要求9所述的装置,其特征在于,所述合并模块用于:
将所述存储器中所写入的多个子音频数据按照先后顺序拼接,得到所述目标文本对应的目标音频数据。
12.根据权利要求7所述的装置,其特征在于,所述转换模块用于:
当接收到目标文本时,按照文本内容的顺序,将所述目标文本转换为多个声学特征单元;或
当接收到目标文本时,向服务器发送所述目标文本,接收所述服务器发送的所述目标文本对应的多个声学特征单元。
13.一种终端,其特征在于,所述终端包括处理器和存储器,所述存储器中存储有至少一条指令,所述指令由所述处理器加载并执行以实现如权利要求1至6任一所述的生成音频数据的方法。
14.一种计算机可读存储介质,其特征在于,所述存储介质中存储有至少一条指令,所述指令由处理器加载并执行以实现如权利要求1至6任一所述的生成音频数据的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711316756.7A CN108053821B (zh) | 2017-12-12 | 2017-12-12 | 生成音频数据的方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201711316756.7A CN108053821B (zh) | 2017-12-12 | 2017-12-12 | 生成音频数据的方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108053821A true CN108053821A (zh) | 2018-05-18 |
CN108053821B CN108053821B (zh) | 2022-09-06 |
Family
ID=62124478
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201711316756.7A Active CN108053821B (zh) | 2017-12-12 | 2017-12-12 | 生成音频数据的方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN108053821B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109119066A (zh) * | 2018-09-30 | 2019-01-01 | 苏州浪潮智能软件有限公司 | 一种快速进行语音播放的方法 |
CN110808028A (zh) * | 2019-11-22 | 2020-02-18 | 芋头科技(杭州)有限公司 | 嵌入式语音合成方法、装置以及控制器和介质 |
WO2023173269A1 (zh) * | 2022-03-15 | 2023-09-21 | 华为技术有限公司 | 数据处理方法和装置 |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5850629A (en) * | 1996-09-09 | 1998-12-15 | Matsushita Electric Industrial Co., Ltd. | User interface controller for text-to-speech synthesizer |
CN1647152A (zh) * | 2002-04-19 | 2005-07-27 | 皇家飞利浦电子股份有限公司 | 合成语音的方法 |
CN1696891A (zh) * | 2004-05-11 | 2005-11-16 | 北京中星微电子有限公司 | 一种音频捕获中的无缝平滑方法 |
CN1933575A (zh) * | 2006-09-30 | 2007-03-21 | 康佳集团股份有限公司 | 一种照相手持设备的录像方法 |
CN101710488A (zh) * | 2009-11-20 | 2010-05-19 | 安徽科大讯飞信息科技股份有限公司 | 语音合成方法及装置 |
CN102568471A (zh) * | 2011-12-16 | 2012-07-11 | 安徽科大讯飞信息科技股份有限公司 | 语音合成方法、装置和系统 |
CN106559705A (zh) * | 2015-09-28 | 2017-04-05 | 青岛海信电器股份有限公司 | 一种音频数据的处理方法、装置和系统 |
AU2015314286A1 (en) * | 2014-09-09 | 2017-04-13 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio splicing concept |
-
2017
- 2017-12-12 CN CN201711316756.7A patent/CN108053821B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US5850629A (en) * | 1996-09-09 | 1998-12-15 | Matsushita Electric Industrial Co., Ltd. | User interface controller for text-to-speech synthesizer |
CN1647152A (zh) * | 2002-04-19 | 2005-07-27 | 皇家飞利浦电子股份有限公司 | 合成语音的方法 |
CN1696891A (zh) * | 2004-05-11 | 2005-11-16 | 北京中星微电子有限公司 | 一种音频捕获中的无缝平滑方法 |
CN1933575A (zh) * | 2006-09-30 | 2007-03-21 | 康佳集团股份有限公司 | 一种照相手持设备的录像方法 |
CN101710488A (zh) * | 2009-11-20 | 2010-05-19 | 安徽科大讯飞信息科技股份有限公司 | 语音合成方法及装置 |
CN102568471A (zh) * | 2011-12-16 | 2012-07-11 | 安徽科大讯飞信息科技股份有限公司 | 语音合成方法、装置和系统 |
AU2015314286A1 (en) * | 2014-09-09 | 2017-04-13 | Fraunhofer-Gesellschaft Zur Foerderung Der Angewandten Forschung E.V. | Audio splicing concept |
CN106559705A (zh) * | 2015-09-28 | 2017-04-05 | 青岛海信电器股份有限公司 | 一种音频数据的处理方法、装置和系统 |
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109119066A (zh) * | 2018-09-30 | 2019-01-01 | 苏州浪潮智能软件有限公司 | 一种快速进行语音播放的方法 |
CN110808028A (zh) * | 2019-11-22 | 2020-02-18 | 芋头科技(杭州)有限公司 | 嵌入式语音合成方法、装置以及控制器和介质 |
CN110808028B (zh) * | 2019-11-22 | 2022-05-17 | 芋头科技(杭州)有限公司 | 嵌入式语音合成方法、装置以及控制器和介质 |
WO2023173269A1 (zh) * | 2022-03-15 | 2023-09-21 | 华为技术有限公司 | 数据处理方法和装置 |
Also Published As
Publication number | Publication date |
---|---|
CN108053821B (zh) | 2022-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11636836B2 (en) | Method for processing audio and electronic device | |
CN109729297A (zh) | 在视频中添加特效的方法和装置 | |
CN111524501B (zh) | 语音播放方法、装置、计算机设备及计算机可读存储介质 | |
CN109147757A (zh) | 歌声合成方法及装置 | |
CN109033335A (zh) | 音频录制方法、装置、终端及存储介质 | |
CN109300482A (zh) | 音频录制方法、装置、存储介质以及终端 | |
US20240296657A1 (en) | Video classification method and apparatus | |
CN110992927B (zh) | 音频生成方法、装置、计算机可读存储介质及计算设备 | |
CN110491358A (zh) | 进行音频录制的方法、装置、设备、系统及存储介质 | |
CN108965757A (zh) | 视频录制方法、装置、终端及存储介质 | |
CN109192218A (zh) | 音频处理的方法和装置 | |
CN109346111A (zh) | 数据处理方法、装置、终端及存储介质 | |
CN109003621A (zh) | 一种音频处理方法、装置及存储介质 | |
CN108806670B (zh) | 语音识别方法、装置及存储介质 | |
CN109243479A (zh) | 音频信号处理方法、装置、电子设备及存储介质 | |
CN108053821A (zh) | 生成音频数据的方法和装置 | |
CN113420177A (zh) | 音频数据处理方法、装置、计算机设备及存储介质 | |
CN109192223A (zh) | 音频对齐的方法和装置 | |
CN111223475B (zh) | 语音数据生成方法、装置、电子设备及存储介质 | |
CN109065068A (zh) | 音频处理方法、装置及存储介质 | |
CN111428079A (zh) | 文本内容处理方法、装置、计算机设备及存储介质 | |
CN113362836B (zh) | 训练声码器方法、终端及存储介质 | |
CN109147809A (zh) | 音频信号处理方法、装置、终端及存储介质 | |
CN109273008A (zh) | 语音文件的处理方法、装置、计算机存储介质和终端 | |
KR20150029197A (ko) | 이동 단말기 및 그 동작 방법 |
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 |