Speech synthesis method, device, electronic device and storage medium

By plugging in the real-time update function of the speech synthesis program, combining the pronunciation type configuration and generation strategy, the problems of low update efficiency and low accuracy of the speech synthesis program are solved, and the real-time and accuracy of speech synthesis are improved, especially in the vehicle environment, the accuracy and stability of speech broadcasts are improved.

CN114283780BActive Publication Date: 2025-09-05APOLLO INTELLIGENT CONNECTIVITY (BEIJING) TECH CO LTD
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202111619461.3
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-12-27
Publication Date
2025-09-05
Estimated Expiration
2041-12-27

AI Technical Summary

Technical Problem

In existing voice synthesis applications, the update efficiency of voice synthesis programs is low and slow, which leads to the inability to update the synthesized voice in real time. Online synthesis cannot obtain accurate voice in time when the network conditions are poor, resulting in low accuracy of voice synthesis.

Method used

By abstracting the real-time update function in the speech synthesis program into a plug-in, and through the plug-in update data, the program's update efficiency and speed are improved, and combined with the configuration of pronunciation type and the speech generation strategy, the target voice matching the text content is generated.

Benefits of technology

Real-time update of speech synthesis programs is realized, the accuracy and efficiency of speech synthesis is improved, and the rapid changes in buzzwords are adapted to the accuracy and stability of speech broadcasts are improved especially in vehicle environments.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114283780B_ABST
    Figure CN114283780B_ABST
Patent Text Reader

Abstract

This disclosure provides a speech synthesis method, apparatus, electronic device, and storage medium related to the field of speech processing, specifically the connected vehicle (IoV), autonomous driving, and smart cockpit technologies. The specific implementation involves obtaining plug-in update data and updating the speech synthesis program; the updated speech synthesis program then performs speech synthesis on text. The disclosed embodiments can improve speech synthesis accuracy.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present disclosure relates to the field of speech processing, specifically the fields of vehicle networking, autonomous driving, and smart cockpit technology, and in particular to speech synthesis methods, devices, electronic devices, and storage media. Background Art

[0002] With the development of smart connected cars in recent years, the application of voice assistants in in-vehicle scenarios has become more and more common, and people are increasingly relying on using voice to complete a series of human-computer interactions, such as adjusting the air conditioning temperature and listening to a certain style of music.

[0003] Currently, voice can be generated and played to users, who then provide feedback based on the played voice, thus achieving human-computer interaction. Summary of the Invention

[0004] The present disclosure provides a speech synthesis method, apparatus, electronic device, and storage medium.

[0005] According to one aspect of the present disclosure, there is provided a speech synthesis method, comprising:

[0006] Get plugin update data and update the speech synthesis program;

[0007] Speech synthesis of text is performed through an updated speech synthesis program.

[0008] According to one aspect of the present disclosure, there is provided a speech synthesis apparatus, comprising:

[0009] A plug-in update data acquisition module is used to obtain plug-in update data and update the speech synthesis program;

[0010] The speech synthesis module is used to perform speech synthesis on text through an updated speech synthesis program.

[0011] According to another aspect of the present disclosure, there is provided an electronic device, comprising:

[0012] at least one processor; and

[0013] a memory communicatively connected to the at least one processor; wherein,

[0014] The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to execute the speech synthesis method described in any embodiment of the present disclosure.

[0015] According to another aspect of the present disclosure, a non-transitory computer-readable storage medium storing computer instructions is provided, wherein the computer instructions are used to enable the computer to execute the speech synthesis method described in any embodiment of the present disclosure.

[0016] According to another aspect of the present disclosure, a computer program product is provided, including a computer program, which implements the speech synthesis method described in any embodiment of the present disclosure when executed by a processor.

[0017] The embodiments of the present disclosure can improve the accuracy of speech synthesis.

[0018] It should be understood that the contents described in this section are not intended to identify the key or important features of the embodiments of the present disclosure, nor are they intended to limit the scope of the present disclosure. Other features of the present disclosure will become readily understood through the following description. BRIEF DESCRIPTION OF THE DRAWINGS

[0019] The accompanying drawings are provided to facilitate a better understanding of the present invention and do not constitute a limitation of the present disclosure.

[0020] Figure 1 is a schematic diagram of a speech synthesis method provided according to an embodiment of the present disclosure;

[0021] Figure 2 is a schematic diagram of another speech synthesis method provided according to an embodiment of the present disclosure;

[0022] Figure 3 is a schematic diagram of another speech synthesis method provided according to an embodiment of the present disclosure;

[0023] Figure 4 is a scene diagram of a speech synthesis method provided according to an embodiment of the present disclosure;

[0024] Figure 5 is a schematic diagram of a speech synthesis device provided according to an embodiment of the present disclosure;

[0025] Figure 6 It is a block diagram of an electronic device used to implement the speech synthesis method according to an embodiment of the present disclosure. DETAILED DESCRIPTION

[0026] The following description of exemplary embodiments of the present disclosure is made in conjunction with the accompanying drawings, including various details of the embodiments of the present disclosure to facilitate understanding. These details should be considered as merely exemplary. Therefore, those skilled in the art will recognize that various changes and modifications may be made to the embodiments described herein without departing from the scope and spirit of the present disclosure. Similarly, for the sake of clarity and conciseness, descriptions of well-known functions and structures are omitted in the following description.

[0027] Figure 1This is a flowchart of a speech synthesis method according to an embodiment of the present disclosure. This embodiment is applicable to speech synthesis based on text. The method of this embodiment can be performed by a speech synthesis device, which can be implemented using software and / or hardware and is specifically configured in an electronic device with certain data processing capabilities. The electronic device can be a client device, such as a mobile phone, tablet computer, vehicle-mounted terminal, or desktop computer.

[0028] S101, obtaining plug-in update data and updating the speech synthesis program.

[0029] The speech synthesis program is used to convert text into speech corresponding to the text content. The plug-in update data is used to update the plug-in in the speech synthesis program and the data associated with the plug-in operation, as well as to update the speech synthesis program. Specifically, the plug-in update data may refer to a newly added executable script and / or the newly added data required for the operation of the plug-in. Among them, the plug-in update data updates the speech synthesis program by inserting the newly added executable script into the script corresponding to the plug-in, and / or adding the newly added data required for the operation of the plug-in to the storage location corresponding to the historical data required for the operation of the plug-in, etc., so that the plug-in can implement the functions corresponding to the newly added executable script and / or use the newly added data.

[0030] The plug-in updated by the plug-in update data is used to assist the speech synthesis program in converting text into speech. For example, the plug-in is used to determine the speech corresponding to the text, and the data required for the plug-in to run is a text library, which stores the correspondence between text and speech, and the executable script is used to query the text library for the speech corresponding to the text. For another example, the speech synthesis program is used to segment text, and the plug-in is used to determine the speech corresponding to the word. The data required for the plug-in to run is a word library, which stores the correspondence between the word text and the word speech, and the executable script is used to query the word library for the speech corresponding to the word. The speech synthesis program is also used to synthesize the speech corresponding to each word to form the speech corresponding to the text. For another example, the plug-in is used to determine the speech corresponding to the word, and the data required for the plug-in to run is a speech generation strategy library, which stores the correspondence between the word text and the speech generation strategy, and the executable script is the script corresponding to the speech generation strategy. The executable script is used to generate the speech corresponding to the word text according to the speech generation strategy corresponding to the word text.

[0031] Usually, a speech synthesis program will be upgraded and updated after it is released and only with user authorization. However, the speed of releasing the version is relatively slow, and it is necessary to display the upgrade program interface to obtain the user's authorization before the upgrade can be performed, which will also reduce the efficiency and speed of the program update. The embodiment of the present disclosure configures the preset function as a plug-in, and updates the program as a plug-in. When the plug-in update data is obtained, the plug-in is updated, thereby updating the function corresponding to the plug-in of the program. There is no need to go through tedious steps such as version release to update the program. In addition, the plug-in update can be a silent upgrade, that is, the upgrade and update are automatically completed without disturbing the user, thereby improving the speed and efficiency of the program update.

[0032] S102, performing speech synthesis on the text through an updated speech synthesis program.

[0033] Perform speech synthesis on the text based on the updated speech synthesis program. Specifically, this may be by executing a newly added executable script and / or using newly added data to process the text to generate the target speech. The speech synthesis method may be: the speech synthesis program queries the speech corresponding to the text and determines the target speech corresponding to the text content; or the speech synthesis method may be: the speech synthesis program segments the text, determines the speech corresponding to each word, and concatenates the speech corresponding to each word to generate the target speech.

[0034] In fact, existing speech synthesis applications usually use offline synthesis, online synthesis, or hybrid synthesis to synthesize text into speech. Offline synthesis refers to the local synthesis of text. Online synthesis means uploading the text to a server, which synthesizes it in the cloud and feeds it back to the local machine. Hybrid synthesis means selecting offline or online synthesis to synthesize text into speech based on the network connection. Offline synthesis requires the use of a speech synthesis program, but the update efficiency and speed of speech synthesis programs are low, resulting in the inability to update the synthesized speech in real time. The real-time performance of online synthesis depends on the network. In the case of poor network conditions, accurate speech cannot be obtained in a timely manner, resulting in low speech synthesis accuracy.

[0035] According to the technical solution disclosed in the present invention, by obtaining plug-in update data and updating the speech synthesis program, the content of speech synthesis that needs to be updated can be made into a plug-in, thereby improving the update efficiency and speed of the program, and performing speech synthesis based on the updated speech synthesis program to improve the accuracy of the synthesized speech, while taking into account the real-time update of the synthesized speech.

[0036] Figure 2This is a flowchart of another speech synthesis method disclosed in accordance with an embodiment of the present disclosure, which is further optimized and expanded upon the above-described technical solution and can be combined with the above-described optional implementations. The speech synthesis of text is specifically performed by: determining the pronunciation type of the text from among multiple preset pronunciation types; and converting the text into a target speech that matches the content of the text based on the pronunciation type of the text.

[0037] S201, obtaining plug-in update data and updating the speech synthesis program.

[0038] S202: Determine the pronunciation type of the text from a plurality of preset pronunciation types through an updated speech synthesis program.

[0039] The pronunciation type is used to determine the pronunciation of the text. The pronunciation type may refer to the type of the text's pronunciation. Specifically, the pronunciation type may refer to whether the text has multiple pronunciation types, and the types of scenarios in which each pronunciation exists. Exemplarily, the pronunciation type may include standard pronunciation and / or special pronunciation types. The standard pronunciation type may mean that the text has only one pronunciation. The special pronunciation may mean that the text has different pronunciations in different situations, that is, the text has at least two pronunciations. Among them, the standard pronunciation may include a single-tone type, and the special pronunciation may include at least one of the following: polyphonic, specific scenarios, professional terms, and new buzzwords. Different pronunciation determination strategies can be configured for different pronunciation types, that is, executable scripts can be executed. Running the executable script in the plug-in can determine the corresponding pronunciation and generate the corresponding voice.

[0040] Among them, the single - sound type may refer to that the text has only one pronunciation. Under any circumstances, there is only one possibility of pronunciation for this text. The multi - sound type may refer to that the text has multiple pronunciations. Under different circumstances, it will correspond to different pronunciations. Exemplarily, "dou" in "both are correct" and "du" in "the capital is Beijing", the "dou" in the aforementioned two sentences is a polyphonic character. Among them, different circumstances may refer to that some characters are in different semantic environments and correspond to different pronunciations. The pronunciation type in a specific scenario may refer to that the text has different pronunciations in different scenarios. Different from the multi - sound type, usually the specific scenario type refers to that the text includes the pronunciations of some characters, and these characters have different pronunciations in different scenarios. Exemplarily, when dialing the 110 (yao yi ling) phone, dialing the 110 (one hundred and ten times) times phone, and the D110 (yi yi ling) train, the pronunciation of 110 is different in different scenarios. Among them, different scenarios may include different semantic environments or different application scenarios, etc. The professional - term type may refer to that the pronunciation of the text is different in some professional scenarios, but in a general dictionary, the text is not a polyphonic word or phrase. Exemplarily, "cui" has only one pronunciation, but in "zhan" fire - quenching, some professionals may pronounce it as "zhan". The new - buzzword type may refer to the newly added pronunciations that are popular on the Internet in real - time. Exemplarily, "want to eat tao", actually means "want to eat peach", so "want to eat tao" should be pronounced as "want to eat peach".

[0041] It should be noted that the text may include characters in multiple languages. The single - sound type and the multi - sound type usually refer to the type of whether the characters in the same language have at least one pronunciation under general circumstances (for example, as stipulated in an official dictionary). And the specific - scenario type usually refers to the type of whether the characters in different languages have at least one pronunciation. In fact, in the text of the specific - scenario type, there are characters in multiple languages, and the characters in different languages have different pronunciations in different scenarios. The pronunciation of the specific - scenario type has a strong correlation with the semantic environment and the application scenario. The text of the professional - term type is usually a common term in a professional field, with weak circulation and generality. The pronunciation of a professional term may be different from its pronunciation in general circumstances. And the text of the new - buzzword type usually refers to the terms that are popular in real - time. The pronunciation of a new - buzzword may be different from its pronunciation in general circumstances. And the text of the new - buzzword exists in multiple languages, and moreover, the meaning of a word or phrase in one language is actually the same as the meaning of a homophonic word or phrase in another language, making it difficult to directly determine based on historical experience data.

[0042] To determine the pronunciation type of the text, it can be to query the pronunciation type of the text according to the preset correspondence between the text and the pronunciation type. Among them, the query operation can be executed by the aforementioned executable script. Exemplarily, the query algorithm can be the optimal matching algorithm of the bipartite graph (Kuhn Munkras, KM), that is, the executable script is the KM optimal matching algorithm.

[0043] S203 , converting the text into a target speech that matches the content of the text according to the pronunciation type of the text through an updated speech synthesis program.

[0044] The semantic content of the target speech matches the semantic content of the text. Some texts may have at least one pronunciation, and different pronunciations express different semantics. Accordingly, speech can express different contents through different pronunciations. For example, "good thing hao" (third tone) shi expresses that people are keen on praising, promoting, commending and doing things that are beneficial to the world, while "good thing hao" (fourth tone) shi expresses the semantics of liking to meddle in other people's affairs. Based on the content of the text, a target speech can be generated whose semantic content matches the content of the text, so that the semantics expressed by the target speech and the semantics expressed by the text are the same, and accurate speech is generated.

[0045] Based on the pronunciation type of the text, the pronunciation of the text can be determined, and a corresponding waveform can be generated based on the pronunciation of the text, and the waveform can be determined as the target speech that matches the text content. It can be understood that the pronunciation uniquely determines the waveform, and thus by determining the pronunciation of the text, the speech corresponding to the text can be uniquely determined. Different speech generation strategies can be configured for different pronunciation types. According to the pronunciation type of the text, the corresponding speech generation strategy is selected to process the text to generate the target speech.

[0046] In a specific example, a pronunciation type range of the text can be determined based on the text's pronunciation type, and the text's pronunciation can be determined within the pronunciation type range based on the text's content. The text content can include at least one of the following: characters in the text, text structure, and contextual semantics. The pronunciation type range includes the correspondence between text content and pronunciation.

[0047] For example, if the pronunciation type of a text is a standard pronunciation type, the corresponding speech generation strategy may be: based on the text content, specifically the characters included in the text, and the one-to-one correspondence between each character and the pronunciation within the pronunciation type range, determine the pronunciation of each character in the text, thereby determining the phonetic representation of each character, and then perform phonetic splicing according to the order of the characters in the text to form the target speech. For example, the corresponding pronunciation of "Who am I" is "wo shi shui".

[0048] For another example, when the pronunciation type of the text is a special pronunciation type, the corresponding speech generation strategy may be: further subdivide the special pronunciation type. Obtain the pronunciation range corresponding to the subdivided pronunciation type, and determine the pronunciation corresponding to the text within the pronunciation range according to the text content, specifically the text structure and / or contextual semantics, to form the target speech. Among them, the pronunciation range corresponding to the special pronunciation type may be the correspondence between characters and pronunciations under different text contents. For example, the D110 train, based on the text content, for example, based on the letters plus numbers and the text structure of the train, is determined to be a text of a specific scene type, specifically a train scene. Within the pronunciation range of the train scene, the pronunciation of consecutive numbers is the result of splicing the pronunciations of individual numbers. According to the content of the train number represented by the D110 train, the pronunciation of each character can be determined and spliced ​​to form the target speech. Correspondingly, the pronunciation of the corresponding speech is di yi yi ling ci lie che.

[0049] In another specific example, a speech generation strategy is as follows: based on the pronunciation type of the text, a speech generation model for the text can be determined, and the text and / or text processing results can be input into the corresponding speech generation model to directly generate the target speech, or intermediate results can be generated and processed to form the target speech. There is a corresponding relationship between the pronunciation type and the speech generation model. The speech generation model can be a machine learning model. Exemplarily, the speech generation model can be an acoustic model for converting text features to speech features, or it can be an end-to-end neural network model for converting text to speech. Regarding the acoustic model, a more specific speech strategy is as follows: based on the pronunciation type of the text, an acoustic model corresponding to the pronunciation type is selected, the text is analyzed, the text is converted into a phoneme sequence, each phoneme sequence is frame-expanded to form a phoneme sequence of a specified frame length, and frame-level text features are obtained by processing. The frame-level text features are input into the acoustic model corresponding to the pronunciation type to obtain output frame-level speech features. The frame-level speech features are input into a vocoder to obtain an output waveform, which is determined as the target speech.

[0050] In addition, there are other speech generation strategies that can generate target speech based on text, which can be configured to correspond to the pronunciation type, and there is no specific limitation on this.

[0051] Optionally, determining the pronunciation type of the text among a plurality of preset pronunciation types includes: segmenting the text to obtain at least one word; and querying the pronunciation type corresponding to each word according to each pronunciation type to determine the pronunciation type of the text.

[0052] The text is segmented to obtain the words included in the text. The pronunciation type of the text includes the pronunciation type corresponding to each word. The words in the text can be split and the pronunciation type can be determined at the word level, and the text phonetic determination can be converted to word-level phonetic determination.

[0053] The pronunciation of each word can be determined based on its corresponding pronunciation type, thereby generating a waveform for each word. The waveforms are then concatenated according to the order of the words in the text to form the target speech. The specific method for determining the pronunciation of a word based on its corresponding pronunciation type can be referenced in the above example.

[0054] For example, the text is: Query the departure time of D110 train, and the words obtained by splitting include: query, D110 train, of, drive, and time. Among them, the pronunciation type of words such as query, of, drive, and time is a standard pronunciation type, and the pronunciation type of the word D110 train is a special pronunciation type, more specifically, a specific scene type. For words such as query, of, drive, and time, the pronunciation determination method corresponding to the standard pronunciation type can be used to determine the pronunciation of words such as query, of, drive, and time. For words such as D110 train, the pronunciation determination method corresponding to the special pronunciation type can be used to determine the pronunciation of words such as D110 train.

[0055] It should be noted that for words with special pronunciation types, the pronunciation range corresponding to the special pronunciation type of the word can be determined based on the semantics of the word in the text, contextual information, the word structure itself, and the structure of the word in the text.

[0056] By splitting the words in the text and determining the pronunciation type at the word level, the voice determination of the text can be converted into word-level voice determination. This can accurately determine the pronunciation type of each word in the text, thereby accurately determining the pronunciation of each word, improving the accuracy of voice generation of each word, and thus improving the accuracy of target voice generation.

[0057] According to the technical solution disclosed in the present invention, by configuring the pronunciation type and determining the pronunciation type of the text, and determining the target speech that matches the content of the text based on the pronunciation type, the speech of the text semantics can be represented from the pronunciation dimension, thereby achieving the same semantics of the target speech expression and the text expression, and improving the accuracy of the target speech.

[0058] Figure 3It is a flowchart of another speech synthesis method disclosed according to an embodiment of the present disclosure, which is further optimized and extended based on the above technical solution and can be combined with each of the above optional embodiments. The speech synthesis of the text is specifically: in a plurality of preset pronunciation types, determine the pronunciation type of the text; according to the pronunciation type of the text, convert the text into a target speech that matches the content of the text. And updating the speech synthesis program is specifically: updating the plurality of preset pronunciation types according to the plug-in update data.

[0059] S301, obtain plug-in update data, and update the plurality of preset pronunciation types according to the plug-in update data to implement updating the speech synthesis program.

[0060] The plug-in update data is used to update the pronunciation type, so as to implement updating the data required for the operation of the plug-in in the speech synthesis program, so as to update the speech synthesis program. Exemplarily, a text library corresponding to the pronunciation type can be configured. When the text belongs to this text library, the pronunciation type of the text is the pronunciation type corresponding to this text library. Or segment the text, and according to the word library corresponding to the configured pronunciation type, when the word belongs to this word library, the pronunciation type of the word is the pronunciation type corresponding to this word library.

[0061] Exemplarily, the word library corresponding to the standard pronunciation type may include: yes, I, who, guqin, although, directly, water flower, and at the end of one's resources, etc. Among them, the character 'jin' in 'at the end of one's resources' is a polysyllabic word, but in the phrase 'at the end of one's resources', 'jin' has only one pronunciation. The pronunciation type of the phrase 'at the end of one's resources' can be determined as the standard pronunciation type with only one pronunciation.

[0062] For another example, the word library corresponding to the special pronunciation type may include: jin, good deed, and 110, etc.

[0063] In addition, the number of words included in the word library corresponding to the standard pronunciation type is huge. The word library corresponding to the standard pronunciation type may not be configured, and only the word library of the special pronunciation type is configured. When the query result of the word library of the special pronunciation type is empty, determine the pronunciation type of the text as the standard pronunciation type. Only query in a small range of data to determine the pronunciation type, which can improve the query efficiency and speed of the pronunciation type.

[0064] Updating the pronunciation type may include at least one of the following: updating the pronunciation type, updating the correspondence between the pronunciation type and the text, updating the correspondence between the pronunciation type and the word, updating the words in the word library corresponding to at least one pronunciation type, and updating the texts in the text library corresponding to at least one pronunciation type. The update may include at least one of the following: adding, deleting, and modifying, etc.

[0065] S302: Determine the pronunciation type of the text from a plurality of preset pronunciation types through an updated speech synthesis program.

[0066] Optionally, determining the pronunciation type of the text among a plurality of preset pronunciation types includes: determining the type increment range of each pronunciation type according to the update time of each pronunciation type, and determining the query order corresponding to each type increment range; and querying the pronunciation type of the text in the corresponding type increment range in turn according to each query order.

[0067] The update time may refer to the time when the pronunciation type is updated based on the plug-in update data. The update time is used to determine the query priority of the pronunciation type. The type increment range may refer to the update data corresponding to the pronunciation type at the update time. The type increment range is used to determine the query range of the pronunciation type of the text. The query order is used to determine the query priority of the type increment range. The query order may refer to the order in which the type increment range is selected from multiple type increment ranges to query the pronunciation type corresponding to the text.

[0068] Exemplarily, the type increment range may include at least one of the following: an update range for pronunciation types, an update range for the correspondence between pronunciation types and text, an update range for the correspondence between pronunciation types and words, an update range for words in a word library corresponding to at least one pronunciation type, and an update range for text in a text library corresponding to at least one pronunciation type. The update range may include a range formed by newly added data and / or a range formed by modified data, etc.

[0069] The type increment range of the pronunciation type can be determined based on the update data of the pronunciation type in the plug-in update data, and the update time can be recorded. According to each type increment range and the corresponding update time, the query order can be determined by determining the query order corresponding to the type increment range based on the duration between the update time and the current time. Exemplarily, the query order of the type increment range with a shorter duration is prior to the query order of the type increment range with a longer duration, that is, the later the update time, the higher the priority of the query order; the earlier the update time, the later the query order. For example, when the plug-in is installed, the query order of the type increment range downloaded and stored at this time is the latest. It is understandable that some words, especially Internet buzzwords, have a higher real-time update time. Therefore, the pronunciation type with a later update time is more likely to be the pronunciation type of the text. By preferentially performing a pronunciation type query within the type increment range with a later update time, the pronunciation type of the text with high real-time performance can be quickly and preferentially queried, thereby improving the query efficiency and accuracy of the pronunciation type.

[0070] In addition, in multiple types of incremental ranges with the same update time, priorities can be further preset based on the updated data in each type of incremental range, and the query order with a higher priority takes precedence over the query order with a lower priority.

[0071] According to each query order, the pronunciation type corresponding to the text is queried in the corresponding type increment range in turn. Specifically, according to the query order of the type increment range, the type increment range is selected in turn, and the pronunciation type corresponding to the text is queried within the currently selected type increment range. When the query result is empty, the next type increment range is selected according to the query order, and the pronunciation type corresponding to the text is queried within the currently selected type increment range. And so on, until all type increment range queries are completed or the pronunciation type corresponding to the text is queried. It should be noted that the text can be segmented to obtain multiple words. The pronunciation type corresponding to each word can be queried within the currently selected type increment range. As long as there is a query result that is empty, a subsequent type increment range selection query is performed until all type increment range queries are completed or the pronunciation type corresponding to each word is queried.

[0072] In a specific example, the word library corresponding to the standard pronunciation type in type increment range A may include: water splash and mountain and water exhaustion, etc. The update time corresponding to type increment range A is 8 pm, and the word library corresponding to the standard pronunciation type in type increment range B may include: good things and 110, etc. The update time corresponding to type increment range B is 7 am. It can be determined that the update time of type increment range A is later than the update time of type increment range B, and the query order of type increment range A is prior to the query order of type increment range B. The pronunciation type can be queried in type increment range A first, and after the query is completed, the pronunciation type can be queried in type increment range B.

[0073] By determining the type increment range and query order of the pronunciation type according to the update time of the pronunciation type when the plug-in update data is used to update the pronunciation type, it is possible to query the pronunciation type in the type increment range at different update times according to the query order. The pronunciation type corresponding to the text can be queried according to the update timeliness of the pronunciation type, thereby speeding up the query speed of the pronunciation type, and at the same time improving the real-time nature of the query range of the pronunciation type and improving the detection accuracy of the pronunciation type.

[0074] S303 , converting the text into a target speech that matches the content of the text according to the pronunciation type of the text through an updated speech synthesis program.

[0075] Optionally, obtaining plug-in update data includes: obtaining a current plug-in version of the current speech synthesis program and uploading it; and receiving plug-in update data of the latest plug-in version.

[0076] The current plug-in version is used to detect whether the plug-in needs to be updated. The current plug-in version information can refer to the latest version information of the plug-in at the current time. The plug-in update data of the latest plug-in version can refer to the difference data between the plug-in of the latest plug-in version and the plug-in of the current plug-in version.

[0077] The local device obtains the current plug-in version and determines it as the current plug-in version. The local device uploads the current plug-in version to the server, receives plug-in update data, updates the plug-in, and determines the latest plug-in version as the updated plug-in version. The upload frequency can be set as needed, for example, once a week or once a day.

[0078] In the server, the server updates the pronunciation type online in real time, and when the plug-in update conditions are met, the plug-in difference data between the current time and the previous time is obtained, and the plug-in incremental data of the current time is determined to form the plug-in update data. At the same time, a set value is accumulated on the historical plug-in version corresponding to the previous time to form the latest plug-in version. Among them, the previous time is the time that forms the plug-in update data and is adjacent to the current time. The plug-in version of the previous time is adjacent to the plug-in version of the current time. The plug-in update conditions may include: the duration between the previous time and the current time is greater than or equal to a preset duration threshold, or the storage space of the plug-in incremental data of the current time is greater than or equal to a preset storage space threshold. Exemplarily, the duration threshold is 5 days, and the storage space threshold is 5 megabytes (M).

[0079] When the server detects that the current plug-in version is different from the latest plug-in version, it obtains plug-in update data of plug-in versions between the current plug-in version and the latest plug-in version, as well as plug-in update data of the latest plug-in version, and sends them to the client for plug-in update.

[0080] By uploading the current plug-in version and obtaining the plug-in update data of the latest plug-in version, you can quickly obtain the latest plug-in data to update the speech synthesis program, improve the real-time update of the speech synthesis program, and thus improve the accuracy of speech synthesis.

[0081] Optionally, the speech synthesis method further includes: broadcasting the synthesized target speech in a vehicle environment.

[0082] The speech synthesis method is applied in the application scenario of vehicle broadcast voice.

[0083] During vehicle startup, and especially during vehicle operation, users increasingly rely on voice for human-machine interaction. However, vehicle terminals are updated infrequently, for example, only once every six months or a year. Consequently, the speech synthesis software in these terminals is updated infrequently. However, with the widespread use of the internet, the rapid evolution of buzzwords among online users has led to a rapid update of buzzwords. With these infrequent updates, speech synthesis software cannot accurately pronounce words, reducing speech synthesis accuracy.

[0084] By adopting the speech synthesis method disclosed in the present invention, by abstracting the speech synthesis function that needs to be updated in real time in the speech synthesis program into a plug-in, and updating the speech synthesis program in a plug-in manner, the real-time update performance of the speech synthesis program can be improved, the update efficiency can be improved, and the accuracy of speech synthesis can be improved.

[0085] By applying the speech synthesis method to the application scenarios of vehicle announcements, the application scenarios of speech synthesis can be enriched, and the speech accuracy of vehicle announcements can be improved. At the same time, the stability of vehicle announcements can be improved, and the voice quality of vehicle announcements can be improved.

[0086] According to the technical solution disclosed in the present invention, by updating the pronunciation type through plug-in update data, the updating efficiency and speed of the pronunciation type can be improved, thereby generating speech based on the pronunciation type, which can improve the updating efficiency and speed of the speech, and generate more accurate speech based on the updated data, thereby improving the accuracy of the speech.

[0087] Figure 4 It is a scene diagram of another speech synthesis method disclosed in an embodiment of the present disclosure.

[0088] S401: The client sends the current plug-in version of the local plug-in to the cloud server.

[0089] The client obtains a plug-in in the speech synthesis program, determines it to be a local plug-in, and sends the latest plug-in version of the plug-in as the current plug-in version to the cloud server.

[0090] S402: The cloud server returns the latest plug-in version and corresponding plug-in update data.

[0091] If the cloud server detects that the current plug-in version is different from the latest plug-in version, it obtains the plug-in update data of the latest plug-in version and sends it to the client for plug-in update. In addition, if it detects that there are other plug-in versions between the current plug-in version and the latest plug-in version, the cloud server obtains the plug-in update data of the other plug-in versions and sends it to the client for plug-in update.

[0092] S403: The client updates the plug-in to update the speech synthesis program.

[0093] The plug-in update data is used to update the plug-in in the speech synthesis program and the data associated with the plug-in operation, so as to update the speech synthesis program.

[0094] S404: The client receives the broadcast text.

[0095] The broadcast text is used to convert the text into speech and play it. The broadcast text can refer to the text to be played by the client.

[0096] S405: The client uses the latest plug-in to perform speech synthesis and speech broadcasting.

[0097] The client uses the latest plug-in and data through the speech synthesis program to synthesize the target voice. The client plays the target voice to achieve voice broadcast.

[0098] S406: The client voice broadcast ends.

[0099] In practice, the disclosed embodiment consists of two main parts: synchronous plugin updates and the use of the latest plugins for speech synthesis during the broadcast process. The client periodically sends the current plugin version to the cloud server. When a new plugin is available, the server sends plugin update data to the client, allowing it to update the plugin. During the local broadcast process, the client uses the latest plugin for speech synthesis and speech broadcast, eliminating the need for online synthesis broadcast.

[0100] The disclosed embodiment encapsulates the speech synthesis strategy into a plug-in, which is dynamically sent to the client. When a new plug-in version is available, the client will obtain update data from the cloud server and update the plug-in. After the update, the client will have a complete and latest strategy, which can reduce and avoid network interaction during broadcasting to avoid intermittent broadcasting. In addition, the client will have the latest speech synthesis strategy data from the cloud to achieve correct and intelligent pronunciation.

[0101] According to an embodiment of the present disclosure, Figure 5 This is a structural diagram of a speech synthesis device in an embodiment of the present disclosure. This embodiment of the present disclosure is applicable to the case of speech synthesis based on text. The device is implemented using software and / or hardware and is specifically configured in an electronic device with certain data processing capabilities.

[0102] like Figure 5 The speech synthesis device 500 shown includes: a plug-in update data acquisition module 501 and a speech synthesis module 502; wherein,

[0103] A plug-in update data acquisition module 501 is used to acquire plug-in update data and update the speech synthesis program;

[0104] The speech synthesis module 502 is used to perform speech synthesis on the text through an updated speech synthesis program.

[0105] According to the technical solution disclosed in the present invention, by obtaining plug-in update data and updating the speech synthesis program, the content of speech synthesis that needs to be updated can be made into a plug-in, thereby improving the update efficiency and speed of the program, and performing speech synthesis based on the updated speech synthesis program to improve the accuracy of the synthesized speech, while taking into account the real-time update of the synthesized speech.

[0106] Furthermore, the speech synthesis module 502 includes: a pronunciation type determination unit for determining the pronunciation type of the text among a plurality of preset pronunciation types; and a speech generation unit for converting the text into a target speech that matches the content of the text according to the pronunciation type of the text.

[0107] Furthermore, the plug-in update data acquisition module 501 includes: a pronunciation type updating unit, configured to update the preset multiple pronunciation types according to the plug-in update data.

[0108] Furthermore, the pronunciation type determination unit includes: a type increment range determination subunit, which is used to determine the type increment range of each pronunciation type and the query order corresponding to each type increment range according to the update time of each pronunciation type; and a type increment range query subunit, which is used to query the pronunciation type corresponding to each word in the corresponding type increment range in turn according to each query order.

[0109] Furthermore, the pronunciation type query subunit is used to: determine the type increment range of each pronunciation type according to the update time of each pronunciation type, and determine the query order corresponding to each type increment range; according to each query order, query the pronunciation type corresponding to each word in the corresponding type increment range in turn.

[0110] Furthermore, the plug-in update data acquisition module 501 includes: a plug-in version uploading unit for acquiring the current plug-in version of the current speech synthesis program and uploading it; and a plug-in update data acquisition unit for receiving plug-in update data of the latest plug-in version.

[0111] Furthermore, the speech synthesis device further includes: a vehicle speech broadcast module, which is used to broadcast the synthesized target speech in a vehicle environment.

[0112] The above-mentioned speech synthesis device can execute the speech synthesis method provided by any embodiment of the present disclosure, and has the corresponding functional modules and beneficial effects for executing the speech synthesis method.

[0113] In the technical solutions disclosed herein, the collection, storage, use, processing, transmission, provision and disclosure of user personal information involved comply with the provisions of relevant laws and regulations and do not violate public order and good morals.

[0114] According to an embodiment of the present disclosure, the present disclosure also provides an electronic device, a readable storage medium, and a computer program product.

[0115] Figure 6 A schematic area diagram of an example electronic device 600 that can be used to implement embodiments of the present disclosure is shown. The electronic device is intended to represent various forms of digital computers, such as laptop computers, desktop computers, workstations, personal digital assistants, servers, blade servers, mainframe computers, and other suitable computers. The electronic device can also represent various forms of mobile devices, such as personal digital assistants, cellular phones, smartphones, wearable devices, and other similar computing devices. The components shown herein, their connections and relationships, and their functions are provided as examples only and are not intended to limit the implementation of the present disclosure described and / or claimed herein.

[0116] like Figure 6 As shown, the device 600 includes a computing unit 601, which can perform various appropriate actions and processes according to a computer program stored in a read-only memory (ROM) 602 or a computer program loaded from a storage unit 608 into a random access memory (RAM) 603. Various programs and data required for the operation of the device 600 can also be stored in the RAM 603. The computing unit 601, the ROM 602, and the RAM 603 are connected to each other via a bus 604. An input / output (I / O) interface 605 is also connected to the bus 604.

[0117] Various components in device 600 are connected to I / O interface 605, including an input unit 606, such as a keyboard, mouse, etc.; an output unit 607, such as various types of displays, speakers, etc.; a storage unit 608, such as a magnetic disk, optical disk, etc.; and a communication unit 609, such as a network card, modem, wireless communication transceiver, etc. The communication unit 609 allows device 600 to exchange information / data with other devices via a computer network such as the Internet and / or various telecommunication networks.

[0118] The computing unit 601 can be a variety of general-purpose and / or specialized processing components with processing and computing capabilities. Some examples of the computing unit 601 include, but are not limited to, a central processing unit (CPU), a graphics processing unit (GPU), various dedicated artificial intelligence (AI) computing chips, various computing units that run machine learning model algorithms, a digital signal processor (DSP), and any appropriate processor, controller, microcontroller, etc. The computing unit 601 performs the various methods and processes described above, such as the speech synthesis method. For example, in some embodiments, the speech synthesis method can be implemented as a computer software program that is tangibly contained in a machine-readable medium, such as the storage unit 608. In some embodiments, part or all of the computer program can be loaded and / or installed on the device 600 via the ROM 602 and / or the communication unit 609. When the computer program is loaded into the RAM 603 and executed by the computing unit 601, one or more steps of the speech synthesis method described above can be performed. Alternatively, in other embodiments, the computing unit 601 can be configured to perform the speech synthesis method by any other appropriate means (e.g., by means of firmware).

[0119] Various embodiments of the systems and techniques described above can be implemented in digital electronic circuit systems, integrated circuit systems, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), application specific standard products (ASSPs), system-on-chip systems (SOCs), complex programmable logic devices (CPLDs), computer hardware, firmware, software, and / or combinations thereof. These various embodiments can include being implemented in one or more computer programs that are executable and / or interpreted on a programmable system that includes at least one programmable processor, which can be a special purpose or general purpose programmable processor that can receive data and instructions from a storage system, at least one input device, and at least one output device, and transmit data and instructions to the storage system, the at least one input device, and the at least one output device.

[0120] The program code for implementing the method of the present disclosure can be written in any combination of one or more programming languages. These program codes can be provided to a processor or controller of a general-purpose computer, a special-purpose computer, or other programmable data processing device so that when the program code is executed by the processor or controller, the functions / operations specified in the flow chart and / or area diagram are implemented. The program code can be executed entirely on the machine, partially on the machine, as a stand-alone software package, partially on the machine and partially on a remote machine, or entirely on a remote machine or server.

[0121] In the context of the present disclosure, a machine-readable medium can be a tangible medium that can contain or store a program for use by or in conjunction with an instruction execution system, device or equipment. A machine-readable medium can be a machine-readable signal medium or a machine-readable storage medium. A machine-readable medium can include, but is not limited to, an electronic, magnetic, optical, electromagnetic, infrared, or semiconductor system, device or equipment, or any suitable combination of the foregoing. A more specific example of a machine-readable storage medium can include an electrical connection based on one or more lines, a portable computer disk, a hard disk, a random access memory (RAM), a read-only memory (ROM), an erasable programmable read-only memory (EPROM or flash memory), an optical fiber, a portable compact disk read-only memory (CD-ROM), an optical storage device, a magnetic storage device, or any suitable combination of the foregoing.

[0122] To provide interaction with a user, the systems and techniques described herein can be implemented on a computer having: a display device (e.g., a CRT (cathode ray tube) or LCD (liquid crystal display) monitor) for displaying information to the user; and a keyboard and pointing device (e.g., a mouse or trackball) through which the user can provide input to the computer. Other types of devices can also be used to provide interaction with the user; for example, the feedback provided to the user can be any form of sensory feedback (e.g., visual feedback, auditory feedback, or tactile feedback); and input from the user can be received in any form (including acoustic input, voice input, or tactile input).

[0123] The systems and techniques described herein can be implemented in a computing system that includes back-end components (e.g., as a data server), or a computing system that includes middleware components (e.g., an application server), or a computing system that includes front-end components (e.g., a user computer having a graphical user interface or a web browser through which a user can interact with implementations of the systems and techniques described herein), or a computing system that includes any combination of such back-end components, middleware components, or front-end components. The components of the system can be interconnected by any form or medium of digital data communication (e.g., a communication network). Examples of communication networks include a local area network (LAN), a wide area network (WAN), and the Internet.

[0124] A computer system may include a client and a server. The client and server are generally remote from each other and typically interact through a communication network. The client-server relationship arises through computer programs running on the respective computers and having a client-server relationship with each other. The server may be a cloud server, a server in a distributed system, or a server integrated with a blockchain.

[0125] It should be understood that the various forms of the processes shown above can be used to reorder, add, or delete steps. For example, the steps described in this disclosure can be performed in parallel, sequentially, or in a different order, as long as the desired results of the technical solutions disclosed in this disclosure can be achieved. This is not a limitation herein.

[0126] The above specific embodiments do not constitute a limitation on the scope of protection of this disclosure. Those skilled in the art will appreciate that various modifications, combinations, sub-combinations, and substitutions may be made based on design requirements and other factors. Any modifications, equivalent substitutions, and improvements made within the spirit and principles of this disclosure shall be included within the scope of protection of this disclosure.

Claims

1. A speech synthesis method, comprising: Get plugin update data and update the speech synthesis program; Speech synthesis of text through updated speech synthesis program; The speech synthesis of the text includes: Determining the pronunciation type of the text among a plurality of preset pronunciation types; Converting the text into a target speech that matches the content of the text according to the pronunciation type of the text; Determining the pronunciation type of the text from among a plurality of preset pronunciation types includes: Determining a type increment range of each pronunciation type according to an update time of each pronunciation type, and determining a query order corresponding to each type increment range; According to each query order, the pronunciation type of the text is queried in turn within the corresponding type increment range.

2. The method according to claim 1, wherein The updating speech synthesis program includes: The preset multiple pronunciation types are updated according to the plug-in update data.

3. The method according to claim 1, wherein Determining the pronunciation type of the text from among a plurality of preset pronunciation types includes: Segmenting the text to obtain at least one word; According to each of the pronunciation types, the pronunciation type corresponding to each of the words is queried to determine the pronunciation type of the text.

4. The method according to claim 1, wherein The obtaining of plug-in update data includes: Get the current plug-in version of the current speech synthesis program and upload it; Receive plugin update data for the latest plugin versions.

5. The method according to claim 1, further comprising: Announce the synthesized target speech in a vehicle environment.

6. A speech synthesis device comprising: A plug-in update data acquisition module is used to obtain plug-in update data and update the speech synthesis program; A speech synthesis module, used to perform speech synthesis on text through an updated speech synthesis program; The speech synthesis module includes: a pronunciation type determination unit, configured to determine the pronunciation type of the text from among a plurality of preset pronunciation types; a speech generation unit, configured to convert the text into a target speech that matches the content of the text according to the pronunciation type of the text; The pronunciation type determination unit includes: a type increment range determining subunit, configured to determine the type increment range of each of the pronunciation types according to the update time of each of the pronunciation types, and to determine the query order corresponding to each of the type increment ranges; The type increment range query subunit is used to query the pronunciation type of the text in the corresponding type increment range according to each query order.

7. The device according to claim 6, wherein The plug-in update data acquisition module includes: The pronunciation type updating unit is used to update the preset multiple pronunciation types according to the plug-in update data.

8. The device according to claim 6, wherein The pronunciation type determination unit includes: A text segmentation subunit, configured to segment the text to obtain at least one word; The pronunciation type query subunit is used to query the pronunciation type corresponding to each of the words according to each of the pronunciation types, and determine it as the pronunciation type of the text.

9. The device according to claim 6, wherein The plug-in update data acquisition module includes: The plug-in version uploading unit is used to obtain the current plug-in version of the current speech synthesis program and upload it; The plug-in update data acquisition unit is used to receive the plug-in update data of the latest plug-in version.

10. The apparatus according to claim 6, further comprising: The vehicle voice broadcast module is used to broadcast the synthesized target voice in the vehicle environment.

11. An electronic device comprising: at least one processor; as well as a memory communicatively connected to the at least one processor; wherein, The memory stores instructions that can be executed by the at least one processor, and the instructions are executed by the at least one processor to enable the at least one processor to perform the speech synthesis method according to any one of claims 1 to 5.

12. A non-transitory computer-readable storage medium storing computer instructions, wherein: The computer instructions are used to enable the computer to execute the speech synthesis method according to any one of claims 1 to 5.

13. A computer program product, comprising a computer program, wherein when the computer program is executed by a processor, the computer program implements the speech synthesis method according to any one of claims 1 to 5.

Citation Information

Patent Citations

  • Polyphone pinyin conversion method and device, computer equipment and storage medium

    CN112464649A

  • Method For Upgrading Text-To-Speech Engine InText-To-Speech Serve

    KR1020030035321A