KR102574311B1 - Apparatus, terminal and method for providing speech synthesizer service - Google Patents
Apparatus, terminal and method for providing speech synthesizer service Download PDFInfo
- Publication number
- KR102574311B1 KR102574311B1 KR1020200133907A KR20200133907A KR102574311B1 KR 102574311 B1 KR102574311 B1 KR 102574311B1 KR 1020200133907 A KR1020200133907 A KR 1020200133907A KR 20200133907 A KR20200133907 A KR 20200133907A KR 102574311 B1 KR102574311 B1 KR 102574311B1
- Authority
- KR
- South Korea
- Prior art keywords
- voice
- user
- information
- text
- data
- Prior art date
Links
- 238000000034 method Methods 0.000 title claims abstract description 33
- 230000015572 biosynthetic process Effects 0.000 claims abstract description 125
- 238000003786 synthesis reaction Methods 0.000 claims abstract description 125
- 239000000284 extract Substances 0.000 claims abstract description 37
- 238000010801 machine learning Methods 0.000 claims abstract description 24
- 239000013598 vector Substances 0.000 claims description 30
- 238000013461 design Methods 0.000 claims description 13
- 238000000605 extraction Methods 0.000 claims description 13
- 238000001228 spectrum Methods 0.000 claims description 7
- 239000011159 matrix material Substances 0.000 claims description 5
- 230000003595 spectral effect Effects 0.000 claims description 4
- 238000004891 communication Methods 0.000 description 17
- 238000010586 diagram Methods 0.000 description 10
- 238000005516 engineering process Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 230000001737 promoting effect Effects 0.000 description 5
- 238000013528 artificial neural network Methods 0.000 description 4
- 230000000694 effects Effects 0.000 description 4
- 230000001413 cellular effect Effects 0.000 description 2
- 230000006870 function Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 210000002569 neuron Anatomy 0.000 description 2
- 238000003672 processing method Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 210000000225 synapse Anatomy 0.000 description 2
- 241000282412 Homo Species 0.000 description 1
- 238000004458 analytical method Methods 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000013527 convolutional neural network Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002996 emotional effect Effects 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000002156 mixing Methods 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 229920001690 polydopamine Polymers 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 230000005236 sound signal Effects 0.000 description 1
- 230000002194 synthesizing effect Effects 0.000 description 1
- 238000012549 training Methods 0.000 description 1
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L13/00—Speech synthesis; Text to speech systems
- G10L13/08—Text analysis or generation of parameters for speech synthesis out of text, e.g. grapheme to phoneme translation, prosody generation or stress or intonation determination
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N20/00—Machine learning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- G06Q50/00—Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
- G06Q50/10—Services
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/02—Feature extraction for speech recognition; Selection of recognition unit
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10L—SPEECH ANALYSIS TECHNIQUES OR SPEECH SYNTHESIS; SPEECH RECOGNITION; SPEECH OR VOICE PROCESSING TECHNIQUES; SPEECH OR AUDIO CODING OR DECODING
- G10L15/00—Speech recognition
- G10L15/08—Speech classification or search
- G10L15/16—Speech classification or search using artificial neural networks
-
- G—PHYSICS
- G11—INFORMATION STORAGE
- G11B—INFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
- G11B20/00—Signal processing not specific to the method of recording or reproducing; Circuits therefor
- G11B20/10—Digital recording or reproducing
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/4302—Content synchronisation processes, e.g. decoder synchronisation
- H04N21/4307—Synchronising the rendering of multiple content streams or additional data on devices, e.g. synchronisation of audio on a mobile phone with the video output on the TV screen
Landscapes
- Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- Multimedia (AREA)
- Health & Medical Sciences (AREA)
- Business, Economics & Management (AREA)
- Computational Linguistics (AREA)
- Audiology, Speech & Language Pathology (AREA)
- Human Computer Interaction (AREA)
- Acoustics & Sound (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- General Physics & Mathematics (AREA)
- Evolutionary Computation (AREA)
- Tourism & Hospitality (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Signal Processing (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Mathematical Physics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Medical Informatics (AREA)
- Economics (AREA)
- General Health & Medical Sciences (AREA)
- Human Resources & Organizations (AREA)
- Marketing (AREA)
- Primary Health Care (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Telephonic Communication Services (AREA)
Abstract
음성 합성 서비스를 제공하는 장치, 단말기 및 방법이 개시된다. 본 발명의 일 측면에 따른 음성 합성 서비스 제공 장치는 음성 데이터베이스, 제시어에 대한 사용자의 음성 샘플 정보를 수신하고, 상기 음성 샘플 정보로부터 상기 사용자의 음성 특징 정보를 추출하며, 상기 음성 특징 정보를 상기 음성 데이터베이스에 저장하는 음성 특징 추출부, 상기 사용자로부터 텍스트를 포함하는 음성 합성 요청 신호 수신 시, 상기 음성 데이터베이스로부터 상기 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성하는 음성 합성 서비스부를 포함한다. An apparatus, terminal, and method for providing a voice synthesis service are disclosed. An apparatus for providing a speech synthesis service according to an aspect of the present invention receives information about a user's voice sample for a voice database and a suggested word, extracts voice characteristic information of the user from the voice sample information, and converts the voice characteristic information to the voice A voice feature extractor storing in a database, when receiving a voice synthesis request signal including text from the user, extracts the user's voice feature information from the voice database, and applies the voice feature information and the text to machine learning and a voice synthesis service unit generating voice data for the text.
Description
본 발명은 음성 합성 서비스를 제공하는 장치, 단말기 및 방법에 관한 것으로서, 보다 상세하게는 입력된 텍스트를 사용자의 음성으로 변환하여 제공할 수 있는 음성 합성 서비스를 제공하는 장치, 단말기 및 방법에 관한 것이다. The present invention relates to an apparatus, terminal, and method for providing a voice synthesis service, and more particularly, to an apparatus, terminal, and method for providing a speech synthesis service capable of converting input text into a user's voice and providing the same. .
최근 음성 합성 기술의 발전과 함께 음성 합성 기술은 각종 음성 안내, 교육 분야 등에 널리 사용되고 있다. 음성 합성은 사람이 말하는 소리와 유사한 소리를 생성해내는 기술로 흔히 TTS(Text To Speech) 시스템으로도 알려져 있다. With the recent development of voice synthesis technology, voice synthesis technology is widely used in various voice guidance and educational fields. Speech synthesis is a technology for generating a sound similar to a human speaking sound, and is commonly known as a Text To Speech (TTS) system.
TTS(Text To Speech)는 문자 또는 기호를 음성으로 변환하여 들려주는 기술이다. TTS는 음소에 대한 발음 데이터베이스를 구축하고 이를 연결하여 연속된 음성을 생성하는데, 이때 음성의 크기, 길이 높낮이 등을 조절하여 자연스러운 음성을 합성하는 것이 관건이다.Text To Speech (TTS) is a technology that converts text or symbols into voices to be heard. TTS builds a pronunciation database for phonemes and connects them to generate a continuous voice. At this time, the key is to synthesize a natural voice by adjusting the volume, length, and height of the voice.
즉, TTS는 문자열(문장)을 음성으로 변환하는 문자-음성 변환 장치로서, 크게 언어 처리, 운율 생성, 파형 합성 등의 3단계로 나누어지는데, 텍스트가 입력되면 언어 처리 과정에서 입력된 문서의 문법적 구조를 분석하고, 분석된 문서 구조에 의해 사람이 읽는 것과 같은 운율을 생성하고, 생성된 운율에 따라 저장된 음성 DB의 기본 단위를 모아 합성음을 생성한다.In other words, TTS is a text-to-speech conversion device that converts character strings (sentences) into voice, and is largely divided into three steps: language processing, rhyme generation, and waveform synthesis. The structure is analyzed, and a prosody like a human read is generated by the analyzed document structure, and a synthesized sound is generated by collecting basic units of a voice DB stored according to the generated prosody.
TTS는 대상 어휘에 제한이 없으며, 일반적인 문자 형태의 정보를 음성으로 변환하는 것이므로, 시스템의 구현 시 음성학, 음성 분석, 음성 합성 및 음성인식 기술 등이 접목되어 보다 자연스럽고 다양한 음성이 출력된다.Since TTS has no restrictions on target vocabulary and converts general text-type information into voice, more natural and diverse voices are output by combining phonetics, voice analysis, voice synthesis, and voice recognition technologies when implementing the system.
그러나 이러한 종래의 TTS를 제공하는 단말은 문자 메시지 등의 음성을 출력하는 경우 상대방이 누구인지 관계없이 기 설정된 항상 동일한 음성으로 출력하기 때문에 다양한 사용자의 욕구를 만족시키지 못하는 문제점이 있었다.However, when a terminal providing such a conventional TTS outputs a voice such as a text message, it does not satisfy the needs of various users because it always outputs the same preset voice regardless of who the other party is.
본 발명의 배경기술은 대한민국 공개특허공보 제2011-0032256호(2011. 03. 30 공개, 발명의 명칭: 매장 음원 방송시스템의 TTS 안내방송 장치 및 방법)에 개시되어 있다.The background art of the present invention is disclosed in Republic of Korea Patent Publication No. 2011-0032256 (published on March 30, 2011, title of the invention: TVS announcement device and method for store sound source broadcasting system).
본 발명은 상기와 같은 문제점들을 개선하기 위하여 안출된 것으로, 본 발명의 목적은 입력된 텍스트를 사용자의 음성으로 변환하여 제공할 수 있도록 하는 음성 합성 서비스를 제공하는 장치, 단말기 및 방법을 제공하는 것이다. The present invention has been made to improve the above problems, and an object of the present invention is to provide a device, terminal, and method for providing a voice synthesis service that converts input text into a user's voice and provides it. .
본 발명이 해결하고자 하는 과제는 이상에서 언급한 과제(들)로 제한되지 않으며, 언급되지 않은 또 다른 과제(들)은 아래의 기재로부터 당업자에게 명확하게 이해될 수 있을 것이다.The problem to be solved by the present invention is not limited to the above-mentioned problem (s), and another problem (s) not mentioned will be clearly understood by those skilled in the art from the following description.
본 발명의 일 측면에 따른 음성 합성 서비스 제공 장치는 음성 데이터베이스, 제시어에 대한 사용자의 음성 샘플 정보를 수신하고, 상기 음성 샘플 정보로부터 상기 사용자의 음성 특징 정보를 추출하며, 상기 음성 특징 정보를 상기 음성 데이터베이스에 저장하는 음성 특징 추출부, 상기 사용자로부터 텍스트를 포함하는 음성 합성 요청 신호 수신 시, 상기 음성 데이터베이스로부터 상기 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성하는 음성 합성 서비스부를 포함한다. An apparatus for providing a speech synthesis service according to an aspect of the present invention receives information about a user's voice sample for a voice database and a suggested word, extracts voice characteristic information of the user from the voice sample information, and converts the voice characteristic information to the voice A voice feature extractor storing in a database, when receiving a voice synthesis request signal including text from the user, extracts the user's voice feature information from the voice database, and applies the voice feature information and the text to machine learning and a voice synthesis service unit generating voice data for the text.
본 발명에서 상기 음성 합성 서비스부는, 상기 사용자로부터 입력받은 동영상 또는 기 저장된 동영상의 편집을 위한 디자인 템플릿을 제공하고, 상기 디자인 템플릿을 통해 상기 동영상의 편집정보를 수신하며, 텍스트 및 더빙자 정보를 포함하는 동영상 더빙 요청 수신 시, 상기 음성 데이터베이스로부터 상기 더빙자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성하며, 상기 음성 데이터를 상기 동영상에 적용할 수 있다. In the present invention, the speech synthesis service unit provides a design template for editing a video input from the user or a previously stored video, receives editing information of the video through the design template, and includes text and dubber information. When a video dubbing request is received, voice feature information of the dubber is extracted from the voice database, voice feature information and the text are applied to machine learning to generate voice data for the text, and the voice data is converted into the video. can be applied to
본 발명에서 상기 음성 합성 서비스부는, 상기 사용자로부터 전자책 및 리더(reader) 정보를 포함하는 전자책 더빙 요청 수신 시, 상기 음성 데이터베이스로부터 상기 리더의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 전자책을 기계학습에 적용하여 상기 전자책에 대한 음성 데이터를 생성할 수 있다. In the present invention, the voice synthesis service unit extracts voice characteristic information of the reader from the voice database when receiving an e-book dubbing request including e-book and reader information from the user, and extracts the voice characteristic information and Voice data for the e-book may be generated by applying machine learning to the e-book.
본 발명의 다른 측면에 따른 음성 합성 서비스 제공 방법은, 음성 특징 추출부가 제시어에 대한 사용자의 음성 샘플 정보를 수신하고, 상기 음성 샘플 정보로부터 상기 사용자의 음성 특징 정보를 추출하며, 상기 음성 특징 정보를 음성 데이터베이스에 저장하는 단계, 음성 합성 서비스부가 상기 사용자로부터 텍스트를 포함하는 음성 합성 요청 신호 수신 시, 상기 음성 데이터베이스로부터 상기 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성하는 단계를 포함한다. A method for providing a voice synthesis service according to another aspect of the present invention includes a voice feature extraction unit receiving voice sample information of a user for a suggested word, extracting the user's voice feature information from the voice sample information, and extracting the voice feature information from the voice sample information. Storing in a voice database; When a voice synthesis service unit receives a voice synthesis request signal including text from the user, extracts voice feature information of the user from the voice database, and performs machine learning on the voice feature information and the text. and generating voice data for the text by applying the method.
본 발명은 상기 음성 합성 서비스부가, 상기 사용자로부터 동영상 편집 명령을 입력받으면, 상기 사용자로부터 입력받은 동영상 또는 기 저장된 동영상의 편집을 위한 디자인 템플릿을 제공하고, 상기 디자인 템플릿을 통해 상기 동영상의 편집정보를 수신하여 상기 동영상을 편집하는 단계, 및 상기 음성 합성 서비스부가, 텍스트 및 더빙자 정보를 포함하는 동영상 더빙 요청 수신 시, 상기 음성 데이터베이스로부터 상기 더빙자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성하며, 상기 음성 데이터를 상기 동영상에 적용하는 단계를 더 포함할 수 있다. In the present invention, when the voice synthesis service unit receives a video editing command from the user, it provides a design template for editing a video input from the user or a pre-stored video, and edits information of the video through the design template. receiving and editing the video, and when the video dubbing request including text and dubber information is received by the voice synthesis service unit, extracting voice characteristic information of the dubber from the voice database, and extracting the voice characteristic information and The method may further include generating voice data for the text by applying machine learning to the text, and applying the voice data to the video.
본 발명은 상기 음성 합성 서비스부가, 상기 사용자로부터 전자책 및 리더(reader) 정보를 포함하는 전자책 더빙 요청 수신 시, 상기 음성 데이터베이스로부터 상기 리더의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 전자책을 기계학습에 적용하여 상기 전자책에 대한 음성 데이터를 생성하는 단계를 더 포함할 수 있다. In the present invention, when the voice synthesis service unit receives an e-book dubbing request including e-book and reader information from the user, extracts voice characteristic information of the reader from the voice database, and extracts the voice characteristic information and The method may further include generating voice data for the e-book by applying machine learning to the e-book.
본 발명의 또 다른 측면에 따른 단말기는, 저장부, 음성 통화의 연결을 감지하여 통화 중 음성을 음성 데이터로 변환하고, 상기 음성 데이터에 대응하는 녹음 파일을 생성하는 음성 녹음부, 기 설정된 일정 기간동안 생성된 녹음 파일로부터 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보를 상기 저장부에 저장하는 음성 특징 추출부를 포함하되, 상기 음성 녹음부는 상기 녹음 파일에 대응하는 음성 데이터를 텍스트 데이터로 변환하여 상기 녹음 파일과 함께 상기 저장부에 저장할 수 있다. According to another aspect of the present invention, a terminal includes a storage unit, a voice recording unit configured to sense a connection of a voice call, convert voice during a call into voice data, and generate a recorded file corresponding to the voice data, and a predetermined period of time. and a voice feature extraction unit for extracting voice feature information of the user from a recorded file generated during the process and storing the voice feature information in the storage unit, wherein the voice recorder converts voice data corresponding to the recorded file into text data. so that it can be stored in the storage unit together with the recorded file.
본 발명에서 상기 음성 녹음부는, 통화 내용에서 통화 상대의 음성을 필터링하여 상기 사용자의 음성에 대해 녹음 파일을 생성할 수 있다. In the present invention, the voice recorder may filter the voice of the other party in the conversation and create a recorded file of the user's voice.
본 발명은 상기 단말기에서 제공되는 음성 신호의 사용자 음성으로 변환 명령 수신 시, 상기 저장부로부터 상기 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 음성 신호를 기계학습에 적용하여 상기 음성 신호에 대한 음성 데이터를 생성하는 음성 합성 서비스부를 더 포함할 수 있다. According to the present invention, upon receiving a command to convert a voice signal provided by the terminal into a user voice, the voice characteristic information of the user is extracted from the storage unit, and the voice characteristic information and the voice signal are applied to machine learning to generate the voice signal. It may further include a voice synthesis service unit that generates voice data for .
본 발명에서 상기 음성 합성 서비스부는, 상기 사용자로부터 텍스트를 포함하는 음성 합성 요청 신호 수신 시, 상기 저장부로부터 상기 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성할 수 있다. In the present invention, the voice synthesis service unit extracts voice characteristic information of the user from the storage unit when receiving a voice synthesis request signal including text from the user, applies the voice characteristic information and the text to machine learning, Voice data for the text may be generated.
본 발명의 일 실시예에 따른 음성 합성 서비스를 제공하는 장치, 단말기 및 방법은, 입력된 텍스트를 사용자의 음성으로 변환하여 제공할 수 있다. An apparatus, terminal, and method for providing a voice synthesis service according to an embodiment of the present invention may convert input text into a user's voice and provide the same.
본 발명의 다른 실시예에 따른 음성 합성 서비스를 제공하는 장치, 단말기 및 방법은, 유튜브, SNS 홍보 영상, 및 기업 홍보 영상 등의 동영상에 사용자 본인의 목소리를 더빙하여 제공할 수 있다. An apparatus, terminal, and method for providing a voice synthesis service according to another embodiment of the present invention may dub and provide a user's own voice to videos such as YouTube, SNS promotional videos, and corporate promotional videos.
본 발명의 또 다른 실시예에 따른 음성 합성 서비스를 제공하는 장치, 단말기 및 방법은, 전자책을 사용자가 원하는 사람의 음성으로 들을 수 있다. An apparatus, terminal, and method for providing a voice synthesis service according to another embodiment of the present invention allow a user to listen to an e-book in the voice of a person desired by the user.
본 발명의 또 다른 실시예에 따른 음성 합성 서비스를 제공하는 장치, 단말기 및 방법은, 돌아가신 분의 생전 음성을 지인들에게 전달할 수 있고, 가족 행사 등에 대한 안내를 음성으로 전달할 수 있다.An apparatus, terminal, and method for providing a voice synthesis service according to another embodiment of the present invention can transmit the voice of a deceased person during his or her lifetime to acquaintances, and can deliver information about family events and the like by voice.
한편, 본 발명의 효과는 이상에서 언급한 효과들로 제한되지 않으며, 이하에서 설명할 내용으로부터 통상의 기술자에게 자명한 범위 내에서 다양한 효과들이 포함될 수 있다.On the other hand, the effects of the present invention are not limited to the effects mentioned above, and various effects may be included within a range apparent to those skilled in the art from the contents to be described below.
도 1은 본 발명의 일 실시예에 따른 음성 합성 서비스 제공 시스템을 설명하기 위한 도면이다.
도 2는 본 발명의 일 실시예에 따른 음성 합성 서비스 제공 장치의 구성을 개략적으로 나타낸 블록도이다.
도 3은 도 2에 도시된 음성 합성 서비스부를 설명하기 위한 블록도이다.
도 4는 본 발명의 일 실시예에 따른 사용자의 음성 샘플 정보로부터 음성 특징 정보를 추출하는 방법을 설명하기 위한 도면이다.
도 5는 본 발명의 일 실시예에 따른 음성 합성 서비스 제공 방법을 설명하기 위한 흐름도이다.
도 6은 본 발명의 다른 실시예에 따른 음성 합성 서비스를 제공하는 단말기의 구성을 개략적으로 나타낸 블록도이다. 1 is a diagram for explaining a voice synthesis service providing system according to an embodiment of the present invention.
2 is a block diagram schematically showing the configuration of a voice synthesis service providing apparatus according to an embodiment of the present invention.
FIG. 3 is a block diagram for explaining the voice synthesis service unit shown in FIG. 2 .
4 is a diagram for explaining a method of extracting voice feature information from user voice sample information according to an embodiment of the present invention.
5 is a flowchart illustrating a method for providing a voice synthesis service according to an embodiment of the present invention.
6 is a block diagram schematically illustrating the configuration of a terminal providing a voice synthesis service according to another embodiment of the present invention.
이하, 첨부된 도면들을 참조하여 본 발명의 일 실시예에 따른 음성 합성 서비스를 제공하는 장치, 단말기 및 방법을 설명한다. 이 과정에서 도면에 도시된 선들의 두께나 구성요소의 크기 등은 설명의 명료성과 편의상 과장되게 도시되어 있을 수 있다. 또한, 후술되는 용어들은 본 발명에서의 기능을 고려하여 정의된 용어들로서 이는 사용자, 운용자의 의도 또는 관례에 따라 달라질 수 있다. 그러므로 이러한 용어들에 대한 정의는 본 명세서 전반에 걸친 내용을 토대로 내려져야 할 것이다.Hereinafter, an apparatus, terminal, and method for providing a voice synthesis service according to an embodiment of the present invention will be described with reference to the accompanying drawings. In this process, the thickness of lines or the size of components shown in the drawings may be exaggerated for clarity and convenience of description. In addition, terms to be described later are terms defined in consideration of functions in the present invention, which may vary according to the intention or custom of a user or operator. Therefore, definitions of these terms will have to be made based on the content throughout this specification.
본 명세서에서 설명된 구현은, 예컨대, 방법 또는 프로세스, 장치, 소프트웨어 프로그램, 데이터 스트림 또는 신호로 구현될 수 있다. 단일 형태의 구현의 맥락에서만 논의(예컨대, 방법으로서만 논의)되었더라도, 논의된 특징의 구현은 또한 다른 형태(예컨대, 장치 또는 프로그램)로도 구현될 수 있다. 장치는 적절한 하드웨어, 소프트웨어 및 펌웨어 등으로 구현될 수 있다. 방법은, 예컨대, 컴퓨터, 마이크로프로세서, 집적 회로 또는 프로그래밍가능한 로직 디바이스 등을 포함하는 프로세싱 디바이스를 일반적으로 지칭하는 프로세서 등과 같은 장치에서 구현될 수 있다. 프로세서는 또한 최종-사용자 사이에 정보의 통신을 용이하게 하는 컴퓨터, 셀 폰, 휴대용/개인용 정보 단말기(personal digital assistant: "PDA") 및 다른 디바이스 등과 같은 통신 디바이스를 포함한다.Implementations described herein may be embodied in, for example, a method or process, an apparatus, a software program, a data stream, or a signal. Even if discussed only in the context of a single form of implementation (eg, discussed only as a method), the implementation of features discussed may also be implemented in other forms (eg, an apparatus or program). The device may be implemented in suitable hardware, software and firmware. The method may be implemented in an apparatus such as a processor, which is generally referred to as a processing device including, for example, a computer, microprocessor, integrated circuit or programmable logic device or the like. Processors also include communication devices such as computers, cell phones, personal digital assistants ("PDAs") and other devices that facilitate communication of information between end-users.
도 1은 본 발명의 일 실시예에 따른 음성 합성 서비스 제공 시스템을 설명하기 위한 도면이다. 1 is a diagram for explaining a voice synthesis service providing system according to an embodiment of the present invention.
도 1을 참조하면, 본 발명의 일 실시예에 따른 음성 합성 서비스 제공 시스템은 사용자 단말기(100) 및 서비스 제공 장치(200)를 포함할 수 있고, 이들은 통신망을 통해 연결될 수 있다. Referring to FIG. 1 , a voice synthesis service providing system according to an embodiment of the present invention may include a user terminal 100 and a service providing device 200, which may be connected through a communication network.
사용자 단말기(100)는 사용자로부터 제시어에 대한 음성 샘플 정보를 입력받고, 입력받은 음성 샘플 정보를 서비스 제공 장치(200)로 전송할 수 있다. 이때, 사용자는 서비스 제공 장치(200)로부터 제공되는 제시어를 읽을 수 있고, 사용자 단말기(100)는 제시어의 사용자 발화에 의한 음성 샘플 정보를 서비스 제공 장치(200)로 전송할 수 있다. 사용자는 제한된 공간(예컨대, 녹음실, 스튜디오 등)이 아닌 본인이 소지하는 단말기의 마이크를 통해 제시어에 대한 음성을 녹음할 수 있다. The user terminal 100 may receive voice sample information for a suggested word from the user and transmit the received voice sample information to the service providing device 200 . In this case, the user can read the suggestion word provided from the service providing device 200, and the user terminal 100 can transmit voice sample information based on the user's utterance of the suggestion word to the service providing device 200. The user may record voice for the suggested word through a microphone of a terminal owned by the user, not in a limited space (eg, a recording studio, a studio, etc.).
이러한 사용자 단말기(100)는 스마트폰, 컴퓨터, 또는 휴대폰 등에서 구현될 수 있다. 텍스트-음성 합성 단말기(100)는 통신부를 포함하여 외부 장치(예를 들어, 서버 장치)와 통신할 수 있다.Such a user terminal 100 may be implemented in a smart phone, a computer, or a mobile phone. The text-to-speech synthesis terminal 100 may include a communication unit to communicate with an external device (eg, a server device).
이러한 사용자 단말기(100)는 서비스 제공 장치(200)에서 제공하는 음성 합성 서비스 프로그램(애플리케이션 또는 애플릿)의 이용이 가능하고, 다양한 유무선 환경에 적용될 수 있는 전자 기기일 수 있다. 예컨대, 사용자 단말기(100)는 PDA(Personal Digital Assistant), 스마트폰, 셀룰러폰, PCS(Personal Communication Service)폰, GSM(Global System for Mobile)폰, W-CDMA(Wideband CDMA)폰, CDMA-2000폰, MBS(Mobile Broadband System)폰 등을 포함한다. The user terminal 100 may be an electronic device capable of using a voice synthesis service program (application or applet) provided by the service providing device 200 and applicable to various wired/wireless environments. For example, the user terminal 100 includes a personal digital assistant (PDA), a smart phone, a cellular phone, a personal communication service (PCS) phone, a global system for mobile (GSM) phone, a wideband CDMA (W-CDMA) phone, and a CDMA-2000 phone. It includes a phone, a mobile broadband system (MBS) phone, and the like.
서비스 제공 장치(200)는 사용자 단말기(100)로부터 수신한 음성 샘플 정보로부터 사용자의 음성 특징 정보를 추출하고, 추출한 음성 특징 정보를 음성 데이터베이스(320)에 저장할 수 있다. 이때, 서비스 제공 장치(200)는 사용자 고유의 음성을 TTS로 구현할 수 있다. The service providing device 200 may extract the user's voice feature information from the voice sample information received from the user terminal 100 and store the extracted voice feature information in the voice database 320 . At this time, the service providing device 200 may implement the user's own voice as TTS.
서비스 제공 장치(200)는 사용자로부터 텍스트를 포함하는 음성 합성 요청 신호를 수신하면, 음성 데이터베이스(320)로부터 상기 사용자의 음성 특징 정보를 추출하고, 추출한 음성 특징 정보 및 텍스트를 기계학습에 적용하여 텍스트에 대한 음성 데이터를 생성할 수 있다. When receiving a voice synthesis request signal including text from the user, the service providing device 200 extracts the user's voice feature information from the voice database 320, and applies the extracted voice feature information and text to machine learning to generate text. Voice data for can be generated.
이러한 서비스 제공 장치(200)는 통신망을 통하여 원격지의 서버나 단말에 접속할 수 있는 컴퓨터로 구현될 수 있다. 여기서, 컴퓨터는 예를 들어, 네비게이션, 웹 브라우저(WEB Browser)가 탑재된 노트북, 데스크톱(Desktop), 랩톱(Laptop) 등을 포함할 수 있다.The service providing device 200 may be implemented as a computer capable of accessing a remote server or terminal through a communication network. Here, the computer may include, for example, a laptop, a desktop, a laptop, and the like equipped with a navigation system and a web browser.
한편, 본 발명의 실시예에서는 서비스 제공 장치(200)가 텍스트를 음성 데이터로 변환하는 것으로 설명하였으나, 사용자 단말기(100)에 음성 합성 서비스 프로그램(애플리케이션 또는 애플릿)이 설치된 경우, 사용자 단말기(100)를 이용하여 텍스트를 음성 데이터로 변환할 수 있다. Meanwhile, in the embodiment of the present invention, it has been described that the service providing device 200 converts text into voice data, but when a voice synthesis service program (application or applet) is installed in the user terminal 100, the user terminal 100 Text can be converted into voice data using .
이에, 텍스트를 음성 데이터로 변환하는 장치를 음성 합성 서비스 제공 장치(300)로 칭하여 설명하기로 한다. Accordingly, a device for converting text into voice data will be referred to as a voice synthesis service providing device 300 for description.
도 2는 본 발명의 일 실시예에 따른 음성 합성 서비스 제공 장치의 구성을 개략적으로 나타낸 블록도, 도 3은 도 2에 도시된 음성 합성 서비스부를 설명하기 위한 블록도이다. 2 is a block diagram schematically showing the configuration of a voice synthesis service providing apparatus according to an embodiment of the present invention, and FIG. 3 is a block diagram for explaining the voice synthesis service unit shown in FIG. 2 .
도 2를 참조하면, 본 발명의 일 실시예에 따른 음성 합성 서비스 제공 장치(300)는 통신부(310), 음성 데이터베이스(320), 음성 특징 추출부(330), 음성 합성 서비스부(340), 및 제어부(350)를 포함할 수 있다. Referring to FIG. 2 , a voice synthesis service providing apparatus 300 according to an embodiment of the present invention includes a communication unit 310, a voice database 320, a voice feature extraction unit 330, a voice synthesis service unit 340, And it may include a control unit 350.
통신부(310)는 통신망을 통해 외부 장치와 통신하기 위한 구성으로, 음성 샘플 정보, 및 음성 합성 요청 신호 등 다양한 정보를 송수신할 수 있다. 이때, 통신부(310)는 근거리 통신모듈, 무선 통신모듈, 이동통신 모듈, 유선 통신모듈 등 다양한 형태로 구현될 수 있다.The communication unit 310 is a component for communicating with an external device through a communication network, and can transmit and receive various information such as voice sample information and a voice synthesis request signal. At this time, the communication unit 310 may be implemented in various forms such as a short-distance communication module, a wireless communication module, a mobile communication module, and a wired communication module.
음성 데이터베이스(320)는 음성 특징 추출부(330)에서 추출된 사용자의 음성 특징 정보를 저장할 수 있다. 이때, 음성 데이터베이스(320)는 사용자 식별정보, 및 음성 특징 정보 등을 저장할 수 있고, 사용자 식별정보는 사용자 ID/비밀번호, 및 전화번호 등을 포함할 수 있다. 음성 데이터베이스(320)에 저장된 사용자의 음성 특징 정보(예를 들어, 사용자의 음성 특징을 나타내는 임베딩 벡터)는 음성 합성 시 음성 합성 서비스부(340)에 제공될 수 있다.The voice database 320 may store the user's voice feature information extracted by the voice feature extractor 330 . In this case, the voice database 320 may store user identification information, voice characteristic information, and the like, and the user identification information may include a user ID/password, phone number, and the like. The user's voice characteristic information (eg, an embedding vector indicating the user's voice characteristic) stored in the voice database 320 may be provided to the voice synthesis service unit 340 during voice synthesis.
음성 데이터베이스(320)는 제시어(텍스트) 및 제시어에 대응되는 사용자의 음성을 저장할 수 있다. 제시어는 적어도 하나의 언어로 작성될 수 있으며, 사람이 이해할 수 있는 단어, 구문 및 문장 중 적어도 하나를 포함할 수 있다. 또한, 음성 데이터베이스(320)에 저장된 음성은 복수의 화자가 제시어를 읽은 음성 데이터를 포함할 수 있다. 제시어 및 음성 데이터는 음성 데이터베이스(320)에 미리 저장되어 있거나, 통신부(310)로부터 수신될 수 있다. The voice database 320 may store a suggested word (text) and a user's voice corresponding to the suggested word. The suggested word may be written in at least one language and may include at least one of a word, phrase, and sentence that can be understood by humans. Also, the voice stored in the voice database 320 may include voice data in which a plurality of speakers read the suggested word. The suggested word and voice data may be previously stored in the voice database 320 or may be received from the communication unit 310 .
음성 특징 추출부(330)는 제시어의 사용자 발화에 의한 음성 샘플 정보를 수신하고, 음성 샘플 정보로부터 사용자의 음성 특징 정보를 추출하며, 음성 특징 정보를 음성 데이터베이스(320)에 저장할 수 있다. 여기서, 음성 샘플 정보는 사용자의 음성 특징과 관련된 정보를 나타내는 음성 스펙트럼 데이터를 포함할 수 있다. 음성 특징 정보는 포먼트(Formant) 정보, 주파수(Log f0) 정보, LPC(Linear Predictive Coefficient) 정보, 스펙트럼 포락선(Spectral Envelope) 정보, 에너지(Energy) 정보, 발화 속도(Pitch Period) 정보, 및 로그 스펙트럼(Log Spectrum) 정보 등을 포함할 수 있다.The voice feature extractor 330 may receive voice sample information from the user's utterance of the suggested word, extract user voice feature information from the voice sample information, and store the voice feature information in the voice database 320 . Here, the voice sample information may include voice spectrum data representing information related to the user's voice characteristics. Voice feature information includes formant information, frequency (Log f0) information, LPC (Linear Predictive Coefficient) information, Spectral Envelope information, Energy information, Pitch Period information, and Log Spectrum (Log Spectrum) information and the like may be included.
음성 특징 추출부(330)는 멜 주파수 셉스트럴(MFC)과 같은 음성 처리 방법을 이용하여 음성 특징 정보를 추출할 수 있다. 또한, 음성 특징 추출부(330)는 음성 샘플 정보를 학습된 음성 특징 추출 모델(예를 들어, 인공신경망)에 입력하여 음성 특징 정보를 추출할 수 있다. The voice feature extractor 330 may extract voice feature information using a voice processing method such as Mel Frequency Cepstral (MFC). In addition, the voice feature extractor 330 may extract voice feature information by inputting voice sample information to a learned voice feature extraction model (eg, an artificial neural network).
음성 특징 추출부(330)는 음성 특징 정보를 임베딩 벡터로 나타낼 수 있다. The voice feature extractor 330 may represent voice feature information as an embedding vector.
음성 특징 추출부(330)는 음성 샘플 정보로부터 음성 특징 정보를 추출하기 전에, 음성 샘플 정보로부터 잡음 성분을 제거할 수 있다. The voice feature extractor 330 may remove noise components from the voice sample information before extracting the voice feature information from the voice sample information.
음성 특징 추출부(330)는 추출된 사용자의 음성 특징 정보를 음성 데이터베이스(320)에 저장할 수 있다. 이에 따라, 입력 텍스트에 대한 음성 합성 시, 음성 데이터베이스(320)에 미리 저장된 화자의 음성 특징 정보를 선택 또는 지정될 수 있고, 선택 또는 지정된 화자의 음성 특징 정보를 음성 합성에 이용할 수 있다. The voice feature extractor 330 may store the extracted voice feature information of the user in the voice database 320 . Accordingly, when synthesizing a voice of an input text, voice characteristic information of a speaker previously stored in the voice database 320 may be selected or designated, and the voice characteristic information of the selected or designated speaker may be used for voice synthesis.
음성 합성 서비스부(340)는 사용자로부터 텍스트를 포함하는 음성 합성 요청 신호 수신 시, 음성 데이터베이스(320)로부터 사용자의 음성 특징 정보를 추출하고, 음성 특징 정보 및 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성할 수 있다. 여기서, 기계학습은 음성 합성 모델(예를 들어, pre-net, CBHG 모듈, DNN, CNN+DNN 등)을 포함할 수 있다. 음성 합성 모델은 입력된 텍스트를 음성 데이터의 특징 벡터로 변환할 수 있다. 이때, 음성 데이터는 발화자의 음성 특징 정보에 따라 텍스트가 발화된 음성 데이터일 수 있다. 다시 말해, 음성 합성 모델은 입력된 텍스트가 특정 발화자의 음성 특징 정보에 따라 발화된 음성 데이터 또는 음성 데이터의 특징 벡터를 출력할 수 있다.When receiving a voice synthesis request signal including text from the user, the voice synthesis service unit 340 extracts the user's voice feature information from the voice database 320, applies the voice feature information and text to machine learning, and converts the text into the text. voice data can be generated. Here, machine learning may include a speech synthesis model (eg, pre-net, CBHG module, DNN, CNN+DNN, etc.). The speech synthesis model may convert input text into a feature vector of speech data. In this case, the voice data may be voice data in which text is uttered according to the speaker's voice characteristic information. In other words, the speech synthesis model may output speech data or a feature vector of the speech data according to the speech characteristic information of a specific speaker of the input text.
음성 합성 모델은 인코더-디코더 기반의 뉴럴 네트워크(neural network)일 수 있다. 여기서, 뉴럴 네트워크는 복수의 레이어들을 포함할 수 있고, 레이어들 각각은 복수의 뉴런들을 포함할 수 있다. 이웃한 레이어들의 뉴런들은 시냅스들로 연결될 수 있다. 학습에 따라 시냅스들에는 가중치들이 부여될 수 있고, 파라미터들은 이러한 가중치들을 포함할 수 있다.The speech synthesis model may be an encoder-decoder based neural network. Here, the neural network may include a plurality of layers, and each of the layers may include a plurality of neurons. Neurons in neighboring layers can be connected by synapses. Weights may be assigned to synapses according to learning, and parameters may include these weights.
이처럼, 음성 합성 모델은 시퀀스-투-시퀀스(sequence-to-sequence) 모델로 구성된 텍스트-투-특징 벡터(text-to-feature vector) 또는 텍스트-투-음성(text-to-speech) 모델일 수 있다. 음성 합성 모델에서 결정된 음성 데이터의 특징 벡터 또는 음성 데이터는 텍스트와 함께 음성 인식 모델의 학습 데이터로 이용될 수 있다. 이로써, 다양한 발화 특성을 갖는 학습 데이터를 손쉽게 획득할 수 있다.As such, the speech synthesis model may be a text-to-feature vector or text-to-speech model composed of sequence-to-sequence models. can The feature vector or voice data of the voice data determined in the voice synthesis model may be used as training data of the voice recognition model together with text. Accordingly, it is possible to easily acquire learning data having various speech characteristics.
음성 합성 서비스부(340)는 음성 합성 요청 신호 수신 시, 음성 합성 요청 신호를 분석하여 발화자 및 텍스트를 추출할 수 있다. 음성 합성 서비스부(340)는 추출된 텍스트를 임베딩하여 문장 입력을 구성할 수 있다. 여기서, 임베딩은 문장, 화자 등의 불연속적인 기호 데이터를 연속적이고 다양한 특성을 가지는 특징벡터로 변환하기 위한 과정이다. 구체적으로, 음성 합성 서비스부(340)는 텍스트를 한글 자모 단위로 분해하여 자모 단위 입력을 생성하고, 쪼개진 자모에 각각 번호를 매길 수 있으며, 각 자모별 번호가 일대일 대응되는 색인표를 구성하고 색인표에 따라 번호를 매기게 된다. 이를 통해 음성 합성 서비스부(340)는 텍스트를 숫자 데이터로 변환할 수 있다. 음성 합성 서비스부(340)는 숫자 데이터로 매핑된 텍스트를 원-핫 인코딩(One-hot encoding)하여 원-핫 인코딩된 벡터열을 생성하고, 원-핫 인코딩된 벡터열을 문장 임베딩 매트릭스와 곱하여 텍스트 특징벡터로 변환할 수 있다. When the voice synthesis request signal is received, the voice synthesis service unit 340 analyzes the voice synthesis request signal to extract a speaker and text. The voice synthesis service unit 340 may configure sentence input by embedding the extracted text. Here, embedding is a process for converting discontinuous symbol data such as sentences and speakers into feature vectors having continuous and diverse characteristics. Specifically, the speech synthesis service unit 340 decomposes the text into Korean consonant units to generate consonant unit inputs, number each of the split consonants, configure an index table in which each consonant number corresponds one-to-one, and index They are numbered according to the table. Through this, the voice synthesis service unit 340 can convert text into numeric data. The speech synthesis service unit 340 generates a one-hot encoded vector sequence by one-hot encoding the text mapped to numeric data, and multiplies the one-hot encoded vector sequence by a sentence embedding matrix It can be converted to a text feature vector.
그 후, 음성 합성 서비스부(340)는 음성 데이터베이스(320)로부터 발화자에 해당하는 음성 특징 정보를 추출하고, 추출한 음성 특징 정보와 텍스트를 음성 합성 모델에 적용하여 텍스트를 음성 데이터로 변환할 수 있다. 즉, 음성 합성 서비스부(340)는 텍스트 특징 벡터와 음성 특징 정보를 나타내는 임베딩 벡터를 음성 합성 모델에 입력하여, 텍스트를 음성 데이터로 변환할 수 있다. Thereafter, the speech synthesis service unit 340 extracts voice feature information corresponding to the speaker from the voice database 320 and converts the text into voice data by applying the extracted voice feature information and text to a voice synthesis model. . That is, the speech synthesis service unit 340 may convert text into speech data by inputting a text feature vector and an embedding vector representing speech feature information to a speech synthesis model.
음성 합성 서비스부(340)는 도 3에 도시된 바와 같이 이미지 템플릿 서비스부(352), 동영상 편집 서비스부(354), 음성 메시지 서비스부(356), 및 더빙 서비스부(358)를 포함할 수 있다.As shown in FIG. 3 , the voice synthesis service unit 340 may include an image template service unit 352, a video editing service unit 354, a voice message service unit 356, and a dubbing service unit 358. there is.
이미지 템플릿 서비스부(352)는 테마별 이미지 템플릿을 제공하고, 사용자에 의해 선택된 이미지 템플릿에 대한 편집 정보를 입력받으며, 편집된 이미지 템플릿을 저장할 수 있다. 사용자는 이미지 템플릿 서비스부(352)를 통해 제공되는 테마별 이미지 템플릿을 이용하여 쇼핑몰 등의 디자인을 설정하고 편집할 수 있다.The image template service unit 352 may provide image templates for each theme, receive edit information on an image template selected by a user, and store the edited image template. A user may set and edit a design of a shopping mall or the like by using an image template for each theme provided through the image template service unit 352 .
동영상 편집 서비스부(354)는 사용자로부터 입력받은 동영상 또는 기 저장된 동영상의 편집을 위한 디자인 템플릿을 제공하고, 디자인 템플릿을 통해 상기 동영상의 편집 정보를 수신하며, 텍스트 및 더빙자를 포함하는 동영상 더빙 요청 수신 시, 음성 데이터베이스(320)로부터 더빙자의 음성 특징 정보를 추출하고, 추출한 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성하며, 생성한 음성 데이터를 동영상에 적용할 수 있다. The video editing service unit 354 provides a design template for editing a video input from a user or a previously stored video, receives editing information of the video through the design template, and receives a video dubbing request including text and a dubber. Voice feature information of a dubber is extracted from the poetry and voice database 320, voice data for the text is generated by applying the extracted voice feature information and the text to machine learning, and the generated voice data can be applied to a video. there is.
즉, 동영상 편집 서비스부(354)는 사용자로부터 동영상을 입력받으면, 그 동영상을 편집하기 위한 디자인 템플릿을 제공할 수 있고, 디자인 템플릿을 통해 편집된 동영상을 저장할 수 있다. 이때, 동영상 편집 서비스부(354)는 30초 내외의 간단한 숏컷을 바탕으로 동영상 템플릿 DB(미도시)를 이용하여 영상 추가, 효과 삽입, 위치 조정 등 간단한 수정과 텍스트 수정, 음원 믹스 등의 편집을 수행할 수 있는 편집 툴을 제공할 수 있다. That is, when a video is received from a user, the video editing service unit 354 may provide a design template for editing the video, and may store the edited video through the design template. At this time, the video editing service unit 354 uses a video template DB (not shown) based on a simple short cut of about 30 seconds to perform simple modifications such as adding video, inserting effects, and adjusting position, editing text, and mixing sound sources. Editing tools can be provided.
동영상 편집 서비스부(354)는 사용자 본인 또는 성우 캐릭터의 음성을 지원할 수 있고, 사용자 본인의 음성 또는 성우 캐릭터의 음성으로 동영상을 더빙할 수 있다. The video editing service unit 354 may support the voice of the user himself or the voice actor character, and may dub the video with the user's own voice or the voice of the voice actor character.
사용자는 동영상 편집 서비스부(354)를 통해 홍보용 유튜브 제작시 사용자 본인의 음성 편집을 용이하게 할 수 있다. 또한, SNS내 홍보 영상 제작시 사용자는 동영상 편집 서비스부(354)를 통해 멘트 삽입 및 수정을 용이하게 할 수 있다. 또한, 동영상 편집 서비스부(354)를 통해 기업의 제품 홍보 등에 효율적인 설명을 할 수 있다. 또한, 동영상 편집 서비스부(354)를 통해 돌아가신 분의 생전 음성을 지인들에게 전달할 수 있다. 또한, 동영상 편집 서비스부(354)를 통해 가족 행사 등에 대한 안내를 음성으로 전달할 수 있다. The user can easily edit the user's own voice when creating YouTube for publicity through the video editing service unit 354 . In addition, when creating a promotional video in SNS, the user can easily insert and modify comments through the video editing service unit 354. In addition, through the video editing service unit 354, it is possible to provide an efficient explanation for company product promotion. In addition, through the video editing service unit 354, the voice of the deceased person may be delivered to acquaintances. In addition, through the video editing service unit 354, guidance on family events and the like can be delivered by voice.
음성 메시지 서비스부(356)는 사용자로부터 문자 메시지가 입력 받으면, 음성 데이터베이스(320)로부터 사용자의 음성 특징 정보를 추출하고, 문자 메시지에 음성 특정 정보를 적용하여 문자 메시지를 음성으로 제공할 수 있다. When a text message is received from the user, the voice message service unit 356 extracts voice characteristic information of the user from the voice database 320 and applies the voice specific information to the text message to provide the text message as a voice.
사용자는 문자 메시지를 주고받을 때보다 감성적인 알림이 필요할 경우 음성 메시지 서비스부(356)를 통해 이미지/영상/음악 등에 자신의 음성을 합성하여 전송할 수 있다. 예를 들면, 음성 메시지 서비스부(356)를 통해 청첩장을 신랑/신부의 목소리로 넣어 지인들에게 전송할 수 있다. When a user needs an emotional notification rather than exchanging a text message, the user may synthesize and transmit his or her own voice through the voice message service unit 356, such as image/video/music. For example, through the voice message service unit 356, the wedding invitation may be put in the voice of the groom/bride and transmitted to acquaintances.
더빙 서비스부(358)는, 사용자로부터 전자책 및 리더(reader)를 포함하는 전자책 더빙 요청 수신 시, 음성 데이터베이스(320)로부터 상기 리더의 음성 특징 정보를 추출하고, 추출한 음성 특징 정보 및 전자책을 기계학습에 적용하여 전자책에 대한 음성 데이터를 생성할 수 있다. 사용자는 더빙 서비스부(358)를 통해 이북(e-book)을 사용자가 원하는 사람의 음성으로 출력되도록 할 수 있다. The dubbing service unit 358, when receiving a request for dubbing an e-book including an e-book and a reader from a user, extracts voice feature information of the reader from the voice database 320, and extracts the extracted voice feature information and the e-book. can be applied to machine learning to generate voice data for e-books. Through the dubbing service unit 358, the user can output the e-book with the voice of the person desired by the user.
예를 들면, 동화책의 텍스트가 입력되면, 더빙 서비스부(358)는 아빠 또는 엄마의 음성으로 동화책의 내용을 합성하여 제공할 수 있다. For example, when the text of a children's book is input, the dubbing service unit 358 may synthesize and provide the content of the children's book with the father's or mother's voice.
본 발명의 실시예에 따른 음성 합성 서비스 제공 장치(300)는 입출력부(I/O 장치; 미도시)를 더 포함할 수 있다. 입출력부는 사용자로부터 입력을 직접 수신할 수 있다. 또한, 입출력부는 사용자에게 음성, 영상 또는 텍스트 중 적어도 하나를 출력할 수 있다.The voice synthesis service providing apparatus 300 according to an embodiment of the present invention may further include an input/output unit (I/O device; not shown). The input/output unit may directly receive an input from a user. Also, the input/output unit may output at least one of voice, video, and text to the user.
한편, 음성 특징 추출부(330) 및 음성 합성 서비스부(340)는 컴퓨팅 장치 상에서 프로그램을 실행하기 위해 필요한 프로세서 등에 의해 각각 구현될 수 있다. 이처럼 음성 특징 추출부(330) 및 음성 합성 서비스부(340)는 물리적으로 독립된 각각의 구성으로 구현될 수도 있고, 하나의 프로세서 내에서 기능적으로 구분되는 형태로 구현될 수도 있다. Meanwhile, the voice feature extraction unit 330 and the voice synthesis service unit 340 may each be implemented by a processor required to execute a program on a computing device. As such, the voice feature extraction unit 330 and the voice synthesis service unit 340 may be implemented as physically independent components or functionally separated within one processor.
제어부(350)는 통신부(310), 음성 데이터베이스(320), 음성 특징 추출부(330), 음성 합성 서비스부(340)를 포함하는 음성 합성 서비스 제공 장치(300)의 다양한 구성부들의 동작을 제어하는 구성으로, 적어도 하나의 연산 장치를 포함할 수 있는데, 여기서 상기 연산 장치는 범용적인 중앙연산장치(CPU), 특정 목적에 적합하게 구현된 프로그래머블 디바이스 소자(CPLD, FPGA), 주문형 반도체 연산장치(ASIC) 또는 마이크로 컨트롤러 칩일 수 있다.The control unit 350 controls the operation of various components of the voice synthesis service providing apparatus 300 including the communication unit 310, the voice database 320, the voice feature extractor 330, and the voice synthesis service unit 340. It may include at least one arithmetic unit, wherein the arithmetic unit is a general-purpose central processing unit (CPU), a programmable device element (CPLD, FPGA) implemented to suit a specific purpose, and an application-specific semiconductor arithmetic unit ( ASIC) or microcontroller chip.
도 4는 본 발명의 일 실시예에 따른 사용자의 음성 샘플 정보로부터 음성 특징 정보를 추출하는 방법을 설명하기 위한 도면이다. 4 is a diagram for explaining a method of extracting voice feature information from user voice sample information according to an embodiment of the present invention.
도 4를 참조하면, 사용자 단말기(100)는 음성 합성 서비스 애플리케이션을 통해 음성 녹음 명령을 입력 받고, 음성 녹음 명령을 서비스 제공 장치로 전송하면(S410), 서비스 제공 장치는 제시어를 제공한다(S420).Referring to FIG. 4 , when the user terminal 100 receives a voice recording command through a voice synthesis service application and transmits the voice recording command to the service providing device (S410), the service providing device provides a suggestion word (S420). .
사용자 단말기(100)는 마이크를 통해 제시어의 사용자 발화에 의한 음성 샘플 정보를 입력받고(S430), 입력받은 음성 샘플 정보를 서비스 제공 장치로 전송한다(S440). The user terminal 100 receives voice sample information by the user's utterance of the suggested word through the microphone (S430), and transmits the received voice sample information to the service providing device (S440).
서비스 제공 장치는 사용자의 음성 샘플 정보로부터 음성 특징 정보를 추출하고(S450), 음성 특징 정보를 음성 데이터베이스(320)에 저장한다(S460). 여기서, 음성 특징 정보는 포먼트(Formant) 정보, 주파수(Log f0) 정보, LPC(Linear Predictive Coefficient) 정보, 스펙트럼 포락선(Spectral Envelope) 정보, 에너지(Energy) 정보, 발화 속도(Pitch Period) 정보, 및 로그 스펙트럼(Log Spectrum) 정보 등을 포함할 수 있다.The service providing apparatus extracts voice feature information from the user's voice sample information (S450) and stores the voice feature information in the voice database 320 (S460). Here, the voice feature information includes formant information, frequency (Log f0) information, LPC (Linear Predictive Coefficient) information, Spectral Envelope information, Energy information, Pitch Period information, and log spectrum information.
한편, 본 발명의 실시예에서는 서비스 제공 장치가 음성 샘플 정보로부터 음성 특징 정보를 추출하는 것으로 설명하였으나, 사용자 단말기(100)가 음성 샘플 정보로부터 음성 특징 정보를 추출할 수도 있다. Meanwhile, in the embodiment of the present invention, it has been described that the service providing apparatus extracts voice feature information from voice sample information, but the user terminal 100 may extract voice feature information from voice sample information.
도 5는 본 발명의 일 실시예에 따른 음성 합성 서비스 제공 방법을 설명하기 위한 흐름도이다. 5 is a flowchart illustrating a method for providing a voice synthesis service according to an embodiment of the present invention.
도 5를 참조하면, 음성 합성 서비스 제공 장치(300)는 텍스트를 포함하는 음성 합성 요청 신호가 수신되면(S410), 음성 합성 서비스 제공 장치(300)는 음성 데이터베이스(320)로부터 해당 사용자의 음성 특징 정보를 추출한다(S420). 여기서, 음성 합성 요청 신호는 텍스트, 사용자 식별정보, 및 발화자 정보 등을 포함할 수 있다. 따라서 음성 합성 서비스 제공 장치(300)는 음성 합성 요청 신호를 분석하여 화자 정보를 추출하고, 음성 데이터베이스(320)로부터 발화자 정보에 대응하는 음성 특징 정보를 추출할 수 있다. Referring to FIG. 5 , when the voice synthesis service providing apparatus 300 receives a voice synthesis request signal including text (S410), the speech synthesis service providing apparatus 300 determines the voice characteristics of the corresponding user from the voice database 320. Information is extracted (S420). Here, the voice synthesis request signal may include text, user identification information, and speaker information. Accordingly, the voice synthesis service providing apparatus 300 may extract speaker information by analyzing the voice synthesis request signal, and extract voice feature information corresponding to the speaker information from the voice database 320 .
S420 단계가 수행되면, 음성 합성 서비스 제공 장치(300)는 추출한 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성한다(S430, S440). 이때, 음성 합성 서비스 제공 장치(300)는 텍스트를 한글 자모 단위로 분해하여 자모 단위 입력을 생성하고, 쪼개진 자모에 각각 번호를 매길 수 있으며, 각 자모별 번호가 일대일 대응되는 색인표를 구성하고 색인표에 따라 번호를 매겨 텍스트를 숫자 데이터로 변환할 수 있다. 음성 합성 서비스 제공 장치(300)는 숫자 데이터로 매핑된 텍스트를 원-핫 인코딩(One-hot encoding)하여 원-핫 인코딩된 벡터열을 생성하고, 원-핫 인코딩된 벡터열을 문장 임베딩 매트릭스와 곱하여 텍스트 특징 벡터로 변환할 수 있다. 그 후, 음성 합성 서비스 ㅈ제공 장치(300)는 음성 데이터베이스(320)로부터 발화자에 해당하는 음성 특징 정보를 추출하고, 텍스트 특징 벡터와 음성 특징 정보를 나타내는 임베딩 벡터를 음성 합성 모델에 입력하여, 텍스트를 음성 데이터로 변환할 수 있다. When step S420 is performed, the speech synthesis service providing apparatus 300 generates voice data for the text by applying machine learning to the extracted voice feature information and the text (S430 and S440). At this time, the speech synthesis service providing apparatus 300 decomposes the text into Hangul consonant units to generate a consonant unit input, number each of the split consonants, constructs an index table in which each consonant number corresponds one-to-one, and indexes You can convert text to numeric data by numbering them according to a table. The speech synthesis service providing apparatus 300 generates a one-hot encoded vector sequence by one-hot encoding the text mapped to numeric data, and converts the one-hot encoded vector sequence into a sentence embedding matrix and a sentence embedding matrix. It can be multiplied and converted to a text feature vector. Then, the voice synthesis service providing apparatus 300 extracts voice feature information corresponding to the speaker from the voice database 320, inputs a text feature vector and an embedding vector representing the voice feature information to a voice synthesis model, and converts the text feature into a voice synthesis model. can be converted into voice data.
음성 합성 서비스 제공 장치(300)는 사용자가 동영상 편집 명령을 선택하면, 사용자로부터 입력받은 동영상 또는 기 저장된 동영상의 편집을 위한 디자인 템플릿을 제공하고, 디자인 템플릿을 통해 동영상의 편집정보를 수신하여 동영상을 편집할 수 있다. 또한, 음성 합성 서비스 제공 장치(300)는 텍스트 및 더빙자를 포함하는 동영상 더빙 요청을 수신하면, 음성 데이터베이스(320)로부터 더빙자의 음성 특징 정보를 추출하고, 추출한 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성하며, 생성한 음성 데이터를 동영상에 적용할 수 있다. When the user selects a video editing command, the speech synthesis service providing apparatus 300 provides a design template for editing a video input from the user or a pre-stored video, receives video editing information through the design template, and edits the video. can be edited In addition, upon receiving a video dubbing request including text and a dubber, the voice synthesis service providing apparatus 300 extracts voice feature information of the dubber from the voice database 320, and applies the extracted voice feature information and the text to machine learning. It is applied to generate voice data for the text, and the generated voice data can be applied to a video.
또한, 음성 합성 서비스 제공 장치(300)는 사용자로부터 전자책 및 리더(reader)를 포함하는 전자책 더빙 요청을 수신하면, 음성 데이터베이스(320)로부터 상기 리더의 음성 특징 정보를 추출하고, 추출한 음성 특징 정보 및 상기 전자책을 기계학습에 적용하여 상기 전자책에 대한 음성 데이터를 생성할 수 있다. In addition, when receiving a request for dubbing an e-book including an e-book and a reader from a user, the voice synthesis service providing apparatus 300 extracts voice feature information of the reader from the voice database 320, and extracts the extracted voice feature. Information and the e-book may be applied to machine learning to generate voice data for the e-book.
도 6은 본 발명의 다른 실시예에 따른 음성 합성 서비스를 제공하는 단말기의 구성을 개략적으로 나타낸 블록도이다. 6 is a block diagram schematically illustrating the configuration of a terminal providing a voice synthesis service according to another embodiment of the present invention.
도 6을 참조하면, 본 발명의 다른 실시예에 따른 음성 합성 서비스를 제공하는 단말기(600)는 단말기(600), 음성 녹음부(620), 음성 특징 추출부(630), 음성 합성 서비스부(640) 및 제어부(650)를 포함할 수 있다. Referring to FIG. 6 , a terminal 600 providing a voice synthesis service according to another embodiment of the present invention includes a terminal 600, a voice recorder 620, a voice feature extractor 630, a voice synthesis service unit ( 640) and a controller 650.
음성 녹음부(620)는 음성 통화의 연결을 감지하여 통화 중 음성을 음성 데이터로 변환하고, 음성 데이터에 대응하는 녹음 파일을 생성할 수 있다. 이때 음성 녹음부(620)는 통화 내용에서 통화 상대의 음성을 필터링하여 사용자의 음성에 대해 녹음 파일을 생성할 수 있다. 음성 녹음부(620)는 통화 상대의 음성을 필터링하기 위해 사전에 사용자의 음성을 등록할 수 있다. 또한 음성 녹음부(620)는 사용자 음성과 통화 상대의 음성 간의 주파수 특성을 분석하여 통화 상대의 음성을 묵음으로 처리하여 필터링할 수 있다. 또한 음성 녹음부(620)는 사용자와 통화 상대가 동시에 말할 경우도 발생할 수 있고, 통화 상대의 음성이 사용자 음성과 유사할 경우도 발생할 수 있으며, 잡음에 의해 불분명한 음성이 발생할 수 있으므로, 사용자 음성의 주파수 범위에 벗어나면 전술한 경우로 인식하여 필터링 처리할 수 있다.The voice recorder 620 may detect connection of a voice call, convert voice during a call into voice data, and generate a recorded file corresponding to the voice data. At this time, the voice recording unit 620 may filter the voice of the other party in the conversation and create a recording file for the user's voice. The voice recorder 620 may register the user's voice in advance in order to filter the voice of the other party on the call. In addition, the voice recorder 620 may analyze the frequency characteristics between the user's voice and the voice of the other party, process the other party's voice as mute, and filter it. In addition, the voice recording unit 620 may occur when the user and the other party speak at the same time, or when the voice of the other party may be similar to the user's voice, and an unclear voice may be generated due to noise, so that the user's voice If it is out of the frequency range of , filtering can be performed by recognizing it as the above case.
음성 녹음부(620)는 음성 통화 연결 이전의 통화 대기 상태에서 녹음을 수행하지 않으며, 음성 통화의 연결을 감지하여 통화 중 사용자의 음성 및 통화 상대방의 음성을 음성 데이터로 변환할 수 있다. 예를 들어, 아날로그 음성 신호를 디지털 신호로 변환할 수 있다.The voice recorder 620 does not perform recording in a call standby state prior to the voice call connection, but detects the voice call connection and converts the user's voice and the call party's voice during the call into voice data. For example, an analog audio signal may be converted into a digital signal.
음성 녹음부(620)는 음성 데이터에 대응하는 녹음 파일을 임시로 생성할 수 있다. 이때, 음성 녹음부(620)는 변환된 음성 데이터를 녹음 파일로 자동으로 생성할 수 있다. 예를 들어, 녹음 파일이 생성되기 이전 통화 대기 상태에서 녹음 파일의 생성에 대해서 사전 안내 문구를 출력할 수 있고, 음성 통화가 연결되어 녹음 파일이 생성되는 중에 녹음 파일이 생성 중인 상황에 대한 안내 문구를 단말기(600)의 디스플레이 일부에 출력할 수 있다.The voice recorder 620 may temporarily create a recording file corresponding to voice data. At this time, the voice recorder 620 may automatically generate the converted voice data as a recorded file. For example, in a call waiting state before a recording file is created, a preliminary notice about the creation of a recording file can be output, and a notice about a situation in which a recording file is being created while a voice call is connected and a recording file is being created. may be output to a part of the display of the terminal 600.
음성 녹음부(620)는, 음성 통화가 종료되면 녹음 파일에 대한 저장 여부를 단말기(600)의 사용자에게 질의하고, 질의에 대한 사용자의 응답에 따라 녹음 파일을 저장할 수 있다. When the voice call ends, the voice recorder 620 may ask the user of the terminal 600 whether or not to save the recorded file, and store the recorded file according to the user's response to the query.
음성 녹음부(620)는 녹음 파일에 대응하는 음성 데이터를 텍스트 데이터로 변환하여 녹음 파일과 함께 단말기(600)에 저장할 수 있다. 이때, 음성 녹음부(620)는 녹음 파일에 STT(Speech to Text) 기능을 적용하여 음성 데이터를 텍스트 데이터로 변환할 수 있다.The voice recorder 620 may convert voice data corresponding to a recorded file into text data and store the converted text data in the terminal 600 together with the recorded file. In this case, the voice recorder 620 may convert the voice data into text data by applying a speech to text (STT) function to the recorded file.
음성 특징 추출부(630)는 기 설정된 일정 기간동안 생성된 녹음 파일로부터 사용자의 음성 특징 정보를 추출하고, 음성 특징 정보를 단말기(600)에 저장할 수 있다. 이때, 음성 특징 추출부(630)는 멜 주파수 셉스트럴(MFC)과 같은 음성 처리 방법을 이용하여 음성 특징 정보를 추출할 수 있다. 또한, 음성 특징 추출부(630)는 음성 샘플 정보를 학습된 음성 특징 추출 모델(예를 들어, 인공신경망)에 입력하여 음성 특징 정보를 추출할 수 있다. 음성 특징 추출부(630)는 음성 특징 정보를 임베딩 벡터로 나타낼 수 있다. 음성 특징 추출부(630)는 도 2의 음성 특징 추출부(330)와 동일한 동작을 수행하므로, 그 상세한 설명은 생략하기로 한다. The voice feature extractor 630 may extract user voice feature information from a recorded file generated during a predetermined period of time and store the voice feature information in the terminal 600 . In this case, the voice feature extractor 630 may extract voice feature information using a voice processing method such as Mel Frequency Cepstral (MFC). In addition, the voice feature extractor 630 may extract voice feature information by inputting voice sample information to a learned voice feature extraction model (eg, an artificial neural network). The voice feature extractor 630 may represent voice feature information as an embedding vector. Since the voice feature extractor 630 performs the same operation as the voice feature extractor 330 of FIG. 2 , a detailed description thereof will be omitted.
음성 합성 서비스부(640)는 단말기(600)에서 제공되는 음성 신호의 사용자 음성으로 변환 명령 수신 시, 단말기(600)로부터 사용자의 음성 특징 정보를 추출하고, 음성 특징 정보 및 상기 음성 신호를 기계학습에 적용하여 음성 신호에 대한 음성 데이터를 생성할 수 있다. When the voice synthesis service unit 640 receives a command to convert the voice signal provided by the terminal 600 into the user's voice, the voice feature information of the user is extracted from the terminal 600, and the voice feature information and the voice signal are machine-learned. It can be applied to generate voice data for a voice signal.
예를 들면, 단말기(600)에서 제공하는 메시지 수신 알림, 및 전화 수신 알림 등 다양한 알림에 대한 음성 신호를 사용자의 음성으로 제공할 수 있다. For example, voice signals for various notifications such as message reception notification and call reception notification provided by the terminal 600 may be provided with the user's voice.
또한 음성 합성 서비스부(640)는 사용자로부터 텍스트를 포함하는 음성 합성 요청 신호 수신 시, 단말기(600)로부터 사용자의 음성 특징 정보를 추출하고, 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성할 수 있다. 즉, 음성 합성 서비스부(640)는 텍스트 특징 벡터와 음성 특징 정보를 나타내는 임베딩 벡터를 음성 합성 모델에 입력하여, 텍스트를 음성 데이터로 변환할 수 있다. In addition, when receiving a voice synthesis request signal including text from the user, the voice synthesis service unit 640 extracts voice feature information of the user from the terminal 600, applies the voice feature information and the text to machine learning, and converts the text into text. Voice data for can be generated. That is, the speech synthesis service unit 640 may convert text into speech data by inputting a text feature vector and an embedding vector representing speech feature information to a speech synthesis model.
본 발명의 실시예에 따른 단말기(600)는 입출력부(I/O 장치; 미도시)를 더 포함할 수 있다. 입출력부는 사용자로부터 입력을 직접 수신할 수 있다. 또한, 입출력부는 사용자에게 음성, 영상 또는 텍스트 중 적어도 하나를 출력할 수 있다.The terminal 600 according to an embodiment of the present invention may further include an input/output unit (I/O device; not shown). The input/output unit may directly receive an input from a user. Also, the input/output unit may output at least one of voice, video, and text to the user.
한편, 음성 녹음부(620), 음성 특징 추출부(630), 및 음성 합성 서비스부(640)는 컴퓨팅 장치 상에서 프로그램을 실행하기 위해 필요한 프로세서 등에 의해 각각 구현될 수 있다. 이처럼 음성 녹음부(620), 음성 특징 추출부(630), 및 음성 합성 서비스부(640)는 물리적으로 독립된 각각의 구성으로 구현될 수도 있고, 하나의 프로세서 내에서 기능적으로 구분되는 형태로 구현될 수도 있다. Meanwhile, the voice recording unit 620, the voice feature extraction unit 630, and the voice synthesis service unit 640 may each be implemented by a processor required to execute a program on a computing device. As such, the voice recording unit 620, the voice feature extraction unit 630, and the voice synthesis service unit 640 may be implemented as physically independent components, or implemented in a functionally distinct form within one processor. may be
제어부(650)는 저장부(610), 음성 녹음부(620), 음성 특징 추출부(630), 및 음성 합성 서비스부(640)를 포함하는 단말기(600)의 다양한 구성부들의 동작을 제어하는 구성으로, 적어도 하나의 연산 장치를 포함할 수 있는데, 여기서 상기 연산 장치는 범용적인 중앙연산장치(CPU), 특정 목적에 적합하게 구현된 프로그래머블 디바이스 소자(CPLD, FPGA), 주문형 반도체 연산장치(ASIC) 또는 마이크로 컨트롤러 칩일 수 있다.The control unit 650 controls the operation of various components of the terminal 600 including the storage unit 610, the voice recording unit 620, the voice feature extraction unit 630, and the voice synthesis service unit 640. As a configuration, it may include at least one arithmetic unit, wherein the arithmetic unit is a general-purpose central processing unit (CPU), a programmable device element (CPLD, FPGA) implemented to suit a specific purpose, and an application specific semiconductor processing unit (ASIC). ) or a microcontroller chip.
상기와 같이 구성되는 단말기(600)는 음성 녹음 및 음성 합성 서비스 프로그램(애플리케이션 또는 애플릿)의 이용이 가능하고, 다양한 유무선 환경에 적용될 수 있는 전자 기기일 수 있다. 예컨대, 단말기(600)는 PDA(Personal Digital Assistant), 스마트폰, 셀룰러폰, PCS(Personal Communication Service)폰, GSM(Global System for Mobile)폰, W-CDMA(Wideband CDMA)폰, CDMA-2000폰, MBS(Mobile Broadband System)폰 등을 포함한다. The terminal 600 configured as described above may be an electronic device capable of using voice recording and voice synthesis service programs (applications or applets) and applicable to various wired/wireless environments. For example, the terminal 600 may include a personal digital assistant (PDA), a smart phone, a cellular phone, a personal communication service (PCS) phone, a global system for mobile (GSM) phone, a wideband CDMA (W-CDMA) phone, and a CDMA-2000 phone. , Mobile Broadband System (MBS) phones, and the like.
상술한 바와 같이, 본 발명의 일 실시예에 따른 음성 합성 서비스를 제공하는 장치, 단말기 및 방법은, 입력된 텍스트를 사용자의 음성으로 변환하여 제공할 수 있다. As described above, the apparatus, terminal, and method for providing a voice synthesis service according to an embodiment of the present invention may convert input text into a user's voice and provide the same.
본 발명의 다른 실시예에 따른 음성 합성 서비스를 제공하는 장치, 단말기 및 방법은, 유튜브, SNS 홍보 영상, 및 기업 홍보 영상 등의 동영상에 사용자 본인의 목소리를 더빙하여 제공할 수 있다. An apparatus, terminal, and method for providing a voice synthesis service according to another embodiment of the present invention may dub and provide a user's own voice to videos such as YouTube, SNS promotional videos, and corporate promotional videos.
본 발명의 또 다른 실시예에 따른 음성 합성 서비스를 제공하는 장치, 단말기 및 방법은, 전자책을 사용자가 원하는 사람의 음성으로 들을 수 있다. An apparatus, terminal, and method for providing a voice synthesis service according to another embodiment of the present invention allow a user to listen to an e-book in the voice of a person desired by the user.
본 발명의 또 다른 실시예에 따른 음성 합성 서비스를 제공하는 장치, 단말기 및 방법은, 돌아가신 분의 생전 음성을 지인들에게 전달할 수 있고, 가족 행사 등에 대한 안내를 음성으로 전달할 수 있다.An apparatus, terminal, and method for providing a voice synthesis service according to another embodiment of the present invention can transmit the voice of a deceased person during his or her lifetime to acquaintances, and can deliver information about family events and the like by voice.
본 발명은 도면에 도시된 실시예를 참고로 하여 설명되었으나, 이는 예시적인 것에 불과하며, 당해 기술이 속하는 분야에서 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시예가 가능하다는 점을 이해할 것이다.The present invention has been described with reference to the embodiments shown in the drawings, but this is only exemplary, and those skilled in the art can make various modifications and equivalent other embodiments. will understand
따라서 본 발명의 진정한 기술적 보호범위는 아래의 특허청구범위에 의해서 정하여져야 할 것이다.Therefore, the true technical protection scope of the present invention should be determined by the claims below.
100 : 사용자 단말기
200 : 서비스 제공 장치
300 : 음성 합성 서비스 제공 장치
310 : 통신부
320 : 음성 데이터베이스
330, 630 : 음성 특징 추출부
340, 640 : 음성 합성 서비스부
350, 650 : 제어부
600 : 단말기
610 : 저장부
620 : 음성 녹음부100: user terminal
200: service providing device
300: voice synthesis service providing device
310: Communication Department
320: voice database
330, 630: voice feature extraction unit
340, 640: speech synthesis service department
350, 650: control unit
600: terminal
610: storage unit
620: voice recording unit
Claims (10)
단말기로부터 제시어에 대한 사용자의 음성 샘플 정보를 수신하고, 상기 음성 샘플 정보로부터 상기 사용자의 음성 특징 정보를 추출하며, 상기 음성 특징 정보를 상기 음성 데이터베이스에 저장하는 음성 특징 추출부; 및
상기 사용자로부터 텍스트를 포함하는 음성 합성 요청 신호 수신 시, 상기 음성 데이터베이스로부터 상기 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성하는 음성 합성 서비스부를 포함하되,
상기 음성 합성 서비스부는,
상기 텍스트를 한글 자모 단위로 분해하여 자모 단위 입력을 생성하고, 분해된 자모에 각각 번호를 매기며, 각 자모별 번호가 일대일 대응되는 색인표를 구성하고 색인표에 따라 번호를 매겨 상기 텍스트를 숫자 데이터로 변환하며, 상기 숫자 데이터로 매핑된 텍스트를 원-핫 인코딩(One-hot encoding)하여 원-핫 인코딩된 벡터열을 생성하고, 원-핫 인코딩된 벡터열을 문장 임베딩 매트릭스와 곱하여 텍스트 특징 벡터로 변환하며, 상기 음성 특징 정보를 나타내는 임베딩 벡터와 상기 텍스트 특징 벡터를 음성 합성 모델에 입력하여, 상기 텍스트를 음성 데이터로 변환하고,
상기 음성 샘플 정보는 상기 사용자의 음성 특징과 관련된 정보를 나타내는 음성 스펙트럼 데이터를 포함하고,
상기 음성 특징 정보는 포먼트(Formant) 정보, 주파수(Log f0) 정보, LPC(Linear Predictive Coefficient) 정보, 스펙트럼 포락선(Spectral Envelope) 정보, 에너지(Energy) 정보, 발화 속도(Pitch Period) 정보, 및 로그 스펙트럼(Log Spectrum)을 포함하며,
상기 음성 합성 서비스부는,
테마별 이미지 템플릿을 제공하고, 상기 사용자에 의해 선택된 이미지 템플릿에 대한 편집 정보를 입력받으며, 편집된 이미지 템플릿을 저장하는 이미지 템플릿 서비스부;
상기 사용자로부터 입력받은 동영상 또는 기 저장된 동영상의 편집을 위한 디자인 템플릿을 제공하고, 상기 디자인 템플릿을 통해 상기 동영상의 편집정보를 수신하며, 텍스트 및 더빙자 정보를 포함하는 동영상 더빙 요청 수신 시, 상기 음성 데이터베이스로부터 상기 더빙자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성하며, 상기 음성 데이터를 상기 동영상에 적용하는 동영상 편집 서비스부;
상기 사용자로부터 문자 메시지를 입력 받으면, 상기 음성 데이터베이스로부터 상기 사용자의 음성 특징 정보를 추출하고, 상기 문자 메시지에 음성 특징 정보를 적용하여 문자 메시지를 음성으로 제공하는 음성 메시지 서비스부; 및
상기 사용자로부터 전자책 및 리더(reader) 정보를 포함하는 전자책 더빙 요청 수신 시, 상기 음성 데이터베이스로부터 상기 리더의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 전자책을 기계학습에 적용하여 상기 전자책에 대한 음성 데이터를 생성하는 더빙 서비스부를 포함하고,
상기 단말기는,
음성 통화의 연결을 감지하여 통화 중 음성을 음성 데이터로 변환하고, 상기 음성 데이터에 대응하는 녹음 파일을 생성하는 음성 녹음부;
기 설정된 일정 기간동안 생성된 녹음 파일로부터 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보를 저장부에 저장하는 음성 특징 추출부; 및
상기 단말기에서 제공되는 음성 신호의 사용자 음성으로 변환 명령 수신 시, 상기 저장부로부터 상기 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 음성 신호를 기계학습에 적용하여 상기 음성 신호에 대한 음성 데이터를 생성하는 음성 합성 서비스부를 포함하고,
상기 음성 녹음부는,
통화 상대의 음성을 필터링하기 위해 사전에 사용자의 음성을 등록하고,
상기 사용자와 통화 상대가 동시에 말할 경우, 통화 상대의 음성이 사용자 음성과 유사할 경우, 및 잡음에 의해 불분명한 음성이 발생할 경우 중 적어도 하나의 경우에 사용자 음성과 통화 상대의 음성 간의 주파수 특성을 분석하여 통화 상대의 음성을 묵음으로 처리하여 필터링하고,
상기 녹음 파일이 생성되기 이전 통화 대기 상태에서 녹음 파일의 생성에 대해서 사전 안내 문구를 출력하거나, 음성 통화가 연결되어 녹음 파일이 생성되는 중에 녹음 파일이 생성 중인 상황에 대한 안내 문구를 디스플레이 일부에 출력하며,
상기 음성 합성 서비스부는,
상기 단말기에서 제공하는 메시지 수신 알림, 및 전화 수신 알림을 포함하는 알림에 대한 음성 신호를 사용자의 음성으로 제공하는 것을 특징으로 음성 합성 서비스 제공 장치.
voice database;
a voice feature extractor configured to receive user voice sample information for a suggested word from a terminal, extract voice feature information of the user from the voice sample information, and store the voice feature information in the voice database; and
When receiving a voice synthesis request signal including text from the user, extracting voice feature information of the user from the voice database and applying the voice feature information and the text to machine learning to generate voice data for the text Including a speech synthesis service unit,
The speech synthesis service unit,
The text is decomposed into Hangul consonant units to generate consonant unit inputs, each decomposed consonant is numbered, and an index table in which each consonant number corresponds one-to-one is constructed and numbered according to the index table to convert the text into numbers. data, one-hot encoding the text mapped to the numeric data to generate a one-hot encoded vector sequence, and multiplying the one-hot encoded vector sequence with a sentence embedding matrix to characterize the text. vector, input the embedding vector representing the speech feature information and the text feature vector to a speech synthesis model, and convert the text into speech data;
The voice sample information includes voice spectrum data representing information related to voice characteristics of the user,
The speech feature information includes formant information, frequency (Log f0) information, LPC (Linear Predictive Coefficient) information, Spectral Envelope information, Energy information, Pitch Period information, and Including Log Spectrum,
The speech synthesis service unit,
an image template service unit that provides image templates for each theme, receives edit information on the image template selected by the user, and stores the edited image template;
A design template for editing a video input from the user or a previously stored video is provided, editing information of the video is received through the design template, and upon receipt of a video dubbing request including text and dubber information, the audio a video editing service unit which extracts voice feature information of the dubber from a database, generates voice data for the text by applying the voice feature information and the text to machine learning, and applies the voice data to the video;
a voice message service unit extracting voice characteristic information of the user from the voice database when receiving a text message from the user and providing the text message in voice by applying the voice characteristic information to the text message; and
When receiving an e-book dubbing request including e-book and reader information from the user, voice feature information of the reader is extracted from the voice database, and the voice feature information and the e-book are applied to machine learning to A dubbing service unit generating audio data for an e-book;
The terminal,
a voice recording unit that detects the connection of a voice call, converts voice during a call into voice data, and creates a recorded file corresponding to the voice data;
a voice feature extraction unit which extracts voice feature information of a user from a recorded file created during a predetermined period of time and stores the voice feature information in a storage unit; and
When receiving a command to convert the voice signal provided by the terminal to the user's voice, the user's voice feature information is extracted from the storage unit, and the voice feature information and the voice signal are applied to machine learning to generate the voice for the voice signal. A speech synthesis service unit generating data;
The voice recorder,
Register the user's voice in advance to filter the voice of the other party,
Analyze the frequency characteristics between the user's voice and the counterpart's voice in at least one of cases where the user and the other party speak at the same time, when the voice of the other party is similar to the user's voice, and when an unclear voice occurs due to noise. to process the voice of the caller as mute and filter it,
In the call standby state before the recording file is created, a preliminary notice about the creation of a recording file is output, or while a voice call is connected and a recording file is being created, a guide sentence about the situation in which a recording file is being created is output on a part of the display. and
The voice synthesis service unit,
An apparatus for providing a voice synthesis service, characterized in that a voice signal for a notification including a message reception notification and a call reception notification provided by the terminal is provided as a user's voice.
음성 통화의 연결을 감지하여 통화 중 음성을 음성 데이터로 변환하고, 상기 음성 데이터에 대응하는 녹음 파일을 생성하는 음성 녹음부; 및
기 설정된 일정 기간동안 생성된 녹음 파일로부터 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보를 상기 저장부에 저장하는 음성 특징 추출부;를 포함하되,
상기 음성 녹음부는,
상기 녹음 파일에 대응하는 음성 데이터를 텍스트 데이터로 변환하여 상기 녹음 파일과 함께 상기 저장부에 저장하고,
단말기에서 제공되는 음성 신호의 사용자 음성으로 변환 명령 수신 시, 상기 저장부로부터 상기 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 음성 신호를 기계학습에 적용하여 상기 음성 신호에 대한 음성 데이터를 생성하는 음성 합성 서비스부를 더 포함하며,
상기 음성 합성 서비스부는, 상기 사용자로부터 텍스트를 포함하는 음성 합성 요청 신호 수신 시, 상기 저장부로부터 상기 사용자의 음성 특징 정보를 추출하고, 상기 음성 특징 정보 및 상기 텍스트를 기계학습에 적용하여 상기 텍스트에 대한 음성 데이터를 생성하되,
상기 음성 합성 서비스부는, 상기 텍스트를 한글 자모 단위로 분해하여 자모 단위 입력을 생성하고, 분해된 자모에 각각 번호를 매기며, 각 자모별 번호가 일대일 대응되는 색인표를 구성하고 색인표에 따라 번호를 매겨 상기 텍스트를 숫자 데이터로 변환하며, 상기 숫자 데이터로 매핑된 텍스트를 원-핫 인코딩(One-hot encoding)하여 원-핫 인코딩된 벡터열을 생성하고, 원-핫 인코딩된 벡터열을 문장 임베딩 매트릭스와 곱하여 텍스트 특징 벡터로 변환하며, 상기 음성 특징 정보를 나타내는 임베딩 벡터와 상기 텍스트 특징 벡터를 음성 합성 모델에 입력하여, 상기 텍스트를 음성 데이터로 변환하고,
상기 음성 특징 정보는 포먼트(Formant) 정보, 주파수(Log f0) 정보, LPC(Linear Predictive Coefficient) 정보, 스펙트럼 포락선(Spectral Envelope) 정보, 에너지(Energy) 정보, 발화 속도(Pitch Period) 정보, 및 로그 스펙트럼(Log Spectrum)을 포함하고,
상기 음성 녹음부는,
통화 상대의 음성을 필터링하기 위해 사전에 사용자의 음성을 등록하고,
상기 사용자와 통화 상대가 동시에 말할 경우, 통화 상대의 음성이 사용자 음성과 유사할 경우, 및 잡음에 의해 불분명한 음성이 발생할 경우 중 적어도 하나의 경우에 사용자 음성과 통화 상대의 음성 간의 주파수 특성을 분석하여 통화 상대의 음성을 묵음으로 처리하여 필터링하고,
상기 녹음 파일이 생성되기 이전 통화 대기 상태에서 녹음 파일의 생성에 대해서 사전 안내 문구를 출력하거나, 음성 통화가 연결되어 녹음 파일이 생성되는 중에 녹음 파일이 생성 중인 상황에 대한 안내 문구를 디스플레이 일부에 출력하며,
상기 음성 합성 서비스부는,
상기 단말기에서 제공하는 메시지 수신 알림, 및 전화 수신 알림을 포함하는 알림에 대한 음성 신호를 사용자의 음성으로 제공하는 것을 특징으로 하는 단말기.storage unit;
a voice recording unit that detects the connection of a voice call, converts voice during a call into voice data, and creates a recorded file corresponding to the voice data; and
A voice feature extraction unit extracting voice feature information of a user from a recorded file generated during a predetermined period of time and storing the voice feature information in the storage unit;
The voice recorder,
Converting voice data corresponding to the recorded file into text data and storing the converted text data together with the recorded file in the storage unit;
When receiving a command to convert the voice signal provided by the terminal to the user's voice, the user's voice characteristic information is extracted from the storage unit, and the voice characteristic information and the voice signal are applied to machine learning to provide voice data for the voice signal. Further comprising a speech synthesis service unit for generating,
When receiving a voice synthesis request signal including text from the user, the voice synthesis service unit extracts voice feature information of the user from the storage unit, applies the voice feature information and the text to machine learning, and converts the text into the text. Generate voice data for
The voice synthesis service unit decomposes the text into Hangul consonant units to generate consonant unit inputs, assigns a number to each decomposed consonant, configures an index table in which numbers for each consonant correspond one-to-one, and numbers according to the index table. to convert the text into numeric data, one-hot encoding the text mapped to the numeric data to generate a one-hot encoded vector sequence, and converting the one-hot encoded vector sequence into a sentence Multiplies with an embedding matrix to convert into text feature vectors, inputs the embedding vectors representing the voice feature information and the text feature vectors to a speech synthesis model, and converts the text into voice data;
The speech feature information includes formant information, frequency (Log f0) information, LPC (Linear Predictive Coefficient) information, Spectral Envelope information, Energy information, Pitch Period information, and Including the log spectrum,
The voice recorder,
Register the user's voice in advance to filter the voice of the other party,
Analyze the frequency characteristics between the user's voice and the counterpart's voice in at least one of cases where the user and the other party speak at the same time, when the voice of the other party is similar to the user's voice, and when an unclear voice occurs due to noise. to process the voice of the caller as mute and filter it,
In the call standby state before the recording file is created, a preliminary notice about the creation of a recording file is output, or while a voice call is connected and a recording file is being created, a guide message about the situation in which a recording file is being created is output on a part of the display. and
The speech synthesis service unit,
The terminal characterized in that the user's voice is provided as a voice signal for a notification including a message reception notification and a call reception notification provided by the terminal.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200133907A KR102574311B1 (en) | 2020-10-16 | 2020-10-16 | Apparatus, terminal and method for providing speech synthesizer service |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020200133907A KR102574311B1 (en) | 2020-10-16 | 2020-10-16 | Apparatus, terminal and method for providing speech synthesizer service |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20220050342A KR20220050342A (en) | 2022-04-25 |
KR102574311B1 true KR102574311B1 (en) | 2023-09-06 |
Family
ID=81451969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020200133907A KR102574311B1 (en) | 2020-10-16 | 2020-10-16 | Apparatus, terminal and method for providing speech synthesizer service |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR102574311B1 (en) |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015094811A (en) * | 2013-11-11 | 2015-05-18 | 株式会社日立製作所 | System and method for visualizing speech recording |
KR101876115B1 (en) * | 2017-01-12 | 2018-07-06 | 김동훈 | A System Providing E-book Service Reading Text With Target User’s Voice |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR20080060911A (en) * | 2006-12-27 | 2008-07-02 | 엘지전자 주식회사 | Method for outputting synthesis to individual voice |
EP3739572A4 (en) * | 2018-01-11 | 2021-09-08 | Neosapience, Inc. | Text-to-speech synthesis method and apparatus using machine learning, and computer-readable storage medium |
KR20200045852A (en) * | 2018-10-23 | 2020-05-06 | 스마트이어 주식회사 | Speech and image service platform and method for providing advertisement service |
KR20200078248A (en) * | 2018-12-21 | 2020-07-01 | 서울대학교산학협력단 | Multi-hot vector embedding method and system for concise hangul syllable representation |
-
2020
- 2020-10-16 KR KR1020200133907A patent/KR102574311B1/en active IP Right Grant
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2015094811A (en) * | 2013-11-11 | 2015-05-18 | 株式会社日立製作所 | System and method for visualizing speech recording |
KR101876115B1 (en) * | 2017-01-12 | 2018-07-06 | 김동훈 | A System Providing E-book Service Reading Text With Target User’s Voice |
Also Published As
Publication number | Publication date |
---|---|
KR20220050342A (en) | 2022-04-25 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230012984A1 (en) | Generation of automated message responses | |
KR102582291B1 (en) | Emotion information-based voice synthesis method and device | |
CN107516511B (en) | Text-to-speech learning system for intent recognition and emotion | |
CN105788589B (en) | Audio data processing method and device | |
US11361753B2 (en) | System and method for cross-speaker style transfer in text-to-speech and training data generation | |
US10140973B1 (en) | Text-to-speech processing using previously speech processed data | |
US6711543B2 (en) | Language independent and voice operated information management system | |
Rudnicky et al. | Survey of current speech technology | |
KR102097710B1 (en) | Apparatus and method for separating of dialogue | |
CN112786007A (en) | Speech synthesis method, device, readable medium and electronic equipment | |
Gibbon et al. | Spoken language system and corpus design | |
CN113470622B (en) | Conversion method and device capable of converting any voice into multiple voices | |
WO2023035261A1 (en) | An end-to-end neural system for multi-speaker and multi-lingual speech synthesis | |
US11600261B2 (en) | System and method for cross-speaker style transfer in text-to-speech and training data generation | |
Nafis et al. | Speech to text conversion in real-time | |
CN116917984A (en) | Interactive content output | |
CN116312471A (en) | Voice migration and voice interaction method and device, electronic equipment and storage medium | |
Abdullaeva et al. | Uzbek Speech synthesis using deep learning algorithms | |
Thennattil et al. | Phonetic engine for continuous speech in Malayalam | |
KR102574311B1 (en) | Apparatus, terminal and method for providing speech synthesizer service | |
Gilbert et al. | Intelligent virtual agents for contact center automation | |
Janokar et al. | Text-to-Speech and Speech-to-Text Converter—Voice Assistant | |
Venkatagiri | Speech recognition technology applications in communication disorders | |
JP2001209644A (en) | Information processor, information processing method and recording medium | |
CN116564286A (en) | Voice input method and device, storage medium and electronic equipment |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AMND | Amendment | ||
E90F | Notification of reason for final refusal | ||
AMND | Amendment | ||
E601 | Decision to refuse application | ||
X091 | Application refused [patent] | ||
AMND | Amendment | ||
X701 | Decision to grant (after re-examination) | ||
GRNT | Written decision to grant |