KR20060103788A - Method and system for performing music using number musical note in mobile terminal - Google Patents
Method and system for performing music using number musical note in mobile terminal Download PDFInfo
- Publication number
- KR20060103788A KR20060103788A KR1020050025698A KR20050025698A KR20060103788A KR 20060103788 A KR20060103788 A KR 20060103788A KR 1020050025698 A KR1020050025698 A KR 1020050025698A KR 20050025698 A KR20050025698 A KR 20050025698A KR 20060103788 A KR20060103788 A KR 20060103788A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- information
- chord
- value
- event data
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10G—REPRESENTATION OF MUSIC; RECORDING MUSIC IN NOTATION FORM; ACCESSORIES FOR MUSIC OR MUSICAL INSTRUMENTS NOT OTHERWISE PROVIDED FOR, e.g. SUPPORTS
- G10G1/00—Means for the representation of music
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10G—REPRESENTATION OF MUSIC; RECORDING MUSIC IN NOTATION FORM; ACCESSORIES FOR MUSIC OR MUSICAL INSTRUMENTS NOT OTHERWISE PROVIDED FOR, e.g. SUPPORTS
- G10G3/00—Recording music in notation form, e.g. recording the mechanical operation of a musical instrument
- G10G3/04—Recording music in notation form, e.g. recording the mechanical operation of a musical instrument using electrical means
Landscapes
- Physics & Mathematics (AREA)
- Engineering & Computer Science (AREA)
- Acoustics & Sound (AREA)
- Multimedia (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
본 발명은 이동통신 단말기에서의 숫자 악보 데이터를 이용한 음악 연주 방법 및 시스템에 관한 것이다. 본 발명의 일 실시예에 따른 음악 연주 방법은 하나 이상의 숫자 악보 데이터, 하나의 기본 단음에 상응하는 제1 소리 데이터를 저장하고, 키 입력부를 통해 입력된 악보 선택 명령에 상응하는 숫자 악보 데이터를 문자열과 숫자열의 형태로 표시부에 표시하며, 키 입력부를 통해 임의의 키 버튼이 입력되면 상응하는 음높이에 상응하도록 상기 제1 소리 데이터를 갱신하여 출력한다. 본 발명에 의해 사용자는 최소한의 소리 데이터만으로도 숫자 악보에 상응하는 곡의 연주가 가능하다.The present invention relates to a method and system for playing music using numerical score data in a mobile communication terminal. The music playing method according to an embodiment of the present invention stores one or more numerical score data, first sound data corresponding to one basic single tone, and strings the numerical score data corresponding to the music score selection command input through a key input unit. The display unit is displayed on the display unit in the form of and a numeral string, and when an arbitrary key button is input through the key input unit, the first sound data is updated and output to correspond to the corresponding pitch. According to the present invention, the user can play a song corresponding to the numerical score with minimal sound data.
연주, 악기, 음악, 반주 Playing, musical instrument, music, accompaniment
Description
도 1은 본 발명의 바람직한 일 실시예에 따른 키 패드를 이용한 음악 연주가 가능한 이동 통신 단말기의 블록 구성도.1 is a block diagram of a mobile communication terminal capable of playing music using a keypad according to an embodiment of the present invention.
도 2는 본 발명에 바람직한 실시예에 따른 미디파일로부터 숫자 악보 데이터를 추출하는 과정을 나타낸 순서도.2 is a flowchart illustrating a process of extracting numerical score data from a MIDI file according to a preferred embodiment of the present invention.
도 3a 및 도 3b는 미디 파일의 데이터 구조를 나타낸 도면.3A and 3B show the data structure of a MIDI file.
도 3c는 미디파일의 데이터를 16진수 형태로 표시한 도면.3C is a hexadecimal representation of the data in the MIDI file;
도 4는 본 발명의 바람직한 일 실시예에 따른 숫자 악보 데이터 다운로드 방법을 나타낸 데이터 흐름도.4 is a data flow diagram illustrating a method for downloading numerical score data according to an embodiment of the present invention.
도 5는 본 발명의 바람직한 일 실시예에 키 패드를 이용한 음악 연주 방법을 나타낸 순서도. 5 is a flowchart illustrating a music playing method using a keypad in a preferred embodiment of the present invention.
도 6은 본 발명의 바람직한 일 실시예에 따른 키 패드를 이용한 음악 연주 과정을 나타낸 사용자 인터페이스 화면의 예시도. 6 is an exemplary view showing a user interface screen showing a music playing process using a keypad according to an embodiment of the present invention.
도 7은 본 발명의 바람직한 실시예에 따른 악기 MMF파일의 데이터를 16진수 형태로 나타낸 예시도. 7 is an exemplary diagram showing data of an instrument MMF file in hexadecimal form according to a preferred embodiment of the present invention.
도 8은 본 발명의 바람직한 실시예에 따른 C메이저(major)MMF파일의 데이터를 16진수형태로 나타낸 예시도. 8 is an exemplary diagram showing data of a major MMF file in hexadecimal form according to a preferred embodiment of the present invention.
도 9는 본 발명의 바람직한 실시예에 따른 C마이너(minor) MMF파일의 데이터를 16진수형태로 나타낸 예시도.9 is an exemplary diagram showing data of a C minor MMF file in hexadecimal form according to a preferred embodiment of the present invention.
<도면의 주요부분에 대한 부호의 설명><Description of the symbols for the main parts of the drawings>
100 : 이동 통신 단말기100: mobile communication terminal
110 : 송수신부110: transceiver
115 : 저장부115: storage unit
120 : 연주 설정 관리부120: performance setting manager
125 : 임시메모리125: temporary memory
130 : 음 변환부130: sound conversion unit
135 : 음향 출력부135: sound output unit
140 : 제어부140: control unit
145 : 표시부145: display unit
155 : 키 입력부155: key input unit
160 : 이동 통신 서비스 시스템160: mobile communication service system
165 : 부가 정보 서비스 장치165: additional information service device
본 발명은 이동 통신 단말기에 관한 것으로, 특히 이동 통신 단말기를 이용한 부가 서비스에 관한 것이다.The present invention relates to a mobile communication terminal, and more particularly, to an additional service using the mobile communication terminal.
정보통신기술은 매우 빠르게 발전하고 있다. 이러한 정보통신기술의 핵심이라 할 수 있는 이동통신 단말기도 더불어 많은 발전을 거듭하였다.Information and communication technology is developing very fast. Mobile communication terminals, which can be said to be the core of such information and communication technology, have also developed a lot.
초기의 이동통신 단말기는 단순히 휴대하여 이동중에 전화 통화를 수행할 수 있는 기능만을 구비하고 있었다. 하지만 현재의 이동통신 단말기는 무선 인터넷 접속 기능, 이미지 촬영 기능, 멀티미디어 데이터(예를 들어, MP3 파일) 재생 기능 등의 다양한 부가 기능이 구비되도록 진화하고 있다.Early mobile communication terminals were simply equipped with a function of carrying a phone call while being mobile. However, current mobile communication terminals have evolved to include various additional functions such as wireless Internet access function, image capturing function, and multimedia data (for example, MP3 file) playback function.
사용자들은 이동통신 단말기가 구비한 무선 인터넷 접속 기능을 이용하여 통신망을 통해 웹 서버에 접속할 수 있으며, 당해 웹 서버로부터 다양한 서비스(예를 들어, 노래방 서비스, 증권 정보 제공 서비스)를 제공받을 수 있다.Users may access a web server through a communication network using a wireless internet access function provided by the mobile communication terminal, and may receive various services (eg, karaoke service and stock information providing service) from the web server.
그러나, 종래의 노래방 서비스는 사용자가 제공받은 음악 데이터를 단순히 재생하여 청취하는 서비스로 한정되어 사용자의 다양한 욕구를 만족시킬 수 없는 문제점이 있었다.However, the conventional karaoke service is limited to a service that simply reproduces and listens to music data provided by the user, which may not satisfy various needs of the user.
따라서, 상술한 문제점을 해결하기 위한 본 발명의 목적은 숫자 악보를 통해 사용자가 이동통신 단말기를 이용하여 임의의 곡을 쉽게 연주할 수 있도록 하는 이동통신 단말기에서의 숫자 악보 데이터를 이용한 음악 연주 방법 및 시스템을 제공하는 것이다.Accordingly, an object of the present invention for solving the above problems is a method of playing music using numerical score data in a mobile communication terminal that allows a user to easily play any song using the mobile communication terminal through the numerical score and To provide a system.
본 발명의 다른 목적은 하나의 악보에 대하여 단음계 연주 및 화음 연주가 가능하여 복수의 사용자간에 협주를 가능하게 하는 이동통신 단말기에서의 숫자 악보 데이터를 이용한 음악 연주 방법 및 시스템을 제공하는 것이다.It is another object of the present invention to provide a method and system for playing music using numerical score data in a mobile communication terminal that enables single-note playing and chord playing for one sheet music to enable cooperation among a plurality of users.
본 발명의 또 다른 목적은 임의의 악기를 이용한 단음계 연주 또는 임의의 리듬(예를 들어, 폴카, 트로트, 왈츠 등)에 따른 화음 연주를 위하여 사용자 단말기로 기본 음계 또는 기본 화음에 상응하는 소리 데이터만을 전송함으로써 전송 시간의 최소화 및 통신망 이용료의 최소화가 가능한 이동통신 단말기에서의 숫자 악보 데이터를 이용한 음악 연주 방법 및 시스템을 제공하는 것이다.Still another object of the present invention is to provide a sound system corresponding to a basic scale or a basic chord with a user terminal for playing a chord using any musical instrument or playing a chord according to a certain rhythm (for example, polka, trot, waltz, etc.). The present invention provides a method and system for playing music using numerical score data in a mobile communication terminal capable of minimizing transmission time and minimizing communication network fee by transmitting.
본 발명의 또 다른 목적은 미디 데이터를 이용하여 악보를 자동 생성할 수 있어 악보 생성 과정의 편의성을 극대화한 이동통신 단말기에서의 숫자 악보 데이터를 이용한 음악 연주 방법 및 시스템을 제공하는 것이다.It is still another object of the present invention to provide a music playing method and system using numerical score data in a mobile communication terminal that can automatically generate sheet music using MIDI data, thereby maximizing the convenience of the sheet music generating process.
이외의 본 발명의 목적들은 하기의 실시예에 대한 설명을 통해 쉽게 이해될 수 있을 것이다.Other objects of the present invention will be easily understood through the description of the following examples.
상기 목적을 달성하기 위하여, 본 발명의 일 측면에 따르면, 부가 서비스 제공 장치의 미디(MIDI) 음원 데이터를 이용한 악보 생성 방법에 있어서, (a) 임의의 미디 음원 데이터를 입력받는 단계; (b) 상기 미디 음원 데이터의 코드 정보를 이벤트 단위로 해석하는 단계; (c) 상기 이벤트 데이터가 가사, 계이름, 화음 중 무엇인지 판단하는 단계; (d) 상기 이벤트 데이터가 가사인 경우 가사 정보로서 축적하고, 상기 이벤트 데이터가 계이름인 경우 상기 계이름에 상응하도록 미리 설정된 숫자를 계이름 숫자 악보로서 축적하며, 상기 이벤트 데이터가 화음인 경우 상기 화음에 상응하도록 미리 설정된 숫자를 화음 숫자 악보로서 축적하는 단계; 상기 미디 음원 데이터의 코드 정보 해석이 완료될 때까지 상기 단계 (b) 내지 상기 단계 (d)를 반복하는 단계; 및 상기 미디 음원 데이터의 코드 정보 해석이 완료되면, 상기 축적된 가사 정보, 상기 축적된 계이름 숫자 악보 정보 및 상기 축적된 화음 숫자 악보를 각각 저장하는 단계를 포함하는 이동통신 단말기에서의 숫자 악보 데이터를 이용한 음악 연주 방법이 제공되고, 당해 통신망을 이용한 데이터 전송 방법의 수행을 가능하게 하는 시스템 및 기록매체가 제공된다. In order to achieve the above object, according to an aspect of the present invention, a music score generation method using the MIDI (MIDI) sound source data of the additional service providing apparatus, comprising: (a) receiving any MIDI sound source data; (b) interpreting code information of the MIDI sound source data in an event unit; (c) determining whether the event data is lyrics, system name, or chord; (d) when the event data is lyrics, accumulate as lyrics information; when the event data is system name, a preset number corresponding to the system name is accumulated as system name number score, and when the event data is a chord, corresponding to the chord Accumulating a preset number as a chord digit score; Repeating steps (b) to (d) until interpretation of code information of the MIDI sound source data is completed; And storing the stored lyrics information, the accumulated system name number score information, and the accumulated chord number score, respectively, when the code information analysis of the MIDI sound source data is completed. Provided is a method of playing music using the present invention, and a system and a recording medium for enabling the data transmission method using the communication network.
상기 단계 (c)에서 상기 이벤트 데이터가 FF 05 형식의 제1 코드값을 포함하는 경우 상기 가사로 인식되고, 9n Kk Vv 형식의 제2 코드값을 포함하는 경우 상기 계이름 또는 상기 화음으로 인식되며, 상기 Kk 및 상기 Vv는 임의의 16진수값을 가지는 것을 특징으로 한다.In the step (c), when the event data includes the first code value of the
수학식(Octave = Dec(Kk)/12)에 의해 산출된 정수값으로서의 옥타브(Octave)가 0 또는 1인 경우에만 상기 이벤트 데이터는 상기 화음으로 인식되는 것을 특징으로 한다. 여기서, 상기 Dec(Kk)는 상기 Kk를 10진수 값으로 변환하는 함수이다..The event data may be recognized as the chord only when the octave as an integer value calculated by the equation (Octave = Dec (Kk) / 12) is 0 or 1. Here, Dec (Kk) is a function that converts Kk to a decimal value.
상기 이벤트 데이터가 상기 계이름 또는 상기 화음인 경우, 상응하는 코드값 을 미리 설정된 키 매핑 테이블에서 수학식(Note = Dec(Kk) mod 12)에 의해 산출된 값에 상응하는 숫자로 변환하는 것을 특징으로 한다. 여기서, 상기 Dec(Kk)는 상기 Kk를 10진수 값으로 변환하는 함수이고, 상기 mod는 산출값의 나머지를 취하는 함수이다..When the event data is the system name or the chord, the corresponding code value is converted into a number corresponding to the value calculated by the equation (Note = Dec (Kk) mod 12) in a preset key mapping table. do. Here, Dec (Kk) is a function that converts Kk to a decimal value, and mod is a function that takes the remainder of the calculated value.
상기 Vv가 0(zero)인 경우 상응하는 Kk값은 무시하는 것을 특징으로 한다.If the Vv is zero, the corresponding Kk value is ignored.
본 발명의 다른 측면에 따르면, 숫자 악보 데이터를 이용한 음악 연주 방법을 수행하기 위해 휴대형 단말기에 의해 실행될 수 있는 명령어들의 프로그램이 유형적으로 구현되어 있으며, 상기 휴대형 단말기에 의해 판독될 수 있는 프로그램을 기록한 기록매체에 있어서, (a) 하나 이상의 숫자 악보 데이터, 하나의 기본 단음에 상응하는 제1 소리 데이터를 저장하는 단계; (b) 키 입력부를 통해 입력된 악보 선택 명령에 상응하는 숫자 악보 데이터를 문자열과 숫자열의 형태로 표시부에 표시하는 단계; (c) 상기 키 입력부를 통해 임의의 키 버튼이 입력되는 단계; (d) 상기 입력된 키 버튼에 상응하는 음높이에 상응하도록 상기 제1 소리 데이터를 갱신하는 단계; 및 (e) 상기 갱신된 제1 소리 데이터를 출력하는 단계를 실행하되, 상기 제1 소리 데이터는 상기 단계 (b)에서 임시 메모리에 적재되고, 상기 단계 (d)는 상기 기본음을 표시하는 노트 정보를 상기 키 버튼에 상응하는 음높이의 노트 정보로 갱신하는 프로그램을 기록한 기록매체가 제공된다.According to another aspect of the present invention, there is tangibly embodied a program of instructions that can be executed by a portable terminal to perform a music playing method using numerical score data, and records a program that can be read by the portable terminal. A medium, comprising: (a) storing one or more numerical score data, first sound data corresponding to one basic short note; (b) displaying numerical score data corresponding to the sheet music selection command input through the key input unit on the display unit in the form of a string and a number string; (c) inputting an arbitrary key button through the key input unit; (d) updating the first sound data to correspond to the pitch corresponding to the input key button; And (e) outputting the updated first sound data, wherein the first sound data is loaded into the temporary memory in step (b), and step (d) is note information indicating the basic sound. There is provided a recording medium which records a program for updating to note information of the pitch corresponding to the key button.
상기 숫자 악보 데이터는 문자가 연속적으로 배열되어 형성된 하나 이상의 가사 라인, 각 문자에 상응하는 음높이를 나타내는 숫자가 연속적으로 배열되어 형성된 하나이상의 숫자 라인이 교번하여 상기 표시부에 표시되는 것을 특징으로 한 다.The numerical score data may be displayed on the display unit by alternately displaying one or more lyrics lines formed by continuously arranging letters, and one or more number lines formed by successively arranging numbers representing pitches corresponding to each character.
상기 단계 (a)는 복수의 단음으로 형성된 두개의 기본 화음에 각각 상응하는 제2 소리 데이터 및 제3 소리 데이터를 더 저장하는 것을 특징으로 한다.Step (a) is characterized in that further stores the second sound data and the third sound data respectively corresponding to the two basic chords formed of a plurality of single tones.
상기 제2 소리 데이터는 C 메이저 코드에 상응하고, 상기 제3 소리 데이터는 C 마이너 코드에 상응하는 것을 특징으로 한다.The second sound data corresponds to a C major code, and the third sound data corresponds to a C minor code.
상기 키 입력부를 통한 연주 종료 명령이 입력되거나 상기 숫자 악보 데이터에 따른 연주가 완료될 때까지 상기 단계 (c) 내지 상기 단계 (e)를 반복하는 것을 특징으로 한다.The steps (c) to (e) are repeated until a performance end command through the key input unit is input or the performance according to the numerical score data is completed.
이하, 본 발명의 바람직한 실시예를 첨부한 도면들을 참조하여 상세히 설명하기로 한다. Hereinafter, exemplary embodiments of the present invention will be described in detail with reference to the accompanying drawings.
도 1은 본 발명의 바람직한 일 실시예에 따른 키 패드를 이용한 음악 연주가 가능한 이동 통신 단말기의 블록 구성도이다.1 is a block diagram of a mobile communication terminal capable of playing music using a keypad according to an embodiment of the present invention.
도 1에 도시된 바와 같이, 본 발명에 따른 이동 통신 단말기(100)는 송수신부(110), 저장부(115), 연주 설정 관리부(120), 임시 메모리(125), 음 변환부(130), 음향 출력부(135), 제어부(140), 표시부(145), 키 입력부(155)를 포함한다. As shown in FIG. 1, the
송수신부(110)는 이동통신 시스템(160)을 경유하여 부가 정보 서비스 장치(165)와 통신망을 통해 결합되어, 부가 정보 서비스 장치(165)로 키 입력부(155)를 통해 입력된 선택 정보(예를 들어, 악보 선택 정보, 악기 선택 정보, 리듬 선택 정보 등)를 부가 정보 서비스 장치(165)로 전송하고, 부가 정보 서비스 장치(165)로부터 선택 정보에 상응하는 데이터를 수신한다. 도 1에는 부가 정보 서비스 장치(165)와 이동 통신 시스템(160)이 별개의 구성 요소로만 도시되었으나, 부가 정보 서비스 장치(165)는 이동 통신 시스템(160)의 일 구성 요소일 수 있다. 부가 정보 서비스 장치(165)로부터 수신되는 데이터는 악보 선택 정보에 상응하는 숫자 악보 데이터, 악기 선택 정보에 상응하는 단음계 소리 데이터 또는 리듬 선택 정보에 상응하는 화음 소리 데이터일 수 있다. 여기서, 단음계 소리 데이터 및 화음 소리 데이터는 각각 기본 음계(예를 들어, 도) 또는 기본 화음(예를 들어, C 메이저, C 마이너)만으로 구성된 데이터로서, 예를 들어 mmf 파일일 수 있다. The
저장부(115)는 이동 통신 단말기(100)의 운용 프로그램, 디폴트 연주 설정 데이터(예를 들어, 각 키 버튼에 상응하여 출력되는 음 높이, 악기 또는 리듬 유형 등), 사용자 연주 설정 데이터, 상기 송수신부(110)를 통해 수신한 숫자 악보 데이터, 사용자의 선택에 의해 연주된 연주 데이터를 저장한다. The
연주 설정 관리부(120)는 미리 설정된 디폴트 연주 설정 데이터와 사용자에 의해 설정된 사용자 연주 설정 데이터(예를 들어, 악기 유형 선택 정보 등) 등을 관리한다. 연주 설정 관리부(120)는 키 입력부(155)를 통해 임의의 키 버튼이 선택되면 현재 설정된 음높이 정보 및 악기 유형 선택 정보(또는 리듬 유형 선택 정보)를 제어부(145)로 전달한다. 제어부(140)는 음향 출력부(135)를 제어하여 키 버튼에 상응하는 음향이 출력되도록 한다.The
임시 메모리(125)는 사용자에 의해 선택된 숫자 악보 데이터, 소리 데이터(즉, 단음계 소리 데이터 또는 화음 소리 데이터) 또는 소리 데이터의 코드 정보가 적재된다. 임시 메모리(125)는 저장부(115)의 일 영역 또는 캐시 메모리(Cache memory)일 수 있다. 임시 메모리(125)에 적재된 소리 데이터는 사용자가 선택한 임의의 키 버튼에 상응하는 음향이 출력되도록 음 변환부(130)에 의해 소리 데이터의 노트(note) 정보가 수정된 경우 수정된 소리 데이터로 갱신된다. 여기서 노트 정보란 임의의 악기에 의한 단음계 연주를 위한 음 높이 정보 및/또는 임의의 리듬 유형에 대한 화음 정보를 의미한다. The
음 변환부(130)는 키 입력부(155)를 통해 입력된 키 버튼에 상응하는 음향으로 음향 출력부(135)를 통해 출력될 수 있도록 임시 메모리(125)에 적재된 소리 데이터의 코드 정보 중 노트 정보를 수정한다. 당해 노트 정보를 키 버튼에 상응하도록 수정하는 방법은 이후 도 2를 참조하여 설명될 미디파일로부터 숫자 악보 데이터 추출 방법이 역의 방법으로 이용될 수 있다. 다만, 임시 메모리(125)나 저장부(115)에 저장된 소리 데이터의 파일 형태(예를 들어, mmf)는 상이할 수 있다. The
키 입력부(155)는 복수의 키 버튼(예를 들어, 숫자 키, * 또는 #의 기호 키, 메뉴 또는 확인 등의 기능 키)을 포함하여 구현될 수 있으며, 사용자로부터 이동 통신 단말기(100)의 동작을 제어하기 위한 제어 명령, 음악 연주를 위한 제어 명령(예를 들어, 특정 음높이의 음향을 출력하기 위한 키 버튼 입력, 악기 유형 선택 명령, 리듬 유형 선택 명령 등)을 입력 받기 위한 수단이다.The
표시부(145)는 키 입력부(155)를 이용한 키 버튼의 선택에 따른 동작 상태, 음악 연주를 위한 기능 화면(예를 들어, 연주 음악 선택 리스트, 연주 음악의 악기/리듬 선택 메뉴), 숫자 악보 데이터 등을 표시한다. 표시부(145)는 예를 들어 액정 화면일 수 있다.The
음향 출력부(135)는 사용자가 입력한 임의의 키 버튼에 상응하는 음향을 외부로 출력한다. 음향 출력부(135)는 음원칩(예를 들어, 야마하 음원칩), 스피커를 포함할 수 있다.The
제어부(140)는 본 발명에 따른 이동 통신 단말기(100)가 키 패드를 이용한 음악 연주가 가능하도록 송수신부(110), 저장부(115), 연주 설정 관리부(120), 임시 메모리(125), 음 변환부(130), 음향 출력부(135), 표시부(145), 키 입력부(155) 등을 제어하는 기능을 수행한다.The
이제까지 도 1을 참조하여 본 발명에 따른 이동통신 단말기(100)의 구성을 설명하였다. 다만, 도시된 이동통신 단말기(100)의 구성 요소들 중 일부(예를 들어, 음 변환부(130), 연주 설정 관리부(120) 등)는 소프트웨어 프로그램의 형태로 구현될 수도 있음은 자명하다. 또한, 당해 소프트웨어 프로그램은 이동 통신 시스템(150) 내의 임의의 장치(예를 들어, 사용자가 키 입력부(155) 내의 "magicN" 또는 "multipack" 기능 버튼을 선택한 경우 접속되는 프록시 서버) 또는 부가 정보 서비스 장치(165)로부터 제공될 수 있다. So far, the configuration of the
도 2는 본 발명에 바람직한 실시예에 따른 미디파일로부터 숫자 악보 데이터 를 추출하는 과정을 나타낸 순서도이고, 도 3a 및 도 3b는 미디 파일의 데이터 구조를 나타낸 도면이며, 도 3c는 미디파일의 데이터를 16진수 형태로 표시한 도면이다. 2 is a flowchart illustrating a process of extracting numerical score data from a MIDI file according to a preferred embodiment of the present invention. FIGS. 3A and 3B are diagrams illustrating a data structure of a MIDI file, and FIG. The figure is shown in hexadecimal form.
본 발명에 따른 이동통신 단말기(100)는 키 버튼을 이용한 음악 연주를 위해 부가 정보 서비스 장치(165)(또는 이동 통신 시스템(160) - 이하 동일함)로부터 숫자 악보 데이터를 다운로드(download)하여야 한다. 따라서, 부가 정보 서비스 장치(165)는 이동통신 단말기(100)로 제공하기 위한 숫자 악보 데이터를 저장하여야 한다. 부가 정보 서비스 장치(165)는 임의의 미디 파일을 이용하여 숫자 악보 데이터를 생성하기 위한 소프트웨어 프로그램이 설치된 임의의 서버 장치일 수 있다. 이하의 설명을 통해 당업자는 부가 정보 서비스 장치(165)의 기능, 설치되는 소프트웨어 프로그램의 기능 및 용도를 쉽게 이해할 수 있을 것이다. 이하, 부가 정보 서비스 장치(165)가 미디 파일로부터 임의의 정보를 자동 추출하여 숫자 악보 데이터를 생성하는 방법을 설명한다.The
도 2를 참조하면, 부가 정보 서비스 장치(165)는 숫자 악보 데이터를 생성하기 위하여 임의의 미디 파일을 입력 받는다(단계 210). Referring to FIG. 2, the additional
설명의 편의를 위하여, 먼저 도 3a 및 도 3b를 참조하여 미디 파일 데이터 구조에 대해 간단히 설명하고, 이어서 부가 정보 서비스 장치(165)가 미디파일을 이용하여 숫자 악보 데이터를 생성하는 방법을 설명한다.For convenience of explanation, first, the MIDI file data structure will be briefly described with reference to FIGS. 3A and 3B. Next, a method of generating numerical score data by the additional
도 3a에 도시된 바와 같이, 미디 파일은 헤더정보를 포함하는 하나의 헤더 데이터 스트림과 복수개의 트랙 데이터 스트림(가사, 악기, 리듬, 연주 속도 등의 실제 데이터가 포함됨)으로 구성된다.As shown in FIG. 3A, the MIDI file is composed of one header data stream including header information and a plurality of track data streams (including actual data such as lyrics, musical instruments, rhythms, performance speeds, and the like).
하나의 트랙 데이터 스트림은 도 3b에 도시된 바와 같이 순차적인 하부 데이터 구조로 구성된다. 즉, 하나의 트랙 데이터 스트림은 여러 개의 MTrk event 데이터를 포함하고, 하나의 MTrk event 데이터는 1~4바이트(B : Byte)의 크기를 갖는 delta-time 데이터와 event 데이터로 구성된다. 여기서, delta-time 데이터는 이전 이벤트와의 시간 차이를 나타낸다. 그리고 하나의 event 데이터는 도 3b에서 보여지는 것과 같이 3가지의 이벤트 데이터로 구성될 수 있다. One track data stream is composed of a sequential underlying data structure as shown in FIG. 3B. That is, one track data stream includes a plurality of MTrk event data, and one MTrk event data is composed of delta-time data and event data having a size of 1 to 4 bytes (B: Byte). Here, the delta-time data represents a time difference from the previous event. One event data may be composed of three types of event data as shown in FIG. 3B.
도 3c에는 도 3a 및 도 3b의 데이터 구조를 만족하도록 저장된 미디파일의 데이터를 16진수 형태로 나타낸 것이다. In FIG. 3C, the data of the MIDI file stored to satisfy the data structures of FIGS. 3A and 3B are shown in hexadecimal form.
도 3c를 참조하여, 미디파일 이벤트 데이터에서 가사 정보, 계이름 정보, 화음 정보를 구분하는 방법을 간략히 설명한다.Referring to FIG. 3C, a method of distinguishing lyrics information, system name information, and chord information from MIDI file event data will be briefly described.
상술한 바와 같이 미디 파일 데이터는 일정한 데이터 구조로 구성되어 있고, 각각 그 형식에 맞도록 저장된다. 물론 미디 파일 데이터의 구조가 도 3b와 같은 세부 구조를 모두 포함하여 구성될 수도 있고, 필요시 일부만의 정보로서 구성될 수도 있음은 자명하다.As described above, the MIDI file data is composed of a certain data structure, and is stored in accordance with the format, respectively. Of course, the structure of the MIDI file data may be configured to include all the detailed structures as shown in FIG. 3B, or may be configured as only some information when necessary.
이하에서 설명되는 미디 파일 데이터는 하나의 MTrk event 데이터를 기본 단위로 해석되는 것으로 가정한다. 그리고, MTrk event 데이터의 1~4바이트 Delta-time 데이터는 현재 이벤트와 이전 이벤트의 시간의 차이를 나타낸다.The MIDI file data described below assumes that one MTrk event data is interpreted as a basic unit. In addition, 1 to 4 bytes of Delta-time data of MTrk event data indicate the difference between the time of the current event and the previous event.
메타-이벤트(Meta-event) 데이터가 "FF 59 02 sf mi"와 같은 형식이면, 이는 악곡의 조 정보를 포함하는 데이터임을 의미한다(여기서, sf, mi는 각각 0~F사이의 16진수일 수 있다).If the meta-event data is of the form "
즉, "FF 59 02"로 시작하면, 미디파일의 악곡의 조 정보를 포함하고 있음을 의미하고, 후행하는 sf, mi 데이터 정보는 악곡의 조정보의 실제 정보 값이다.In other words, starting with "
"sf"는 #,♭의 수가 몇 개인지를 나타내는 값이며, 16진수 "sf" 데이터를 십진수로 변환하였을 때, "sf"가 0보다 큰 양의 정수 값이면 #의 수를, "sf"가 0보다 작은 음의 정수이면 ♭의 수를 나타낸다. 다만, 16진수값이 양수인지 음수인지를 표시하기 위한 별도의 정보가 더 필요할 수도 있다. 그리고, 십진수로 변환된 "sf" 값이 0일 경우에는 다장조를 의미한다."sf" is a value indicating how many # and ♭ numbers are. When converting hexadecimal "sf" data to decimal number, "sf" is a positive integer greater than 0. A negative integer less than zero indicates the number of powers. However, additional information may be needed to indicate whether the hexadecimal value is positive or negative. And, if the "sf" value converted to decimal is 0, it means multi major.
그리고, "mi"는 장조인지 단조인지를 알 수 있는 플래그 데이터로써, 십진수로 변환된 "mi"가 0이면 장조, 1이면 단조를 나타낸다.In addition, "mi" is flag data indicating whether major or forging is major. If "mi" converted to decimal is 0, major is major, and if 1, minor is minor.
MTrk event 데이터에서 이벤트 데이터의 메타-이벤트(Meta-event) 데이터가 "FF 05 "로 시작하면, 이 데이터는 가사정보를 포함하고 있음을 의미하고, MIDI event 데이터가 9n Kk Vv와 같은 형식으로 시작하면, 이는 계이름 정보 내지는 화음 정보를 포함하고 있음을 의미한다. 여기서, Kk는 음정보이고, Vv는 음정보의 빠르기를 나타낸다. 또한 n, Kk, Vv 는 0~F까지의 16진수이다. 여기서, Vv가 0인 경우 노트 오프를 의미하며 이 경우에는 상응하는 음 정보가 추출되지 않는다. In the MTrk event data, if the meta-event data of the event data starts with "
다시 도 2를 참조하면, 부가 정보 서비스 장치(165)는 단계 210을 통해 입력된 미디 파일을 이용하여 숫자 악보 데이터를 생성하기 위해 미디 파일을 이벤트 단위로 독출(read)하여 해석하고, 미디파일의 음악 정보(예를 들어, 조표 정보, 박자 정보 등)를 임시 저장공간에 저장한다(단계 220). 임시 저장 공간은 예를 들어 임시 저장 버퍼, 캐시 메모리일 수 있다.Referring back to FIG. 2, the additional
앞서 이미 설명한 바와 같이, 부가 정보 서비스 장치(165)는 "FF 05"와 같은 형식으로 시작된 메타-이벤트 데이터는 가사 정보를 포함하는 것으로 인식하고, "9n Kk Vv"의 형식으로 시작된 미디 이벤트 데이터는 계이름 정보 또는 화음 정보가 포함된 것으로 되어 있는 것으로 인식함으로써 미디 파일 이벤트 데이터를 해석할 수 있다. As described above, the additional
또한, 부가 정보 서비스 장치(165)는 미디 이벤트 데이터가 계이름 정보 또는 화음 정보를 포함하고 있는 경우, 이를 구분하기 위하여 하기 수학식1을 이용하여 옥타브(Octave) 정보를 산출한다. In addition, when the MIDI event data includes system name information or chord information, the additional
여기서, Dec(x)는 x를 10진수 값으로 변환하는 함수이고, Kk는 음정보로서, 상술한 바와 같이 16진수값일 수 있다. 따라서, 옥타브 정보는 16진수값인 Kk를 10진수로 변환하여 12로 나눈 값의 몫이다. 여기서, INT 함수 대신 QUOTIENT 함수가 이용되거나 단지 정수값만이 산출되도록 할 수도 있음은 자명하다. 한 옥타브(Octave) 는 12개의 노트 정보, 즉 C, C#, D, D#, E, F, F#, G, G#, A, A#, B로 구성될 수 있다.Here, Dec (x) is a function for converting x to a decimal value, Kk is sound information, as described above may be a hexadecimal value. Thus, the octave information is the quotient of Kk, which is a hexadecimal value, converted to decimal and divided by 12. Here, it is obvious that the QUOTIENT function may be used instead of the INT function or only an integer value may be calculated. One octave may consist of twelve note information, namely C, C #, D, D #, E, F, F #, G, G #, A, A #, and B.
부가 정보 서비스 장치(165)는 상술한 수학식1에서 산출된 옥타브(Octave) 정보가 '0' 또는 '1'이면, 이벤트 데이터를 화음 정보로 해석하고, 그 이외의 값일 때는 계이름 정보로 해석한다. 그리고, 옥타브 정보가 0이면 메이저(major) 화음으 로, 옥타브 정보가 1이면 마이너(minor) 화음으로 해석한다.The additional
만일 단계 220에서 이벤트 데이터가 가사 정보로 판단되었다면, 부가 정보 서비스 장치(165)는 독출한 메타-이벤트 데이터에서 가사 정보를 판단하기 위해 "FF 05" 다음의 정보(예를 들어, 03)를 해석하여, 그 길이만큼 후행하는 데이터를 추출한다(단계 230). 예를 들어, 이벤트 데이터가 "FF 05 03 BE C6 20"이면, 단계 220에서 "FF 05"로 시작하므로 가사 정보로 판단하고, 단계 230에서 "BE C6 20"를 추출한다.If the event data is determined to be lyrics information in
또한, 만일 미디 이벤트 데이터가 "90 3E 64"이면, 단계 220을 통해 계이름 정보로 해석되고, 가운데 위치한 음정보를 계이름 값으로 추출한다(단계 240). 즉, 단계 240에서 음정보 "3E"가 계이름 값으로서 추출된다. In addition, if the MIDI event data is "90
그리고 만일 미디 이벤트 데이터가 "91 07 64"라면, 단계 220을 통해 화음 정보로 해석되고, 가운데 위치한 음정보를 화음 값으로 추출한다(단계 250). 즉, 단계 250에서 음정보 "07"이 화음 값으로 추출된다.If the MIDI event data is " 91 07 64 ", it is interpreted as chord information through
부가 정보 서비스 장치(165)는 단계 240과 단계 250에서 추출된 계이름 값과 화음 값을 하기 수학식 2를 이용하여 노트(Note)정보를 산출하고, 하기 표 1에 미리 정의된 키 매핑 값으로 변환한다(단계 260, 단계 270). The additional
여기서, Dec(x)는 x를 10진수 값으로 변환하는 함수이고, Kk는 음정보로서, 상술한 바와 같이 16진수값일 수 있다. 따라서, 노트 정보는 16진수값인 Kk를 10진수로 변환하여 12로 나눈 값의 나머지 정수값이다.Here, Dec (x) is a function for converting x to a decimal value, Kk is sound information, as described above may be a hexadecimal value. Therefore, the note information is the remaining integer value of Kk, which is a hexadecimal value, converted to decimal and divided by 12.
표 1. 매핑 테이블Table 1. Mapping Table
즉, 단계 240을 통해 추출된 계이름 값 "3E"는 수학식2에 의해 노트 정보 "2"가 산출된다. 이는 16진수 "3E"가 10진수로 변환되면 62가 되고 이를 12로 나누면 몫이 5, 나머지가 2이기 때문이다. 수학식2에 의해 산출된 노트 정보 2는 위의 표 1을 참조할 때 계이름 숫자 악보 값(즉, 악기 키)은 2가 된다. 그러나, 계이름 정보가 다장조가 아닌 경우(예를 들어, 십진수로 변환된 "sf" 값이 0일 경우에는 다장조를 의미함)를 제외하고, 하기의 표 2를 참조하여 조표 차이가 보정된다.That is, note information "2" is calculated by
예를 들어, 해석되는 미디파일이 사장조(G메이저)라고 가정하면, 조표 차이는 -5가 되고, 노트 정보에 조표 차이 -5를 보정(여기서, 이동통신 단말기(100)에서 연주될 때 조표 차이 만큼 더하여 주기 때문에 조표 차이 만큼 감하여줌)하면 노트 정보는 7(즉, 2-(-5))이 되어, 표 1의 키 매핑 테이블을 참조하면 계이름 숫 자 악보 값은 '5'로 매핑된다.For example, assuming that the MIDI file to be interpreted is a major major (G major), the difference in the tone becomes -5, and the difference in the note difference -5 is corrected in the note information (here, when the difference is played in the
표 2. 조표 차이 보정 테이블Table 2. Table Difference Correction Table
그리고, 단계 250에서 추출된 화음 값 "07"은 수학식 2에 의해 노트 정보 "7"이 산출된다. 또한, 산출된 노트 정보 "7"은 표 1의 키 매핑 테이블에 의해 화음 숫자 값은 '5'로 매핑된다(단계 270).The chord value "07" extracted in
단계 280에서 부가 정보 서비스 장치(165)는 미디파일 데이터 정보가 모두 해석하였는지를 판단한다. 모두 해석하였다면 단계 230에서 추출된 가사 정보, 단계 260에서 매핑된 계이름 숫자 악보 정보, 단계 270에서 매핑된 화음 숫자 악보 정보를 각각 미리 지정된 파일 형식으로 저장한다(단계 290). 이때, 가사 및 계이름 숫자 악보 또는 화음 숫자 악보가 동기화되어 표시될 수 있도록 하기 위한 표시 위치 정보를 더 포함할 수 있다. 표시 위치 정보는 각 이벤트간의 시간 차이 정보가 누적되어 이용될 수 있다. 당해 파일 형식은 예를 들어 바이너리 코드 형식이 저장된 것일 수 있다.In
도 4는 본 발명의 바람직한 일 실시예에 따른 숫자 악보 데이터 다운로드 방법을 나타낸 데이터 흐름도이다.4 is a data flow diagram illustrating a method for downloading numerical score data according to an embodiment of the present invention.
이동통신 단말기(100)에 본 발명에 따른 숫자 악보 데이터를 다운로드 받거 나 다운로드된 숫자 악보 데이터를 이용한 연주를 위해 상술한 소프트웨어 프로그램이 설치될 필요가 있음은 앞서 설명한 바와 같다. 다만, 당해 소프트웨어 프로그램의 설치 과정은 당업자에게 자명하므로 그 설명을 생략하기로 하고, 이하에서는 해당 소프트웨어 프로그램은 이미 설치된 것으로 간주하여 설명하기로 한다. As described above, it is necessary to install the above-described software program for downloading the numerical score data according to the present invention or playing the downloaded numerical score data in the
도 4를 참조하면, 단계 410에서 이동통신 단말기(100)는 사용자의 제어 명령에 따라 무선 통신망을 통해 접속된 부가 정보 서비스 장치(165)로 숫자 악보 리스트 요청을 전송한다. 앞서 설명한 바와 같이, 본 발명에 따른 소프트웨어 프로그램이나 악보 데이터는 이동통신 서비스 시스템(150) 내의 임의의 장치(예를 들어, 사용자가 키 입력부(155)내의 "magic N" 또는 "Fimm" 기능 버튼을 선택한 경우 접속되는 프록시 서버) 또는 부가 정보 서비스 장치(160)에서 제공되는 경우를 가정한 것이며, 숫자 악보 데이터가 이동통신 서비스 시스템(160)에서 제공되는 경우라면 이동통신 단말기(100)는 숫자 악보 리스트 요청을 이동 통신 단말기(100) 내의 해당 장치로 전송할 것이다.Referring to FIG. 4, in
단계 415에서 부가 정보 서비스 장치(165)는 키 패드를 이용한 음악 연주를 위해 이용되도록 하기 위하여 미리 저장한 숫자 악보 데이터들을 포함하는 숫자 악보 리스트를 추출한다. 숫자 악보 리스트는 미리 설정되어 있을 수도 있으나, 요청된 시점에서 숫자 악보 데이터들을 이용하여 실시간 생성될 수도 있음은 자명하다. 숫자 악보 리스트는 각각의 악보 데이터들을 나타내는 정보(예를 들어, 곡명, 가수, 연주 시간 등)를 포함하는 정보일 수 있다. In
단계 420에서 부가 정보 서비스 장치(165)는 추출된 숫자 악보 데이터 리스 트를 이동통신 단말기(100)에 통신망을 통해 전송한다. In
이동통신 단말기(100)에 통신망을 통해 전송된 숫자 악보 데이터 리스트는 이동통신 단말기(100)의 표시부(145)를 통해 표시되고, 키 입력부(155)를 통해 사용자의 키 버튼 입력에 의해 선택된 숫자 악보 선택 정보를 부가 정보 서비스 장치(165)로 전송한다(단계 425).The numerical score data list transmitted to the
단계 430에서 부가 정보 서비스 장치(165)는 숫자 악보 선택 정보에 상응하는 숫자 악보 데이터를 추출하여 이동통신 단말기(100)로 전송한다.In
이어서, 이동통신 단말기(100)의 송수신부(110)를 통해 부가 정보 서비스 장치(165)로부터 수신된 숫자 악보 데이터는 저장부(115)에 저장된다(단계 435). 당해 숫자 악보 데이터에 상응하여 디폴트로 설정된 연주 악기나 리듬 등이 존재하는 경우 해당 정보들은 연주 설정 관리부(120)에 의해 관리되도록 처리될 수 있다. 또한, 저장부(115)에 저장된 숫자 악보 데이터들의 리스트는 별도로 저장되어 관리될 수도 있다.Subsequently, the numerical score data received from the additional
도 5는 본 발명의 바람직한 일 실시예에 키 패드를 이용한 음악 연주 방법을 나타낸 순서도이고, 도 6은 본 발명의 바람직한 일 실시예에 따른 키 패드를 이용한 음악 연주 과정을 나타낸 사용자 인터페이스 화면의 예시도이다. 도 7은 본 발명의 바람직한 실시예에 따른 악기 MMF파일의 데이터를 16진수형태로 나타낸 예시도이고, 도 8은 본 발명의 바람직한 실시예에 따른 C메이저(major)MMF파일의 데이터를 16진수형태로 나타낸 예시도이며, 도 9는 본 발명의 바람직한 실시예에 따른 C마이너(minor) MMF파일의 데이터를 16진수형태로 나타낸 예시도이다.FIG. 5 is a flowchart illustrating a music playing method using a keypad according to an exemplary embodiment of the present invention, and FIG. 6 is an exemplary view illustrating a user interface screen showing a music playing process using a keypad according to an exemplary embodiment of the present invention. to be. 7 is an exemplary diagram showing data of an instrument MMF file in hexadecimal form according to a preferred embodiment of the present invention, and FIG. 8 is a hexadecimal form of data of a major MMF file according to a preferred embodiment of the present invention. 9 is an exemplary view showing data of a C minor MMF file in hexadecimal form according to a preferred embodiment of the present invention.
이동통신 단말기(100)에 본 발명에 따른 숫자 악보 데이터를 다운로드 받거나 다운로드된 숫자 악보 데이터를 이용한 연주를 위해 상술한 소프트웨어 프로그램이 설치될 필요가 있음은 앞서 설명한 바와 같다. 여기서도, 해당 소프트웨어 프로그램은 이미 설치된 것으로 간주하여 설명한다. 또한, 도 5에 도시된 각 단계는 이동통신 단말기(100)에 포함된 임의의 구성 요소에서 개별적으로 수행되는 단계일 수 있으나 설명 및 이해의 편의를 도모하기 위해 이동통신 단말기(100)에서 수행되는 것으로 통칭하여 설명한다.As described above, it is necessary to install the above-described software program in the
도 5를 참조하면, 이동 통신 단말기(100)는 단계 505에서 키 입력부(155)를 통해 임의의 숫자 악보 데이터에 대한 선택 명령을 입력받는다. 도 6에 도시된 바와 같이, 이동통신 단말기(100)는 사용자에 의해 연주 기능 실행 명령이 입력되면 표시부(145)에 연주 기능 실행 화면(610)을 표시하고, 이어서 사용자에 의해 키 입력부(155)를 통해 입력된 악보 데이터 표시 명령에 상응하여 저장부(115)에 저장된 숫자 악보 데이터의 명칭들을 나열하는 리스트 화면(620)을 표시한다.Referring to FIG. 5, in
단계 510에서 이동 통신 단말기(100)는 사용자로부터 임의의 악기를 지정하기 위한 악기 또는 리듬 선택 정보를 입력 받는다. 악기 선택 정보는 단음계 연주를 위한 것이고, 리듬 선택 정보는 화음 연주를 위한 것이다. 물론, 단계 510은 악기 유형(예를 들어, 피아노, 기타 등) 또는 리듬 유형(예를 들어, 트로트, 폴카 등)에 대한 선택을 요청한 후 임의의 유형이 선택되면 세부 악기(예를 들어, 피아노 등) 또는 세부 리듬(예를 들어, 트로트)을 선택받는 단계로서 세분화될 수도 있 다. 만일, 사용자가 악기 선택 정보를 입력한 경우 임시 메모리(125)에는 상응하는 악기의 기본음(예를 들어, 도)의 소리 데이터 또는 소리 데이터의 코드 정보가 적재된다. 또한 만일, 사용자가 리듬 선택 정보를 입력한 경우 임시 메모리(125)에는 상응하는 리듬의 기본 화음(예를 들어, C메이저(도,미,솔) 및 C마이너(도,파#,라))의 소리 데이터 또는 소리 데이터의 코드 정보가 적재된다. 물론, 특정 악기에 상응하는 소리 데이터는 복수의 기본음에 대한 소리 데이터를 포함할 수도 있다. 사용자가 악기 또는 리듬을 선택하는 과정이 도 6의 620에 도시되어 있다. 이어서, 사용자는 선택한 숫자 악보 데이터에 상응하는 연주를 수행하기 위한 키 정보를 선택할 수 있으며, 키 정보 선택 화면이 도 6의 630에 예시되어 있다. In
이어서, 단계 515에서 이동통신 단말기(100)는 임시 메모리(125)에 적재된 소리 데이터(또는 코드 정보)에서 입력된 키 버튼에 상응하도록 갱신되어야 할 노트 정보(예를 들어, 음 높이를 나타내는 노트 정보)를 추출(또는 노트 정보의 위치 인식)한다. 이는 사용자가 입력한 키 버튼에 상응하는 음높이 또는 화음이 출력되도록 하기 위함이다.Subsequently, in
이하, 이해의 편의를 위해 MMF 파일의 구조에 대해 설명한다.Hereinafter, the structure of the MMF file will be described for convenience of understanding.
만일 단계 510에서 사용자가 임의의 악기 메뉴를 선택한 경우, 단계 515에서 도 7에 도시된 악기 MMF 파일의 데이터가 임시 메모리(125)에 적재된다. 이동통신 단말기(100)(또는 이동통신 단말기(100)에 설치된 소프트웨어 프로그램)은 적재된 MMF 파일의 코드 정보 중에서 미리 설정된 조건을 만족하는 노트 정보를 추출한다. 노트 정보를 추출하는 방법은 앞서 도 2에서 설명한 방법과 유사하므로 이에 대한 중복된 설명은 생략한다. 즉, 도 7에 도시된 바와 같이, "90 3C 7F"가 노트 정보로서 추출(또는 해당 위치의 인식 - 이하 동일함)이 된다. 다만, 적재된 악기 MMF 파일이 다장조가 아닌 경우에는 상술한 바와 같이 표 2를 참조하여 음정보(즉, "90 3C 7F"에서 "3C")를 조표 차이 만큼 보정되어야 할 것이다.If the user selects any instrument menu in
또한 만일 단계 510에서 리듬 메뉴가 선택된 경우라면, 리듬 정보는 3개의 음으로 구성된 화음 정보이므로 3개의 노트 정보가 추출(또는 해당 위치의 인식)될 것이다. In addition, if the rhythm menu is selected in
상술한 바와 같이, 이동통신 단말기(100)는 이벤트 데이터가 "9n Kk Vv"로 시작되면, Kk를 음정보로서 추출한다. 따라서, 도 8에 도시된 바와 같이 "90 43 7F"이므로 첫번째 음정보로서 43을 추출한다. 그리고 두번째 음정보를 추출하기 위해 후행하는 정보를 해석하는데, 이때 0x80이상이면 2바이트를 스킵(skip)하고, 0x80미만이면 두번째 음정보를 추출한다. 세번째, 음정보 추출 방법도 두번째 음정보 추출방법과 동일하다. 이를 구체적으로 설명하면 다음과 같다.As described above, when the event data starts with "9n Kk Vv", the
도 8을 참조하면, "90 43 7F" 다음 데이터가 "81"이므로 "44"까지 2 바이트를 스킵하고, 다음 이벤트 데이터가 "00"으로 시작하므로 "80 40" 2 바이트를 해석하고, "40"을 두번째 음 정보로 추출한다. 그리고, 세번째 음정보를 추출하기 위하여 다음 이벤트 데이터를 해석하는데, "81"로 시작하므로 "81 44"인 2 바이트를 스킵하고, 다음 이벤트 데이터가 "00"로 시작하므로 "00 80 3C" 3 바이트를 해석하고, 세번째 음정보로 "3C"를 추출한다.Referring to Fig. 8, since the next data of "90 43 7F" is "81", two bytes are skipped to "44", and since the next event data starts with "00", "80 40" 2 bytes are interpreted, and "40 "Is extracted as the second note information. Then, to extract the third note information, the next event data is interpreted. Since it starts with "81", 2 bytes of "81 44" are skipped, and since the next event data starts with "00", 3 bytes of "00 80 3C" And extract "3C" as the third note information.
도 9에서의 음정보 추출 방법은 이제까지 도 8을 참조하여 설명한 바와 동일 하므로 그 설명을 생략한다.Since the sound information extracting method in FIG. 9 is the same as described above with reference to FIG. 8, a description thereof will be omitted.
다시 도 5를 참조하면, 이동통신 단말기(100)는 사용자에 의해 임의의 키 버튼이 입력되었음을 감지하고(단계 520), 입력된 키 버튼에 상응하는 음향을 출력하기 위하여 단계 515에서 추출한 노트 정보를 상응하는 노트 정보로 갱신한다(단계 525). 도 6의 640에 단음계 연주(즉, 악기 선택시)를 위한 숫자 악보 데이터가 표시되어 있고, 650에 화음 연주(즉, 리듬 선택시)를 위한 숫자 악보 데이터가 표시되어 있다. 640에 도시된 바와 같이, 사용자는 가사(즉, 아리랑) 밑에 기재된 숫자를 순차적으로 입력함으로써 해당 곡을 선택된 악기 음색으로 연주하게 된다. 그러나, 임시 메모리(125)에는 기본 음높이(예를 들어, 도)에 대한 소리 데이터만이 적재되어 있으므로, 연주 과정에서 입력되는 키 버튼에 상응하는 음높이의 음향을 출력할 수 있도록 노트 정보를 갱신할 필요가 있는 것이다. 이는 화음 연주의 경우에도 유사하다. 즉, 화음 연주의 경우 기본 화음(즉, C 메이저와 C 마이너)의 각 음높이(예를 들어, C 메이저의 경우 도, 미, 솔)를 입력된 키 버튼에 상응하는 화음이 출력되도록 갱신하는 차이만이 존재한다. 예를 들어, 숫자키 1이 C 화음 출력, 숫자키 2가 D 화음 출력, 숫자키 3이 E 화음 출력, 숫자키 4가 F 화음 출력, 숫자키 5가 G 화음 출력, 숫자키 6이 A 화음 출력, 숫자키 7이 B 화음 출력, 숫자키 8이 End 효과(즉, 곡이 종료되는 것처럼 짧게 출력), 문자키 *가 마이너 선택, 숫자키 0이 샵 마이너(Sharp minor), 문자키 #이 샵 메이저(Sharp major)로 설정될 수 있다. 이 상태에서 숫자키 2가 선택된 경우 이는 D 화음(레, 파#, 라)를 출력하기 위해서는 C 화음 각각의 음높이를 2단계 높여주기만 하면 족하다. 높여지는 음 높 이는 피아노 건반의 배열을 생각할 때 쉽게 이해될 수 있을 것이다. 마찬가지로 사용자가 악기 연주를 선택한 경우 각 키 버튼은 각 음높이에 상응하도록 설정(예를 들어, 예를 들어, 숫자키 1이 도, 숫자키 2가 레, 문자키 #이 샵(Sharp) 등)되어 동일한 처리 과정이 수행될 수 있다. 따라서, 도 7에 예시된 "3C"가 다장조에서의 기본 음 높이인 "도"를 의미하므로, 사용자가 "레"를 출력하기 위해 미리 설정된 키 버튼을 선택한 경우 이동통신 단말기(100)는 음 정보인 "3C"를 "레"를 출력하도록 하기 위한 "3E"로 변환한다. 결과적으로, 음정보 "3E"에 해당하는 "레"가 음향 출력부(135)를 통해 출력될 수 있는 것이다. 마찬가지로, 사용자에 의해 입력된 키 버튼에 상응하는 화음이 G 메이저라고 가정하면, 임시 메모리(125)에 적재된 C 메이저 화음 정보"0x43 0x40 0x3C"를 "0x4A 0x47 0x43"으로 보정하여 출력시켜준다. 또한, 기본 소리 데이터에 저장된 음정보와 상이한 장조를 사용자가 선택한 경우에는 상응하는 조표 차이만큼 보정되는 과정이 더 수행될 수 있다.Referring back to FIG. 5, the
이와 같이, 본 발명에 따른 연주 방법은 각 악기 또는 리듬에 상응하는 기본 소리값만이 존재할지라도 모든 음 높이 또는 모든 화음에 상응하는 음향을 출력할 수 있는 것이다. 또한, 음정보가 변환되어 출력되는 음색 역시 기본 소리 데이터에 상응하는 악기와 동일한 악기의 음색으로 출력된다.As such, the playing method according to the present invention is capable of outputting sounds corresponding to all pitches or all chords even though only basic sound values corresponding to the respective instruments or rhythms exist. In addition, the tone to which the sound information is converted and output is also output as the tone of the same instrument as the instrument corresponding to the basic sound data.
단계 525에서 이동통신 단말기(100)는 사용자에 의해 선택된 키 버튼에 상응하는 음높이의 음향을 출력하기 위해 임시 메모리(125)에 적재된 소리 데이터(또는 코드 정보)에서 음 정보(즉, 노트 정보)를 키 버튼에 상응하도록 갱신한다. 당해 노트 정보의 갱신 과정은 앞서 설명한 바와 같다.In
이어서, 이동통신 단말기(100)는 단계 525에서 갱신된 노트 정보에 상응하는 음향을 음향 출력부(135)를 통해 출력한다(단계 530). Subsequently, the
단계 535는 이동통신 단말기(100)는 사용자에 의해 연주 종료 명령이 입력되었는지를 판단한다. In
사용자에 의해 이동통신 단말기(100)에 연주 종료 명령이 입력되면, 이동통신 단말기는 연주 내용 저장 명령이 입력되었는지를 판단한다(단계 540).When a play end command is input to the
연주 내용 저장 명령이 입력되었다면, 이동통신 단말기(100)는 연주 내용을 저장부(115)에 저장하고, 연주 설정 관리부(120)에 연주 내용 관리를 위해 저장된 연주 내용 정보를 기록한다. 즉, 사용자가 숫자 악보 데이터를 이용하여 연주한 내용(즉, 연속된 음향)은 임시 저장 기능에 의해 임시 메모리(125) 또는 저장부(115)에 실시간으로 저장될 수 있고, 연주 내용 저장 명령이 입력되었을 때 임시로 저장된 연주 내용을 저장부(115)에 저장하게 된다. 여기서 연주 내용 정보는 이동통신 단말기(100)의 키 입력부(155)를 통해 사용자에 의해 입력되는 정보(예를 들어, 연주 곡명, 연주자 등)와 이동통신 단말기(100)에서 기록된 연주된 시간, 연주 파일명 등의 정보를 포함할 수 있다. 물론, 연주 파일명도 사용자에 의해 입력될 수 있다. If a performance content storage command is input, the
상술한 바와 같이, 본 발명에 따른 이동통신 단말기에서의 숫자 악보 데이터를 이용한 음악 연주 방법 및 시스템은 숫자 악보를 통해 사용자가 이동통신 단말 기를 이용하여 임의의 곡을 쉽게 연주할 수 있도록 하는 효과가 있다.As described above, the music playing method and system using the numerical score data in the mobile communication terminal according to the present invention has an effect of allowing the user to easily play any song using the mobile communication terminal through the numerical score. .
또한, 본 발명은 하나의 악보에 대하여 단음계 연주 및 화음 연주가 가능하여 복수의 사용자간에 협주를 가능하게 하는 효과가 있다.In addition, the present invention is capable of playing a single scale and a chord playing on one sheet music, thereby enabling cooperation between a plurality of users.
또한, 본 발명은 임의의 악기를 이용한 단음계 연주 또는 임의의 리듬(예를 들어, 폴카, 트로트, 왈츠 등)에 따른 화음 연주를 위하여 사용자 단말기로 기본 음계 또는 기본 화음에 상응하는 소리 데이터만을 전송함으로써 전송 시간의 최소화 및 통신망 이용료의 최소화가 가능한 효과가 있다.In addition, the present invention by transmitting only the sound data corresponding to the basic scale or the basic chord to the user terminal for playing the chord according to any rhythm (for example, polka, trot, waltz, etc.) using any musical instrument Minimization of transmission time and minimization of communication network fee are possible.
또한, 본 발명은 미디 데이터를 이용하여 악보를 자동 생성할 수 있어 악보 생성 과정의 편의성을 극대화하는 효과가 있다.In addition, the present invention can automatically generate the sheet music using the MIDI data has the effect of maximizing the convenience of the sheet music generation process.
상기에서는 본 발명의 바람직한 실시예를 참조하여 설명하였지만, 해당 기술 분야에서 통상의 지식을 가진 자라면 하기의 특허 청구의 범위에 기재된 본 발명의 사상 및 영역으로부터 벗어나지 않는 범위 내에서 본 발명을 다양하게 수정 및 변경시킬 수 있음을 이해할 수 있을 것이다.Although the above has been described with reference to a preferred embodiment of the present invention, those skilled in the art to which the present invention pertains without departing from the spirit and scope of the present invention as set forth in the claims below It will be appreciated that modifications and variations can be made.
Claims (15)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050025698A KR20060103788A (en) | 2005-03-28 | 2005-03-28 | Method and system for performing music using number musical note in mobile terminal |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020050025698A KR20060103788A (en) | 2005-03-28 | 2005-03-28 | Method and system for performing music using number musical note in mobile terminal |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20060103788A true KR20060103788A (en) | 2006-10-04 |
Family
ID=37623661
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020050025698A KR20060103788A (en) | 2005-03-28 | 2005-03-28 | Method and system for performing music using number musical note in mobile terminal |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20060103788A (en) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101041303B1 (en) * | 2009-03-24 | 2011-06-14 | 이찬우 | Transmission system for voice-parts music-file |
-
2005
- 2005-03-28 KR KR1020050025698A patent/KR20060103788A/en active IP Right Grant
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR101041303B1 (en) * | 2009-03-24 | 2011-06-14 | 이찬우 | Transmission system for voice-parts music-file |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6975995B2 (en) | Network based music playing/song accompanying service system and method | |
KR100658869B1 (en) | Music generating device and operating method thereof | |
JP4299472B2 (en) | Information transmission / reception system and apparatus, and storage medium | |
US6791021B2 (en) | Automatic chord progression correction apparatus and automatic composition apparatus | |
US20060230910A1 (en) | Music composing device | |
JP2001147688A (en) | Generation device and reproducing device for information with performance information added, and generation device for information with expression element of feature information added | |
JP2008506988A (en) | How to compose music with a handheld device | |
CN1750116A (en) | Automatic rendition style determining apparatus and method | |
JP3177374B2 (en) | Automatic accompaniment information generator | |
KR100457052B1 (en) | Song accompanying and music playing service system and method using wireless terminal | |
JP3922247B2 (en) | Performance control data generation apparatus and program | |
KR20060103788A (en) | Method and system for performing music using number musical note in mobile terminal | |
US5587547A (en) | Musical sound producing device with pitch change circuit for changing only pitch variable data of pitch variable/invariable data | |
JP5969421B2 (en) | Musical instrument sound output device and musical instrument sound output program | |
KR100731232B1 (en) | Musical data editing and reproduction apparatus, and portable information terminal therefor | |
JP6315677B2 (en) | Performance device and program | |
JP2844533B2 (en) | Music broadcasting system | |
JP3709798B2 (en) | Fortune-telling and composition system, fortune-telling and composition device, fortune-telling and composition method, and storage medium | |
JP5847048B2 (en) | Piano roll type score display apparatus, piano roll type score display program, and piano roll type score display method | |
JP6073618B2 (en) | Karaoke equipment | |
JP2003280645A (en) | Method for compressing music data | |
JP4211636B2 (en) | Performance control data generation apparatus, music material data distribution server, and program | |
JP3637196B2 (en) | Music player | |
JP2953318B2 (en) | Character display device | |
JP2004163511A (en) | Mobile terminal device |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
NORF | Unpaid initial registration fee |