KR20210014526A - Server, device and method for providing speech systhesis service - Google Patents

Server, device and method for providing speech systhesis service Download PDF

Info

Publication number
KR20210014526A
KR20210014526A KR1020190092721A KR20190092721A KR20210014526A KR 20210014526 A KR20210014526 A KR 20210014526A KR 1020190092721 A KR1020190092721 A KR 1020190092721A KR 20190092721 A KR20190092721 A KR 20190092721A KR 20210014526 A KR20210014526 A KR 20210014526A
Authority
KR
South Korea
Prior art keywords
voice
sample
user
synthesis
data
Prior art date
Application number
KR1020190092721A
Other languages
Korean (ko)
Other versions
KR102479899B1 (en
Inventor
박정석
임미숙
Original Assignee
주식회사 케이티
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by 주식회사 케이티 filed Critical 주식회사 케이티
Priority to KR1020190092721A priority Critical patent/KR102479899B1/en
Publication of KR20210014526A publication Critical patent/KR20210014526A/en
Priority to KR1020220170527A priority patent/KR20230006627A/en
Application granted granted Critical
Publication of KR102479899B1 publication Critical patent/KR102479899B1/en

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/02Methods for producing synthetic speech; Speech synthesisers
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L13/00Speech synthesis; Text to speech systems
    • G10L13/08Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/06Creation of reference templates; Training of speech recognition systems, e.g. adaptation to the characteristics of the speaker's voice
    • G10L15/063Training
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/08Speech classification or search
    • G10L15/14Speech classification or search using statistical models, e.g. Hidden Markov Models [HMMs]
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L15/00Speech recognition
    • G10L15/28Constructional details of speech recognition systems
    • G10L15/30Distributed recognition, e.g. in client-server systems, for mobile phones or network applications
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10LSPEECH ANALYSIS OR SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING; SPEECH OR AUDIO CODING OR DECODING
    • G10L25/00Speech or voice analysis techniques not restricted to a single one of groups G10L15/00 - G10L21/00
    • G10L25/90Pitch determination of speech signals

Abstract

The present invention relates to a server for providing a voice synthesis service comprising: a receiving unit for receiving voice recording data of a plurality of users for at least one of a plurality of pre-registered sample scripts; a learning unit for learning a synthetic sound prediction model for a pitch value related to a tone of each user based on the received voice recording data; a generating unit for generating sample synthesis data for at least one of the sample scripts based on the learned synthetic sound prediction model when a sample request command is received from a user terminal; a providing unit for providing the sample synthesis data for the user terminal; and a voice registering unit for registering user voice information on the user terminal based on whether or not the quality of the sample synthesis data received from the user terminal is satisfied. Accordingly, a user can check the quality of expected sample synthesis data.

Description

음성 합성 서비스를 제공하는 서버, 단말 및 방법{SERVER, DEVICE AND METHOD FOR PROVIDING SPEECH SYSTHESIS SERVICE}Server, device and method that provide speech synthesis service {SERVER, DEVICE AND METHOD FOR PROVIDING SPEECH SYSTHESIS SERVICE}

본 발명은 음성 합성 서비스를 제공하는 서버, 단말 및 방법에 관한 것이다.The present invention relates to a server, a terminal, and a method for providing a speech synthesis service.

음성합성(text-to-speech: TTS) 시스템은 음성 합성 방식을 이용하여 입력된 텍스트를 음성으로 변환하여 자연스럽고 높은 음질의 음성을 합성한다. 이러한, 음성합성 방식에는 코퍼스 방식, HMM (Hidden Markov Mode) 방식 및 딥러닝 방식이 있다. The text-to-speech (TTS) system converts the input text into  speech using the speech synthesis   method to synthesize  speech of natural and high quality sound. Such speech synthesis   methods include a corpus method, a hidden markov mode (HMM) method, and a deep learning method.

대용량 코퍼스 기반 음성합성 시스템은 음편을 저장하는 대용량 데이터베이스를 필요로 하기 때문에 비용이 많이 들고, 인공지능 서비스가 요구되는 다양한 영역에서 성우 녹음을 이용한 음성 합성을 확대하는 것이 불가능하고, 데이터베이스에 저장되어 있지 않은 음편에 대하여 음성 합성하는 것인 자연스럽지 못하다는 단점이 있다. A large-capacity corpus-based speech synthesis system is expensive because it requires a large-scale database to store musical pieces, and it is impossible to expand speech synthesis using voice actor recording in various areas requiring artificial intelligence services, and is not stored in the database. There is a drawback that it is not natural to synthesize speech for unsound musical pieces.

HMM (Hidden Markov Mode) 기반 음성합성 시스템은 데이터베이스의 음편 저장 유무와 상관없이 고른 음성합성 품질을 제공할 수 있고, 지명처럼 고유 명사가 많은 네비게이션 음성합성에 적합한 반면, 대용량의 단말 기반 임베디드에는 부적합하고, 기계음처럼 부자연스러운 음성 합성을 한다는 단점이 있다. HMM (Hidden Markov Mode)-based speech synthesis system can provide even speech synthesis quality regardless of whether or not phonetic pieces are stored in the database, and is suitable for navigation speech synthesis with many proper nouns like place names, but is not suitable for large-capacity terminal-based embedded. However, it has the disadvantage of unnatural speech synthesis like a mechanical sound.

딥러닝 기반 음성합성 시스템은 짧은 시간 내 녹음된 음성 녹음 데이터로도 자연스러운 음성합성이 가능하여, 다양한 서비스에 활용되고 있다. The deep learning-based speech synthesis system enables natural speech synthesis even with recorded voice data within a short period of time, and is thus used for various services.

최근에는 기존 전문성우 중심의 음성 합성 서비스에서 일반 고객의 목소리를 이용한 음성 합성 서비스로 확대되고 있다. In recent years, it is expanding from the existing professional voice actor-centered voice synthesis service to the voice synthesis service using the voices of general customers.

일반 고객을 대상으로 하는 음성합성 서비스의 경우, 일반 고객은 전문 성우와 달리, 발성과 읽는 속도를 유지하기 어렵다. 또한, 일반 고객이 원하는 음성합성 품질을 얻기 위해서는, 일반 고객이 만족할 때까지 반복적인 음성 녹음을 해야 하는 불편함이 있다. In the case of speech synthesis services for general customers, it is difficult for general customers to maintain vocalization and reading speed, unlike professional voice actors. In addition, in order to obtain the voice synthesis quality desired by the general customer, there is an inconvenience of repeatedly recording voice until the general customer is satisfied.

한국등록특허공보 특1996-0007129호 (1996.05.27. 등록)Korean Registered Patent Publication No. 1996-0007129 (registered on May 27, 1996)

본 발명은 전술한 종래 기술의 문제점을 해결하기 위한 것으로서, 기등록된 샘플 스크립트에 대한 사용자의 음성 녹음 데이터를 이용하여 사용자의 음색과 관련한 합성음 예측 모델을 학습시키고, 학습된 합성음 예측 모델에 기초하여 샘플 합성 데이터를 생성하여 이를 사용자 단말로 제공하고자 한다. 다만, 본 실시예가 이루고자 하는 기술적 과제는 상기된 바와 같은 기술적 과제들로 한정되지 않으며, 또 다른 기술적 과제들이 존재할 수 있다. The present invention is to solve the problems of the prior art described above, by using the user's voice recording data for a previously registered sample script to learn a synthesized tone prediction model related to the user's tone, and based on the learned synthesized tone prediction model It is intended to generate sample synthesis data and provide it to the user terminal. However, the technical problem to be achieved by the present embodiment is not limited to the technical problems as described above, and other technical problems may exist.

상술한 기술적 과제를 달성하기 위한 기술적 수단으로서, 본 발명의 제 1 측면에 따른 음성 합성 서비스를 제공하는 서버는 기등록된 복수의 샘플 스크립트 중 적어도 하나에 대한 복수의 사용자의 음성 녹음 데이터를 수신하는 수신부; 상기 수신된 음성 녹음 데이터에 기초하여 각 사용자의 음색과 관련된 피치값에 대한 합성음 예측 모델을 학습시키는 학습부; 사용자 단말로부터 샘플 요청 명령을 수신하는 경우, 상기 학습된 합성음 예측 모델에 기초하여 상기 복수의 샘플 스크립트 중 적어도 하나에 대한 샘플 합성 데이터를 생성하는 생성부; 상기 샘플 합성 데이터를 상기 사용자 단말로 제공하는 제공부; 및 상기 사용자 단말로부터 수신한 상기 샘플 합성 데이터에 대한 품질 만족도 여부에 기초하여 상기 사용자 단말의 사용자에 대한 목소리 정보를 등록하는 목소리 등록부를 포함할 수 있다. As a technical means for achieving the above-described technical problem, the server providing a speech synthesis service according to the first aspect of the present invention receives voice recording data of a plurality of users for at least one of a plurality of previously registered sample scripts. Receiver; A learning unit for learning a synthesized sound prediction model for a pitch value related to the tone of each user based on the received voice recording data; A generator configured to generate sample synthesis data for at least one of the plurality of sample scripts based on the learned synthesized sound prediction model when receiving a sample request command from a user terminal; A providing unit for providing the sample synthesis data to the user terminal; And a voice registration unit for registering voice information for a user of the user terminal based on whether or not the quality of the sample synthesis data received from the user terminal is satisfied.

본 발명의 제 2 측면에 따른 음성 합성 서비스를 제공받는 사용자 단말은 음성 합성 서비스 제공 서버로 음성 합성을 위한 샘플 요청 명령을 전송하는 전송부; 학습된 합성음 예측 모델에 기초하여 생성된 적어도 하나에 대한 샘플 합성 데이터를 상기 음성 합성 서비스 제공 서버로부터 수신하는 수신부; 및 상기 샘플 합성 데이터에 대한 품질 만족도 정보를 입력받은 입력부; 상기 전송부는 상기 입력된 품질 만족도 정보를 상기 음성 합성 서비스 제공 서버로 전송하고, 상기 합성음 예측 모델은 기등록된 복수의 샘플 스크립트 중 적어도 하나에 대한 복수의 사용자의 음성 녹음 데이터에 기초하여 각 사용자의 음색과 관련된 피치값에 대하여 학습된 모델이고, 상기 샘플 합성 데이터에 대한 품질 만족도 여부에 기초하여 상기 사용자 단말의 사용자에 대한 목소리 정보가 상기 음성 합성 서비스 제공 서버에 등록될 수 있다. A user terminal receiving a speech synthesis service according to a second aspect of the present invention includes: a transmission unit for transmitting a sample request command for speech synthesis to a speech synthesis service providing server; A receiver for receiving sample synthesis data for at least one generated based on the learned synthesized sound prediction model from the speech synthesis service providing server; And an input unit for receiving quality satisfaction information for the sample synthesis data. The transmission unit transmits the input quality satisfaction information to the voice synthesis service providing server, and the synthesized sound prediction model is based on voice recording data of a plurality of users for at least one of a plurality of previously registered sample scripts. It is a model trained on a pitch value related to a tone color, and voice information for a user of the user terminal may be registered in the voice synthesis service providing server based on whether or not the sample synthesis data is satisfied with quality.

본 발명의 제 3 측면에 따른 음성 합성 서비스 제공 서버에 의해 음성 합성 서비스를 제공하는 방법은 기등록된 복수의 샘플 스크립트 중 적어도 하나에 대한 복수의 사용자의 음성 녹음 데이터를 수신하는 단계; 상기 수신된 음성 녹음 데이터에 기초하여 각 사용자의 음색과 관련된 피치값에 대한 합성음 예측 모델을 학습시키는 단계; 사용자 단말로부터 샘플 요청 명령을 수신하는 경우, 상기 학습된 합성음 예측 모델에 기초하여 상기 복수의 샘플 스크립트 중 적어도 하나에 대한 샘플 합성 데이터를 생성하는 단계; 상기 샘플 합성 데이터를 상기 사용자 단말로 제공하는 단계; 및 상기 사용자 단말로부터 수신한 상기 샘플 합성 데이터에 대한 품질 만족도 여부에 기초하여 상기 사용자 단말의 사용자에 대한 목소리 정보를 등록하는 단계를 포함할 수 있다. A method for providing a speech synthesis service by a speech synthesis service providing server according to a third aspect of the present invention includes the steps of: receiving voice recording data of a plurality of users for at least one of a plurality of previously registered sample scripts; Learning a synthesized sound prediction model for a pitch value related to each user's tone based on the received voice recording data; Generating sample synthesis data for at least one of the plurality of sample scripts based on the learned synthesized sound prediction model when receiving a sample request command from a user terminal; Providing the sample synthesis data to the user terminal; And registering voice information for a user of the user terminal based on whether or not the quality of the sample synthesis data received from the user terminal is satisfied.

상술한 과제 해결 수단은 단지 예시적인 것으로서, 본 발명을 제한하려는 의도로 해석되지 않아야 한다. 상술한 예시적인 실시예 외에도, 도면 및 발명의 상세한 설명에 기재된 추가적인 실시예가 존재할 수 있다.The above-described problem solving means are merely exemplary and should not be construed as limiting the present invention. In addition to the above-described exemplary embodiments, there may be additional embodiments described in the drawings and detailed description of the invention.

전술한 본 발명의 과제 해결 수단 중 어느 하나에 의하면, 본 발명은 기등록된 샘플 스크립트에 대한 사용자의 음성 녹음 데이터를 이용하여 사용자의 음색과 관련한 합성음 예측 모델을 학습시키고, 학습된 합성음 예측 모델에 기초하여 샘플 합성 데이터를 생성하여 이를 사용자 단말로 제공할 수 있다. 이를 통해, 본 발명은 사용자의 목소리 등록시 예상되는 샘플 합성 데이터에 대한 품질을 사용자가 확인할 수 있기 때문에 기존과 같이 사용자가 반복해서 스크립트를 녹음해야 하는 수고로움을 덜어줄 수 있다. According to any one of the above-described problem solving means of the present invention, the present invention is to learn a synthesized sound prediction model related to the user's tone by using the user's voice recording data for a previously registered sample script, and the learned synthesized sound prediction model Based on the sample synthesis data, it may be provided to the user terminal. Through this, since the user can check the quality of the sample synthesis data expected when the user's voice is registered, the user can save the trouble of repeatedly recording a script as in the past.

도 1은 본 발명의 일 실시예에 따른, 음성 합성 서비스 제공 시스템의 구성도이다.
도 2는 본 발명의 일 실시예에 따른, 도 1에 도시된 음성 합성 서비스 제공 서버의 블록도이다.
도 3a 내지 3d는 본 발명의 일 실시예에 따른, 사용자에 대한 목소리 정보를 등록하는 방법을 설명하기 위한 도면이다.
도 4는 본 발명의 일 실시예에 따른, 도 1에 도시된 사용자 단말의 블록도이다.
도 5는 본 발명의 일 실시예에 따른, 음성 합성 서비스를 제공하는 방법을 설명하기 위한 도면이다.
도 6은 본 발명의 일 실시예에 따른, 음성 합성 서비스 제공 방법을 나타낸 흐름도이다.
1 is a block diagram of a system for providing a speech synthesis service according to an embodiment of the present invention.
FIG. 2 is a block diagram of a voice synthesis service providing server shown in FIG. 1 according to an embodiment of the present invention.
3A to 3D are diagrams for explaining a method of registering voice information for a user according to an embodiment of the present invention.
4 is a block diagram of the user terminal shown in FIG. 1 according to an embodiment of the present invention.
5 is a diagram illustrating a method of providing a speech synthesis service according to an embodiment of the present invention.
6 is a flowchart illustrating a method of providing a speech synthesis service according to an embodiment of the present invention.

아래에서는 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 실시예를 상세히 설명한다. 그러나 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예에 한정되지 않는다. 그리고 도면에서 본 발명을 명확하게 설명하기 위해서 설명과 관계없는 부분은 생략하였으며, 명세서 전체를 통하여 유사한 부분에 대해서는 유사한 도면 부호를 붙였다. Hereinafter, embodiments of the present invention will be described in detail with reference to the accompanying drawings so that those of ordinary skill in the art can easily implement the present invention. However, the present invention may be implemented in various different forms and is not limited to the embodiments described herein. In the drawings, parts irrelevant to the description are omitted in order to clearly describe the present invention, and similar reference numerals are assigned to similar parts throughout the specification.

명세서 전체에서, 어떤 부분이 다른 부분과 "연결"되어 있다고 할 때, 이는 "직접적으로 연결"되어 있는 경우뿐 아니라, 그 중간에 다른 소자를 사이에 두고 "전기적으로 연결"되어 있는 경우도 포함한다. 또한 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다. Throughout the specification, when a part is said to be "connected" to another part, this includes not only "directly connected" but also "electrically connected" with another element interposed therebetween. . In addition, when a part "includes" a certain component, it means that other components may be further included rather than excluding other components unless specifically stated to the contrary.

본 명세서에 있어서 '부(部)'란, 하드웨어에 의해 실현되는 유닛(unit), 소프트웨어에 의해 실현되는 유닛, 양방을 이용하여 실현되는 유닛을 포함한다. 또한, 1 개의 유닛이 2 개 이상의 하드웨어를 이용하여 실현되어도 되고, 2 개 이상의 유닛이 1 개의 하드웨어에 의해 실현되어도 된다. In the present specification, the term "unit" includes a unit realized by hardware, a unit realized by software, and a unit realized using both. Further, one unit may be realized using two or more hardware, or two or more units may be realized using one hardware.

본 명세서에 있어서 단말 또는 디바이스가 수행하는 것으로 기술된 동작이나 기능 중 일부는 해당 단말 또는 디바이스와 연결된 서버에서 대신 수행될 수도 있다. 이와 마찬가지로, 서버가 수행하는 것으로 기술된 동작이나 기능 중 일부도 해당 서버와 연결된 단말 또는 디바이스에서 수행될 수도 있다. In the present specification, some of the operations or functions described as being performed by the terminal or device may be performed instead by a server connected to the terminal or device. Likewise, some of the operations or functions described as being performed by the server may also be performed by a terminal or device connected to the server.

이하, 첨부된 구성도 또는 처리 흐름도를 참고하여, 본 발명의 실시를 위한 구체적인 내용을 설명하도록 한다. Hereinafter, with reference to the accompanying configuration diagram or processing flow chart, specific details for the implementation of the present invention will be described.

도 1은 본 발명의 일 실시예에 따른, 음성 합성 서비스 제공 시스템의 구성도이다. 1 is a block diagram of a system for providing a speech synthesis service according to an embodiment of the present invention.

도 1을 참조하면, 음성 합성 서비스 제공 시스템은 음성 합성 서비스 제공 서버(100) 및 사용자 단말(110)을 포함할 수 있다. 다만, 이러한 도 1의 음성 합성 서비스 제공 시스템은 본 발명의 일 실시예에 불과하므로 도 1을 통해 본 발명이 한정 해석되는 것은 아니며, 본 발명의 다양한 실시예들에 따라 도 1과 다르게 구성될 수도 있다. Referring to FIG. 1, a system for providing a speech synthesis service may include a server 100 for providing a speech synthesis service and a user terminal 110. However, since the speech synthesis service providing system of FIG. 1 is only an embodiment of the present invention, the present invention is not limitedly interpreted through FIG. 1, and may be configured differently from FIG. 1 according to various embodiments of the present invention. have.

일반적으로, 도 1의 음성 합성 서비스 제공 시스템의 각 구성요소들은 네트워크(미도시)를 통해 연결된다. 네트워크는 단말들 및 서버들과 같은 각각의 노드 상호 간에 정보 교환이 가능한 연결 구조를 의미하는 것으로, 근거리 통신망(LAN: Local Area Network), 광역 통신망(WAN: Wide Area Network), 인터넷 (WWW: World Wide Web), 유무선 데이터 통신망, 전화망, 유무선 텔레비전 통신망 등을 포함한다. 무선 데이터 통신망의 일례에는 3G, 4G, 5G, 3GPP(3rd Generation Partnership Project), LTE(Long Term Evolution), WIMAX(World Interoperability for Microwave Access), 와이파이(Wi-Fi), 블루투스 통신, 적외선 통신, 초음파 통신, 가시광 통신(VLC: Visible Light Communication), 라이파이(LiFi) 등이 포함되나 이에 한정되지는 않는다. In general, components of the system for providing a speech synthesis service of FIG. 1 are connected through a network (not shown). A network refers to a connection structure that enables information exchange between nodes such as terminals and servers, and is a local area network (LAN), a wide area network (WAN), and the Internet (WWW: World). Wide Web), wired/wireless data communication networks, telephone networks, wired/wireless television networks, etc. Examples of wireless data networks include 3G, 4G, 5G, 3rd Generation Partnership Project (3GPP), Long Term Evolution (LTE), World Interoperability for Microwave Access (WIMAX), Wi-Fi, Bluetooth communication, infrared communication, and ultrasound. Communication, Visible Light Communication (VLC), LiFi, etc. are included, but are not limited thereto.

사용자 단말(110)은 기등록된 복수의 샘플 스크립트 중 적어도 하나의 샘플 스크립트에 대한 사용자의 음성 녹음 데이터를 녹음한 후, 음성 녹음 데이터를 음성 합성 서비스 제공 서버(100)에게 전송할 수 있다. The user terminal 110 may record the user's voice recording data for at least one sample script among a plurality of previously registered sample scripts, and then transmit the voice recording data to the voice synthesis service providing server 100.

음성 합성 서비스 제공 서버(100)는 사용자 단말(110)로부터 수신된 음성 녹음 데이터에 기초하여 사용자의 음색과 관련된 피치값에 대한 합성음 예측 모델을 학습시킬 수 있다. The voice synthesis service providing server 100 may learn a synthesized sound prediction model for a pitch value related to the user's tone based on the voice recording data received from the user terminal 110.

사용자 단말(110)은 사용자의 음성 녹음 데이터가 음성 합성 서비스 제공 서버(100)에 등록된 시간으로부터 기설정된 기간이 지난 후에 사용자의 음성 합성에 대한 샘플 요청 명령을 음성 합성 서비스 제공 서버(100)에게 전송할 수 있다. The user terminal 110 sends a sample request command for the user's speech synthesis to the speech synthesis service providing server 100 after a preset period has passed from the time when the user's voice recorded data is registered in the speech synthesis service providing server 100. Can be transmitted.

음성 합성 서비스 제공 서버(100)는 사용자 단말(110)로부터 샘플 요청 명령을 수신하는 경우, 학습된 사용자 단말(110)의 합성음 예측 모델에 기초하여 복수의 샘플 스크립트 중 적어도 하나에 대한 샘플 합성 데이터를 생성하고, 생성된 샘플 합성 데이터를 사용자 단말(110)에게 제공할 수 있다. When receiving a sample request command from the user terminal 110, the speech synthesis service providing server 100 generates sample synthesis data for at least one of a plurality of sample scripts based on the learned synthesized sound prediction model of the user terminal 110. It is generated, and the generated sample synthesis data may be provided to the user terminal 110.

사용자 단말(110)은 음성 합성 서비스 제공 서버(100)로부터 수신된 샘플 합성 데이터에 대한 품질 만족도를 체크한 후, 샘플 합성 데이터에 대한 품질 만족도 정보를 음성 합성 서비스 제공 서버(100)에게 전송할 수 있다. The user terminal 110 may check quality satisfaction with respect to the sample synthesis data received from the speech synthesis service providing server 100, and then transmit quality satisfaction information with respect to the sample synthesis data to the speech synthesis service providing server 100. .

음성 합성 서비스 제공 서버(100)는 사용자 단말(110)로부터 수신한 샘플 합성 데이터에 대한 품질 만족도 여부에 기초하여 사용자 단말(110)의 사용자에 대한 목소리 정보를 등록할 수 있다. The voice synthesis service providing server 100 may register voice information for a user of the user terminal 110 based on whether or not the quality of the sample synthesis data received from the user terminal 110 is satisfied.

이후, 음성 합성 서비스 제공 서버(100)는 사용자 단말(110)로부터 컨텐츠 요청 명령을 수신하는 경우, 기등록된 복수의 컨텐츠 스크립트 중 컨텐츠 요청 명령에 대응하는 컨텐츠 스크립트에 대한 컨텐츠 합성 데이터를 등록된 사용자의 목소리 정보에 기초하여 생성하고, 생성된 컨텐츠 합성 데이터를 사용자 단말(110)에게 제공할 수 있다. Thereafter, when receiving a content request command from the user terminal 110, the voice synthesis service providing server 100 registers the content synthesis data for the content script corresponding to the content request command among a plurality of previously registered content scripts. It is generated based on the voice information of, and the generated content synthesis data may be provided to the user terminal 110.

이하에서는 도 1의 음성 합성 서비스 제공 시스템의 각 구성요소의 동작에 대해 보다 구체적으로 설명한다. Hereinafter, the operation of each component of the speech synthesis service providing system of FIG. 1 will be described in more detail.

도 2는 본 발명의 일 실시예에 따른, 도 1에 도시된 음성 합성 서비스 제공 서버(100)의 블록도이다. FIG. 2 is a block diagram of the voice synthesis service providing server 100 shown in FIG. 1 according to an embodiment of the present invention.

도 2를 참조하면, 음성 합성 서비스 제공 서버(100)는 수신부(200), 학습부(210), 생성부(220), 제공부(230), 목소리 등록부(240), 속도 조절부(250), 검증부(260), 휴지기 조정부(270) 및 음성 입력부(280)를 포함할 수 있다. 다만, 도 2에 도시된 음성 합성 서비스 제공 서버(100)는 본 발명의 하나의 구현 예에 불과하며, 도 2에 도시된 구성요소들을 기초로 하여 여러 가지 변형이 가능하다. 2, the voice synthesis service providing server 100 includes a receiving unit 200, a learning unit 210, a generating unit 220, a providing unit 230, a voice registering unit 240, and a speed adjusting unit 250 , A verification unit 260, a pause adjustment unit 270, and a voice input unit 280. However, the voice synthesis service providing server 100 shown in FIG. 2 is only an example of implementation of the present invention, and various modifications are possible based on the components shown in FIG. 2.

수신부(200)는 기등록된 복수의 샘플 스크립트 중 적어도 하나에 대한 복수의 사용자의 음성 녹음 데이터를 복수의 사용자의 단말로부터 수신할 수 있다. The receiving unit 200 may receive voice recording data of a plurality of users for at least one of a plurality of previously registered sample scripts from terminals of a plurality of users.

수신부(200)는 사용자 목소리가 담긴 동화 컨텐츠의 서비스를 이용하려는 복수의 사용자 각각의 사용자 단말로부터 기등록된 복수의 샘플 스크립트 중 적어도 하나의 샘플 스크립트에 대하여 사용자의 목소리가 녹음된 음성 녹음 데이터를 수신할 수 있다. 또한, 수신부(200)는 복수의 사용자 단말로부터 각 음성 녹음 데이터 및 각 사용자 단말에 대한 식별 정보를 함께 수신할 수 있다. 예를 들어, 도 3a를 참조하면, 사용자 단말(110)에게 기등록된 복수의 샘플 스크립트 중 랜덤으로 추출된 샘플 스크립트(301, 예컨대, '오늘도 어린이는 학교에 일찍 갑니다.')를 사용자 단말(110)에게 제공한 경우, 수신부(200)는 사용자 단말(110)로부터 샘플 스크립트(301)를 리딩한 사용자의 음성 녹음 데이터 및 사용자 단말(110)의 식별 정보를 수신할 수 있다. The receiver 200 receives voice recording data in which a user's voice is recorded for at least one sample script among a plurality of sample scripts previously registered from each of a plurality of users who intend to use the service of moving picture content containing the user's voice. can do. In addition, the receiving unit 200 may receive each voice recording data and identification information for each user terminal together from a plurality of user terminals. For example, referring to FIG. 3A, a sample script (301, for example,'children go to school early today') extracted at random from among a plurality of sample scripts previously registered with the user terminal 110 is a user terminal ( When provided to 110), the receiving unit 200 may receive voice recording data of the user who read the sample script 301 from the user terminal 110 and identification information of the user terminal 110.

검증부(260)는 복수의 사용자 단말로부터 수신한 음성 녹음 데이터에 대한 발음 정확성을 검증할 수 있다. The verification unit 260 may verify pronunciation accuracy of voice recording data received from a plurality of user terminals.

검증부(260)는 복수의 사용자 단말로부터 수신한 음성 녹음 데이터에 대한 음성 인식을 수행하고, 수신한 음성 녹음 데이터에 대한 음성 인식 수행 결과 및 수신한 음성 녹음 데이터에 대응하는 샘플 스크립트 간의 유사도가 기설정된 임계값 이하로 나타난 경우, 수신한 음성 녹음 데이터에 대한 발음 정확성이 부정확하다고 판단할 수 있다. 예를 들어, 도 3a를 참조하면, 검증부(260)는 사용자 단말(110)로부터 수신된 음성 녹음 데이터에 대한 음성 인식 수행 결과와 샘플 스크립트(301) 간의 유사도가 80% 이상 일치하는 경우, 사용자 단말(110)로부터 수신된 음성 녹음 데이터의 발음이 정확하다고 판단하고, 유사도가 80% 미만인 경우, 사용자 단말(110)로부터 수신된 음성 녹음 데이터의 발음이 부정확하다고 판단할 수 있다. The verification unit 260 performs voice recognition on the voice recording data received from a plurality of user terminals, and the similarity between the result of performing voice recognition on the received voice recording data and the sample script corresponding to the received voice recording data is determined. If it appears below the set threshold, it may be determined that the pronunciation accuracy of the received voice recording data is incorrect. For example, referring to FIG. 3A, when the similarity between the result of performing the speech recognition on the voice recording data received from the user terminal 110 and the sample script 301 is equal to or greater than 80%, the user It is determined that the pronunciation of the voice recorded data received from the terminal 110 is correct, and if the similarity is less than 80%, it may be determined that the pronunciation of the voice recorded data received from the user terminal 110 is incorrect.

음성 입력부(280)는 복수의 사용자 단말 별 음성 녹음 데이터 대한 발음 정확성이 부정확하다고 판단되는 사용자 단말에게 샘플 스크립트에 대한 새로운 음성 녹음 데이터를 재입력받도록 안내하고, 해당 사용자 단말로부터 샘플 스크립트에 대한 새로운 음성 녹음 데이터를 재입력받을 수 있다. 예를 들어, 도 3a를 참조하면, 음성 입력부(280)는 사용자 단말(110)로부터 수신된 음성 녹음 데이터에 대한 음성 인식 수행 결과와 샘플 스크립트(301) 간의 유사도가 80% 이상 일치하지 않는 경우, 사용자 단말(110)로부터 샘플 스크립트(301)에 대한 새로운 음성 녹음 데이터를 재입력받을 수 있다. 만일, 기설정된 횟수(예컨대, 3회) 이상으로 사용자 단말(110)로부터 재입력받은 음성 녹음 데이터와 해당 음성 녹음 데이터에 대응하는 샘플 스크립트 간의 유사도가 80% 미만으로 나타난 경우, 음성 입력부(280)는 샘플 스크립트(301)와 다른 새로운 샘플 스크립트를 사용자 단말(110)에게 제공하고, 새로운 샘플 스크립트에 대한 사용자의 음성 녹음 데이터를 재입력받을 수 있다. The voice input unit 280 guides the user terminal, which is determined to be inaccurate in pronunciation accuracy for the voice recording data for each user terminal, to re-input new voice recording data for the sample script, and provides a new voice for the sample script from the corresponding user terminal. You can re-enter the recorded data. For example, referring to FIG. 3A, when the voice input unit 280 does not match the similarity between the result of performing voice recognition on the voice recording data received from the user terminal 110 and the sample script 301 by 80% or more, New voice recording data for the sample script 301 may be re-inputted from the user terminal 110. If the similarity between the voice recording data re-inputted from the user terminal 110 and the sample script corresponding to the voice recording data appears to be less than 80% more than a preset number of times (eg, 3 times), the voice input unit 280 May provide a new sample script different from the sample script 301 to the user terminal 110, and re-input the user's voice recording data for the new sample script.

속도 조절부(250)는 복수의 샘플 스크립트 중 적어도 하나의 샘플 스크립트에 대한 각 사용자의 리딩 속도가 기설정된 리딩 속도에 맞게 조절되도록 속도 조절 인터페이스를 사용자 단말(110)에게 제공할 수 있다. 예를 들어, 도 3a 내지 3b를 함께 참조하면, 속도 조절부(250)는 기설정된 리딩 속도에 맞게 사용자가 샘플 스크립트(301)를 리딩할 수 있도록 속도 조절 인터페이스(303)(예컨대, 커서)를 사용자 단말(110)에게 제공할 수 있다. 이후, 속도 조절부(250)는 샘플 스크립트(301)에 대한 사용자의 리딩 속도를 고려하여 샘플 스크립트(301)의 다음 문장에 해당하는 샘플 스크립트에 대하여 리딩 속도를 가이드해주는 속도 조절 인터페이스(303)의 이동 속도를 조절할 수 있다. The speed control unit 250 may provide a speed control interface to the user terminal 110 so that the reading speed of each user with respect to at least one sample script among the plurality of sample scripts is adjusted according to a preset reading speed. For example, referring to FIGS. 3A to 3B together, the speed control unit 250 may provide a speed control interface 303 (eg, a cursor) so that the user can read the sample script 301 according to a preset reading speed. It can be provided to the user terminal 110. Thereafter, the speed control unit 250 of the speed control interface 303 that guides the reading speed of the sample script corresponding to the next sentence of the sample script 301 in consideration of the user's reading speed of the sample script 301 Movement speed can be adjusted.

음성 입력부(280)는 각 사용자 별로 복수의 샘플 스크립트 중 적어도 하나의 샘플 스크립트에 대한 리딩 속도 및 기설정된 임계치(예컨대, 20%)간의 비교에 따라 사용자로 하여금 샘플 스크립트를 다시 읽도록 요청할 수 있다. 예를 들면, 음성 입력부(280)는 사용자의 샘플 스크립트에 대한 리딩 속도가 기설정된 임계치를 초과하는 사용자의 사용자 단말에게 샘플 스크립트를 기설정된 리딩 속도에 맞게 다시 리딩하도록 요청할 수 있다. The voice input unit 280 may request a user to read the sample script again according to a comparison between a reading rate for at least one sample script among a plurality of sample scripts and a preset threshold (eg, 20%) for each user. For example, the voice input unit 280 may request the user terminal of the user whose reading rate for the user's sample script exceeds a preset threshold to read the sample script again according to the preset reading rate.

속도 조절부(250)는 복수의 사용자 단말로부터 수신한 음성 녹음 데이터에 대한 발성 속도를 각 사용자 별로 측정할 수 있다. The speed control unit 250 may measure the speech speed of voice recorded data received from a plurality of user terminals for each user.

한편, 음성 합성 품질을 향상시키기 위해서는 음성 녹음 데이터 내 음성 구간 간의 휴지기를 최소화하는 것이 중요하다. On the other hand, in order to improve the quality of speech synthesis, it is important to minimize the pause between voice sections in the voice recording data.

휴지기 조정부(270)는 복수의 사용자 단말로부터 수신한 음성 녹음 데이터 각각으로부터 적어도 하나의 음성 구간을 검출할 수 있다. 예를 들어, 휴지기 조정부(270)는 VAD(Voice Activity Detection) 알고리즘을 이용하여 음성 녹음 데이터로부터 음성 구간을 검출할 수 있다. The pause adjustment unit 270 may detect at least one voice section from each of the voice recording data received from a plurality of user terminals. For example, the pause adjustment unit 270 may detect a voice section from voice recording data using a Voice Activity Detection (VAD) algorithm.

휴지기 조정부(270)는 검출된 적어도 하나의 음성 구간 간 휴지기 추정 신뢰도를 계산하고, 계산된 휴지기 추정 신뢰도에 기초하여 음성 구간 간의 휴지기를 조정할 수 있다. 여기서, 휴지기 추정 신뢰도가 높게 나오면, 음성 구간 간의 휴지기가 길고, 휴지기 추정 신뢰도가 낮게 나오면, 음성 구간 간의 휴지기가 짧다는 것을 의미할 수 있다. 예를 들어, 휴지기 조정부(270)는 음성 구간 간의 휴지기가 최소화되도록 음성 구간 간의 휴지기를 삭제하거나 평균값으로 조정할 수 있다. The pause adjustment unit 270 may calculate the reliability of the pause estimation between the detected at least one voice interval and adjust the pause between the speech intervals based on the calculated reliability of the pause estimation. Here, if the reliability of the pause estimation is high, the pause between the voice intervals is long, and if the reliability of the pause estimation is low, it may mean that the pause between the voice intervals is short. For example, the pause adjustment unit 270 may delete the pause between voice sections or adjust it to an average value so that the pause between voice sections is minimized.

학습부(210)는 수신된 복수의 사용자 각각의 음성 녹음 데이터에 기초하여 각 사용자의 목소리 특성과 관련된 합성음 예측 모델을 사용자별로 학습시킬 수 있다. The learning unit 210 may learn a synthesized sound prediction model related to the voice characteristics of each user for each user based on the received voice recording data of each of the plurality of users.

구체적으로, 학습부(210)는 수신된 복수의 사용자 각각의 음성 녹음 데이터에 기초하여 각 사용자의 음색과 관련된 피치값에 대한 합성음 예측 모델을 각 사용자별로 학습시킬 수 있다. 예를 들어, 도 3c를 참조하면, 학습부(210)는 뉴럴 네트워크 알고리즘(305)을 이용하여 사용자의 음성 녹음 데이터로부터 사용자의 음색과 관련된 피치값을 도출하고, 도출된 피치값을 이용하여 합성음 예측 모델을 학습시킬 수 있다. 여기서, 뉴럴 네트워크 알고리즘(305)은 오디오 데이터와 같이 고차원 연속분포를 학습할 수 있는 다층 RNN(Recurrent Neural Networks)을 기반으로 구성되어 있다. Specifically, the learning unit 210 may learn a synthesized sound prediction model for a pitch value related to the tone of each user for each user based on the received voice recording data of each of the plurality of users. For example, referring to FIG. 3C, the learning unit 210 derives a pitch value related to the user's tone from the user's voice recording data using a neural network algorithm 305, and uses the derived pitch value to obtain a synthesized sound. Predictive models can be trained. Here, the neural network algorithm 305 is configured based on multilayer RNNs (Recurrent Neural Networks) capable of learning a high-dimensional continuous distribution like audio data.

학습부(210)는 수신한 복수의 사용자 각각의 음성 녹음 데이터를 구성하는 각 음절의 확률값이 피치값과 관련하여 최대가 되도록 합성음 예측 모델을 학습시킬 수 있다. 사용자의 음성 녹음 데이터(

Figure pat00001
)를 구성하는 각 음절의 확률값은 [수학식 1]과 같이 표현될 수 있다. The learning unit 210 may train the synthesized sound prediction model so that the probability value of each syllable constituting the voice recording data of each of the plurality of users is maximum in relation to the pitch value. User's voice recording data (
Figure pat00001
The probability value of each syllable constituting) can be expressed as [Equation 1].

[수학식 1][Equation 1]

Figure pat00002
Figure pat00002

도 3d를 참조하면, 학습부(210)는 각 사용자별로 음성 녹음 데이터에 포함된 사용자의 음색과 관련된 피치값, 해당 음성 데이터에 대응하는 샘플 스크립트 및 사용자 아이디를 합성음 예측 모델에 입력하여 음성 녹음 데이터를 구성하는 각 음절의 확률값이 최대가 되도록 합성음 예측 모델을 학습시킬 수 있다. Referring to FIG. 3D, the learning unit 210 inputs a pitch value related to the user's tone included in the voice recording data for each user, a sample script corresponding to the voice data, and a user ID into the synthesized sound prediction model, The synthesized sound prediction model can be trained so that the probability value of each syllable constituting the is maximized.

생성부(220)는 복수의 사용자 단말(사용자의 음성 녹음 데이터를 음성 합성 서비스 제공 서버로 전송한 단말) 중 적어도 하나의 사용자 단말(110)로부터 샘플 요청 명령을 수신하는 경우, 학습된 사용자 단말(110)의 합성음 예측 모델에 기초하여 복수의 샘플 스크립트 중 적어도 하나에 대한 샘플 합성 데이터를 생성할 수 있다. 예를 들어, 생성부(220)는 학습된 사용자 단말(110)의 합성음 예측 모델에 기초하여 적어도 하나의 샘플 스크립트에 사용자의 피치값 및 속도 조절부(250)에 의해 측정된 사용자의 발성 속도가 반영된 샘플 합성 데이터를 생성할 수 있다. When receiving a sample request command from at least one user terminal 110 among a plurality of user terminals (terminals that transmit the user's voice recorded data to the voice synthesis service providing server), the learned user terminal ( Sample synthesis data for at least one of a plurality of sample scripts may be generated based on the synthesized sound prediction model of 110). For example, the generation unit 220 may determine the user's pitch value and the user's speech speed measured by the speed controller 250 in at least one sample script based on the learned synthesized sound prediction model of the user terminal 110. The reflected sample synthesis data can be generated.

제공부(230)는 생성된 샘플 합성 데이터를 사용자 단말(110)에게 제공할 수 있다. The providing unit 230 may provide the generated sample synthesis data to the user terminal 110.

목소리 등록부(240)는 사용자 단말(110)로부터 수신한 샘플 합성 데이터에 대한 품질 만족도 여부에 기초하여 사용자 단말(110)의 사용자에 대한 목소리 정보를 등록할 수 있다. 예를 들어, 사용자가 샘플 합성 데이터에 대한 품질을 만족함을 의미하는 등록 승인 메시지를 사용자 단말(110)로부터 수신한 경우, 목소리 등록부(240)는 사용자 단말(110)의 사용자에 대한 목소리 정보를 등록할 수 있다. 만일, 사용자가 샘플 합성 데이터에 대한 품질의 불만족을 의미하는 등록 미승인 메시지를 사용자 단말(110)로부터 수신한 경우, 학습부(210)는 사용자 단말(110)로부터 사용자의 음성 녹음 데이터를 다시 입력받아 합성음 예측 모델을 재훈련시킬 수 있다. 여기서, 목소리 정보는 합성음 예측 모델에 기초하여 도출된 각 사용자에 대한 피치값을 포함하고, 측정된 사용자의 발성 속도를 더 포함할 수 있다. The voice registration unit 240 may register voice information for a user of the user terminal 110 based on whether or not the quality of the sample synthesis data received from the user terminal 110 is satisfied. For example, when a user receives a registration approval message from the user terminal 110 indicating that the quality of the sample synthesis data is satisfied, the voice registration unit 240 registers the voice information for the user of the user terminal 110 can do. If the user receives a registration unacknowledged message from the user terminal 110 indicating dissatisfaction with the quality of the sample synthesized data, the learning unit 210 receives the user's voice recording data from the user terminal 110 again. The composite sound prediction model can be retrained. Here, the voice information may include a pitch value for each user derived based on the synthesized sound prediction model, and may further include a measured voice speed of the user.

생성부(220)는 사용자 단말(110)로부터 컨텐츠 요청 명령(사용자에 의해 선택된 컨텐츠 스크립트에 대한 정보를 포함)을 수신하는 경우, 기등록된 복수의 컨텐츠 스크립트 중 컨텐츠 요청 명령에 대응하는 컨텐츠 스크립트에 대한 컨텐츠 합성 데이터를 등록된 목소리 정보에 포함된 피치값에 기초하여 생성할 수 있다. When receiving a content request command (including information on a content script selected by the user) from the user terminal 110, the generation unit 220 sends a content script corresponding to the content request command among a plurality of previously registered content scripts. Content synthesis data for the registered voice information may be generated based on a pitch value included in the registered voice information.

생성부(220)는 컨텐츠 요청 명령에 대응하는 컨텐츠 스크립트에 대한 컨텐츠 합성 데이터를 등록된 목소리 정보에 포함된 피치값 및 발성 속도에 기초하여 생성할 수 있다. The generator 220 may generate content synthesis data for a content script corresponding to a content request command based on a pitch value and a speech speed included in the registered voice information.

제공부(230)는 컨텐츠 합성 데이터를 사용자 단말(110)에게 제공할 수 있다. The providing unit 230 may provide the content synthesis data to the user terminal 110.

한편, 당업자라면, 수신부(200), 학습부(210), 생성부(220), 제공부(230), 목소리 등록부(240), 속도 조절부(250), 검증부(260), 휴지기 조정부(270) 및 음성 입력부(280) 각각이 분리되어 구현되거나, 이 중 하나 이상이 통합되어 구현될 수 있음을 충분히 이해할 것이다. On the other hand, those skilled in the art, the receiving unit 200, the learning unit 210, the generating unit 220, the providing unit 230, the voice registration unit 240, the speed control unit 250, the verification unit 260, the pause adjustment unit ( It will be fully understood that each of the 270 and the voice input unit 280 may be implemented separately, or one or more of them may be integrated and implemented.

도 4는 본 발명의 일 실시예에 따른, 도 1에 도시된 사용자 단말(110)의 블록도이다. 4 is a block diagram of the user terminal 110 shown in FIG. 1 according to an embodiment of the present invention.

도 4를 참조하면, 사용자 단말(110)은 전송부(400), 수신부(410), 입력부(420) 및 속도 조절 인터페이스 제공부(430)를 포함할 수 있다. 다만, 도 5에 도시된 사용자 단말(110)은 본 발명의 하나의 구현 예에 불과하며, 도 5에 도시된 구성요소들을 기초로 하여 여러 가지 변형이 가능하다. Referring to FIG. 4, the user terminal 110 may include a transmission unit 400, a reception unit 410, an input unit 420, and a speed control interface providing unit 430. However, the user terminal 110 shown in FIG. 5 is only an example of implementation of the present invention, and various modifications are possible based on the elements shown in FIG. 5.

전송부(400)는 기등록된 복수의 샘플 스크립트 중 적어도 하나에 대한 사용자의 음성 녹음 데이터를 음성 합성 서비스 제공 서버(100)에게 전송할 수 있다. 예를 들어, 도 5를 참조하면, 사용자 목소리가 담긴 동화 컨텐츠의 서비스를 이용하고자 하는 사용자가 '내목소리동화' 어플리케이션을 통해 목소리 녹음(501)을 선택한 경우, 수신부(410)는 음성 합성 서비스 제공 서버(100)로부터 기등록된 복수의 샘플 스크립트 중 랜덤으로 추출된 샘플 스크립트(도 3a의 도면부호 301, 예컨대, '오늘도 어린이는 학교에 일찍 갑니다.')를 수신하여 사용자 단말(110)의 화면에 출력할 수 있다. 전송부(400)는 사용자가 해당 샘플 스크립트에 대하여 사용자의 음성을 녹음한 경우, 사용자의 음성 녹음 데이터와 함께 사용자 단말(110)의 식별 정보를 음성 합성 서비스 제공 서버(100)에게 전송할 수 있다. The transmission unit 400 may transmit the user's voice recording data for at least one of a plurality of previously registered sample scripts to the voice synthesis service providing server 100. For example, referring to FIG. 5, when a user who wants to use the service of moving picture content containing the user's voice selects the voice recording 501 through the'My Voice Fairy Tale' application, the receiver 410 provides a voice synthesis service. The screen of the user terminal 110 receives a sample script randomly extracted from a plurality of sample scripts previously registered from the server 100 (reference numeral 301 in FIG. 3A, for example,'Children go to school early today'). Can be printed on. When the user records the user's voice with respect to the sample script, the transmission unit 400 may transmit identification information of the user terminal 110 together with the user's voice recording data to the voice synthesis service providing server 100.

여기서, 음성 합성 서비스 제공 서버(100)로 전송된 사용자의 음성 녹음 데이터에 대한 발성 속도가 음성 합성 서비스 제공 서버(100)에 의해 측정될 수 있다. Here, the speech speed of the user's voice recorded data transmitted to the voice synthesis service providing server 100 may be measured by the voice synthesis service providing server 100.

속도 조절 인터페이스 제공부(430)는 사용자 단말(110)로 제공된 적어도 하나의 샘플 스크립트에 대한 사용자의 리딩 속도가 기설정된 리딩 속도에 맞게 조절되도록 안내하는 속도 조절 인터페이스(도 3b의 도면부호 303)를 음성 합성 서비스 제공 서버(100)로부터 제공받을 수 있다. 사용자는 샘플 스크립트에 표시되는 속도 조절 인터페이스의 속도에 맞춰서 샘플 스크립트를 리딩할 수 있다. The speed control interface providing unit 430 provides a speed control interface (reference numeral 303 in FIG. 3B) for guiding the user's reading speed for at least one sample script provided to the user terminal 110 to be adjusted according to a preset reading speed. It may be provided from the voice synthesis service providing server 100. The user can read the sample script according to the speed of the speed control interface displayed in the sample script.

속도 조절 인터페이스 제공부(430)는 사용자의 샘플 스크립트에 대한 리딩 속도를 고려하여 해당 샘플 스크립트의 제공 이후에 사용자 단말(110)에게 제공되는 다음 문장에 해당하는 샘플 스크립트에 대한 리딩 속도를 속도 조절 인터페이스의 이동 속도를 통해 조절되도록 속도 조절 인터페이스를 제어할 수 있다. The speed control interface providing unit 430 considers the reading speed of the user's sample script and adjusts the reading speed of the sample script corresponding to the next sentence provided to the user terminal 110 after provision of the sample script. The speed control interface can be controlled to be adjusted through the speed of movement.

음성 합성 서비스 제공 서버(100)로 사용자의 음성 녹음 데이터가 전송되면, 음성 합성 서비스 제공 서버(100)는 사용자의 음성 녹음 데이터에 기초하여 사용자의 목소리 특성과 관련된 합성음 예측 모델을 학습시킬 수 있다. 구체적으로, 음성 합성 서비스 제공 서버(100)는 사용자의 음성 녹음 데이터로부터 사용자의 음색과 관련된 피치값을 도출하고, 도출된 피치값을 이용하여 합성음 예측 모델을 학습시킬 수 있다. When the user's voice recording data is transmitted to the voice synthesis service providing server 100, the voice synthesis service providing server 100 may learn a synthesized sound prediction model related to the user's voice characteristic based on the user's voice recorded data. Specifically, the voice synthesis service providing server 100 may derive a pitch value related to the user's tone from the user's voice recording data, and learn a synthesized tone prediction model using the derived pitch value.

전송부(400)는 음성 합성 서비스 제공 서버(100)에게 음성 합성을 위한 샘플 요청 명령을 전송할 수 있다. 예를 들어, 도 5를 참조하면, 사용자가 '내목소리동화' 어플리케이션을 통해 샘플 합성 데이터 듣기를 위한 인터페이스(503)를 선택한 경우, 전송부(400)는 음성 합성 서비스 제공 서버(100)에게 음성 합성을 위한 샘플 요청 명령을 전송할 수 있다.The transmission unit 400 may transmit a sample request command for speech synthesis to the speech synthesis service providing server 100. For example, referring to FIG. 5, when the user selects the interface 503 for listening to sample synthesis data through the'My Voice Fairy Tale' application, the transmission unit 400 sends a voice to the speech synthesis service providing server 100 A sample request command for synthesis can be transmitted.

이 후, 음성 합성 서비스 제공 서버(100)는 사용자 단말(110)로부터 샘플 요청 명령을 수신하면, 학습된 사용자 단말(110)의 합성음 예측 모델에 기초하여 복수의 샘플 스크립트 중 적어도 하나에 대한 샘플 합성 데이터를 생성하여 이를 사용자 단말(110)에게 전송할 수 있다. 여기서, 적어도 하나에 대한 샘플 합성 데이터는 사용자의 음색과 관련된 피치값 및 사용자의 발성 속도가 반영된 데이터일 수 있다. Thereafter, when receiving the sample request command from the user terminal 110, the speech synthesis service providing server 100 synthesizes a sample for at least one of the plurality of sample scripts based on the learned synthesized sound prediction model of the user terminal 110. Data may be generated and transmitted to the user terminal 110. Here, the sample synthesis data for at least one may be data in which a pitch value related to a user's tone and a user's vocal speed are reflected.

수신부(410)는 학습된 합성음 예측 모델에 기초하여 생성된 적어도 하나에 대한 샘플 합성 데이터를 음성 합성 서비스 제공 서버(100)로부터 수신할 수 있다. The receiver 410 may receive sample synthesis data for at least one generated based on the learned synthesized sound prediction model from the speech synthesis service providing server 100.

입력부(420)는 샘플 합성 데이터에 대한 품질 만족도 정보를 입력받을 수 있다. 예를 들어, 도 5를 참조하면, 입력부(420)는 샘플 합성 데이터의 출력 음성이 종료되면, '내목소리동화' 어플리케이션을 통해 해당 샘플 합성 데이터에 대한 품질 만족도 정보를 만족 버튼 또는 불만족 버튼(505)을 통해 입력받을 수 있다. The input unit 420 may receive quality satisfaction information for the sample synthesis data. For example, referring to FIG. 5, when the output voice of the sample synthesis data is finished, the input unit 420 satisfies the quality satisfaction information for the sample synthesis data through the'My Voice Fairy Tale' application or a dissatisfaction button 505. ) Can be entered.

전송부(400)는 샘플 합성 데이터에 대하여 입력된 품질 만족도 정보를 음성 합성 서비스 제공 서버(100)에게 전송할 수 있다. The transmission unit 400 may transmit quality satisfaction information input for the sample synthesis data to the speech synthesis service providing server 100.

샘플 합성 데이터에 대한 품질 만족도 여부에 기초하여 사용자 단말(110)의 사용자에 대한 목소리 정보가 음성 합성 서비스 제공 서버(100)에 등록될 수 있다. 여기서, 목소리 정보는 합성음 예측 모델에 기초하여 도출된 사용자에 대한 피치값을 포함할 수 있다. 또한, 목소리 정보는 사용자의 음성 녹음 데이터에 대한 발성 속도를 더 포함할 수 있다. Voice information for the user of the user terminal 110 may be registered in the voice synthesis service providing server 100 based on whether or not the sample synthesis data is satisfied with quality. Here, the voice information may include a pitch value for a user derived based on the synthesized sound prediction model. In addition, the voice information may further include a voice speed of the user's voice recording data.

예를 들어, 사용자가 샘플 합성 데이터에 대한 품질을 만족하는 경우에는 사용자에 대한 목소리 정보가 음성 합성 서비스 제공 서버(100)에 등록되나, 사용자가 샘플 합성 데이터에 대한 품질을 만족하지 않은 경우에는 사용자가 음성 녹음 데이터를 재입력하고, 음성 합성 서비스 제공 서버(100)는 재입력된 음성 녹음 데이터로 합성음 예측 모델을 재훈련시킬 수 있다. For example, if the user satisfies the quality of the sample synthesis data, voice information for the user is registered in the speech synthesis service providing server 100, but if the user does not satisfy the quality of the sample synthesis data, the user The voice recording data is re-entered, and the voice synthesis service providing server 100 may retrain the synthesized sound prediction model with the re-input voice recording data.

전송부(400)는 컨텐츠 요청 명령을 음성 합성 서비스 제공 서버(100)에게 전송할 수 있다. 예를 들어, 도 5를 참조하면, 샘플 합성 데이터에 대한 품질 만족도로 음성 합성 서비스 제공 서버(100)에 사용자에 대한 목소리 정보가 등록된 이후, 전송부(400)는 기등록된 복수의 컨텐츠 스크립트(507) 중 사용자에 의해 선택된 컨텐츠 스크립트에 대한 컨텐츠 요청 명령을 음성 합성 서비스 제공 서버(100)에게 전송할 수 있다. The transmission unit 400 may transmit a content request command to the voice synthesis service providing server 100. For example, referring to FIG. 5, after the voice information for the user is registered in the voice synthesis service providing server 100 with quality satisfaction for the sample synthesis data, the transmission unit 400 is configured to provide a plurality of previously registered content scripts. In 507, a content request command for a content script selected by a user may be transmitted to the voice synthesis service providing server 100.

수신부(410)는 등록된 사용자에 대한 목소리 정보에 포함된 피치값에 기초하여 생성된 컨텐츠 합성 데이터를 음성 합성 서비스 제공 서버(100)로부터 수신할 수 있다. 여기서, 컨텐츠 합성 데이터는 기등록된 복수의 컨텐츠 스크립트 중 컨텐츠 요청 명령에 대응하는 컨텐츠 스크립트에 대한 컨텐츠 합성 데이터일 수 있다. 컨텐츠 합성 데이터는 등록된 사용자의 목소리 정보에 포함된 피치값 및 발성 속도에 기초하여 생성될 수 있다. The receiver 410 may receive content synthesis data generated based on a pitch value included in voice information for a registered user from the voice synthesis service providing server 100. Here, the content synthesis data may be content synthesis data for a content script corresponding to a content request command among a plurality of previously registered content scripts. The content synthesis data may be generated based on a pitch value and a speech speed included in the registered user's voice information.

한편, 당업자라면, 전송부(400), 수신부(410), 입력부(420) 및 속도 조절 인터페이스 제공부(430) 각각이 분리되어 구현되거나, 이 중 하나 이상이 통합되어 구현될 수 있음을 충분히 이해할 것이다. On the other hand, those skilled in the art will fully understand that each of the transmission unit 400, the reception unit 410, the input unit 420, and the speed control interface providing unit 430 may be implemented separately, or one or more of them may be integrated and implemented. will be.

도 6은 본 발명의 일 실시예에 따른, 음성 합성 서비스 제공 방법을 나타낸 흐름도이다. 6 is a flowchart illustrating a method of providing a speech synthesis service according to an embodiment of the present invention.

도 6을 참조하면, 단계 S601에서 음성 합성 서비스 제공 서버(100)는 복수의 사용자 단말로부터 기등록된 복수의 샘플 스크립트 중 적어도 하나에 대한 복수의 사용자의 음성 녹음 데이터를 수신할 수 있다. Referring to FIG. 6, in step S601, the voice synthesis service providing server 100 may receive voice recording data of a plurality of users for at least one of a plurality of sample scripts previously registered from a plurality of user terminals.

단계 S603에서 음성 합성 서비스 제공 서버(100)는 복수의 사용자 단말 별로 수신된 음성 녹음 데이터에 기초하여 각 사용자의 음색과 관련된 피치값에 대한 합성음 예측 모델을 학습시킬 수 있다. In step S603, the voice synthesis service providing server 100 may learn a synthesized sound prediction model for a pitch value related to the tone of each user based on the voice recording data received for each of the plurality of user terminals.

단계 S605에서 음성 합성 서비스 제공 서버(100)는 사용자 단말(110)로부터 샘플 요청 명령을 수신하는 경우, 학습된 사용자 단말(110)에 해당하는 합성음 예측 모델에 기초하여 복수의 샘플 스크립트 중 적어도 하나에 대한 샘플 합성 데이터를 생성할 수 있다. In step S605, when receiving a sample request command from the user terminal 110, the speech synthesis service providing server 100 may use at least one of the plurality of sample scripts based on the synthesized sound prediction model corresponding to the learned user terminal 110. Sample synthesis data can be generated.

단계 S607에서 음성 합성 서비스 제공 서버(100)는 생성된 샘플 합성 데이터를 사용자 단말(110)에게 제공할 수 있다. In step S607, the voice synthesis service providing server 100 may provide the generated sample synthesis data to the user terminal 110.

단계 S609에서 음성 합성 서비스 제공 서버(100)는 사용자 단말(110)로부터 수신한 샘플 합성 데이터에 대한 품질 만족도 여부에 기초하여 사용자 단말(110)의 사용자에 대한 목소리 정보를 등록할 수 있다. In step S609, the voice synthesis service providing server 100 may register voice information for a user of the user terminal 110 based on whether or not the quality of the sample synthesis data received from the user terminal 110 is satisfied.

상술한 설명에서, 단계 S601 내지 S609는 본 발명의 구현예에 따라서, 추가적인 단계들로 더 분할되거나, 더 적은 단계들로 조합될 수 있다. 또한, 일부 단계는 필요에 따라 생략될 수도 있고, 단계 간의 순서가 변경될 수도 있다. In the above description, steps S601 to S609 may be further divided into additional steps or combined into fewer steps, according to an embodiment of the present invention. In addition, some steps may be omitted as necessary, and the order between steps may be changed.

본 발명의 일 실시예는 컴퓨터에 의해 실행되는 프로그램 모듈과 같은 컴퓨터에 의해 실행 가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다. An embodiment of the present invention may also be implemented in the form of a recording medium including instructions executable by a computer, such as a program module executed by a computer. Computer-readable media can be any available media that can be accessed by a computer, and includes both volatile and nonvolatile media, removable and non-removable media. Further, the computer-readable medium may include all computer storage media. Computer storage media includes both volatile and nonvolatile, removable and non-removable media implemented in any method or technology for storage of information such as computer readable instructions, data structures, program modules or other data.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다. The above description of the present invention is for illustrative purposes only, and those of ordinary skill in the art to which the present invention pertains will be able to understand that it can be easily modified into other specific forms without changing the technical spirit or essential features of the present invention. will be. Therefore, it should be understood that the embodiments described above are illustrative in all respects and not limiting. For example, each component described as a single type may be implemented in a distributed manner, and similarly, components described as being distributed may also be implemented in a combined form.

본 발명의 범위는 상세한 설명보다는 후술하는 특허청구범위에 의하여 나타내어지며, 특허청구범위의 의미 및 범위 그리고 그 균등 개념으로부터 도출되는 모든 변경 또는 변형된 형태가 본 발명의 범위에 포함되는 것으로 해석되어야 한다. The scope of the present invention is indicated by the claims to be described later rather than the detailed description, and all changes or modified forms derived from the meaning and scope of the claims and their equivalent concepts should be interpreted as being included in the scope of the present invention. .

100: 음성 합성 서비스 제공 서버
110: 사용자 단말
200: 수신부
210: 학습부
220: 생성부
230: 제공부
240: 목소리 등록부
250: 속도 조절부
260: 검증부
270: 휴지기 조정부
280: 음성 입력부
500: 전송부
510: 수신부
520: 입력부
530: 속도 조절 인터페이스 제공부
100: voice synthesis service providing server
110: user terminal
200: receiver
210: learning department
220: generation unit
230: provision
240: voice register
250: speed control unit
260: verification unit
270: pause adjustment unit
280: voice input unit
500: transmission unit
510: receiver
520: input unit
530: speed control interface providing unit

Claims (18)

음성 합성 서비스를 제공하는 서버에 있어서,
기등록된 복수의 샘플 스크립트 중 적어도 하나에 대한 복수의 사용자의 음성 녹음 데이터를 수신하는 수신부;
상기 수신된 음성 녹음 데이터에 기초하여 각 사용자의 음색과 관련된 피치값에 대한 합성음 예측 모델을 학습시키는 학습부;
사용자 단말로부터 샘플 요청 명령을 수신하는 경우, 상기 학습된 합성음 예측 모델에 기초하여 상기 복수의 샘플 스크립트 중 적어도 하나에 대한 샘플 합성 데이터를 생성하는 생성부;
상기 샘플 합성 데이터를 상기 사용자 단말로 제공하는 제공부; 및
상기 사용자 단말로부터 수신한 상기 샘플 합성 데이터에 대한 품질 만족도 여부에 기초하여 상기 사용자 단말의 사용자에 대한 목소리 정보를 등록하는 목소리 등록부
를 포함하는 것인, 음성 합성 서비스 제공 서버.
In the server providing a speech synthesis service,
A receiver for receiving voice recording data of a plurality of users for at least one of a plurality of previously registered sample scripts;
A learning unit for learning a synthesized sound prediction model for a pitch value related to the tone of each user based on the received voice recording data;
A generator configured to generate sample synthesis data for at least one of the plurality of sample scripts based on the learned synthesized sound prediction model when receiving a sample request command from a user terminal;
A providing unit for providing the sample synthesis data to the user terminal; And
A voice registration unit that registers voice information for a user of the user terminal based on quality satisfaction with respect to the sample synthesis data received from the user terminal
That includes, a voice synthesis service providing server.
제 1 항에 있어서,
상기 목소리 정보는 상기 합성음 예측 모델에 기초하여 도출된 상기 사용자에 대한 피치값을 포함하는 것인, 음성 합성 서비스 제공 서버
The method of claim 1,
The voice information includes a pitch value for the user derived based on the synthesized sound prediction model.
제 2 항에 있어서,
상기 생성부는 상기 사용자 단말로부터 컨텐츠 요청 명령을 수신하는 경우, 기등록된 복수의 컨텐츠 스크립트 중 상기 컨텐츠 요청 명령에 대응하는 컨텐츠 스크립트에 대한 컨텐츠 합성 데이터를 상기 등록된 목소리 정보에 포함된 피치값에 기초하여 생성하고,
상기 제공부는 상기 컨텐츠 합성 데이터를 상기 사용자 단말에게 제공하는 것인, 음성 합성 서비스 제공 서버.
The method of claim 2,
When receiving a content request command from the user terminal, the generation unit determines content synthesis data for a content script corresponding to the content request command among a plurality of previously registered content scripts based on a pitch value included in the registered voice information. And create it,
The providing unit to provide the content synthesis data to the user terminal, the voice synthesis service providing server.
제 3 항에 있어서,
상기 적어도 하나의 샘플 스크립트에 대한 리딩 속도가 기설정된 리딩 속도에 맞게 조절되도록 속도 조절 인터페이스를 사용자 단말로 제공하는 속도 조절부를 더 포함하는 것인, 음성 합성 서비스 제공 서버.
The method of claim 3,
The speech synthesis service providing server further comprising a speed control unit for providing a speed control interface to a user terminal so that the reading speed for the at least one sample script is adjusted to fit a preset reading speed.
제 4 항에 있어서,
상기 속도 조절부는 상기 수신한 음성 녹음 데이터에 대한 발성 속도를 각 사용자 별로 측정하고,
상기 목소리 정보는 상기 각 사용자 별로 측정된 발성 속도를 더 포함하는 것인, 음성 합성 서비스 제공 서버.
The method of claim 4,
The speed control unit measures the speech speed of the received voice recording data for each user,
The voice information further includes a speech speed measured for each user.
제 5 항에 있어서,
상기 생성부는 상기 컨텐츠 요청 명령에 대응하는 컨텐츠 스크립트에 대한 컨텐츠 합성 데이터를 상기 등록된 목소리 정보에 포함된 피치값 및 발성 속도에 기초하여 생성하는 것인, 음성 합성 서비스 제공 서버.
The method of claim 5,
The generation unit generates content synthesis data for a content script corresponding to the content request command based on a pitch value and a speech speed included in the registered voice information.
제 1 항에 있어서,
상기 학습부는 상기 수신한 음성 녹음 데이터를 구성하는 각 음절의 확률값이 상기 피치값과 관련하여 최대가 되도록 상기 합성음 예측 모델을 학습시키는 것인, 음성 합성 서비스 제공 서버.
The method of claim 1,
Wherein the learning unit trains the synthesized sound prediction model so that a probability value of each syllable constituting the received voice recording data becomes maximum in relation to the pitch value.
제 1 항에 있어서,
상기 수신한 음성 녹음 데이터에 대한 발음 정확성을 검증하는 검증부
를 더 포함하는 것인, 음성 합성 서비스 제공 서버.
The method of claim 1,
Verification unit for verifying accuracy of pronunciation of the received voice recording data
That further comprises a voice synthesis service providing server.
제 8 항에 있어서,
상기 검증부는 상기 수신한 음성 녹음 데이터에 대한 음성 인식을 수행하고, 상기 수신한 음성 녹음 데이터에 대한 음성 인식 수행 결과 및 상기 수신한 음성 녹음 데이터에 대응하는 샘플 스크립트 간의 유사도가 기설정된 임계값 이하로 나타난 경우, 상기 수신한 음성 녹음 데이터에 대한 발음 정확성이 부정확하다고 판단하는 것인, 음성 합성 서비스 제공 서버.
The method of claim 8,
The verification unit performs voice recognition on the received voice recording data, and a similarity between the result of performing voice recognition on the received voice recording data and a sample script corresponding to the received voice recording data is less than a preset threshold. If it appears, it is to determine that the pronunciation accuracy of the received voice recording data is incorrect.
제 9 항에 있어서,
상기 수신한 음성 녹음 데이터에 대한 발음 정확성이 부정확하다고 판단된 경우, 상기 샘플 스크립트에 대한 새로운 음성 녹음 데이터를 재입력받도록 하는 음성 입력부를 더 포함하는 것인, 음성 합성 서비스 제공 서버.
The method of claim 9,
When it is determined that the pronunciation accuracy of the received voice recording data is inaccurate, the voice synthesis service providing server further comprises a voice input unit configured to re-input new voice recording data for the sample script.
제 1 항에 있어서,
상기 음성 녹음 데이터으로부터 검출된 적어도 하나의 음성 구간 간 휴지기 추정 신뢰도를 계산하고, 상기 계산된 휴지기 추정 신뢰도에 기초하여 상기 음성 구간 간의 휴지기를 조정하는 휴지기 조정부를 더 포함하는 것인, 음성 합성 서비스 제공 서버.
The method of claim 1,
Providing a speech synthesis service further comprising a pause adjustment unit for calculating a pause estimation reliability between at least one voice interval detected from the voice recording data, and adjusting a pause between the speech intervals based on the calculated pause estimation reliability server.
음성 합성 서비스를 제공받는 사용자 단말에 있어서,
기등록된 복수의 샘플 스크립트 중 적어도 하나에 대한 사용자의 음성 녹음 데이터를 음성 합성 서비스 제공 서버로 전송하는 전송부;
상기 음성 합성 서비스 제공 서버로 음성 합성을 위한 샘플 요청 명령을 전송한 경우, 학습된 합성음 예측 모델에 기초하여 생성된 적어도 하나에 대한 샘플 합성 데이터를 상기 음성 합성 서비스 제공 서버로부터 수신하는 수신부; 및
상기 샘플 합성 데이터에 대한 품질 만족도 정보를 입력받는 입력부;
상기 전송부는 상기 입력된 품질 만족도 정보를 상기 음성 합성 서비스 제공 서버로 전송하고,
상기 합성음 예측 모델은 상기 적어도 하나에 대한 사용자의 음성 녹음 데이터에 기초하여 상기 사용자의 음색과 관련된 피치값에 대하여 학습된 모델이고,
상기 샘플 합성 데이터에 대한 품질 만족도 여부에 기초하여 상기 사용자에 대한 목소리 정보가 상기 음성 합성 서비스 제공 서버에 등록되는 것인, 사용자 단말.
In a user terminal receiving a speech synthesis service,
A transmission unit for transmitting the user's voice recording data for at least one of a plurality of previously registered sample scripts to a voice synthesis service providing server;
A receiver configured to receive, from the speech synthesis service providing server, sample synthesis data for at least one generated based on the learned synthesized sound prediction model when a sample request command for speech synthesis is transmitted to the speech synthesis service providing server; And
An input unit for receiving quality satisfaction information for the sample synthesis data;
The transmission unit transmits the input quality satisfaction information to the voice synthesis service providing server,
The synthesized sound prediction model is a model trained on a pitch value related to the user's tone based on the user's voice recording data for the at least one,
The user terminal, wherein the voice information for the user is registered in the voice synthesis service providing server based on whether or not the quality of the sample synthesis data is satisfied.
제 12 항에 있어서,
상기 목소리 정보는 상기 합성음 예측 모델에 기초하여 도출된 상기 사용자에 대한 피치값을 포함하는 것인, 사용자 단말.
The method of claim 12,
The voice information includes a pitch value for the user derived based on the synthesized sound prediction model.
제 13 항에 있어서,
상기 전송부는 컨텐츠 요청 명령을 상기 음성 합성 서비스 제공 서버로 전송하고,
상기 수신부는 상기 등록된 사용자에 대한 목소리 정보에 포함된 피치값에 기초하여 생성된 컨텐츠 합성 데이터를 상기 음성 합성 서비스 제공 서버로부터 수신하고,
상기 컨텐츠 합성 데이터는 기등록된 복수의 컨텐츠 스크립트 중 상기 컨텐츠 요청 명령에 대응하는 컨텐츠 스크립트에 대한 컨텐츠 합성 데이터인 것인, 사용자 단말.
The method of claim 13,
The transmission unit transmits a content request command to the voice synthesis service providing server,
The receiver receives content synthesis data generated based on a pitch value included in the voice information for the registered user from the voice synthesis service providing server,
The content synthesis data is content synthesis data for a content script corresponding to the content request command among a plurality of previously registered content scripts.
제 14 항에 있어서,
상기 적어도 하나의 샘플 스크립트에 대한 상기 사용자의 리딩 속도가 기설정된 리딩 속도에 맞게 조절되도록 안내하는 속도 조절 인터페이스를 상기 음성 합성 서비스 제공 서버로부터 제공받는 속도 조절 인터페이스 제공부를 더 포함하는 것인, 사용자 단말.
The method of claim 14,
The user terminal further comprising a speed control interface providing unit provided from the voice synthesis service providing server with a speed control interface guiding the user's reading speed with respect to the at least one sample script to be adjusted according to a preset reading speed. .
제 15 항에 있어서,
상기 음성 합성 서비스 제공 서버로 전송된 상기 사용자의 음성 녹음 데이터에 대한 발성 속도가 상기 음성 합성 서비스 제공 서버에 의해 측정되고,
상기 목소리 정보는 상기 사용자의 음성 녹음 데이터에 대한 발성 속도를 더 포함하는 것인, 사용자 단말.
The method of claim 15,
The speech speed of the voice recording data of the user transmitted to the voice synthesis service providing server is measured by the voice synthesis service providing server,
The voice information further includes a speech speed of the user's voice recording data.
제 16 항에 있어서,
상기 컨텐츠 합성 데이터는 상기 등록된 사용자의 목소리 정보에 포함된 피치값 및 발성 속도에 기초하여 생성된 것인, 사용자 단말.
The method of claim 16,
The content synthesis data is generated based on a pitch value and a speech speed included in the registered user's voice information.
음성 합성 서비스 제공 서버에 의해 음성 합성 서비스를 제공하는 방법에 있어서,
기등록된 복수의 샘플 스크립트 중 적어도 하나에 대한 복수의 사용자의 음성 녹음 데이터를 수신하는 단계;
상기 수신된 음성 녹음 데이터에 기초하여 각 사용자의 음색과 관련된 피치값에 대한 합성음 예측 모델을 학습시키는 단계;
사용자 단말로부터 샘플 요청 명령을 수신하는 경우, 상기 학습된 합성음 예측 모델에 기초하여 상기 복수의 샘플 스크립트 중 적어도 하나에 대한 샘플 합성 데이터를 생성하는 단계;
상기 샘플 합성 데이터를 상기 사용자 단말로 제공하는 단계; 및
상기 사용자 단말로부터 수신한 상기 샘플 합성 데이터에 대한 품질 만족도 여부에 기초하여 상기 사용자 단말의 사용자에 대한 목소리 정보를 등록하는 단계를 포함하는 것인, 음성 합성 서비스 제공 방법.
In the method of providing a speech synthesis service by a speech synthesis service providing server,
Receiving voice recording data of a plurality of users for at least one of a plurality of previously registered sample scripts;
Learning a synthesized sound prediction model for a pitch value related to each user's tone based on the received voice recording data;
Generating sample synthesis data for at least one of the plurality of sample scripts based on the learned synthesized sound prediction model when receiving a sample request command from a user terminal;
Providing the sample synthesis data to the user terminal; And
And registering voice information for a user of the user terminal based on whether or not the quality of the sample synthesis data received from the user terminal is satisfied.
KR1020190092721A 2019-07-30 2019-07-30 Server, device and method for providing speech systhesis service KR102479899B1 (en)

Priority Applications (2)

Application Number Priority Date Filing Date Title
KR1020190092721A KR102479899B1 (en) 2019-07-30 2019-07-30 Server, device and method for providing speech systhesis service
KR1020220170527A KR20230006627A (en) 2019-07-30 2022-12-08 Server, device and method for providing speech systhesis service

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020190092721A KR102479899B1 (en) 2019-07-30 2019-07-30 Server, device and method for providing speech systhesis service

Related Child Applications (1)

Application Number Title Priority Date Filing Date
KR1020220170527A Division KR20230006627A (en) 2019-07-30 2022-12-08 Server, device and method for providing speech systhesis service

Publications (2)

Publication Number Publication Date
KR20210014526A true KR20210014526A (en) 2021-02-09
KR102479899B1 KR102479899B1 (en) 2022-12-21

Family

ID=74559034

Family Applications (2)

Application Number Title Priority Date Filing Date
KR1020190092721A KR102479899B1 (en) 2019-07-30 2019-07-30 Server, device and method for providing speech systhesis service
KR1020220170527A KR20230006627A (en) 2019-07-30 2022-12-08 Server, device and method for providing speech systhesis service

Family Applications After (1)

Application Number Title Priority Date Filing Date
KR1020220170527A KR20230006627A (en) 2019-07-30 2022-12-08 Server, device and method for providing speech systhesis service

Country Status (1)

Country Link
KR (2) KR102479899B1 (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960007129A (en) 1994-08-27 1996-03-22 귄터 헤게만/헬무쓰 후버 Manufacturing method and apparatus of press parts
KR960030185A (en) * 1995-01-25 1996-08-17 조백제 How to adjust the pronunciation speed using the rest period length control
KR20050041749A (en) * 2003-10-31 2005-05-04 한국전자통신연구원 Voice synthesis apparatus depending on domain and speaker by using broadcasting voice data, method for forming voice synthesis database and voice synthesis service system
WO2010104040A1 (en) * 2009-03-09 2010-09-16 国立大学法人豊橋技術科学大学 Voice synthesis apparatus based on single-model voice recognition synthesis, voice synthesis method and voice synthesis program
KR20150044495A (en) * 2013-10-16 2015-04-27 (주)컴버스테크 System and method for processing virtual interview based speech recognition
KR20160049804A (en) * 2014-10-28 2016-05-10 현대모비스 주식회사 Apparatus and method for controlling outputting target information to voice using characteristic of user voice

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR960007129A (en) 1994-08-27 1996-03-22 귄터 헤게만/헬무쓰 후버 Manufacturing method and apparatus of press parts
KR960030185A (en) * 1995-01-25 1996-08-17 조백제 How to adjust the pronunciation speed using the rest period length control
KR20050041749A (en) * 2003-10-31 2005-05-04 한국전자통신연구원 Voice synthesis apparatus depending on domain and speaker by using broadcasting voice data, method for forming voice synthesis database and voice synthesis service system
WO2010104040A1 (en) * 2009-03-09 2010-09-16 国立大学法人豊橋技術科学大学 Voice synthesis apparatus based on single-model voice recognition synthesis, voice synthesis method and voice synthesis program
KR20150044495A (en) * 2013-10-16 2015-04-27 (주)컴버스테크 System and method for processing virtual interview based speech recognition
KR20160049804A (en) * 2014-10-28 2016-05-10 현대모비스 주식회사 Apparatus and method for controlling outputting target information to voice using characteristic of user voice

Also Published As

Publication number Publication date
KR102479899B1 (en) 2022-12-21
KR20230006627A (en) 2023-01-10

Similar Documents

Publication Publication Date Title
JP6538779B2 (en) Speech dialogue system, speech dialogue method and method for adapting a speech dialogue system
KR101963993B1 (en) Identification system and method with self-learning function based on dynamic password voice
JP4271224B2 (en) Speech translation apparatus, speech translation method, speech translation program and system
US20060053014A1 (en) Standard model creating device and standard model creating method
WO2019214456A1 (en) Gesture language translation system and method, and server
JP2020067658A (en) Device and method for recognizing voice, and device and method for training voice recognition model
CN114051639A (en) Emotion detection using speaker baseline
CN104835493A (en) Speech synthesis dictionary generation apparatus and speech synthesis dictionary generation method
CN107909995B (en) Voice interaction method and device
US20190206386A1 (en) Method and system for text-to-speech synthesis
US20230110002A1 (en) Video highlight extraction method and system, and storage medium
JP2015148701A (en) Robot control device, robot control method and robot control program
WO2022227935A1 (en) Speech recognition method and apparatus, and device, storage medium and program product
GB2516942A (en) Text to Speech Conversion
CN112185363A (en) Audio processing method and device
CN116092469A (en) Model training method and voice synthesis method based on semi-supervised knowledge distillation
KR102479899B1 (en) Server, device and method for providing speech systhesis service
KR20220154655A (en) Device, method and computer program for generating voice data based on family relationship
JP6233103B2 (en) Speech synthesis apparatus, speech synthesis method, and speech synthesis program
TWI402824B (en) A pronunciation variation generation method for spontaneous speech synthesis
US11485022B2 (en) Dialogue apparatus and control program for dialogue apparatus
EP4205104A1 (en) System and method for speech processing
KR20220136844A (en) Method of obtaining client's approval for recording the sounds and video and the apparatus thereof
KR20220136846A (en) Method of feedback salesman by analyzing the sounds or face image of both themselves and client and the apparatus thereof
KR20210131125A (en) Learning device and device for speaking rate controllable text-to-speech

Legal Events

Date Code Title Description
E902 Notification of reason for refusal
E90F Notification of reason for final refusal
E701 Decision to grant or registration of patent right
A107 Divisional application of patent