KR100386404B1 - 음향효과를생성하도록파형을처리하는컴퓨터악기,이와같은장치의동작방법,및기계판독가능한매체 - Google Patents

음향효과를생성하도록파형을처리하는컴퓨터악기,이와같은장치의동작방법,및기계판독가능한매체 Download PDF

Info

Publication number
KR100386404B1
KR100386404B1 KR1019960041264A KR19960041264A KR100386404B1 KR 100386404 B1 KR100386404 B1 KR 100386404B1 KR 1019960041264 A KR1019960041264 A KR 1019960041264A KR 19960041264 A KR19960041264 A KR 19960041264A KR 100386404 B1 KR100386404 B1 KR 100386404B1
Authority
KR
South Korea
Prior art keywords
waveform
sound
musical
scratch
reproduction
Prior art date
Application number
KR1019960041264A
Other languages
English (en)
Other versions
KR970017163A (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
Priority claimed from JP7266252A external-priority patent/JP2933204B2/ja
Priority claimed from JP7266253A external-priority patent/JP2956550B2/ja
Application filed by 야마하 가부시키가이샤 filed Critical 야마하 가부시키가이샤
Publication of KR970017163A publication Critical patent/KR970017163A/ko
Application granted granted Critical
Publication of KR100386404B1 publication Critical patent/KR100386404B1/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
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/002Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
    • G10H7/006Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof using two or more algorithms of different types to generate tones, e.g. according to tone color or to processor workload
    • 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
    • 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/0091Means for obtaining special acoustic effects
    • 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
    • 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/002Instruments in which the tones are synthesised from a data store, e.g. computer organs using a common processing for different operations or calculations, and a set of microinstructions (programme) to control the sequence thereof
    • 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/241Scratch effects, i.e. emulating playback velocity or pitch manipulation effects normally obtained by a disc-jockey manually rotating a LP record forward and backward
    • 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/571Waveform compression, adapted for music synthesisers, sound banks or wavetables
    • G10H2250/591DPCM [delta pulse code modulation]
    • G10H2250/595ADPCM [adaptive differential pulse code modulation]
    • 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)
  • Electrophonic Musical Instruments (AREA)

Abstract

본 발명의 컴퓨터 악기에는 대응 파형을 판독함으로써 악음의 재생을 수행하도록 실행되는 프로그램이 설치된다. 기억장치는, 각 파형이 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스 형태로 기억되는, 상이한 악음에 대응하는 복수의 파형을 기억하기 위해서 제공된다. 태핑 패드는 대응하는 악음의 재생을 명령하도록 기억된 파형 중 적어도 하나를 지정하기 위해 제공된다. 패널 스위치는 정상 모드와 선택 모드 사이의 악음의 재생을 전환하기 위해 사용자에 의해 조작 가능하다. CPU는 대응하는 악음의 수를 동시에 재생하도록 프로그램에 따라 기억장치로부터 지정된 파형의 수를 동시에 판독하기 위해 정상 모드하의 비교적 고기능으로 할당된다. 그렇지 않으면, CPU는 프로그램에 따라 재생된 악음에 스크래치 효과를 부여하도록 지정된 파형을 디지털 방식으로 처리하기 위해 선택 모드하에서 추가 기능이 할당되면서도 선택 모드하에서 비교적 저기능으로 할당되어 선택 모드하에서 동시에 재생된 악음의 수가 정상 모드하의 것과 비교해서 감소된다. 상기 스크래치 효과는 외부 입력으로부터 실시간으로 입력되는 새로운 파형에 적용될 수도 있다.

Description

음향 효과를 생성하도록 파형을 처리하는 컴퓨터 악기, 이와 같은 장치의 동작방법, 및 기계 판독 가능한 매체
본 발명은 소프트웨어를 이용해서 악음(musical tone)을 발생하도록 디지털 메모리에 기억된 파형 데이터를 판독하기 위한 악음 발생장치에 관한 것이다. 또한 본 발명은 소프트웨어를 이용하여 실시간으로 입력되는 파형 데이터를 처리하기 위한 악음 발생장치에 관한 것이다. 특히, 본 발명은 악음의 정상 발생 또는 재생에 비해 악음의 수가 감소되는 반면에 발생된 악음에 대해 필터 처리, 피치 처리, 또는 스크래치(scratch) 처리를 실시할 수 있는 악음 발생장치에 관한 것이다. 또한 본 발명은 의사처리(pseudo fashion)로 스크래치 효과를 달성할 수 있는 악음 발생장치에 관한 것이다.
원래의 악음으로부터 샘플링된 파형 데이터가 기억장치에 미리 기억되는 소프트웨어 음원이 알려져 있다. 상기 기억되는 파형 데이터는 수동기구의 조작에 응하여 소프트웨어 또는 프로그램에 의해 판독된다. 그러나, 종래의 소프트웨어 음원은 기능적으로 고정되어 있으므로 다소 제한된 응용분야 및 열악한 기능을 가진다. 최근에는, 악음에 디지털 음색 필터 처리 및 스크래치 효과 등의 다양한 효과를 부여할 수 있는 고기능의 음원이 요구되고 있다. 스크래치는 원래 아날로그 녹음 디스크가 턴테이블 상에서 구동되면서 재생속도를 불규칙하게 변화시키기 위해 손으로 그 디스크를 강제로 이동시킴으로써 특수한 효과음을 생성하기 위한 기법이다. 종래에는, 아날로그 녹음 디스크가 스크래치 효과를 부여하는데 사용되었으나, 이와 같은 스크래치 효과를 실현하는 디지털 악음 발생장치는 없었다.
소프트웨어를 이용하여 악음을 발생시키는 디지털 메모리에 기억된 파형 데이터를 판독하는 악음 발생장치에 있어서, 본 발명의 목적은 생성되는 악음의 수가 적게되면서도 악음에 다양한 처리 및 효과를 적용하도록 종래의 소프트웨어 음원에 의해 실현될 수 없었던 확장된 기능을 달성하는 것이다. 또한, 실시간으로 입력되는 파형 데이터를 그대로 출력하는 악음 발생장치에 있어서, 본 발명의 목적은 외부에서 입력되는 파형 데이터에 다양한 처리 및 효과를 적용하도록 종래의 소프트웨어 음원에 의해 실현될 수 없었던 고기능을 달성하는 것이다. 또한, 디지털 메모리에 기억된 파형 데이터를 판독하거나 또는 실시간으로 입력되는 파형 데이터를 그대로 출력하는 악음 발생장치에서 의사 방식으로 스크래치 효과를 실현하는 것이 본 발명의 목적이다.
본 발명의 제 1특징에 따르면, 컴퓨터 악기에는 대응 파형을 판독함으로써 악음의 재생을 수행하도록 실행하는 프로그램이 설치된다. 컴퓨터 악기는, 각 파형이 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스 형태로 기억되는, 상이한 악음에 대응하는 복수의 파형을 기억하기 위한 기억수단 대응하는 악음의 재생을 명령하도록 기억된 파형 중 적어도 하나를 지정하기 위한 지정수단, 정상 모드와 선택 모드 사이의 악음의 재생을 전환하기 위한 사용자에 의해 조작 가능한 전환수단, 및 대응 악음의 수를 동시에 재생하도록 프로그램에 따라 상기 기억수단으로부터 지정된 파형의 수를 동시에 판독하기 위해 정상 모드하에서 비교적 고기능으로 할당되고, 그렇지 않으면 프로그램에 따라 재생된 악음에 특정 음향 효과를 부여하도록 지정된 파형을 디지털 방식으로 처리하기 위해 선택 모드하에서 추가 기능으로 할당되면서도 선택 모드하에서 비교적 저기능으로 할당되어 선택 모드하에서 동시에 재생된 악음의 수가 정상 모드하의 것과 비교해서 감소되는 재생수단을 포함한다.
구체적인 형태로, 상기 전환수단은 정상 모드와 필터 선택 모드 사이에서 전환 가능한 수단을 포함하여 상기 재생수단이 재생된 악음의 음색을 변경시키는 등의 특정 음향 효과를 부여하도록 필터링에 의해 지정된 파형을 디지털 방식으로 처리하기 위해 상기 필터 선택 모드에서 동작한다. 다른 구체적인 형태로, 상기 전환수단은 정상 모드와 피치 선택 모드 사이에서 전환 가능한 수단을 포함하여 상기 재생수단이 재생된 악음의 피치를 변경시키는 등의 특정 음향 효과를 부여하도록 지정된 파형의 판독 속도를 변경함으로써 지정된 파형을 디지털 방식으로 처리하기 위해 상기 피치 선택 모드하에서 동작한다. 이와 같은 경우에, 컴퓨터 악기는 재생되어야 하는 악음의 피치를 지정하기 위한 사용자에 의해 조작 가능한 피치 지정수단을 더 포함하여 상기 재생수단이 재생된 악음에 상기 피치 피치수단에 의해 지정된 피치를 부여하도록 파치 선택 모드하에서 동작한다. 또한, 상기 지정수단 및 피치 지정수단은 사용자에 의해 수동으로 조작 가능한 공통 기구를 포함하여 상기 공통 기구가 정상 모드하에서 파형을 지정하기 위한 지정수단으로서 사용되면서도 파형을 지정하기 위한 지정수단뿐만 아니라 지정된 파형에 대응하는 악음의 피치를 지정하기 위한 피치 지정수단으로서 사용된다.
또한 구체적인 형태로, 상기 전환수단은 정상 모드와 스크래치 선택 모드 사이에서 전환 가능한 수단을 포함하여 상기 재생수단이 대응 악음을 스크래치하는 등의 특정 음향 효과를 부여하도록 지정된 파형의 판독 어드레스를 불규칙하게 변경시킴으로써 지정된 파형을 디지털 방식으로 처리하기 위해 상기 스크래치 선택모드하에서 동작한다. 이와 같은 경우에, 컴퓨터 악기는 사용자에 의해 스크래치 동작을 입력하여 조작되는 스크래치 기구를 더 포함하여 상기 재생수단이 입력된 스크래치 동작에 따라 지정된 파형의 판독 어드레스를 변경시키기 위한 스크래치 선택 모드하에서 동작한다.
본 발명이 제 2특징에 있어서, 컴퓨터 악기에는 대응 파형을 판독함으로써 악음의 재생을 수행하도록 실행되는 프로그램이 설치된다. 컴퓨터 악기는, 각 파형이 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스 형태로 기억되는, 상이한 악음에 대응하는 복수의 파형을 임시로 기억하기 위한 기억수단, 대응하는 악음의 재생을 명령하도록 기억된 파형 중 적어도 하나를 지정하기 위한 지정수단, 새로운 파형이 외부입력으로부터 입력될 때 실시간 베이스로 상기 새로운 파형을 수신하기 위한 수신수단, 정상 모드와 선택 모드 사이의 악음의 재생을 전환하기 위한 사용자에 의해 동작 가능한 전환수단, 및 지정된 파형에 대응하는 악음을 재생하도록 프로그램에 따라 상기 기억수단으로부터 상기 지정수단에 의해 지정된 내장 파형을 판독하기 위해 정상 모드하에서 동작하고, 그렇지 않으면 새로운 파형에 대응하는 악음을 재생하도록 상기 지정수단에 의해 지정된 내장 파형의 판독을 보류 또는 정지하고 그 대신에 상기 수신수단에 의해 수신된 새로운 파형을 처리하기 위해 선택 모드하에서 동작하여 특정 음향 효과가 프로그램에 따라 재생된 악음에 부여되는 재생수단을 포함한다. 구체적인 형태로, 상기 재생수단은 디지털 필터링에 의해 새로운 파형을 처리하기 위해 선택 모드하에서 동작하는 필터링 수단을 포함함으로써재생된 악음의 음색을 변경시키는 등의 특정 음향 효과를 부여한다. 다른 구체적인 형태로, 상기 재생수단은 새로운 파형을 불규칙하게 처리하기 위해 선택 모드하에서 동작하는 스크래칭 수단을 포함함으로써 재생된 악음을 스크래치하는 등의 특정 음향 효과를 부여한다. 이와 같은 경우에, 컴퓨터 악기는 사용자에 의해 스크래치 동작을 입력하여 조작되는 스크래치 기구를 더 포함하여 상기 스크래칭 수단이 새로운 파형이 상기 수신수단에 의해 수신된 후에 임시로 기억되는 새로운 파형의 판독 어드레스를 불규칙하게 변화시키기 위해 입력된 스크래치 동작에 따라 동작함으로써 재생된 악음을 스크래치한다.
본 발명의 제 3특징에 있어서, 악기는 접촉 동작에 응하여 재생된 악음에 스크래치 효과를 도입하도록 가변 판독 어드레스에 따라 대응 파형을 판독함으로써 악음을 재생한다. 악기는, 대응 악음을 나타내도록 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 파형을 기억하기 위한 기억수단, 길이에 따라 접촉 동작점을 검출하고 검출된 접촉 동작점에 대응하는 위치값을 출력하기 위해 접촉 동작을 수신하도록 길이를 갖는 검출 기구, 접촉 동작을 모니터링하도록 상기 검출 기구로부터 출력된 위치값을 주기적으로 검색하기 위한 검색수단, 및 스크래치 효과로 대응 악음을 재생하도록 검색된 위치값에 따라 각 판독 어드레스를 가변적으로 결정하고 각기 결정된 판독 어드레스에 따라 상기 기억수단으로부터 파형을 연속적으로 판독하기 위한 재생수단을 포함한다. 특징으로, 상기 재생수단은 접촉동작이 소정의 개시 판독 어드레스로부터 파형의 판독을 개시하기 위해 초기 설정될 때 동작하며, 각기 결정된 판독 어드레스에 따라 파형을 연속해서 지속적으로판독하기 위해 접촉 동작의 진행 중에 동작하는 수단을 포함한다. 또한, 상기 검색 수단은 접촉 동작의 속도를 연산하도록 주기적으로 검색된 위치값을 차등적으로 처리하기 위한 수단을 포함하고, 상기 재생수단은 접촉 동작의 속도에 따라 변수를 결정하고 다음의 판독 어드레스를 결정하도록 이전의 판독 어드레스에 변수를 누산하기 위한 수단을 포함한다. 또한, 상기 기억수단은 실시간 베이스로 외부 입력으로부터 입력되는 파형을 기억하기 위한 수단을 포함하고, 상기 재생수단은 접촉 동작이 스크래치 효과 없이 대응 악음을 재생하도록 그대로 입력된 파형을 출력하기 위해 개시되지 않을 때 동작하며, 접촉 동작이 스크래치 효과로 대응 악음을 재생하도록 파형의 기억 및 출력을 정지하고 그 대신에 가변 판독 어드레스에 따라 상기 기억수단으로부터 파형을 연속적으로 판독하기 위해 개시될 때 동작되는 수단을 포함한다. 바람직하게, 상기 기억수단은 실시간 베이스로 외부입력으로부터 새로이 입력된 새로운 파형의 모든 데이터 양을 기억하기에 충분한 메모리 용량을 가진다.
도 1은 본 발명에 따른 악음 발생장치의 일 실시예로서 샘플러(sampler)의 기본 블록도,
도 2(a)-도 2(e)는 도 1의 샘플러의 각종 작업 영역을 도시하는 도면,
도 3은 정상 루틴의 플로우차트,
도 4는 모드 SW 이벤트 루틴의 플로우차트,
도 5는 샘플링 모드 개시 처리(MS(1))의 플로우차트,
도 6은 스크래치 모드 개시 처리(MS(4))의 플로우차트,
도 7은 온-이벤트(on-event) 루틴(모드 m = 0, 2, 4)의 플로우차트,
도 8은 다른 온-이벤트 루틴(모드 m = 3)의 플로우차트,
도 9는 리본 제어기 검출값 검색 루틴(ribbon controller detection value retrieving routine)(RC(m)(m = 2, 5))의 플로우차트,
도 10은 다른 리본 제어기 검출값 검색 루틴(RC(m)(m=4, 6))의 플로우차트,
도 11(a) - 도 11(c)는 파형 처리 루틴(HS(m)(모드 m = 0, 2, 3))의 플로우차트,
도 12(a) - 도 12(c)는 파형 처리 루틴(HS(m)(m = 4, 5, 6))의 플로우차트,
도 13(a) - 도 13(b)는 서브루틴"정상 n" 및 "피치 2"의 플로우차트,
도 14는 스크래치 처리 및 EX 스크래치 처리의 플로우차트,
도 15는 DR(m)루틴(모드 m = 1, 5, 6)의 플로우차트,
도 16은 DP 루틴의 플로우차트,
도 17(a) 및 도 (b)는 파형 데이터의 재생 및 녹음의 타이밍을 도시하는 도면,
도 18(a) 및 도 18(b)는 속도(VEL)에서 스크래치 F 번호(SFN)로의 변환예를 도시하는 도면,
도 19는 본 발명의 다른 실시예를 개략적으로 도시하는 블록도이다.
<도면의 주요부분에 대한 부호의 설명>
101 : CPU 102 : ROM
103 : 플래시 메모리 104 : RAM
105 : 타이머 106 : 리본 제어기
108 : 디스플레이 109 : 패널 스위치
110 : Fs 클럭 발생기 111 : 외부 입력
112 : 사운드 I/O 113 : DMAC
114 : 사운드 시스템 115 : 버스 라인
이하, 본 발명의 실시예를 도면을 참조하여 기술한다.
도 1은 본 발명에 따른 악음 발생장치의 일 실시예인 샘플러의 블록 구성도이다. 샘플러는 중앙처리장치(CPU)(101) 리드 온리 메모리(ROM)(102), 플래시 메모리(103) 랜덤 액세스 메모리(RAM)(104), 타이머(105), 리본 제어기(106) 동작 패드 세트(107), 디스플레이(108), 패널 스위치(109), 샘플링 클럭(Fs) 발생기(110), 사운드 I/O(112), DMA(direct memory access) 제어기(113), 및 버스 라인(115)을 포함한다.
CPU(101)는 샘플러의 전체 시스템의 동작을 제어한다. ROM(102)는 CPU(101)에 의해 실행된 제어 프로그램을 기억한다. RAM(104)에는 각종 레지스터 및 버퍼등의 작업영역이 있다. 플래시 메모리(103)는 이 샘플러에 의해 샘플링되고 녹음된 파형 데이터를 기억하기 위한 메모리이다. 상기 녹음된 파형 데이터는 RAM(104)상의 녹음 버퍼에 임시로 기억된다. 녹음 버퍼가 충전될 때, 녹음 버퍼내의 파형 데이터는 플래시 메모리(103)로 전송된다. 샘플러가 파워 오프되더라도, 플래시 메모리(103)내의 파형 데이터는 유지된다. 이와 같이, 샘플러는 상이한 악음에 대응하는 복수의 파형을 기억하기 위한 기억수단을 가진다. 각 파형은 대응 악음을 나타내도록 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스 형태로 기억된다.
타이머(105)는 CPU(101)에 소정의 시간 간격으로 타이머 인터럽션(interruption)을 야기하기 위한 타이머 클럭 신호를 발생시킨다. 타이머 인터럽션에 의해, CPU(101)는 소정의 시간 간격으로 리본 제어기(106)의 검출값을 검색하는 등의 각종 처리를 수행한다.
리본 제어기(106)는 스크래치 동작을 수행하도록 사용자에 의해 조작되는 동작기구이다. 리본 제어기(106)는 유한 길이의 선형 부재를 가지며 손가락이나 막대가 상기 선형 부재에 접촉하는 위치의 좌표를 출력하는 좌표 검출장치이다. 리본 제어기(106)는 임의의 위치에서 그 동작이 시작될 수 있는 특징이 있다. 리본 제어기(106)는 손가락이나 또는 막대와 접촉 동작이 일어나지 않은 경우 디폴트값(default value)을 출력하며, 그렇지 않고 접촉 동작이 발생할 때 좌표 위치값을 출력한다. 이와 같이, 상기 검출값으로부터 리본 제어기(106)가 동작되는지아닌지, 즉, 손가락 또는 막대와 접촉 동작의 발생여부가 결정될 수 있다. 즉, 검출기구는 길이에 따라 접촉 동작점을 검출하며 검출된 접촉 동작점에 대응하는 위치값을 출력하기 위한 접촉 동작을 수신하는 길이를 가진다.
패드(107)는 발음을 제어하도록 사용자에 의해 조작되는 다른 동작기구를 구성한다. 구체적으로, 10개의 패드 세트(107)가 제공된다. 원래의 악음의 녹음 또는 샘플링은 10 패드(107) 중 하나를 지정함으로써 달성될 수 있다. 녹음된 음의 재생에서, 특정한 하나의 패드(107)는 사용자에 의해서 탭핑되여 그 패드에 대응하는 녹음된 파형 데이터가 판독되고 재생된다. 패드의 탭핑 또는 설정 대신에, MIDI(musical instrument digital interface) 신호의 노트 온(note-on) 데이터를 수신함으로써 음 재생을 수행하도록 배열될 수 있다. 패드(107)는 대응하는 악음의 재생을 명령하도록 기억된 파형 중 적어도 하나를 지정하기 위한 지정수단을 구성한다.
디스플레이(108)는 각종 설정 정보를 표시하기 위해서 제공된다. 패널 스위치(SW)(109)는 사용자가 각종 설정 동작을 수행하도록 샘플러의 패널상에 제공되는 스위치 그룹이다. 패널 스위치(109)는 정상 모드와 각종 선택 모드 중 하나의 모드사이에서 음 재생을 전환하기 위한 전환수단을 구성하는 모드 변환 스위치 등의 각종 스위치를 포함한다.
Fs 클록 발생기(110)는 사운드 I/O(112)에 공급된 주파수(Fs)의 샘플링 클록을 발생시킨다. 사운드 I/O(112)는 CODEC 이라고 불리는 LSI에 의해 구성된다. 사운드 I/O(112)는 아날로그/디지털(A/D) 변환 기능 및 디지털/아날로그(D/A) 변환기능을 가진다. 사운드 I/O(112)는 외부입력(111)으로부터 입력된 아날로그 악음 신호가 수신되는 A/D 입력 단자, 및 사운드 시스템(114)이 접속되는 D/A 출력 단자를 가진다. 사운드 I/O(112)는 외부입력(111)으로부터 수신된 아날로그 악음 신호를 A/D 변환 기능을 통해 디지털 데이터로 변환함으로써 얻어지는 파형 데이터를 압축하는 기능이 있다. 상기 파형 데이터는 ADPCM(adative differential pulse code modulation)에 따라 압축된다. 또한, 사운드 I/O(112)는 D/A 변환되어 D/A 출력 단자를 통해 사운드 시스템(114)에 출력되는 파형 데이터에 대해 ADPCM 신장을 수행하는 다른 기능이 있다. 여기서 설명되는 본 발명의 일 실시예에서는, ADPCM 압축만이 사운드 I/O(112)에서 실제적으로 수행되며, ADPCM 신장은 CPU(101)에 의해 소정의 소프트웨어를 실행시킴으로써 수행된다.
사운드 I/O(112)는 그 내부에 두 개의 FIFO(first in first out) 스텍 영역이 있다. 그 하나는 A/D 입력 단자를 통해 입력된 디지털 파형 데이터를 보존하기 위한 입력 FIFO이고, 다른 하나는 D/A 출력 단자를 통해 출력된 디지털 파형 데이터를 보존하기 위한 출력 FIFO이다. 사운드 I/O(112)는 외부입력(111)을 통해 새로운 파형이 입력될 때 실시간 베이스로 상기 새로운 파형을 수신하기 위한 수신수단을 구성한다.
이하, 입력 FIFO 및 출력 FIFO를 이용하는 사운드 I/O(112)의 입/출력 동작을 간단히 설명한다. 외부입력(111)으로부터 사운드 I/O(112)의 A/D 입력 단자에 입력된 아날로그 악음 신호는 주파수(Fs)의 샘플링 클록에 응하여 A/D 변환된 다음에, 입력 FIFO에 기입된다(필요에 따라 ADPCM 압축된다). 파형 데이터가 입력 FIFO내에 존재할 때, 사운드 I/O(112)는 DMA 제어기(113)로 입력 파형 데이터를 처리하기 위한 요구를 출력한다. 상기 처리 요구에 응하여, DMA 제어기(113)는 RAM(104)에 준비된 녹음 버퍼 영역에 입력 FIFO의 데이터를 전송한다. DMA 제어기(113)에 의한 이 데이터의 전송은 버스 라인(115)을 유지하도록 수행되어 DMA 제어기(113)가 매 샘플링 클럭(Fs)마다 CPU(101)에 대하여 인터럽션 동작을 실행한다. CPU(101)는 DMA 제어기(113)에 의해 버스 라인(115)의 유지를 의식하지 못한다. 악음의 녹음중 DMA 제어기(113)에 의한 파형 데이터의 전술한 전송처리가 이하 도 15를 참조하여 상세히 설명된다.
한편, 파형 데이터가 사운드 I/O(112)의 출력 FIFO 내에 존재할 경우, 출력 FIFO내의 파형 데이터는 샘플링 클럭(Fs)마다 D/A 변환되어, D/A 출력 단자를 통해 사운드 시스템(114)으로 전송되어 악음이 방출된다. 출력 FIFO의 파형 데이터가 출력되면, 출력 FIFO에 공간이 생겨 사운드 I/O(112)가 DMA 제어기(113)에 다른 파형 데이터를 얻기 위한 요구를 출력한다. CPU(101)는 미리 출력되고자 하는 파형 데이터를 발생시킨 다음에, RAM(104)상의 재생 버퍼에 발생된 파형 데이터를 기억하고, DMA 제어기(113)로 미리 파형 데이터를 재생하기 위한 요구를 출력한다. DMA 제어기(113)는 버스 라인(115)을 유지하도록 CPU(101)에 대해서 샘플링 클럭(Fs)마다 인터럽션 동작을 실행하고 RAM(104)의 재생 버퍼에 기억된 파형 데이터를 사운드 I/O (112)로 전송한다. CPU(101)는 DMA 제어기(113)에 의한 파형 데이터의 전송을 인식하지 못한다. 전술한 바와 같이, 출력 FIFO에 기입된 파형 데이터는 악음이 방출되도록 샘플링 클록(Fs)마다 사운드 시스템(114)으로 출력된다. 음 재생시 DMA제어기(113)에 의한 파형 데이터의 전술한 전송 처리가 이후 도 16을 참조하여 상세히 설명된다.
또한, 사운드 I/O(112)는 A/D 입력 단자에 입력된 파형 데이터를 D/A 출력 단자로 그대로 전송하여 외부입력(111)으로부터의 악음 신호가 사운드 시스템(114)에 그대로 출력되는 기능이 있다. A/D 입력단과 D/A 출력단 사이의 접속은 CPU(101)으로부터의 지시를 기초로 행해진다. 또한, CPU(101)는 A/D 입력단과 D/A 출력단 사이의 직접적인 접속을 차단할 수 있다.
다음에, 도 1의 샘플러의 기본 동작이 간단히 설명된다. 샘플러는 7개의 동작 모드, 즉, 정상 모드, 샘플링 모드 및 필터 모드, 피치 모드, 스크래치 모드, 외부입력(EX) 필터 모드, 및 외부입력(EX) 스크래치 모드를 포함하는 5개의 선택 모드를 가진다. 이들 모드는 패널 스위치(109)에 제공된 모드 전환 스위치에 의해 전환될 수 있다. 이하, 각 모드가 설명된다.
정상 모드는 녹음된 악음을 재생하기 위해 선택된다. 초기 상태에서, 샘플러는 정상 모드로 설정된다. 정상 모드에서는, 사용자가 10 패드(107) 중 하나를 탭핑하면, 그 패드에 대응하여 녹음된 파형 데이터는 설치된 프로그램에 따라 CPU(101)로 이루어진 재생수단에 의해 기억장치로부터 판독된다. 정상 모드에서는, 4 음까지 동시에 재생될 수 있다. 구체적으로, 탭핑된 4 패드에 대응하여 녹음된 4개의 파형 데이터가 동시에 재생된다. 5번째 패드를 탭핑하면, 첫째로 탭핑된 패드에 대응하여 재생된 음은 정지되고 새로이 탭핑된 다섯째 패드에 대응하는 파형 데이터가 재생된다.
샘플링 모드는 새로운 파형을 녹음하기 위해 선택된다. 샘플링 모드가 모드 전환 스위치를 이용하여 지정되면, 사용자는 동시에 녹음용 패드를 지정한다. 이것에 의해, 외부입력(111)으로부터 입력된 악음이 그 지정 패드에 대응하여 녹음될 수 있다.
필터 선택 모드에서는, 정상모드와 대조적으로 패드-온(pad-on)에 따라 동시에 2 음만이 재생될 수 있다. 즉, 재생수단은 정상 모드하에서 많아야 4개의 파형을 동시에 판독하기 위해 고기능으로 할당되며, 필터 모드 등의 선택 모드에서 많아야 2개의 파형을 동시에 판독하도록 저기능으로 할당된다. 또한, 디지털 필터처리, 구체적으로, 저역 필터 처리가 이들 재생된 음에 실시된다. 리본 제어기(106)를 동작시킴으로서, 사용자는 저역 필터처리의 차단 주파수를 변경할 수 있다. 즉, 재생수단은 필터 모드하에서 필터링에 의해 파형을 디지털 방식으로 처리하여 재생된 악음의 음색을 변경시키는 등의 특정 음향 효과를 상기 악음에 부여하도록 추가의 기능으로 할당된다.
피치 모드는 원하는 피치 천이로 녹음된 악음을 재생하기 위해 선택된다. 피치 모드 이외의 동작 모드에서는, 악음은 원래의 피치 그대로 재생된다. 피치 모드가 모드 전환 스위치를 이용하여 지정될 때, 동시에 하나의 패드를 동작함으로써, 사용자는 피치 모드에서 재생되고자 하는 원하는 파형 데이터를 지정한다. 그 후, 10 패드 중 지정된 하나가 온 설정되면, 지정된 파형 데이터가 그 패드에 대응하는 지정된 피치로 재생된다. 이 모드에서 동시에 2음만이 재생될 수 있다. 재생되고자 하는 파형을 지정하기 위한 패드가 피치 지정수단으로서 공통으로 사용되지만, 피치 지정수단은 패드와 별도로 제공될 수 있다. 파형은 대응 악음의 원래의 피치를 시프트 또는 변경시키는 등의 데이터의 판독 속도를 변경함으로써 피치 모드하에서 디지털 방식으로 처리된다.
스크래치 모드는 사용자에 의해 스크래치 동작을 실현하기 위해 선택된다. 스크래치 모드가 모드 전환 스위치를 이용하여 지정되는 경우, 사용자는 동시에 원하는 하나의 패드를 지정한다. 그 패드에 대응하는 파형 데이터가 스크래치 동작된다. 그 후, 리본 제어기(106)를 접촉함으로써, 파형 형태 데이터가 재생되기 시작한다. 또한, 리본 제어기(106)상의 접촉 위치를 이동함으로써, 음이 스크래치 재생된다. 또한, 이 모드에서는, 스크래치 재생과는 별도로, 2음만이 10 패드를 이용하는 정상 모드에서 동시에 재생될 수 있다. 파형은 스크래치 효과로 악음을 재생하도록 스크래치 모드하에서 데이터의 판독 어드레스를 불규칙하게 변경함으로써 디지털 방식으로 재생된다.
EX 필터 모드는 외부입력(111)으로부터 공급된 새로운 파형 데이터를 필터링하며 필터링된 파형 데이터를 사운드 시스템(114)에 출력하기 위해 선택된다. 필터링의 차단 주파수는 사용자에 의해 리본 제어기(106)을 써서 변경될 수 있다. EX 필터 모드에서는, 기억된 파형의 재생이 패드가 사용자에 의해 동작되더라도 정지되게 배열된다.
EX 스크래치 모드는 외부입력(111)으로부터 공급된 새로운 파형에 스크래치 동작을 실시하기 위해 선택된다. EX 스크래치 모드에서는, 리본 제어기(106)가 접촉되지 않을 때, 외부입력(111)으로부터의 파형이 그대로 사운드 시스템(114)에 출력된다. 리본 제어기(106)를 접촉하는 순간에, 외부입력으로부터 사운드 시스템에 직접 사운드 출력이 정지되며, 리본 제어기(106)에 의한 스크래치 재생이 그 순간에 수신된 외부 입력 파형에 대해 수행된다. EX 스크래치 모드에서는, 각 패드에 대응하는 기억된 파형의 재생이 패드 온 시에도 정지되도록 배열된다.
다음에, RAM(104)에 제공되는 레지스터, 버퍼 등이 설명된다. 도 2(a)는 RAM(104)에 제공된 음원 레지스터를 도시한다. 음원 레지스터는 패드 연주용 4 채널 영역(1ch-4ch) 및 스크래치 재생용 음원 레지스터(sch)로 구성된다. 각 채널용 레지스터에는 파형 데이터 판독하기 위한 어드레스 및 노트-온 데이터 등의 각종의 데이터를 기억한다.
도 2(b)는 RAM(104)에 제공된 녹음 버퍼를 도시한다. 녹음 버퍼에는 2개의 버퍼, 즉, RB0 및 RB1이 있으며, 각기 128개 샘플의 파형 데이터를 기억할 수 있다. 녹음시, 파형 샘플은 하나의 녹음 버퍼에 기억된다. 즉, 외부입력(111)으로부터 공급된 파형 데이터는 DMA 제어기(113)에 의해 사운드 I/O(112)의 입력 FIFO를 통해 하나의 녹음 버퍼로 전송된다. 하나의 녹음 버퍼가 충전되면, 하나의 녹음 버퍼의 파형 샘플이 CPU(101)에 의해 플래시 메모리(103)에 기입된다. 이와 함께, 파형 샘플의 기억이 다른 녹음 버퍼에서 지속된다. 이러한 방식으로, 두 개의 녹음 버퍼가 파형의 연속 녹음에 교대로 사용된다. RBk(k = 0 또는 1)는 파형 데이터의 녹음 또는 기억을 현재 수행하는 녹음 버퍼를 나타내며,는 다른 녹음 버퍼를 나타낸다.는 k의 반전이다(여기서 k = 0일 때,= 1, k = 1 일 때,= 0이다).
도 2(c)는 RAM(104)의 재생 버퍼를 도시한다. 재생 버퍼에는 두 개의 버퍼, 즉, PB0 및 PB1이 있으며, 각기 128개 샘플의 파형 데이터를 기억할 수 있다. 하나의 재생버퍼는 음의 재생에 사용된다. 즉, 하나의 재생 버퍼의 파형 데이터는 DMA 제어기(113)에 의해 사운드 I/O(112)로 전송되어 출력 FIFO를 통해 출력된다. 다른 재생 버퍼는 CPU(101)에 의해 다음에 출력되는 파형 데이터를 기억하도록 제공된다. 이러한 방식으로, 두 개의 재생 버퍼가 음 재생에 교대로 사용된다. PBr(r = 0 또는 1)은 재생을 위해 사운드 I/O(112)에 현재 파형 데이터를 전송하고 있는 재생 버퍼를 나타내며,은 다른 재생 버퍼를 나타낸다.은 r의 반전을 나타낸다(r = 0 일 때,= 1이며, r = 1일 때,= 0이다).
도 2(d)는 RAM(104)에 제공되는 스크래치 영역(SR)을 도시한다. 스크래치 영역(SR)은 스크래치 모드가 지정될 때 확보된다. 스크래치 모드가 설정될 때, 지정된 패드에 대응하는 파형 데이터가 선형 16비트로 ADPCM 신장되어, RAM(104)의 영역에 전개된다. 파형 데이터의 어느 부분이 스크래치 영역(SR)에 설정되는 지는 미리 결정된다. 스크래치 영역(SR)의 임의의 어드레스는 스크래치 개시 어드레스로서 스크래치 포인터(SP)에 설정된다. 스크래치 포인터(SP)의 값은 사용자에 의해 변경될 수 있다. 사용자가 스크래치 모드에서 리본 제어기(106)를 동작할 때, 스크래치 재생이 수행된다. 이 경우, 초기 접촉이 임의의 위치에서 리본 제어기(106)에 행하여 질 때, 스크래치 포인터(SP)에 의해 지정된 개시 어드레스로부터 스크래치 재생이 개시된다.
도 2(e)는 EX 스크래치 모드에 확보된 스크래치 영역을 도시한다. EX 스크래치 모드에서는, 외부입력(111)으로부터의 파형 데이터가 녹음 버퍼(SRB0 및 SRB1)에 기억된다. 녹음 버퍼(SRB0 및 SRB1)는 도 2(b)를 참조하여 설명된 녹음 버퍼(SRB0 및 SRB1)에 대응하고, RB0 및 RB1과 마찬가지로 교대로 사용된다. SRB0 및 SRB1은 각기 스크래치를 수행하기에 충분한 메모리 용량을 가지고 있다. 예를 들면, 샘플링 클록이 40 kHz 인 경우, 메모리 용량은 대략 40 k 샘플만큼 기억할 수 있다. 리본 제어기(106)의 동작이 개시되는 순간에 사용되지 않는 SRB0과 SRB1 중 하나가 스크래치 영역으로서 설정된다. 녹음 버퍼(SRB0)에서 기입 어드레스를 나타내는 녹음 포인터(RP)가 있기 때문에, 데이터 기입이 SRB0에 현재 수행된다. 따라서, 데이터 기입이 수행되지 않은 다른 녹음 버퍼(SRB1) 일부가 스크래치 영역(SR)로서 설정된다. 또한, 스크래치 영역(SR)의 임의의 어드레스가 스크래치 개시 판독 어드레스로서 스크래치 포인터(SP)에 설정된다.
다음에, 도 2(a)-2(e)에 도시한 것 이외의 레지스터가 아래에 기재된다.
(1) m: 동작 모드 레지스터, 0은 정상 모드, 1은 샘플링 모드, 2는 필터 모드, 3은 피치 모드, 4는 스크래치 모드, 5는 EX 필터 모드, 6은 EX 스크래치 모드를 나타낸다.
(2) PN: 패드를 식별하기 위한 패드 번호를 기억하기 위한 레지스터.
(3) i: 발음을 할당 또는 배정하기 위한 채널의 채널 번호를 기억하기 위한 레지스터.
(4) FNi: 발음이 배정되는 i번째 채널의 F 번호를 기억하기 위한 레지스터.
(5) TMP: 리본 제어기(106)의 검출값을 기억하기 위한 레지스터.
(6) RD: 리본 제어기(106)로부터의 검출값이 그 검출값을 설정하기 위해 변경될 때 사용되는 레지스터.
(7) RS: 리본 제어기(106)의 상태를 나타내기 위한 플래그. 손가락 등이 리본 제어기(106)의 접촉하는 방식으로 리본 제어기(106)가 동작될 때, 플래그는 1로 설정된다. 손가락 등이 리본 제어기(106)와 접촉하지 않을 때, 플래그는 0으로 설정된다.
(8) VEL: 리본 제어기(106)를 따라 접촉 동작의 속도, 구체적으로, 리본 제어기(106)와 접촉하는 손가락 등의 이동 속도를 설정하기 위한 레지스터.
(9) OLD: 리본 제어기(106)의 최종 검출값을 보존하기 위한 레지스터.
(10) SAD: 스크래치 판독 어드레스를 기억하기 위한 레지스터.
(11) ADi: i번째 채널(i = 1-4)에서 판독 어드레스를 기억하기 위한 레지스터.
(12) SFN: 스크래치 채널(sch)로부터 파형 데이터를 판독할 때 사용되는 F 번호를 기억하기 위한 레지스터.
(13) RP: 녹음 버퍼에 파형 데이터의 기입 어드레스를 나타내기 위한 녹음 포인터.
(14) PP: 재생 버퍼로부터 파형 데이터의 판독 어드레스를 나타내기 위한 재생 포인터.
또한 레지스터 등을 도시하는 전술한 부호는 레지스터 등의 기억 영역을 나타내며, 이들 기억영역에 기억된 데이터를 나타낸다. 예를 들면, m은 동작 모드 레지스터뿐만 아니라 그 레지스터에 기억된 동작 모드를 나타내는 데이터를 표시한다.
도 3 내지 도 16은 도 1의 샘플러의 CPU(101) 및 DMA 제어기(113)의 동작을 설명하기 위한 플로우차트이다. 이하, 먼저 소프트웨어의 계층 구조가 설명된 다음에, 각 소프트웨어 모듈의 처리 순서가 도 3 내지 도 16의 플로우차트를 따라 설명된다. 이후, 각 모드의 기능을 달성하도록 어느 타이밍에서 소프트웨어 모듈이 실행되는 지에 대해 설명된다.
먼저, 소프트웨어의 계층 구조가 설명된다. 도 3 내지 도 16에 도시된 프로그램은 다음과 같이 분류된다.
레벨 1: 파형 녹음에서 DMA 제어기(113)를 동작하는 도 15의 DR(m) 루틴, 및 파형 재생에서 DMA 제어기(113)를 동작하는 도 16의 DP 루틴.
레벨 2: CPU(101)에 의해 파형 준비를 수행하는 도 11(a) 내지 도 12(c)의 파형 발생 루틴(HS(m)), 및 CPU(101)에 의해 리본 제어기(106)의 검출값을 검색하는 도 9 및 도 10의 리본값 검색 루틴 RC(m). 여기서 도 13(a), 도 13(b) 및 도 14의 처리 루틴이 파형 발생 루틴(HS(m))의 서브루틴으로서 포함된다.
레벨 3: CPU(101)에 의해 실행되는 도 3의 일반 루틴. 여기서 도 4 내지 도 8의 패드 스캔 루틴, SW 스캔 루틴 및 각종 이벤트 루틴이 일반 루틴의 서브루틴으로서 포함된다.
레벨 1의 처리 루틴이 가장 높은 우선권을 가진다. 구체적으로, 레벨 2 및 3의 처리가 실행되면서 레벨 1의 처리 루틴을 실행하기 위한 인터럽션이 발생할 때, 레벨 1의 처리 루틴이 최우선적으로 실행된다. 레벨 1의 처리 DR(m) 및 DP는 CPU(101)에 의해 실행되지 않고 DMA 제어기(113)에 의해 실행된다. 이와 같이, 레벨 1의 처리에 대한 인터럽션이 발생할 때, 최우선으로 레벨 1의 처리를 실행하도록 DMA 제어기(113)가 버스 라인(115)을 유지하면서 CPU(101)의 동작이 정지된다. 레벨 1의 처리에 대한 인터럽션은 샘플링 클록(Fs)에 의해 조정된다. 구체적으로, 샘플링 클록(Fs)마다 인터럽션이 발생하여 DMA 제어기(113)가 파형 재생에서 DP를 실행하고, 파형 녹음에서 DR(m)을 실행한다. 각 샘플링 클록(Fs)에서 인터럽션시에 DP 또는 DR(m)의 실행 여부는 미리 CPU(101)로부터 DMA 제어기(113)로 지정된다.
레벨 2의 처리는 레벨 1의 처리보다 우선권이 낮으나 레벨 3의 처리보다는 높은 우선권을 가진다. 구체적으로, 레벨 3의 일반 루틴이 실행되면서 레벨 2의 처리를 실행하기 위한 인터럽션이 발생할 때, 레벨 2의 처리 루틴이 우선적으로 실행된다. DMA 제어기(113)의 DP 루틴은 재생 버퍼로부터의 파형 데이터를 재생 또는 판독하며 재생 버퍼가 비게 될 때 CPU(101)를 인터럽트한다. 이 인터럽션에 응하여, CPU(101)는 파형 발생 루틴(HS(m))을 실행하며 재생 버퍼에 다음의 파형의 샘플값을 제공한다. 리본값 검색 루틴(RC(m))은 타이머 인터럽션에 의해 개시된다. 구체적으로, 소정의 간격으로 타이머(105)로부터 출력되는 클록마다 타이머 인터럽션이 발생하여 CPU(101)가 리본 제어기(106)의 검출값을 취입하도록 리본값 검색루틴(RC(m))을 실행한다.
레벨 3은 가장 낮은 우선권을 갖는 처리 루틴을 나타낸다. CPU(101)는 도 3의 일반 루틴을 반복적으로 실행하고 또한 패드(107)의 온-이벤트 또는 패널 SW(109)의 동작 이벤트가 존재할 때 소정의 서브루틴을 실행한다.
다음에, 각각의 소프트웨어 모듈의 동작 순서를 도 3 내지 도 16의 플로우차트에 따라 설명된다. 도 3은 레벨 3의 일반 루틴을 도시한다. 샘플러에 전원이 들어오면, CPU(101)가 이 일반 루틴을 실행한다. 먼저 단계(301)에서, 각종 초기 설정이 실행된다. 특히, 동작 모드 m은 m = 0으로 나타낸 것과 같이 정상 모드로 설정되고, 노트-오프 명령이 도 2(a)의 음원 레지스터의 모든 채널에 설정되며, 재생 버퍼(PB0 및 PB1)의 모든 샘플 영역이 제로로 클리어된다. 초기 설정시, CPU(101)는 DMA 제어기(113)에 재생 처리를 지시한다. 이에 응하여, DMA 제어기(113)는 재생 버퍼에 보존된 파형 데이터를 재생하는 동작을 개시하도록 Fs 클록 발생기(110)로부터의 샘플링 클록(Fs)마다 CPU(101)를 인터럽트하고 인터럽션시마다 도 16의 DP 루틴을 실행한다. 또한, 타이머(105)는 초기 설정시 개시된다. 이로써, CPU(101)는 리본 제어기(106)로부터 검출값을 검색하는 처리를 개시하도록 타이머(105)로부터의 클록에 기초하여 타이머 인터럽션마다 RC 검색 루틴(RC(m))을 실행한다.
다음에, 패드 스캔 처리가 단계(302)에서 실행된 다음에, SW 스캔 처리가 단계(303)에서 실행된 후, 루틴이 동일한 처리를 반복하도록 단계(302)로 복귀한다. 단계(302)의 패드 스캔 처리는 10 패드(107)의 임의의 온-이벤트가 존재하는지를 검출하기 위해 수행되며, 온-이벤트가 존재하는 경우 도 7 및 도 8에 도시된 온-이벤트 루틴을 실행한다. 단계(303)의 SW 스캔 처리는 패널 SW(109)의 동작이 수행되는지를 검출하기 위해 수행되며, 동작이 수행되는 경우 그 동작에 대응하는 처리 루틴을 실행한다.
도 4는 도 3의 단계(303)의 SW 스캔 처리에서 모드 전환 스위치의 작동의 검출시 호출되는 모드 SW 이벤트 루틴을 도시한다. 모드 SW 이벤트 루틴에서는, 단계(401)에서 모드 전환 스위치의 동작에 따라 지정된 동작 모드를 나타내는 값이 레지스터m에 설정되며, 단계(402)에서 디스플레이(108)가 지정된 모드 m에 따라 제어된다. 그 다음에, 단계(403)에서 지정된 모드내에 대응하는 개시 처리(MS(m))가 수행된 후, 처리가 종료된다.
도 5는 사용자가 모드 전환 스위치를 이용하여 샘플링 모드(m = 1)를 지정할때 도 4의 단계(403)에서 호출되는 샘플링 모드 개시 처리(MS(1))의 플로우차트이다. MS(1) 처리에서는, 먼저 단계(501)에서, 패드의 지정이 수행되는지가 결정된다. 임의의 패드 지정이 수행되지 않으면, 단계(502)에서 샘플링 모드의 지정의 중지 여부를 결정한다. 샘플링 모드의 지정이 지속되면, 패드의 지정을 재촉하도록 단계(501)로 루틴이 복귀한다.
단계(501)에서 임의의 패드의 지정이 유효하면, 지정된 패드의 번호가 단계(503)에서 레지스터(PN)에 기억 또는 보존되며, 단계(504)에서 녹음 준비가 수행된다. 녹음 준비는 녹음 버퍼(RB0 및 RB1), 플래시 메모리(103)상의 녹음 영역 및 그밖의 영역을 확보하기 위해 수행된다. 또한, DMA 제어기(113)는 각 샘플링 클록(Fs)에 대해 CPU(101)를 인터럽트함으로써 실행되는 DP 루틴의 실행을 정지하도록 지시된다. 다음에, 단계(505)에서, 녹음을 개시하기 위한 조건(트리거)의 만족 여부가 결정된다. 예를 들면, 녹음 개시의 조건은 입력 레벨이 소정의 값만큼 될 때 녹음이 개시되는 것이다. 녹음 개시의 조건이 만족되지 않으면, 단계(506)에서 녹음을 정지할 지를 결정한다. 녹음이 지속되면, 단계(505)로 루틴이 복귀한다.
단계(505)에서 녹음 개시의 조건이 만족되면, 단계(507)에서 녹음이 실제로 개시된다. 구체적으로, 녹음의 개시는 CPU(101)로부터 DMA 제어기(113)에 녹음의 개시를 지시함으로써 초래된다. 이것에 의해, DMA 제어기(113)는 Fs 클록 발생기(110)로부터의 각 샘플링 클록(Fs)에 CPU(101)를 인터럽트하고, 사운드 I/O(112)에서 입력 FIFO를 통해 녹음버퍼 RBk에 외부입력(111)으로부터 입력된 파형 데이터를 설정하는 처리를 개시하도록 인터럽션시마다 도 15의 DR(1) 루틴을 실행한다.
다음에, 단계(508)에서, 녹음 버퍼가 충전되는지가 판별된다. 도 15를 참조하여 상세히 설명되는 바와 같이, DR(1) 루틴에서는, 외부 입력의 파형 샘플이 녹음버퍼(RBk)로 전송된다. RBk가 충전될 때, k가 반전되어 인터럽션을 일으킨다. 단계(508)에서 이 인터럽션을 기다리며 녹음 버퍼가 충전되는지를 판단한다. 인터럽션이 발생하면, 이는 녹음 버퍼(RBk)가 파형 샘플로 채워지는 것을 의미한다. 따라서, 단계(509)에서 녹음 버퍼(RBk)의 파형 샘플이 플래시 메모리(103)의 소정 영역에 기입되고, 그 후 루틴이 단계(508)로 복귀한다.
단계(508)에서 녹음 버퍼가 충전되지 않으면(DR(1) 루틴으로부터의 인터럽션이 없으면), 단계(510)에서 녹음 처리의 종료 여부를 결정한다. 녹음 처리는 패널SW(109)의 녹음 정지 스위치의 온-이벤트시 또는 플래시 메모리(103)에서 확보된 녹음 영역이 충전될 때 종료된다. 단계(510)에서 녹음 처리가 종료하지 않는다고 판단되면, 녹음을 지속하도록 단계(508)로 루틴이 복귀한다. 단계(510)에서 녹음 처리가 종료한다고 판단되면, 단계(511)에서 녹음 종료 처리는 DR(1) 루틴의 실행을 정지하도록 DMA 제어기(113)를 지시함으로써 실행된다. 그 다음에, 단계(512)에서, 레지스터m이 0으로 설정되어 정상 모드로 복귀하고, 처리는 종료된다. 정상 모드로의 복귀에 있어서, DMA 제어기(113)는 샘플링 클록(Fs)마다 CPU(101)를 인터럽트함으로써 DP 루틴의 개시하도록 지시된다. 마찬가지로, 단계(502)에서 샘플링 모드 개시 처리가 실행을 중지하면, 레지스터 m이 0으로 설정됨으로써 단계(513)에서 정상 모드로 복귀한 다음에, 처리가 종료된다. 또한, 단계(506)에서 녹음 처리가 중지되면, 레지스터 m이 0으로 설정됨으로써 단계(514)에서 정상 모드로 복귀한 다음에, 처리가 종료된다. 단계(513, 514)에서의 처리는 단계(512)에서의 처리와 동일하다.
도 6은 사용자가 모드 전환 스위치를 이용하여 스크래치 모드(m = 4)를 지정할 때 도 4의 단계(403)에서 호출되는 스크래치 모드 개시 처리(MS(4))의 플로우차트이다. MS(4)처리에서는, 먼저 단계(601)에서, 패드의 지정이 수행되는지가 결정된다. 패드의 지정이 수행되지 않으면, 단계(602)에서 스크래치 모드의 지정을 중지하는 것을 결정한다. 스크래치 모드의 지정 처리가 지속되면, 패드의 지정을 재촉하도록 단계(601)로 루틴이 복귀한다.
단계(601)에서 패드 지정이 수행되면, 단계(603)에서 지정된 패드의 번호 또는 코드가 PN 레지스터에 보존된다. 그 다음에, 단계(604)에서 스크래치를 수행하기 위한 준비가 만들어진다. 이는 플래시 메모리(103)로부터의 패드 번호 PN에 대응하여 녹음된 파형 데이터를 판독하여 ADPCM 신장하고 신장된 파형 데이터를 RAM(104)의 소정의 영역에서 전개하는 처리이다. 그 다음에 단계(605)에서, RAM(104)의 소정의 영역에 전개된 소정 부분의 파형 데이터가 스크래치 영역(SR)(도 2(d))으로 설정되고, 스크래치 개시의 어드레스를 나타내는 스크래치 포인터(SP)가 소정의 값으로 설정된다. 단계(602)에서 스크래치 모드 지정 처리가 중지되면, 레지스터 m이 0으로 설정됨으로써 단계(606)에서 정상 모드로 복귀하여, 처리가 종료된다.
도 7은 모드 m이 정상 모드, 필터 모드 또는 스크래치 모드(m = 0, 2, 4)로 설정될 때 도 3의 단계(302)에서 패드(107)의 온-이벤트의 검출시 호출되는 패드 온-이벤트 루틴의 플로우차트를 도시한다. 이 온-이벤트 루틴에서는, 먼저 단계(701)에서, 온-이벤트가 생기는 패드(107)의 패드 번호가 레지스터(PN)에 설정된다. 그 다음에, 단계(702)에서 패드 번호(PN)에 대응하는 파형 데이터가 플래시 메모리(103)상에 존재되는지를 결정한다. 패드 번호(PN)에 대응하는 파형 데이터가 존재하지 않으면, 처리가 종료된다. 단계(702)에서 패드 번호(PN)에 대응하는 파형 데이터가 발견되면 발음 채널의 배정 또는 할당이 단계(703)에서 수행된다. 이 채널 배정은 모드m에 따라 최대 발음수내에서 수행된다. 구체적으로, 정상 모드에서, 동시에 최대 4음이 발생될 수 있으므로, 제1 내지 제4 채널에서 빈 채널이 존재하면, 각 발음이 그 빈 채널에 배정된다. 한편, 4채널 모두가 발음에 사용되면, 가장오래된 시점에서 발음이 개시되는 가장 오래된 채널에서 발음이 중지되고, 다른 발음이 그 채널에 새로이 배정된다. 필터 모드 또는 스크래치 모드에서는, 동시에 최대 2음이 발생될 수 있으므로, 각 발음이 제1 또는 제2 채널에 동일하게 배정된다. 배정된 채널의 번호는 레지스터(i)에 설정된다. 그 후, 단계(704)에서, 재생되는 파형 데이터의 헤드 어드레스(ADi)를 포함하는 발음을 수행하기 위한 각종 데이터가 i번째 채널의 음원 레지스터(ich)에 설정된다. 또한 노트-온 명령이 설정되어 처리가 종료된다.
도 8은 모드 m이 피치 모드(m=3)에 설정될 때 도 3의 단계(302)에서 패드(107)의 온-이벤트의 검출시 호출되는 패드 온-이벤트 루틴의 플로우차트를 도시한다. 패드 온-이벤트 루틴에서는, 먼저 단계(801)에서, 온-이벤트가 발생하는 패드(107)의 패드 번호가 레지스터(PN)에 설정된다. 그 다음에, 단계(802)에서 발음 채널 배정이 수행된다. 피치 모드에서는, 최대 두 음이 동시에 발생될 수 있으므로, 최대 발음수 2내에서 채널 배정이 수행된다. 그 다음에, 단계(803)에서, 패드 번호(PN)가 레지스터(FNi)에 설정되는 대응 F 번호로 변환된다. 그 후, 단계(804)에서, 재생되는 판독 파형 데이터의 개시 어드레스를 포함하는 각종 데이터 및 F 번호(FNi)가 i번째 채널의 음원 레지스터(ich)의 피치 시프트로 악음의 재생을 달성하기 위해 설정된다. 또한 노트-온 명령이 설정되고, 그 후 처리가 종료된다. 이러한 처리에서, 하나의 패드(107)가 소정의 파형을 지정하도록 내리눌리고, 음원 레지스터ch에 설정되어 재생된 음에 부여된 피치를 결정하는 대응 F 번호를 동시에 지정하도록 내리눌린다.
도 9는 모드 m이 필터 모드 또는 EX 필터 모드(m = 2 또는 5)에 설정될 때 리본 제어기(106)의 검출값을 취입하기 위한 RC 검색 루틴(RC(m))의 플로우차트이다. 이것은 리본 제어기(106)에 의해 필터 제어를 수행하기 위한 검출값을 취입하는 처리이다. 도 10은 모드 m이 스크래치 모드 또는 EX 스크래치 모드(m = 4 또는 6)에 설정될 때 리본 제어기(106)의 검출값을 취입하기 위한 RC 검색 루틴 RC(m)의 플로우차트이다. 이것은 리본 제어기(106)에 의해 스크래치 제어를 수행하기 위한 검출값을 취입하는 처리이다. 타이머(105)는 도 3의 단계(301)에서 초기 설정시 개시된다. CPU(101)는 소정의 시간 간격으로 타이머 인터럽션을 실행한다. 도 9의 RC 검색 루틴(RC(m))은 모드 m이 타이머 인터럽션에 의해 2 또는 5로 설정될 때 실행된다. 한편, 도 10의 다른 RC 검색 루틴(RC(m))은 모드 m이 타이머 인터럽션에 의해 4 또는 6으로 설정될 때 실행된다.
도 9의 RC 검색 루틴(RC(m))(m = 2, 5)이 먼저 설명된다. 먼저 단계(901)에서, 리본 제어기(106)의 검출값이 레지스터(TMP)에 설정된다. 그 후, 단계(902)에서, 다음의 검출값이 요전 타이머 인터럽션에서 검색된 이전의 검출값과 비교하여 변화되었는지가 결정된다. 변화가 없다면, 처리는 종료된다. 변화가 있다면, 단계(903)에서 검출값(TMP)이 레지스터(RD)에 설정되어 처리가 종료된다. 그 결과, 리본 제어기(106)의 검출값이 레지스터(RD)에 설정된다. 손가락 등이 리본 제어기(106)로부터 제거되면, 검출값(TMP 및 RD)이 디폴트값, 또는 손가락 등의 제거가 보존되기 바로 전의 값으로 복귀된다.
도 10의 RC 검색 루틴 RC(m)(m = 4, 6)을 설명된다. 도 10은 동작 모드가 스크래치 모드(m = 4)로 설정될 때 호출되는 RC 검색 루틴 RC(4), 및 동작 모드가 EX 스크래치 모드(m=6)로 설정될 때 호출되는 RC 검색 루틴 RC(6) 모두를 설명하기 위한 플로우차트이다. 단계(1006, 1009, 1015 및 1016)에서 RC(6)만에 대한 처리를 나타내기 때문에, RC(4)의 동작 순서를 먼저 설명된 다음에, RC(6)의 동작 순서가 설명된다.
리본 제어기 검출값 검색 루틴(RC(4))에서는, 먼저 단계(1001)에서, 리본 제어기(106)의 검출값이 레지스터(TMP)에 설정된다. 그 다음에 단계(1002)에서, 리본 제어기(106)가 동작되는지가 결정된다. 리본 제어기(106)는 손가락, 막대 등이 접촉되는 좌표 위치를 나타내는 좌표 검출값을 출력하는 반면에, 리본 제어기(106)는 손가락, 막대 등이 접촉되지 않을 때 디폴트값을 출력하여 비접촉(비동작)이 인식될 수 있다. 리본 제어기(106)가 동작되지 않을 때, 루틴은 단계(1003)로 진행한다. 리본 제어기(106)가 동작되면, 루틴은 단계(1004)로 진행된다.
단계(1003)에서, 접촉 동작의 상태 레지스터(RS)가 0인지 아닌지가 판정된다. 레지스터(RS)가 0이면, 이것은 리본 제어기(106)가 요전 인터럽션과 현재의 인터럽션 모두에서 동작하지 않음을 의미한다. 따라서, 처리가 종료된다. 단계(1003)에서 RS가 0이 아니면, 이것은 리본 제어기(106)가 요전 인터럽션에서 동작되어졌지만, 현재의 인터럽션에서 리본 제어기(106)가 동작되지 않는(손가락, 막대 등이 제거됨)것을 의미한다. 따라서, 단계(1013)에서 레지스터 RS가 0으로 클리어되고, 단계(1014)에서 스크래치 채널의 음원 레지스터(sch)에 노트-오프 명령이 기입되어, 처리가 종료된다.
단계(1004)에서, 레지스터(RS)가 1인지 아닌지가 결정된다. 레지스터(RS)가 1이 아니면, 이것은 리본 제어기(106)가 요전 인터럽션에서 동작되지 않았고, 현재의 인터럽션에서 리본 제어기(106)가 동작되는 것을 의미한다. 따라서, 레지스터(RS)가 단계(1005)에서 1로 설정되고, 속도(VEL)가 0으로 설정된다. 그 다음에 단계(1007)에서, 판독 어드레스(SAD)가 스크래치 포인트(SP)의 소정값으로 설정된다. 다음에, 단계(1008)에서, 스크래치 채널의 음원 레지스터(sch)에 스크래치 재생되어야하는 파형 데이터의 판독 어드레스 및 속도값(VEL)을 포함하는 스크래치 재생을 위한 각종 데이터가 설정되고, 노트-온 명령이 기입된다. 그 후, 단계(1010)에서, 리본 제어기(106)의 현재 검출값(TMP)이 레지스터(OLD)에 설정되어, 처리가 종료된다.
단계(1004)에서 체크 결과가 YES이면, 이것은 요전 인터럽션에서 RS=1이며, 현재 인터럽션에서 RS=1인 것을 의미한다(리본 제어기(106)의 동작이 지속된다). 따라서, 단계(1011)에서 리본 제어기(106)상의 접촉 동작 속도가 검출되어 레지스터 VEL에 설정된다. 속도(VEL)는 현재의 검출값(TMP)으로부터 요전 인터럽션의 검출값(OLD)를 감산함으로써 미분 연산에 의해 얻어진다. 따라서, 속도(VEL)가 음의 값을 가질 수 있다. 또한, 속도(VEL)가 스크래치 채널의 음원 레지스터(sch)에 설정된다. 그 다음에, 단계(1012)에서, 현재의 검출값(TMP)이 레지스터(OLD)에 설정되어, 처리가 종료된다.
모드가 스크래치 모드(m = 4)로 설정될 때 RC 검색 또는 취입 루틴(RC(4))에 대해 설명되어진다. 모드가 EX 스크래치 모드(m=6)로 설정될 때 RC 취입 루틴(6)에서는, 단계(1005) 후에 단계(1006)가 추가되며, 단계(1008) 후에 단계(1009)가 추가되며, 단계(1014) 후에 단계(1015 및 1016)가 추가된다. 또한, 단계(1008 및 1014)에서의 처리는 다소 다르다. 이하, 그것에 대해 설명된다 리본 제어기(106)의 동작 개시한 시점에서, 단계(1004)에서 루틴이 단계(1005)를 거쳐 단계(1006)로 진행된다. 단계(1006)에서, CPU(101)는 샘플링 클록(Fs)마다 CPU(101)를 인터럽트함으로써 DMA 제어기(113)에 RD(6) 루틴의 실행 정지를 지시하고, 스크래치 영역(SR)이, 도 2(e)를 참조하여 설명한 바와 같이, 현재 사용되지 않는 두 개의 녹음 버퍼(SRB0, 및 SRB1) 중 하나인 녹음 버퍼(SRBk)에 설정된다. 그 다음에, 루틴이 단계(1007)를 거쳐 단계(1008)로 진행된다. 단계(1008)에서, 스크래치 채널의 음원 레지스터(sch)에 스크래치 재생되고자 하는 파형 데이터의 판독 어드레스(SAD) 및 속도값(VEL)을 포함하는 스크래치 재생을 위한 각종 데이터가 설정되고 노트-온 명령이 기입된다. 또한, 단계(1008)에서, 다음의 처리도 전술한 처리 이전에 수행된다. 구체적으로, 먼저, 하나의 파형의 128 샘플이 재생 버퍼(PBr)에 제공된다. 이 처리에서, 재생 버퍼(PBr)를 0으로 클리어 한 후, 도 14의 후술하는 EX 스크래치 처리가 재생 버퍼에 대하여 수행될 수 있다(PBr은 도 14에서 PBr대신 사용된다). 또한, CPU(101)는 샘플링 클록(Fs)마다 CPU(101)를 인터럽트함으로써 DMA 제어기(113)에 DP 루틴의 실행을 재개하도록 지시한다. 또한, 도 16의 DP 루틴의 단계(1605)에서 야기된 후술하는 인터럽션과 같이 중요한 인터럽션이 발생된다. 이 인터럽션을 통해, HS(6)이 수행되어 스크래치 재생되고자하는 다음 128 샘플이에 제공된다. 이후, 단계(1009)에서, CPU(101)로부터의 명령하에서, 사운드I/O(112)의 A/D 입력단으로부터 D/A 출력단으로의 직접 접속은 외부 입력(111)으로부터 사운드 시스템(114)으로 악음 신호를 직접 공급하는 사운드 방출을 정지하도록 억지된다.
리본 제어기(106)의 동작을 정지한 시점에서, 루틴이 단계(1002)에서 단계(1003 및 1013)를 거쳐 단계(1014)로 진행된다. 단계(1014)에서, 노트-오프 이벤트가 스크래치 채널의 음원 레지스터(sch)에 기입된 다음에, 다음의 처리도 수행된다. 구체적으로, CPU(101)는 샘플링 클록(FS)마다 CPU(101)를 인터럽트함으로써 DMA 제어기(113)에 DP 루틴의 실행을 정지하도록 지시한다. 한편, 단계(1015)에서, CPU(101)의 명령하에, 사운드 I/O(112)의 A/D 입력단에서 D/A 출력단으로의 직접 접속이 외부 입력(111)으로부터 사운드 시스템(114)에 직접 악음 신호를 공급함으로써 방음을 달성하도록 복원된다. 단계(1016)에서, CPU(101)는 샘플링 클록(FS)마다 CPU(101)를 인터럽트함으로써 DMA 제어기(113)에 DP(6) 루틴의 실행을 재개시하도록 지시한다.
도 11(a) 내지 도 11(c) 및 도 12(a) 내지 도 12(c)는 각각의 모드 m하에서 재생 버퍼에 파형의 순차적인 샘플값을 제공하기 위해 CPU(101)에 의해 실행되는 파형 발생 루틴(HS(m))의 플로우차트이다. 파형 발생 루틴(HS(m))은 도 16의 DP 루틴의 단계(1605)에서의 후술하는 인터럽션 요구에 응하여 CPU(101)에 의해 실행된다. 구체적으로, DP 루틴에서는, 재생 버퍼(PBr)에서 보존된 파형의 하나의 샘플값이 악음의 재생을 수행하도록 각 샘플링 클록(FS)마다 사운드 I/O(112)로 전송된다. 재생 버퍼(PBr)에서의 128 샘플값 세트가 모두 재생될 때, DP 루틴이 인터럽션을 일으키도록 k를 반전시킨다. 트리거로서의 이 인터럽션시, CPU(101)는 모드 m에 따라 파형 발생 루틴(HS(m))을 실행하고, 방금 재생을 종료하여 비게 된 한 프레임의 재생 버퍼(PBr)에 대응하는 다른 세트의 128 샘플값을 새로이 생성한다.
도 11(a)은 정상 모드하에서 재생 버퍼상에 파형 샘플값을 발생시키기 위한 파형 발생 루틴(HS(0))의 플로우차트이다. HS(0)에서는, 단계(1101)에서 "정상 4"로 지정된 서브루틴이 호출되어, 처리가 종료된다. 이 서브루틴은 도 13(a)을 참조하여 후술된다.
도 11(b)은 필터 모드하에서 재생 버퍼상에 파형 샘플값을 발생시키기 위한 파형 발생 루틴(HS(2))의 플로우차트이다. HS(2)에서는, 단계(1111)에서 서브루틴"정상 2"가 호출되며, 단계(1112)에서 필터 계수(차단 주파수)가 리본 제어기(106)의 검출값(RD)에 따라 생성된다. 그 다음에 단계(1113)에서, 필터 처리(저역 필터 처리)가 수행되어, 처리가 종료된다. 단계(1111)에서의 "정상 2"는 도 13(a)을 참조하여 후술된다.
도 11(c)은 피치 모드하에서 재생 버퍼상에 파형 샘플값을 발생시키기 위한 파형 발생 루틴(HS(3))의 플로우차트이다. HS(3)에서는, 단계(1121)에서 서브루틴"피치 2"가 호출되어, 처리가 종료된다. "피치 2"는 도 13(b)을 참조하여 후술된다.
도 12(a)는 스크래치 모드하에 재생 버퍼상에 파형 샘플값을 발생시키기 위한 파형 발생 루틴(HS(4))의 플로우차트이다. HS(4)에서는, 단계(1201)에서 "정상 2"의 서브루틴이 호출된 다음에, 단계(1202)에서 스크래치 처리 서브루틴이 호출되어, 처리가 종료된다. "정상 2"는 도 13(a)을 참조하여 후술된다. 스크래치 처리서브루틴은 도 14를 참조하여 후술된다.
도 12(b)는 EX 필터 모드하에서 재생 버퍼상에 파형 샘플을 발생시키기 위한 파형 발생 루틴(HS(5))의 플로우차트이다. HS(5)가 호출될 때, 외부 입력(111)으로부터 공급된 파형 데이터의 128 샘플(선형 샘플) 세트가 녹음 버퍼에 기입되고, 재생 버퍼는 비게 된다. 따라서, HS(5)에서는, 먼저 단계(1211)에서, 필터 계수가 리본 제어기(106)의 검출값(RD)에 따라 생성되며, 단계(1212)에서 EX 필터 처리가 수행된다. 이 EX 필터 처리는 기록 버퍼에 보존된 128 파형 샘플 세트에 단계(1211)에서 얻어진 필터 계수를 이용하여 필터링 처리를 발생시키기 위해, 그리고 결과의 128 파형 샘플을 재생 버퍼에 설정하기 위해 호출된다. 단계(1212) 후, 처리가 종료된다.
도 12(c)는 EX 스크래치 모드하에서 재생 버퍼에 파형 샘플을 발생시키기 위한 파형 발생 루틴(HS(6))의 플로우차트이다. HS(6)에서는, 단계(1221)에서 레지스터 (RS)가 1인지 아닌지를 결정한다. 레지스터(RS)가 1이 아니면, 이것은 리본 제어기(106)에 동작하지 않는 것을 의미한다. 따라서, 처리가 종료된다. 단계(1221)에서 레지스터(RS)가 1이면, 이것은 리본 제어기(106)가 동작되는 것을 의미한다. 따라서, 단계(1222)에서 EX 스크래치 처리가 수행되어, 처리가 종료된다. EX 스크래치 처리는 도 14를 참조하여 후술된다.
도 13(a)은 정상 n의 플로우차트를 도시한다. 정상 4가 전술한 단계(1101)에서 호출되고, 정상 2가 전술한 단계(1111 및 1201)에서 호출된다. 먼저 단계(1301)에서, 채널을 카운트하기 위한 작업 레지스터(i)가 1로 설정되고, 샘플을 카운트하기 위한 작업 레지스터(j)가 0으로 설정되며, 현재 DP 루틴되지 않은 재생 버퍼의 모든 샘플 영역이 0으로 클리어된다. 그 다음에 단계(1302)에서, 노트-온이 i 번째 채널의 음원 레지스터(ich)에 기입되는지가 결정된다. 노트-온이 기입되지 않으면, i번째 채널의 파형 발생을 수행할 필요가 없다. 따라서, 루틴이 단계(1308)로 진행된다. i번째 채널이 단계(1302)에서 노트-온 이벤트 되면, 루틴이 단계(1303)로 진행된다.
단계(1303)에서, i번째 채널의 판독 어드레스(ADi)(ADi는 i번째 채널의 음원 레지스터(ich)에 설정)가 인크리먼트(increment)된다. 단계(1304)에서, 파형 샘플이 i 번째 채널을 통해 어드레스(ADi)로부터 판독되며, 판독된 파형 샘플이 다음에 작업 레지스터(TMP)에 설정되는 선형 파형 샘플을 얻도록 ADPCM 신장된다. 그후, 단계(1305)에서, 레지스터 (TMP)의 값이로 표시되는 것과 같이 재생 버퍼에 누산된다(채널 누산).
그 다음에 단계(1306)에서, 레지스터(j)의 카운트가 127에 도달하는지가 결정된다. 레지스터(j)가 127에 도달하지 않았으면, 단계(1307)에서 레지스터(j)는 다음 파형 샘플의 판독, 신장 및 누산을 반복하도록 인크리먼트되며, 루틴이 단계(1303)로 복귀한다. 단계(1306)에서 레지스터(j)의 카운트가 127에 도달하면, 이는 재생 버퍼의 128 샘플에 배정된 영역에 i 번째 채널의 128 샘플의 누산 또는 합산이 종료되는 것을 뜻하며, 단계(1308)로 루틴이 진행된다.
단계(1308)에서, 레지스터(i)가 n에 도달하는지가 결정된다. 레지스터(i)가 n에 도달하지 않았으면, 단계(1309)에서 다음 채널의 파형 처리를 개시하기 위해 레지스터(i)는 인크리먼트되고 레지스터(j)가 0으로 클리어된다. 그 다음에, 루틴은 i 번째 채널에 대해 처리를 반복하도록 단계(1302)로 복귀한다. 단계(1308)에서 레지스터(i)가 n에 도달하면, 이는 요전 채널에서 합산 연산이 종료되어 128 샘플이 재생 버퍼에 생성되는 것을 의미하며, 처리가 종료된다.
도 13(b)은 도 11(c)의 단계(1211)에서 호출된 "피치 2" 서브루틴의 플로우차트이다. 단계(1311)에서, 채널을 카운트하기 위한 작업 레지스터(i)는 1로 설정되고, 샘플을 카운트하기 위한 작업 레지스터(j)는 0으로 설정되며, 현재 DP 루틴되지 않는 재생 버퍼의 모든 샘플 영역은 0으로 클리어 된다. 그 다음에 단계(1312)에서, 노트-온이 i 번째 채널의 음원 레지스터(ich)에 기입되는지가 결정된다. 노트-온이 기입되지 않으면, i번째 채널의 피치 시프트된 파형 발생을 수행할 필요가 없다. 따라서, 단계(1319)로 루틴이 진행된다. 단계(1312)에서 i번째 채널이 노트-온 이벤트 되면, 단계(1313)로 루틴이 진행된다.
단계(1313)에서, 파형 샘플 판독 어드레스(ADi)에는 새로운 어드레스(ADi)를 설정하도록 F 번호(FNi)가 가산된다. ADi 및 FNi는 i번째 채널의 음원 레지스터(ich)에 설정된다. 그 다음에, 단계(1314)에서, 파형 샘플이 i번째 채널을 통해 어드레스(ADi)로부터 판독되고, 다음에 작업 레지스터(TMP)에 설정되는 선형 파형 샘플을 얻도록 ADPCM 신장된다. 판독된 파형 데이터가 ADPCM 압축되므로, 어드레스(ADi)의 정수부가 F 번호의 가산의 결과로서 최대 2로 증가하면, 요전 판독 어드레스로부터 현재의 판독 어드레스(ADi)까지의 모든 샘플이 판독되어 선형 신장에 사용된다. 그 후, 단계(1315)에서, 판독된 샘플간의 보간이 어르레스(ADi)의 소수부에 따라 수행되며, 보간된 파형 샘플이 레지스터(TMP)에 설정된다. 그 다음에, 단계(1316)에서, 얻어진 파형 샘플(TMP)이 재생 버퍼의 j번째 샘플 영역에 누산된다.
그 다음에, 단계(1317)에서, 레지스터(j)가 127에 도달하는지가 결정된다. 도달하지 않았으면, 다음 샘플에 대해 처리를 수행하도록 단계(1318)에서 레지스터(j)는 인크리먼트되어, 단계(1313)로 루틴이 복귀한다. 단계(1317)에서 레지스터(j)가 127에 도달하면, 이는 i번째 채널에 대한 처리가 종료된 것을 의미하며, 단계(1319)에서 레지스터(i)가 2에 도달하는지가 판정된다. 레지스터(i)가 2에 도달하지 않았으면, 레지스터(i)는 인크리먼트되며 단계(1320)에서 레지스터(j)가 0으로 클리어 된 다음에, 다음 채널에 대해 처리를 수행하도록 루틴은 단계(1312)로 복귀한다. 단계(1319)에서 레지스터(i)의 값이 2에 도달하면, 처리가 종료된다.
도 14는 도 12(a)의 단계(1202)에서 호출되는 스크래치 처리 및 도 12(c)의 단계(1222)에서 호출되는 EX 스크래치 처리의 플로우차트이다. 먼저 단계 (1401)에서, 리본 제어기(106)의 검출된 접촉 동작 속도(VEL)(VEL은 스크래치 채널의 음원 레지스터(sch)에 제공된다)는 스크래치 동작을 위한 가변 F 번호(SFN)로 변환된다. F 번호(SFN)가 양수 및 음수 중의 하나가 되는 속도(VEL)에 따라 결정되므로, F 번호(SFN)도 양 및 음의 방향으로 변한다. 다음에, 단계 (1402)에서 레지스터(j)는 0으로 클리어 되어, 단계(1403)로 루틴이 진행된다.
단계(1403)에서, 스크래치 F 번호(SFN)는 스크래치 채널의 음원 레지스터(sch)에 설정되는 스크래치 판독 어드레스(SAD)에 가산된다. 단계(1404)에서, 파형 샘플이 어드레스(SAD)로부터 판독되며, 레지스터(TMP)에 설정된다. 도 12(a)의 단계(1202)에서 호출된 스크래치 처리에서는, 판독된 파형 데이터가 ADPCM 신장되고 미리 소정의 영역에 전개되며, 스크래치 영역(SR)이 파형 데이터가 전개되는 소정의 영역에 설정된다(도 6의 단계(604, 605)). 한편, 도 12(c)의 단계(1222)에서 호출된 EX 스크래치 처리에서는, 선형 샘플의 시퀀스로 이루어진 파형 데이터는 외부 입력(111)으로부터 입력되어 녹음 버퍼(SRB0 및 SRB1)에 교대로 기입되고, 스크래치 영역(SR)이 리본 제어기(106)의 동작 개시 시점에서 파형 데이터의 기입되지 않는 녹음 버퍼(SRB0 및 SRB1) 중 어느 하나에 설정된다(도 10의 단계(1007)). 어느 경우든, 단계(1404)에서 보간에 필요한 샘플수만이 판독된다.
다음에, 단계(1405)에서, 판독 샘플간의 보간이 어드레스(SAD)의 소수부에 따라 수행되고, 보간된 파형 샘플은 레지스터(TMP)에 설정된다. 그 다음에 단계(1406)에서, 파형 샘플(TMP)이로 표시된 절대 샘플값을 생성하도록 재생 버퍼의 j번째 샘플 영역에 누산된다. 다음에, 단계(1407)에서, 레지스터(j)가 127에 도달하는지가 결정된다. 레지스터(j)가 127에 도달하지 않았으면, 다음 샘플에 대하여 처리를 수행하도록 단계(1408)에서 레지스터(j)는 인크리먼트되어 단계(1403)로 루틴이 복귀한다. 단계(1407)에서 레지스터(j)가 127에 도달하면, 처리가 종료된다.
도 15는 Fs 클록 발생기(110)에 의해 발생된 샘플링 클록(Fs)마다 DMA 제어기(113)에 의해 실행되는 DR(m) 루틴의 플로우차트이다. 녹음은 모드 m = 1, 5 또는 6일 때 수행된다. 먼저 단계(1501)에서, 파형 샘플은 사운드 I/O(112)의 입력 FIFO로부터 녹음 포인터(RP)에 의해 지정된 녹음 버퍼(PBk)의 샘플 영역(PBk(RP))으로 전송된다. 외부입력(111)으로부터 A/D 입력 단자에 입력된 원래의 악음 신호가 A/D변환되어 입력 FIFO에 로딩된다. 모드 m이 샘플링 모드(m = 1)일 때, A/D변환기에 의해 변환된 선형 파형 샘플 A/D는 사운드 I/O(112)의 ADPCM 압축 기능을 이용하여 ADPCM 압축되며, 압축된 파형 샘플은 입력 FIFO를 통해 녹음 버퍼(PBk(RP))로 전송된다. 한편, 모드 m이 EX 필터 모드(m = 5) 또는 EX 스크래치 모드(m = 6)일 때, A/D 변환되고 ADPCM 압축되지 않은 선형 파형 샘플이 입력 FIFO를 통해 녹음 버퍼(PBk(RP))로 전송된다. m = 6 일 때, 녹음 버퍼(SRBk(RP))는 녹음 버퍼(RBk(RP)) 대신에 사용된다.
그 후, 단계(1502)에서 녹음 포인터(RP)가 인크리먼트된다. 단계(1503)에서 녹음 버퍼(RBk)(m = 6일 때, 이후에도 부여되는 SRBk)가 충전되는지가 결정된다. 충전되지 않으면, 처리는 종료된다. 녹음 버퍼(RBk)가 충전되면, 단계(1504)에서 k는 반전된다(0이면 1로, 1이면 0으로 반전된다). 단계(1505)에서 인터럽션이 발생되어 처리가 종료된다. 이 인터럽션은 녹음 버퍼가 비도록 플래시 메모리(103)에충전된 녹음 버퍼의 파형 샘플 세트를 기입하는 처리를 수행하는 CPU(101)에 요구하기 위해서 야기된다.
도 16은 Fs 클록 발생기(110)에 의해 발생된 샘플링 클록(Fs)마다 DMA 제어기(113)에 의해 실행되는 DP 루틴의 플로우차트이다. 먼저 단계(1601)에서, 재생버퍼(PBr)상의 재생 포인터(PP)로 표시되는 파형 샘플 PBr(PP)은 사운드 I/O(112)의 출력 FIFO에 전송된다. 도 1을 참조하여 설명된 바와 같이, 출력 FIFO에 기억된 파형 샘플은 D/A 변환된 다음에, 악음을 내도록 사운드 시스템(114)으로 보내진다. 다음에, 단계(1602)에서 재생 포인터(PP)가 인크리먼트된다. 단계(1603)에서 재생 버퍼(PBr)의 마지막 샘플이 보내지는지를 결정한다.
단계(1603)에서 재생 버퍼(PBr)의 모든 파형 샘플이 재생되면, r이 반전되고(0이면 1로, 1이면 0으로 변환된다) 단계(1604)에서 다른 재생 버퍼가 다음에 판독되기 위해서 선택된다. 그 다음에 단계(1605)에서, 인터럽션이 CPU(101)에 다음 파형 샘플의 제공을 요구하기 위해서 발생되어, 처리가 종료된다. 단계(1603)에서, 아직 재생되지 않은 재생 버퍼(PBr)상에 파형 샘플이 존재하면, 처리가 일단 종료된다.
다음에, 각각의 모드에서 어느 타이밍에 전술한 플로우차트가 실행되는가 에대해 설명된다. 먼저, 정상 모드(m = 1)의 동작이 설명된다. 정상 모드가 모드 전환 스위치를 이용하는 사용자에 의해 지정될 때, 레지스터 m은 도 4에 도시된 전술한 모드 SW 이벤트 루틴에서 0으로 설정된다. 정상 모드 개시 처리(MS(0))는 특히설명될 만한 중요한 처리를 수행하지 않으므로, 그 플로우차트는 생략된다. 한편, 샘플링 클록(Fs)마다 DP 루틴을 실행하는 동작이 EX 스크래치 모드 등에 의해서 정지되는 경우, MS(0)에서 그 동작을 재개한다.
도 3의 단계(301)의 초기 설정시 또는 전술한 MS(0)에 의한 재생 동작의 재개 처리에서, CPU(101)는 도 2(a)의 모든 채널의 음원 레지스터를 노트-오프 상태로 설정하고, 도 2(c)의 재생 버퍼(PB0 및 PB1)의 모든 샘플 영역을 0으로 클리어하며, 사운드 I/O(112) 및 DMA 제어기(113)에 재생 동작을 수행하도록 지시한 다음에, Fs 클록 발생기(110)에 의해 샘플링 클록(Fs)의 발생을 개시한다. 이것에 의해, DMA 제어기(113)는 재생 버퍼에서 파형 데이터의 재생 동작을 개시하도록 Fs 클록 발생기(110)로부터 샘플링 클록(Fs)마다 CPU(101)를 인터럽트하고 인터럽션시마다 도 16의 DP 루틴을 실행한다.
이제, 재생시의 처리 타이밍이 설명된다. 도 17(a)은 재생시의 타이밍 차트를 도시한다. 각 구간(S1 내지 S5)은 128 샘플 세트의 재생을 실행하기 위한 프레임을 나타낸다. 도면에서, "CPU(101)에 의한 파형 발생"은 CPU(101)가 재생 버퍼(PB0 또는 PB1)에서 다음 재생되고자 하는 128 샘플의 발생 처리를 수행하도록 도 11(a)의 파형 발생 루틴(HS(0))을 실행하는 구간을 나타낸다. 한편, "DMAC의 DP 루틴"은 재생 버퍼에서 파형 데이터를 재생하도록 DP 루틴의 실행 처리를 수행하기 위한 구간을 나타낸다. DP 루틴은 샘플링 클록(Fs)에 따라 인터럽션마다 실행되며, 인터럽션은 한 프레임내에서 균등 간격으로 128회 발생한다. 각 "CPU(101)에 의한 파형 발생" 및 "DMAC의 DP 루틴"에 할당된 숫자 0 내지 4는 파형 발생 및 재생의순서를 나타내기 위해 편의적으로 할당된 숫자이다.
도 17(a)에서, 먼저 구간 S1에서, CPU(101)는 HS(0)를 실행하고 재생 버퍼(PB0)에 대해 파형 데이터(128 파형 샘플)를 발생 또는 생성한다. 다음 구간 S2에서, DMA 제어기(113)는 샘플링 클록(Fs)마다의 인터럽션에 기초하여 DP 루틴을 실행한다. 이것에 의해, 구간 S1에서 발생된 재생 버퍼(PB0)의 128 파형 샘플이 사운드 I/O(112)의 출력 FIFO로 전송되어 구간 S2에서 순차 재생된다. 재생 버퍼(PB0)의 모든 128 파형 샘플이 사운드 I/O(112)의 출력 FIFO로 전송되는 시점에(구간 S2의 종료시), 인터럽션이 발생한다(단계 (1605)). 트리거로서 이러한 인터럽션시, CPU(101)는 구간 S3에서 파형 발생 루틴(HS(0))을 실행하고 재생 버퍼(PB0)에 대한 새로운 파형 데이터(128 파형 샘플)를 발생시킨다.
전술한 설명은 재생 버퍼(PB0)에 대해서만 설명되어 졌다. PB1도 PB0과 교대로 사용된다. 요약하면, DP 루틴은, 구간 S1 에서 PB1의 파형 샘플의 재생, 구간 S2 에서 PB0의 파형 샘플의 재생, 구간 S3 에서 PB1의 파형 샘플의 재생, 구간 S4에서 PB0의 파형 샘플의 재생 등의 방식으로 PB0 및 PB1의 파형 샘플의 재생을 서로 교대로 수행하도록 샘플링 클록(Fs)마다 인터럽션을 기초하여 실행된다. HS(0)는 128 샘플이 각 구간에 재생되는 시점에의 발생된 인터럽션에 기초하여 실행되며, 다음 128 샘플이 현재 사용되지 않고 있는 PB0 또는 PB1 중 하나에 대해 생성된다. 소프트웨어의 계층 구조의 관점에서, DP 루틴은 레벨 1에 속하고, HS(0)는 레벨 2에 속한다. 따라서, 다음의 샘플링 클록(Fs)에서 인터럽션이 발생되고 HS(0)이 수행된다면, DP 루틴이 우선적으로 실행된다. 이것에 의해, DP 루틴에 의한 재생 및 파형 발생 루틴(HS(0))에 의한 파형 발생이 서로 병렬로 수행될 수 있다.
정상 모드(m = 0)에서 패드가 내리눌리지 않으면, 재생 버퍼(PB0, PB1)의 모든 0 샘플이 도 17(a)를 참조하여 설명된 타이밍에서 반복 재생된다. 모든 0 샘플의 재생 때문에, 실제로 악음이 발생되지 않는 경우와 같다. 이 상태에서 패드가 탭핑되는 처리가 설명된다. 도 17(a)의 "패드"의 화살표로 나타낸 바와 같이, 구간 S1에서 패드가 온(on)으로 설정되었다고 가정한다. 일반 루틴에서 패드-온이 검출되면, 온으로 설정된 패드에 대응하는 파형 데이터의 노트-온이 도 7의 온-이벤트 루틴을 통해서 도 2(a)의 음원 레지스터에 기입된다. 일반 루틴 또는 온-이벤트 루틴은 파형 발생 루틴(HS(0)) 및 DP 루틴에 병렬로 동작되도록 레벨 3에 속한다. 음원 레지스터에 기입된 노트-온은 HS(0) 의 다음 실행에서 재생 버퍼에 대해 처리된다.
다음에, 샘플링 모드(m = 1)에서의 동작이 설명된다. 샘플링 모드가 모드 전환 스위치를 이용하는 사용자에 의해 지정될 때, 레지스터 m은 도 4의 전술한 모드 SW 이벤트 루틴에서 1로 설정된다. 또한, 샘플링 모드 개시 처리(MS(1))는 도 5에 도시된 바와 같이 실행된다. MS(1)에서, DP 루틴이 정지되고 사운드 I/O(112) 및 DMA 제어기(113)가 녹음 동작을 수행하도록 지시된다. 이것에 의해, DMA 제어기(113)는 녹음 버퍼에 외부 입력으로부터의 파형 샘플의 녹음 동작을 개시하도록 Fs 클록 발생기(110)로부터 공급된 샘플링 클록(Fs)마다 CPU(101)를 인터럽트하고 매인터립션시마다 도 15의 DR(1) 루틴을 실행한다.
이제, 녹음시의 처리 타이밍이 설명된다. 도 17(b)은 녹음시의 타이밍 차트를 도시한다. 구간 S1 내지 S5는 각기 128 샘플 세트의 녹음을 실행하기 위한 프레임을 나타낸다. 도면에서, "DMAC 의 DR 루틴"은 녹음 버퍼에 사운드 I/O(112)의 입력 FIFO의 파형 샘플을 기입하도록 DR(1) 루틴 실행의 녹음 처리를 수행하기 위한 구간을 나타낸다. 파형 샘플은 외부 입력 신호를 A/D 변환함으로써 얻어지며 ADPCM 압축된다. DR(1) 루틴은 샘플링 클록(Fs)마다의 인터럽션에 기초하여 실행되며, 이 인터럽션은 한 프레임내의 균등 간격으로 128회 발생된다. 도면에서, "CPU에 의한 플래시 메모리에의 기입"은 도 5의 단계(509)에서 녹음 버퍼를 비도록 CPU(101)가 녹음 버퍼(PB0 또는 PB1)의 파형 샘플을 플래시 메모리(103)에 기입하는 처리를 수행하기 위한 구간을 나타낸다. 각 구간에 할당된 숫자 0 내지 4는 플래시 메모리에의 녹음 및 기입의 순서를 나타내기 위해 편의적으로 할당된 숫자이다.
도 17(b)에서, 먼저 구간 S1에서, 인터럽션이 샘플링 클록(Fs)마다 발생되며 DMA 제어기(113)가 매 인터럽션시마다 DR(1) 루틴을 실행한다. 이것에 의해, 사운드 I/O(112)의 입력 FIFO의 파형 샘플이 순차적으로 녹음 버퍼(RBO)에 기입된다. 128 파형 샘플이 구간 S1 의 종료시 녹음 버퍼(RB0)에 기입되는 시점에서, 인터럽션이 발생한다(단계(1505)). 트리거로서 이 인터럽션시, CFU(101)는 녹음 버퍼(RB0)를 비도록 구간 S2(단계5099)에서 플래시 메모리(103)에 녹음 버퍼(RBO)의 파형 샘플을 기입한다.
전술한 설명은 녹음 버퍼(RB0)에 대해서만 설명되고 있다. RB1도 RB0와 교대로 사용된다. 요약하면, DR(1)루틴이, 구간 S1 에서 PB0에 파형 샘플을 녹음, 구간 S2에서 RB1에 파형 샘플을 녹음, 구간 S3에서 RB0에 파형 샘플을 녹음 등으로 샘플링 클록(Fs)에 따라 서로 교대로 RB0 및 RB1에 파형 샘플의 녹음 또는 기입을 수행하도록 샘플링 클록(Fs)마다의 인터럽션에 기초하여 실행된다. 128 샘플이 각 구간에 녹음되는 시점에 발생된 인터럽션에 기초하여, 녹음을 종료하는 녹음버퍼의 파형 샘플이 상기 플래시 메모리(103)에 기입된다 소프트웨어의 계층 구조의 관점에서, DR(1) 루틴은 레벨 1에 속하고, MS(1)는 레벨 3에 속한다. 따라서, MS(1)이 실행될 때에 다음의 샘플링 클록(Fs)에서 인터럽션이 발생되면, DR(1)루틴이 우선적으로 실행된다. 이것에 이해, DR(1) 루틴에 의한 녹음 및 MS(1)에 의한 플래시 메모리(103)에의 기입은 서로 병렬로 수행될 수 있다.
다음에, 필터 모드(m = 2)에서의 동작이 설명된다. 필터 모드가 모드 전환 스위치를 이용하는 사용자에 의해 지정될 때, 레지스터 m은 도 4에 도시된 전술한 모드 SW 이벤트 루틴에서 2로 설정된다. 필터 모드 개시 처리 MS(2)가 특별히 설명될 중요한 처리를 수행하지 않으므로, 그 플로우차트는 생략된다. 한편, 샘플링 클록(Fs)마다 DP 루틴을 수행하는 동작이 EX 스크래치 모드 등에 의해 정지될 때, MS(2)는 정상 모드 개시 처리(MS(0))와 마찬가지로 그 재생 동작을 재개한다.
필터 모드는 본질적으로 정상 모드와 동일하게 재생을 수행한다. DP 루틴은 샘플링 클록(Fs)마다 실행되며 재생 버퍼(PB0 및 PB1)에서의 모든 0 샘플은 패드-온이 달성되지 않을 때 반복 재생되며, 이는 정상 모드와 같으며, 패드-온시의 처리 순서 또한 같다. 또한, 재생시의 타이밍도 도 17(a)과 같다. 그러나, 필터 모드에서는, 도 9의 RC 취입 루틴 RC(2)는 리본 제어기(106)의 검출값을 취입하도록 타이머 인터럽션에 기초하여 각각의 소정의 타이밍에서 실행되고, 도 17(a)의CPU(101)의 파형 발생 처리로서, HS(0) 대신, 도 11(b) 의 HS(2)가 설정된다. 파형 발생 루틴(HS(2))에서는, 패드-온에 기초하여 최대 2음의 파형 샘플이 재생 버퍼에 누산되고, 필터 처리가 재생 버퍼의 파형 샘플에 대한 리본 제어기(106)의 검출값(RD)에 따른 필터 계수로 수행된다(단계 (1112) 및 단계 (1113)). 전술한 방식으로, 리본 제어기(106)에 의해 재생된 음의 필터 제어가 수행된다.
필터 모드에서는, 발음 수가 정상 모드의 4에서 2로 감소된다. 발생된 악음 수의 감소 대신에 필터 처리가 재생된 파형에 적용된다. 소정수의 발음이 한 프레임 시간내에서 수행되어야 하기 때문에, 4음이 정상 모드에서 발생될 수 있더라도, 처리 시간이 필터 처리가 발생된 음에 적용될 때에는 불충분하게 된다. 이점에 대해서, 발음 수는 파형 발생의 처리 시간을 단축하도록 2로 감소되고, 남은 시간에 추가 필터 처리가 수행된다.
다음에, 피치 모드(m = 3)에서의 동작이 설명된다. 피치모드가 모드 전환 스위치를 이용하는 사용자에 의해 지정될 때, 레지스터 m이 도 4에 도시된 전술한 모드 SW 이벤트 루틴에서 3으로 설정된다. 피치 모드 개시 처리(MS(3))는 특별히 설명될 특정 처리를 수행하지 않으므로, 그 플로우차트는 생략된다. 한편, 샘플링 클록(Fs)마다 DP 루틴을 실행하는 동작이 EX 스크래치 모드 등에 의해 정지될 때,MS(3)는 정상 모드 개시 처리(MS(0))와 마찬가지로 그 재생 동작을 재개한다.
피치 모드는 본질적으로 정상 모드와 동일하게 음 재생을 수행한다. DP 루틴은 샘플링 클록(Fs)마다 수행되며 재생 버퍼(PB0, PB1)에서의 모든 0 샘플은 패드-온이 달성되지 않을 때 반복 재생되고, 이는 정상 모드에서와 같으며, 패드-온시의처리 순서 또한 같다. 또한, 재생시의 타이밍도 도 17(a)과 같다. 그러나, 피치 모드에서는, 도 8의 패드-온 이벤트 루틴이 도 7의 패드-온 이벤트 루틴 대신에 사용되고, 도 11(c)의 HS(3)의 파형 발생 루틴이 도 11(a)의 HS(0)의 파형 발생 루틴대신에 사용된다 도 8의 패드-온 이벤트 루틴에서는, 패드 번호(PN)에 대응하는 F번호(FNi)가 발생된다. 도 11(c)의 파형 발생 루틴(HS(3))에서는, 판독 속도를 변경시키도록 F 번호(FNi) 및 어드레스(ADi)의 합계인 어드레스를 이용하여 파형 샘플이 판독된다. 이것에 의해, 원하는 피치로 재생이 달성될 수 있다.
피치 모드에서는, 발음 수가 정상 모드의 4에서 2로 감소된다. 발생된 악음 수의 감소 대신에, 재생된 파형에 피치 시프트 처리가 실시된다. 소정수의 발음이 한 프레임 시간내에서 수행되어야 하기 때문에, 정상 모드에서 4음이 발생될 수 있더라도, 피치 시프트 처리가 발생된 음에 실시될 때에는 처리 시간이 불충분하게 된다. 이점에 대해서는, 파형 발생의 처리 시간을 단축하도록 발음 수가 2로 감소하여, 남은 시간에 피치 시프트 처리가 수행된다.
다음에, 스크래치 모드(m = 4)에서의 동작이 설명된다. 스크래치 모드가 모드 전환 스위치를 이용하는 사용자에 의해 지정될 때, 레지스터 m은 도 4에 도시된 전술한 모드 SW 이벤트 루틴에서 4로 설정된다. 스크래치 모드 개시 처리(MS(4))에서는, 스크래치 재생되어야 할 파형 데이터가 소정의 영역에서 전개되며 스크래치 영역(SR) 및 스크래치 포인터(SP)가 미리 설정된다. 도 6에 도시되지는 않았지만, 샘플링 클록(Fs)마다 DP 루틴을 실행하는 동작이 EX 스크래치 모드 등에 의해서 정지될 때. MS(4)는 정상 모드 개시 처리(MS(0))와 마찬가지로 그 동작을 재개한다.
스크래치 모드에서는, 패드-온에 의해 발생된 2음의 재생이 본질적으로 정상모드와 같은 순서로 수행된다. DP 루틴은 패드-온이 달성되지 않을 때 샘플링 클록(Fs)마다 실행되며 재생 버퍼(PB0, PB1)의 모든 0 샘플이 반복 재생되고, 이는 정상 모드와 같으며, 패드-온시의 처리 순서도 동일하다. 또한, 재생시 타이밍도 도 17(a)과 동일하다. 그러나, 스크래치 모드에서는, 리본 제어기(106)의 검출값을 취입하도록 도 10의 RC 취입 루틴(RC(4))이 타이머 인터럽션에 의해 수행된다. 노트-온은 동작 개시시 스크래치 채널의 음원 레지스터(sch)에 기입된다. 또한, 리본 제어기(106)의 속도(VEL)는 음원 레지스터(sch)에서 검출되며 기입된다. CPU(101)의 파형 발생 처리는 HS(0) 대신에 도 12(a)의 HS(4)에 설정된다. 파형 발생 루틴(HS(4))에서는, 패드-온에 의해 야기된 2음의 파형 샘플의 발생이 정상 모드와 마찬가지로 정상 2 서브루틴에 의해 수행된다. 또한, 스크래치 서브루틴(도 14)을 이용하여, 스크래치 영역(SR)에서의 파형 샘플이 어드레스(SAD)에 F 번호(SFN)를 가산함으로써 얻어진 어드레스(SAD)를 이용하여 판독된다. 판독된 파형 샘플은 재생 버퍼(PBr)에 누산된다. 이것에 의해, 지정된 파형 데이터를 이용하는 스크래치 재생이 패드-온에 의해 야기된 2음 이외에 달성될 수 있다.
스크래치 모드에서는, 발음 수가 정상 모드의 4에서 2로 감소된다. 발생된 악음 수의 감소 대신에, 스크래치 음이 발생된다. 소정수의 발음이 한 프레임 시간내에서 수행되어야 하기 때문에, 정상 모드에서 4음이 발생될 수 있더라도, 스크래치 음이 추가적으로 발생되는 때에는 처리 시간이 불충분하게 된다. 이점에 대해서, 발음 수는 파형 발생의 처리 시간을 단축하도록 2로 감소되고, 남은 시간을 이용함으로써 스크래치 음이 발생된다.
다음에, EX 필터 모드(m = 5)에서의 동작이 설명된다. EX 필터 모드가 모드 전환 스위치를 이용하는 사용자에 의해 지정될 때, 레지스터 m이 도 4에 도시된 전술한 모드 SW 이벤트 루틴에서 5로 설정된다. EX 필터 모드 개시 처리(MS(5))의 플로우차트가 생략되더라도, MS(5)는 DR(5) 루틴의 개시 처리를 실행한다. 구체적으로, CPU(101)는 녹음 버퍼(PBk)에 외부 입력으로부터 파형 샘플의 기입 동작을 개시하도록 사운드 I/O(112) 및 DMA 제어기(113)에 지시하여 Fs 클록 발생기(110)로부터 공급된 샘플링 클록(Fs)마다 CPU(101)를 인터럽트하고 매 인터립트시마다 도 15의 DR(5) 루틴을 실행한다. 이 때, 재생 버퍼의 파형 데이터를 재생하도록 Fs클록 발생기(110)로부터 공급되는 샘플링 클록 (Fs)마다 CPU(101)를 인터럽트하는 동작 및 매 인터럽트마다 도 16의 DP 루틴을 실행하는 동작이 정지되지 않는다. 샘플링 클록(Fs)마다 DP 루틴을 실행하는 동작이 EX 스크래치 모드 등으로 정지되면, MS(5)는 정상 모드 개시 처리(MS(0))와 마찬가지로 그 동작을 재개한다. 구체적으로, DP 및 DR(5)는 샘플링 클록(Fs)마다 실행된다. 이 경우, DP 및 DR(5)이 다음의 동일한 샘플링 클록(Fs)으로 동작하므로, 이들은 동기해 동작하여 DP 루틴의 단계(1605)에서의 인터럽션 및 DS(5) 루틴의 단계(1505)에서의 인터럽션이 동일한 타이밍에 발생한다. 트리거로서 동일한 타이밍에 발생된 인터럽션시, 도 12(b)의 파형 발생 루틴(HS(5))이 실행된다. EX 필터 모드에서는, 외부 입력 신호가 거의 녹음되지 않는다. 외부 입력 신호는 DR(5) 루틴에 취입되나, 이는 취입된 파형 데이터를 필터링하기 위해서이다. 따라서, 플래시 메모리(103)에 신호의 기입은 수행되지 않는다.
전술한 바와 같이 동일 타이밍의 DP 및 DR(5)에 따라 인터럽션이 발생하면, 외부입력(111)으로부터의 파형 데이터의 128 선형 생플은 녹음 버퍼(PBi)가 빌 때 녹음 버퍼에 기입된다. 파형 발생 루틴(HS(5))은 녹음 버퍼의 128 파형 샘플에 대해 필터링 처리를 수행하며 결과의 128 파형 샘플을 재생 버퍼에 설정한다. 도 9의 RC 취입 루틴(RC(5))은 리본 제어기(106)의 검출값(RD)을 취입하도록 타이머 인터럽션에 의해 실행된다. 필터링 처리의 필터 계수는 검출값(RD)에 따라 결정된다. 전술한 방식으로, 외부 입력 신호가 원하는 음색 변화로 변형된 악음을 출력하도록 리본 제어기(106)에 의해 필터 제어된다.
다음에, EX 스크래치 모드(m = 6)에서의 동작이 설명된다. EX 스크래치 모드가 모드 전환 스위치를 이용하는 사용자에 의해 지정될 때, 레지스터 m이 도 4에 도시된 전술한 모드 SW 이벤트 루틴에서 6으로 설정된다. EX 스크래치 모드 개시처리(MS(6))의 플로우차트가 생략되었지만, MS(6)는 다음의 처리를 실행한다. 구체적으로, CPU(101)는 재생 버퍼(PBr)의 파형 샘플을 재생하는 동작을 정지하도록 사운드 I/O(112) 및 DMA 제어기(113)에 지시하여 Fs 클록 발생기(110)로부터 공급된 샘플링 클록(Fs)마다 CPU(101)를 인터럽트하고, 매 인터럽션시 도 16의 DP 루틴을 실행한다. 또한, CPU(101)는 방음하도록 사운드 I/O(112)에 지시하여 A/D 입력단과 D/A 출력단 사이를 직접 접속하고 외부 입력(111)에서 사운드 시스템(114)으로 악음 신호를 직접 공급한다. 또한, CPU(101)는 외부입력으로부터 파형 샘플을 녹음버퍼(SRBk)에 기입하는 동작을 개시하도록 사운드 I/O(112) 및 DMA 제어기(113)에 지시하여 Fs 클록 발생기(110)로부터의 샘플링 클록(Fs)마다 CPU(101)를 인터럽트하고 매 인터럽션시마다 도 15의 DR(6) 루틴을 실행한다. EX 스크래치 모드에서는, 외부 입력 신호가 거의 녹음되지 않는다. 외부 입력 신호는 DR(6) 루틴에 의해서 취입되나, 취입된 파형 데이터는 스크래치 재생에 사용된다. 따라서, 플래시 메모리(103)에 데이터 기입은 수행되지 않는다. 또한, 타이머 인터럽션이 단계(301)에서 초기 설정시 효과적으로 설정되기 때문에, 도 10의 RC 취입 루틴(RC(6))이 타이머(105)의 의한 타이머 인터럽션에 기초하여 소정의 타이밍마다 실행된다.
리본 제어기(106)가 동작되지 않는 동안, 도 10의 RC(6)에서 단계 1001 → 1002 → 1003 → END를 거쳐 처리가 종료되어 사운드 시스템(114)에 외부 입력 신호를 직접 공급하는 처리가 지속된다. 또한, DR(6) 루틴이 샘플링 클록(Fs)마다의 인터럽션에 기초하여 실행되므로, 외부 입력 신호를 A/D 변환함으로써 얻어진 선형 파형 샘플은 입력 FIFO를 통해 교대로 녹음 버퍼(SRB0 및 SRB1)에 기입된다.
리본 제어기(106)의 동작이 리본 제어기(106)와 접촉하는 손가락 등으로 개시되면, 루틴이 RC(6)에서 단계 1001 → 1002 → 1004 → 1005를 거쳐 처리된다. 다음 단계(1001)에서, CPU(101)는 도 2(e)를 참조하여 설명되는 바와 같이 샘플링 클록(Fs)마다 CPU(101)를 인터럽트함으로써 DMA 제어기(113)에 지시하여 DR(6) 루틴의 실행을 정지하도록 지시하고 두 녹음 버퍼(SRB0 및 SRB1)중 현재 기입되지 않은 하나의 녹음 버퍼에 스크래치 영역(SR)을 설정한다. 다음에, 단계(1007)에서 스크래치 포인터(SP)의 소정값이 초기 판독 어드레스(SAD)로서 설정된다. 또한, 단계(1008)에서, 처음에 재생되어야 하는 128 파형 샘플이 재생 버퍼(PBr)에 대해 발생되며, CPU(101)는 샘플링 클록(Fs)마다 CPU를 인터럽트함으로써 DMA 제어기(113)에 DR 루틴의 실행을 재개하도록 지시한다. 또한, 도 16의 DP 루틴의 단계(1605)에서 발생된 인터럽션과 같은 의미의 인터럽션이 발생된다. 이 인터럽션에 의해, HS(6)가 실행되며, 다음에 스크래치되어야 할 128 샘플이에 발생된다. 또한, CPU(101)로부터의 명령하에서, 사운드 I/O(112)의 A/D 입력단에서 D/A 출력단으로의 직접 접속이 외부 입력(111)에서 사운드 시스템(114)으로 직접 악음 신호의 공급을 정지하도록 차단된다.
또한, 리본 제어기(106)와 접촉한채로 손가락 등이 움직이면, 루틴은 단계(1004)에서 단계(1011)로 진행되어 속도(VEL)가 검출되며 음원 레지스터(sch)에 설정된다. 한편, 샘플링 클록(Fs)마다의 인터럽션에 기초하여 실행되는 DP 루틴에서는, 재생 버퍼(PB0 및 PB1)가 연속해서 교대로 이용된다. 따라서, 스크래치 음의 재생은 리본 제어기(106)의 동작이 개시되는 시점에서의 음원 레지스터(sch)에 기초하여 개시된다. 특히, DP 루틴의 단계(1605)에서의 인터럽션에 의해 트리거되는 도 12(c)의 파형 발생 루틴(HS((6))에서는, 리본 제어기(106)의 동작이 실행되는 동안 RS = 1로 유지되므로, 루틴은 단계(1221)에서 단계(1222)로 처리되어 도 14의 EX 스크래치 처리가 실행된다. 도 14의 EX 스크래치 처리에서는, 스크래치 영역(SR)의 파형 샘플이 검출 속도(VEL)에 따르는 F 번호 SFN에 어드레스(SAD)를 가산함으로써 얻어진 어드레스(SAD)를 이용하여 판독되어 재생 버퍼에 설정된다. 단계(1406)에서 판독 데이터의 누산이 수행되는 것으로 보이지만, 모든 0 샘플이에 설정되므로, 스크래치되어야 하는 파형 샘플(TMP)이 거의에 설정된다. 전술한 배열에서는, 외부 입력으로부터 입력된 파형 데이터를 이용하는 스크래치 재생이 달성된다.
도 18(a) 및 도 18(b)은 도 14의 단계(1401)에서 수행되는 속도(VEL)로부터 스크래치 F 번호 SFN로의 변환의 일례를 도시한다. 이 변환은 연산 또는 표에 의해 달성될 수 있다. 도 18(a)은 F 번호(SFN)의 변화가 속도(VEL)의 절대값의 증가함에 따라 증가하는 일례를 도시한다. 이 때문에 리본 제어기(106)의 길이가 작은 경우에도 피치 변화가 큰 그러한 방식으로 스크래치 효과를 실현시킨다.
정확한 피치 제어가 스크래치의 재생에 있어서 요구되지 않으므로, 스크래치 어드레스(SAD)의 소수부에서의 비트의 수는 필요하면 감소될 수 있다. 특히, 도 14의 단계(1403)에서 얻어진 어드레스(SAD)의 소수부에서의 비트 수가 감소될 수 있다. 이 때문에 단계(1405)에서 수행된 보간의 연산량을 감소시킬 수 있다. 또한, 속도(VEL)로부터 스크래치 F 번호(SFN)로의 변환시 도 18(b)에 도시된 표를 이용하여 F 번호(SFN)의 소수부에서의 비트 수는 보간의 연산량을 감소시키도록 감소될 수 있다.
또한, 전술한 EX 스크래치 모드에서는, 외부 입력으로부터 공급되는 파형 데이터가 녹음 버퍼(SRB0 및 SRB1)에 교대로 기억되고, 스크래치 영역이 리본 제어기의 동작 개시 시점에 기입되지 않은 녹음 버퍼에 설정된다. 한편, 파형 데이터가 링 형상으로 순서대로 기억되는 곳에 3개의 녹음 버퍼가 제공되고, 스크래치 영역이 리본 제어기의 동작 개시 시점에 기입되지 않는 복수의 녹음 버퍼에 설정되게 배열될 수 있다. 이러한 배열에 의해서, 스크래치 영역이 복수의 녹음 버퍼에 설정되므로, 스크래치에 충분한 스크래치 영역 용량이 확보될 수 있다. 또한, 각 녹음 버퍼의 용량이 작게 설정될 수 있으므로, 리본 제어기의 작동 개시 시점에 기입되는 녹음 버퍼의 데이터 양이 감소된다. 따라서, 스크래치에 사용되지 않는 데이터가 감소될 수 있다. 환언하면, 데이터의 버리는 부분이 적게 될 수 있다.
도 17(a)에서는, 패드-온 검출 구간, CPU에 의한 파형 발생 구간, DMAC의 DP 루틴의 실행 구간의 선두 시점을 서로 일치시켜 도시된다. 그러나 이는, 반드시 필요한 것은 아니며, 각각의 구간이 서로 어긋날 수 있다. 이는 도 17(b)에 도시된 녹음시의 타이밍에도 적용한다. 또한, 도 17(a)에서, CPU는 재생 버퍼 중 하나의 샘플의 재생이 DP 루틴에서 종료되는 시점에 파형 발생을 수행한다. 한편, 재생되지 않는 나머지 수의 샘플이 재생 버퍼에서 검출되게 배열될 수 있다. 검출된 수가 소정값 이상이 되지 않으면, 빈 부분에 새로운 샘플이 발생된다. 따라서, 샘플의 재생 및 발생 타이밍을 조정함으로써 재생 버퍼의 수가 1 또는 최대 3으로 될 수 있다.
도 19는 본 발명의 악음 발생 장치의 추가의 실시예를 도시한다. 이 실시예는 기본적으로 도 1에 도시된 제1 실시예와 같은 구성을 가진다. 동일한 구성부품은 추가의 실시예의 이해를 보다 용이하게 하도록 제1 실시예의 것과 같은 참조부호로 나타내어진다. ROM(102), RAM(104) 및 하드디스크(도시되지 않음) 등의 기억장치는 파형 데이터 등의 각종 데이터, 및 시스템 제어 프로그램 또는 기본 프로그램, 파형 판독 또는 발생 프로그램 및 다른 응용 프로그램을 포함하는 각종 프로그램을 기억할 수 있다. 통상적으로, ROM(102)는 프로그램을 임시로 기억한다. 그러나, 그렇지 않아도, 임의의 프로그램이 장치에 로딩될 수 있다. 로딩된 프로그램은 CPU(101)가 악음 발생 장치의 발명의 시스템을 동작시키게 하도록 RAM(104)로 전송된다. 이러한 방식으로, 신규의 또는 버전-업 프로그램이 시스템에 용이하게 설치될 수 있다. 이러한 목적을 위해, CD-ROM(Compact Disc Read Only Memory)(151) 등의 기계 판독 가능한 매체가 프로그램을 설치하도록 이용된다. CD-ROM(151)은 CD-ROM 드라이브(152)에 설치되어 CD-ROM(151)에서 버스(115)를 통해 RAM(104)에 프로그램을 판독 및 다운로드한다. 기계 판독 가능한 매체는 CD-ROM(151) 이외의 자기 디스크 또는 광학 디스크로 구성될 수 있다.
통신 인터페이스(153)는 LAN(Local Area Network), 공중 전화망 및 INTERNET 등의 통신망(155)을 통해 외부 서버 컴퓨터(154)에 접속된다. 내부 기억장치가 필요한 데이터 또는 프로그램을 보유하고 있지 않으면, 통신 인터페이스(153)는 서버컴퓨터(154)로부터 데이터 또는 프로그램을 수신하게 동작된다. CPU(101)는 인터페이스(153) 및 통신망(155)을 통해 서버 컴퓨터(154)에 요청을 전송한다. 상기 요청에 응하여, 서버 컴퓨터(154)는 요청된 데이터 및 프로그램을 상기 장치로 전송한다. 전송된 데이터 및 프로그램은 기억장치내에 기억됨으로써 다운로딩을 완료한다.
본 발명의 악음 발생 장치는 필요한 데이터 및 프로그램이 설치된 퍼스널 컴퓨터에 의해 실시될 수 있다. 이 경우, 데이터 및 프로그램은 CD-ROM(151) 또는 플로피 디스크 등의 기계 판독 가능한 매체에 의해 사용자에게 제공된다. 기계 판독 가능한 매체는 이전의 실시예와 관련하여 설명된 바와 같이 퍼스널 컴퓨터가 본 발명의 악음 발생 방법을 수행하게 하는 명령을 포함한다. 한편, 퍼스널 컴퓨터는 통신망(155)을 통해 데이터 및 프로그램을 수신할 수 있다.
전술한 바와 같이, 본 발명에 따르면, 소프트웨어 음원에 의해 동시 발생되는 악음의 수가 감소되더라도, 디지털 음질의 필터 처리, 피치 부여 처리 또는 스크래치 효과 부여 처리를 수행하기 위한 선택 모드가 제공된다. 따라서, 종래의 소프트웨어 음원에 의해 달성되지 않았던 기능이 실현될 수 있어 사용자의 다양한 목적에 부합하는 악음 발생이 실현될 수 있다.
또한, 본 발명에 따르면, 대응하는 악음을 재생하도록 디지털 파형 데이터를 판독하기 위한 발음 장치에서는, 사용자의 접촉 동작의 검출하는데 검출기구가 제공된다. 파형 데이터는 검출된 접촉 동작에 따라 결정되는 변경된 판독 어드레스에 따라 판독된다. 이러한 방식으로, 본 발명의 디지털 악기는 사용자와 터치 동작에 응하여, 종래의 아날로그 악기에 의해서만 얻어지던 자연스런 스크래치 효과를 생성시킬 수 있다. 또한, 접촉 동작이 초기 설정될 때 소정의 톱 어드레스로부터 파형 데이터가 판독된다. 따라서, 사용자가 스크래치 검출 기구를 어디에서 접촉하든 소정의 톱 어드레스로부터 파형 데이터가 항상 검색된다. 그러므로, 녹음 디스크의특정 구간이 음악의 리듬과 동기하여 반복적으로 재생되는 아날로그 녹음 디스크를 이용하여 수행되는 것과 같은 발명에 의해서 동일한 반복 스크래치 동작이 실현된다. 또한, 검출기구로부터의 출력은 차등적으로 처리되어 접촉 동작의 속도를 검출한다. 그 다음에, 변수 F 번호는 접촉 동작에 따라 결정된다. F 번호는 파형 데이터의 판독에 사용하기 위한 판독 어드레스에 누산된다. 이러한 방식으로, F 번호의 변형 범위는 선형 검출 기구의 제한된 길이로 확장될 수 있으므로, 넓은 스크래치 제어를 실현한다. 또한, 본 발명에 따르면, 스크래치 효과는 실시간 베이스로 외부입력으로부터 입력되는 새로운 파형에 적용될 수 있다. 따라서, 사용자는 음악의 라이브 연주시 재생된 악음의 원하는 구간을 스크래치할 수 있다.

Claims (61)

  1. 대응 파형을 판독함으로써 악음의 재생을 수행하도록 실행되는 프로그램이 설치된 컴퓨터 악기에 있어서,
    각 파형이 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스 형태로 기억되는, 상이한 악음에 대응하는 복수의 파형을 기억하기 위한 기억수단;
    대응하는 악음의 재생을 명령하도록 기억된 파형 중 적어도 하나를 지정하기 위한 지정수단;
    정상 모드와 선택 모드 사이에서 악음의 재생을 전환하기 위한 동작 가능한 전환수단;
    대응 악음의 수를 동시에 재생하도록 프로그램에 따라 상기 기억수단으로부터 지정된 파형의 수를 동시에 판독하기 위해 정상 모드하에서 비교적 고기능으로 할당되고, 그렇지 않으면 프로그램에 따라 재생된 악음에 특별 음향 효과를 부여하도록 지정된 파형을 디지털 방식으로 처리하기 위해 선택 모드하에서 추가 기능이 할당되면서도 정상 모드하에서와 비교해서 선택 모드하에서 동시에 재생된 악음의 수가 감소되어 선택 모드하에서 비교적 저기능으로 할당되며, 지정된 파형의 구간을 판독하기 위한 제1 간격으로 주기적으로 프로그램을 실행하는 프로세서 수단; 및
    악음을 재생하도록 지정된 파형의 구간을 수신하고 지정된 파형의 수신된 구간을 순차적으로 출력하기 위한 제1 간격보다 짧은 제2 간격으로 주기적으로 동작하는 출력수단을 구비하는 것을 특징으로 하는 컴퓨터 악기.
  2. 제1항에 있어서,
    상기 전환수단은 정상 모드와 필터 선택 모드 사이에서 전환 가능한 수단을 구비하여 상기 프로세서 수단이 특정 음향 효과를 부여하도록 필터링에 의해 지정된 파형을 디지털 방식으로 처리하기 위해 상기 필터 선택 모드하에서 동작하는 것을 특징으로 하는 컴퓨터 악기.
  3. 제 1항에 있어서,
    상기 전환수단은 정상 모드와 피치 선택 모드 사이에서 전환 가능한 수단을 구비하여 상기 프로세서 수단이 특정 음향 효과를 부여하도록 지정된 파형의 판독 속도를 변경함으로써 지정된 파형을 디지털 방식으로 처리하기 위해 상기 피치 선택 모드하에서 동작하는 것을 특징으로 하는 컴퓨터 악기.
  4. 제 1항에 있어서,
    상기 전환수단은 정상 모드와 스크래치 선택 모드 사이에서 전환 가능한 수단을 구비하여 상기 프로세서 수단이 특정 음향 효과를 부여하도록 지정된 파형의 판독 속도를 불규칙하게 변경함으로써 지정된 파형을 디지털 방식으로 처리하기 위해 상기 스크래치 선택 모드하에서 동작하는 것을 특징으로 하는 컴퓨터 악기.
  5. 제2항에 있어서,
    상기 특정 음향 효과는 재생된 악음의 음색의 변형인 것을 특징으로 하는 컴퓨터 악기.
  6. 제3항에 있어서,
    상기 특정 음향 효과는 재생된 악음의 피치의 변형인 것을 특징으로 하는 컴퓨터 악기.
  7. 제4항에 있어서,
    상기 특정 음향 효과는 대응 악음에 스크래치 효과를 부여하는 것인 것을 특징으로 하는 컴퓨터 악기.
  8. 제4항에 있어서,
    상기 프로세서 수단은 스크래치 동작을 입력하여 조작되는 스크래치 기구를 더 구비하여 입력된 스크래치 동작에 따라 지정된 파형의 판독 어드레스를 변경시키기 위해 스크래치 선택 모드하에서 동작하는 것을 특징으로 하는 컴퓨터 악기.
  9. 제3항에 있어서,
    상기 프로세서 수단은 재생되어야 하는 악음의 피치를 지정하기 위해 동작가능한 피치 지정수단을 더 구비하여 상기 피치 지정수단에 의해 지정된 피치를 재생된 악음에 부여하도록 피치 선택 모드하에서 동작하는 것을 특징으로 하는 컴퓨터 악기.
  10. 제9항에 있어서,
    상기 지정수단 및 상기 피치 지정수단은 사용자에 의해 수동으로 동작 가능한 공통 기구를 구비하여 상기 공통 기구가 정상 모드하에서 파형을 지정하기 위한 지정수단으로서 사용되면서도 상기 공통 기구가 파형을 지정하기 위한 지정수단 뿐만 아니라 지정된 파형에 대응하는 악음의 피치를 지정하기 위한 피치 지정수단으로서 사용되는 것을 특징으로 하는 컴퓨터 악기.
  11. 대응 파형을 판독함으로써 악음의 재생을 수행하도록 실행되는 프로그램이 설치된 컴퓨터 악기에 있어서,
    각 파형이 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스 형태로 기억되는, 상이한 악음에 대응하는 복수의 파형을 임시로 기억하기 위한 기억수단;
    대응하는 악음의 재생을 명령하도록 기억된 파형 중 적어도 하나를 지정하기 위한 지정수단;
    새로운 파형이 외부입력으로부터 입력될 때 실시간 베이스로 상기 새로운 파형을 수신하기 위한 수신수단;
    정상 모드와 선택 모드 사이에서 악음의 재생을 전환하기 위한 동작 가능한 전환수단;
    지정된 파형에 대응하는 악음을 재생하도록 프로그램에 따라 상기 기억수단으로부터 상기 지정수단에 의해 지정된 내장 파형을 판독하기 위해 정상 모드하에서 동작하지 않으면, 새로운 파형에 대응하는 악음을 재생하도록 상기 지정수단에 의해 지정된 내장 파형의 판독을 보류하고 그 대신에 상기 수신수단에 의해 수신된 새로운 파형을 처리하기 위해 선택 모드하에서 동작하여 특정 음향 효과가 프로그램에 따라 재생된 악음에 부여되며, 지정된 파형의 구간을 판독하기 위한 제1 간격으로 프로그램을 주기적으로 실행하는 프로세서 수단; 및
    악음을 재생하도록 지정된 파형의 구간을 수신하고 지정된 파형의 수신된 구간을 순차적으로 출력하기 위한 제1 간격보다 짧은 제2 간격으로 주기적으로 동작하는 출력수단을 구비하는 것을 특징으로 하는 컴퓨터 악기.
  12. 제11항에 있어서,
    상기 프로세서 수단은 디지털 필터링에 의해 새로운 파형을 처리하기 위해 선택 모드하에서 동작하는 필터링 수단을 구비함으로써 특정 음향 효과를 부여하는 것을 특징으로 하는 컴퓨터 악기.
  13. 제11항에 있어서,
    상기 프로세서 수단은 새로운 파형을 불규칙하게 처리하기 위해 선택 모드하에서 동작하는 스크래칭 수단을 구비함으로써 특정 음향 효과를 부여하는 것을 특징으로 하는 컴퓨터 악기.
  14. 제13항에 있어서,
    상기 스크래칭 수단은 스크래치 조작을 입력하여 조정되는 스크래치 기구를 더 구비하여 새로운 파형이 상기 수신수단에 의해 수신된 후에 임시로 기억되는 새로운 파형의 판독 어드레스를 불규칙하게 변경시키기 위해 입력된 스크래치 동작에 따라 동작함으로써 스크래치 효과로 악음을 재생하는 것을 특징으로 하는 컴퓨터 악기.
  15. 제12항에 있어서,
    상기 특정 음향 효과는 재생된 악음의 음색의 변형인 것을 특징으로 하는 컴퓨터 악기.
  16. 제13항에 있어서,
    상기 특정 음향 효과는 재생된 악음에 스크래치 효과를 부여하는 것인 것을 특징으로 하는 컴퓨터 악기.
  17. 접촉 동작에 응해서 재생된 악음에 스크래치 효과를 도입하도록 가변 판독 어드레스에 따라 대응 파형을 판독함으로써 악음을 재생하기 위한 악기에 있어서,
    대응 악음을 나타내도록 소정 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 파형을 기억하기 위한 기억수단;
    길이에 따라 접촉 동작점을 검출하고 검출된 접촉 동작점에 대응하는 위치값을 출력하기 위해 접촉 동작을 수신하도록 길이를 갖는 검출 기구;
    접촉 동작을 모니터링하도록 상기 검출 기구로부터 출력된 위치값을 주기적으로 검색하기 위한 검색수단; 및
    스크래치 효과로 대응 악음을 재생하도록 검색된 위치값에 따라 각 판독 어드레스를 가변적으로 결정하며 각기 결정된 판독 어드레스에 따라 상기 기억수단으로부터 파형을 연속적으로 판독하기 위한 재생수단을 구비하고,
    상기 재생수단은 접촉 동작이 소정의 개시 판독 어드레스로부터 파형을 판독을 개시하게 초기 설정될 때 동작하는 수단을 구비하여, 각기 결정된 판독 어드레스에 따라 파형을 연속해서 지속적으로 판독하기 위해 접촉 동작 진행 중에 동작하는 것을 특징으로 하는 악기.
  18. 접촉 동작에 응해서 재생된 악음에 스크래치 효과를 도입하도록 가변 판독 어드레스에 따라 대응 파형을 판독함으로써 악음을 재생하기 위한 악기에 있어서,
    대응 악음을 나타내도록 소정 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 파형을 기억하기 위한 기억수단;
    길이에 따라 접촉 동작점을 검출하고 검출된 접촉 동작점에 대응하는 위치값을 출력하기 위해 접촉 동작을 수신하도록 길이를 갖는 검출 기구;
    접촉 동작을 모니터링하도록 상기 검출 기구로부터 출력된 위치값을 주기적으로 검색하기 위한 검색수단; 및
    스크래치 효과로 대응 악음을 재생하도록 검색된 위치값에 따라 각 판독 어드레스를 가변적으로 결정하며 각기 결정된 판독 어드레스에 따라 상기 기억수단으로부터 파형을 연속적으로 판독하기 위한 재생수단을 구비하고,
    상기 검색수단은 접촉 동작의 속도를 연산하도록 주기적으로 검색된 위치값을 차등적으로 처리하기 위한 수단을 구비하며,
    상기 재생수단은 접촉 동작의 속도에 따라 변수를 결정하고 다음의 판독 어드레스를 결정하도록 변수를 이전의 판독 어드레스에 누산하기 위한 수단을 구비하는 것을 특징으로 하는 악기.
  19. 대응 파형을 판독함으로써 악음의 재생을 수행하도록 실행되는 프로그램이 설치된 컴퓨터 악기의 동작방법에 있어서,
    각 파형이 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 기억되는, 기억장치에서 다른 악음에 대응하는 복수의 파형을 기억하는 단계;
    대응하는 악음의 재생을 명령하도록 기억된 파형 중 적어도 하나를 지정하는 단계;
    정상 모드와 선택 모드 사이에서 악음의 재생을 전환하는 단계;
    대응 악음의 수를 동시에 재생하도록 프로그램에 따라 기억장치로부터 지정된 파형의 수를 동시에 판독하기 위해 정상 모드하에서 비교적 고기능으로 제1 재생을 수행하는 단계;
    그렇지 않으면 선택 모드하에서 비교적 저기능으로 제2 재생을 수행하여 선택 모드하에서 동시에 재생된 악음의 수가 정상 모드하의 것과 비교해서 감소되는 단계; 및
    프로그램에 따라 대응 악음에 특정 음향 효과를 부여하도록 지정된 파형을 디지털 방식으로 처리하기 위해 선택 모드하에서 추가 기능으로 제3 재생을 수행하는 단계;
    지정된 파형의 구간을 판독하기 위한 제1 간격으로 프로그램을 주기적으로 실행하는 단계;
    지정된 파형의 구간을 수신하는 단계; 및
    악음을 재생하도록 지정된 파형의 수신된 구간을 순차적으로 출력하기 위한 제1 간격보다 짧은 제2 간격으로 주기적으로 동작하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  20. 제19항에 있어서,
    상기 전환 단계는 정상 모드와 필터 선택 모드 사이의 전환을 포함하여 상기 제3 재생이 특정 음향 효과를 부여하도록 필터링에 의해 지정된 파형을 디지털 방식으로 처리하기 위해 상기 필터 선택 모드하에서 수행되는 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  21. 제19항에 있어서,
    상기 전환 단계는 정상 모드와 피치 선택 모드 사이의 전환을 포함하여 상기제3 재생이 특정 음향 효과를 부여하도록 지정된 파형의 판독 속도를 변경함으로써 지정된 파형을 디지털 방식으로 처리하기 위해 상기 피치 선택 모드하에서 수행되는 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  22. 제21항에 있어서,
    사용자에 의해 재생되고자 하는 악음의 피치를 지정하는 단계를 더 포함하여 상기 제3 재생이 재생된 악음을 지정하는 단계에 의해 지정된 피치를 부여하도록 피치 선택 모드하에서 수행되는 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  23. 제19항에 있어서,
    상기 전환 수단은 정상 모드와 스크래치 선택 모드 사이의 전환을 포함하여 상기 제3 재생이 특정 음향 효과를 부여하도록 지정된 파형의 판독 어드레스를 불규칙하게 변경함으로써 지정된 파형을 디지털 방식으로 처리하기 위해 상기 스크래치 선택 모드하에서 수행되는 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  24. 제23항에 있어서,
    스크래치 동작을 입력하여 사용자에 의해 스크래치 기구를 조작하는 단계를 더 포함하여 상기 제3 재생이 입력된 스크래치 동작에 따라 지정된 파형의 판독 어드레스를 변경시키기 위해 스크래치 선택 모드 하에서 수행되는 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  25. 제20항에 있어서,
    상기 특정 음향 효과는 대응 악음의 음색의 변형인 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  26. 제21항에 있어서,
    상기 특정 음향 효과는 대응 악음의 피치의 변형인 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  27. 제23항에 있어서,
    상기 특정 음향 효과는 대응 악음에 스크래치 효과를 부여하는 것인 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  28. 대응 파형을 판독함으로써 악음의 재생을 수행하도록 실행되는 프로그램이 설치된 컴퓨터 악기의 동작방법에 있어서,
    각 파형이 소정의 샘플링 주기로 배열된 진폭값의 시퀀스의 형태로 기억되는, 기억장치에서 상이한 악음에 대응하는 복수의 파형을 임시로 기억하는 단계;
    대응하는 악음의 재생을 명령하도록 기억된 파형 중 적어도 하나를 지정하는 단계;
    새로운 파형이 외부입력으로부터 입력될 때 실시간 베이스로 상기 새로운 파형을 수신하는 단계;
    정상 모드와 선택 모드 사이에서 악음의 재생을 전환하는 단계;
    지정된 파형에 대응하는 악음을 재생하도록 프로그램에 따라 기억장치로부터 지정하는 단계에 의해 지정된 내장 파형을 판독하기 위한 정상 모드하에서 제1 재생을 수행하는 단계;
    그렇지 않으면 새로운 파형에 대응하는 악음을 재생하도록 상기 지정하는 단계에 의해 지정된 내장 파형의 판독을 보류하고 그 대신에 상기 수신하는 단계에 의해 수신된 새로운 파형을 처리하기 위해 선택 모드하에서 제2 재생을 수행하여 특정 음향 효과가 프로그램에 따라 재생된 악음이 부여되는 단계;
    지정된 파형의 구간을 판독하기 위한 제1 간격으로 프로그램을 주기적으로 실행하는 단계;
    지정된 파형의 구간을 수신하는 단계; 및
    악음을 재생하도록 지정된 파형의 수신된 구간을 순차적으로 출력하기 위한 제1 간격보다 짧은 제2 간격으로 주기적으로 동작하는 단계를 포함하는 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  29. 제28항에 있어서,
    상기 제2 재생은 디지털 필터링에 의해 새로운 파형을 처리하기 위해 선택모드하에서 수행됨으로써 특정 음향 효과를 부여하는 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  30. 제28항에 있어서,
    상기 제2 재생은 새로운 파형을 불규칙하게 처리하기 위해 선택 모드하에서 수행됨으로써 특정 음향 효과를 부여하는 것을 특징으로 하는 컴퓨터 악기의 동작 방법.
  31. 제30항에 있어서,
    스크래치 동작을 입력하여 사용자에 의해 스크래치 기구를 조작하는 단계를 더 포함하여 상기 제2 재생이 새로운 파형이 수신된 후에 임시로 기억되는 새로운 파형의 판독 어드레스를 불규칙하게 변경시키기 위해 입력된 스크래치 동작에 따라 수행됨으로써 스크래치 효과로 악음을 재생하는 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  32. 제19항에 있어서,
    상기 특정 음향 효과는 생성된 악음의 음색의 변형인 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  33. 제30항에 있어서,
    상기 특정 음향 효과는 재생된 악음에 스크래치 효과를 부여하는 것인 것을 특징으로 하는 컴퓨터 악기의 동작방법.
  34. 접촉 동작에 응해서 재생된 악음에 스크래치 효과를 도입하도록 가변 판독 어드레스에 따라 대응 파형을 판독함으로써 악음을 재생하기 위한 악기의 동작방법에 있어서,
    대응 악음을 나타내도록 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 파형을 기억장치에 기억하는 단계;
    길이에 따라 접촉 동작점을 검출하고 검출된 접촉 동작점에 대응하는 위치값을 출력하기 위해 접촉 동작을 수신하도록 길이를 갖는 검출 기구를 동작하는 단계;
    접촉 동작을 모니터링하도록 검출 기구로부터 출력된 위치값을 주기적으로 검색하는 단계;
    검색된 위치값에 따라 각 판독 어드레스를 가변적으로 결정하는 단계; 및
    스크래치 효과로 대응 악음을 재생하도록 각기 결정된 판독 어드레스에 따라 기억장치로부터 파형을 연속적으로 판독하기 위한 재생을 수행하는 단계를 포함하고,
    상기 재생은 접촉 동작이 소정의 개시 판독 어드레스로부터 파형의 판독을 개시하기 위해 초기 설정될 때 수행되고, 상기 재생은 각기 결정된 판독 어드레스에 따라 파형을 연속해서 지속적으로 판독하기 위해 접촉 동작의 진행 중에 수행되는 것을 특징으로 하는 악기의 동작방법.
  35. 제34항에 있어서,
    상기 검색하는 단계는 접촉 동작의 속도를 연산하도록 주기적으로 검색된 위치값을 차등적으로 처리하는 것을 포함하고, 상기 재생을 수행하는 단계는 접촉 동작의 속도에 따라 변수를 결정하고 다음의 판독 어드레스를 결정하도록 이전의 판독 어드레스에 변수를 누산하는 것을 특징으로 하는 악기의 동작방법.
  36. 접촉 동작에 응해서 재생된 악음에 스크래치 효과를 도입하도록 가변 판독 어드레스에 따라 대응 파형을 판독함으로써 악음을 재생하기 위한 악기의 동작방법에 있어서,
    외부입력으로부터 파형을 연속적으로 입력하는 단계;
    대응 악음을 나타내도록 소정 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 파형을 기억장치에 기억하는 단계;
    길이에 따라 접촉 동작점을 검출하고 검출된 접촉 동작점에 대응하는 위치값을 출력하기 위해 접촉 동작을 수신하도록 길이를 갖는 검출 기구를 동작하는 단계;
    접촉 동작을 모니터링하도록 상기 검출 기구로부터 출력된 위치값을 주기적으로 검색하는 단계;
    검색된 위치값에 따라 판독 어드레스를 발생시키고 판독 어드레스에 따라 기억장치로부터 파형을 연속적으로 판독하는 단계; 및
    파형에 따라 악음을 재생하는 단계를 포함하고,
    접촉 동작이 상기 검출 기구에 의해 검출되지 않을 때, 입력된 파형을 기억하는 단계는 지속하여 입력된 파형에 대응하는 악음이 스크래치 효과 없이 재생되며, 접촉 동작이 상기 검출 기구에 의해 검출될 때, 상기 기억하는 단계는 보류되어 상기 판독하는 단계에서 판독된 파형에 대응하는 악음이 스크래치 효과로 재생되는 것을 특징으로 하는 악기의 동작방법.
  37. 대응 파형을 판독함으로써 컴퓨터 악기가 악음을 재생하는 방법을 수행하게 하기 위한 프로그램을 포함하는 기계 판독 가능한 매체에 있어서,
    상기 방법은,
    각 파형이 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 기억되는, 상이한 악음에 대응하는 복수의 파형을 기억장치에 기억하는 단계;
    대응하는 악음의 재생을 명령하도록 기억된 파형 중 적어도 하나를 지정하는 단계;
    악음의 재생을 위해 정상 모드 및 선택 모드를 제공하는 단계;
    대응 악음의 수를 동시에 재생하도록 프로그램에 따라 기억장치로부터 지정된 파형의 수를 동시에 판독하기 위해 정상 모드하에서 비교적 고기능으로 제1 재생을 수행하는 단계;
    그렇지 않으면 선택 모드하에서 비교적 저기능으로 제2 재생을 수행하여 선택 모드하에서 동시에 재생된 악음의 수가 정상 모드하의 것과 비교해서 감소되는 단계;
    프로그램에 따라 대응 악음에 특정 음향 효과를 부여하도록 지정된 파형을 디지털 방식으로 처리하기 위해 선택 모드하에서 추가 기능으로 제3 재생을 수행하는 단계;
    지정된 파형의 구간을 판독하기 위한 제1 간격으로 프로그램을 주기적으로 실행하는 단계;
    지정된 파형의 구간을 수신하는 단계; 및
    악음을 재생하도록 지정된 파형의 수신된 구간을 순차적으로 출력하기 위한 제1 간격보다 짧은 제2 간격으로 주기적으로 동작하는 단계를 포함하는 것을 특징으로 하는 기계 판독 가능한 매체.
  38. 제37항에 있어서,
    전환하는 단계는 정상 모드와 필터 선택 모드 사이의 전환을 포함하여 상기 제3 재생이 특정 음향 효과를 부여하도록 필터링에 의해 지정된 파형을 디지털 방식으로 처리하기 위해 상기 필터 선택 모드하에서 수행되는 것을 특징으로 하는 기계 판독 가능한 매체.
  39. 제37항에 있어서,
    전환하는 단계는 정상 모드와 피치 선택 모드 사이의 전환을 포함하여 상기 제3 재생이 특정 음향 효과를 부여하도록 지정된 파형의 판독 속도를 변경함으로써 지정된 파형을 디지털 방식으로 처리하기 위해 상기 피치 선택 모드하에서 수행되는 것을 특징으로 하는 기계 판독 가능한 매체.
  40. 제39항에 있어서,
    상기 방법은 사용자에 의해 재생되는 악음의 피치를 지정하는 단계를 더 포함하여 상기 제3 재생이 재생된 악음에 상기 지정하는 단계에 의해 지정된 피치를 부여하도록 피치 선택 모드하에서 수행되는 것을 특징으로 하는 기계 판독 가능한 매체.
  41. 제37항에 있어서,
    전환하는 단계는 정상 모드와 스크래치 선택 모드 사이의 전환을 포함하여 상기 제3 재생이 특정 음향 효과를 부여하도록 지정된 파형의 판독 어드레스를 불규칙하게 변경함으로써 지정된 파형을 디지털 방식으로 처리하기 위해 상기 스크래치 선택 모드하에서 수행되는 것을 특징으로 하는 기계 판독 가능한 매체.
  42. 제41항에 있어서,
    상기 방법은 스크래치 동작을 입력하기 위한 스크래치 기구를 제공하는 단계를 더 포함하여 상기 제3 재생이 입력된 스크래치 조작에 따라 지정된 파형의 판독 어드레스를 변경시키기 위해 스크래치 선택 모드하에서 수행되는 것을 특징으로 하는 기계 판독 가능한 매체.
  43. 제38항에 있어서,
    상기 특정 음향 효과는 대응 악음의 음색의 변형인 것을 특징으로 하는 기계 판독 가능한 매체.
  44. 제39항에 있어서,
    상기 특정 음향 효과는 대응 악음의 피치의 변형인 것을 특징으로 하는 기계 판독 가능한 매체.
  45. 제41항에 있어서,
    상기 특정 음향 효과는 대응 악음에 스크래치 효과를 부여하는 것인 것을 특징으로 하는 기계 판독 가능한 매체.
  46. 대응 파형을 판독함으로써 컴퓨터 악기가 악음의 재생 방법을 수행하게 하기 위한 프로그램을 포함하는 기계 판독 가능한 매체에 있어서,
    상기 방법은,
    각 파형이 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 기억되는, 상이한 악음에 대응하는 복수의 파형을 기억장치에 임시로 기억하는 단계;
    대응하는 악음의 재생을 명령하도록 기억된 파형 중 적어도 하나를 지정하는 단계,
    새로운 파형이 외부입력으로부터 입력될 때 실시간 베이스로 새로운 파형을 수신하는 단계;
    악음의 재생을 위해 정상 모드 및 선택 모드를 제공하는 단계;
    지정된 파형에 대응하는 악음을 재생하도록 프로그램에 따라 기억장치로부터 상기 지정하는 단계에 의해 지정된 내장 파형을 판독하기 위해 정상 모드하에서 제1 재생을 수행하는 단계;
    그렇지 않으면 새로운 파형에 대응하는 악음을 재생하도록 상기 지정하는 단계에 의해 지정된 내장 파형의 판독을 보류하고 그 대신에 상기 수신하는 단계에 의해 수신된 새로운 파형을 처리하기 위해 선택 모드하에서 제2 재생을 수행하여 프로그램에 따라 재생된 악음에 특정 음향 효과가 부여되는 단계;
    지정된 파형의 구간을 판독하기 위한 제1 간격으로 프로그램을 주기적으로 실행하는 단계;
    지정된 파형의 구간을 수신하는 단계; 및
    악음을 재생하도록 지정된 파형의 수신된 구간을 순차적으로 출력하기 위한 제1 간격보다 짧은 제2 간격으로 주기적으로 동작하는 단계를 포함하는 것을 특징으로 하는 기계 판독 가능한 매체.
  47. 제46항에 있어서,
    상기 제2 재생은 디지털 필터링에 의해 새로운 파형을 처리하기 위해 선택모드하에서 수행됨으로써 특정 음향 효과를 부여하는 것을 특징으로 하는 기계 판독가능한 매체.
  48. 제46항에 있어서,
    상기 제2 재생은 새로운 파형을 불규칙하게 처리하기 위해 선택 모드하에서 수행됨으로써 특정 음향 효과를 부여하는 것을 특징으로 하는 기계 판독 가능한 매체.
  49. 제48항에 있어서,
    상기 방법은 스크래치 동작을 입력하기 위한 스크래치 기구를 제공하는 단계를 더 포함하여 상기 제2 재생이 새로운 파형이 수신된 후에 임시로 기억되는 상기 새로운 파형의 판독 어드레스를 불규칙하게 변경시키기 위해 입력된 스크래치 동작에 따라 수행됨으로써 스크래치 효과로 악음을 재생하는 것을 특징으로 하는 기계 판독 가능한 매체.
  50. 제47항에 있어서,
    상기 특정 음향 효과는 재생된 악음의 음색의 변형인 것을 특징으로 하는 기계 판독 가능한 매체.
  51. 제48항에 있어서,
    상기 특정 음향 효과는 재생된 악음에 스크래치 효과를 부여하는 것인 것을특징으로 하는 기계 판독 가능한 매체.
  52. 접촉 동작에 응하여 재생된 악음에 스크래치 효과를 도입하도록 가변 판독 어드레스에 따라 대응 파형을 판독함으로써 컴퓨터 악기가 악음의 재생 방법을 수행하게 하기 위한 지시를 포함하는 기계 판독 가능한 매체에 있어서,
    상기 방법은,
    대응 악음을 나타내도록 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 기억장치에 파형을 기억하는 단계;
    길이에 따라 접촉 동작점을 검출하고 검출된 접촉 동작점에 대응하는 위치값을 출력하기 위해 접촉 동작을 수신하도록 길이를 갖는 검출 기구를 동작시키는 단계;
    접촉 동작을 모니터링하도록 상기 검출 기구로부터 출력된 위치값을 주기적으로 검색하는 단계;
    검색된 위치값에 따라 각 판독 어드레스를 가변적으로 결정하는 단계; 및
    스크래치 효과로 대응 악음을 재생하도록 각기 결정된 판독 어드레스에 따라 기억장치로부터 파형을 연속적으로 판독하기 위한 재생을 수행하는 단계를 포함하며,
    상기 재생은 접촉 동작이 소정의 개시 판독 어드레스로부터 파형의 판독을 개시하기 위해 초기 설정될 때 수행되고, 상기 재생은 각기 결정된 판독 어드레스에 따라 파형을 연속적해서 지속적으로 판독하기 위해 접촉 동작의 진행 중에 수행되는 것을 특징으로 하는 기계 판독 가능한 매체.
  53. 제52항에 있어서,
    상기 검색하는 단계는 접촉 동작의 속도를 연산하도록 주기적으로 검색된 위치값을 차등적으로 처리하는 것을 포함하고, 상기 재생을 수행하는 단계는 다음의 판독 어드레스를 결정하도록 접촉 동작의 속도에 따라 변수를 결정하여 변수를 이전의 판독 어드레스에 누산하는 것을 포함하는 것을 특징으로 하는 기계 판독 가능한 매체.
  54. 접촉 동작에 응하여 재생된 악음에 스크래치 효과를 도입하도록 가변 판독 어드레스에 따라 대응 파형을 판독함으로써 컴퓨터 악기가 악음의 재생 방법을 수행하게 하기 위한 지시를 포함하는 기계 판독 가능한 매체에 있어서,
    상기 방법은,
    외부입력으로부터 파형을 연속적으로 입력하는 단계;
    대응 악음을 나타내도록 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 기억장치에 파형을 기억하는 단계;
    길이에 따라 접촉 동작점을 검출하고 검출된 접촉 동작점에 대응하는 위치값을 출력하기 위해 접촉 동작을 수신하도록 길이를 갖는 검출 기구를 동작시키는 단계;
    접촉 동작을 모니터링하도록 상기 검출 기구로부터 출력된 위치값을 주기적으로 검색하는 단계;
    검색된 위치값에 따라 판독 어드레스를 발생시키고 판독 어드레스에 따라 기억장치로부터 파형을 연속적으로 판독하는 단계; 및
    파형에 따라 악음을 재생하는 단계를 포함하며, 접촉 동작이 상기 검출 기구에 의해 검출되지 않을 때, 입력된 파형을 기억하는 단계는 지속하여 입력된 파형에 대응하는 악음은 스크래치 효과 없이 재생되며, 접촉 동작이 상기 검출 기구에 의해 검출될 때, 상기 기억하는 단계는 보류되어 상기 판독하는 단계에서 판독된 파형 데이터에 대응하는 악음은 스크래치 효과로 재생되는 것을 특징으로 하는 기계 판독 가능한 매체.
  55. 접촉 동작에 응하여 재생된 악음에 스크래치 효과를 도입하도록 가변 판독 어드레스에 따라 대응 파형을 판독함으로써 악음을 재생하기 위한 악기에 있어서,
    외부입력으로부터 파형을 연속적으로 입력하기 위한 입력수단;
    대응 악음을 기억수단에 나타내도록 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 파형을 기억하기 위한 기억수단;
    길이에 따라 접촉 동작점을 검출하고 검출된 접촉 동작점에 대응하는 위치값을 출력하기 위한 접촉 동작을 수신하도록 길이를 갖는 검출 기구;
    접촉 동작을 모니터링 하도록 상기 검출 기구로부터 출력된 위치값을 주기적으로 검색하기 위한 검색수단;
    검색된 위치값에 따라 어드레스를 발생시키고 어드레스에 따라 상기 기억수단으로부터 파형을 연속적으로 판독하기 위한 판독수단; 및
    파형에 따라 악음을 재생하기 위한 재생수단을 구비하며, 접촉 동작이 상기 검출 기구에 의해 검출되지 않을 때, 상기 기억수단은 입력된 파형을 지속적으로 기억하고 상기 재생수단은 스크래치 효과 없이 입력된 파형에 대응하는 악음을 재생하며, 접촉 동작이 상기 검출 기구에 의해 검출될 때, 상기 기억수단은 파형의 기억을 보류하고 상기 재생수단은 스크래치 효과로 상기 판독수단에 의해 판독된 파형에 대응하는 악음을 재생하는 것을 특징으로 하는 악기.
  56. 제55항에 있어서,
    상기 기억수단은 실시간 베이스로 외부입력으로부터 새로이 입력된 새로운 파형의 모든 데이터 양을 기억하기에 충분한 메모리 용량을 가지는 것을 특징으로 하는 악기.
  57. 악음의 재생을 수행하도록 실행되는 기억되는 프로그램을 갖는 프로세서;
    각 파형이 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스를 포함하는, 상기한 악음에 대응하는 복수의 파형을 포함하는 상기 프로세서에 연결된 메모리 장치;
    각기 대응하는 악음의 재생을 명령하도록 상기 메모리 장치에 기억된 파형중 적어도 하나를 상기 프로세서를 통해서 지정하기 위해 탭핑되기 적합한 표면을 가지며, 상기 프로세서에 전기적으로 연결된 복수의 패드;
    재생의 정상 모드에 대응하는 제1 위치와 재생의 선택 모드에 대응하는 제2 위치 사이에서 선택 가능하며, 적어도 상기 복수의 패드, 및 대응 악음의 수를 동시에 재생하도록 스위치에 의해 선택된 정상 모드하에서 비교적 고기능으로 할당됨으로써 상기 프로세서에게 프로그램에 따라 상기 메모리 장치로부터 지정된 파형의 수를 동시에 판독을 가능하게 하고, 프로그램에 따라 재생된 악음에 특정 음향 효과를 부여하도록 선택 모드하에서 추가 기능으로 할당되어 지정된 파형을 디지털 방식으로 처리하기 적합하면서도 상기 스위치에 의해 선택된 선택 모드하에서 비교적 저기능으로 할당되어 선택 모드하에서 동시에 재생된 악음의 수가 정상 모드의 것과 비교해서 감소되며, 지정된 파형의 구간을 판독하기 위한 제1 간격으로 프로그램을 주기적으로 실행시키는 상기 프로세서에 전기적으로 연결된 상기 스위치; 및
    상기 메모리 장치로부터 지정된 파형의 구간을 수신하기에 적합하며 제1 간격 보다 짧은 제2 간격으로 주기적으로 동작하여 상기 메모리 장치로부터 지정된 파형의 수신된 구간이 악음을 재생하도록 순차적으로 출력되며 적어도 상기 프로세서 및 상기 메모리 장치에 전기적으로 연결된 직접 메모리 접근 제어기를 구비하는 것을 특징으로 하는 컴퓨터 악기.
  58. 악음의 재생을 수행하도록 실행되는 기억된 프로그램을 갖는 프로세서;
    각 파형이 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 임시로 기억되는, 상기한 악음에 대응하는 복수의 파형을 포함하는 상기 프로세서에 결합된 메모리 장치;
    각기 대응하는 악음의 재생을 명령하도록 상기 메모리 장치로부터 기억된 파형 중 적어도 하나를 프로세서를 통해서 지정하기 위해 탭핑되기 적합한 표면을 가지며 상기 프로세서에 전기적으로 연결된 복수의 패드;
    새로운 파형이 외부입력으로부터 입력될 때 실시간 베이스로 상기 새로운 파형을 수신하기 적합하며 외부입력에 연결된 사운드 입/출력 장치;
    재생의 정상 모드에 대응하는 제1 위치와 재생의 선택 모드에 대응하는 제2 위치 사이에서 선택 가능하고, 적어도 상기 복수의 패드, 및 지정된 파형에 대응하는 악음을 재생하도록 프로그램에 따라 상기 메모리 장치로부터 상기 복수의 패드에 의해 지정된 내장 파형을 판독하는 스위치에 의해 선택된 정상 모드하에서 동작하기 적합하고, 그렇지 않으면 새로운 파형에 대응하는 악음을 재생하도록 상기 복수의 패드에 의해 지정된 내장 파형의 판독을 보류하고 그 대신에 외부입력으로부터 사운드 입/출력 장치에 의해 수신된 새로운 파형을 처리하여 특정 음향 효과가 프로그램에 따라 재생된 악음에 부여되는 상기 스위치에 의해 선택된 선택 모드하에서 동작하기 적합하며, 지정된 파형의 구간을 판독하는 제1 간격으로 프로그램을 주기적으로 실행시키기 적합한 상기 프로세서에 전기적으로 연결된 스위치; 및
    상기 프로세서로부터 지정된 파형의 구간을 수신하기 적합하며 제1 간격 보다 짧은 제2 간격으로 주기적으로 동작하여 지정된 파형의 수신된 구간이 악음을 재생하도록 순차적으로 출력되며 적어도 상기 프로세서에 전기적으로 연결된 직접 메모리 접근 제어기를 구비하는 것을 특징으로 하는 컴퓨터 악기.
  59. 접촉 동작에 응하여 재생된 악음에 스크래치 효과를 도입하도록 가변 판독 어드레스에 따라 대응 파형을 판독함으로써 악음을 재생하기 위한 악기에 있어서,
    대응 악음을 나타내도록 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 파형을 포함하는 메모리 장치;
    메모리 장치로부터 파형의 판독을 결정하는 접촉 동작을 수신하기 적합한 길이를 가지며, 길이에 따라 접촉 동작점을 검출하며, 검출된 접촉 동작점에 대응하여 위치값을 출력하며, 적어도 상기 메모리 장치에 연결된 좌표 검출장치; 및
    접촉 동작을 모니터링 하도록 상기 좌표 검출장치로부터 출력된 위치값을 주기적으로 검색하기 적합하며, 스크래치 효과로 대응 악음을 재생하도록 검색된 위치값에 따라 각 판독 어드레스를 가변적으로 결정하고 각기 결정된 판독 어드레스에 따라 상기 메모리 장치로부터 파형을 연속적으로 판독하기 적합하며, 적어도 상기 메모리 장치 및 상기 좌표 검출장치에 전기적으로 연결된 프로세서를 구비하고,
    상기 프로세서는 접촉 동작이 초기 설정될 때 소정의 개시 판독 어드레스로부터 파형을 판독하기 시작하여, 접촉 동작의 진행 중에 각기 결정된 판독 어드레스에 따라 파형을 연속해서 지속적으로 판독하는 것을 특징으로 하는 악기.
  60. 접촉 동작에 응하여 재생된 악음에 스크래치 효과를 도입하도록 가변 판독 어드레스에 따라 대응 파형을 판독함으로써 악음을 재생하기 위한 악기에 있어서,
    대응 악음을 나타내도록 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 파형을 포함하는 메모리 장치;
    상기 메모리 장치로부터 파형의 판독을 결정하는 접촉 동작을 수신하기 적합한 길이를 가지며, 길이에 따라 접촉 동작점을 검출하며, 검출된 접촉 동작점에 대응하는 위치값을 출력하며, 적어도 상기 메모리 장치에 전기적으로 연결된 좌표 검출장치; 및
    접촉 동작을 모니터링 하도록 상기 좌표 검출장치로부터 출력된 위치값을 주기적으로 검색하기 적합하며, 스크래치 효과로 대응 악음을 재생하도록 검색된 위치값을 가변적으로 결정하고 각기 결정된 판독 어드레스에 따라 상기 메모리 장치로부터 파형을 연속적으로 판독하기 적합하며, 적어도 상기 메모리 장치 및 상기 좌표 검출장치에 전기적으로 연결된 프로세서를 구비하고, 상기 프로세서는 접촉 동작의 속도를 연산하도록 주기적으로 검색된 위치값을 차등적으로 처리하고, 상기 프로세서는 다음의 판독 어드레스를 결정하도록 접촉 동작의 속도에 따라 변수를 결정하여 변수를 이전의 판독 어드레스에 누산하는 것을 특징으로 하는 악기.
  61. 접촉 동작에 응하여 재생된 악음에 스크래치 효과를 도입하도록 가변 판독 어드레스에 따라 대응 파형을 판독함으로써 악음을 재생하기 위한 악기에 있어서,
    외부입력으로부터 파형을 연속적으로 수신하고 파형을 위한 출력을 제공하기 적합한 사운드 입/출력 장치;
    대응 악음을 나타내도록 소정의 샘플링 주기로 배열된 진폭값 데이터의 시퀀스의 형태로 수신된 파형을 포함하는 적어도 상기 사운드 입/출력 장치에 전기적으로 연결된 메모리 장치;
    메모리 장치로부터 파형의 판독을 결정하는 접촉 동작을 수신하는 길이를 가지며 길이에 따라 접촉 동작점을 검출하고 검출된 접촉 동작점에 대응하는 위치값을 출력하기 적합하며 적어도 상기 메모리 장치에 전기적으로 연결된 위치 검출장치; 및
    접촉 동작을 모니터링하도록 상기 좌표 검출장치로부터 출력된 위치값을 주기적으로 검색하기 적합하며, 검색된 위치값에 따라 어드레스를 발생시키고 어드레스에 따라 상기 메모리 장치로부터 파형을 연속적으로 판독하기 적합하며, 파형에 따라 악음을 재생하기 적합하며, 적어도 상기 사운드 입/출력장치, 상기 메모리 장치 및 상기 좌표 검출장치에 전기적으로 연결된 프로세서를 구비하며, 접촉 동작이 상기 좌표 검출장치에 의해 검출되지 않을 때, 상기 메모리 장치는 입력된 파형을 지속적으로 저장하고 상기 프로세서는 스크래치 효과 없이 입력된 파형에 대응하는 악음을 재생하며, 접촉 동작이 상기 좌표 검출장치에 의해 검출될 때, 상기 메모리 장치는 파형의 저장을 보류하고 상기 프로세서는 스크래치 효과로 판독된 파형에 대응하는 악음을 재생하는 것을 특징으로 하는 악기.
KR1019960041264A 1995-09-20 1996-09-20 음향효과를생성하도록파형을처리하는컴퓨터악기,이와같은장치의동작방법,및기계판독가능한매체 KR100386404B1 (ko)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
JP7266252A JP2933204B2 (ja) 1995-09-20 1995-09-20 スクラッチ動作可能な楽音発生装置
JP95-266253 1995-09-20
JP7266253A JP2956550B2 (ja) 1995-09-20 1995-09-20 楽音発生装置および楽音発生方法
JP95-266252 1995-09-20

Publications (2)

Publication Number Publication Date
KR970017163A KR970017163A (ko) 1997-04-30
KR100386404B1 true KR100386404B1 (ko) 2003-08-27

Family

ID=26547362

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960041264A KR100386404B1 (ko) 1995-09-20 1996-09-20 음향효과를생성하도록파형을처리하는컴퓨터악기,이와같은장치의동작방법,및기계판독가능한매체

Country Status (6)

Country Link
US (1) US6025552A (ko)
EP (2) EP0764934B1 (ko)
KR (1) KR100386404B1 (ko)
DE (2) DE69613068T2 (ko)
HK (1) HK1010763A1 (ko)
SG (1) SG47179A1 (ko)

Families Citing this family (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2922509B2 (ja) * 1997-09-17 1999-07-26 コナミ株式会社 音楽演出ゲーム機、音楽演出ゲーム用の演出操作指示システムおよびゲーム用のプログラムが記録されたコンピュータ読み取り可能な記憶媒体
SG73470A1 (en) * 1997-09-23 2000-06-20 Inst Of Systems Science Nat Un Interactive sound effects system and method of producing model-based sound effects
KR100325489B1 (ko) * 1998-09-23 2002-03-06 이문기 컴퓨터와 연결하여 사용하는 전자악기
ES2545452T3 (es) * 1999-07-07 2015-09-11 Gibson Brands, Inc. Dispositivo de grabación digital de instrumentos musicales con interferencia
JP2001154670A (ja) * 1999-11-25 2001-06-08 Yamaha Corp 曲データ再生装置、方法及び記録媒体
US7120803B2 (en) * 2000-04-03 2006-10-10 Yamaha Corporation Portable appliance for reproducing a musical composition, power saving method, and storage medium therefor
WO2002103671A2 (de) * 2001-06-18 2002-12-27 Native Instruments Software Synthesis Gmbh Automatische erzeugung von musikalischen sratch-effekten
CA2457402A1 (en) * 2001-08-07 2003-02-20 Justin A. Kent System for converting turntable motion to midi data
US6541690B1 (en) 2001-12-18 2003-04-01 Jerry W. Segers, Jr. Scratch effect controller
US20050052981A1 (en) * 2003-09-09 2005-03-10 Brian Shim Record controlled sound playback device
EP1580644A3 (en) * 2004-03-15 2005-11-09 Yamaha Corporation Electronic musical apparatus for recording and reproducing music content
JP4400363B2 (ja) * 2004-08-05 2010-01-20 ヤマハ株式会社 音源システム、楽曲ファイルを記録したコンピュータ読み取り可能な記録媒体及び楽曲ファイル作成ツール
US20070079315A1 (en) * 2005-10-05 2007-04-05 Gregor Mittersinker Hybrid turntable
JP2007163845A (ja) * 2005-12-14 2007-06-28 Oki Electric Ind Co Ltd 音源システム
US8311656B2 (en) 2006-07-13 2012-11-13 Inmusic Brands, Inc. Music and audio playback system
US8314321B2 (en) * 2007-09-19 2012-11-20 Agency For Science, Technology And Research Apparatus and method for transforming an input sound signal
JP2009157272A (ja) * 2007-12-27 2009-07-16 Roland Corp 音声再生装置
US20100217922A1 (en) * 2008-07-24 2010-08-26 Masahiro Nakanishi Access module, storage module, musical sound generating system and data writing module

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US4373416A (en) * 1976-12-29 1983-02-15 Nippon Gakki Seizo Kabushiki Kaisha Wave generator for electronic musical instrument
EP0013490A1 (en) * 1978-12-11 1980-07-23 Microskill Limited An output processing system for a digital electronic musical instrument
JPH0690622B2 (ja) * 1987-05-22 1994-11-14 ヤマハ株式会社 楽音信号処理装置
JPH0734155B2 (ja) * 1988-03-08 1995-04-12 ヤマハ株式会社 電子楽器用制御装置
US5319151A (en) * 1988-12-29 1994-06-07 Casio Computer Co., Ltd. Data processing apparatus outputting waveform data in a certain interval
US5239123A (en) * 1989-01-17 1993-08-24 Yamaha Corporation Electronic musical instrument
JP3092808B2 (ja) * 1989-12-20 2000-09-25 カシオ計算機株式会社 電子弦楽器
US5278350A (en) * 1990-01-19 1994-01-11 Yamaha Corporation Electronic musical instrument for generating musical tone approximate to acoustic instrument for generating a sustaining tone, and musical tone control apparatus used in this electronic musical instrument
JPH0451196A (ja) * 1990-06-19 1992-02-19 Matsushita Electric Ind Co Ltd 電子楽器
US5200564A (en) * 1990-06-29 1993-04-06 Casio Computer Co., Ltd. Digital information processing apparatus with multiple CPUs
JP2606456B2 (ja) * 1991-01-17 1997-05-07 ヤマハ株式会社 電子楽器
US5283386A (en) * 1991-08-30 1994-02-01 Casio Computer Co., Ltd. Musical-tone signal generating apparatus and musical-tone controlling apparatus including delay means and automatic reset means
US5350882A (en) * 1991-12-04 1994-09-27 Casio Computer Co., Ltd. Automatic performance apparatus with operated rotation means for tempo control
JP2722907B2 (ja) * 1991-12-13 1998-03-09 ヤマハ株式会社 波形発生装置
JPH05313667A (ja) * 1992-05-13 1993-11-26 Roland Corp 楽音信号の出力装置
JPH0752344B2 (ja) * 1992-09-09 1995-06-05 ヤマハ株式会社 効果音発生装置
JP2734909B2 (ja) * 1992-10-12 1998-04-02 ヤマハ株式会社 波形データ読み出し装置
JP3516470B2 (ja) * 1993-12-17 2004-04-05 株式会社ソニー・コンピュータエンタテインメント 信号処理装置
JP2812222B2 (ja) * 1994-10-31 1998-10-22 ヤマハ株式会社 電子楽器および音源手段の置き換え方法
US5596159A (en) * 1995-11-22 1997-01-21 Invision Interactive, Inc. Software sound synthesis system

Also Published As

Publication number Publication date
US6025552A (en) 2000-02-15
EP0764934A1 (en) 1997-03-26
DE69632696D1 (de) 2004-07-15
SG47179A1 (en) 1998-03-20
DE69632696T2 (de) 2005-06-16
KR970017163A (ko) 1997-04-30
EP0764934B1 (en) 2001-05-30
EP1018724B1 (en) 2004-06-09
DE69613068D1 (de) 2001-07-05
EP1018724A1 (en) 2000-07-12
HK1010763A1 (en) 1999-06-25
DE69613068T2 (de) 2002-03-07

Similar Documents

Publication Publication Date Title
KR100386404B1 (ko) 음향효과를생성하도록파형을처리하는컴퓨터악기,이와같은장치의동작방법,및기계판독가능한매체
US7342166B2 (en) Method and apparatus for randomized variation of musical data
US6103964A (en) Method and apparatus for generating algorithmic musical effects
EP0925576A1 (en) Wavetable synthesizer and operating method using a variable sampling rate approximation
KR100375329B1 (ko) 음원제어장치및음원제어방법
JP2002055678A (ja) Midiファイルの圧縮方法
KR100402364B1 (ko) 악음발생장치, 악음발생방법 및 기억매체
JP3654117B2 (ja) 時間軸方向における楽音波形信号の伸縮方法
US6535772B1 (en) Waveform data generation method and apparatus capable of switching between real-time generation and non-real-time generation
JPH07121181A (ja) 音声情報処理装置
JP2956550B2 (ja) 楽音発生装置および楽音発生方法
JP2933204B2 (ja) スクラッチ動作可能な楽音発生装置
JP3723973B2 (ja) 音源装置
JP5359203B2 (ja) 楽曲処理装置およびプログラム
JP3832383B2 (ja) 楽音生成装置及びプログラム
JP2765433B2 (ja) 記憶再生装置
JP3744247B2 (ja) 波形圧縮方法及び波形生成方法
JP3095018B2 (ja) 楽音発生装置
JP4015267B2 (ja) 波形発生装置
JP4102931B2 (ja) 音波形合成装置
JP3832382B2 (ja) 楽音生成装置及びプログラム
JP4120979B2 (ja) 波形再生装置
JP3778036B2 (ja) 波形生成装置及び方法
JPH1031490A (ja) 電子楽器の音素材処理装置
CN1230726A (zh) 用于计算机音乐伴奏乐器的混声合成装置

Legal Events

Date Code Title Description
A201 Request for examination
E701 Decision to grant or registration of patent right
GRNT Written decision to grant
FPAY Annual fee payment

Payment date: 20100512

Year of fee payment: 8

LAPS Lapse due to unpaid annual fee