KR100598209B1 - Midi 재생 장치 및 방법 - Google Patents

Midi 재생 장치 및 방법 Download PDF

Info

Publication number
KR100598209B1
KR100598209B1 KR1020040086063A KR20040086063A KR100598209B1 KR 100598209 B1 KR100598209 B1 KR 100598209B1 KR 1020040086063 A KR1020040086063 A KR 1020040086063A KR 20040086063 A KR20040086063 A KR 20040086063A KR 100598209 B1 KR100598209 B1 KR 100598209B1
Authority
KR
South Korea
Prior art keywords
sound source
sound
note
midi
information
Prior art date
Application number
KR1020040086063A
Other languages
English (en)
Other versions
KR20060036980A (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 KR1020040086063A priority Critical patent/KR100598209B1/ko
Priority to PCT/KR2005/003544 priority patent/WO2006046817A1/en
Priority to US11/259,601 priority patent/US20060086239A1/en
Publication of KR20060036980A publication Critical patent/KR20060036980A/ko
Application granted granted Critical
Publication of KR100598209B1 publication Critical patent/KR100598209B1/ko

Links

Images

Classifications

    • GPHYSICS
    • G11INFORMATION STORAGE
    • G11BINFORMATION STORAGE BASED ON RELATIVE MOVEMENT BETWEEN RECORD CARRIER AND TRANSDUCER
    • G11B20/00Signal processing not specific to the method of recording or reproducing; Circuits therefor
    • G11B20/10Digital recording or reproducing
    • 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/0033Recording/reproducing or transmission of music for electrophonic musical instruments
    • G10H1/0041Recording/reproducing or transmission of music for electrophonic musical instruments in coded form
    • G10H1/0058Transmission between separate instruments or between individual components of a musical system
    • G10H1/0066Transmission between separate instruments or between individual components of a musical system using a MIDI interface
    • 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
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/02Instruments in which the tones are synthesised from a data store, e.g. computer organs in which amplitudes at successive sample points of a tone waveform are stored in one or more memories
    • G10H7/04Instruments in which the tones are synthesised from a data store, e.g. computer organs in which amplitudes at successive sample points of a tone waveform are stored in one or more memories in which amplitudes are read at varying rates, e.g. according to pitch
    • 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
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/091Info, i.e. juxtaposition of unrelated auxiliary information or commercial messages with or between music files
    • 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
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/471General musical sound synthesis principles, i.e. sound category-independent synthesis methods
    • G10H2250/481Formant synthesis, i.e. simulating the human speech production mechanism by exciting formant resonators, e.g. mimicking vocal tract filtering as in LPC synthesis vocoders, wherein musical instruments may be used as excitation signal to the time-varying filter estimated from a singer's speech
    • G10H2250/501Formant frequency shifting, sliding formants
    • 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
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/541Details of musical waveform synthesis, i.e. audio waveshape processing from individual wavetable samples, independently of their origin or of the sound they represent
    • G10H2250/641Waveform sampler, i.e. music samplers; Sampled music loop processing, wherein a loop is a sample of a performance that has been edited to repeat seamlessly without clicks or artifacts

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • General Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

본 발명의 사상에 따른 MIDI 재생 장치는 MIDI 파일에서 다수의 노트들 및 노트 재생시간을 추출하기 위한 미디 파서, 상기 노트 재생 시간을 순차적으로 출력하는 MIDI 시퀀서, 음원 샘플들이 저장되어 있는 웨이브 테이블, 음원들의 반복 구간에 대한 시작점과 끝점의 크기 값의 차이 정보를 미리 저장하는 전처리부, 소리 재생시 상기 정보를 이용하여 음원들의 차이를 보상하는 주파수 변환부 및 상기 노트 재생 시간에 따라 상기 보상된 음원들을 출력하는 수단을 포함하는 점에 특징이 있다.
상기 본 발명을 이용하면 음원의 샘플링 레이트를 변환할 때 생기는 사전 차이 정보(Meta Data)를 주파수 변환부에서 이용하여 재생하므로 음원 반복 재생에 의한 잡음을 줄이고, 순간적인 주파수 떨림을 방지함으로써 근본적인 음질 향상에 크게 이바지 할 수 있다.
MIDI, 음원, 인벨롭

Description

MIDI 재생 장치 및 방법 {MIDI playback equipment and method}
도 1은 종래의 MIDI 재생 장치의 구성을 개략적으로 나타낸 도면.
도 2는 일반적인 MIDI 파일의 재생시 인벨롭을 나타낸 도면.
도 3은 본 발명의 바람직한 일 실시예에 따른 MIDI 재생 장치의 구성을 개략적으로 나타낸 도면.
<도면의 주요 부분에 대한 부호의 설명>
11,210:미디 파서 12,220:미디 시퀀서
13,230:주파수 변환부 14,240:웨이브 테이블
120:릴레이 부분 130:반복부분
160:시작점 170:끝점
250:전처리부 260:사전정보
본 발명은 MIDI 음악 재생에 있어서, MIDI를 구현하는 방식 중 웨이브 테이블 신세시스(Wave Table Synthesis) 방식에서 음원 샘플링 레이트 변환시 발생하는 음질 왜곡 현상을 보상하는 MIDI 재생 장치 및 방법에 관한 것이다.
MIDI는 음악 악기들의 디지탈적인 접속을 통해서 악기와 악기, 악기와 컴퓨터 등 디지탈적인 신호를 처리하는 음악 기구들의 입출력에 있어서 호환성을 제공하는 하드웨어와 자료구조에 관한 표준 사양이다. 다시 말하면 악기 사이의 연주정보를 전달하는 규격이며 전자 악기들에게 악보와 같은 역할을 한다.
이러한 MIDI 형식을 이용한 MIDI 음악 재생기는 디지탈 피아노, 전자 기타 등 전자 악기들뿐만 아니라 휴대폰 벨소리를 재생하는 데 이용되는 등 다양한 분야에 이용되고 있다.
MIDI 음악을 실제 완성된 소리로 만들기 위해서는 여러 가지 방식을 사용할 수 있는데, 대표적인 것으로 FM 신세시스(Frequency Modulation Synthesis) 방식과 웨이브 테이블 신세시스 방식이 있다.
FM 신세시스 방식은 기본적인 파형들을 합성하여 소리를 만들어 내는 방식으로서, 별도의 음원을 필요하지 않으므로 메모리의 사용량이 적은 장점이 있으나, 원음에 가까운 자연스러운 소리를 내지 못하는 단점이 있다.
웨이브 테이블 신세시스 방식은 각 악기별 및 악기내 노트에 따른 음원을 미리 메모리에 저장하고, 이 음원들을 합성하여 소리를 만들어 내는 방식이다. 음원으로 인해 메모리 사용량이 증가하는 단점이 있으나, 원음에 가까운 자연스러운 소리를 낼 수 있는 장점이 있다.
이러한 여러 방식들을 사용하여 소리를 합성할 때, 소리를 실시간으로 듣기 위해서는, MIDI 파일과 음원으로부터 합성하는 과정은 실시간으로 진행되어야 한다. 그러나 일반적으로 합성하는 과정은 상당량의 CPU 자원을 사용하므로, 고사양 의 데스크탑용 CPU를 사용하지 않고서는 충분한 음질을 만들어내기가 힘들다. 따라서 적은량의 CPU 자원을 사용하고도 사용자가 듣기에 충분한 음질을 만들어 내는 기술이 필요하다.
현재 휴대폰 벨소리 합성을 위해서 여러 개의 음원을 내장하고 있는 하나의 웨이브 테이블(Wave Table)을 이용하여 원하는 악기의 음을 합성한다. 따라서 모든 음들은 웨이브 테이블의 음원을 이용하여 생성하게 되는데, 상기 음원은 단일한 샘플링 레이트(SamplingRate)로 저장되어 있다. MIDI 벨소리 합성에 있어서 음원의 샘플링 레이트와 재생하고자 하는 샘플링 레이트가 동일할때에는 주파수 변환 과정 없이 소리의 재생이 가능하다.
그러나, 경우에 따라서 음원의 샘플링 레이트와 재생하고자 하는 출력음의 샘플링 레이트가 다른 경우가 존재하게 되는데, 이때에는 재생하고자 하는 모든 노트에 대해서 주파수 변환 과정을 거쳐야 한다. 즉 현재 음원의 샘플링 레이트를 재생하고자 하는 음의 출력 샘플링 레이트로 변환하는 과정이 필요하다. 이 때 CPU 계산량에 있어 많은 부하를 초래하게 된다.
한편, 웨이브 테이블의 음원은 어택(Attack) 부분과 반복(Loop) 부분으로 나뉜다. 저장된 음원의 길이를 초과하는 지속되는 음을 재생하기 위해서는 처음 어택 부분을 재생하고 그 이후에는 반복 부분의 끝점에서 반복 부부분의 시작점으로 돌아가면서 재생하게 된다. 이때 반복 부분의 끝점과 시작점이 다르게 되면 음질의 저하 및 잡음을 발생하게 된다.
따라서, 음원의 샘플링 레이트를 재생하고자 하는 음의 출력 샘플링 레이트 로 변환하는 과정에서 이러한 반복부분의 끝점과 시작점이 다르게 되는 현상으로 인한 음질 저하 및 잡음 현상이 발생하므로 이를 해결하기 위한 방법이 요망된다.
도 1은 종래의 MIDI 재생 장치의 구성을 개략적으로 나타낸 도면이다.
도 1에 나타낸 바와 같이, 종래의 MIDI 재생 장치는 MIDI 파일로부터 다수의 노트들 및 노트 재생 시간을 추출하는 MIDI 파서(11)와, 상기 추출된 노트 재생 시간을 순차적으로 출력하는 MIDI 시퀀서(12)와, 적어도 하나 이상의 음원 샘플이 등록되기 위한 웨이브 테이블(14)과, 상기 노트 재생 시간이 출력될 때마다 상기 등록된 적어도 하나 이상의 음원 샘플들을 이용하여 각 노트들에 상응하는 음원샘플들로 주파수 변환하여 출력하는 주파수 변환부(13)로 구성된다.
여기서, 상기 MIDI 파일은 미리 소정의 음악에 대한 정보들이 저장 매체 등에 기록되어 있는 것으로서, 이러한 MIDI 파일에는 다수의 노트들과 노트 재생 시간이 포함될 수 있다. 노트란 음을 나타내는 정보로서, 예를 들어 도, 레, 미 등과 같은 음계 정보를 나타낸다. 이러한 노트는 실제적인 음이 아니므로, 실제의 음원들로 재생되어야 한다.
또한, 노트 재생 시간은 상기 MIDI 파일에 포함된 다수의 노트들 각각의 재생 시간을 의미하는 것으로서, 동일한 음의 길이 정보이다. 예를 들어, "레"라는 노트의 재생 시간은 1/8초라면, "레"라는 노트에 해당하는 음원이 재생시 1/8초 동안 지속되게 된다.
하지만, 이와 같이 각 노트에 대한 노트 재생시간이 입력될 때마다 반복적으로 상술한 바와 같은 주파수 변환을 수행하게 되는 경우, 상당한 연산량이 요구되 게 되어 해당 CPU에 과중한 부하가 걸릴 위험이 있다. 더군다나, 해당 MIDI 파일은 실시간으로 재생되어 출력되어야 하는데, 앞서 설명한바와 같이 각 노트에 대해 주파수 변환을 하게 됨으로써, 실시간으로 음악이 재생될 수 없게 될 수도 있다. 또한 MIDI 파일의 반복 재생시 반복 부분의 시작점과 끝점의 주파수가 다를 경우 음질의 저하 현상이 발생할 수 있는 문제점이 있다.
본 발명은 MIDI 파일을 소리로 합성하는 과정에서 반복 부분의 끝점과 시작점이 상이하여 발생하는 음질 저하 및 잡음의 발생을 억제하고 이로써 음질 왜곡 현상을 보상하는 MIDI 재생 장치 및 방법을 제안하는 것을 목적으로 한다.
상기의 목적을 달성하기 위한 본 발명의 사상에 따른 MIDI 재생 장치는 MIDI 파일에서 다수의 노트들 및 노트 재생시간을 추출하기 위한 미디 파서, 상기 노트 재생 시간을 순차적으로 출력하는 MIDI 시퀀서, 음원 샘플들이 저장되어 있는 웨이브 테이블, 음원들의 반복 구간에 대한 시작점과 끝점의 크기 값의 차이 정보를 미리 저장하는 전처리부, 소리 재생시 상기 정보를 이용하여 음원들의 차이를 보상하는 주파수 변환부 및 상기 노트 재생 시간에 따라 상기 보상된 음원들을 출력하는 수단을 포함하는 점에 특징이 있다.
또한 상기의 목적을 달성하기 위한 본 발명의 사상에 따른 MIDI 재생 방법은 MIDI 파일에서 다수의 노트들 및 노트 재생 시간을 추출하는 단계, 음원들의 반복 구간에 대한 시작점과 끝점의 크기 값의 차이 정보를 미리 저장하는 단계, 소리 재 생시 상기 정보를 이용하여 음원들의 차이를 보상하는 단계 및 상기 노트 재생 시간에 따라 상기 보상된 음원들을 출력하는 단계를 포함하는 점에 특징이 있다.
본 발명을 이용하면 음원의 샘플링 레이트를 변환할 때 생기는 사전 차이 정보(Meta Data)를 주파수 변환부에서 이용하여 재생하므로 음원 반복 재생에 의한 잡음을 줄이고, 순간적인 주파수 떨림을 방지함으로써 근본적인 음질 향상에 크게 이바지 할 수 있다.
이하, 첨부된 도면을 참조하여 본 발명에 따른 실시 예를 상세히 설명한다. 본 발명은 이하 제시되는 실시예에 한정되지 않으며 본 발명이 속하는 기술분야에서 통상의 지식을 가진자에게 자명한 범위 내에서 구성요소의 부가, 한정, 삭제, 추가 등에 의하여 새로운 발명이 제시 될 수 있을 것이다.
도 2는 일반적인 MIDI 파일의 재생시 인벨롭을 나타낸 도면이다.
도 2를 참조하면, 노트 온(140) 후 소정의 릴레이 부분(110)이 지속되고 이후 인벨롭은 어택 부분(120)과, 반복 부분(130)으로 구성됨을 알 수 있다. 상기 도 2에서는 인벨롭이 선형으로 나와 있으나, 인벨롭의 종류와 각 단계의 특성에 따라 선형이거나 곡선(Concave)일 수 있다.
또한 음원의 고유한 특성을 나타내는 정보인 알티큘레이션 데이터(Articulation data)에는 어택 부분(120)과, 반복 부분(130)에 대한 시간 정보가 포함되어 있어서 소리를 합성하는데 이용하게 된다.
이러한 인벨롭을 적용하여 하나의 노트를 재생하며, 여러 개의 노트가 모여 하나의 곡을 완성하게 된다.
상기 도 2의 인벨롭을 예로 들어 하나의 노트를 반복적으로 재생할 때, 가장 이상적으로 음을 재생하고자 하면 노트 오프(Note Off)(150) 이후에 인벨롭이 감소하면서 인벨롭 값이 끝점(170)에 도달하고 상기 끝점(170)에서 인벨롭의 시작점(160)이 부드럽게 이어져야 한다. 하지만 끝점(170)과 시작점(160)의 샘플링 레이트가 달라지는 경우 순간적으로 주파수가 달라져서 음질이 저하되고 잡음이 발생된다. 상기 음질 저하 및 잡음의 발생은 시작점(160)과 끝점(170)의 주파수 차이(180)가 클수록 증가하게 된다.
이러한 현상을 방지하기 위하여 일반적으로 음원의 시작점(160)과 끝점(170)의 주파수가 동일하도록 샘플링 레이트를 조절한다.
하지만 상기 웨이브 테이블(240)의 메모리 부족으로 인하여 하나의 주파수를 가진음을 저장하며, 재생시에는 상기 음을 주파수 변환하여 원하는 음으로 출력하게 된다. 음원을 원하는 샘플링 레이트로 변환하게 되면 그 과정에서 위에서 언급한 시작점(160)과 끝점(170)의 값이 달라지는 현상이 발생한다.
따라서 사전에 이 과정에서 발생한 시작점(160)의 값과 끝점(170)의 값의 차이 정보를 전처리기에서 미리 저장해 둔 후, 주파수 변환부에서 실시간으로 주파수 변환하여 음을 재생할 때 이 사전정보를 이용하여 충분히 보상한다. 이에 대하여는 후술한다.
도 3은 본 발명의 바람직한 일 실시예에 따른 MIDI 재생 장치의 구성을 개략적으로 나타낸 도면이다.
도 3을 참조하면, 본 발명의 MIDI 재생 장치는 MIDI 파일에서 다수의 노트들 및 노트 재생시간을 추출하는 MIDI 파서(121)와, 상기 MIDI 파서 추출한 다수 노트의 재생시간에 따라 음원 샘플들을 출력하는 MIDI 시퀀서(122)와, 상기 음원 샘플들을 등록하기 위한 웨이브 테이블(240)과 상기 웨이브 테이블(240)에 저장되어 있는 음원의 반복부분에 대한 시작점(160)과 끝점(170)의 주파수 차이를 저장하고 있는 전 처리부(250)와 상기 전 처리부(250)에 저장되어 있는 시작점(160)과 끝점(170)의 주파수 정보인 사전 정보(260)를 음원의 출력 전에 음악 파일의 주파수를 변환하여 음질 저하를 방지하는 주파수 변환부(230)로 구성된다.
여기서, 상기 MIDI 파일은 미리 소정의 음악에 대한 정보들이 저장 매체 등에 기록되어 있는 것으로서, 이러한 MIDI 파일에는 다수의 노트들과 노트 재생시간이 포함될 수 있다. 노트란 음을 나타내는 정보로서, 예를 들어 도, 레, 미 등과 같은 음계 정보를 나타낸다. 이러한 노트는 실제적인 음이 아니므로, 실제의 음원들로 재생되어야 한다. 통상적으로 음계는 1부터 128 범위로 이루어질 수 있다.
본 발명에서 상기 MIDI 파일은 하나의 노래의 시작과 끝으로 이루어진 하나의 악곡일 수 있다. 이러한 악곡은 수많은 음계와 각 음계의 시간 길이에 의해 구성될 수 있다. 따라서, 상기 MIDI 파일은 각 음계에 대응되는 노트들과 각 노트의 재생시간에 대한 정보들이 포함될 수 있다.
또한, 노트 재생시간은 상기 MIDI 파일에 포함된 다수의 노트들 각각의 재생시간을 의미하는 것으로서, 동일한 음의 길이 정보이다. 예를 들어, "레"라는 노트의 재생시간은 1/8초라면, "레"라는 노트에 해당하는 음원이 재생시 1/8초 동안 지속되게 된다.
상기 MIDI 파서(121)는 MIDI 파일이 입력되면, 상기 MIDI 파일을 파싱(parsing)하여 그 안에 포함되는 다수의 노트들과 노트 재생시간을 추출한다. 여기서, 상기 노트 재생시간은 상기 다수의 노트들 각각의 재생시간을 의미한다.
이때, 상기 다수의 노트들은 MIDI 시퀀서(122)로 입력된다.
상기 MIDI 파서(121)로 입력되는 MIDI 파일에는 적게는 수십 개에서 많게는 128계의 음계에 대한 노트들이 포함될 수 있다.
상기 웨이브 테이블(240)에는 악기별 및 악기의 각 노트에 따른 음원들이 등록되어 있다. 이때, 통상 음계의 단계는 1부터 128까지로 이루어지는 되는데, 이러한 음계(즉, 노트)에 대한 음원들을 모두 상기 웨이브 테이블(240)에 등록시키는 데에는 한계가 있다. 이에 따라, 통상적으로는 대표적인 몇 개의 음계들에 대한 음원 샘플들만이 등록되어 있다.
따라서, 상기 MIDI 파일에 포함된 노트들을 상기 웨이브 테이블(240)에 등록된 음원 샘플들을 이용하여 재생할 수는 없다.
그렇기 때문에, 앞서 설명한 바와 같이, 상기 웨이브 테이블(240)에 등록된 소정의 음원 샘플들을 이용하여 상기 MIDI 파일에 포함된 노트들에 상응하는 음원 샘플들로 주파수 변환하여 재생하여 주고 있다.
이때, 종래에는 각 노트마다 그에 상응하는 음원 샘플들을 실시간으로 만들어주게 됨에 따라 연산량이 폭주하여 CPU에 과부하가 걸려 실질적인 실시간 재생이 이루어지기 힘들었다.
또한 휴대폰 벨소리와 같이 일정한 음원이 반복하여 재생되는 경우 상기 반 복 부분(130)의 시작점(160)과 끝점(170)의 다르게 되어 음질이 왜곡되는 현상이 발생하게 된다.
상기의 문제점을 해결하기 위하여 본 발명은 음원의 반복구간에서 시작점(160)과 끝점(170)의 주파수 차이 정보를 음원의 재생 전 미리 저장하고 상기 데이터를 소리를 합성하는 과정에 반영함으로써 음질 저하 및 잡음을 제거한다.
본 발명의 사상에 따른 주파수 변환기는,음원의 반복구간에 대한 시작점(160)과 끝점(170)의 차이 정보를 미리 저장하는 전처리부(250)와, 이를 소리를 재생할 때 이용하는 주파수 변환부(230)를 포함한다.
보다 상세히, 상기 전처리부(250)에서, 음원의 샘플링 레이트(Sampling Rate)를 재생하고자 하는 샘플링 레이트에 맞추어 변환 했을 때 생기는 음원의 반복 구간에 대한 시작점(160)과 끝점(170)의 차이정보를 저장하고, 주파수 변환부(230)에서, 전처리부(250)에서 지속되는 노트(Note)를 재생할 때 음원의 끝점(170)에서 다시 시작점(160)으로 넘어갈 때 미리 저장한 정보를 이용하여 음질 저하를 방지한다.
상기 주파수 변환부(230)는 소정 노트에 대한 재생시간이 입력되면, 해당 노트에 대한 음원이 상기 웨이브 테이블(240)에 존재하는지를 파악하여 그 파악 여부에 따라 해당 노트에 대한 음원으로 주파수 변환하여 출력한다. 여기서, 상기 주파수 변환부(230)로는 오실레이터(oscillator) 등이 사용될 수 있다.
이때, 상기 해당 노트에 대한 음원이 상기 웨이브 테이블(240)에 존재하지 않는 경우, 상기 웨이브 테이블(240)에서 소정의 음원 샘플을 독출한 다음, 독출된 음원 샘플을 상기 해당 노트에 상응하는 음원 샘플로 주파수 변환하여 준다.
만일 상기 해당 노트에 대한 음원이 상기 웨이브 테이블(240)에 존재하는 경우에는 별도의 주파수 변환 없이 해당 음원 샘플을 상기 웨이브 테이블(240)에서 독출되어 출력될 수 있다.
예를 들어, 웨이브 테이블(240)에 등록된 음원 샘플이 20Khz로 샘플링 되어 있는데 반해, 원하는 음악의 노트는 40Khz로 샘플 되어 결국 40Khz로 주파수 변환되어 재생된다고 하면, 상기 주파수 변환부(230)에 의해 20Khz의 음원 샘플이 40Khz의 음원 샘플로 주파수 변환되어 출력될 수 있다.
이와 같은 과정은 각 노트에 대한 노트 재생시간이 입력될 때마다 반복적으로 진행되게 된다.
한편, 상기 MIDI 파서(121)로부터 각 노트에 대한 재생시간을 입력받은 상기 MIDI 시퀀서(122)는 각 노트 재생시간에 따라 각 노트에 상응하는 음원 샘플들을 순차적으로 각 노트의 재생 시간만큼씩 상기 웨이브 테이블(240)로부터 독출하여 출력하고, 이에 따라 상기 MIDI 파일에 대한 재생이 수행될 수 있다.
그러나 휴대폰에서와 같이 상기 MIDI 파일의 노트를 반복 재생할 경우 상기 반복 부분(130)의 시작점(160)과 끝점(170)의 주파수 차이로 인하여 음질 저하 및 잡음이 발생될 수 있다. 따라서 상기 시작점(160)과 끝점(170)의 주파수 차이(180)를 감지하여 저장하는 전 처리부(250)와 상기 저장된 사전 정보(260)를 이용하여 주파수 차이를 보완하여 주는 주파수 변환부(230)를 통하여 상기 문제점을 해결할 수 있다.
상기 본 발명의 사상에 따른 MIDI 재생 장치 및 방법을 이용하면, 음원의 샘플링 레이트를 변환할 때 생기는 사전 차이 정보(Meta Data)를 주파수 변환부에서 이용하여 재생하므로 음원 반복 재생에 의한 잡음을 줄이고, 순간적인 주파수 떨림을 방지함으로써 근본적인 음질 향상에 크게 이바지 할 수 있다.

Claims (5)

  1. MIDI 파일에서 다수의 노트들 및 노트 재생시간을 추출하기 위한 미디 파서;
    상기 노트 재생 시간을 순차적으로 출력하는 MIDI 시퀀서;
    음원 샘플들이 저장되어 있는 웨이브 테이블;
    상기 음원 샘플의 반복 구간에서 시작점과 끝점의 차이 정보를, 소리를 합성하는 과정에 반영함으로써 음질 저하및 잡음을 제거하는 주파수 변환기; 및
    상기 노트 재생 시간에 따라 상기 보상된 음원 샘플들을 출력하는 수단;을 포함하는 것을 특징으로 하는 MIDI 재생 장치.
  2. 제 1항에 있어서,
    상기 주파수 변환기는 음원 샘플들의 반복 구간에 대한 시작점과 끝점의 크기 값의 차이 정보를 미리 저장하는 전처리부와,
    소리 재생시 상기 차이 정보를 이용하여 음원 샘플들의 차이를 보상하는 주파수 변환부를 포함하는 것을 특징으로 하는 MIDI 재생 장치.
  3. 제 2항에 있어서,
    상기 전처리부는 음원 샘플의 샘플링 레이트를 재생하고자 하는 샘플링레이트에 맞추어 변환 했을 때 발생하는 음원의 반복 구간에 대한 시작점과 끝점의 차이 정보를 저장하는 것을 특징으로 하는 MIDI 재생 장치.
  4. 제 2항에 있어서,
    상기 주파수 변환부는 전처리부에서 지속되는 노트를 재생할 때,
    상기 음원 샘플의 끝점과 시작점의 연결부에 미리 저장된 정보를 이용하여 음질의 저하를 방지하는 것을 특징으로 하는 MIDI 재생 장치.
  5. MIDI 파일에서 다수의 노트들 및 노트 재생 시간을 추출하는 단계;
    음원들의 반복 구간에 대한 시작점과 끝점의 크기 값의 차이 정보를 미리 저장하는 단계;
    소리 재생시 상기 정보를 이용하여 음원들의 차이를 보상하는 단계; 및
    상기 노트 재생 시간에 따라 상기 보상된 음원들을 출력하는 단계;를 포함하는 것을 특징으로 하는 MIDI 재생 방법.
KR1020040086063A 2004-10-27 2004-10-27 Midi 재생 장치 및 방법 KR100598209B1 (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020040086063A KR100598209B1 (ko) 2004-10-27 2004-10-27 Midi 재생 장치 및 방법
PCT/KR2005/003544 WO2006046817A1 (en) 2004-10-27 2005-10-24 Apparatus and method for reproducing midi file
US11/259,601 US20060086239A1 (en) 2004-10-27 2005-10-25 Apparatus and method for reproducing MIDI file

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020040086063A KR100598209B1 (ko) 2004-10-27 2004-10-27 Midi 재생 장치 및 방법

Publications (2)

Publication Number Publication Date
KR20060036980A KR20060036980A (ko) 2006-05-03
KR100598209B1 true KR100598209B1 (ko) 2006-07-07

Family

ID=36204994

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020040086063A KR100598209B1 (ko) 2004-10-27 2004-10-27 Midi 재생 장치 및 방법

Country Status (3)

Country Link
US (1) US20060086239A1 (ko)
KR (1) KR100598209B1 (ko)
WO (1) WO2006046817A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100655548B1 (ko) * 2004-12-15 2006-12-08 엘지전자 주식회사 미디 합성 방법
US7663046B2 (en) * 2007-03-22 2010-02-16 Qualcomm Incorporated Pipeline techniques for processing musical instrument digital interface (MIDI) files
KR101365592B1 (ko) * 2013-03-26 2014-02-21 (주)테일러테크놀로지 Mgi음악 파일 생성 시스템 및 방법
CN105023594B (zh) * 2015-08-04 2018-05-15 珠海市杰理科技股份有限公司 Midi文件解码方法和系统
JP7047833B2 (ja) * 2017-03-13 2022-04-05 ソニーグループ株式会社 端末装置、制御方法及びオーディオデータ再生システム

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2000194375A (ja) 1998-12-25 2000-07-14 Roland Corp 波形再生装置
JP2000276145A (ja) 1999-03-23 2000-10-06 Yamaha Corp 音源装置および、該音源装置を備えたカラオケ装置
KR20010039504A (ko) * 1996-09-13 2001-05-15 사이러스 로직, 인크. 웨이브테이블 합성기내에 이용되는 음 샘플 사전 처리용 주기 촉성 필터
KR20030068472A (ko) * 2002-02-13 2003-08-21 야마하 가부시키가이샤 악음 생성 장치, 악음 생성 방법, 및 이 방법을 실현하는프로그램
KR20040070049A (ko) * 2003-01-30 2004-08-06 야마하 가부시키가이샤 음원 장치 및 음성 합성 장치

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5319151A (en) * 1988-12-29 1994-06-07 Casio Computer Co., Ltd. Data processing apparatus outputting waveform data in a certain interval
JP2722907B2 (ja) * 1991-12-13 1998-03-09 ヤマハ株式会社 波形発生装置
DE69619587T2 (de) * 1995-05-19 2002-10-31 Yamaha Corp., Hamamatsu Verfahren und Vorrichtung zur Tonerzeugung
JPH1031486A (ja) * 1996-07-15 1998-02-03 Casio Comput Co Ltd 演奏データ記憶再生方法および装置
US5998725A (en) * 1996-07-23 1999-12-07 Yamaha Corporation Musical sound synthesizer and storage medium therefor
US5895449A (en) * 1996-07-24 1999-04-20 Yamaha Corporation Singing sound-synthesizing apparatus and method
US6121532A (en) * 1998-01-28 2000-09-19 Kay; Stephen R. Method and apparatus for creating a melodic repeated effect
JP4240575B2 (ja) * 1998-05-15 2009-03-18 ヤマハ株式会社 楽音合成方法、記録媒体および楽音合成装置
JP3644263B2 (ja) * 1998-07-31 2005-04-27 ヤマハ株式会社 波形形成装置及び方法
EP1168296B1 (en) * 2000-05-30 2004-10-27 Yamaha Corporation Waveform signal generation method with pseudo low tone synthesis
JP2002132257A (ja) * 2000-10-26 2002-05-09 Victor Co Of Japan Ltd Midi楽曲データ再生方法
US7378586B2 (en) * 2002-10-01 2008-05-27 Yamaha Corporation Compressed data structure and apparatus and method related thereto
JP2004157295A (ja) * 2002-11-06 2004-06-03 Oki Electric Ind Co Ltd 音響再生装置および演奏データの補正方法
JP2005156982A (ja) * 2003-11-26 2005-06-16 Yamaha Corp 電子音楽装置及びプログラム
JP4198046B2 (ja) * 2003-12-26 2008-12-17 ローランド株式会社 電子弦楽器
TWI252468B (en) * 2004-02-13 2006-04-01 Mediatek Inc Wavetable synthesis system with memory management according to data importance and method of the same

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20010039504A (ko) * 1996-09-13 2001-05-15 사이러스 로직, 인크. 웨이브테이블 합성기내에 이용되는 음 샘플 사전 처리용 주기 촉성 필터
JP2000194375A (ja) 1998-12-25 2000-07-14 Roland Corp 波形再生装置
JP2000276145A (ja) 1999-03-23 2000-10-06 Yamaha Corp 音源装置および、該音源装置を備えたカラオケ装置
KR20030068472A (ko) * 2002-02-13 2003-08-21 야마하 가부시키가이샤 악음 생성 장치, 악음 생성 방법, 및 이 방법을 실현하는프로그램
KR20040070049A (ko) * 2003-01-30 2004-08-06 야마하 가부시키가이샤 음원 장치 및 음성 합성 장치

Also Published As

Publication number Publication date
KR20060036980A (ko) 2006-05-03
US20060086239A1 (en) 2006-04-27
WO2006046817A1 (en) 2006-05-04

Similar Documents

Publication Publication Date Title
US7276655B2 (en) Music synthesis system
US7427709B2 (en) Apparatus and method for processing MIDI
KR100598209B1 (ko) Midi 재생 장치 및 방법
KR100619826B1 (ko) 이동 통신 단말기의 음악 및 음성 합성 장치와 방법
US20050188820A1 (en) Apparatus and method for processing bell sound
US7442868B2 (en) Apparatus and method for processing ringtone
KR20100024727A (ko) 휴대 단말기의 음원 재생 장치 및 음원 재생 방법
RU2314502C2 (ru) Устройство и способ для обработки звука звонка
US20060086238A1 (en) Apparatus and method for reproducing MIDI file
KR100655548B1 (ko) 미디 합성 방법
JP2004157295A (ja) 音響再生装置および演奏データの補正方法
KR100598207B1 (ko) Midi 재생 장치 및 방법
KR100689495B1 (ko) Midi 재생 장치 및 방법
KR100598208B1 (ko) Midi 재생 장치 및 방법
US7151215B2 (en) Waveform adjusting system for music file
KR100636905B1 (ko) 미디 재생 장치 그 방법
KR100547340B1 (ko) 미디 재생 장치 그 방법
KR20210050647A (ko) 악기 디지털 인터페이스 재생 장치 및 방법
KR20010095241A (ko) 개선된 울림 디바이스를 갖는 휴대용 무선 전화
JP3744247B2 (ja) 波形圧縮方法及び波形生成方法
JP3788096B2 (ja) 波形圧縮方法及び波形生成方法
JPH10307581A (ja) 波形データ圧縮装置および方法
JP2008304670A (ja) 電子音源装置
KR20060106048A (ko) 웨이브테이블 방식의 이동통신단말기 벨소리 재생장치 및웨이브테이블의 음원 크기를 줄이는 방법
JPH11175071A (ja) 楽音波形データ作成装置、楽音波形データ作成方法及び記録媒体並びに楽音信号生成装置

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
LAPS Lapse due to unpaid annual fee