KR20010029507A - 웨이브테이블 신디사이저와 다양한 샘플링 구간 근사치를 사용하는 방법 - Google Patents

웨이브테이블 신디사이저와 다양한 샘플링 구간 근사치를 사용하는 방법 Download PDF

Info

Publication number
KR20010029507A
KR20010029507A KR1019997002123A KR19997002123A KR20010029507A KR 20010029507 A KR20010029507 A KR 20010029507A KR 1019997002123 A KR1019997002123 A KR 1019997002123A KR 19997002123 A KR19997002123 A KR 19997002123A KR 20010029507 A KR20010029507 A KR 20010029507A
Authority
KR
South Korea
Prior art keywords
wavetable
frequency band
sample
music signal
processors
Prior art date
Application number
KR1019997002123A
Other languages
English (en)
Inventor
젠킨스마이클
Original Assignee
사이러스 로직, 인크.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 사이러스 로직, 인크. filed Critical 사이러스 로직, 인크.
Publication of KR20010029507A publication Critical patent/KR20010029507A/ko

Links

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/02Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
    • G10H1/06Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour
    • G10H1/12Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour by filtering complex waveforms
    • G10H1/125Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour by filtering complex waveforms using a digital filter
    • 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
    • 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/155Musical effects
    • G10H2210/195Modulation effects, i.e. smooth non-discontinuous variations over a time interval, e.g. within a note, melody or musical transition, of any sound parameter, e.g. amplitude, pitch, spectral response, playback speed
    • G10H2210/201Vibrato, i.e. rapid, repetitive and smooth variation of amplitude, pitch or timbre within a note or chord
    • G10H2210/205Amplitude vibrato, i.e. repetitive smooth loudness variation without pitch change or rapid repetition of the same note, bisbigliando, amplitude tremolo, tremulants
    • 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/155Musical effects
    • G10H2210/265Acoustic effect simulation, i.e. volume, spatial, resonance or reverberation effects added to a musical sound, usually by appropriate filtering or delays
    • G10H2210/281Reverberation or echo
    • 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/155Musical effects
    • G10H2210/265Acoustic effect simulation, i.e. volume, spatial, resonance or reverberation effects added to a musical sound, usually by appropriate filtering or delays
    • G10H2210/295Spatial effects, musical uses of multiple audio channels, e.g. stereo
    • G10H2210/305Source positioning in a soundscape, e.g. instrument positioning on a virtual soundstage, stereo panning or related delay or reverberation changes; Changing the stereo width of a musical source
    • 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/011Files or data streams containing coded musical information, e.g. for transmission
    • G10H2240/046File format, i.e. specific or non-standard musical file format used in or adapted for electrophonic musical instruments, e.g. in wavetables
    • G10H2240/056MIDI or other note-oriented file format
    • 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/121Musical libraries, i.e. musical databases indexed by musical parameters, wavetables, indexing schemes using musical parameters, musical rule bases or knowledge bases, e.g. for automatic composing methods
    • G10H2240/145Sound library, i.e. involving the specific use of a musical database as a sound bank or wavetable; indexing, interfacing, protocols or processing therefor
    • 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/055Filters for musical processing or musical effects; Filter responses, filter architecture, filter coefficients or control parameters therefor
    • G10H2250/061Allpass filters
    • 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/055Filters for musical processing or musical effects; Filter responses, filter architecture, filter coefficients or control parameters therefor
    • G10H2250/105Comb filters
    • 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/055Filters for musical processing or musical effects; Filter responses, filter architecture, filter coefficients or control parameters therefor
    • G10H2250/111Impulse response, i.e. filters defined or specifed by their temporal impulse response features, e.g. for echo or reverberation applications
    • G10H2250/121IIR impulse

Landscapes

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

Abstract

다양한 샘플 비율 근사치 기술은 웨이브테이블 신디사이저에서 음악신호를 코딩하고 재생하기 위해 사용된다. 많은 사운드가 음악 사운드의 대역폭 요구량이 경과하는 시간에 따라 감소하기 때문에 초과 시간을 무디게 하는 진동에 의해 따라오는 에너지의 하나의 큰 빠른 전송을 원래부터 포함한다. 가변 샘플 비율 근사치 기술의 사용에서, 음악 사운드는 두 개의 범주, 지구적인 사운드와 타진하는 사운드에서 분류된다. 지속적인 악기는 시끄러운 자극을 생성하고, 시끄러운 자극에 의해 생성된 사운드를 유지한다. 타진하는 악기는 또한 자극 원천이며, 지속적인 악기가 모든 주파수가 거의 균일할 때 유지하는 동안 빠르게 감소하는 고주파수를 가지는 사운드 신호를 생성한다. 지속적인 악기와 타진하는 악기는 실질적으로 다른 파형 특성을 가지지만, 메모리 감소에 관해서는 현재 비슷한 조건을 갖는다. 지속적인 사운드와 타진하는 사운드의 음향 특성 사이의 유사점은 웨이브테이블 신디사이저의 메모리 예산을 동시에 감소시키기 위해 가변 샘플링 비율 기술을 사용하여 설명된다.

Description

웨이브테이블 신디사이저와 다양한 샘플링 구간 근사치를 사용하는 방법{WAVETABLE SYNTHESIZER AND OPERATING METHOD USING A VARIABLE SAMPLING RATE APPROXIMATION}
신디사이저는 전자 음파를 생성하고, 주파수, 음색, 진폭과 기간(duration)을 포함하는 소리의 다양한 파라미터를 실시간으로 제어함에 의해 소리를 생산하는 전자 음향 기기이다. 소리는 하나 또는 그 이상의 원하는 모양의 파형을 생산하는 발진기에 의해 생성된다.
많은 종류의 신디사이저가 개발되어 왔다. 신디사이저의 하나의 종류는 웨이브테이블 신디사이저인데, 이 웨이브테이블 신디사이저는 펄스 코드 변조(PCM) 형식의 소리 파형을 메모리에 저장하고, 메모리로부터 저장된 소리 파형을 읽고 정의된 소리의 연주를 위한 파형을 진행하여 소리를 재생산한다. 소리 파형은 전형적으로 크고, 웨이브테이블 신디사이저는 일반적으로 다수의 음향기기에 대한 음악적 기재를 포함하는 많은 소리의 연주를 반주한다. 따라서, 웨이브테이블 신디사이저의 하나의 문제점은 메모리의 많은 부분이 소리의 원하는 라이브러리(library)를 저장하고 생산하기 위해 요구되어진다는 것이다. 이러한 문제점은 진전되는 향상과 연주의 개선을 반주하는 동안 더 작은 크기를 지시하는 전자 장치의 계속되는 소형화에 의해 보안될 것이다.
다행히, 소리 파형의 자연성은 소리 파형의 높은 반복성에 의해 메모리 크기의 감소를 돕고 있다. 다양한 방법들이 기록된 샘플로부터 정확하게 소리를 재현하는 동안 메모리를 절약하기 위해 이러한 반복성을 개발하는 것이 개선되었다. 이러한 방법들은 일반적으로 파형의 반복성 구조를 확인, 확인된 구조를 특징짓고, 저장된 파형으로부터 특징지어진 구조를 삭제하는 과정을 포함한다. 소리의 재생에 있어서, 특징지어진 구조는 소리신호에 통합시킨다. 메모리는 또한 적당한 악기의 샘플링 비율의 감소에 의해 절약된다. 어떤 악기는 메모리가 낮은 구간에서 낮은 주파수의 악기에 대한 파형을 선택적으로 재샘플링하는 것에 의해 유지되기 때문에 높은 샘플링 비율을 요구하지 않는다.
웨이브테이블 오디오 신디사이즈를 사용하는 높은 질의 오디오 재생은 단지 메모리의 많은 부분, 전형적으로 1 메가바이트(megabyte) 이상을 포함하고, 일반적으로 하나의 집적회로 칩(integrated circuit chip) 이상을 포함하는 시스템에 적용된다. 이러한 높은 질의 웨이브테이블 신디사이즈 시스템은 전자 소비자, 멀티미디어 컴퓨터 시스템 소비자, 게임 박스, 값이 싼 음향기기와 미디사운드 모듈(MIDI sound module)의 분야에서 값이 비싸다.
따라서, 요구되어지는 것은 우수한 오디오 재생성을 달성하면서 충분하게 감소된 메모리 크기와 감소된 비용을 가지는 웨이브 테이블 신디사이저를 제공하는 것이다.
본 발명에 따라서, 다양한 샘플 비율 근사치 기술은 웨이브테이블 신디사이터에서 음악 신호를 코딩하고 재생하는데 사용된다. 많은 소리가 음악 소리의 대역폭 요구량이 경과 시간에 의해 줄어들기 때문에 완충시간의 다양성에 의해 따라오는 에너지의 하나의 매우 빠른 대체를 본래부터 포함하고 있다.
발명에 따라서, 음악 소리는 두 개의 범주, 즉 지구적인 소리(sustaining sound)와 타진 소리(percussive sound)로 구분된다. 지구적인 소리는 "활을 켜거나(bowed) 또는 숨을 불어넣는(blowed)" 소리를 포함하고, 현악기, 금관악기와 목관악기를 포함하는 지속적인 악기에 의해 생성된다. 지구적인 소리는 진동하는 리드(vibrating reed), 진동하는 입술 또는 활을 가로질러 미끄러지는 현과 같은 요란한 에너지 근원으로부터 생성된다. 지구적인 악기는 요란한 자극을 사용하고, 그 다음에 요란한 자극에 의해 생성된 지구적인 소리를 사용한다. 현은 활을 켤때는 지구적이고, 잡아 뜯을 때는 타진(percussive)하게 될 수도 있다. 지구적인 악기와 타진하는 악기는 실질상으로 다른 파형 특성을 갖지만, 메모리 감소에 관하여서 본문에서는 비슷한 조건을 갖는다. 타악기는 또한 요란한 근원이고, 지구적인 악기가 매우 똑같은 모든 주파수에서 지속하는 동안 빠르게 감소하는 높은 주파수를 갖는 소리 신호를 발생한다. 타진하는 소리의 높은 주파수 목록은 지구적인 소리의 높은 주파수 목록보다 노이즈가 훨씬 적다. 타진하는 소리의 스펙트럼 요소는 종종 조화롭게 연관되지 않고, 경과 시간의 주파수와 진폭에서 통상적으로 떨어진다.
지구적인 소리의 코딩은 전통적으로 소리의 고유의 자연성에 기인하여 메모리의 큰 부분을 사용한다. 지구적인 소리는 샘플이 긴 시간 구간을 획득하기 위해서 매우 천천히 안정화된다. 더욱이, 모든 지구적인 소리는 신호가 자주 샘플링되기 위해서 매우 높은 주파수 목록을 가진다. 덧붙여서, 지구적인 소리 스펙트럼 전개의 초기 시작 부분은, 긴 샘플링 비율이 모든 전개를 획득하기 위해 필요하기 때문에 높다.
본 발명에 따라서, 지구적인 소리와 타진하는 소리의 음향의 특성 사이의 유사점은 웨이브테이블 신디사이저의 메모리 예산을 실질적으로 줄이기 ldnl한 다양한 샘플링 비율 기술을 사용하여 개발되었다.
본 발명의 실시예에 따라서, 음악 신호의 고유의 근본은 낮은 구간에서 음악 신호의 샘플링에 의해 개발되었고, 그 다음으로, 고역 통과 필터링(high-pass filtering)과 인공의 기낭의 적용을 통해 음악신호로부터 파생된 추가적인 음파에 의해 높은 주파수 목록이 재생된다.
본 발명에 따라서, 웨이브테이블 신디사이저는 인코딩되기 위한 지구적인 소리는 두 개의 주파수 대역, 낮은 대역과 높은 대역으로 해체되는 기술의 이행을 통해 웨이브테이블 샘플 메모리 요구량을 감소한다. 각 대역은 기본적인 웨이브테이블 방법을 사용하여 생성된다. 주파수 나눔, 주파수 대역 사이의 나뉘는 지점은 높은 주파수 대역의 스펙트럼 목록이 거의 일정하기 위해서 선택된다. 높은 주파수 대역의 어떤 구간 샘플은 미리 설정된 구간에서 샘플링되고 저장된다. 낮은 주파수 대역은 적은 메모리 용량이 긴 스페트럼 전개를 획득하기 위해, 실질적으로 웨이브테이블 신디사이즈에 대한 전형적인 샘플 비율보다 더 낮은, 미리 선택된 낮은 비율에서 샘프링된다.
신호의 스펙트럼 목록은 낮은 주파수 요소와 주문을 받아서 만들어진 높은 주파수 대역 신호를 포함하는 기록된 합성된 파형의 재생에 의해 연주에서 재생된다. 파형의 낮은 주파수 요소는 음악 신호를 저역 통과 필터링(low-pass filtering)에 의해 기본적인 웨이브테이블 신디사이저 방법을 사용하고, 저역 통과 필터링된 음악 신호의 안정된 구간을 찾고, 안정된 구간을 통해 샘플을 기록하는 것에 의해 발생된다. 높은 주파수 대역 신호는 지구적인 소리에 대한 주문에 의해 만들어진 높은 주파수 노이즈 발생기로써 재생된 신호에 더해진다.
기술된 웨이브테이블 복구 기술은 실질적으로 증가된 컴퓨터의 부하(computational load)의 비용에서 웨이브테이블 신디사이저의 메모리 크기를 감소한다. 기술된 웨이브테이블 신디사이즈 기술의 컴퓨터 부하는 두 개의 주파수 대역, 높은 대역과 낮은 대역이 단일 대역보다 낫다고 계산되므로 전형적인 방법의 약 두 배의 부하이다.
본 발명의 전형적인 실시예에서, 높은 주파수 대역과 낮은 주파수 대역 산정수치(computation)는 독립적으로 진행되고 실질적으로 두 개의 웨이브테이블 엔진(engine)을 사용한다. 단일 웨이브테이블 엔진은 연속적으로 산정수치를 진행하고, 적어도 하나이상의 진행된 신호를 임시 저장하고, 연속적으로 계산된 신호를 섞는다. 조건 엔진은 일반적으로 제어기 또는 특정한 기능을 제어하는 상태 장치에 속한다.
본 발명의 전형적인 실시예에서, 소리 신호는 두 개의 분리된 주파수 범위, 높은 범위와 낮은 범위로 나뉜다. 같은 실시예에서, 웨이브테이블 신디사이터는 소리 신호를 복수의 분리된 주파수 범위로 분리하고, 오디오 신호의 실행의 복수의 범위로부터 신호를 재결합시킨다.
본 발명에 따라서, 다양한 샘플 비율 웨이브테이블 신디사이즈 기술은 타진하는 소리를 저장하고 실행하기 위한 웨이브테이블 샘플 메모리 크기를 줄이기 위해 사용된다. 소리 신호는 로우 주파수 대역과 높은 주파수 대역을 포함하는 두 개의 분리된 주파수 대역으로 나뉜다. 각 주파수 대역 신호는 기본적인 웨이브테이블 방법을 사용하여 인코딩된다. 높은 주파수 대역은 선택된 짧은 구간 동안 높은 기간에서 샘플링된다. 짧은 구간은 작은 메모리 요구량이 부과되기 위해 가능하다. 왜냐하면, 높은 주파수 대역 신호는 빠르게 쇠퇴하거나 안정화되기 때문이다. 낮은 주파수 대역 신호는 음악 신호의 안정된 샘플의 필터링에 의해 다르게 재생되는 미세한 스펙트럼 다양성을 획득하기 위해 시간을 전개하는 신호를 허용하는 실질적으로 훨씬 넓은 구간 동안 샘플링 된다. 분리 주파수라고 불리는 주파수 대역 사이의 분리 지점은 빠르게 쇠퇴하는 노이즈 신호 요소가 타진하는 신호의 조화 부분의 미세한 스펙트럼 전개로부터 분리되기 위해 선택된다. 지구적인 소리의 연주에 대한 다양한 샘플 비율 웨이브테이블 신디사이즈 기술은 기본적인 웨이브테이블 신디사이즈 기술과의 비교에서 약 두 배의 산정 수치 부하를 부과하고, 실질적으로 웨이브테이블 저장 요구량은 감소한다. 지구적인 소리에 적용된 다양한 샘플 비율 웨이브테이블 신디사이즈 기술은 소리의 질은 원래 감소하지 않는다.
많은 이점들이 기술된 웨이브테이블 신디사이저와 방법의 실행에 의해 얻어진다. 중요한 이점은 샘플 롬(ROM)과 효과 램(RAM)의 크기가 우수한 오디오 충실성이 달성되는 동안 실질적으로 감소하는 것이다. 롬과 램 메모리 크기에서 실질적인 감소는 낮은 샘플링 비율과 작은 데이터 경로 폭에 의해 유리하게 수행된다. 효과 램 크기와 데이터 경로 폭은 내부 샘플링 감소와 샘플 크기의 수반하는 복구를 통해 유리하게 감소한다. 감소된 롬과 램 메모리 크기와 데이터 경로 폭은 회로와 작은 전체 회로 크기까지의 더 작은 요소에서 기인한다. 같은 실시예에서, 더 낮은 샘플링 비율은 유리하게 전력을 유지하기 위해 개발되고, 신호 충실도를 개선한다.
새로운 것이라고 생각되는 기술된 실시예의 형태는 덧붙인 청구함에서 명확하게 나타날 것이다. 그러나, 구조와 실시 방법 모두에 관련된 발명의 실시예는 다음의 기술과 첨부된 도면의 참조에 의해 가장 잘 이해될 것이다.
도 1a 및 도 1b는 본 발명의 실시예에 따른 웨이브테이블 신디사이터 장치의 실시예의 두 개의 높은 레벨 블록도.
도 2는 서브-대역 음향 샘플을 코딩하는 방법의 실시예를 보인 순서도.
도 3은 도 2에서 보인 방법에서 사용된 알맞은 샘플 생성 저역 통과 필터의 주파수 응답을 보인 그래프.
도 4는 저역 통과 루프 강압 필터의 사용법에 대한 코움(comb) 필터의 실시예를 보인 개략적인 블록도.
도 5는 선택적인 계수(α)의 시간에 대한 전형적인 변화를 보인 그래프.
도 6은 도 1에서 보여진 웨이브테이블 신디사이저 장치의 피치 발생기와 효과 프로세서의 다양한 램과 롬 구조를 가지는 음악 악기 디지털 인터페이스(MIDI) 해석기의 상호연결을 보인 개략적인 블록도.
도 7은 도 1에서 보여진 웨이브테이블 신디사이저 장치의 피치 발생기를 보인 개략적인 블록도.
도 8은 도 7에서 보여진 피치 발생기에서 사용된 알맞은 12-탭(tap) 보간법(interpolation) 필터의 주파수 응답을 보인 그래프.
도 9는 도 7에서 보여진 피치 발생기의 샘플 그래버(grabber)의 동작을 보인 순서도.
도 10은 도 7에서 보여진 피치 발생기에서 선입선출(FIFO) 버퍼의 구성을 보인 개략적인 블록도.
도 11은 도 1에서 보여진 웨이브테이블 신디사이저 장치의 효과 프로세서의 실시예를 보인 개략적인 블록도.
도 12는 도 11에서 묘사된 효과 프로세서에서의 용법에 대한 선형 피드백 시프트 레지스터(LFSR)의 실시예를 보인 개략적인 도면.도 13은 도 11에서 묘사된 효과 프로세서에서의 용법에 대한 상태-구역 필터를 보
인 개략적인 회로도.
도 14는 음조 신호(note signal)에 적용된 진폭 기낭 함수를 묘사한 그래프.
도 15는 채널 효과 상태 장치를 보인 개략적인 블록도.
도 16은 코러스 프로세싱 회로의 요소를 보인 개략적인 블록도.
도 17은 반향음(reverberation(reverb)) 프로세싱 회로의 요소를 보인 개략적인 블록도.
본 발명은 전자 음악 기계의 용법을 위한 웨이브테이블 신디사이저에 관한 것으로, 특히 다양한 샘플링 비율 근사치 기술의 용법을 통한 메모리 크기를 줄이는데 사용되는 웨이브테이블 신디사이저 및 작동 방법에 관한 것이다.
도 1a 및 도 1b에 대해 설명하면, 메모리로부터 저장된 웨이브테이블 데이터를 액세스하고, 복수개의 연주에 대한 음향에서 음악 신호를 생성하는 웨이브테이블 신디사이저 장치(100)의 두 개의 실시예의 하이-레벨 블록도를 보인 개략적인 블록도의 쌍이다. 웨이브테이블 신디사이저 장치(100)는 종래 웨이브테이블 신디사이저와 비교해서 실질적으로 줄어든 메모리 크기를 갖는다. 묘사된 실시예에서, 롬 메모리 크기는 여기에 기술된 다수의 메모리 유지 기술을 사용하는 높은-질의 오디오 신호를 생산하는 동안 롬 메모리 크기는 0.5 메가바이트(Mbyte)보다 작은 양, 예를 들어 약 300 킬로바이트(Kbyte),이 감소하고, 램 메모리 크기는 약 1킬로바이트(Kbyte) 감소한다. 묘사된 실시예에서, 웨이브테이블 신디사이저 장치(100)는 32개의 음향을 연주한다. 거의 모든 악기에 대한 기록(웨이브테이블 신디사이저 장치(100)의 음향과 일치하는 각각에 대해)은 두 개의 요소, 높은 주파수 샘플과 낮은 주파수 샘플로 분리된다. 따라서, 32개의 음향 각각에 대한 두 개의 주파수 요소는 64개의 독립적인 오퍼레이터로써 수행된다. 오퍼레이터는 단일 파형 데이터 열이고, 하나의 음향의 하나의 주파수 요소와 일치한다. 어떤 경우에서는, 두 개보다 많은 주파수 대역 샘플은 32개보다 더 적은 분리된 음향이 때때로 진행되기 때문에 기록을 재생하기 위해 사용된다. 어떤 경우에서는, 두 개보다 많은 주파수 대역 샘플이 기록을 재생하기 위해 사용되고, 다른 경우에서는, 단일 주파수 대역 신호가 기록을 재생하기 위해 충분하다.
때때로, 모든 오퍼레이터가 전체 32개의 음향이 연주되지 않기 때문에 두 개 또는 더 많은 오퍼레이터가 사용되는 기록이 실행된다. 이러한 조건을 수용하기 위해, 소리에 대해 가장 작게 기여하는 것(contributor)이 결정되고, 가장 작은 기여를 가지는 기록은 새로운 "음조 온(Note On)" 메시지가 요구되면 종결된다.
복수의 독립적인 오퍼레이터의 용법은 또한 웨이브테이블 신디사이저에서 표현법(layering) 및 크로스-패이드(cross-fade) 기술의 실행을 쉽게 한다. 많은 소리와 소리 효과는 복합적인 단일 소리의 조합이다. 메모리는 소리 요소가 복합적인 소리에서 사용될 때, 절약된다. 크로스-패이딩(cross-fading)은 표현법(layering)과 비슷한 기술이다. 시간에 따라 변하는 많은 소리는 시간에 따라 변하는 진폭을 가지는 두 개 또는 그 이상의 소리 요소에 의해 재생된다. 크로스-패이딩은 어떤 소리가 특별한 소리 요소로써 시작될 때, 발생하지만, 소정시간 후에 다른 요소로 변한다.
웨이브테이블 신디사이저 장치(100)는 음악 악기 디지털 인터페이스(MIDI) 해석기(102), 피치 발생기(104), 샘플 읽기 전용 메모리(ROM)(106)와 효과 프로세서(108)를 포함한다. 일반적으로 미디(MIDI) 해석기(102)는 입력되는 미디(MIDI) 직렬 데이터 열을 받아서, 데이터 열을 분석하고, 샘플 롬(ROM)(106)으로부터 관련된 정보를 추출하고, 피치 발생기(104) 및 효과 프로세서(108)에 관련된 정보를 전송한다.
도 1a에서 보여진 제1 실시예에서, 미디(MIDI) 직렬 데이터 열은 시스템 버스(122)를 통해 호스트 프로세서(120)로부터 받는다. 전형적인 호스트 프로세서(120)은 펜티엄 티엠(PentiumTM) 또는 펜티엄 프로 티엠(Pentium ProTM) 프로세서와 같은 x86 프로세서이다. 전형적인 시스템 버스(122)는 예를 들어 ISA 버스이다.
도 1b에서 보여진 제2 실시예에서, 미디(MIDI) 직렬 데이터 열은 게임 또는 장난감 같은 장치에서 키보드(130)로부터 받는다.
샘플 롬(ROM)(106)은 펄스 코드 변조(PCM) 파형이 코딩되고 낮은 대역과 높은 대역을 포함하는 두 개의 분리된 주파수 대역으로 분리된 음향 기록의 형식에서 웨이브테이블 소리 정보 샘플을 저장한다. 두 개의 주파수 대역으로 분리된 음에 의해, 진행된 오퍼레이터의 수는 두 배가 된다. 그러나, 저역 및 고역으로 알맞게 선택된 주파수 분리의 사용에 의해 달성된 메모리 크기의 실질적인 감소에 의한 보상보다 추가적인 오퍼레이터에 의한 단점이 더 크다.
지구적인 소리에 대해, 실질적인 메모리 감소는 고주파수 대역이 고주파수 대역 신호의 하나의 기간 샘플로부터 재현하기 때문에 옳게 선택된 주파수 분리 경계에 대해 거의 일정하다. 제거된 고주파수 요소를 가지는, 저주파 대역은 더 낮은 음에서 샘플링되고, 보다 작은 메모리는 낮은 대역 신호의 긴 스펙트럼 전개가 사용된다.
지구적인 소리에 대해, 실질적인 메모리 감소는 고주파수 요소가 빠르게 쇠퇴하거나 안정화되기 때문에 고주파수 대역이 높은 비율에서 샘플링될 지라도 달성된다. 고주파수 요소는 제거되고, 저주파수 대역은 안정한 파형의 필터링과 필터링된 안정된 신호 요소와 파형을 더함에 의해 쉽게 복구되지 않는 미세한 스펙트럼 변화를 재생하기 위해 고주파수 샘플링 시간보다 훨씬 긴 샘플링 구간에 대해 낮은 비율에서 샘플링된다.
샘플 롬(ROM)(106)에 저장된 펄스 코드 변조(PCM) 파형은 샘플이 고주파수 대역 요소 또는 저주파수 대역 요소인지를 신호의 스펙트럼 목록에 의해 결정될 때 실질적으로 가장 낮은 가능한 샘플 비율에서 샘플링된다. 같은 실시예에서, 가장 낮은 가능한 샘플 비율에서의 샘플링은 회로의 감소에 의하여, 램의 저장 크기, 홀딩(holding) 샘플에 대한 다양한 버퍼 및 선입 선출(FIFO)과 데이터 경로 폭을 실질적으로 감소시킨다. 샘플은 그 다음에 고주파수 및 저주파수 대역 요소를 저장하는 과정 전에 일치된 샘플 비율에 삽입된다.
전자 음악 기기(MIDI) 해석기(102)는 31.25 KBaud로 한정된 전자 음악 기기(MIDI) 직렬 데이터 열(stream)을 받고, 직렬 데이터를 병렬 형식으로 바꾸고, 전자 음악 기기(MIDI) 명령과 데이터로 전자음악기기(MIDI) 병렬 데이터를 분석한다. 전자음악기기(MIDI) 해석기(102)는 데이터로부터 전자음악기기(MIDI) 명령을 분리하고, 전자음악기기(MIDI) 명령을 해석하고, 피치 발생기(104)와 효과 프로세서(108)에 의한 용법에 대해 제어 정보로 데이터를 포맷하고, 피치 발생기(104)와 효과 프로세서(108)의 다양한 램과 롬 구조와 전자음악기기(MIDI) 해석기(102) 사이에서 데이터와 제어 정보를 전달한다. 전자음악기기(MIDI) 해석기(102)는 피치 발생기(104)에 적용된 전자음악기기(MIDI) 음조 번호, 샘플 번호, 피치 조율(tuning), 피치 대역과 진동의 깊이를 포함하는 제어 정보를 발생한다. 전자음악기기(MIDI) 해석기(102)는 또한 효과 프로세서(108)에 적용된 채널 음량, 팬 좌측(pan left)과 팬 우측(pan right), 반향음(reverb) 깊이와 코러스 깊이를 포함하는 제어 정보를 발생한다. 전자음악기기(MIDI) 해석기(102)는 소리 신디사이즈 과정에 대한 제어 정보의 초기값을 조정한다.
일반적으로, 피치 발생기(104)는 원래의 기록된 샘플 비율과 동등한 비율에서 샘플 롬(106)으로부터 샘플을 추출한다. 진동 효과는 피치 발생기(104)가 샘플 비율을 바꾸기 때문에 피치 발생기(104)에 의해 통합된다. 피치 발생기(104)는 또한 효과 프로세서(108)에 의한 용법에 대한 샘플을 통합한다.
특히, 피치 발생기(104)는 피치 조율, 진동 깊이와 피치 대역 효과를 고려하여, 요구되는 전자음악기기(MIDI) 음조 번호에 의해 결정된 비율에서 샐플 롬(106)으로부터 열(row) 샘플을 읽는다. 피치 발생기(104)는 효과 프로세서(108)에 의한 용법에 대한 샘플을 동조시키기 위해 원래의 샘플 비율을 삽입함에 의해 샘플 비율을 일정한 44.1킬로헤르쯔(KHz) 비율으로 바꾼다. 삽입된 샘플은 피치 발생기(104)와 효과 프로세서(108) 사이에 있는 버퍼(110)에 저장된다.
일반적으로, 효과 프로세서(108)는 시간-변환 필터링, 기낭(envelope) 발생, 음량, 전자음악기기(MIDI)-특성 팬(pan), 코러스와 반향음(reverb)과 같은 효과를 데이터 분류에 더하고, 오퍼레이터와 일정한 비율에서 동작하는 동안 데이터의 채널-특성 제어를 생성한다.
효과 프로세서(108)는 삽입된 샘플을 받고, 기낭(envelope) 발생과 필터링 조작에 의해 소리 발생 질을 높이는 동안 음량, 팬(pan), 코러스와 반향음(reverb)과 같은 효과를 더한다.
도 2에 관하여 설명하면, 순서도는 지구적인 소리, 타진하는 소리와 다른 소리들을 포함하는 소리에 대한 서브-대역(sub-band) 음향 샘플을 코딩하기 위한, 샘플 교정기(editor)에 의해 지시된 바와 같이 수행된 방법의 실시예를 도시하고 있다. 이 방법은 제1 저역 통과 필터(210) 단계, 제2 저역 통과 필터(220) 단계, 고역 통과 필터(230) 단계, 저역 통과 루프 강제 필터 단계(240), 저역 통과 루프(270) 단계, 요소 부분 제거(decimation)(280) 단계와 갖가지 재생 파라미터 조절(290) 단계를 포함하는 다수의 단계를 포함한다.
제1 저역 통과 필터(210) 단계는 소리 신호 재생의 최대 전체의 충실도를 설립하기 때문에, 고주파수 대역에 대한 샘플링 비율의 상위 한계를 정하기 위해 사용된다. 웨이브테이블 신디사이저 장치(100)는 8-비트 펄스 코드 변조(PCM) 데이터를 유지함에 의해 가장 큰 스펙트럼 요소로부터 노이즈 연주에 대해 50dB 신호를 유지한다. 고주파수 대역에 대한 샘플링 비율의 상위 한계는 제1 저역 통과 필터의 주파수 특성을 결정한다.
도 3은 알맞은 샘플 생성 저역 통과 필터(미도시)의 주파수 응답을 보인 그래프이다. 도시된 실시예에서, 샘플 발생에서 사용된 필터는 상승된 코사인 윈도우를 사이 함수에 적용함에 의해 생성된 2048 탭(tap) 유한 충격 응답(finite impulse response)(FIR) 필터이다. 샘플 교정기에 의해 한정된, 도시된 예에서는 5000 Hz, 차단 주파수는 필터링 프로그램에 의해 액세스된 계수의 셋을 발생한다. 이러한 예에서, 코사인 윈도우 안의 계수는 0.42, -0.5와 +0.08 이다.
제2 저역 통과 필터(220) 단계는 소리의 초기의 요소로써 코딩된 저 주파수 대역 신호를 생산한다. 제2 저역 통과 필터(220) 단계에 대한 차단 주파수는 다소 독단적으로 선택된다. 차단 주파수의 더 낮게 선택된 값은 보다 소수의 샘플을 가지는 저주파수 대역 신호를 발생하지만, 고주파수 대역 신호를 코딩하는 어려움은 불리하게 증가된다. 차단 주파수의 더 높게 선택된 값은 고주파수 대역신호를 코딩하는 어려움은 유리하게 감소되지만, 불리하게 메모리를 절약하지는 못한다. 알맞은 기술은 위치 요소가 35dB보다 훨씬 더 큰 고주파수 대역 신호로 감소하는 차단 주파수를 초기에 선택함을 포함한다. 제2 저역 통과 필터의 출력은 일정한 진폭을 가지는 신호를 발생하기 위해 테두리 낮춤 서브단계(envelope flattening substep)(222)에서 다양한 이득 단계를 통해 출력된다.
테두리 낮춤 서브단계(222)는 압축과 샘플링된 파형에 인공적인 테두리의 적용을 포함한다. 알맞는 시간동안 감소하는 소리는 원래의 소리가 인공적으로 평탄화(flatten)되거나 진폭에서 평활(smooth)되면, 대개 루프된다. 테두리의 적용은 원래의 감소가 재생 장치로 재생하면, 루프된 감소하지 않은 소리에 의해 접근하기 위해 감소하는 소리를 허용한다.
제2 저역 통과 필터(220) 단계의 출력 신호는 원래의 신호로써 어떤 진폭에서 동적인 범위의 대부분을 포함한다. 8-비트 펄스 코드 변조(PCM) 형식에서 인코딩된 샘플에 대해, 양자화 노이즈는 신호 세기가 감소할 때 못 마땅하게 된다. 양자화 노이즈와 관계있는 높은 신호 세기를 유지하기 위해, 테두리 평탄화 하위단계(222)는 신호의 감소가 자연적인 진행에 의해 생성되는 감소하는 신호 가정을 평탄화 하고, 지수적인 감소에 접근시킨다.
테두리 평탄화 하위단계(222)는 먼저 감소하는 신호(224)의 테두리에 접근시킨다. 20 밀리초(millisecond) 윈도우는 검사되고, 각 윈도우는 그 윈도우에서 최대 신호 진폭을 재연하는 테두리 값을 할당한다. 테두리 평탄화 하위단계(222)는 다음으로 예를 들어 윈도우의 시작에서 신호에 관계된, 0.02로부터 0.1까지의 멱지수(exponent) 범위에 대한 값을 사용하는 일정하게 지수적인 감소(226)에 가장 근접한 근사치를 찾는다. 가장 지수적인 적합은 복구에 대해 기록된다. 테두리 평탄화 하위단계(222)는 다음으로 거의 평탄한 신호를 구성하기 위해 반전 테두리(228)를 가지는 소리 샘플을 진행한다. 거의 평탄한 신호는 원래의 파형에 접근시키기 위해 기록된 테두리를 재구성한다.
고역 통과 필터(230) 단계는 보완적으로 제2 저역 통과 필터(220) 단계와 같은 차단 주파수를 사용한다. 신호의 고역 통과 부분은 최대 신호 세기를 유지하기 위해 증폭된다.
루핑(looping)은 전체 파형의 저장을 제거하는 조정된 소리 파형의 바로 이전의 부분이 저장된 웨이브테이블 진행 방법이다. 대부분의 조정된 소리는 조정된 시간 범위 파형이 반복되거나 소리의 약간의 시간 간격 후에 거의 반복되는 점에서 시간적으로 여분이 있다. 하위 대역 코딩 방법은 저역 통과 루핑 강제 필터 단계(240), 저역 통과 루핑(250) 단계, 임의의 고역 통과 루핑 강제 필터 단계(260)과 고역 통과 루핑(270) 단계를 포함하는 몇몇의 루핑 단계를 포함한다.
임의의 저역 통과 루핑 강제 필터 단계(240)는 주기적으로 되기 위해 소리 신호를 강제적인, 소리를 미세하게 변화시킴에 의해 주기적으로 되지 않는 소리를 인코딩하기 위해 아주 알맞게 사용된다. 가장 지구적인 소리는 절대 주기적으로 되지 않는다. 다른 소리는 주기적으로 되지만, 매우 긴 시간 간격을 초과하지는 않는다. 저역 통과 루핑 강제 필터 단계(240)은 제1 저역 통과 필터(210) 단계, 제2 저역 통과 필터(220) 단계와 고역 통과 필터 단계(230)로부터 결정된 샘플 파형에 적용된다. 저역 통과 루핑 강제 필터 단계(240)은 알맞은 거의-주기적인 파형, 루프에서 재생된 파형을 발생하기 위해 사용되고, 들을 수 있지만 못마땅한 인공 구조의 삽입 없이 형성된다.
주기적이지 않은 파형은 조화롭지 않은 고주파수 스펙트럼 목록에 기인하여 주기적이지 않은 형식을 갖는다. 고주파수 요소는 파형의 루핑이 시간의 중요한 구간에 대한 루핑에 의해 점차적으로 촉진되기 때문에 저주파수 요소보다 더 빠르게 감소한다. 루핑 시간은 다른 악기와 소리에 대해 변한다. 다양한 파형에 대한 루핑 절차와 작용은 웨이브테이블 신디사이즈 분야에서 잘 알려져 있다. 저역통과 루핑 강제 필터 단계(240)는 비주기적인 파형으로부터 비조화적인 스펙트럼 요소의 제거를 증가시키기 위해 초과시간을 바꾸는 선택도를 가지는 코움(comb) 필터를 사용한다. 같은 실시예에서, 루프 강제 진행은 수동적인데, 코움 필터의 동작은 선택도가 더 빠르게 증가하면 들을 수 있다. 전형적으로, 저역 통과 루핑 강제 필터 함수는 필터의 주기가 원하는 음조의 기본적인 주파수의 정수 배이기 위해 선택된다면, 능가한다. 못마땅한 인공구조의 삽입 없는 파형의 루핑을 쉽게하는 계수가 요구된다.
도 4에 대해서는, 개략적인 블록 회로도가 저역 통과 루핑 강제 필터로써의 용법에 대한 코움 필터(400)의 요소를 도시하였다. 루핑의 개념은 신호가 반복되는 주기를 결정하기 위해 신호의 샘플링 및 해석과 관계 있다. 저역 통과 루핑 강제 필터는 신호의 샘플링과 해석에 덧붙여서 저역통과 필터링을 포함한다. 다양한 규정은 주기가 발견될지의 검출에 적용된다. 하나의 규정은 주기가 파형이 직류(DC) 또는 제로 진폭 레벨과 교차하고 두 지점에서의 도함수가 동등하다고 고려되는 범위 안에 있다는 두 개의 지점에 의해 바운드된다. 두 번째 규정은 주기가 샘플의 기본적인 주파수의 주기 또는 기본적인 주파수의 주기의 정수 배의 어느 한 쪽과 동일하다는 것이다.
코움 필터(400)는 다양한 이득을 가지며, 주기 강제 필터로써 사용된다. 코움 필터(400)는 지연 라인(402), 피드백 증폭기(404), 입력 증폭기(406)와 덧셈기(408)를 포함한다. 지연 라인(402)으로부터의 피드백 신호는 피드백 증폭기(404)의 입력 단자에 입력된다. 증폭된 입력 신호와 증폭된 피드백 신호는 입력 증폭기(406)와 피드백 증폭기(404)로부터 각각 덧셈기(408)에 입력된다. 지연 라인(402)은 덧셈기(408)로부터 증폭된 피드백 신호와 증폭된 입력신호의 합을 받는다. 피드백 증폭기(404)는 시간-변환 선택도 계수(α)를 갖는다. 입력 증폭기(406)은 시간-변환 선택도 계수(α-1)을 갖는다.
코움 필터(400)는 두 개의 디자인 파라미터, 샘플링 주파수(44.1KHz)에서의 샘플에서 지연 라인(402)의 크기(N)와 시간-변환 선택도 계수(α)를 갖는다. 전형적으로, 크기(N)는 필터의 주기가 원하는 음조의 기본적인 주파수의 주기와 동일하기 때문에 선택되거나, 필터의 주기가 기본적인 주파수의 주기의 적분 상수이기 때문에 선택된다. 선택도 계수(α) 초과시간에서의 다양성은 라인 구획(segment)의 시리즈로써 모델화된다. 선택도 계수(α)는 도 5에서 묘사되고, 통상적으로 제로에서 시작하여 지수적으로 증가한다. 신호의 조화 목록의 레벨은 일반적으로 선택도 계수(α)가 증가함에 따라서 감소한다. 선택도 계수(α)의 전형적인 최종 값은 0.9이다.
다시 도 2에 관해서는, 저역 통과 루핑(250) 단계는 전형적인 웨이브테이블 샘플 발생 과정과 일관된다. 그 분야에서 알려진, 모든 종래 및 전형적인 웨이브테이블 샘플 발생 방법은, 저역통과 루핑(250) 단계에서 적용된다. 이러한 방법은 일반적으로 소리 신호를 샘플링하고, 시간 영역 파형이 반복할 때의 주기를 결정하기 위한 시간의 알맞은 시간 샘플링 주기를 통해 샘플을 루핑하고, 전체 주기에 대한 샘플을 저장하는 단계를 사용한다. 샘플이 형성될 때, 루프의 전 주기를 통해 파형의 저장된 샘플이 메모리로부터 반복적으로 읽히고, 진행되고, 소리를 재생하기 위해 형성된다.
임의의 고역 통과 루핑 강제 필터 단계(260)는 저역 통과 루핑 강제 필터 단계(240)와 비슷하지만, 소리의 고주파수 요소에서 수행된다. 고역 통과 루핑 강제 필터 단계(260)은 고역 통과 필터(230) 단계로부터 샘플 파형 결과에 적용된다. 고역 통과 루핑 강제 필터 단계(260)는 비주기적인 파형으로부터 비조화적인 스펙트럼 요소의 제거를 증가시키는 초과시간을 변화시키는 선택도를 가지는 도 4에서 보여진 코움 필터(400)을 사용한다. 코움 필터(400)는 샘플링 주파수에서의 샘플링에서 지연 라인(402)의 크기(N)과 고주파수 대역 샘플에 대해 알맞은 시간-변조 선택도 계수(α)를 사용하여 동작된다.
고역 통과 루핑 단계(270)는 소리의 고주파수 요소에서 수행된다는 것을 제외하고는 저역 통과 루핑 단계(250)와 비슷하다. 고역 통과 루핑 단계(270)는 고역 통과 루핑 강제 필터 단계(260)으로부터 샘플 파형 결과에 적용된다.
요소 부분 제거(decimation) 단계(280)는 샘플 생성의 다운샘플링 동작이다. 이전의 요소 부분 제거 단계(280)의 하위-대역 음향 샘플 코딩 단계는 소리 신호에서 반복되는 주기적인 구조의 생성이 높은 샘플링 비율에서 쉽기 때문에 원래 소리 신호, 예를 들어 44.1KHz의 샘플링 비율에서 수행된다. 요소 부분 제거 단계(280)는 감소된 샘플링 비율을 가지는 고주파수 대역 파형과 저주파수 대역 파형을 포함하는 두 개의 루핑된 펄스 부호 변조(PCM) 파형을 생성하는 샘플 롬(106)에서 메모리를 유지하기 위해 샘플링 비율을 감소시키지만, 다른 점에서는 저역 통과 루핑 단계(250)와 고역 통과 루핑 단계(270)에서 생성된 루핑된 신호와 같다.
웨이브테이블 신디사이저에 대한 파형의 조정의 목적은 파형에서 들리지 않는 루프의 삽입이다. 루프는 파형에서의 불연속이 그 루프가 삽입되는 곳에 삽입되지 않고, 파형의 제1 도함수(기울기)가 또한 연속적이고, 파형의 진폭이 거의 일정하고, 루프 크기가 소리의 기본적인 주파수의 정수 배와 같은 정도이면, 들을 수 없다. 이러한 조건을 충족시키는 파형은 파형이 원래의 소리 신호의 샘플링 비율, 예를 들어 44..1 KHz에서 오버샘플링될 때, 가장 쉽게 발견된다. 요소 부분 제거 단계(280)는 샘플을 저장하는 메모리 크기를 충분하게 감소하는 동안, 저역 통과 루핑 단계(250)와 고역 통과 루핑 단계(270)에서 각각 생성된 저주파수 대역과 고주파수 대역 루핑된 샘플과 같은 소리의 파형을 생성하기 위해 사용된다.
요소 부분 제거 단계(280)는 부분 제거 비율(282)을 결정하고, 부분 제거될 때, 적분 루프 크기를 생성하는 피치 시프팅(284)과, 적분 루프 끝점을 발생하는 제로 삽입(286)과, 부분 제거(288)과, 가상의 샘플링 비율(289)을 계산하는 하위단계를 포함한다. 부분 제거 비율(282)을 결정하는 단계는 도 8에서 보여진 보간법(interpolation) 필터의 동작상의 특성을 기초로하는 부분 제거 비율의 선택을 포함한다. 부분 제거 비율을 한정하는 변조 대역(802)의 저주파수 에지(edge)는 0.4fs이다. 부분 제거 비율은 초기의 필터링 단계에 의해 바운드되고, 필터링 주파수는 보간법 필터를 사용할 때 유효하게 하기 위해 선택된다.
피치 시프팅과 보간법은 악기의 톤의 질(tone quality)(음질(timbre))이 피치에서 작은 변화를 가지고 근본적으로 변하지 않기 때문에 메모리를 유지하기 위해 사용된다. 따라서, 피치 시프팅과 보간법은 약간의 다른 샘플링 비율에서 재생될 때, 원래 소리에 대한 피치에서 비슷한 톤을 대신하는 기록된 파형을 허용하기 위해 사용된다. 피치 시프팅과 보간법은 비록 큰 피치 시프트가 높은-피치의 진동 소리와 같은 오디오 인공 구조를 생성할지라도, 작은 피치 시프트에 대해 효과적이다.
피치 시프팅 단계(284)는 부분 제거에서 적분 루프 크기를 생성하기 위해 3차의 보간법(cubic interpolation)에 의해 피치를 시프트 한다. 피치 시프팅(284)은 전형적인 웨이브테이블 신디사이저 장치(100)가 적분되는 루프 크기를 나타내기 때문에 예시된 실시예에서 사용된다. 웨이브테이블 신디사이저의 다른 실시예는 피치 시프팅 단계(284)가 생략되기 때문에 적분 루프 크기를 억제할 수 없다. 하나의 예로써, 44.1 KHz의 샘플링 비율에서 37 샘플의 길이를 가지는 루프가 9.25의 루프 길이를 산출하는 4의 부분제거 비율에서 부분제거 된다. 비적분 루프 길이는 예시된 웨이브테이블 신디사이저 장치(100)에 의해 나타나지 않는다. 그러므로, 피치 시프팅 단계(284)는 36 샘플의 주기로 44.1 KHz에서 샘플링된 새로운 파형을 생성하기 위해 3차의 보간법에 의해 1.027777의 계수에 의해 파형의 주파수를 피치 시프트 하기 위해 사용된다.
제로 삽입 단계(286)는 처리된 파형의 루프 지점이 부분제거 비율에 의해 완전하게 나눌 수 없다. 제로는 부분제거 비율에 의해 나주어지는 루프 지점을 만들기 위해 실질적으로 파형을 움직이기 위해 샘플 파형의 시작에 더해진다.
부분제거 단계(288)는 파형으로부터 버려진 샘플에 의해 감소된 샘플링 비율을 가지고 새로운 파형을 생성한다. 버려진 샘플의 수는 부분제거 비율 단계(282)의 결정에서 결정된 부분제거 비율에 의해 결정된다. 예를 들어, 제로 삽입 단계(286)로부터 36-샘플 파형 결과는 매 4번째 샘플이 유지되고 다른 샘플은 버려지기 때문에 4의 부분제거 비율에 의해 결정된다.
가상 샘플링 비율 단계(289)의 계산은 재생된 신호가 원래의 샘플링된 신호의 피치를 재생하기 때문에 가상 샘플링 비율을 조정하기 위해 사용된다. 이러한 계산은 피치 시프팅 단계(284)에서 발생된 주파수 변화를 수용한다. 예를 들어, 원래의 음조가 1191.89 Hz 의 주파수를 가지고, 36의 루프 크기를 생성하기 위해 1.027777에 의해 조절된다면, 음조의 주파수는 1225 Hz로 시프트 된다. 11025 Hz의 샘플링 비율을 가지고 재생된 파형이 9 샘플의 루프 크기로 연주될 때, 톤(tone)의 피치는 1225 Hz이다. 1191.89 Hz 의 원래의 음조 주파수를 재생하기 위해, 재생된 파형의 가상 샘플링 주파수는 새로운 파형이 1191.89 Hz에서 톤을 생성하는 9의 루프 크기와 10727 Hz 의 가상 샘플링 비율을 가지기 때문에 1.027777 아래로 조절된다.
갖가지 복구 파라미터 조절 단계(290)는 필요한 만큼, 음조에 따라(note-by-note) 샘플을 개선하기 위해, 또는 메모리를 보호하기 위해 임의로 사용된다. 지구적인 소리와 타진하는 소리 모두에 적용되는, 가변의 샘플 비율 웨이브테이블 조합 기술은 높은 소리 질을 달성하기 위해 특별한 소리 신호에 대해 다양한 수행 파라미터의 주의 깊은 선택을 사용한다. 이러한 수행 파라미터는 분리 주파수, 필터 주파수, 샘플링 지속 기간 등등을 포함한다.
예를 들어, 파형은 가변의 필터가 수동적으로 적용되면, 개선된 재생 음조를 때때로 생성한다. 다른 예에서, 메모리는 단일 샘플이 샘플에서 하나 이상의 주파수 대역에 의해, 또는 하나 이상의 악기에 의해 나누어진다. 파형 분할의 특정한 예는 4대의 피아노가 인조 그랜드 피아노를 포함하여 규정되는 일반적인 전자음악기기(MIDI) 명세서에 존재한다. 모든 4 개의 피아노에 대한 파형은 하나 또는 그 이상의 복구 파라미터에서의 변조를 통해 다른 소리를 생성하는 각각의 피아노와 같다.
다른 예에서, 두 개의 파라미터는 시간 변조 필터의 초기 필터 차단을 제어한다. 하나의 파라미터는 음조의 강제에 근거하여 필터 차단을 떨어뜨린다. 음조가 부드럽게 연주되면 될수록, 초기 차단 주파수는 더 낮아진다. 음조가 위쪽으로 피치 시프트 될 때, 차단은 낮아진다. 피치 시프팅이 더 강한 조화 목록을 아래쪽으로 생성한다. 제2 파라미터 조절은 조각들을 통해 부드러운 팀브럴(timbral)의 변화를 용이하게 한다.
도 6에 대해서는, 피치 발생기(104)와 효과 프로세서(108)의 가변의 램과 롬 구조를 가지는 악기 디지털 인터페이스(MIDI) 해석기(102)의 상호 연결을 보인 개략적인 블록도이다. 악기 디지털 인터페이스(MIDI) 해석기(102)는 악기 디지털 인터페이스(MIDI) 해석기 롬(602)에 직접 연결되고, 악기 디지털 인터페이스(MIDI) 해석기 램 엔진(606)을 통해 악기 디지털 인터페이스(MIDI) 해석기 램(604)에 연결된다. 악기 디지털 인터페이스(MIDI) 해석기 램 엔진(606)은 피치 발생기 데이터 엔진(612)와 선입선출(FIFO)(610)을 통해 피치 발생기 램(608)에 데이터를 출력한다. 악기 디지털 인터페이스(MIDI) 해석기 램 엔진(606)과 피치 발생기 데이터 엔진(612)은 전형적으로 제어기 또는 효과 과정을 제어하는 상태 장치이다. 악기 디지털 인터페이스(MIDI) 해석기 램 엔진(606)은 선입선출(FIFO)(616)과 효과 프로세서 데이터 엔진(618)을 통해 효과 프로세서 램(614)에 데이터를 출력한다. 악기 디지털 인터페이스(MIDI) 해석기 램 엔진(606)은 선입선출(620)과 효과 프로세서 데이터 엔진(618)을 통해 효과 프로세서 램(614)로부터 데이터를 받는다.
악기 디지털 인터페이스(MIDI) 해석기 롬(602)은 악기 디지털 인터페이스(MIDI) 명령을 해석하기 위해, 그리고 악기 디지털 인터페이스(MIDI) 해석기(102)가 "음조 온(Note On)" 명령의 결과에 응답하는 데이터를 포맷하기 위해 사용하는 정보를 출력한다. 악기 디지털 인터페이스(MIDI) 해석기 롬(602)은 악기 정보, 음조 정보, 오퍼레이터 정보와 볼륨/표현 램 엔진(606) 룩업 테이블(lookup table)을 포함한다.
악기 정보는 악기의 목록이다. 악기 디지털 인터페이스(MIDI) 해석기 롬(602)의 악기 정보 부분에서 하나의 등록은 할당되고, 웨이브테이블 신디사이저 장치(100)에 의해 연주된 각 악기에 대해 인코딩 된다. 악기에 대한 악기 정보는: (1) 다중샘플의 전체 또는 최대 수, (2) 코러스 깊이 디폴트(default), (3) 반향음 깊이 디폴트, (4) 팬(pan) 좌/우 디폴트와 (5) 음조 정보에서의 목록을 포함한다. 다중샘플 수는 악기에 대해 이용할 수 있는 다중샘플의 수의 악기 디지털 인터페이스(MIDI) 해석기(102)를 알린다. 코러스 깊이 디폴트는 효과 프로세서(108)에서 진행된 악기에 대한 발생된 코러스 중에서 디폴트를 나타낸다. 반향음 깊이 디폴트는 효과 프로세서(108)에서 연주된 악기에 대해 발생된 반향음 중에서 디폴트를 나타낸다. 팬(pan) 좌/우 디폴트는 일반적으로 타진하는 악기의 디폴트 팬 위치를 나타낸다. 음조 정보의 목록은 악기에 대한 다중샘플과 일지하는 음조 정보에서의 제1 등록을 가리킨다. 다중샘플 수 파라미터는 악기와 관련된 제1 목록 후의 목록들을 규정짓는다.
음조 정보는 각 다중샘플 음조의 정보 목록을 포함하고, (1) 최대 피치, (2) 자연적인 피치, (3) 오퍼레이터 수, (4) 포락선(envelope) 스케일 플래그, (5) 오퍼레이터 롬(OROM)/ 효과 롬(EROM) 목록과 (6) 시간-변조 필터 오퍼레이터 파라미터(FROM) 목록을 포함한다. 최대 피치는 특별한 다중샘플이 사용된 최대 악기 디지털 인터페이스(MIDI) 키 값, 악기 디지털 인터페이스(MIDI) "음조 온(Note On)" 명령의 일부분과 일치한다. 자연적인 피치는 저장된 샘플이 기록된 악기 디지털 인터페이스(MIDI) 키 값이다. 음조의 피치 시프트는 요구되는 악기 디지털 인터페이스(MIDI) 키 값과 자연적인 피치 값 사이의 차이에 의해 결정된다. 오퍼레이터 수는 개체 오퍼레이터 또는 음조로부터 결합된 샘플의 수를 규정짓는다. 포락선(envelope) 스케일 계수는 포락선 상태 장치(미도시)가 피치에서의 변화를 가지는 일정한 포락선 시간을 적절히 판단하는지를 제어한다. 즉, 포락선 상태 장치는 음조의 자연적인 피치 값으로부터 악기 디지털 인터페이스(MIDI) 키 값의 변화에 기초하여 포락선 시간 파라미터를 적절히 판단한다. 오퍼레이터 롬(OROM)/효과 롬(EROM) 목록은 오퍼레이터 수에 의해 규정된 목록의 수반하는 결과와 일치하는 음조의 제1 오퍼레이터 롬 목록을 가리킨다. 오퍼레이터 롬(OROM)/효과 롬(EROM) 목록은 또한 오퍼레이터에 대한 포락선 파라미터를 가리킨다. 시간-변조 필터 오퍼레이터 파라미터(FROM) 목록은 음조와 일치하는 필터 정보 롬(미도시)에서 의 구조를 가리킨다.
오퍼레이터 정보는 특정한 개체 오퍼레이터 또는 다중샘플을 생성하기 위해 사용된 샘플인 정보를 포함한다. 오퍼레이터 정보 파라미터는: (1) 샘플 어드레스 롬 목록, (2) 자연적인 샘플 비율, (3) 1/4 피치 시프트 플래그와 (4) 진동 정보 롬 포인터를 포함한다. 샘플 어드레스 롬 목록은 시작 어드레스, 끝 어드레스와 루프 카운트를 포함하는 저장된 샘플과 일치하는 어드레스를 포함하는 샘플 어드레스 롬(미도시)에서 의 어드레스를 가리킨다. 자연적인 샘플 비율은 저장된 샘플의 원래의 샘플링 비율을 나타낸다. 자연적인 샘플 비율은 "음조 온(Note On)" 명령의 수신의 시간에서 피치 시프트 변조의 계산에 대해 사용된다. 1/4 피치 시프트 플래그는 피치 시프트 값이 반음 또는 1/4 반음에서 계산되는지를 나타낸다. 진동 정보 롬 포인터는 오퍼레이터에 대한 진동 파라미터를 적용하는 악기 디지털 인터페이스(MIDI) 해석기 롬(602)의 진동정보의 목록이다.
볼륨/표현 룩업 테이블은 악기 디지털 인터페이스(MIDI) 해석기(102)에 대한 채널 볼륨과 채널 표현 제어를 용이하게 하는 데이터를 포함한다.
악기 디지털 인터페이스(MIDI) 해석기 램(604)은 전달 선입선출(FIFO)에 대한 내부 오퍼레이터와 임시 저장의 상태에 따라는 정보를 저장한다. 악기 디지털 인터페이스(MIDI) 해석기 램(604)은 채널 정보 저장, 오퍼레이터 정보 저장, 피치 발생기 선입선출(FIFO) 저장과 효과 프로세서 선입선출(FIFO) 저장을 포함한다.
채널 정보 저장은 특별한 악기 디지털 인터페이스(MIDI) 채널에 속하는 정보를 저장하기 위한 악기 디지털 인터페이스(MIDI) 해석기(102)에 할당된다. 예를 들어, 16-채널 웨이브테이블 신디사이저 장치(100)에서, 채널 정보 저장은 각 채널에 대한 16개의 정보를 포함한다. 채널 정보 저장 요소는 특별한 악기 디지털 인터페이스(MIDI) 채널에 대한 악기를 할당하는 채널 악기 할당, 악기 디지털 인터페이스(MIDI) 채널 강제 명령에 의해 유도된 음조에 대한 포락선 발생기에 의해 더해진 전음(tremolo) 중에서의 변화에 대한 채널 강제 값, 악기 디지털 인터페이스(MIDI) 피치 대역 변화 명령에 의해 유되된 위상 델타 계산 동안 피치 발생기(104)에 의한 용법에 대한 피치 대역 값과 허용된 피치 대역 값의 범위의 한계를 규정짓는 피치 대역 감도를 포함하는 파라미터를 저장한다. 채널 정보 저장 요소는 또한 피치 발생기(104)의 위상 델타 계산에서 음조의 조율에 대한 좋은(fine) 조율값과 조잡한(coarse) 조율값, 팬 제어기 변화 명령에 의해 유도된 효과 프로세서(108)의 팬 발생기에 의한 용법에 대한 팬 값과 채널에서 감소하는 진동 중에서 제어하는 피치 발생기(104)에 의한 용법에 대한 변화 값을 포함하는 파라미터를 포함한다. 채널 정보 저장 요소는 또한 채널 볼륨 제어기 변환 명령에 의해 유도된 효과 프로세서(108)의 불륨 발생기에서의 볼륨의 셋팅에 대한 채널 볼륨 값과 채널 음조 제어기 변화 명령에 대한 응답에서의 채널의 볼륨을 제어하는 채널 음조 값을 포함하는 파라미터를 저장한다.
오퍼레이터 정보 저장은 오퍼레이터에 속하는 정보를 저장하기 위해 악기 디지털 인터페이스(MIDI) 해석기(102)에 할당된다. 오퍼레이터 정보 저장 요소는 오퍼레이터에 악기의 전류 할당을 규정짓는 악기 할당, 오퍼레이터가 "음조 온(Note On)" 명령을 수신에서 새로운 음조의 할당에 대해 유효한지를 나타내는 오퍼레이터에 사용된(operator-in-use) 의미(designation)와 "음조 오프(Note Off)" 명령이 특별한 음조-오퍼레이터 할당에 대해 발생하는지를 나타내는 오퍼레이터 오프 플래그를 포함하는 파라미터를 저장한다. 악기 할당은 같은 악기 디지털 인터페이스(MIDI) 채널에서 같은 악기로부터 이미 연주된 음조를 나타내는 "음조 온(Note On)" 명령의 수신에서 종결하기 위해 오퍼레이터를 결정하기 위해 악기 디지털 인터페이스(MIDI) 해석기(102)에 의해 사용된다. 오퍼레이터 오프 플래그는 새로운 "음조 온(Note On)" 명령이 수용될 수 있기 때문에 오퍼레이터의 종결이 계류중이 될지를 결정하기 위해 악기 디지털 인터페이스(MIDI) 해석기(102)에 의해 사용된다. 오퍼레이터 정보 저장 요소는 또한 악기 디지털 인터페이스(MIDI) 채널에 대한 오퍼레이터의 할당을 나타내는 악기 디지털 인터페이스(MIDI) 채널 파라미터, 주어진 음조와 일치하는 오퍼레이터의 수와 오퍼레이터가 연주되는 채널에 대한 "유지 제어기(Sustain Controller)" 명령의 수신을 나타내는 유지 플래그를 포함하는 파라미터를 저장한다. 유지 플래그는 유지가 해제되거나 오퍼레이터가 진폭으로 감소하지 않을 때까지 포락선의 감소 상태에서 포락선 상태 장치를 유지하기 위해 사용된다. 오퍼레이터 정보 저장 요소는 또한 오퍼레이터가 동작하는 채널에 대한 "연장 제어기(Sostenuto Controller)" 명령의 수신을 나타내는 연장 플래그, 음조 정보 저장 목록과 오퍼레이터 정보 저장 목록을 저장한다. 연장 플래그는 현재의 활성 오퍼레이터가 "연장 오프(Sostenuto Off)" 명령이 수신될 때까지 "음조 오프(Note Off)" 명령에 의해 종결되지 않는 것을 나타낸다. 음조 정보 저장 목록은 선정된 음조 정보에 대한 음조 저장을 나타낸다. 오퍼레이터 정보 저장 목록은 선정된 오퍼레이터 정보에 대한 오퍼레이터 저장을 나타낸다.
악기 디지털 인터페이스(MIDI) 해석기(102)로부터 피치 발생기(104)로 데이터 정보를 전달하는 선입선출(FIFO)(610)은 저장된 정보에 대한 하나 또는 그 이상의 요소를 포함하고, 피치 발생기(104)에 의한 용법에 대한 완전한 메시지를 조립하는 임시 버퍼이다. 상기 완전한 메시지는 메시지 타입 범위, 오퍼레이터가 할당될지 freed될지를 나타내는 비트를 사용하는 오퍼레이터, 오퍼레이터가 새로운 데이터로 갱신되도록 선정하는 오퍼레이터 수와 오퍼레이터의 악기 디지털 인터페이스(MIDI) 채널 할당을 나타내는 악기 디지털 인터페이스(MIDI) 채널 수를 포함한다. 유효한 메시지 타입은 오퍼레이터 데이터에서 어떤 변화에 대한 응답에서 오퍼레이터 정보의 갱신에 대한 갱신 오퍼레이터 정보, 변조 순회와 피치 대역 값을 사용하는 악기 디지털 인터페이스(MIDI) 명령에 대한 응답에서의 변조 순회 변화 타입과 피치 대역 변화 타입과 모든 소리 오프 메시지 타입을 포함한다. 메시지는 또한 피치 시프트 정보, 진동 선택 목록, 샘플 수집기(grabber) 선택 목록, 오퍼레이터에 대한 원래의 샘플 비율의 선정과 변조 순회 변화 파라미터를 포함한다. 샘플 비율 선정은 도 7에 도시된 바와 같이, 샘플 수집기(706)에서 새로운 진동 비율과 위상 델타 값을 계산하기 위해 사용된다. 변조 순회 변화는 변조 순회 제어기 변화 명령에 대한 응답에서 샘플 수집기에 대한 위상 델타 값을 계산하기 위해 사용된다.
악기 디지털 인터페이스(MIDI) 해석기(102)로부터 효과 프로세서(108)로 데이터 정보를 전달하는 선입선출(616)은 정보를 저장하고 효과 프로세서(108)에 의한 용법에 대한 완전한 메시지를 조립하는 하나 또는 그 이상의 요소를 포함하는 임시 버퍼이다. 완전한 메시지는 메시지 타입 범위, 연사자가 할당되는지 해산되는지를 나타내는 비트의 사용에서의 오퍼레이터, 포락선 상태 장치가 피치 시프트를 기초로 하는 주어진 오퍼레이터에 대해 시간 파라미터를 적절히 판단하는지를 나타내는 포락선 조립 비트, 오퍼레이터가 메시지를 받는지를 나타내는 오퍼레이터 수, 오퍼레이터의 악기 디지털 인터페이스(MIDI) 채널 할당을 나타내는 악기 디지털 인터페이스(MIDI) 채널 수와 음조 오프 또는 다른 명령이 발생하면, 주어진 오퍼레이터를 종결시킬지를 결정하는 오퍼레이터 오프 플래그를 포함한다. 유효한 메시지 타입은 채널 볼륨, 팬(pan) 변화, 반향음 깊이 변화, 코러스 깊이 변화, 유지(sustain) 변화, 연장(sostenuto) 변환, 프로그램 변화, 음조 온, 음조 오프, 피치 갱신, 모든 제어기 리셋, steal 오퍼레이터, 모든 음조 오프와 모든 소리 오프 메시지를 포함한다. 메시지는 또한 포락선 조합을 진행하는 포락선 상태 장치에 의해 사용된 피치 시프트 정보, 메시지 타입이 최대 진폭 값을 계산하기 위해 포락선 상태 장치에 의해 사용된 새로운 오퍼레이터의 할당을 요구할 때의 "음조 온 속도(Note On Velocity)"와 메시지 타입이 새로운 악기 디지털 인터페이스(MIDI) 팬 제어기 변화 명령일 때의 팬 값을 포함한다. 메시지는 추가로 새로운 악기 디지털 인터페이스(MIDI) 채널 볼륨 명령이 수신될 때의 채널 볼륨 정보, 새로운 코러스 깊이 명령이 수신될 때의 코러스 깊이 정보와 새로운 악기 디지털 인터페이스(MIDI) 반향음 명령이 수신될 때의 반향음 깊이 정보를 포함한다. 메시지에서의 추가적인 정보는 필터 상태 장치(미도시)에 의한 용법에 대한 필터 정보와 포락선 상태 장치에 의한 용법에 대한 포락선 정보에 대한 목록을 포함한다.
선입선출(620)은 "오퍼레이터 stealing" 상태를 결정하기 위해 사용된다. 각각의 프레임에서, 효과 프로세서(108)는 전체 소리에 가장 작은 기여자를 결정하고, 선입선출(620)을 통해 악기 디지털 인터페이스(MIDI) 해석기(102)로 가장 작은 기여자의 수를 보낸다. 모든 오퍼레이터가 할당되는 동안 새로운 "음조 온(Note On)" 명령이 수신되면, 악기 디지털 인터페이스(MIDI) 해석기(102)는 새로운 음조를 할당하기 위해 하나의 오퍼레이터 또는 필요하다면 다중 프레임에서 다중 오퍼레이터를 steal 한다. 악기 디지털 인터페이스(MIDI) 해석기(102)가 오퍼레이터를 훔칠 때, 메시지는 선입선출(616)을 통해 상태의 효과 프로세서(108)을 알리기 위해 보내진다.
다른 실시예에서, 효과 프로세서(108)는 음조의 볼륨, 오퍼레이터의 포락선, 다른 오퍼레이터의 이득과 비교된 오퍼레이터의 관계 이득, 모든 다른 악기 또는 소리와 간련된 악기의 소리의 세기와 오퍼레이터의 표현을 포함하는 하나 또는 그 이상의 파라미터의 해석을 통해 음조에 대한 오퍼레이터의 기여도를 결정한다. 표현은 음조의 볼륨과 비교할 수 있지만, 정적 소리의 세기보다 전음(tremolo)을 포함하는 음조의 동적인 작용에 더 관계가 있다. 같은 실시예에서, 효과 프로세서(108)는 음조의 볼륨의 모니터링(monitoring), 오퍼레이터의 포락선과 다른 오퍼레이터의 이득과 비교된 오퍼레이터의 관계이득에 의해 음조의 기여도를 평가한다. 효과 프로세서(108)는 샘플링 주파수에서 각 주기에 대한 64 오퍼레이터의 기여도를 평가하고, 악기 디지털 인터페이스(MIDI) 해석기(102)에 전달하는 선입선출(620)에 기여(contribution) 값을 쓴다. 악기 디지털 인터페이스(MIDI) 해석기(102)는 가장 작은 기여 오퍼레이터를 종결하고, 새로운 오퍼레이터를 활성화 한다.
도 7에 대해서, 로우(raw) 샘플이 샘플 롬(106)으로부터 읽혀지고, 진행되고, 효과 프로세서(108)에 보내지는 비율을 결정하는 피치 발생기(104)를 보인 개략적인 블록도이다. 여기서는 출력 데이터 비율이 64 샘플이고, 각각 44.1 KHz 프레임에서, 오퍼레이터마다 하나의 샘플이다. 64 오퍼레이터에 대해 64 샘플은 본질적으로 병렬로 진행된다. 각 음성 음조는 일반적으로 두 개의 오퍼레이터, 사실상 두 개의 웨이브테이블 엔진이 두 개의 샘플로 동시에 독립적으로 진행하므로 동시에 진행되는 고주파수 대역 오퍼레이터와 저주파수 대역 오퍼레이터로 코딩된다.
피치 발생기(104)는 세 개의 1차 계산 엔진: 진동 상태 장치(702), 샘플 수집기(704)와 샘플 비율 변환기(706)를 포함한다. 진동 상태 장치(702)와 피치 발생기 데이터 엔진(612)은 상호 연결되고, 제어 정보와 데이터를 서로 전달한다. 진동이 선택되면, 진동 상태 장치(702)가 샘플 롬(106)으로부터 로우(raw) 샘플이 읽혀지기 전에 작은 양에 의해 피치 위상이 수정된다. 진동 상태 장치(702)는 또한 피치 발생기 롬 데이터 엔진(708)을 통해 피치 발생기 롬(707)으로부터 데이터를 수신한다. 피치 발생기 데이터 엔진(612)과 피치 발생기 롬 데이터 엔진(708)은 데이터 저장의 액세스를 제어하는 제어기 또는 상태 장치이다.
샘플 수집기(704)와 피치 발생기 데이터 엔진(612)은 데이터를 교환하고 신호를 제어하기 위해 상호 연결된다. 샘플 수집기(704)는 샘플 롬(106)으로부터 로우(raw) 샘플 데이터와 피치 발생기 롬(707)으로부터 데이터를 수신한다. 샘플 수집기(704)는 선입선출(710)을 통해 샘플 비율 변환기(706)에 데이터를 전달한다. 샘플 수집기(704)는 피치 발생기 램(608)으로부터 현재의 샘플 롬 어드레스를 읽고, 다음에 기술된 방법에서 진동 상태 장치(702)에 의해 결정되는 수정된 위상 델타를 더하고, 새로운 샘플이 읽혀지는지를 결정한다. 이러한 결정은 위상 델타 덧셈의 결과에 따라서 만들어진다. 위상 델타 덧셈이 증가된 어드레스의 정수 부분을 야기하면, 샘플 수집기(704)는 다음 샘플을 읽고 이전의 12개의 샘플과 예를 들어, 12-딥(deep) 선입선출에 대해 가장 새로운 샘플을 유지하는 피치 발생 선입선출(710)의 적당한 선입선출에 샘플을 쓴다.
샘플 비율 변환기(706)는 샘플 롬(106)으로부터 획득된 펄스 코드 변조(PCM) 파형 데이터이다. 저장된 펄스 코드 변조(PCM) 파형은 저주파수 또는 고주파수 요소를 포함하는지를 샘플의 주파수 목록에 기초로 하여 가장 낮은 가능한 비율에서 샘플링 된다. 보통의 선형 보간법 기술은 신호를 알맞게 재생하는 석을 실패한다. 음향 신호의 재생을 충분히 개선하기 위해, 샘플 비율 변환기(706)는 256의 비율에 의해 오버샘플링된 12-탭(tap) 보간법을 실행한다. 도 8은 알맞은 12-탭(tap) 보간법 필터의 주파수 응답을 도시한 그래프이다.
샘플 비율 변환기(706)는 피치 발생기 선입선출(710)을 통해서 샘플 수집기(704)에 연결되고, 또한 샘플 비율 변환기 필터 롬(712)으로부터 데이터를 수신한다. 샘플 비율 변환기(706)는 샘플 비율 변환기 출력 데이터 버퍼(714)와 효과 프로세서 데이터 엔진(618)을 통해 효과 프로세서 램(614)에 데이터를 보낸다. 샘플 비율 변환기(706)는 프레임(예를 들어, 44.1 KHz)마다 피치 발생기 선입선출(710)의 각 선입선출을 읽고, 선정된 프레임 비율(여기서는 44.1 KHz)에 샘플을 삽입하기 위해 피치 발생기 선입선출(710)에서 12 개의 샘플에 샘플 비율 변환 오퍼레이션을 형성한다. 삽입된 샘플은 효과 프로세서(108)에 의해 수반하는 진행에 대해 효과 프로세서 램(614)에 저장된다.
진동 상태 장치(702)는 음조가 연주되는 동안 음조에 진동 또는 피치 변화 효과를 첨부한다. 음악가는 소리에 풍부를 첨부하기 위해 피치 또는 강도에서 작은 준-주기적인 변화(quasi-periodic variation)를 종종 만든다. 피치에서의 작은 변화는 진동이라고 부른다. 강도에서의 작은 변화는 전음이라고 부른다. 어떤 악기, 예를 들어 트럼펫은 자연스럽게 진동을 포함한다. 변조 순환(modulation wheel)(미도시)dms 또한 악기의 진동 깊이를 제어한다. 진동의 두 개의 타입은 도시된 실시예에서 실행된다. 첫 번째 타입 진동은 악기의 초기 피치 시프트로써 실행된다. 피치로써의 진동 결과는 복수의 주기에 결정된다. 어떤 수단에서, 진동에서의 결정된 피치 시프팅은 저장된 샘플에 기록된다. 진동의 두 번째 타입은 선택된 지연 후에 피치 변화를 생성하기 시작하는 피치 발생기 롬(707)의 진동 부분에서 저장된 파라미터를 사용하여 실행된다. 줄어든 피치 시프트의 양, 시작 시간과 끝나는 시간은 피치 발생기 롬(707)의 진동 부분에 저장된다. 같은 실시예에서, 자연적인 샘플 피치에 진동인 첨부되는 비율을 제어하는 파형은 악기 디지털 인터페이스(MIDI) 해석기 롬(602)에서 진동 정보 안에 진동 룩업 테이블에 저장된다.
샘플 수집기(704)는 샘플 롬(106)에서 현재의 어드레스를 증가시키기 위해 계산된 위상 델타 값을 사용하고, 새로운 샘플이 샘플 롬(106)으로부터 읽혀지고 피치 발생기 선입선출(710)에 써지는지를 결정한다. 도 9는 샘플 수집기(704)의 동작을 도시한 순서도이다. 새로운 프레임이 시작될 때(902), 샘플 수집기(704)는 피치 발생기 롬(608)으로부터, 샘플 어드레스 플래그(SAF) 값을 읽는다(904). 샘플 어드레스 플래그(SAF) 값은 새로운 샘플이 이전의 프레임 어드레스의 증가에 기인하여 읽혀지는지를 샘플 수집기(704)에 알린다. 샘플 어드레스 플래그(SAF) 값이 제로이면, 샘플 수집기(704)는 제2 위상 진행(940)으로 점프한다. 샘플 어드레스 플래그(SAF) 값이 제로가 아니면, 샘플 수집기(704)는 샘플에 포인터로써 현재의 어드레스를 사용하는 샘플 롬(106)으로부터 다음 샘플을 읽고, 피치 발생기 선입선출(710)에 샘플을 쓴다(906). 샘플 수집기(704)는 단지 롬/램 대역폭 한계에 기인하여 오퍼레이터마다의 프레임마다 두 개의 샘플로 움직인다. 샘플이 움직인 후에, 샘플 어드레스의 정수부분은 증가되고(908), 피치 발생기 램(608)에 다시 쓰여진다.
일단 샘플이 움직이면, 샘플 수집기(704)는 샘플 롬(106)에서 어드레스를 증가시키고(910), 필요하다면, 다음 프레임에 대한 샘플 어드레스 플래그(SAF)를 셋 한다(912). 오퍼레이터에 대한 위상 델타는 진동 상태 장치(702)가 위상 델타에 어떤 변경을 형성한 후에 피치 발생기 램(608)으로부터 읽혀지고, 현재 샘플 어드레스를 더한다(916). 위상 델타가 적어도 하나의 정수 값에 의해 증가되기 위해 어드레스를 야기하면, 샘플 어드레스 플래그(SAF)는 제로가 아닌 값을 포함하고, 다음 프레임 동안, 새로운 샘플이 샘플 롬(106)으로부터 피치 발생기 선입선출(710)로 복사된다. 증가된 정수 어드레스는 이 시간에 저장되지 않는다. 샘플 수집기(704)는 샘플이 샘플 롬(106)으로부터 피치 발생기 선입선출(710)로 움직인 후에 다음 프레임 동안 어드레스의 정수 부분을 증가시키고, 새로운 값은 피치 발생기 램(608)에 다시 저장된다.
샘플 비율 변환기(706)는 피치 발생기 선입선출(710)에서 각 오퍼레이터에 대한 데이터를 수신하고, 원래의 샘플 비율을 정의된 비율, 예를 들어 44.1 KHz로 변환하기 위해 데이터에 대한 필터링 동작을 형성한다. 각 클럭 주기 동안, 샘플 비율 변환기(706)는 피치 발생기 선입선출(710)로부터 샘플을 읽고, 샘플 비율 변환기 필터 롬(712)로부터 필터 계수를 읽고, 필터 계수에 의해 샘플을 곱한다. 이러한 곱셈 결과는 누산기(미도시)로부터 샘플 비율 변환기(706) 안으로 움직이고, 샘플 비율 변환기(706)의 출력 버퍼(미도시)에 움직이고, 누산기는 클리어 된다. 샘플 비율 변환기(706)는 모든 피치 발생기 선입선출(710)(예를 들어, 64 개의 선입선출)이 진행될 때까지 이러한 과정을 반복한다.
같은 실시예에서, 필터 계수는 오퍼레이터 다상(polyphase) 값에 의해 결정된다. 샘플 비율 변환기 필터 롬(712)는 12-탭(tap) 필터 계수의 256 셋으로써 편성된다. 샘플 수집기(704) 다상은 오퍼레이터 샘플 어드레스의 분수 부분의 가장 중요한 8 비트에 상당하는 8-비트 값이다. 오퍼레이터 샘플 어드레스는 샘플 비율 변환기 필터 롬(712)에서 계수의 256 셋으로부터 계수의 셋을 선택하기 위한 목록으로써 사용된다.
피치 발생기 롬(707)은 샘플 어드레스 롬, 진동 디폴트 파라미터 저장과 진동 포락선 파라미터 저장을 포함하는 세 개의 데이터 구조를 포함한다. 샘플 어드레스 롬은 각각의 샘플에 대해 특별한 다중샘플에 대한 첫 번째 로우(raw) 샘플의 시작하는 어드레스 위치, 샘플 수집기(704)가 끝마치는 때를 결정하기 위해 사용되는 로우(raw) 샘플의 끝나는 어드레스와 샘플 루프가 진행되는 동안 끝나는 어드레스로부터 시작하는 어드레스로 거꾸로의 카운팅에 대한 루프 뺄셈 카운트를 포함한다.
진동 디폴트 파라미터 저장은 악기 디지털 인터페이스(MIDI) 해석기 램(604)에서 각 오퍼레이터 정보 저장과 일치하는 파라미터를 유지한다. 진동 디폴트 파라미터는 진동이 초기 피치 시프트인지 자연적인 진동인지를 나타내는 모드 플래그와 오퍼레이터로부터 더해지거나 빼진 피치 변화 중에서 나타나는 중요한 파라미터를 포함한다. 진동의 두 타입은 시간-분할 주기적인 진동 실행과 피치 램프 또는 피치 시프트 실행을 포함하여 실행된다. 진동 디폴트 파라미터는 진동이 진동의 두 개의 타입 모두에 대해 시작할 때를 나타내는 시작 시간을 포함한다. 진동 디폴트 파라미터는 또한 피치가 피치 시프트 진동 실행에 대해 자연적인 피치증가에 대한 시간-분할 주기적인 진동 실행 또는 비율에 대한 끝날 때를 나타내는 끝나는 시간조차 포함한다.
진동 포락선 파라미터 저장은 샘플 수집기(704)의 위상 델타 파라미터를 변경하는 진동 상태 장치(702)에 의한 용법에 대해 포락선 모양을 유지한다.
피치 발생기 램(608)은 각각 진동 상태 장치(702)와 샘플 수집기(704)에 의한 용법에 대한 변조와 진동 상태 장치 정보를 포함하는 램의 큰 블록이다. 진동 상태 장치 정보는 각 오퍼레이터에 대한 샘플 어드레스 값을 증가시키는 위상 델타 파라미터, 가장 최근의 위상 델타 파라미터를 유지하는 이전의 위상 델타와, 초기의 피치 시프트 진동을 실행하기 위해 오퍼레이터에 더하는 초기의 위상 델타를 유지하는 시작 위상 델타를 포함한다. 진동 상태 장치 정보는 또한 위상 델타를 계산하는 원래의 샘플 비율, 자연적인 진동 실행에 대한 최대 위상 델타를 규정하는 위상 깊이, 요구되는 키 값을 달성하기 위한 피치 시프트 중에서 표시하는 피치 시프트 반음과 피치 시프트 중요한 값을 포함한다. 진동 상태 장치 정보는 추가로 64개의 오퍼레이터 각각에 대한 진동 상태 장치의 현재 상태를 저장하는 진동 상태 파라미터, 진동이 시작하는 시작시간을 나타내는 64 주기 이상의 샘플링 주파수에서의 주기의 카운트를 저장하는 진동 카운트와 각 프레임마다 위상 델타에 더해지는 델타 값을 유지하는 진동 델타 파라미터를 포함한다. 진동 상태 장치 정보는 플래그를 사용하는 오퍼레이터, 동작이 발생하는 데이터인 악기 디지털 인터페이스(MIDI) 채널을 나타내는 악기 디지털 인터페이스(MIDI) 채널 확인과 악기 디지털 인터페이스(MIDI) 해석기 롬(602)의 샘플 수집기 정보와 진동 정보 목록을 포함한다.
변조 값은 악기 디지털 인터페이스(MIDI) 해석기 램(604)의 피치 발생기 선입선출에 악기 디지털 인터페이스(MIDI) 해석기(102)에 의해 쓰여진 채널 변조 값을 저장한다.
샘플 비율 변환기(706)는 피치 발생기 선입선출(710)에 샘플 롬(106)에서 샘플을 어드레싱 하는 현재의 샘플 어드레스를 저장하는 램과 피치 발생기 램(608)을 포함한다. 샘플 비율 변환기 램은 또한 각 오퍼레이터에 대한 샘플 어드레스의 분수 부분을 유지하는 다상 파라미터를 포함한다. 모든 샘플링 주파수 주기와 모든 오퍼레이터에 대해, 샘플 비율 변환기(706)는 다상 값을 샘플 롬(106)에 있는 정수 어드레스에 더하고, 각 프레임에 대한 위상 델타 값을 더하고, 다상 저장에서 분수 결과를 저장한다. 램은 또한 샘플 수집기(704)에 의해 계산된 샘플 어드레스와 원래의 샘플 어드레스 값 사이의 차이를 유지하는 샘플 진행 플래그를 유지한다. 다음의 프레임에서, 샘플 비율 변환기(706)는 샘플 롬(106)으로부터 피치 발생기 선입선출(710)로 움직이기 위해 샘플의 수를 결정하는, 샘플 진행 플래그를 읽는다. 앰은 또한 피치 발생기 선입선출(710)에서 가장 새로운 샘플의 위치의 샘플 비율 변환기(706)를 형성하는 선입선출 어드레스를 포함한다.
도 10은 피치 발생기 선입선출(710)의 구조를 보인 개략적인 블록도이다. 도시된 실시예에서, 피치 발생기 선입선출(710)은 64개의 오퍼레이터의 각 오퍼레이터에 대한 가장 최근의 이전의 8 개의 샘플을 유지한다. 피치 발생기 선입선출(710)은 각 버퍼가 128-비트 워드인 64개의 버퍼(1002,1004)로써 편성된다. 샘플 비율 변환기(706)는 각 프레임에서 형성된 768 리드를 가지는 클럭 주기마다 하나의 선입선출 워드를 읽는다. 샘플 수집기(704)는 128 워드의 최대치를 각 프레임 동안 피치 발생기 선입선출(710)에 쓴다. 따라서, 피치 발생기 선입선출(710)은 어드레스 디코더(1006,1008)의 두 개의 셋, 버퍼(1002)의 상위 절반에 대한 하나와 버퍼(1004)의 하위 절반에 대한 하나를 갖는다. 샘플 수집기(704)와 샘플 비율 변환기(706)는 항상 샘플 수집기(704)와 샘플 비율 변환기(706)의 버퍼 액세스가 서로 위상을 떠나서(out-of-phase) 마들어지기 때문에 어느 시간에스든지 버퍼(1002,1004)의 서로 다른 버퍼를 액세스한다.
버퍼(1002)의 동작 선입선출(0-31)의 첫 번째 위상은 32 개의 오퍼레이터의 진행에 대한 샘플 수집기(704)에 의해 쓰여진다. 또한 첫 번째 위상 동안, 샘플 비율 변환기(706)는 버퍼(1004)의 선입선출(32-63)로부터 읽는다. 두 번째 위상 동안, 샘플 수집기(704)는 버퍼(1004)의 선입선출(32-63)을 갱신하고, 샘플 비율 변환기(706)은 버퍼(1002)의 선입선출(0-31)로부터 읽는다. 버퍼 액세싱은 위상에 따라서 입력 어드레스를 멀티클렉스하는 어드레스 멀티플레서(1010,1012)와 위상에 따라서 샘플 비율 변환기(706)에 전달하기 위해 출력을 결정하는 출력 디코더(1014)에 의해 제어된다.
다시 도 7에 대해서는, 샘플 비율 변환기 출력 데이터 버퍼(714)는 효과 프로세서(108)에 피치 발생기(104)를 동기 시키기 위해 사용된 저장 램이다. 샘플 비율 변환기(706)는 프레임마다 64 개의 샘플의 비율에서 샘플 비율 변환기 출력 데이터 버퍼(714)에 데이터를 쓴다. 효과 프로세서(108)는 각 값이 진행될 때 그 값을 읽는다. 효과 프로세서(108)와 피치 발생기(104)는 각각에 의해 같은 비율에서 값이 읽혀지고 쓰여진다. 샘플 비율 변환기 출력 데이터 버퍼(714)는 하나는 프레임에서 피치 발생기(104)에 의해 쓰여지고 다른 하나는 다음 프레임의 시작에서 복사되는 두 개의 버퍼(미도시)를 포함한다. 두 번째 버퍼는 효과 프로세서(108)에 의해 읽혀진다. 이러한 방법에서, 데이터는 완전한 프레임에 대해 효과 프로세서(108)와 피치 발생기(104) 각각은 일정하게 유지된다.
도 11은 효과 프로세서(108)의 실시예를 보인 개략적인 블록도이다. 효과 프로세서(108)는 샘플 비율 변환기(708)로부터 샘플을 액세스하고 특별한 효과를 샘플로부터 발생된 음조에 더한다. 효과 프로세서(108)는 악기 디지털 인터페이스(MIDI) 명령을 실행하는 효과와 오퍼레이터 샘플을 높이는 효과를 포함하는 오퍼레이터의 샘플에 효과의 많은 타입을 더한다. 효과 프로세서(108)는 두 개의 주요한 하위 부분, 일반적인 악기 디지털 인터페이스(MIDI) 채널 중에서 효과를 진행하는 첫 번째 하위부분(1102)과 나누어진 악기 디지털 인터페이스(MIDI) 채널에서 발생하는 효과를 진행하는 두 번째 부분(1104)을 갖는 것으로 묘사된다. 첫 번째 하위부분(1102)과 두 번째 하위부분(1104) 효과 모두는 오퍼레이터의 기본에 의해 진행된다. 첫 번째 하위 부분(1102)과 두 번째 하위부분(1104)은 효과 프로세서 롬(1106)에서 유지된 데이터를 사용하는 효과를 진행한다.
첫 번째 하위부분(1102)은 모든 효과는 프레임 안에 각 오퍼레이터를 조정하기 위해 프레임마다 64번 진행되기 때문에 오퍼레이터에 기초로 하는 효과를 진행한다. 악기 디지털 인터페이스(MIDI) 채널 사이에 연결되는 효과는 임의의 노이즈 발생, 포락선 발생, 관계 이득과 오퍼레이터 향상에 대해 진행하는 시간-분할 필터를 포함한다. 두 번째 하위부분(1104)은 채널 볼륨, 팬 왼쪽과 팬 오른쪽, 코러스와 반향음을 포함하는 다중 악기 디지털 인터페이스(MIDI) 채널에서 생성된 효과를 진행한다. 두 번째 하위부분(1104)은 또한 진행에 대한 16 개의 악기 디지털 인터페이스(MIDI) 채널 파라미터를 사용하여, 프레임마다 64 번의 효과를 진행한다.
첫 번째 하위부분(1102)은 백색 노이즈 발생, 시간-분할 필터 진행과 포락선 발생을 포함하는 효과를 진행하는 상태 장치이다. 첫 번째 하위부분(1102) 노이즈 발생기는 시간-분할 필터에서 실행되고, 활성화될 때, 음조의 실행 동안 임의의 백색 노이즈를 발생한다. 백색 노이즈는 바닷가의 소리와 같은 효과를 생성하기 위해 사용된다. 같은 실시예에서, 첫 번째 하위부분(1102) 노이즈 발생기는 도 12에서 묘사된 선형 피드백 시프트 레지스터(LFSR)(1200)을 사용하여 실행된다. 선형 피드백 시프트 레지스터(LFSR)(1200)는 직렬 연결된 복수개의 플립플롭을 포함한다. 12 개의 직렬 연결된 플립플롭은 초기 값으로 초기화된 12-비트 임의의 수 레지스터(1202)를 형성한다. 직렬 연결된 플립플롭은 각 주기마다 한번씩 왼쪽으로 시프트 된다. 선형 피드백 시프트 레지스터(LFSR)(1200)는 높은-등급 비트(1204), 14-비트 중간 등급 레지스터(1206), 3-비트 하위 등급 레지스터(1208), 제1 배타적 오아게이트(EXOR)(1210)와 제2 배타적 오아게이트(EXOR)(1212)를 포함한다. 12-비트 임의의 수 레지스터(1202)는 높은-등급 비트(1204)와 중간 등급 레지스터(1206)의 가장-중요한 12 비트를 포함한다. 제1 배타적 오아게이트(1210)는 제1 입력 단자에 14-비트 중간 등급 레지스터(1206)의 최상위 비트를 수신하고, 제2 입력 단자에 높은-등급 비트(1204)를 수신하고, 높은-등급 비트(1204)에 전달된 배타적 오아게이트 결과를 생성한다. 제2 배타적 오아게이트(1212)는 제1 입력 단자에 3-비트 하위 등급 레지스터(1208)의 최상위 비트를 수신하고, 제2 입력 단자에 높은-등급 비트(1204)를 수신하고, 14-비트 중간 등급 레지스터(1202)의 최하위 비트가 전송된 배타적 오아게이트 결과를 생성한다.
도 13은, 상태-영역 필터를 사용하는 같은 실시예에서, 제1 하위부분(1102) 시간 분할 필터 진행이 실행된다. 도시된 상태-영역 필터는 일반적으로 저역통과 필터로써 사용된 제2-등급 무한 충격 응답(IIR) 필터이다. 시간-분할 필터는 음조 증가의 기간에 따라 저역 통과 필터의 차단 주파수보다 낮게 실행된다. 일반적으로, 음조가 유지되는 기간이 길어지면 길어질수록, 선명함은 고주파수 음조 정보가 더 작은 에너지를 갖기 때문에 더 잘 잃어버리고, 저주파수 목록과 비교해서 빠르게 흩어진다.
시간-분할 필터는 저주파수에서보다 고주파수에서 더 빠른 감소를 가지는 자연적인 소리이기 때문에 유익하다. 루핑 기술과 파형의 인공적인 레벨링을 사용하여 생성되는 감소하는 소리는 일반적으로 더 낮은 주파수 초과 시간에서 소리 신호의 필터링에 의해 더 사실적으로 재생된다. 루프는 전체 변화가 유지되는 동안 파형에서 더 일찍 유익하게 생성된다.
제 1 하위부분(1102) 포락선 발생기는 오퍼레이터에 대한 포락선을 생성한다. 도 14는 음조 신호에 적용된 대수 크기에 진폭 포락선 함수(1400)를 묘사한 그래프이다. 진폭 포락선 함수(1400)는 시작 단계(1402), 유지 단계(1404), 초기 부자연적인 감소 단계(1406), 자연적인 감소 단계(1408)와 해제 단계(1410)를 포함하는 다섯 단계를 갖는다. 시작 단계(1402)는 진폭이 제로 레벨에서 최대 규정된 레벨로 빠르게 증가하는 동안 짧은 기간을 갖는다. 시작 단계(1402) 다음에 오는 유지 단계(1404)는 제로 기간일 수 있는 선택된 짧은 기간 동안 진폭 상수를 유지한다. 유지 단계(1404) 다음에 오는 부자연적인 감소 단계(1406)는 샘플에 기록된 부자연적인 이득을 제어하기 위해 편승된다. 샘플은 전체-크기 진폭에서 기록되고 저장된다. 부자연적인 감소 단계(1406)는 적당한 악기를 사용하는 자연적인 레벨에 대한 진폭을 감소시킨다. 부자연적인 감소 단계(1406) 다음에 오는 자연적인 감소 단계(1408)는 전형적으로 진폭 포락선 함수(1400)의 모든 단계의 가장 긴 기간을 갖는다. 자연적인 감소 단계(1408) 동안, 음조 진폭은 서서히 활성 음악 신호의 방법으로 점점 작아진다. 제1 하위부분(1102) 상태 장치는 "음조 오프(Note Off)" 메시지가 수신되고 음조가 빠르게 종결되기 위해 강제할 때, 해제 단계(1410)로 들어간다. 해제 단계(1410) 동안, 진폭은 빠르게 현재 레벨에서 제로 레벨로 감소한다.
제 1 하위부분(1102) 포락선 발생기는 포락선 형식을 결정하기 위해 음조에 대한 규정된 키 속도 파라미터를 사용한다. 포락선의 진폭이 증가하고 형성된 음조 진폭이 더 크기 때문에, 더 큰 키 속도는 키의 더 힘껏 치는 것의 지시이다.
형성된 음조의 진폭은 제1 하위부분(1102) 관계 이득 동작에 더 많이 의존한다. 관계 이득은 계산되고 다른 오퍼레이터 포락선 정보를 가지는 효과 롬(EROM) 메모리에 저장된다. 관계 이득 파라미터는 악기의 관계 볼륨, 악기에 대한 음조의 관계 볼륨과 음조를 형성하기 위해 포함된 다른 오퍼레이터에 관계된 오퍼레이터에 대한 관계 볼륨의 결합이다.
제1 하위부분(1102)은 나누어진 관계 이득 멀티플리어를 사용하는 단일 상태 장치 안에서 동작의 진행에 기초로 하는 많은 다중 오퍼레이터를 형성한다. 따라서, 전체 제1 하위부분(1102) 상태 장치는 일반적인 멀티플리어를 시간-분할 한다.
일단 오퍼레이터 이득이 제1 하위부분(1102)에 의해 계산되면, 제2 하위부분(1104) 상태 장치는 개별적인 오퍼레이터 출력신호에서 채널-특정 효과를 진행한다. 채널-특정 효과는 채널 볼륨, 좌/우 팬, 코러스와 반향음을 포함한다. 따라서, 도 15에 관해서, 제2 하위부분(1104) 상태 장치는 채널 볼륨 상태 장치(1502), 팬 상태 장치(1504), 코러스 상태 장치(1506), 코러스 엔진(1508), 반향음 상태 장치(1510)와 반향음 엔진(1512)을 포함한다.
채널 볼륨 상태 장치(1502)는 진행되고, 먼저 다른 남겨진 효과가 관계 볼륨 파라미터를 사용하는 병렬로 계산되기 때문에 채널 볼륨 파라미터를 저장한다. 같은 실시예세서, 채널 볼륨은 다음의 식에 따라서 악기 디지털 인터페이스(MIDI) 채널 볼륨 명령의 선형 범위에서 관계 값에 의해 다중값을 사용하여 간단하게 계산된다:
여기서, 디폴트 '표현값'은 127과 같다.
볼륨 결정에 따라오는 채널 볼륨 상태 장치(1502)에 의해 형성된 제1 효과는 팬 상태 장치(1504)를 사용하는 팬 효과이다. 악기 디지털 인터페이스(MIDI) 팬 명령은 좌로 팬의 양을 열거하고, 리마인더(reminder)가 우로 팬의 양을 열거한다. 예를 들어, 0으로부터 127의 팬 범위에서, 64의 값은 중심에 있는 팬을 나타낸다. 도시된 실시예에서, 좌, 우 멀티플라이는 파워 상수를 유지하는 원래의 총계를 액세스하는 것보다 차라리 총계의 제곱근을 유지하는 룩업 테이블 값의 액세스에 의해 형성된다. "동등-파워(equal-power)" 팬 크기에 대한 식은 다음의 식에 의해 나타난다:
현재의 피승수는 팬값에 기초로 한 효과 프로세서 롬 팬 상수로부터 읽혀진다. 좌, 우 팬 값은 계산되고 출력 누산기에 보내진다. 주선율의 악기 채널에서 팬값은 수신된 값이 특정한 채널에 선택된 악기에 대한 디폴트 값을 바꾸는 것과 같이 독립적이다. 타진하는 채널에서 팬 값은 개별적인 타진하는 소리 각각에 대한 디폴트 값에 관계된다.
효과 프로세서(108)는 효과를 진행하기 위해 효과 프로세서 롬(1106)에 저장된 디폴트 파라미터의 몇몇 셋을 액세스한다. 효과 프로세서 롬(1106)은 채널 볼륨 상태 장치(1502), 팬 상태 장치(1504), 코러스 상태 장치(1506)와 반향음 상태 장치(1510)로 나뉜 롬이다. 효과 프로세서 롬(1106)에서 유지된 디폴트 파라미터는 시간-변화 필터 오퍼레이터 파라미터(FROM), 포락선 발생기 오퍼레이터 파라미터(EROM), 포락선 크기 파라미터, 코러스와 반향음 상수, 팬 피승수 상수, 전음 포락선 모양 상수와 키 속도 상수를 포함한다.
시간-변화 필터 오퍼레이터 파라미터(FROM)는 전형적으로 고주파수 정보를 더하거나 또는 빼는 것에 의해 악기의 음조에 더욱 자연스런 사실성을 더하기 위해 사용된 정보를 포함한다. 시간 변화 필터 오퍼레이터 파라미터(FROM)는 초기 주파수, 주파수 시프트 카운트, 필터 감소, 활성화 시작 시간, 감소 시간 카운트, 초기 속도 필터 시프트 카운트, 피치 시프트 필터 시프트 카운트와 Q 값을 포함한다. 주파수 시프트 값과 필터 감소는 주파수 차단 감소의 비율을 제어한다. 활성화 시작 시간은 음조가 활성화 된 후에 필터 상태 장치(미도시)가 데이터 필터링 시작을 기다리는 기간을 결정한다. 감소 시간 카운트는 일정한 주파수에서 멈추기 전에 필터가 계속 감소하는 기간을 제어한다. 초기 속도 필터 시프트 카운트(IVFSC)는 필터 차단 주파수가 음조의 초기 속도에 기초로 하여 조절되는 양을 제어한다. 같은 실시예에서, 초기 속도 필터 시프트 카운트(IVFSC)는 다음의 식에 따라서 초기 차단 주파수를 조절한다:
피치 시프트 필터 시프트 카운터(PSFSC)는 필터 차단 주파수가 음조의 초기 피치 시프트에 기초로 하여 조절되는 양을 제어한다. 같은 실시예에서, 피치 시프트 필터 시프트 카운트(PSFSC)는 다음 식에 따라서 초기 차단 주파수를 조절한다:
Q 시프트 파라미터는 필터 차단의 모양을 결정하고 마지막 출력 신호를 계산하기 전에 고역 통과 계수를 시프트 하는 필터 계산에서 사용된다.
포락선 발생기 오퍼레이터 파라미터(EROM)는 각 오퍼레이터가 포락선의 각 상태에서 남겨지는 시간의 길이와 각 오퍼레이터 단계에 대한 진폭 델타를 규정한다. 포락선 발생기 오퍼레이터 파라미터(EROM)는 시작 타입, 시작 델타, 시간 유지, 전음 깊이, 부자연적인 감소 델타, 부자연적인 감소 시간 카운트, 자연적인 감소 델타, 해제 델타, 오퍼레이터 이득과 노이즈 이득을 포함한다. 시작 타입은 시작의 타입을 결정한다. 같은 실시예에서, 시작 타입은 S자 모양/이중의 과장적인 시작, 기본적인 선형 기울기 시작과 반전 지수적 시작 중에 하나가 선택된다. 시작 델타는 시작이 진폭에서 증가할 때의 비율을 결정한다. 시간 유지는 유지 단계(1404)의 기간을 결정한다. 전음 깊이는 전음 효과를 생성하기 위해 포락선을 더하기 위해 진폭 변조의 양을 결정한다. 부자연적인 감소 델타는 포락선 진폭이 부자연적인 감소 단계(1406) 동안 감소되는 양을 결정한다. 자연적인 감소 델타는 포락선 진폭이 자연적인 감소 단계(1408) 동안 감소된 양을 셋 한다. 해제 델타는 해제 단계(1410) 동안 포락선 감소의 비율을 셋 한다. 오퍼레이터 이득은 최대 포락선 진폭 값을 결정하기 위해 사용된다. 노이즈 이득은 오퍼레이터에 더해지는 백색 노이즈의 양을 결정한다.
포락선 크기 파라미터는 두 개의 파라미터, 시간 계수와 비율 계수를 포함한다. 시간 계수와 비율 계수는 샘플이 원래의 샘플링의 시간으로부터 피치-시프트되는 양에 기초로 하여 저장된 포락선 발생기 오퍼레이터 파라미터(EROM) 파라미터를 변경하기 위해 사용된다. 피치가 시프트 다운되면, 시간 계수는 비율 크기가 감소 비율을 감소시키는 동안 시간 상수를 증가시키기 위해 축소된다. 반대로, 피치가 높게 시프트되면, 시간 계수는 비율 크기가 감소 비율을 증가시키는 동안 시간 상수를 감소 시키기 위해 축소된다.
전음 포락선 모양 상수는 음조의 유지 단계 동안 전음을 발생시기기 위해 포락선 상태 장치(미도시)에 의해 사용된다. 전음 포락선 모양 상수는 전음 파형의 모양으로부터 복수의 상수를 포함한다.
티 속도 상수는 최대 진폭 식의 일부분으로써 포락선 발생기에 의해 사용된다. 키 속도 값은 상수 피승수를 정정하기 위해 포락선 발생기 룩업 롬에 색인을 단다.
효과 프로세서 램(614)은 효과 프로세서(108)에 의해 사용된 스크래치패드(scratchpad) 램이고, 시간-변화 필터 파라미터, 포락선 발생기 파라미터, 오포레이터 제어 파라미터, 채널 제어 파라미터, 반향음 버퍼와 코러스 램을 포함한다. 시간 변와 필터 파라미터는 필터 상태, 차단 주파수, 차단 주파수 시프트 값, 필터 시간 카운트, 필터 델타, 피치 시프트 반음 파라미터, 제1 지연(D1), 제2 지연(D2)과 시간-변화 필터 롬 목록을 포함한다. 필터 상태는 각 오퍼레이터에 대한 필터 상태 장치의 현재의 상태를 유지한다. 차단 주파수는 필터의 초기 차단 주파수이다. 차단 주파수 시프트 값은 지수적 감소의 근사치에서의 사용에 대한 지수이다. 필터 시간 카운트는 데이터를 바꾸기 위해 적용되는 기간을 제어한다. 필터 델타는 지수적인 감소 근사치에서 적용된 차단 주파수 초과 시간에서의 변화이다. 피치 시프트 반음 파라미터는 원래의 샘플이 요구되는 음조를 적용하기 위해 시프트되는 피치 시프트의 양이다. 제1 지연(D1)과 제2 지연(D2)은 무한 충격 응답(IIR) 필터의 제1, 제2 지연 소자를 나타낸다. 시간-변화 필터 롬 목록은 오퍼레이터에 대한 시간-변화 필터 롬에서의 목록이다.
포락선 발생기 파라미터는 포락선의 각 단계에 대한 시간의 카운트와 데이터에 대한 진폭 멀티플리어를 계산하기 위한 포락선 발생기 상태 장치에 의해 사용된다. 포락선 발생기 파라미터 램은 포락선 상태, 포락선 시프트 값, 포락선 델타, 포락선 시간 카운트, 포락선 멀티플리어, 최대 포락선 진폭, 시작 타입과 포락선 크기 파라미터를 포함한다. 포락선 상태는 각 오퍼레이터에 대한 포락선 상태 장치의 현재 상태를 나타낸다. 포락선 시프트 값은 포락선 진폭 계산에 대한 현재 시프트 값을 포함한다. 포락선 델타는 현재 포락선 감소 진폭델타를 포함하고, 포락선 상태 장치의 상태가 변할 때, 갱신된다. 포락선 시간 카운트는 0으로 카운트 다운하는 카운트-다운 값을 유지하고, 제로 카운트에서 상태가 변하기 위해 포락선 상태 장치를 강제한다. 포락선 시간 카운트는 상태 장치의 상태가 변할 때 쓰여지고, 각 프레임마다 읽혀지고 쓰여진다. 포락선 시간 카운트는 64로 바우어진 샘플링 주파수의 주기를 갖는 각 프레임에 대해 쓰여진다. 포락선 프레임 카운트는 각 프레임마다 쓰여지지만, 모든 프레임에서 변경되지는 않는다. 포락선 멀티플리어는 포락선을 발생하기 위해 입력되는 데이터의 증가에 대한 진폭 값을 포함한다. 최대 포락선 진폭은 새로운 오퍼레이터가 할당되고 키 속도, 시작 타입과 시작 델타로부터 구동될 때, 계산된다. 시작 타입은 새로운 오퍼레이터가 할당될 때, 포락선 롬에서 효과 프로세서 램(614)에 복사된다. 포락선 크기 플래그는 시간과 비율 상수가 포락선 롬에서 효과 프로세서 램(614)에 복사되는 동안 감소되는지를 포락선 상태 장치에 알린다.
오퍼레이터 제어 파라미터는 오퍼레이터 진행에 대한 각 오퍼레이터와 관계된 데이터를 유지하기 위해 효과 프로세서(108)에 의해 사용된다. 오퍼레이터 제어 파라미터는 오퍼레이터 사용 플래그, 오퍼레이터 오프 플래그, 오퍼레이터 오프 소스테누토(sostenuto) 플래그, 미디 채널 번호, 키 온 속도, 오퍼레이터 이득, 노이즈 이득 오퍼레이터 진폭, 반향음 깊이, 팬 값, 코러스 이득과 반향음 발생기 오퍼레이터 파라미터(EROM) 목록을 포함한다. 오퍼레이터 시작 플래그는 오퍼레이터가 소리를 발생하는지를 정의한다. 오퍼레이터 오프 플래그는 음조 오프 메시지가 오퍼레이터가 생성되는 특별한 음조에 대해 수신될 때 셋 된다. 오퍼레이터 오프 소스테누토 플래그는 오퍼레이터가 활성화되고, 소스테누토 온 명령이 특별한 미디 채널에 대해 수신될 때 셋 된다. 오퍼레이터 오프 소스테누토 플래그는 소스테누토 오프 명령이 수신될 때까지 유지 상태에서 오퍼레이터를 강제한다. 미디 채널 번호는 오퍼레이터의 미디 채널을 포함한다. 키 온 속도는 음조 온 명령의 부분인 속도 값이고, 여러 가지 파라미터를 제어하기 위해 포락선 상태 장치에 의해 사용된다. 오퍼레이터 이득은 오퍼레이터의 관계이득이고, 음조 메시지가 수신되고, 오퍼레이터가 할당 될 때, 효과 프로세서 선입선출에 미디 해석기(102)에 의해 쓰여진다. 노이즈 이득은 오퍼레이터와 연합되고, 음조 온 메시지가 수신되고, 오퍼레이터가 할당 될 때, 미디 해석기(102)에 의해 효과 프로세서 선입선출에 쓰여진다. 오퍼레이터 진폭은 데이터 경로를 통해 오퍼레이터가 움직일 때 오퍼레이터에 적용된 감쇠이다. 반향음 깊이는 반향음 제어기 변화가 발생할 때, 미디 해석기(102)에 의해 피치 발생기 선입선출에 쓰여진다. 팬 값은 팬 상수의 목록을 만들기 위해 사용되고, 메시지가 미디 해석기(102)에서 피치 발생기 선입선출로 수신될 때 쓰여진다. 팬 상태 장치(1504)는 좌우 채널 출력에 전송되는 출력신호의 비율을 결정하기 위해 팬 값을 사용한다. 코러스 이득은 코러스 이득 변화를 야기하는 메시지가 발생할 때 쓰여지고, 코러스 상태 장치(1506)에 의해 각 프레임에서 읽혀진다. 반향음 발생기 오퍼레이터 파라미터(EROM) 목록은 반향음 발생기 오퍼레이터 파라미터 롬에 목록을 만들기 위해 반향음 상태 장치에 의해 사용된다.
채널 제어 파라미터는 효과 프로세서(108)에 의한 용법에 대한 미디 채널에 정보 특성을 적용한다. 채널 제어 파라미터는 채널 볼륨, 유지 플래그와 소스테누토 패달 플래그를 포함한다. 채널 볼륨은 채널 볼륨 제어기 변화가 발생할 때 피치 발생기 선입선출에 미디 해석기(102)에 의해 쓰여진다. 유지 플래그는 유지 패달 제어는 명령이 미디 해석기(102)에 의해 수신될 때 셋 된다. 포락선 상태 장치는 음조 오프 메시지가 발생할 때, 해제 상태에 들어가기 위해 오퍼레이터를 허용하는 지를 결정하기 위해 유지 플래그를 읽는다. 소스테누토 패달 플래그는 소스테누토 패달 제어기 온 명령이 미디 해석기(102)에 의해 수신될 때 셋 된다. 포락선 상태 장치는 음조 오프 명령이 발생할 때 해제 상태에 들어가기 위해 오퍼레이터를 허용하는지를 결정하기 위해 소스테누토 패달 플래그를 읽는다. 오퍼레이터 오프 소스테누토 플래그가 셋 되면, 포락선 상태 장치는 플래그가 리셋 될 때까지 자연적인 감소 상태에서 오포레이터를 유지한다.
도 15와 결합된 도 16은 코러스 상태 장치(1506)의 요소를 도시한 개략적인 블록도이다. 팬은 결정되고 코러스는 진행된다. 먼저, 코러스된 오퍼레이터 샘플의 양은 코러스 깊이 파라미터에 기초로 하여 각 채널에 대해 결정된다. 코러스 깊이 파라미터는 미디 명령을 통해서 전달되고, 멀티플리어는 코러스 알고리즘에 전달하기 위해 신호의 비율을 결정하기 위해 사용된다. 일단 코러스 비율이 결정되면, 오디오 신호는 코러스에 대해 진행된다. 코러스 상태 장치(1506)는 좌측 채널에 대한 무한 충격 응답(IIR) 모든 대역 통과 필터(1602)와 우측 채널에 대한 무한 충격 응답(IIR) 모든 대역 통과 필터(1604)를 포함한다. 무한 충격 응답(IIR) 모든 대역 통과 필터(1602,1604)는 각각 다른 저주파수 발진기(LFO)를 가지고 각각 동작하는 두 개의 직렬 연결된 모든 대역 무한 충격 응답(IIR) 필터를 포함한다. 저주파수 발진기(LFO)의 차단 주파수는 사운드 신호의 위상을 퍼뜨리기 위해 코러스 상태 장치(1506)가 동작하기 때문에 소사 된다. 두 개의 무한 충격 응답(IIR) 필터(1602,1604)는 각각 두 개의 무한 충격 응답(IIR) 필터를 포함한다. 모든 네 개의 무한 충격 응답(IIR) 필터는 실질적으로 모든 시간에서 네 개의 무한 충격 응답(IIR) 필터가 다른 차단 주파수를 가지므로 초과 시간에서 소사되는 차단 주파수를 갖는다.
도 15와 연합된 도 17은 반향음 상태 장치(1510)의 요소를 도시한 개략적인 블록도이다. 반향음 상태 장치(1510)는 반향음 프로세서에 보내기 위해 채널 샘플의 비율을 결정하기 위해 반향음 깊이 미디 제어 파라미터를 사용한다. 반향음 계산은 신호의 저역 통과 필터링과 다수의 증가적으로-지연되고, 필터링되고, 조절된 필터링 된 신호의 복사를 가지는 다수의 필터링된 신호의 합계를 포함한다. 반향음 상태 장치(1510)의 출력은 효과 프로세서(108)에서 다른 상태 장치로부터 출력신호를 더하는 출력 누산기(미도시)에 보내진다.
반향음 상태 장치(1510)는 신호에서의 다수의 지연의 포함과 다중-에코 사운드 신호를 형성하는 신호가 지연되고 지연되지 않은 누산에 의해 반향 효과를 생성하는 디지털 반사기이다. 다수의 지연은 다수의 탭을 가지는 지연 라인 메모리(1702)에 의해 적용된다. 도시된 실시예에서, 지연 라인 메모리(1702)는 12 비트 또는 14 비트의 워드 길이를 갖는 길이에서의 805 워드인 선입선출(FIFO) 버퍼로써 실행된다. 그러나, 알맞은 버퍼 길이와 워드 길이는 지연 라인 메모리(1702)에 의해 알맞게 된다. 같은 실시예에서, 지연 라인 메모리(1702)는 단청(monaural) 반향 결정에 의해 77,388,644와 779 워드에서의 탭을 포함한다. 다른 실시예에서, 탭은 다른 알맞은 워드 위치에 위치한다. 어떤 실시예에서, 지연 탭 배치는 프로그램된다. 77,388,644와 779 워드에서의 탭에 대한 지연 신호와 지연 라인 메모리(1702)의 끝에서의 지연 신호는 각각 제1 등급 저역 통과 필터(1710,1712,1714,1716,1718)에 적용된다. 제1 등급 저역 통과 필터(1710,1712,1714,1716,1718)로부터 필터링되고 지연된 신호는 각각 멀티플리어(1720,1722,1724,1726,1728)에서 각각의 이득 계수(G1,G2,G3,G4)에 의해 증가된다. 도시된 실시예에서, 이득 계수(G1,G2,G3,G4)는 프로그램될 수 있다.
멀티플리어(1720,1722,1724,1726,1728)로부터 지연되고, 필터링 되고, 증가된 신호는 단청 반향 결과를 형성하기 위해 덧셈기(1730)에서 누산된다. 멀티플리어(1728)의 출력단자에서 지연 라인 메모리(1702)의 끝에서 필터링되고 지연된 신호는 좌측 채널 반향 신호를 생성하기 의해 덧셈기(1732)를 사용하는 덧셈기(1730)의 출력 단자에서 단청 반향 결과를 더한다. 멀티플리어(1728)의 출력 단자에서 지연 라인 메모리(1702)의 끝에서 필터링되고 지연된 신호는 우측 채널 반향 신호를 생성하기 위해 덧셈기(1734)를 사용하는 덧셈기(1730)의 출력단자에서 단청 반향 결과로부터 빼진다.
덧셈기(1730)에 의해 생성된 단청 반향 결과 는 피드백 계수(F)에 의해 단청 반향 결과를 증가시키는 멀티플리어(1736)에 적용된다. 피드백 계수(F)는 비록 다른 피드백 계수 값이 알맞을 지라도, 도시된 실시예에서 1/8이다. 멀티플리어(1736)에 의해 생성된 결과는 덧셈기(1708)에서 반향음 상태 장치(1510)에 입력 신호에 일치하는 신호를 더하고, 반향음 상태 장치(1510) 안에서 피드백 경로를 완성하기 위해 지연 라인 메모리(1702)에 입력된다.
메모리 요구량을 줄이기 위해, 반향음 상태 장치(1510)는 4410Hz에서 동작된다. 덧셈기(1708)을 통해 지연 라인 메모리(1702)에 적용된 입력 사운드 신호는 44.1KHz에서 4410Hz로 부분 제거되고, 반향음 상태 장치(1510)를 나가는 44.1KHz 에 다시 삽입된다. 효과 프로세서(108)에서의 사운드 신호는 44.1KHz에서 공급되고, 제6 등급 저역 통과 필터(1704)를 사용하여 필터링되고, 부분제거기(1706)를 사용하여 10 개중에 하나의 계수에 의해 부분제거 된다. 제6 등급 저역 통과 필터(1704)는 세 개의 제2 등급 무한 충격 응답(IIR) 저역 통과 필터를 사용하여 2000Hz에서 사운드 신호를 필터링한다. 도시된 실시예에서, 부분제거기(1706)는 시프트와 덧셈 동작을 사용하는 샘플 단일-폴(one-pole) 필터로써 실행되지만, 회로 영역과 동작 시간을 유지하기 위해 곱셈 동작은 실행하지 않는 제4 등급 무한 충격 응답(IIR) 필터이다. 반향 후의 사운드 신호는 44.1 KHz 좌측 채널 반향 신호를 생성하기 위해 시간 테누토(ten) 보간 회로(1740)와 제6 저역 통과 필터(1742)를 통해 좌측 채널 반향 신호의 전송에 의해 44.1 KHz 로 다시 저장된다. 도시된 실시예에서, 시간 테누토 보간 회로(1740)는 부분제거기(1706)와 동일하다. 우측 채널 반향 신호는 44.1 KHz 우측 채널 반향 신호를 생성하기 위해 시간 테누토 보간 회로(1744)와 제6 등급 저역 통과 필터(1746)를 통해 전송된다.
특별한 회로 실시예가 반향음 상태 장치(1510)에 대해 도시될 지라도, 바향 시뮬레이터의 다른 알맞은 실시예가 가능하다. 특히, 알맞은 반향음 상태 장치는 많거나 거의 없는 저장 요소를 갖는 지연 라인 메모리를 포함하고, 각각의 저장 요소가 더 크거나 더 작은 비트-넓이를 갖는다. 예를 들어 저역 통과 필터를 모든 대역 필터로 바꾸는, 갖가지 다른 필터는 실행될 것이다. 더 많거나 거의 없는 탬은 지연 라인 메모리에 적용될 것이다. 게다가, 이득 계수(G)는 고정되거나 프로그램 될 수 있고, 갖가지 알맞은 비트-넓이를 가질 수 있다.
반향의 적용 이전의 사운드 신호의 부분제거는 반향음 상태 장치(1510)의 메모리 요구량을 점차적으로 줄이기 위한 높은 이득이 있다. 예를 들어, 도시된 실시예에서 지연 라인 메모리(1702)는 전체 메모리 저장이 거의 1200 바이트이기 때문에 805 12 비트 저장 요소를 포함한다. 부분제거와 보간법이 없는, 상대적으로 낮은-밀도의 롬의 약 12,000 바이트는 반향 시뮬레이션 기능성을 실행하기 위해 사용될 수 있고, 훨씬 높은 밀도의 메모리 양은 저 비용, 높은 기능성 또는 단입칩, 높은 기능성 신디사이저 적용에서 가능하다.
도시된 반향음 상태 장치(1510)의 부분제거 계수와 보간법 계수가 열의 값을 가질지라도, 다양한 실시예에서, 반향음 상태 장치는 부분제거되고 다른 알맞은 계수에 의해 삽입될 것이다.
본 발명이 다양한 실시예에 관하여 설명되는 동안, 이러한 실시예가 도시되고, 발명의 범위가 그 실시예에 의해 제한되지 않는 것이 이해될 것이다. 설명된 실시예의 많은 다양성, 변형, 추가와 개선은 가능하다. 예를 들어, 어떤 실시예가 펜트엄 호스트 컴퓨터와 특별한 멀티미디어 프로세서를 포함하는 멀티프로세서 시스템을 이용하는 시스템으로써 도시될 수 있다. 또 다른 실시예는 게임 박스, 저가의 악기, 미디 사운드 모듈 등의 적용에 대한 키보드에 의해 제어되는 시스템으로써 도시될 수 있다. 사운드 발생기와 신디사이저의 분야에서 잘 알려진 다른 구성은 다른 실시예에서 사용될 수 있다.

Claims (25)

  1. 더 높은 주파수 대역과 더 낮은 주파수 대역을 포함하는 복수의 상호 조절 주파수 대역에서 음악 신호를 필터링 하는 단계와;
    데이터가 제1 샘플 기간 동안 제1 샘플링 비율로 더 높은 주파수 대역의 샘플링 하는 단계;
    실질적으로 제1 샘플링 비율보다 더 긴 제2 샘플링 기간에 대한 실질적으로 제1 샘플링 비율보다 더 낮은 제2 샘플링 비율에서 더 낮은 주파수 대역을 샘플링 하는 단계;
    제 1 저장에서 샘플링된 더 높은 주파수 대역과 연합된 재생 파라미터를 저장하는 단계와 제 2 저장에서 연합된 재생 파라미터를 저장하는 단계를 포함하여 이루어진 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  2. 제 1 항에 있어서, 인접한 상호 조절 주파수 대역의 더 높은 주파수 대역의 스펙트럼 목록이 거의 일정하므로 인접한 상호 조절 주파수 대역 사이의 분리 주파수를 선택하는 단계를 추가로 포함하는 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  3. 제 1 항에 있어서, 상기 음악 사운드는 유지하는 사운드인 음악 사운드의 견본이고, 상기 더 높은 주파수 대역은 더 높은 주파수 대역에서 거의 하나의 주기에 대해 샘플링 되는 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  4. 제 1 항에 있어서, 상기 음악 사운드는 타진하는 사운드인 음악신호의 견본이고, 더 높은 주파수 대역은 높은 주파수 대역이 감소하거나 정적으로 될 때까지 샘플링 되는 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  5. 제 1 항에 있어서, 상기 필터링 단계는 고주파수 대역에 대한 샘플링 비율로 상위 바운드를 셋 하기 위해 제1 저역 통과 필터링 단계에서 음악신호를 저역 통과 필터링 하는 단계;
    저주파수 대역 신호를 생성하기 위해 제2 저역 통과 필터링 단계에서 음악신호를 저역 통과 필터링 하는 단계;
    제2 저역 통과 필터링 단계의 저역 통과 필터에 서로 보완적인 고역 통과 필터를 사용하는 음악신호를 고역 통과 필터링 하는 단계;
    저주파수 대역에서 음악신호의 반복의 주기를 획득하고 저장하기 위해 음악 신호를 고역 통과 루핑 하는 단계; 그리고,
    고주파수 대역에서 음악 신호의 반복의 주기를 획득하고 저장하기 위해 고역 통과 루핑 하는 단계를 추가로 포함하여 이루어진 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  6. 제 5 항에 있어서, 상기 음악 신호 필터링 단계는 실질적으로 일정한 진폭에 제1 저역 통과 필터링 단계에 다음에 음악 신호를 증폭하는 단계를 추가로 포함하여 이루어진 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  7. 제 5 항에 있어서, 음악신호 필터링 단계는 저역 통과 필터링된 음악 파형으로부터 비주기적, 비조화적인 고주파수 스펙트럼 목록의 제거를 가속하기 위해 루프 주기 강제 필터를 사용하는 저주파수 대역 음악신호를 필터링 하는 단계를 추가로 포함하여 이루어진 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  8. 제 7 항에 있어서, 상기 루프 주기 강제 필터는 가변 이득을 갖는 코움 필터인 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  9. 제 5 항에 있어서, 상기 음악 신호 필터링 단계는 저역 통과 필터링된 음악 파형으로부터 비주기적, 비조화적 고주파수 스펙트럼 목록의 제거를 가속시키기 위해 루프 강제 과정을 사용하는 고주파수 대역 음악신호를 필터링 하는 단계(260)를 추가로 포함하여 이루어진 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  10. 제 1 항에 있어서, 샘플링 단계는 음악 신호의 요소를 부분제거하는 단계(280)를 추가로 포함하여 이루어진 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  11. 제 9 항에 있어서, 상기 음악 신호의 요소를 부분제거 하는 단계는 부분제거 비율을 결정하는 단계;
    음악 신호에 제로를 삽입하는 단계; 그리고,
    부분제거에서 음악신호를 부분제거 하는 단계를 추가로 포함하여 이루어진 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  12. 제 9 항에 있어서, 상기 음악 신호의 요소를 부분제거 하는 단계는 부분 제거 비율을 결정하는 단계;
    부분 제거할 때 루프 크기가 적분되므로 음악 신호를 피치 시프팅 하는 단계;
    루프 크기가 적분되므로 음악신호에 제로를 삽입하는 단계;
    부분제거 비율에서 음악신호를 부분제거 하는 단계; 그리고,
    가상 샘플링 비율을 계산하는 단계를 추가로 포함하여 이루어진 것을 특징으로 하는 웨이브테이블 신디사이저에 의한 재생에 대한 음악신호를 코딩하는 방법.
  13. 복수의 샘플을 실질적으로 진행하기 위한 복수의 사용 가능한-독립적인 웨이브테이블 프로세서;
    청구항 1의 음악신호를 코딩하는 방법에 따라 얻어진 음악신호 정보 저장을 포함하고, 복수의 웨이브테이블 프로세서에 연결된 샘플 저장; 그리고,
    더 높은 주파수 대역 샘플과 더 낮은 주파수 대역 샘플을 독립적으로 그러나 동시에 진행시키기 위해 복수의 웨이브 테이블을 활성화시키고, 복수의 웨이브테이블 프로세서에 연결되고, 샘플 저장에 연결된 해석기를 포함하여 구성된 것을 특징으로 하는 웨이브테이블 신디사이저.
  14. 복수의 샘플을 동시에 진행시키기 위한 복수의 사용 가능한-독립적인 웨이브테이블 프로세서;
    더 높은 주파수 대역 샘플과 재생 파라미터, 더 낮은 주파수 대역 샘플과 재생 파라미터, 높은 샘플링 비율과 더 낮은 주파수 대역 샘플과 관계 있는 낮은 샘플 기간에서 샘플링된 더 높은 주파수 대역 샘플링을 포함하는 복수의 상호 조절 주파수 대역 샘플로 나누는 음악신호 정보 저장을 포함하고, 복수의 웨이브테이블 프로세서에 연결된 샘플 저장; 그리고,
    더 높은 주파수 대역 샘플과 더 낮은 주파수 대역 샘플을 독립적으로 그러나 동시에 진행하기 위해 복수의 웨이브테이블 프로세서를 활성화시키고, 복수의 웨이브테이블 프로세서에 연결된 해석기를 포함하여 구성된 것으로 특징으로 하는 웨이브테이블 신디사이저.
  15. 제 14 항에 있어서, 상기 상호 조절 주파수 대역 샘플은 인접한 상호 조절 주파수 대역의 더 높은 주파수 대역의 스펙트럼 목록이 거의 일정하므로 선택된 분리 주파수에 의해 분리되는 것을 특징으로 하는 웨이브테이블 신디사이저.
  16. 제 14 항에 있어서, 상기 상호 조절 주파수 대역 샘플은 더 높은 주파수 대역의 거의 하나의 주기에 대해 샘플링된 유지된 음악 사운드의 더 높은 주파수 대역을 포함하는 것을 특징으로 하는 웨이브 테이블 신디사이저(100)를 구성하는 장치.
  17. 제 14 항에 있어서, 상기 상호 조절 주파수 대역 샘플은 고주파수 대역 감소 또는 정적으로 될 때까지 샘플링된 타진하는 음악 사운드의 더 높은 주파수 대역을 포함하는 것을 특징으로 하는 웨이브테이블 신디사이저.
  18. 제 14 항에 있어서, 상기 다수의 사용할 수 있는-독립적인 웨이브테이블 프로세서는 오버샘플링된 다중-탭 보간법 필터를 사용하는 더 높은 주파수 대역 샘플과 더 낮은 주파수 대역 샘플의 실행 주파수를 상호 복구를 실행하는 것을 특징으로 하는 웨이브테이블 신디사이저.
  19. 제 14 항에 있어서, 복수의 웨이브테이블 프로세서에 연결되고, 포락선 발생, 볼륨 제어, 팬, 코러스와 반향음을 포함하는 함수의 그룹으로부터 선택된 함수를 실행하기 위한 복수의 효과 프로세서를 추가로 포함하여 구성된 것을 특징으로 하는 웨이브테이블 신디사이저.
  20. 제 14 항에 있어서, 크기에서 0.5 메가바이트보다 작은 웨이브테이블 신디사이저에서 전체 롬 메모리인, 웨이브테이블 신디사이저 함수를 수행하는 메모리를 추가로 포함하여 구성된 것을 특징으로 하는 웨이브테이블 신디사이저.
  21. 제 20 항에 있어서, 상기 웨이브테이블 신디사이저는 단일 집적-회로 칩에서 수행되는 것을 특징으로 하는 웨이브테이블 신디사이저.
  22. 제 14 항에 있어서, 상기 웨이브테이블 신디사이저는 단일 집적-회로 칩에서 수행되는 것을 특징으로 하는 웨이브테이블 신디사이저.
  23. 복수의 샘플을 동시에 진행하기 위한 복수의 실행 가능한-독립적인 웨이브테이블 프로세서를 제공하는 단계;
    더 높은 주파수 대역 샘플과 재생 파라미터, 더 낮은 주파수 대역 샘플과 재생 파라미터, 높은 샘플링 비율과 더 낮은 주파수 대역 샘플과 관계 있는 낮은 샘플 기간에서 샘플링된 더 높은 주파수 대역 샘플링을 포함하는 복수의 상호 조절 주파수 대역 샘플로 나누는 음악신호 정보 저장을 포함하고, 복수의 웨이브테이블 프로세서에 연결된 샘플 저장을 제공하는 단계; 그리고,
    더 높은 주파수 대역 샘플과 더 낮은 주파수 대역 샘플을 독립적으로 그러나 동시에 진행하기 위해 복수의 웨이브테이블 프로세서를 활성화시키고, 복수의 웨이브테이블 프로세서에 연결된 해석기를 제공하는 단계를 포함하여 구성된 웨이브테이블 신디사이저를 제공하는 방법.
  24. 호스트 프로세서; 그리고,
    복수의 샘플을 동시에 진행하기 위한 복수의 사용 가능한-독립적인 웨이브테이블 프로세서;
    더 높은 주파수 대역 샘플과 재생 파라미터, 더 낮은 주파수 대역 샘플과 재생 파라미터, 높은 샘플링 비율과 더 낮은 주파수 대역 샘플과 관계 있는 낮은 샘플 기간에서 샘플링된 더 높은 주파수 대역 샘플링을 포함하는 복수의 상호 조절 주파수 대역 샘플로 나누는 음악신호 정보 저장을 포함하고, 복수의 웨이브테이블 프로세서에 연결된 샘플 저장; 그리고,
    더 높은 주파수 대역 샘플과 더 낮은 주파수 대역 샘플을 독립적으로 그러나 동시에 진행하기 위해 복수의 웨이브테이블 프로세서를 활성화시키고, 복수의 웨이브테이블 프로세서에 연결된 해석기를 포함하고, 호스트 프로세서에 연결된 웨이브테이블 신디사이저를 포함하여 구성된 것을 특징으로 하는 멀티미디어 컴퓨터 시스템.
  25. 키보드/제어기; 그리고,
    복수의 샘플을 동시에 진행하기 위한 복수의 사용 가능한-독립적인 웨이브테이블 프로세서;
    더 높은 주파수 대역 샘플과 재생 파라미터, 더 낮은 주파수 대역 샘플과 재생 파라미터, 높은 샘플링 비율과 더 낮은 주파수 대역 샘플과 관계 있는 낮은 샘플 기간에서 샘플링된 더 높은 주파수 대역 샘플링을 포함하는 복수의 상호 조절 주파수 대역 샘플로 나누는 음악신호 정보 저장을 포함하고, 복수의 웨이브테이블 프로세서에 연결된 샘플 저장; 그리고,
    더 높은 주파수 대역 샘플과 더 낮은 주파수 대역 샘플을 독립적으로 그러나 동시에 진행하기 위해 복수의 웨이브테이블 프로세서를 활성화시키고, 복수의 웨이브테이블 프로세서에 연결된 해석기를 포함하고, 키보드/제어기에 연결된 웨이브테이블 신디사이저를 포함하여 구성된 것을 특징으로 하는 사운드 발생 시스템.
KR1019997002123A 1996-09-13 1997-09-10 웨이브테이블 신디사이저와 다양한 샘플링 구간 근사치를 사용하는 방법 KR20010029507A (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/713,341 1996-09-13
US08/713,341 US5744739A (en) 1996-09-13 1996-09-13 Wavetable synthesizer and operating method using a variable sampling rate approximation

Publications (1)

Publication Number Publication Date
KR20010029507A true KR20010029507A (ko) 2001-04-06

Family

ID=24865760

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019997002123A KR20010029507A (ko) 1996-09-13 1997-09-10 웨이브테이블 신디사이저와 다양한 샘플링 구간 근사치를 사용하는 방법

Country Status (9)

Country Link
US (1) US5744739A (ko)
EP (1) EP0925576B1 (ko)
JP (1) JP2001500635A (ko)
KR (1) KR20010029507A (ko)
CN (1) CN1230275A (ko)
DE (1) DE69705627D1 (ko)
HK (1) HK1019109A1 (ko)
TW (1) TW374893B (ko)
WO (1) WO1998011532A1 (ko)

Families Citing this family (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6362409B1 (en) 1998-12-02 2002-03-26 Imms, Inc. Customizable software-based digital wavetable synthesizer
JPH1152950A (ja) * 1997-06-04 1999-02-26 Kawai Musical Instr Mfg Co Ltd 電子楽器
US6088461A (en) * 1997-09-26 2000-07-11 Crystal Semiconductor Corporation Dynamic volume control system
US6091824A (en) * 1997-09-26 2000-07-18 Crystal Semiconductor Corporation Reduced-memory early reflection and reverberation simulator and method
US6610917B2 (en) * 1998-05-15 2003-08-26 Lester F. Ludwig Activity indication, external source, and processing loop provisions for driven vibrating-element environments
US7309829B1 (en) * 1998-05-15 2007-12-18 Ludwig Lester F Layered signal processing for individual and group output of multi-channel electronic musical instruments
US6119091A (en) * 1998-06-26 2000-09-12 Lsi Logic Corporation DVD audio decoder having a direct access PCM FIFO
JP2001075565A (ja) 1999-09-07 2001-03-23 Roland Corp 電子楽器
JP2001125568A (ja) 1999-10-28 2001-05-11 Roland Corp 電子楽器
ATE336774T1 (de) * 2001-05-28 2006-09-15 Texas Instruments Inc Programmierbarer melodienerzeuger
JP3709817B2 (ja) * 2001-09-03 2005-10-26 ヤマハ株式会社 音声合成装置、方法、及びプログラム
US6426456B1 (en) * 2001-10-26 2002-07-30 Motorola, Inc. Method and apparatus for generating percussive sounds in embedded devices
US20030187663A1 (en) 2002-03-28 2003-10-02 Truman Michael Mead Broadband frequency translation for high frequency regeneration
US6977508B2 (en) * 2003-03-31 2005-12-20 Radiodetection Limited Cable detection apparatus and method
TWI227010B (en) * 2003-05-23 2005-01-21 Mediatek Inc Wavetable audio synthesis system
US20050114136A1 (en) * 2003-11-26 2005-05-26 Hamalainen Matti S. Manipulating wavetable data for wavetable based sound synthesis
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
EP1571647A1 (en) * 2004-02-26 2005-09-07 Lg Electronics Inc. Apparatus and method for processing bell sound
KR20050087368A (ko) * 2004-02-26 2005-08-31 엘지전자 주식회사 무선 단말기의 벨소리 처리 장치
KR100694395B1 (ko) * 2004-03-02 2007-03-12 엘지전자 주식회사 웨이브 테이블 기반의 미디 합성 방법
US7171193B2 (en) * 2004-03-22 2007-01-30 The Hoffman Group Llc Telecommunications interruption and disconnection apparatus and methods
KR100636906B1 (ko) * 2004-03-22 2006-10-19 엘지전자 주식회사 미디 재생 장치 그 방법
JP4222250B2 (ja) * 2004-04-26 2009-02-12 ヤマハ株式会社 圧縮楽音データ再生装置
KR100689495B1 (ko) * 2004-12-14 2007-03-02 엘지전자 주식회사 Midi 재생 장치 및 방법
US20060155543A1 (en) * 2005-01-13 2006-07-13 Korg, Inc. Dynamic voice allocation in a vector processor based audio processor
EP1727123A1 (en) * 2005-05-26 2006-11-29 Yamaha Corporation Sound signal processing apparatus, sound signal processing method and sound signal processing program
JP4274152B2 (ja) * 2005-05-30 2009-06-03 ヤマハ株式会社 楽音合成装置
KR101146738B1 (ko) * 2008-12-10 2012-05-17 한국전자통신연구원 무선 인식 센서 태그 및 센서 데이터 저장 방법
JP2011242560A (ja) 2010-05-18 2011-12-01 Yamaha Corp セッション端末及びネットワークセッションシステム
CN104901698A (zh) * 2015-04-02 2015-09-09 中北大学 多通道采样率可编程的采集记录模块
CN105869614B (zh) * 2016-03-29 2019-07-19 北京精奇互动科技有限公司 音频文件导出方法和装置
CN107749301B (zh) * 2017-09-18 2021-03-09 得理电子(上海)有限公司 一种音色样本重构方法及系统、存储介质及终端设备
US10224062B1 (en) 2018-02-02 2019-03-05 Microsoft Technology Licensing, Llc Sample rate conversion with pitch-based interpolation filters
CN111462764B (zh) * 2020-06-22 2020-09-25 腾讯科技(深圳)有限公司 音频编码方法、装置、计算机可读存储介质及设备

Family Cites Families (27)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPS52121313A (en) * 1976-04-06 1977-10-12 Nippon Gakki Seizo Kk Electronic musical instrument
US4227435A (en) * 1977-04-28 1980-10-14 Nippon Gakki Seizo Kabushiki Kaisha Electronic musical instrument
US4228403A (en) * 1977-06-17 1980-10-14 Nippon Gakki Seizo Kabushiki Kaisha Submultiple-related-frequency wave generator
US4184403A (en) * 1977-11-17 1980-01-22 Allen Organ Company Method and apparatus for introducing dynamic transient voices in an electronic musical instrument
US4201105A (en) * 1978-05-01 1980-05-06 Bell Telephone Laboratories, Incorporated Real time digital sound synthesizer
JPS5521041A (en) * 1978-07-31 1980-02-14 Nippon Musical Instruments Mfg Producing musical tone of electronic device and electronic musical device
USRE34913E (en) * 1979-08-31 1995-04-25 Yamaha Corporation Electronic musical instrument
JPS56138794A (en) * 1980-03-31 1981-10-29 Nippon Musical Instruments Mfg Method of generating music tone signal and device for generating music tone signal
JPS5748791A (en) * 1980-09-08 1982-03-20 Nippon Musical Instruments Mfg Electronic musical instrument
JPS5748792A (en) * 1980-09-08 1982-03-20 Nippon Musical Instruments Mfg Electronic musical instrument
US4633748A (en) * 1983-02-27 1987-01-06 Casio Computer Co., Ltd. Electronic musical instrument
JPS59168492A (ja) * 1983-03-16 1984-09-22 ヤマハ株式会社 楽音波形発生装置
JPS6083999A (ja) * 1983-10-14 1985-05-13 ヤマハ株式会社 楽音合成方法
JPH0789279B2 (ja) * 1985-10-21 1995-09-27 ヤマハ株式会社 楽音信号発生装置
US4748669A (en) * 1986-03-27 1988-05-31 Hughes Aircraft Company Stereo enhancement system
JP2581047B2 (ja) * 1986-10-24 1997-02-12 ヤマハ株式会社 楽音信号発生方法
US4841572A (en) * 1988-03-14 1989-06-20 Hughes Aircraft Company Stereo synthesizer
US5018429A (en) * 1988-04-07 1991-05-28 Casio Computer Co., Ltd. Waveform generating apparatus for an electronic musical instrument using filtered components of a waveform
US4866774A (en) * 1988-11-02 1989-09-12 Hughes Aircraft Company Stero enhancement and directivity servo
US5342990A (en) * 1990-01-05 1994-08-30 E-Mu Systems, Inc. Digital sampling instrument employing cache-memory
WO1991010987A1 (en) * 1990-01-18 1991-07-25 E-Mu Systems, Inc. Data compression of sound data
JP2775651B2 (ja) * 1990-05-14 1998-07-16 カシオ計算機株式会社 音階検出装置及びそれを用いた電子楽器
US5354947A (en) * 1991-05-08 1994-10-11 Yamaha Corporation Musical tone forming apparatus employing separable nonliner conversion apparatus
JP2727841B2 (ja) * 1992-01-20 1998-03-18 ヤマハ株式会社 楽音合成装置
JP3243821B2 (ja) * 1992-02-27 2002-01-07 ヤマハ株式会社 電子楽器
US5376752A (en) * 1993-02-10 1994-12-27 Korg, Inc. Open architecture music synthesizer with dynamic voice allocation
US5567901A (en) * 1995-01-18 1996-10-22 Ivl Technologies Ltd. Method and apparatus for changing the timbre and/or pitch of audio signals

Also Published As

Publication number Publication date
JP2001500635A (ja) 2001-01-16
US5744739A (en) 1998-04-28
EP0925576B1 (en) 2001-07-11
EP0925576A1 (en) 1999-06-30
CN1230275A (zh) 1999-09-29
DE69705627D1 (de) 2001-08-16
TW374893B (en) 1999-11-21
WO1998011532A1 (en) 1998-03-19
HK1019109A1 (en) 2000-01-21

Similar Documents

Publication Publication Date Title
KR20010029507A (ko) 웨이브테이블 신디사이저와 다양한 샘플링 구간 근사치를 사용하는 방법
EP0925575B1 (en) A reduced-memory reverberation simulator in a sound synthesizer
US6096960A (en) Period forcing filter for preprocessing sound samples for usage in a wavetable synthesizer
Jaffe et al. Extensions of the Karplus-Strong plucked-string algorithm
US5744742A (en) Parametric signal modeling musical synthesizer
US7003120B1 (en) Method of modifying harmonic content of a complex waveform
EP1125272B1 (en) Method of modifying harmonic content of a complex waveform
US9515630B2 (en) Musical dynamics alteration of sounds
WO1997017692A9 (en) Parametric signal modeling musical synthesizer
JP2002529773A5 (ko)
US5824936A (en) Apparatus and method for approximating an exponential decay in a sound synthesizer
EP1493144B1 (en) Generating percussive sounds in embedded devices
JPH11126080A (ja) 波形データ処理方法
JP3788096B2 (ja) 波形圧縮方法及び波形生成方法
JP3706372B2 (ja) 楽音信号の周波数特性制御装置及び周波数特性制御方法

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid