[go: up one dir, main page]

KR102290901B1 - Song playing system - Google Patents

Song playing system Download PDF

Info

Publication number
KR102290901B1
KR102290901B1 KR1020210000124A KR20210000124A KR102290901B1 KR 102290901 B1 KR102290901 B1 KR 102290901B1 KR 1020210000124 A KR1020210000124 A KR 1020210000124A KR 20210000124 A KR20210000124 A KR 20210000124A KR 102290901 B1 KR102290901 B1 KR 102290901B1
Authority
KR
South Korea
Prior art keywords
data
tts
accompaniment
lyric
song
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
KR1020210000124A
Other languages
Korean (ko)
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 KR1020210000124A priority Critical patent/KR102290901B1/en
Application granted granted Critical
Publication of KR102290901B1 publication Critical patent/KR102290901B1/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/36Accompaniment arrangements
    • G10H1/361Recording/reproducing of accompaniment for use with an external source, e.g. karaoke systems
    • G10H1/365Recording/reproducing of accompaniment for use with an external source, e.g. karaoke systems the accompaniment information being stored on a host computer and transmitted to a reproducing terminal by means of a network, e.g. public telephone lines
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION 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/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/10Services
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2210/00Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
    • G10H2210/005Musical accompaniment, i.e. complete instrumental rhythm synthesis added to a performed melody, e.g. as output by drum machines

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Acoustics & Sound (AREA)
  • Health & Medical Sciences (AREA)
  • General Engineering & Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Human Resources & Organizations (AREA)
  • Multimedia (AREA)
  • Primary Health Care (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Reverberation, Karaoke And Other Acoustics (AREA)

Abstract

The present invention relates to a karaoke system to enable a user to intuitively and easily recognize lyrics. According to the present invention, the karaoke system comprises: a user terminal configured to prepare MR data including melody information for a predetermined song and accompaniment data including text-to-speech (TTS) data matching the MR data when a request for singing for the predetermined is input from a user; and a central server configured to communicate with the user terminal through a network, and when a request for transmission of the accompaniment data of the predetermined song is received from the user terminal, generating the TTS data including TTS information to be output between at least one or more adjacent lyric lines on the basis of a lyrics format including time information for each lyric line and time information for each lyric syllable of the predetermined song and transmit the TTS data together with the MR data as the accompaniment data to the user terminal. The user terminal is configured to execute the accompaniment data on the basis of an operation mode when the accompaniment data provided from the central server is prepared.

Description

노래 반주 시스템{SONG PLAYING SYSTEM}Song accompaniment system {SONG PLAYING SYSTEM}

본 발명은 노래 반주 시스템에 관한 것으로서, 구체적으로는 음성으로 멜로디에 대응하는 가사를 미리 출력하여 사용자에게 아음 멜로디에 대응되는 가사를 인지시킬 수 있으며, 사용자의 음성 명령에 따라 노래 반주 모드를 변경시킬 수 있는 노래 반주 시스템에 관한 것이다.The present invention relates to a song accompaniment system, and more specifically, by outputting lyrics corresponding to a melody in advance by voice, the user can recognize the lyrics corresponding to the melody of Aeum, and changing the song accompaniment mode according to the user's voice command. It is about a possible song accompaniment system.

종래의 노래 반주기는 다수의 가요에 대하여 각 노래별로 식별코드가 부여되고, 각 식별코드에 대응하는 반주 정보와 영상 정보를 저장하고 있다. 즉, 종래의 노래 반주기는 사용자가 특정 식별코드를 선택함에 따라 대응하여 미리 저장된 가요 반주를 영상 정보와 함께 출력하여 사용자가 용이하게 노래를 부를 수 있도록 지원한다. In the conventional song accompaniment, an identification code is assigned to each song for a plurality of songs, and accompaniment information and image information corresponding to each identification code are stored. That is, in the conventional song accompaniment, when the user selects a specific identification code, the pre-stored song accompaniment is output together with the image information to support the user to easily sing.

한편, 스피커를 통해 출력되는 가요 반주와 함께 디스플레이를 통해 출력되는 영상 정보에는 다양한 정보가 포함될 수 있다. 일례로, 가사 정보, 음의 높낮이 정보, 타이밍 정보 등이 그러하다. 즉, 디스플레이에 가사를 표시하여 반주에 동기화되는 가사의 도움으로 사용자가 쉽게 노래를 부를 수 있도록 지원 가능하다. Meanwhile, various information may be included in the image information output through the display together with the music accompaniment output through the speaker. For example, lyric information, pitch information, timing information, and the like are such. That is, by displaying the lyrics on the display, it is possible to support the user to easily sing a song with the help of the lyrics synchronized to the accompaniment.

그러나, 사용자가 디스플레이를 시청하지 못하는 환경하에서, 예를 들어, 사용자가 운전 중이거나, 또는 노래 반주기 자체가 디스플레이를 지원하지 않는 마이크 형태의 장치인 경우에는 반주 정보로서의 멜로디 제공만으로는 효과적으로 사용자가 노래를 부를 수 있도록 지원하는데는 한계가 있을 수 밖에 없다. However, in an environment in which the user cannot view the display, for example, if the user is driving, or if the song accompaniment itself is a microphone-type device that does not support the display, only providing the melody as accompaniment information effectively allows the user to sing the song. There is bound to be a limit to the support that can be called.

이에, 선행 특허(KR10-2050785)가 제안된 바 있다. 선행 특허는 노래 가사 출력 방법, 노래 반주기 및 노래 반주 시스템으로, 반주기가 서버로부터 미디 파일을 제공받고, 반주기에서 멜로디의 공백과 템포를 분석해서 공백 기간에 적당한 템포로 이어질 가사를 읽어주는 것을 특징으로 하고 있다. Accordingly, a prior patent (KR10-2050785) has been proposed. The preceding patent is a song lyrics output method, song accompaniment and song accompaniment system, in which the accompaniment receives a MIDI file from the server, analyzes the melody gap and tempo in the accompaniment period, and reads the lyrics that lead to an appropriate tempo during the blank period. are doing

그러나, 해당 선행 특허는 클라이언트측인 반주기 자체에서 미디 파일을 기초로 하여 분석을 해야 한다는 점에서 로딩을 위해선 추가적인 처리 시간이 필요할 수 밖에 없으며, 이 경우, 반주기 자체의 성능에 따라 서비스 이용의 품질이 좌지우지될 수밖에 없다. 또한, 사용자가 운전 중 이용할 때, 예를 들어, 차량이 통신이 원활하지 못한 지역을 통과할 때는 서버와의 통신을 통해 용량이 큰 미디 파일을 반주기가 송신받는 경우, 서비스를 이용하는데 있어 제한이 있을 수밖에 없다.However, the previous patent requires additional processing time for loading in that the client-side half cycle itself needs to analyze based on the MIDI file, and in this case, the quality of service use depends on the performance of the half cycle itself. have no choice but to be dominated In addition, when the user uses the service while driving, for example, when the vehicle passes through an area where communication is not smooth, there is a limitation in using the service when a large-capacity MIDI file is transmitted through communication with the server in half a cycle. there has to be

이에, 다른 방식의 서비스 제안이 요구된다. Accordingly, a different type of service proposal is required.

KRUS 10-205078510-2050785 B1B1

본 발명은 상기와 같은 문제점을 해결하기 위한 것으로, 디스플레이가 제공되지 않는 노래 반주 시스템에 있어서, 사용자가 쉽고 직관적으로 노래 가사를 인식하는 동시에, 반주기 자체의 성능 문제를 경감하고, 서버로부터의 송수신에 따른 데이터의 처리에 부하를 경감하게 하는 노래 반주 시스템을 제공하는데 목적이 있다. The present invention is to solve the above problems, and in a song accompaniment system that does not provide a display, a user can easily and intuitively recognize song lyrics, reduce the performance problem of the accompaniment itself, and An object of the present invention is to provide a song accompaniment system that reduces the load on data processing.

상기한 본 발명의 목적을 실현하기 위한 일 실시예에 따른 노래 반주 시스템으로서, 사용자로부터 특정 노래에 대한 부르기 신청이 입력되면, 상기 특정 노래에 대한 멜로디 정보를 포함한 MR 데이터 및 상기 MR 데이터와 매칭되는 TTS(Text to Speech) 데이터를 포함하는 반주 데이터를 준비하도록 구성되는 사용자 단말, 및 상기 사용자 단말과 네트워크로 통해 통신하고, 상기 사용자 단말로부터 상기 특정 노래에 대한 반주 데이터의 전송 요청이 수신되면, 상기 특정 노래의 가사 라인별 시간 정보 및 가사 음절별 시간 정보를 포함하는 가사 포맷에 기초하여, 적어도 하나 이상의 인접하는 가사 라인들의 사이에 출력될 TTS 정보를 포함한 TTS 데이터를 생성하고, 상기 TTS 데이터를 상기 MR 데이터와 함께 상기 반주 데이터로서 상기 사용자 단말로 전송하도록 구성되는 중앙 서버를 포함하고, 상기 사용자 단말은 상기 중앙 서버로부터 제공받은 상기 반주 데이터가 준비되면, 동작 모드에 기초하여 상기 반주 데이터를 실행하도록 구성된다.As a song accompaniment system according to an embodiment for realizing the object of the present invention, when a request to sing a specific song is input from a user, MR data including melody information for the specific song and the MR data are matched A user terminal configured to prepare accompaniment data including Text to Speech (TTS) data, and communicate with the user terminal through a network, and when a request for transmission of accompaniment data for the specific song is received from the user terminal, the TTS data including TTS information to be output between at least one or more adjacent lyric lines is generated based on a lyric format including time information for each lyric line and time information for each lyric syllable of a specific song, and the TTS data is used to generate the TTS data. and a central server configured to transmit to the user terminal as the accompaniment data together with the MR data, wherein the user terminal executes the accompaniment data based on an operation mode when the accompaniment data provided from the central server is prepared. is composed

본 발명의 일 실시예에 있어서, 상기 사용자 단말은, 사용자로부터 특정 노래에 대한 부르기 신청이 입력되면, 상기 특정 노래에 대한 반주 데이터가 저장되어 있는지 여부를 판단하고, 상기 반주 데이터가 저장되어 있는 경우, 상기 중앙 서버로 상기 반주 데이터의 전송 요청없이 상기 반주 데이터를 준비하여 실행하고, 상기 반주 데이터가 저장되어 있지 않은 경우, 상기 중앙 서버로 상기 반주 데이터의 전송을 요청할 수 있다. In one embodiment of the present invention, when a request for singing a specific song is input by the user, the user terminal determines whether accompaniment data for the specific song is stored, and if the accompaniment data is stored , the accompaniment data may be prepared and executed without a request for transmission of the accompaniment data to the central server, and when the accompaniment data is not stored, the accompaniment data may be requested to be transmitted to the central server.

본 발명의 일 실시예에 있어서, 상기 사용자 단말은, 사용자의 음성에 따라 제어가 가능하며, 사용자로부터 입력되는 음성으로부터 추출된 명령어에 기초하여 상기 반주 데이터의 동작 모드가 결정될 수 있다.In an embodiment of the present invention, the user terminal may be controlled according to the user's voice, and the operation mode of the accompaniment data may be determined based on a command extracted from the voice input from the user.

본 발명의 일 실시예에 있어서, 상기 동작 모드는 상기 MR 데이터만을 실행하는 가창 모드 및 상기 MR 데이터와 함께 상기 TTS 데이터를 실행하는 연습 모드를 포함할 수 있다. In one embodiment of the present invention, the operation mode may include a singing mode in which only the MR data is executed and a practice mode in which the TTS data is executed together with the MR data.

본 발명의 일 실시예에 있어서, 상기 연습 모드는 인접하는 가사 라인들의 사이에서 TTS로 다음 가사 라인의 음절을 읽어주는 제1 연습 모드 및 각 가사 라인의 멜로디 시작 전에 TTS로 해당 가사 라인의 음절을 읽어주는 제2 연습 모드를 포함할 수 있다. In one embodiment of the present invention, the practice mode includes a first practice mode that reads a syllable of a next lyric line by TTS between adjacent lyric lines, and a TTS before starting a melody of each lyric line. A second practice mode for reading may be included.

본 발명의 일 실시예에 있어서, 상기 제2 연습 모드는 TTS로 가사 라인의 음절을 읽어주기 전까지 해당 가사 라인의 멜로디의 진행을 정지할 수 있다. In one embodiment of the present invention, in the second practice mode, the progress of the melody of the corresponding lyrics line may be stopped until the syllable of the lyrics line is read by TTS.

본 발명의 일 실시예에 있어서, 상기 중앙 서버는, 상기 사용자 단말로부터 상기 특정 노래에 대한 반주 데이터의 전송 요청이 수신되면, 상기 특정 노래에 대한 반주 데이터가 저장되어 있는지 여부를 판단하고, 상기 반주 데이터가 저장되어 있는 경우, 상기 TTS 데이터의 생성없이 상기 반주 데이터를 상기 사용자 단말로 전송하고, 상기 반주 데이터가 저장되어 있지 않은 경우, 상기 TTS 데이터를 생성하도록 구성될 수 있다. In an embodiment of the present invention, when a request for transmission of accompaniment data for the specific song is received from the user terminal, the central server determines whether accompaniment data for the specific song is stored, and the accompaniment When data is stored, the accompaniment data is transmitted to the user terminal without generating the TTS data, and when the accompaniment data is not stored, the TTS data is generated.

본 발명의 일 실시예에 있어서, 상기 중앙 서버는, 가사 포맷의 가사 라인별 시간 정보에 기초하여, 인접하는 가사 라인들 간격에 대한 시간 정보를 추출하고, 상기 간격의 시간의 길이가 미리 정해진 기준보다 짧은 경우, 해당 가사 라인들의 사이에는 TTS 데이터를 생성하지 않을 수 있다. In an embodiment of the present invention, the central server extracts time information for an interval between adjacent lyrics lines based on the time information for each lyrics line in the lyrics format, and the length of the interval is a predetermined criterion In a shorter case, TTS data may not be generated between corresponding lyrics lines.

본 발명의 일 실시예에 있어서, 상기 중앙 서버는, 상기 가사 포맷의 가사 라인별 시간 정보 및 가사 음절별 시간 정보에 기초하여, 인접하는 가사 라인들 중 뒷 가사 라인에 포함되는 가사의 음절 수 및 음절 당 미리 정해진 TTS 제공 시간의 곱을 통해 해당 가사 라인의 TTS 제공 시간을 산출하고, 상기 뒷 가사 라인의 첫 가사 음절의 시작 시점으로부터 상기 가사 라인의 TTS 제공 시간만큼 앞선 시점을, 상기 가사 라인의 TTS 제공 시점으로 결정할 수 있다. In an embodiment of the present invention, the central server is configured to: based on the time information for each lyric line and the time information for each lyric syllable in the lyric format, the number of syllables of the lyrics included in the rear lyric line among the adjacent lyric lines; The TTS provision time of the corresponding lyric line is calculated by multiplying the predetermined TTS provision time per syllable, and the time point preceding the TTS provision time of the lyric line from the start time of the first lyric syllable of the following lyric line, the TTS of the lyric line It can be decided at the time of delivery.

본 발명의 일 실시예에 있어서, 상기 중앙 서버는, 산출된 상기 가사 라인의 TTS 제공 시간이, 상기 인접하는 가사 라인들의 시간 간격보다 긴 경우, 상기 TTS 제공 시간을 단축시켜, 상기 가사 라인의 TTS 제공 시점이 상기 인접하는 가사 라인들의 시간 간격 내에 위치하도록 할 수 있다. In an embodiment of the present invention, when the calculated TTS provision time of the lyrics line is longer than the time interval of the adjacent lyrics lines, the central server shortens the TTS provision time, so that the TTS of the lyrics line The provision point may be located within a time interval of the adjacent lyrics lines.

본 발명에 따른 노래 반주 시스템은, 사용자로부터 부르고자 하는 노래 정보가 입력되면, 서버로부터 멜로디만 포함된 MR 파일과 상기 MR 파일에 매칭되는 노래 가사 음절 별 시간 정보를 기초로 생성된 TTS 데이터 파일을 반주기로 제공함으로써, 반주기로서는 별도의 데이터 처리 및 정보 분석을 할 필요가 없으며, 미디 파일에 비해 상대적으로 용량이 작은 MR 파일과 TTS 데이터 파일만을 수신하면 되기 때문에, 통신 용량을 줄일 수 있어, 반주기 자체의 성능 문제를 경감하고, 서버로부터의 송수신에 따른 데이터의 처리에 부하를 경감시킬 수 있다. 이에 따라, 반주기 성능에 영향을 받지 않고, 사용자가 쉽고 직관적으로 노래 가사를 인식할 수 있는 노래 반주 시스템을 제공할 수 있다. In the song accompaniment system according to the present invention, when information about a song to be sung is input from a user, an MR file including only a melody and a TTS data file generated based on time information for each syllable of song lyrics matching the MR file are generated from the server. By providing a half-cycle, there is no need for separate data processing and information analysis as a half-cycle, and only MR files and TTS data files, which are relatively small compared to MIDI files, need to be received, so communication capacity can be reduced, and the half-cycle itself performance problems, and the load on data processing according to transmission and reception from the server can be reduced. Accordingly, it is possible to provide a song accompaniment system in which a user can easily and intuitively recognize song lyrics without being affected by accompaniment performance.

도 1은 노래 반주 시스템을 설명하기 위한 컨셉 예시도이다.
도 2는 본 발명의 일 실시예에 따른 노래 반주 시스템을 설명하기 위한 블록도이다.
도 3은 도 2의 사용자 단말을 설명하기 위한 블록도이다.
도 4는 도 2의 제어부를 설명하기 위한 블록도이다.
도 5는 제어부의 동작 모드 제어를 설명하기 위한 흐름 예시도이다.
도 6는 도 2의 중앙 서버를 설명하기 위한 블록도이다.
도 7은 도 6의 반주데이터 생성부가 생성하는 TTS의 삽입 타이밍을 설명하기 위한 예시도이다.
도 8는 본 발명의 일 실시예에 따른 노래 반주 시스템을 통해 사용자가 서비스를 이용하는 프로세스를 설명하기 위한 플로우 차트이다.
1 is a conceptual illustration for explaining a song accompaniment system.
2 is a block diagram illustrating a song accompaniment system according to an embodiment of the present invention.
FIG. 3 is a block diagram illustrating the user terminal of FIG. 2 .
FIG. 4 is a block diagram illustrating the control unit of FIG. 2 .
5 is a flowchart illustrating an operation mode control of the controller.
FIG. 6 is a block diagram illustrating the central server of FIG. 2 .
7 is an exemplary diagram for explaining the insertion timing of the TTS generated by the accompaniment data generator of FIG. 6 .
8 is a flowchart for explaining a process for a user to use a service through a song accompaniment system according to an embodiment of the present invention.

이하, 첨부한 도면을 참조하여 본 발명이 속하는 기술 분야에서 통상의 지식을 가진 자가 용이하게 실시할 수 있도록 본 발명의 바람직한 실시예를 상세히 설명한다. 다만, 본 발명은 여러 가지 상이한 형태로 구현될 수 있으며 여기에서 설명하는 실시예로 한정되지 않는다. 또한, 각 도면의 구성요소들에 참조번호를 부가함에 있어서, 동일한 구성 요소들에 한해서는 비록 다른 도면상에 표시되더라도 동일한 참조번호를 부여한다. 또한, 본 명세서에서 어떤 구성요소가 다른 구성요소에 "연결"되어 있다거나, "접속"되어 있다고 할 때, 이는 양 구성이 "직접적으로" 연결되어 있는 경우뿐 아니라, 그 사이에 다른 구성이 개재하여 연결되어 있는 경우도 포함하며, 또한, "물리적으로" 연결되어 있는 경우뿐만 아니라, "기능적 또는 통신적으로" 연결되어 있는 경우도 포함한다. 또한, 어떤 부분이 어떤 구성요소를 "포함"한다고 할 때, 이는 특별히 반대되는 기재가 없는 한 다른 구성요소를 제외하는 것이 아니라 다른 구성요소를 더 포함할 수 있는 것을 의미한다.Hereinafter, preferred 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 carry out the present invention. However, the present invention may be implemented in various different forms and is not limited to the embodiments described herein. In addition, in adding reference numbers to the components of each drawing, the same reference numbers are given to the same components even though they are shown in different drawings. In addition, in the present specification, when a component is "connected" or "connected" to another component, it is not only when both components are "directly" connected, but also other components are interposed therebetween. It includes cases where they are connected to each other, and also includes cases where they are connected “physically” as well as cases where they are “functionally or communicatively”. In addition, when a part "includes" a certain component, it means that other components may be further included, rather than excluding other components, unless otherwise stated.

도 1은 노래 반주 시스템을 설명하기 위한 컨셉 예시도이다. 도 2는 본 발명의 일 실시예에 따른 노래 반주 시스템을 설명하기 위한 블록도이다. 도 3은 도 2의 사용자 단말을 설명하기 위한 블록도이다. 1 is a conceptual illustration for explaining a song accompaniment system. 2 is a block diagram illustrating a song accompaniment system according to an embodiment of the present invention. FIG. 3 is a block diagram illustrating the user terminal of FIG. 2 .

도 1 내지 도 3을 참조하면, 본 발명의 노래 반주 시스템(1000)은, 사용자가 중앙 서버에서 관리하는 복수의 노래들 중 특정 노래에 대한 노래부르기를 신청하면, 상기 특정 노래에 대한 MR 파일과 상기 MR 파일에 매칭되는 노래 가사 음절 별 시간 정보를 기초로 생성된 TTS 데이터 파일을 사용자 단말기로 제공하도록 구성된다. 본 발명의 노래 반주 시스템(1000)은 사용자가 운전 중이어서, 디스플레이에 표시되는 정보를 지속적으로 볼 수 없는 상황이거나, 또는 디바이스가 그 자체로 디스플레이를 포함하고 있지 않은 경우, 사용자에게 특정 노래에 대한 TTS를 제공하도록 구성된다. 도 1은 본 발명의 노래 반주 시스템(1000)이 T map과 연동되어, 네비게이션 서비스 중 노래 반주 서비스를 제공하는 예시를 나타낸다. 1 to 3 , the song accompaniment system 1000 of the present invention, when a user requests to sing a specific song among a plurality of songs managed by a central server, an MR file for the specific song and and provide a TTS data file generated based on time information for each syllable of song lyrics matching the MR file to the user terminal. The song accompaniment system 1000 of the present invention provides the user with information about a specific song when the user is driving and cannot continuously see the information displayed on the display, or the device does not include a display by itself. configured to provide TTS. 1 shows an example in which the song accompaniment system 1000 of the present invention interworks with T map to provide a song accompaniment service among navigation services.

상기 노래 반주 시스템(1000)은 사용자 단말(100) 및 상기 사용자 단말(100)과 네트워크를 통해 통신하도록 구성되며, 사용자 단말(100)로부터 특정 노래에 대한 반주 데이터의 요청이 있으면, 해당 특정 노래에 대한 반주 데이터를 상기 사용자 단말로 전송하도록 구성된 중앙 서버(300)를 포함한다. The song accompaniment system 1000 is configured to communicate with the user terminal 100 and the user terminal 100 through a network, and when there is a request for accompaniment data for a specific song from the user terminal 100, the specific song and a central server 300 configured to transmit accompaniment data to the user terminal.

상기 사용자 단말(100)은 상기 노래 반주 시스템(1000)을 통해 적어도 하나 이상의 노래 또는 가요(이하, '노래'라고 칭함)를 가창하거나, 따라부르거나, 배우고자 하는 개인(이하, '사용자'라 칭함.)이 소유하고 있는 디바이스나 휴대용 단말로서, 사용자가 웹(Web), 앱(Application) 또는 웹앱의 형태로 상기 네트워크(10)를 통해 상기 중앙 서버(300)에 통신 접속하여 신규 가입 또는 로그인을 수행하고, 사용자가 부르고자 하는 노래에 대한 적어도 하나 이상의 데이터를 제공받아 노래 반주 서비스의 이용이 가능하도록 구성된다. 상기 노래 반주 서비스는 결제에 따른 서비스일 수 있으며, 결제는 예를 들어, 년, 월, 일 기준의 이용 기간에 따라 또는 노래 개수에 따라 비용이 책정될 수 있다. The user terminal 100 sings, sings along, or learns at least one or more songs or songs (hereinafter referred to as 'songs') through the song accompaniment system 1000 (hereinafter referred to as 'users'). As a device or portable terminal owned by a user, a user joins or logs in to the central server 300 through the network 10 in the form of a web, an application, or a web app. is configured to enable the use of a song accompaniment service by receiving at least one or more data about a song that the user wants to sing. The song accompaniment service may be a service according to payment, and payment may be priced according to, for example, a usage period based on year, month, and day or the number of songs.

여기서, 휴대용 단말은 예를 들어, 휴대성과 이동성이 보장되는 무선 통신 장치로서, 스마트폰(smartphone), PCS(Personal Communication System), GSM(Global System for Mobile communication), PDC(Personal Digital Cellular), PHS(Personal Handyphone System), PDA(Personal Digital Assistant), IMT(International Mobile Telecommunication)-2000, CDMA(Code Division Multiple Access)-2000, W-CDMA(W-Code Division Multiple Access), Wibro(Wireless Broadband Internet) 단말 등과 같이 모든 종류의 핸드헬드(Handheld) 기반의 무선 통신 장치를 포함할 수 있다.Here, the portable terminal is, for example, a wireless communication device that guarantees portability and mobility, and includes a smartphone, a Personal Communication System (PCS), a Global System for Mobile communication (GSM), a Personal Digital Cellular (PDC), and a PHS. (Personal Handyphone System), PDA (Personal Digital Assistant), IMT (International Mobile Telecommunication)-2000, CDMA (Code Division Multiple Access)-2000, W-CDMA (W-Code Division Multiple Access), Wibro (Wireless Broadband Internet) It may include all types of handheld-based wireless communication devices such as terminals.

또한, 디바이스는 예를 들어, 통신 가능한 웹브라우저(WEB Browser)가 탑재된 데스크톱(desktop), 랩톱(laptop), 테블릿 PC(Tablet PC) 등을 포함하고, 반주 기능을 수행할 수 있는 스마트 마이크 또는 차량에 설치되는 전장 장비 또는 네비게이션일 수 있다. In addition, the device includes, for example, a desktop, a laptop, a tablet PC, etc. equipped with a communicable web browser (WEB Browser), and a smart microphone capable of performing an accompaniment function. Alternatively, it may be an electronic device or a navigation device installed in a vehicle.

또한, 상기 사용자 단말(100)은 상기 중앙 서버(300)와 통신가능하고, 사용자의 음성신호를 통해 제어가능하며, 사용자로부터 특정 노래에 대한 부르기 신청이 입력되면, 일차적으로 사용자가 해당 노래를 부르는데 있어 필요한 데이터(이하, "반주 데이터"라고 칭한다.)가 사용자 단말의 저장 장치에 저장되어 있는지 여부를 판단하고, 해당 반주 데이터가 저장되어 있지 않으면, 상기 중앙 서버로 반주 데이터의 전송을 요청하도록 구성된다. 상기 반주 데이터는 노래의 반주 정보를 포함하는 MR 파일 및 TTS(Text to Speech) 정보를 포함하고 있는 TTS 데이터 파일을 포함한다. 이후, 상기 중앙 서버(300)로부터 반주 데이터를 전송받으면, 상기 사용자 단말(100)은 MR 파일의 실행과 함께, MR 정보와 매칭되는 TTS 데이터 파일을 실행시키도록 구성된다. TTS 데이터 파일에 대한 설명은 후술하도록 한다. In addition, the user terminal 100 is capable of communicating with the central server 300, controllable through a user's voice signal, and when an application to sing a specific song is input from the user, the user sings the song first. It is configured to determine whether the necessary data (hereinafter referred to as "accompaniment data") is stored in the storage device of the user terminal, and if the corresponding accompaniment data is not stored, request transmission of the accompaniment data to the central server do. The accompaniment data includes an MR file including song accompaniment information and a TTS data file including text to speech (TTS) information. Thereafter, upon receiving the accompaniment data from the central server 300 , the user terminal 100 is configured to execute the MR file and the TTS data file matching the MR information. A description of the TTS data file will be provided later.

구체적으로, 상기 사용자 단말(100)은 통신부(110), 입력부(120), 음성 인식부(130), 제어부(140), TTS 데이터 처리부(150), 출력부(160) 및 저장부(170)를 포함한다. Specifically, the user terminal 100 includes a communication unit 110 , an input unit 120 , a voice recognition unit 130 , a control unit 140 , a TTS data processing unit 150 , an output unit 160 , and a storage unit 170 ). includes

상기 통신부(110)는 네트워크(10)를 통해 상기 중앙 서버(300)와 데이터를 송수신하도록 구성된다. 상기 통신부(110)는 유선랜용 통신 칩셋, 무선랜용 통신 칩셋, 이동통신망에 연결되기 위한 통신 칩셋등과 회로를 구비하여 네트워크(10)로부터 통신 패킷을 송수신할 수 있다. 상기 네트워크(10)는 근거리 통신망(Local Area Network; LAN), 광역 통신망(Wide Area Network; WAN), 부가가치 통신망(Value Added Network; VAN), 개인 근거리 무선통신(Personal Area Network; PAN), 이동 통신망(mobile radio communication network), Wibro(Wireless Broadband Internet), Mobile WiMAX, HSDPA(High Speed Downlink Packet Access) 또는 위성 통신망 등과 같은 모든 종류의 유/무선 네트워크로 구현될 수 있다.The communication unit 110 is configured to transmit and receive data to and from the central server 300 through the network 10 . The communication unit 110 includes a communication chipset for a wired LAN, a communication chipset for a wireless LAN, a communication chipset for connecting to a mobile communication network, and the like and circuits to transmit and receive communication packets from the network 10 . The network 10 includes a Local Area Network (LAN), a Wide Area Network (WAN), a Value Added Network (VAN), a Personal Area Network (PAN), and a mobile communication network. (mobile radio communication network), Wibro (Wireless Broadband Internet), Mobile WiMAX, HSDPA (High Speed Downlink Packet Access), or can be implemented in all types of wired/wireless networks, such as a satellite communication network.

상기 입력부(120)는 사용자의 음성 신호, 즉 마이크 신호를 수신할 수 있는 마이크로서 기능하고, 상기 입력부를 통해 사용자의 음성에 대응하는 마이크신호를 수신한다. 상기 입력부(120)는 진동판 등을 구비하여 입력된 음성으로부터의 진동(신호)을 전기신호로 변환하여 마이크신호로 출력할 수 있다. 예를 들어, 상기 입력부를 통해 사용자는 부르고자 하는 특정 노래에 대한 신청 정보가 입력되고, 또한, 사용자가 노래를 부를 때의 사용자의 음성 신호가 입력된다. The input unit 120 functions as a microphone capable of receiving a user's voice signal, that is, a microphone signal, and receives a microphone signal corresponding to the user's voice through the input unit. The input unit 120 may include a diaphragm, etc. to convert the vibration (signal) from the input voice into an electrical signal and output it as a microphone signal. For example, through the input unit, application information for a specific song that the user wants to sing is input, and also, the user's voice signal when the user sings a song is input.

상기 음성 인식부(130)는 상기 입력부(120)를 통해 입력된 사용자의 음성 신호를 음성 데이터로 변환하고, 음성 데이터로부터 특징 값을 추출하도록 구성된다. 예를 들어, 상기 음성 인식부(130)는 인공지능에 기반하여 학습된 언어 모델에 기초하여, 음성 데이터에서 시간에 따라 변화하는 상대적인 변화량을 기초로 특징값을 추출하고, 상기 특징값에 기초하여 음성 데이터를 음소단위로 인식하여 확률값에 기반한 명령어를 확정하도록 구성될 수 있다. 이에 대한 기술적인 설명은 본 발명의 범위를 벗어난 것이므로, 자세한 설명은 생략하도록 하며, 현재 스마트폰, 스마트스피커, 등에서 사용되는 음성 인식 기술이 사용될 수 있다. The voice recognition unit 130 is configured to convert the user's voice signal input through the input unit 120 into voice data, and to extract feature values from the voice data. For example, the voice recognition unit 130 extracts a feature value based on a relative amount of change that changes over time from voice data based on a language model learned based on artificial intelligence, and based on the feature value, It may be configured to recognize voice data in phoneme units to determine a command based on a probability value. Since the technical description for this is beyond the scope of the present invention, a detailed description thereof will be omitted, and voice recognition technology currently used in smartphones, smart speakers, and the like may be used.

이하, 도 4 및 5를 참조하여 상기 제어부의 동작을 상세히 설명하도록 한다. Hereinafter, the operation of the control unit will be described in detail with reference to FIGS. 4 and 5 .

상기 도 4는 도 2의 제어부를 설명하기 위한 블록도이다. 도 5는 제어부의 동작 모드 제어를 설명하기 위한 흐름 예시도이다.4 is a block diagram illustrating the control unit of FIG. 2 . 5 is a flowchart illustrating an operation mode control of the controller.

도 4 및 5를 참조하면, 상기 제어부(140) 상기 음성 인식부(130)를 통해 인식되는 사용자의 명령어를 기초로 하여 사용자가 부르고자 하는 특정 노래의 반주 데이터를 준비하고, 반주 데이터를 실행함에 있어, 모드 제어를 수행하도록 구성된다. 구체적으로 상기 제어부(140)는 반주데이터 준비부(141) 및 동작모드 제어부(143)를 포함한다 4 and 5, the controller 140 prepares accompaniment data of a specific song that the user wants to sing based on the user's command recognized through the voice recognition unit 130, and executes the accompaniment data. It is configured to perform mode control. Specifically, the control unit 140 includes an accompaniment data preparation unit 141 and an operation mode control unit 143 .

상기 반주 데이터 준비부(141)는 입력되는 사용자 음성으로부터 특정 노래의 제목 또는 노래를 지칭하는 명칭 등이 특정되고, 사용자로부터 해당 노래를 부르는 등의 실행 명령이 인식되면, 해당 노래에 대한 반주 데이터를 실행하기 위하여 준비하도록 구성된다. 예를 들어, 사용자 명령으로는 [노래 제목] 노래 켜줘, 노래 틀어줘, 시작, 노래 플레이, 노래할래, 노래 부를래, 실행, 노래 열어줘 등이 있을 수 있다. The accompaniment data preparation unit 141 specifies the title or name of a specific song from the input of the user's voice, and when an execution command such as singing the corresponding song is recognized from the user, the accompaniment data for the corresponding song is provided. prepared to perform. For example, the user command may include [song title] play a song, play a song, start, play a song, sing a song, sing a song, run, open a song, etc.

상기 반주 데이터 준비부(141)는 특정 노래에 대한 실행 명령이 입력되면, 후술하는 저장부(170)에 사용자가 요청한 노래의 반주 데이터가 있는지 여부를 확인하고, 상기 저장부에 해당 노래의 반주 데이터가 없는 경우, 상기 중앙 서버(300)에 상기 특정 노래에 대한 반주 데이터의 전송을 요청하도록 구성된다. 예를 들어, 사용자가 이전에 동일한 노래에 대해 요청을 한 경우나, 서비스에서 기본으로 제공되는 노래인 경우, 저장부(170)에 해당 노래에 대한 반주 데이터가 저장되어있기 때문에 불필요하게 중앙 서버와 통신할 필요없이 바로 반주 데이터를 실행할 수 있다. 즉, 상기 반주 데이터 준비부(141)는 상기 저장부(170)를 스캔하여, 해당 노래에 대한 반주 데이터가 없는 경우, 상기 중앙 서버(300)로부터 상기 반주 데이터를 제공받아 상기 저장부(170)에 저장시키고, 실행할 준비를 하도록 구성된다. When an execution command for a specific song is input, the accompaniment data preparation unit 141 checks whether there is accompaniment data of the song requested by the user in the storage unit 170 to be described later, and the accompaniment data of the corresponding song in the storage unit 141 . If there is no , it is configured to request the central server 300 to transmit accompaniment data for the specific song. For example, if the user has previously requested for the same song or if it is a song provided by default in the service, since accompaniment data for the song is stored in the storage unit 170, it is unnecessary to communicate with the central server. Accompaniment data can be executed directly without the need for communication. That is, the accompaniment data preparation unit 141 scans the storage unit 170 and, when there is no accompaniment data for the corresponding song, receives the accompaniment data from the central server 300 and receives the accompaniment data from the storage unit 170 . stored in , and ready to run.

상기 동작모드 제어부(143)는 상기 반주 데이터 준비부(141)로부터 반주 데이터가 준비되면, 사용자의 명령에 기초하여 결정된 동작모드로 상기 반주 데이터를 실행하도록 구성된다. The operation mode control unit 143 is configured to execute the accompaniment data in an operation mode determined based on a user's command when accompaniment data is prepared from the accompaniment data preparation unit 141 .

상기 동작 모드는 크게 멜로디만 출력되는 가창 모드와 멜로디와 TTS가 함께 출력되는 연습 모드로 나뉜다. 즉, 상기 가창 모드에서는 TTS 데이터 파일을 실행시키지 않고, MR 파일만을 실행시키고, 상기 연습모드에서는 MR 파일과 함께 TTS 데이터 파일을 실행하도록 구성된다. 예를 들어, 상기 연습모드는 이어부르기 모드인 제1 연습 모드와 가사 학습하기 모드인 제2 연습 모드로 구성될 수 있다. The operation mode is largely divided into a singing mode in which only melody is output and a practice mode in which melody and TTS are output together. That is, in the singing mode, the TTS data file is not executed, only the MR file is executed, and in the practice mode, the TTS data file is executed together with the MR file. For example, the practice mode may be composed of a first practice mode, which is an ear singing mode, and a second practice mode, which is a mode for learning lyrics.

상기 제1 연습 모드에서는 TTS로 반주음(멜로디)의 각 마디 사이에서 다음 마디 가사를 읽어주는 방식으로 진행된다. 상기 제2 연습 모드에서는 반주음 각 마디 시작 전에 미리 TTS로 가사를 또박또박 읽어주는 방식으로 진행된다. 상기 제1 연습 모드는 가사 숙지가 불완전하나 따라 부르기는 가능한 상태에서 멜로디의 끊김 없이 노래부르기가 진행되는 모드라면, 상기 제2 연습 모드는 가사 숙지가 아예 안된 경우로, 멜로디의 진행보단 가사 전달을 통한 학습에 목적이 있는 모드이다. 따라서, 상기 제2 연습 모드에서는 멜로디의 마디 사이가 가사를 전달하는데 있어서 시간이 충분치 않은 경우, 멜로디를 스톱하고, 가사 전달을 한 후, 다시 멜로디를 실행시킬 수도 있다. 다만, 이에 한정되진 않는다. In the first practice mode, the TTS is used to read the lyrics of the next bar between each bar of the accompaniment (melody). In the second practice mode, the lyrics are read in advance by TTS before each measure of the accompaniment starts. If the first practice mode is a mode in which singing proceeds without interruption of the melody in a state in which the familiarity of the lyrics is incomplete but singing along is possible, the second practice mode is a case where the familiarity of the lyrics is not at all, and the delivery of the lyrics rather than the progress of the melody is performed. It is a mode for the purpose of learning through. Accordingly, in the second practice mode, if there is not enough time to transmit the lyrics between the measures of the melody, the melody may be stopped, the lyrics may be delivered, and then the melody may be executed again. However, the present invention is not limited thereto.

예를 들어, 상기 동작모드 제어부(143)는 반주 데이터가 준비되면, 안내 음성을 통해 사용자가 가창 모드로 진행할지 또는 연습모드로 진행할지 여부를 선택하거나, 또는 가창 모드로 우선하되, 사용자의 명령에 의해 동작 모드가 전환되도록 미리 설정할 수 있다. 또는 이와 달리, 안내 음성없이 처음부터 실행 명령에 따라 구분하여 해당되는 동작 모드를 실행시킬 수 있다. 예를 들어, 연습 모드의 실행시키기 위한 명령어로는 [노래 제목] 연습할래, 노래 연습하자, 노래 가사 알려줘, 등이 있을 수 있다. For example, when the accompaniment data is prepared, the operation mode control unit 143 selects whether the user proceeds to the singing mode or the practice mode through a guide voice, or prioritizes the singing mode, but the user's command It can be set in advance so that the operation mode is switched by . Alternatively, the corresponding operation mode may be executed separately according to the execution command from the beginning without the guidance voice. For example, the command for executing the practice mode may include [song title] want to practice, practice a song, tell me song lyrics, and the like.

또한, 상기 동작모드 제어부(143)는 연습모드가 선택된 경우, 추가로 사용자에게 상기 제1 연습모드로 실행할지 또는 상기 제2 연습모드로 실행할 지 여부를 안내 음성을 통해 가이드하도록 구성될 수 있다. 예를 들어, 제1 연습모드를 실행하는 명령어로는 [노래 제목] 연습할래 등이 있을 수 있고, 제2 연습모드르르 실행하는 명령어로는 [노래 제목] 가사알려줘 등이 있을 수 있다. 도 5를 참조할 때, 사용자는 가창 모드에서 명령어를 통해 동작 모드의 변경을 행할 수 있고, 동작 모드의 변경에 대한 명령어가 수신되면, 연습 모드 방식을 선택하게 함으로써, 해당되는 연습 모드로 진행시킬 수가 있다. In addition, when the practice mode is selected, the operation mode control unit 143 may further be configured to guide the user whether to execute in the first practice mode or in the second practice mode through a voice guidance. For example, a command for executing the first practice mode may include [song title] I want to practice, and the command for executing the second practice mode may include [song title] tell me lyrics. Referring to FIG. 5 , the user can change the operation mode through a command in the singing mode, and when a command for changing the operation mode is received, the user selects the practice mode method, thereby proceeding to the corresponding practice mode. can be

본 실시예에 따른 상기 제어부(140)의 동작 모드 제어부(143)는 사용자의 명령어에 기초하여, 연습모드 중 제1 연습모드 또는 제2 연습모드로 진행되는 것을 예로 설명하였으나, 이에 한정되지 않는다. 예를 들어, 노래 특성, 예를 들어 BPM에 따라 제1 연습모드로 진행되는 노래 또는 제2 연습모드로 진행되는 노래가 결정될 수 있다. 예를 들어, 중앙 서버에서 TTS 데이터 파일을 생성할 때, 상기 노래 특성에 따라 대응되는 연습 모드에 대한 TTS 데이터 파일이 생성될 수 있다. 즉, TTS 데이터 생성시에 해당 노래의 연습모드가 결정될 수 있다. The operation mode control unit 143 of the control unit 140 according to the present embodiment has been described as an example of proceeding to the first practice mode or the second practice mode among the practice modes based on a user's command, but is not limited thereto. For example, the song proceeding in the first practice mode or the song proceeding in the second practice mode may be determined according to a song characteristic, for example, BPM. For example, when the central server generates a TTS data file, a TTS data file for a corresponding practice mode may be generated according to the song characteristics. That is, when generating TTS data, the practice mode of the corresponding song may be determined.

상기 TTS 데이터 처리부(150)는 상기 제어부(140)의 제어 신호에 따라 연습 모드가 실행되면, 준비된 반주 데이터 중 TTS 데이터를 독출하여 멜로디를 출력하는 MR 데이터에 매칭되되도록 TTS를 출력하도록 구성된다. 상기 TTS 데이터는 상기 중앙 서버(300)에서 가사 파일에 기초하여 생성된 것으로 상기 TTS 데이터는 연습 모드 예를 들어, 상기 제1 연습모드 및 제2 연습모드 각각에 대한 정보를 포함할 수 있으며, 상기 제어부(140)의 제어 신호에 따라, 해당되는 데이터를 실행하도록 구성될 수 있다. When the practice mode is executed according to the control signal of the controller 140 , the TTS data processing unit 150 reads TTS data from the prepared accompaniment data and outputs the TTS so as to match the MR data outputting the melody. The TTS data is generated based on the lyrics file in the central server 300, and the TTS data may include information on each of the practice modes, for example, the first practice mode and the second practice mode, and the It may be configured to execute corresponding data according to a control signal of the controller 140 .

또는, 상기 중앙 서버(300)로부터 제공받는 TTS 데이터는 상기 제1 연습모드 또는 제2 연습모드 중 어느 하나에 대응되는 TTS 데이터일 수 있으며, 상기 TTS 데이터 처리부(150)에서 상기 TTS 데이터를 처리함으로써, 나머지 연습 모드에 대응되는 TTS 데이터를 생성하도록 구성될 수 있다. 상기 TTS 데이터의 생성은 상기 중앙 서버(300)의 구성에서 상세히 설명하도록 한다.Alternatively, the TTS data provided from the central server 300 may be TTS data corresponding to any one of the first practice mode and the second practice mode, and the TTS data processing unit 150 processes the TTS data. , may be configured to generate TTS data corresponding to the remaining practice modes. The generation of the TTS data will be described in detail in the configuration of the central server 300 .

상기 출력부(160)는 오디오 DAC(Digital Analog Converter) 등을 포함하여, MR 데이터 및 TTS 데이터를 수신하고 수신된 MR 데이터 및 TTS 데이터에 대응하는 오디오 신호로 변환하여 출력한다. 상기 출력부(160)는 스피커를 포함하여 오디오 신호를 스피커로 출력하거나 외부로 연결되는 스피커나 이어폰 등으로 오디오 신호를 출력하도록 구성될 수 있다The output unit 160 includes an audio digital analog converter (DAC), etc. to receive MR data and TTS data, convert it into an audio signal corresponding to the received MR data and TTS data, and output the received MR data and TTS data. The output unit 160 may be configured to output an audio signal to a speaker, including a speaker, or to output an audio signal to an externally connected speaker or earphone.

상기 저장부(170)는 제어부(160)에서 수행되는 프로그램을 저장하고, TTS 데이터 처리를 위한 프로그램을 저장하도록 구성된다. 또한, 상기 저장부(170)는 상기 중앙 서버(300)로부터 제공받은 노래별 반주 데이터를 저장하고 관리하도록 구성된다. The storage unit 170 is configured to store a program executed by the control unit 160 and to store a program for processing TTS data. In addition, the storage unit 170 is configured to store and manage accompaniment data for each song provided from the central server 300 .

즉, 본 실시예에 따른 노래 반주 시스템은, 사용자로부터 부르고자 하는 노래 정보가 입력되면, 중앙 서버로부터 MR 데이터와 TTS 데이터가 상기 사용자 단말로 제공되기 때문에, 사용자 단말로서는 별도의 데이터 처리 및 정보 분석을 할 필요가 없으며, 미디 파일에 비해 상대적으로 용량이 작은 MR 파일과 TTS 데이터 파일만을 수신하면 되기 때문에, 통신 용량을 줄일 수 있어, 사용자 단말 자체의 성능 문제를 경감하고, 서버로부터의 송수신에 따른 데이터의 처리에 부하를 경감시킬 수 있다. 이에 따라, 반주기 성능에 영향을 받지 않고, 사용자가 쉽고 직관적으로 노래 가사를 인식할 수 있는 노래 반주 시스템을 제공할 수 있다.That is, in the song accompaniment system according to the present embodiment, when information about a song to be sung is input by the user, MR data and TTS data are provided from the central server to the user terminal. As a user terminal, separate data processing and information analysis There is no need to do this, and only the MR file and TTS data file, which are relatively small compared to the MIDI file, need to be received, so the communication capacity can be reduced, reducing the performance problem of the user terminal itself, and The load on data processing can be reduced. Accordingly, it is possible to provide a song accompaniment system in which a user can easily and intuitively recognize song lyrics without being affected by accompaniment performance.

이하, 도 6을 참조하여, 중앙 서버(300)에 대해서 상세히 설명하도록 한다. Hereinafter, with reference to FIG. 6 , the central server 300 will be described in detail.

도 6은 도 2의 중앙 서버를 설명하기 위한 블록도이다. FIG. 6 is a block diagram illustrating the central server of FIG. 2 .

상기 중앙 서버(300)는 상기 네트워크(10)를 통해 상기 사용자 단말(100)과 통신 접속하도록 구성되어, 사용자 단말(100)로부터 특정 노래에 대한 반주 데이터 제공에 대한 요청이 수신되면, 해당 반주 데이터를 생성하여 제공하도록 구성된다. The central server 300 is configured to communicate with the user terminal 100 through the network 10, and when a request for providing accompaniment data for a specific song is received from the user terminal 100, the corresponding accompaniment data It is configured to create and provide.

상기 중앙 서버(300)는 통신부(310), 고객 관리부(320), 제어부(330), 반주데이터 생성부(340) 및 반주데이터 관리부(350)를 포함한다. The central server 300 includes a communication unit 310 , a customer management unit 320 , a control unit 330 , an accompaniment data generation unit 340 , and an accompaniment data management unit 350 .

상기 통신부(310)는 네트워크(10)를 통해 상기 사용자 단말(100)과 데이터를 송수신하도록 구성된다. 상기 통신부(310)는 유선랜용 통신 칩셋, 무선랜용 통신 칩셋, 이동통신망에 연결되기 위한 통신 칩셋등과 회로를 구비하여 네트워크(10)로부터 통신 패킷을 송수신할 수 있다. 상기 통신부(310)를 통해 사용자 단말(100)로부터 반주 데이터 제공의 요청을 수신할 수 있고, 상기 사용자 단말(100)로 해당 반주 데이터를 송신할 수 있다. The communication unit 310 is configured to transmit and receive data to and from the user terminal 100 through the network 10 . The communication unit 310 includes a communication chipset for a wired LAN, a communication chipset for a wireless LAN, a communication chipset for connecting to a mobile communication network, and the like and circuits to transmit and receive communication packets from the network 10 . A request for providing accompaniment data may be received from the user terminal 100 through the communication unit 310 , and the corresponding accompaniment data may be transmitted to the user terminal 100 .

상기 고객 관리부(320)는 상기 노래 반주 시스템(1000)에서 노래 반주 서비스를 이용하고자 하는 사용자를 고객으로서 등록하고 관리한다. 상기 고객 관리부(320)는 상기 사용자 단말(100)로부터 입력되는 사용자의 성명, ID, 패스워드 등의 기본 정보를 등록받아 고객 DB에 저장하고 관리하도록 구성되며, 상기 중앙 서버(300)에서 사용자가 반주 데이터를 요청한 노래에 대한 이용 정보, 결제 정보 등을 누적하여 저장하도록 구성된다.The customer management unit 320 registers and manages a user who wants to use the song accompaniment service in the song accompaniment system 1000 as a customer. The customer management unit 320 is configured to receive registration of basic information such as a user's name, ID, password, etc. input from the user terminal 100, store and manage it in a customer DB, and the user accompaniment in the central server 300 It is configured to accumulate and store usage information, payment information, and the like for a song requesting data.

상기 제어부(330)는 사용자 단말(100)로부터 특정 노래에 대한 반주 데이터 제공의 요청이 수신되면, 후술할 반주데이터 관리부(350)를 참조하여, 해당 특정 노래에 대한 반주 데이터가 저장되어 있는지 여부를 판단한다. 상기 해당 특정 노래에 대한 반주 데이터가 있는 경우, 해당 데이터를 상기 통신부(310)를 통해 상기 사용자 단말(100)로 송신하고, 상기 특정 노래에 대한 반주 데이터가 없는 경우, 후술할 반주데이터 생성부(340)를 제어하여, 해당 특정 노래에 대한 반주 데이터를 생성하도록 구성된다. 한편, 상기 제어부(330)는 상기 중앙 서버(300)에 반주 데이터의 생성에 기초가 되는 음원 파일이 없는 경우에는, 외부 서버로부터 특정 노래에 대한 음원 파일을 제공받을 수도 있다. When a request for providing accompaniment data for a specific song is received from the user terminal 100, the control unit 330 determines whether accompaniment data for the specific song is stored with reference to the accompaniment data management unit 350, which will be described later. judge When there is accompaniment data for the specific song, the corresponding data is transmitted to the user terminal 100 through the communication unit 310, and when there is no accompaniment data for the specific song, an accompaniment data generating unit to be described later ( 340) to generate accompaniment data for the specific song. Meanwhile, when the central server 300 does not have a sound source file as a basis for generating accompaniment data, the controller 330 may receive a sound source file for a specific song from an external server.

상기 반주데이터 생성부(340)는 특정 노래에 대한 음원 파일에 기초하여 반주 데이터를 생성하도록 구성된다. 상기 반주 데이터는 멜로디로 구성되는 MR 데이터와 상기 MR 데이터와 매칭되어, 미리 정해진 구간에서 TTS를 제공하기 위한 TTS 데이터로 구성되며, 상기 TTS 데이터는 가사 파일 즉, 음원 제작시에 작성된 파일로서, MR 데이터와 매칭되어 노래 가사의 각 음절별 시간 정보를 포함하고 있는 가사 포맷 파일에 기초하여 생성될 수 있다. 예를 들어, 상기 반주데이터 생성부(340)는 노래별 가사 포맷 파일을 저장한 가사 DB에서 생성할 특정 노래 가사 포맷 파일을 가져와 TTS 데이터를 생성할 수 있다. The accompaniment data generating unit 340 is configured to generate accompaniment data based on a sound source file for a specific song. The accompaniment data is composed of MR data composed of a melody and TTS data for matching with the MR data to provide a TTS in a predetermined section, and the TTS data is a lyric file, that is, a file created when a sound source is produced. Matching data may be generated based on a lyrics format file including time information for each syllable of the song lyrics. For example, the accompaniment data generating unit 340 may generate TTS data by importing a specific song lyric format file to be generated from a lyric DB storing lyric format files for each song.

예를 들어, 가수 김범수의 '보고싶다'의 후렴구인 '미칠 듯 사랑했던/ 기억이 추억들이/ 너를 찾고 있지만'을 예를 들어, 가사 포맷에는 다음과 같은 정보가 포함될 수 있다. For example, the chorus of singer Kim Bum-soo's 'I miss you', 'I loved you like crazy/ Memories/ Memories/ I'm looking for you', for example, the lyrics format may include the following information.

[가사 포맷][Lyric Format]

…0:01:25.05,…{\K402}{\K94}미{\K136}칠{\K3} {\K46}듯{\K0} {\K46}사{\K46}랑{\K46}했{\K41}던… 0:01:25.05,… It was like {\K402}{\K94}{\K136}seven{\K3} {\K46}{\K0}{\K46}{\K46}{\K46}{\K41}

…,0:01:28.84,…{\K492}{\K140}기{\K23}억{\K124}이{\K39} {\K23}추{\K164}억{\K23}들{\K104}이… ,0:01:28.84,… {\K492}{\K140}{\K23} billions{\K124}{\K39} {\K23}{\K164}{\K23} billions{\K104}

…,0:01:33.71,…{\K660}{\K47}너{\K39}를{\K8} {\K70}찾{\K70}고{\K0} {\K46}있{\K92}지{\K106}만… ,0:01:33.71,… {\K660}{\K47}You found {\K39}{\K8} {\K70}{\K70}{\K0} {\K46}{\K92}{\K106}

즉, 3개의 마디별 정보가 표시되며, 마디별 정보 중 가장 앞에 있는 시간 정보는, 가사 라인이 화면에 표출되는 시간을 나타낸다. 예를 들어, 첫번째 마디의 "0:01:25.05"는 1분25.05초, 즉 85.05초에 해당 마디의 가사 라인이 화면에 표시되는 것을 의미한다. That is, three pieces of information for each measure are displayed, and the first time information among the information for each measure indicates the time at which the lyrics line is displayed on the screen. For example, "0:01:25.05" of the first bar means that the lyrics line of the corresponding bar is displayed on the screen at 1:25.05 seconds, that is, 85.05 seconds.

그 뒤, {\K402}의 정보는 해당 가사 라인의 뒤의 음절이 시작되까지의 대기 시간을 나타낸다. 즉, 4.02초 후에 첫글자인 '미'라는 음절이 시작되는 것을 의미하며, 전체적으로는 85.05초 + 4.02초 = 89.07초에 '미'라는 음절이 시작된다. 또한, 그 다음 정보인 {\K94}는 바로 뒤의 음절이 불러지는 시간, 예를 들어, 화면 상에서는 가사의 해당 음절에 색이 칠해지는 시간을 나타낸다. After that, the information of {\K402} indicates the waiting time until the syllable after the corresponding lyric line starts. In other words, it means that the first syllable 'mi' starts after 4.02 seconds, and overall, the syllable 'mi' starts at 85.05 seconds + 4.02 seconds = 89.07 seconds. In addition, the next information, {\K94}, indicates the time at which the immediately following syllable is sung, for example, the time at which the corresponding syllable of the lyrics is colored on the screen.

즉, 상기 정보를 기초로 하여, 가사라인 별 각 음절의 시작지점은 첫번째 가사라인의 경우, '미' - 89.07초, '칠' - 90.01초, '듯' - 91.40초, '사' - 91.86초, '랑' - 92.32초, '했' - 92.78초, '던' - 93.24초이고, 두번째 가사라인의 경우, '기' - 93.76초, '억' - 95.16초, '이' - 95.39초, '추' - 97.02초, '억' - 97.25초, '들' - 98.89초, '이' - 99.12초이고, 세번째 가사라인의 경우, '너' - 100.31초, '를' - 100.78초, '찾' - 101.25초, '고' - 101.95초, '있' - 102.65초, '지' - 103.11초, '만' - 104.03초로 독출할 수 있다.That is, based on the above information, the starting point of each syllable for each lyrics line is 'mi' - 89.07 seconds, 'seven' - 90.01 seconds, 'like' - 91.40 seconds, 'sa' - 91.86 for the first lyrics line. Second, 'Rang' - 92.32 seconds, 'Had' - 92.78 seconds, 'Dawn' - 93.24 seconds, for the second lyric line, 'Ki' - 93.76 seconds, 'Billion' - 95.16 seconds, 'Lee' - 95.39 seconds , 'chu' - 97.02 seconds, 'billion' - 97.25 seconds, 's' - 98.89 seconds, 'this' - 99.12 seconds, for the third lyric line, 'you' - 100.31 seconds, 'b' - 100.78 seconds, 'Find' - 101.25 seconds, 'Go' - 101.95 seconds, 'There' - 102.65 seconds, 'G' - 103.11 seconds, 'only' - 104.03 seconds can be read out.

즉, 첫째 가사 라인과 둘째 가사 라인의 간격은 93.76초 - 93.24초 = 0.52초이며, 둘째 가사 라인과 셋째 가사 라인의 간격은 100.31초 - 99.12초 = 1.19초가 된다. That is, the interval between the first and second lyrics lines is 93.76 seconds - 93.24 seconds = 0.52 seconds, and the interval between the second and third lyrics lines is 100.31 seconds - 99.12 seconds = 1.19 seconds.

예를 들어, 상기 반주데이터 생성부(340)는 가사 포맷으로부터 TTS 데이터를 생성함에 있어서, 노래별 가사 혹은 가사 라인의 간격을 고려할 수 있다. 즉, 상기 반주데이터 생성부(340)는 상기 간격이 미리 정해진 기준 이상인 경우에만 TTS의 삽입을 결정하도록 구성될 수 있다. 예를 들어, 상기 미리 정해진 기준이 1초인 경우, 첫째 가사 라인과 둘째 가사 라인의 간격은 0.52초이므로, 둘째 가사 라인의 가사 정보를 포함하는 TTS의 삽입은 이루어지지 않으며, 둘째 가사 라인과 셋째 가사 라인의 간격은 1.19초이므로, 셋째 가사 라인의 가사 정보를 포함하는 TTS가 삽입될 수 있다. 다만, 이에 한정되지 않는다. 상기 TTS 데이터에는 모든 간격에 대응되는 TTS가 삽입되고, 상기 사용자 단말(100)에서 TTS 데이터를 처리할 때, 상기 미리 정해진 기준, 또는 동작 모드에 따라 TTS를 선별하여 제공하도록 할 수 있다. For example, the accompaniment data generating unit 340 may consider the interval between lyrics for each song or lyrics lines when generating TTS data from the lyrics format. That is, the accompaniment data generating unit 340 may be configured to determine the insertion of the TTS only when the interval is equal to or greater than a predetermined criterion. For example, if the predetermined criterion is 1 second, since the interval between the first and second lyrics lines is 0.52 seconds, the insertion of the TTS including the lyrics information of the second lyrics line is not made, and the second and third lyrics Since the interval between the lines is 1.19 seconds, a TTS including the lyrics information of the third lyrics line can be inserted. However, the present invention is not limited thereto. TTSs corresponding to all intervals are inserted into the TTS data, and when the user terminal 100 processes the TTS data, the TTS may be selected and provided according to the predetermined criterion or operation mode.

또한, 상기 반주데이터 생성부(340)는 TTS의 삽입이 결정되면, TTS의 시작 지점을 정하도록 구성된다. 예를 들어, 상기 반주데이터 생성부(340)는 TTS의 글자(음절)당 TTS 제공 시간, 즉 발음되는 시간을 지정할 수 있으며, 상기 시간은 미리 설정되거나, 또는 동작 모드에 따라 결정될 수 있다. 즉, 상기 제1 연습 모드와 상기 제2 연습 모드의 경우, 서로 다른 기준의 TTS의 글자당 TTS 제공 시간이 지정될 수 있다. In addition, the accompaniment data generating unit 340 is configured to determine the start point of the TTS when the insertion of the TTS is determined. For example, the accompaniment data generator 340 may designate a TTS provision time per letter (syllable) of the TTS, that is, a pronunciation time, and the time may be preset or determined according to an operation mode. That is, in the case of the first practice mode and the second practice mode, a TTS provision time per letter of a TTS of a different standard may be designated.

예를 들어, 한 글자(음절) 당 TTS 제공 시간이 0.3초라고 할 때, 셋째 가사 라인의 총 글자 수는 7글자(음절)이므로, 해당 가사 라인의 TTS 제공을 위해서는 0.3초 X 7 = 2.1초의 시간이 필요하다. 따라서, 해당 TTS는 적어도 셋째 가사 라인의 첫번째 음절의 시작 전에 제공되어야 하므로, 셋째 가사라인의 첫번째 음절인 '너'가 시작되는 100.31초 보다 2.1초 앞서는 98.21초, 즉, 1분 38초 21에서 TTS의 시작이 결정될 수 있다. 즉, 도 7을 참조할 때, 전체 가사라인에서 1분 38초 21부터 1분 40초 31 구간에서 '너를 찾고 있지만'의 TTS가 출력되도록 한다. 다만, 이에 한정되진 않는다. 이와 달리, 상기의 경우는 TTS 정보가 출력되는 시점이 둘째 가사 라인과 겹치기 때문에, TTS가 제공되는 시간인 2.1초를, 예를 들어, 글자당 시간을 빠르게 하는 등으로 단축시켜, 둘째 가사 라인과 셋째 가사 라인의 간격 내에 TTS가 위치하도록 할 수도 있다. 이 역시, 상기 동작 모드에 따라 결정될 수도 있다. For example, if the TTS provision time per character (syllable) is 0.3 seconds, the total number of letters in the third lyric line is 7 characters (syllables). It takes time. Therefore, since the corresponding TTS must be provided at least before the start of the first syllable of the third lyrics line, the TTS at 98.21 seconds, that is, 1 minute 38 seconds 21 can be determined. That is, referring to FIG. 7 , the TTS of 'I'm looking for you' is output in the section from 1 minute 38 seconds 21 to 1 minute 40 seconds 31 in the entire lyrics line. However, the present invention is not limited thereto. In contrast, in the above case, since the timing at which the TTS information is output overlaps the second lyric line, the TTS provision time of 2.1 seconds is shortened, for example, by speeding up the time per character, and the second lyric line Third, the TTS may be positioned within the interval of the lyrics line. This may also be determined according to the operation mode.

즉, 상기 반주데이터 생성부(340)는, 상기와 같은 과정으로 전 가사 라인에 대한 TTS 데이터 파일을 생성하고, 이를 해당 노래의 MR 데이터와 그룹화하여, 해당 노래에 대한 반주 데이터를 생성하도록 구성된다. That is, the accompaniment data generating unit 340 is configured to generate accompaniment data for the corresponding song by generating a TTS data file for all lyric lines in the same process as above, and grouping it with the MR data of the corresponding song. .

상기 반주데이터 관리부(350)는 상기 반주데이터 생성부(340)에서 생성한 반주 데이터를 노래 정보와 매칭시켜 반주데이터 DB에 저장하고 관리하도록 구성된다. 이에 따라, 다수의 사용자 단말로부터 반주데이터의 제공 요청이 반복되는 경우, 추가로 반주데이터를 생성할 필요없이, DB에 저장되어 관리되는 특정 노래의 반주데이터를 제공할 수 있다. The accompaniment data management unit 350 is configured to match the accompaniment data generated by the accompaniment data generation unit 340 with song information to store and manage the accompaniment data DB. Accordingly, when a request for providing accompaniment data from a plurality of user terminals is repeated, accompaniment data of a specific song stored and managed in the DB can be provided without the need to additionally generate accompaniment data.

이하, 도 8을 참조하여, 노래 반주 시스템을 통해 사용자가 서비스를 이용하는 프로세스를 설명하도록 한다. Hereinafter, with reference to FIG. 8, a process of using a service by a user through a song accompaniment system will be described.

도 8은 본 발명의 일 실시예에 따른 노래 반주 시스템을 통해 사용자가 서비스를 이용하는 프로세스를 설명하기 위한 플로우 차트이다.8 is a flowchart illustrating a process for a user to use a service through a song accompaniment system according to an embodiment of the present invention.

도 1 내지 도 8을 참조하면, 먼저 사용자가 노래 반주 시스템(1000)이 제공하는 노래 반주 서비스를 이용하기 위해 사용자 단말(100)을 통해 중앙 서버(300)에 접속하고 회원으로 가입하면서 ID, 비밀 번호 등 정보를 입력하도록 한다(S100).1 to 8 , first, a user accesses the central server 300 through the user terminal 100 to use the song accompaniment service provided by the song accompaniment system 1000 and joins as a member while registering ID, secret Enter information such as a number (S100).

이후, 사용자로부터 사용자 단말(100)을 통해 부르고자 하는 특정 노래에 대한 데이터 요청이 입력되면(S200), 상기 사용자 단말(100)은 해당 특정 노래에 대한 반주 데이터를 준비하도록 구성된다(S300). 상기 반주 데이터는 멜로디만 포함된 MR 데이터와 상기 MR 파일에 매칭되는 노래 가사 음절 별 시간 정보를 기초로 생성된 TTS 데이터 파일을 포함한다. 한편, 이 과정에서, 상기 사용자 단말(100)은 해당 반주 데이터가 상기 사용자 단말(100)에 저장되어 있는지 여부를 판단(S400)하고, 해당 반주 데이터가 존재하지 않는 경우, 상기 중앙 서버(300)로 반주 데이터의 제공을 요청하도록 구성된다. Thereafter, when a data request for a specific song to be sung is input from the user through the user terminal 100 (S200), the user terminal 100 is configured to prepare accompaniment data for the specific song (S300). The accompaniment data includes MR data including only a melody and a TTS data file generated based on time information for each syllable of song lyrics matching the MR file. Meanwhile, in this process, the user terminal 100 determines whether the corresponding accompaniment data is stored in the user terminal 100 (S400), and if the corresponding accompaniment data does not exist, the central server 300 is configured to request the provision of accompaniment data.

상기 반주 데이터 제공의 요청을 수신한 상기 중앙 서버(300)는 해당 반주 데이터가 DB에 저장되어 있는지 여부를 판단하고(S500), 해당 반주 데이터가 존재하는 경우, 이를 사용자 단말(100)로 송신하고(S500), 존재하지 않는 경우, 반주 데이터를 생성하도록 구성된다(S600). 이 때, 반주 데이터 중 TTS 데이터의 생성은 해당 노래의 MR에 매칭되는 노래 가사 음절 별 시간 정보가 포함된 가사 포맷을 기초로 가사 파일이 참조된다. 이 때, 생성된 TTS 데이터는 MR 데이터와 그룹화되어 반주데이터 관리부에서 노래 정보와 매칭시켜 저장하고 관리된다(S700). 상기 생성된 반주 데이터는 사용자 단말(100)로 송신된다.Upon receiving the request for providing the accompaniment data, the central server 300 determines whether the accompaniment data is stored in the DB (S500), and if the accompaniment data exists, it is transmitted to the user terminal 100 and (S500), if it does not exist, it is configured to generate accompaniment data (S600). In this case, the generation of TTS data among the accompaniment data refers to the lyrics file based on the lyrics format including time information for each syllable of the lyrics matching the MR of the corresponding song. At this time, the generated TTS data is grouped with the MR data, matched with song information in the accompaniment data management unit, and stored and managed (S700). The generated accompaniment data is transmitted to the user terminal 100 .

상기 반주 데이터가 준비되면(S300), 상기 사용자 단말(100)은 사용자로부터 입력된 명령에 따른 동작 모드에 따라 반주데이터를 실행하도록 한다(S800). When the accompaniment data is prepared (S300), the user terminal 100 executes the accompaniment data according to an operation mode according to a command input from the user (S800).

상기 동작 모드는 크게 반주 데이터 중 MR 데이터에 대응되는 멜로디만 출력되는 가창 모드와 멜로디와 TTS가 함께 출력되는 연습 모드로 나뉘고, 상기 연습 모드는 이어부르기 모드인 제1 연습 모드와 가사 학습하기 모드인 제2 연습 모드로 구성될 수 있다. 즉, 사용자의 명령에 따라, 사용자는 다양한 모드로 노래 반주 시스템을 이용할 수 있다. The operation mode is largely divided into a singing mode in which only the melody corresponding to the MR data is output among the accompaniment data and a practice mode in which the melody and TTS are output together. It may be configured as a second practice mode. That is, according to the user's command, the user can use the song accompaniment system in various modes.

이와 같은 도 8의 사용자가 서비스를 이용하는 프로세스에 대해서 설명되지 아니한 사항은 앞서 도 1 내지 도 7을 통해 노래 반주 시스템에 대하여 설명된 내용과 동일하거나 설명된 내용으로부터 용이하게 유추 가능하므로 이하 설명을 생략하도록 한다.Matters that are not described with respect to the process of using the service by the user of FIG. 8 are the same as those described for the song accompaniment system through FIGS. 1 to 7 or can be easily inferred from the described content, so the following description will be omitted. let it do

도 8을 통해 설명된 일 실시예에 따른 노래 반주 시스템의 동작의 프로세스는, 컴퓨터에 의해 실행되는 애플리케이션이나 프로그램 모듈과 같은 컴퓨터에 의해 실행가능한 명령어를 포함하는 기록 매체의 형태로도 구현될 수 있다. 컴퓨터 판독 가능 매체는 컴퓨터에 의해 액세스될 수 있는 임의의 가용 매체일 수 있고, 휘발성 및 비휘발성 매체, 분리형 및 비분리형 매체를 모두 포함한다. 또한, 컴퓨터 판독가능 매체는 컴퓨터 저장 매체를 모두 포함할 수 있다. 컴퓨터 저장 매체는 컴퓨터 판독가능 명령어, 데이터 구조, 프로그램 모듈 또는 기타 데이터와 같은 정보의 저장을 위한 임의의 방법 또는 기술로 구현된 휘발성 및 비휘발성, 분리형 및 비분리형 매체를 모두 포함한다.The process of the operation of the song accompaniment system according to the embodiment described with reference to FIG. 8 may also be implemented in the form of a recording medium including instructions executable by a computer, such as an application or 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. Also, computer-readable media 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 process of the song accompaniment system according to an embodiment of the present invention described above may be executed by an application basically installed in the terminal (which may include a program included in the platform or operating system, etc. basically installed in the terminal), It may be executed by an application (ie, a program) directly installed in the master terminal by a user through an application providing server such as an application store server, an application, or a web server related to the corresponding service. In this sense, the process of the song accompaniment system according to an embodiment of the present invention described above is implemented as an application (that is, a program) installed by default in the terminal or directly installed by the user, and a computer-readable record such as a terminal may be recorded on the medium.

전술한 본 발명의 설명은 예시를 위한 것이며, 본 발명이 속하는 기술분야의 통상의 지식을 가진 자는 본 발명의 기술적 사상이나 필수적인 특징을 변경하지 않고서 다른 구체적인 형태로 쉽게 변형이 가능하다는 것을 이해할 수 있을 것이다. 그러므로 이상에서 기술한 실시예들은 모든 면에서 예시적인 것이며 한정적이 아닌 것으로 이해해야만 한다. 예를 들어, 단일형으로 설명되어 있는 각 구성 요소는 분산되어 실시될 수도 있으며, 마찬가지로 분산된 것으로 설명되어 있는 구성 요소들도 결합된 형태로 실시될 수 있다.The above description of the present invention is for illustration, and those of ordinary skill in the art to which the present invention pertains can 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 restrictive. For example, each component described as a single type may be implemented in a dispersed form, and likewise components described as distributed may be implemented in a combined form.

1000: 노래 반주 시스템
100: 사용자 단말
110, 310: 통신부
120: 입력부
130: 음성 인식부
140, 330: 제어부
150: TTS 데이터 처리부
160: 출력부
170: 저장부
300: 중앙 서버
320: 고객 관리부
340: 반주데이터 생성부
350: 반주데이터 관리부
1000: song accompaniment system
100: user terminal
110, 310: communication unit
120: input unit
130: voice recognition unit
140, 330: control unit
150: TTS data processing unit
160: output unit
170: storage unit
300: central server
320: customer care department
340: accompaniment data generation unit
350: accompaniment data management unit

Claims (10)

노래 반주 시스템으로서,
사용자로부터 특정 노래에 대한 부르기 신청이 입력되면, 상기 특정 노래에 대한 멜로디 정보를 포함한 MR 데이터 및 상기 MR 데이터와 매칭되는 TTS(Text to Speech) 데이터를 포함하는 반주 데이터를 준비하도록 구성되는 사용자 단말; 및
상기 사용자 단말과 네트워크로 통해 통신하고, 상기 사용자 단말로부터 상기 특정 노래에 대한 반주 데이터의 전송 요청이 수신되면, 상기 특정 노래의 가사 라인별 시간 정보 및 가사 음절별 시간 정보를 포함하는 가사 포맷에 기초하여, 적어도 하나 이상의 인접하는 가사 라인들의 사이에 출력될 TTS 정보를 포함한 TTS 데이터를 생성하고, 상기 TTS 데이터를 상기 MR 데이터와 함께 상기 반주 데이터로서 상기 사용자 단말로 전송하도록 구성되는 중앙 서버를 포함하고,
상기 사용자 단말은 상기 중앙 서버로부터 제공받은 상기 반주 데이터가 준비되면, 동작 모드에 기초하여 상기 반주 데이터를 실행하도록 구성되고,
상기 동작 모드는 상기 MR 데이터만을 실행하는 가창 모드 및 상기 MR 데이터와 함께 상기 TTS 데이터를 실행하는 연습 모드를 포함하며,
상기 연습 모드는 멜로디가 진행되는 동안 인접하는 가사 라인들의 사이에서 TTS로 다음 가사 라인의 음절을 읽어주는 제1 연습 모드 및 멜로디가 진행되지 않는 멜로디 시작 전에 TTS로 이어질 가사 라인의 음절을 읽어주는 제2 연습 모드를 포함하며,
상기 중앙 서버는 상기 제1 연습모드 및 상기 제2 연습모드 각각에 대응하는 정보를 포함한 TTS 데이터를 생성하는 것을 특징으로 하는 노래 반주 시스템.
As a song accompaniment system,
a user terminal configured to prepare MR data including melody information for the specific song and accompaniment data including TTS (Text to Speech) data matching the MR data when a request for singing for a specific song is input from the user; and
Communication with the user terminal through a network, and when a request for transmission of accompaniment data for the specific song is received from the user terminal, based on a lyrics format including time information for each lyric line and time information for each lyric syllable of the specific song a central server configured to generate TTS data including TTS information to be output between at least one or more adjacent lyrics lines, and transmit the TTS data together with the MR data as the accompaniment data to the user terminal, and ,
The user terminal is configured to execute the accompaniment data based on an operation mode when the accompaniment data provided from the central server is prepared,
the operation mode includes a singing mode in which only the MR data is executed and a practice mode in which the TTS data is executed together with the MR data;
The practice mode is a first practice mode that reads the syllable of the next lyric line as TTS between adjacent lyric lines while the melody is in progress, and a second practice mode that reads the syllable of the lyric line leading to the TTS before the start of the melody in which the melody does not proceed. Includes 2 practice modes,
and the central server generates TTS data including information corresponding to each of the first practice mode and the second practice mode.
제1 항에 있어서,
상기 사용자 단말은, 사용자로부터 특정 노래에 대한 부르기 신청이 입력되면, 상기 특정 노래에 대한 반주 데이터가 저장되어 있는지 여부를 판단하고, 상기 반주 데이터가 저장되어 있는 경우, 상기 중앙 서버로 상기 반주 데이터의 전송 요청없이 상기 반주 데이터를 준비하여 실행하고, 상기 반주 데이터가 저장되어 있지 않은 경우, 상기 중앙 서버로 상기 반주 데이터의 전송을 요청하는 것을 특징으로 하는 노래 반주 시스템.
The method of claim 1,
The user terminal determines whether accompaniment data for the specific song is stored when a request for singing for a specific song is input from the user, and when the accompaniment data is stored, the accompaniment data is transmitted to the central server. A song accompaniment system, characterized in that the accompaniment data is prepared and executed without a transmission request, and when the accompaniment data is not stored, the accompaniment data is requested to be transmitted to the central server.
제1 항에 있어서,
상기 사용자 단말은, 사용자의 음성에 따라 제어가 가능하며, 사용자로부터 입력되는 음성으로부터 추출된 명령어에 기초하여 상기 반주 데이터의 동작 모드가 결정되는 것을 특징으로 하는 노래 반주 시스템.
The method of claim 1,
The user terminal can be controlled according to the user's voice, and the operation mode of the accompaniment data is determined based on a command extracted from the voice input from the user.
삭제delete 삭제delete 제1 항에 있어서,
상기 제2 연습 모드는 TTS로 가사 라인의 음절을 읽어주기 전까지 해당 가사 라인의 멜로디의 진행을 정지하는 것을 특징으로 하는 노래 반주 시스템.
The method of claim 1,
The second practice mode is a song accompaniment system, characterized in that until the syllable of the lyric line is read by TTS, the progress of the melody of the corresponding lyric line is stopped.
제1 항에 있어서,
상기 중앙 서버는,
상기 사용자 단말로부터 상기 특정 노래에 대한 반주 데이터의 전송 요청이 수신되면, 상기 특정 노래에 대한 반주 데이터가 저장되어 있는지 여부를 판단하고, 상기 반주 데이터가 저장되어 있는 경우, 상기 TTS 데이터의 생성없이 상기 반주 데이터를 상기 사용자 단말로 전송하고, 상기 반주 데이터가 저장되어 있지 않은 경우, 상기 TTS 데이터를 생성하도록 구성된 것을 특징으로 하는 노래 반주 시스템.
The method of claim 1,
The central server,
When a request for transmission of accompaniment data for the specific song is received from the user terminal, it is determined whether accompaniment data for the specific song is stored, and if the accompaniment data is stored, the TTS data is not generated. and transmitting accompaniment data to the user terminal, and generating the TTS data when the accompaniment data is not stored.
제1 항에 있어서,
상기 중앙 서버는, 가사 포맷의 가사 라인별 시간 정보에 기초하여, 인접하는 가사 라인들 간격에 대한 시간 정보를 추출하고, 상기 간격의 시간의 길이가 미리 정해진 기준보다 짧은 경우, 해당 가사 라인들의 사이에는 TTS 데이터를 생성하지 않는 것을 특징으로 하는 노래 반주 시스템.
The method of claim 1,
The central server extracts time information for an interval between adjacent lyric lines based on time information for each lyric line in the lyric format, and when the length of the interval is shorter than a predetermined criterion, between the lyric lines A song accompaniment system, characterized in that it does not generate TTS data.
제1 항에 있어서,
상기 중앙 서버는, 상기 가사 포맷의 가사 라인별 시간 정보 및 가사 음절별 시간 정보에 기초하여, 인접하는 가사 라인들 중 뒷 가사 라인에 포함되는 가사의 음절 수 및 음절 당 미리 정해진 TTS 제공 시간의 곱을 통해 해당 가사 라인의 TTS 제공 시간을 산출하고, 상기 뒷 가사 라인의 첫 가사 음절의 시작 시점으로부터 상기 가사 라인의 TTS 제공 시간만큼 앞선 시점을, 상기 가사 라인의 TTS 제공 시점으로 결정하는 것을 특징으로 하는 노래 반주 시스템.
The method of claim 1,
The central server calculates, based on the time information for each lyric line and the time information for each lyric syllable in the lyric format, the product of the number of syllables of lyrics included in the rear lyric line among adjacent lyric lines and a predetermined TTS provision time per syllable through calculating the TTS provision time of the corresponding lyric line, and determining the TTS provision time of the lyric line from the start time of the first lyric syllable of the rear lyric line as the TTS provision time of the lyric line Song accompaniment system.
제9 항에 있어서,
상기 중앙 서버는, 산출된 상기 가사 라인의 TTS 제공 시간이, 상기 인접하는 가사 라인들의 시간 간격보다 긴 경우, 상기 TTS 제공 시간을 단축시켜, 상기 가사 라인의 TTS 제공 시점이 상기 인접하는 가사 라인들의 시간 간격 내에 위치하도록 하는 것을 특징으로 하는 노래 반주 시스템.

10. The method of claim 9,
The central server shortens the TTS provision time when the calculated TTS provision time of the lyric line is longer than the time interval of the adjacent lyric lines, so that the TTS provision time of the lyric line is equal to that of the adjacent lyric lines. A song accompaniment system, characterized in that it is positioned within a time interval.

KR1020210000124A 2021-01-04 2021-01-04 Song playing system Active KR102290901B1 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
KR1020210000124A KR102290901B1 (en) 2021-01-04 2021-01-04 Song playing system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020210000124A KR102290901B1 (en) 2021-01-04 2021-01-04 Song playing system

Publications (1)

Publication Number Publication Date
KR102290901B1 true KR102290901B1 (en) 2021-08-19

Family

ID=77492347

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020210000124A Active KR102290901B1 (en) 2021-01-04 2021-01-04 Song playing system

Country Status (1)

Country Link
KR (1) KR102290901B1 (en)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001356784A (en) * 2000-06-12 2001-12-26 Yamaha Corp Terminal device
JP2002108375A (en) * 2000-10-04 2002-04-10 Matsushita Electric Ind Co Ltd Karaoke song data conversion apparatus and karaoke song data conversion method
KR20050018929A (en) * 2005-02-01 2005-02-28 우종식 The method and apparatus for creation and playback of sound source
JP2016157087A (en) * 2015-02-26 2016-09-01 パイオニア株式会社 Music reproduction system, server, music data providing method and program
KR102050785B1 (en) 2019-05-10 2019-12-02 주식회사 금영엔터테인먼트 Song lyric outputting method, song playing apparatus and song playing system

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2001356784A (en) * 2000-06-12 2001-12-26 Yamaha Corp Terminal device
JP2002108375A (en) * 2000-10-04 2002-04-10 Matsushita Electric Ind Co Ltd Karaoke song data conversion apparatus and karaoke song data conversion method
KR20050018929A (en) * 2005-02-01 2005-02-28 우종식 The method and apparatus for creation and playback of sound source
JP2016157087A (en) * 2015-02-26 2016-09-01 パイオニア株式会社 Music reproduction system, server, music data providing method and program
KR102050785B1 (en) 2019-05-10 2019-12-02 주식회사 금영엔터테인먼트 Song lyric outputting method, song playing apparatus and song playing system

Similar Documents

Publication Publication Date Title
CN106373580B (en) Method and device for synthesizing singing voice based on artificial intelligence
CN111402843B (en) Rap music generation method and device, readable medium and electronic equipment
JP4168621B2 (en) Mobile phone device and mobile phone system using singing voice synthesis
US20160379611A1 (en) Systems and Method for Music Remixing
US20050182630A1 (en) Multilingual text-to-speech system with limited resources
US9065931B2 (en) Systems and methods for portable audio synthesis
US20140046667A1 (en) System for creating musical content using a client terminal
CN111899720A (en) Method, apparatus, device and medium for generating audio
CN109949783A (en) Song synthesis method and system
JP2002366186A (en) Speech synthesis method and speech synthesis device for implementing the method
WO2006066075A1 (en) System and method for music score capture and synthesized audio performance with synchronized presentation
CN111445897A (en) Song generation method and device, readable medium and electronic equipment
CN110660375A (en) Method, device and equipment for generating music
KR20050038714A (en) Downloading service system of self music file using radio internet and service method thereof
KR102290901B1 (en) Song playing system
KR20010109498A (en) Song accompanying and music playing service system and method using wireless terminal
KR100506228B1 (en) Mobile terminal and method for editing and playing music
KR101124798B1 (en) Apparatus and method for editing electronic picture book
CN112685000B (en) Audio processing method, device, computer equipment and storage medium
KR102768266B1 (en) Method and system for generating synthesis voice based on text describing speaker
EP4597488A1 (en) Audio processing method and apparatus, and electronic device
KR102150902B1 (en) Apparatus and method for voice response
KR20010088141A (en) Language learning system using a telecommunication device
KR20070104127A (en) Communication terminal and method providing TTS function
KR100791509B1 (en) Phone sound service method

Legal Events

Date Code Title Description
PA0109 Patent application

Patent event code: PA01091R01D

Comment text: Patent Application

Patent event date: 20210104

PA0201 Request for examination
PA0302 Request for accelerated examination

Patent event date: 20210104

Patent event code: PA03022R01D

Comment text: Request for Accelerated Examination

PE0902 Notice of grounds for rejection

Comment text: Notification of reason for refusal

Patent event date: 20210310

Patent event code: PE09021S01D

E701 Decision to grant or registration of patent right
PE0701 Decision of registration

Patent event code: PE07011S01D

Comment text: Decision to Grant Registration

Patent event date: 20210621

GRNT Written decision to grant
PR0701 Registration of establishment

Comment text: Registration of Establishment

Patent event date: 20210811

Patent event code: PR07011E01D

PR1002 Payment of registration fee

Payment date: 20210811

End annual number: 3

Start annual number: 1

PG1601 Publication of registration
PR1001 Payment of annual fee

Payment date: 20240808

Start annual number: 4

End annual number: 4

PR1001 Payment of annual fee

Payment date: 20250609

Start annual number: 5

End annual number: 5