KR100297674B1 - 자동연주장치 및 자동연주 데이터의 처리방법 - Google Patents

자동연주장치 및 자동연주 데이터의 처리방법 Download PDF

Info

Publication number
KR100297674B1
KR100297674B1 KR1019950072357A KR19950072357A KR100297674B1 KR 100297674 B1 KR100297674 B1 KR 100297674B1 KR 1019950072357 A KR1019950072357 A KR 1019950072357A KR 19950072357 A KR19950072357 A KR 19950072357A KR 100297674 B1 KR100297674 B1 KR 100297674B1
Authority
KR
South Korea
Prior art keywords
data
performance
playing
automatic
auto
Prior art date
Application number
KR1019950072357A
Other languages
English (en)
Other versions
KR960025308A (ko
Inventor
다쿠야 나카다
Original Assignee
우에시마 세이스케
야마하 가부시키가이샤
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 우에시마 세이스케, 야마하 가부시키가이샤 filed Critical 우에시마 세이스케
Publication of KR960025308A publication Critical patent/KR960025308A/ko
Application granted granted Critical
Publication of KR100297674B1 publication Critical patent/KR100297674B1/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
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/36Accompaniment arrangements
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H1/00Details of electrophonic musical instruments
    • G10H1/36Accompaniment arrangements
    • G10H1/361Recording/reproducing of accompaniment for use with an external source, e.g. karaoke systems

Abstract

본 발명은 연주 데이터를 편집하지 않아도 곡의 배열을 용이하게 변경할 수 있는 자동연주장치에 관한 것이다. 기억수단은 복수파트의 자동연주 데이터(반주에 관한 데이터도 포함한다)와 자동반주 데이터를 기억한다. 연주수단은 자동연주 데이터를, 반주수단은 자동반주 데이터를 판독하여 각각 연주한다. 뮤트수단은 반주수단이 자동반주 데이터에 의거하여 연주하는 경우에, 자동연주 데이터의 적어도 한 개의 파트에 관한 연주를 뮤트한다. 또한 스타일 데이터 기억수단은 반주패턴 데이터를 복수의 연주 스타일마다 기억하고, 연주데이터 기억수단은 연주 스타일의 어느 것을 사용 할 것인가를 결정하는 패턴정보를 포함하는 자동연주 데이터를 기억한다. 제1연주수단은 자동연주 데이터를 판독하여 연주한다. 변환수단은 판독된 패턴정보를 다른 패턴정보로 변환한다. 제2연주수단은 변환된 패턴정보에 의거하여 반주 패턴 데이터를 판독하여 연주한다.

Description

자동연주장치 및 자동연주데이터의 처리방법
제1도는 본 발명에 관한 자동 연주장치를 적용한 전자악기의 일 실시예를 도시하는 하드웨어 구성블럭도.
제2도는 제1도의 ROM 및 RAM에 기억되어 있는 데이터의 내용을 도시하는 도면으로써,
제2(a)도는 RAM에 기억되어 있는 여러 곡 분량의 노래데이터의 구성예를,
제2(b)도는 ROM에 기억되어 있는 스타일 데이터의 구성예를,
제2(c)도는 RAM에 기억되어 있는 스타일·섹션 변환테이블(style/section converting table)의 내용을 각각 도시한다.
제3도는 패널 상의 노래 선택 스위치(song selection switch)가 조작되어, RAM내의 노래데이터가 선택된 경우에, 제1도의 전자악기의 CPU가 처리하는 노래선택 스위치 처리의 일 예를 도시하는 도면.
제4도는 패널 상의 반주스위치(accompaniment switch)가 조작된 경우에, 제1도의 전자악기의 CPU가 처리하는 반주스위치 처리의 일 예를 도시하는 도면.
제5도는 패널 상의 리플레이스 스위치(replace switch)가 조작된 경우에, 제1도의 전자악기의 CPU가 처리하는 리플레이스 스위치 처리의 일 예를 도시하는 도면.
제6도는 패널 상의 스타일 변환스위치(style conversion switch)가 조작된 경우에, 제1도의 전자악기의 CPU가 처리하는 스타일 변환스위치 처리의 일 예를 도시하는 도면.
제7도는 패널 상의 스타트/스톱 스위치(start/stop switch)가 조작된 경우에, 제1도의 전자악기의 CPU가 처리하는 스타트/스톱 스위치 처리의 일예를 도시하는 도면.
제8도는 4분 음표당 96회의 타이머 인터럽트(timer interrupt)로 실행되는 시퀀서 재생처리(sequencer reproduction process)의 일 예를 도시하는 도면.
제9도는 제8도의 스텝83의 처리에 의해 판독된 데이터가 델타 타임(delta time) 이외의 음색 이벤트(note event) 및 스타일·섹션 넘버 이벤트(style/section number event)인 경우에 행해지는 제8도의 스텝86의 [데이터 대응처리1]의 상세한 내용을 도시하는 플로우 차트도.
제10도는 제8도의 스텝83의 처리에 의해 판독된 데이터가 델타 타임 이외의 리플레이스 이벤트(replace event) 데이터, 스타일 뮤트 이벤트(style mute events) 데이터, 그 밖의 연주 이벤트(performance event) 데이터, 코드이벤트(chord event) 데이터 및 엔드 이벤트(end event) 데이터인 경우에 행해지는 제8도의 스텝86의 [데이터 대응처리1]의 상세를 도시하는 플로우 차트도.
제11도는 4분 음표당 96회의 타이머 인터럽트로 실행되는 스타일 재생처리의 일 예를 도시하는 도면.
제12도는 제11도의 스텝114의 처리에 의해 판독된 데이터가 델타 타임 이외의 음색이벤트, 다른 연주이벤트 또는 엔드이벤트의 경우에 행해지는 제11도의 스텝117의 [데이터 대응처리2]의 상세한 내용을 도시하는 플로우 차트도.
제13도는 패널 상의 시퀀스 채널스위치 또는 반주 채널스위치의 어떤 채널 스위치가 조작된 경우에, 제1도의 전자악기의 CPU가 처리하는 각 채널 스위치 처리의 일 예를 도시하는 도면.
제14도는 제10도의 리플레이스 이벤트 처리의 다른 실시예를 도시하는 플로우 차트도.
제15도는 자동연주장치가 자동반주기능을 구비하고 있지 않은 시퀀서 타입인 경우에 있어서의 [시퀀서 재생처리2]를 도시하는 플로우 차트도이다.
* 도면의 주요부분에 대한 부호의 설명
1A : 사운드 시스템 2 : 패널
10 : CPU 11 : ROM
12 : RAM 13 : 압건(押鍵)검출회로
14 : 스위치 검출회로 15 : 표시회로
16 : 음원회로 17 : 타이머
18 : 데이터 및 어드레스 버스 19 : 건반
20 : LCD 21A, 21B : 노래선택 스위치
22 : 반주 스위치 23 : 리플레이스 스위치
24 : 스타일 변환 스위치 25 : 스타트/스톱 스위치
26 : 시퀀스 채널 스위치 27 : 반주 채널 스위치
본 발명은 자동반주 기능을 가진 시퀀서 등의 자동연주장치에 관한 것으로써, 특히 자동연주시에 곡의 배열을 용이하게 행할 수 있는 자동연주장치에 관한 것이다.
종래의 자동연주장치에는 복수의 연주파트마다 작성된 연속되는 연주 데이터를 기억수단으로부터 곡의 진행에 따라 순서대로 판독하여 한 곡 분량의 자동연주를 행하는 시퀀서 타입의 것이 있다. 연주파트(performance parts)에는 멜로디파트(melody part), 리듬파트(rhythm part), 베이스파트(bass part) 및 코드파트(chord part) 등이 있다.
또 자동연주장치 안에는 리듬파트, 베이스파트, 및 코드파트의 일부의 파트의 연주에 대해서는, 연주 데이터와는 별도로 기억된 반주 패턴 데이터에 의거하여 자동반주를 행하는 것이 있다. 이와 같은 자동연주장치는 어떤 반주 패턴 데이터에 의거하여 자동반주를 행하는가, 미리 헤더(header information)와 조작자(operating members) 등으로 패턴 번호를 설정하는 것과, 그 패턴 번호를 곡의 진행에 따라 순서대로 기억한 연속되는 반주 패턴 지정 데이터를 가지는 것 등이 있다. 또한 리듬 파트 이외의 베이스 파트 및 코드 파트는 곡의 진행에 따라 별도 기억되어 있는 화음 진행 데이터 혹은 연주자가 건반 등에 의해 지정하는 화음에 의거하여 화음에 적합한 음으로 변환되도록 되어 있다.
종래의 자동연주장치와 같이, 모든 연주 파트를 연속되는 연주 데이터에 따라 자동연주 하는 것은, 테이프 레코더와 같이 매회 같은 연주 밖에 행할수 없기 때문에, 연주가 단조롭게 되어 버리는 결점을 가진다. 따라서, 이와 같은 자동연주장치에 있어서 연주의 배열을 바꾸기 위해서는, 연주데이터의 내용을 직접 편집하는 방법밖에 없다. 그러나 연주 데이터의 편집은 연주데이터의 내용에 익숙한 자가 아니면 곤란하고, 초심자에 있어서는 매우 곤란한 작업이었다.
또 종래의 자동연주장치와 같이, 일부의 파트를 자동반주에 의해 보충하는 타입의 것은, 반주 패턴 데이터를 지정하는 패턴번호를 변경 해 주는 것만으로 간단하게 곡의 배열을 변경할 수 있으므로, 초심자라도 용이하게 취급 할 수 있다고 하는 이점이 있다. 그런데 자동연주장치 자체가 이와 같은 자동반주기능을 구비하고 있지 않으면 안되기 때문에, 이 자동반주기능을 구비하지 않은 시퀀서 타입의 자동연주장치에 대해서는 패턴번호는 무의미한 데이터이고, 이것에 의거하여 곡의 배열을 행할 수는 없었다. 또 마찬가지로 모든 연주파트를 순서대로 기억한 연주데이터를 자동반주기능을 구비한 자동연주장치에서 연주하였다고 해도, 곡의 배열을 변경할 수는 없었다.
본 발명은, 연주데이터를 편집하지 않아도 곡의 배열을 용이하게 변경할 수 있는 자동연주장치를 제공하는 것을 목적으로 한다.
제1의 발명에 관한 자동연주장치는 복수의 파트로 이루어지는 제1자동연주데이터와 적어도 한 개의 파트로 이루어지는 제2자동연주데이터를 기억하는 기억수단과, 상기 기억수단으로부터 상기 제1자동연주데이터를 판독하여 연주하는 제1연주수단과, 상기 기억수단으로부터 상기 제2자동연주데이터를 판독하여 연주하는 제2연주수단과, 상기 제2연주수단이 상기 제2자동연주데이터에 의거하여 연주하는 경우에, 상기 제1자동연주데이터의 적어도 하나의 파트에 관한 연주를 뮤트하는 뮤트수단을 구비하는 것이다.
제2발명에 관한 자동연주장치는 자동반주 패턴데이터를 복수의 연주 스타일마다 기억하는 스타일데이터 기억수단과, 상기 연주스타일의 어느 것을 사용할 것인가를 결정하는 패턴 정보를 포함하는 자동연주 데이터를 기억하는 연주데이터 기억수단과, 상기 연주데이터 기억수단으로부터 상기 자동연주 데이터를 판독하여 연주하는 제1연주수단과, 상기 제1연주수단에 의해, 판독된 상기 패턴정보를 다른 패턴정보로 변환하는 변환수단과, 상기 변환수단에 의해 변환된 상기 패턴정보에 의거하여 상기 스타일데이터 기억수단으로부터 상기 자동반주 패턴데이터를 판독하여 연주하는 제2연주수단을 구비한 것이다.
제3발명에 관한 자동연주 데이터 처리방법은 제1연주파트와 제2연주파트에 관한 제1자동연주 데이터와, 상기 제2연주파트와 같은 파트에 관한 제2자동연주 데이터를 기억하는 기억장치로부터 데이터를 판독하여 자동연주를 행하는 자동연주 데이터 처리방법에 있어서, 상기 제1자동연주 데이터만을 처리가능한 제1자동연주 장치에 의해 상기 기억장치에 기억되어 있는 자동연주데이터를 판독하여 처리하는 경우는 상기 제1자동연주 데이터에 의거하여 상기 제1 및 제2연주파트를 연주하고, 상기 제1 및 제2자동연주 데이터의 양쪽을 처리 가능한 제2자동연주 장치에 의해 상기 기억장치에 기억되어 있는 자동연주데이터를 판독하여 처리하는 경우는 상기 제1자동연주 데이터에 의거하여 상기 제1연주파트를 연주함과 동시에, 상기 제2자동연주 데이터에 의거하여 상기 제2연주파트를 연주하는 것이다.
제1발명에 있어서, 기억수단은 복수의 연주파트(멜로디 파트, 리듬파트, 베이스 파트, 코드파트)로 이루어지는 제1자동연주 데이터를 기억함과 동시에 적어도 하나의 파트로 이루어지는 제2자동연주 데이터를 기억한다. 제1자동연주 데이터는 곡의 진행에 따라 순서대로 작성된 연속되는 데이터이고, 제2자동연주 데이터는 반주에 관한 패턴데이터이다.
제1연주수단은 제1자동연주데이터를 기억수단으로부터 곡의 진행에 따라 순서대로 판독하여 자동연주를 행한다. 제2연주수단은 제2자동연주데이터를 제1연주수단의 연주 중에 기억수단으로부터 반복하여 판독하여 연주한다. 이 때, 제1연주수단의 연주파트와 제2연주수단의 연주파트가 중복되거나, 제2연주수단의 연주와 제1연주수단의 연주와의 상관성이 나쁜 경우가 있다. 그래서 뮤트수단은 제1연주수단이 연주하는 제1자동연주데이터 중의 적어도 하나의 파트에 관한 연주를 뮤트하고, 제2연주수단에 의한 연주를 우선적으로 취급하도록 했다. 이것에 의해 제2연주수단에 의한 자동연주를 적당히 변경하는 것만으로 곡의 배열을 용이하게 변경할 수 있게 된다.
제2발명에 있어서, 스타일데이터 기억수단은 복수의 연주스타일(예를들면 록과 왈츠)마다 자동반주 패턴데이터를 기억하고 있다. 연주 데이터 기억수단은 스타일데이터 기억수단 중의 어느 연주스타일에 따라 자동반주를 행하는가를 나타내는 패턴정보를 포함하는 자동연주 데이터를 기억하고 있다. 즉 자동연주 데이터는 곡의 진행에 따라 순서대로 작성된 연속적인 데이터이고, 패턴정보는 연속적인 데이터의 일부로써 연주데이터 기억수단에 기억되어져 있다. 따라서 제1연주수단은 자동연주 데이터를 곡의 진행에 따라 연주데이터 기억수단으로부터 순서대로 판독하여 자동연주를 행한다. 이와 동시에 제2연주수단은 패턴정보에 대응한 자동반주 패턴데이터를 스타일데이터 기억수단으로부터 반복해서 판독하여 자동반주를 행한다. 이 때, 제1연주수단에 의해 판독된 패턴정보는 변환수단에 의해 다른 패턴정보로 변환된다. 따라서, 이 변환수단의 변환방법을 적당히 변경하는 것만으로 제2연주수단이 행하는 자동반주의 곡의 배열을 용이하게 변경할수 있다.
제3발명에 있어서, 기억수단은 제1연주파트와 제2연주파트에 관한 제1자동연주데이터와, 이 제2연주파트와 같은 파트에 관한 제2자동연주데이터를 기억하고 있다. 제1자동연주데이터는 곡의 진행에 따라 순서대로 작성된 연속적인 데이터이고, 제2자동연주데이터는 반주에 관한 패턴데이터이다. 한편, 자동연주장치에는 기억수단으로부터 제1자동연주 데이터만을 판독하여 자동연주 처리하는 것(제1자동연주장치)과, 제1 및 제2자동연주데이터의 양쪽을 판독하여 자동연주 처리하는 것(제2자동연주장치)이 존재한다. 그래서 제3발명에서는, 제1자동연주장치에 의해 기억장치로부터 자동연주데이터를 판독하여 처리하는 경우는, 제1자동연주데이터에 의거하여 제1 및 제2연주파트에 관한 자동연주를 한다. 제2자동연주장치에 의해 기억장치로부터 자동연주데이터를 판독하여 처리하는 경우는, 제1자동연주 데이터에 의거하여 제1연주파트에 관한 자동연주를 행하고, 제2자동연주 데이터에 의거하여 제2연주파트에 관한 자동연주를 행하도록 했다. 따라서, 제2자동연주장치에 의해 자동연주처리를 행하는 경우에는, 이 기억수단에 기억되어 있는 제2자동연주데이터의 내용을 적당하게 변경하는 것만으로 자동반주의 곡의 배열을 용이하게 변경할 수 있다.
이하, 첨부도면을 참조하여 본 발명의 일 실시예를 상세히 설명한다.
제1도는 본 발명에 관한 자동연주장치를 적용한 전자악기의 일실시예를 도시하는 하드구성 블럭도이다. 이 실시예에 있어서는, 마이크로 프로세서 유니트(CPU)(10), ROM(11), RAM(12)을 포함하는 마이크로 컴퓨터의 제어 하에 각종 처리가 실행되도록 되어 있다.
이 실시예에서는 하나의 CPU(10)에 의해 자동연주처리 등을 행하는 전자악기를 예로 설명한다. 이 실시예에서는 전자악기는 시퀀서 연주용의 채널로서 16채널, 반주연주용의 채널로써 16채널, 전부 32채널분량의 동시 음향발음이 가능하다.
CPU(10)는 이 전자악기 전체의 동작을 제어하는 것이다. 이 CPU(10)에 대해, 데이터 및 어드레스버스(18)를 통하여 ROM(11), RAM(12), 압건검출회로(13), 스위치검출회로(14), 표시회로(15), 음원회로(16) 및 타이머(17)가 접속되어 있다.
ROM(11)은 CPU(10)의 시스템 프로그램, 자동반주의 스타일 데이터, 악음에 관한 각종의 매개변수와 데이터 등을 기억하고 있다.
RAM(12)은 CPU(10)가 프로그램을 실행할 때에 발생하는 각종의 연주데이터와 각종 데이터를 일시적으로 기억하는 것이고, 랜덤액서스메모리(RAM)의 소정의 어드레스영역이 각각 할당되어 있고, 레지스터(registers)와 표시문자 플래그(flags) 등으로 이용된다. 또한 RAM(12)은 여러 곡 분량의 노래데이터와 배열용의 스타일·섹션 변환테이블을 기억하고 있다.
제2도는 이 ROM(11) 및 RAM(12)에 기억되어 있는 데이터의 내용을 도시하는 도면으로써, 제2(a)도는 RAM(12)에 기억되어 있는 여러 곡 분량의 노래데이터의 구성예를, 제2(b)도는 ROM(11)에 기억되어 있는 스타일 데이터의 구성예를, 제2(c)도는 RAM(12)에 기억되어 있는 스타일 섹션 변환테이블의 내용을 각각 표시한다.
한 곡 분량의 노래 데이터는 제2(a)도에 도시하는 바와 같이 초기설정 데이터와 시퀀스 데이터로 구성된다.
초기설정 데이터는 노래의 명칭, 각 채널의 음색(tone color), 연주 파트명, 초기템포(initial tempo) 등의 데이터로 구성되어 있다.
시퀀스데이터는 델타 타임 데이터(delta time data)와 이벤트 데이터(event data) 조(sets)와, 엔드데이터(동 data)로 구성되어 있다. 델타 타임 데이터는 이벤트와 이벤트간의 시간을 나타내는 데이터이다. 이벤트 데이터는 음색 이벤트(note extent), 그 밖의 연주 이벤트, 스타일· 섹션 이벤트, 코드 이벤트, 리플레이스 이벤트 및 스타일 뮤트 이벤트등을 지시한다.
음색 이벤트는 『1』 - 『16』의 채널넘버(음원회로(16)에 있어서의 MIDI채널에 대응) 및 그 채널에 대응한 음색의 온/오프를 나타내는 데이터로 구성된다. 그 밖의 연주이벤트는 음색 이벤트와 마찬가지로 『1』 - 『16』의 채널넘버 및 그 채널에 대응한 볼륨 또는 피치벤드(volume or pitch bend) 등의 데이터로 구성된다.
여기에서 시퀀스데이터의 각 채널은 복수의 연주파트에 대응하는 것으로서, 멜로디파트, 리듬파트, 베이스파트, 코드 배킹파트(chord backing part) 등을 포함하는 것이다. 후술하는 음원회로(16)의 복수의 음향발생채널에 발생한 각종 이벤트를 할당함으로써 복수파트 분량의 악음이 동시발생 가능하다. 따라서 시퀀스 데이터만에 의해서도 리듬파트, 베이스파트, 코드배킹파트를 포함한 자동연주가 가능하지만, 후에 기술하는 스타일 데이터를 사용함으로써, 이들 파트연주를 다른 연주로 바꿔서, 자동반주의 곡의 배열을 용이하게 행할 수 있도록 되어 있다.
스타일·섹션 이벤트는 스타일 넘버와 섹션 넘버로 구성된다. 코드이벤트는 화음의 근원음을 나타내는 루트데이터(root data)와 화음의 종류를 나타내는 타입데이터(type data)로 구성된다. 리플레이스 이벤트는 반주를 행할 때에 뮤트(mute)되는 시퀀서측의 채널을 나타내는 데이터(채널넘버)로 구성되며, 16채널에 대응한 16비트구성이고, 『0』이 비뮤트(not to be muted) 상태인 것을 나타내고, 『1』이 뮤트(to be muted)상태인 것을 나타낸다. 스타일 뮤트 이벤트는 반주를 행할 때에 뮤트되는 반주측의 채널을 나타내는 데이터(채널넘버)로 구성되고, 리플레이스 이벤트와 마찬가지로 16채널에 대응한 16비트 구성의 데이터이다.
또한 상술한 스타일 섹션 이벤트, 코드이벤트, 리플레이스 이벤트, 스타일 뮤트 이벤트는, 자동반주 기능을 가지지 않는 자동연주 장치에 있어서는 무시되고, 음색 이벤트 및 그 외의 연주 이벤트에만 의거하여 자동연주된다. 이 실시예와 같은 자동반주 기능을 가지는 자동연주장치에 있어서는 모든 이벤트가 이용된다.
스타일 데이터는 제2(b)도에 도시하는 바와 같이, 연주 스타일(예를 들면 록(lock) 과 왈츠(waltz) 등)마다 한 개 또는 복수의 반주패턴으로 구성된다. 하나의 반주패턴은 메인(main), 휠인A(fill-in A), 휠인B(fill-in B), 인트로(intro) 및 엔딩의 다섯 개의 섹션으로 구성된다. 제2(b)도에서는 스타일넘버『1』의 연주스타일이 두개의 반주 패턴 A,B를 가지는 경우가 도시되어 있다. 반주패턴A는 메인A, 휠인AA, 휠인AB, 인트로A 및 엔딩A의 섹션으로 구성되고, 반주패턴B는 메인B, 휠인BA, 휠인BB, 인트로B 및 엔딩B의 섹션으로 구성된다.
따라서 제2(b)도의 경우에는 섹션넘버 『1』이 메인A, 섹션넘버 『2』가 휠인AA, 섹션넘버 『3』이 휠인AB, 섹션넘버 『4』가 인트로A, 섹션넘버 『5』가 엔딩A, 섹션넘버 『6』이 메인B, 섹션넘버 『7』이 휠인BA, 섹션넘버 『8』이 휠인BB, 섹션넘버 『9』가 인트로B, 섹션넘버 『10』이 엔딩B에 대응한다.
따라서 스타일넘버 『1』·섹션넘버 『3』은 휠인AB이고, 스타일 넘버 『1』·섹션넘버 『9』는 인트로B를 의미한다.
각 섹션의 데이터는 초기설정 데이터, 델타타임데이터, 이벤트 데이터 및 엔드데이터로 구성된다. 초기설정 데이터는 각 채널의 음색이나 파트명등으로 구성된다. 델타타임데이터는 이벤트와 이벤트간의 시간을 나타내는 데이터이다. 이벤트 데이터는 『1』-『16』의 반주채널넘버 및 그 채널에 대응한 음색 온/오프, 음색넘버 및 속도등을 나타내는 데이터이다. 여기에서 스타일데이터의 각 채널은 복수의 연주파트에 대응하는 것이고, 리듬파트, 베이스파트, 코드배킹파트 등을 포함하는 것이다. 이들 연주파트의 일부 혹은 전부는 상술한 시퀀스데이터의 복수의 연주파트의 일부에 대응하고 있고, 상술한 리플레이스 이벤트에 의거하여 시퀀스데이터측의 대응연주 파트의 채널을 뮤트함으로써 시퀀스데이터의 일부 파트를 스타일 데이터로 바꿀수 있어, 자동반주의 곡의 배열을 용이하게 변경하는 것이 가능하게 된다.
스타일·섹션 변환테이블은 제2(c)도에 도시하는 바와 같이, 복수의 본래의 스타일 섹션넘버와 각각에 대응한 변환 후 스타일·섹션넘버가 기술된 테이블이다. 이 스타일·섹션 변환테이블은 상술한 각 노래데이터마다 형성되어져 있고, 노래데이터의 이벤트 데이터로써 판독된 스타일·섹션이벤트의 스타일 넘버 및 섹션넘버가 본래의 스타일·섹션에 해당하는 경우에, 그것을 변환 후 스타일·섹션으로 변환하기 위한 테이블이다. 따라서 이 변환테이블을 이용함으로써 노래데이터의 내용을 변경하지 않고 반주의 스타일등을 용이하게 변경할 수 있게 된다.
이 스타일 섹션 변환테이블은 미리 노래마다 결정되어 있어도 되고, 사용자가 작성할 수 있도록 해도 좋다. 사용자가 작성하는 경우, 이 스타일 섹션 변환테이블의 본래의 스타일·섹션을 구성하는 스타일넘버 및 섹션넘버는 시퀀스데이터 중에 존재하지 않으면 안되므로, 스타일 섹션 변환테이블을 작성할 때에, 미리 전 노래데이터의 시퀀스데이터 중에서 스타일·섹션에 관한 데이터를 LCD(20)등으로 표시하고, 표시된 각 스타일·섹션에 대해 변환 후 스타일 섹션을 할당하도록 하면 된다. 또한 이 스타일·섹션 변환테이블을 각 노래마다 음악적으로 좋아하는 것을 복수 조로 가지게 하고, 그 중에서 어느 것 하나를 적당히 선택할 수 있도록 해도 된다. 또한 노래데이터 중에 포함되는 모든 스타일·섹션넘버를 다른 스타일·섹션넘버로 변환하지 않아도 되고, 일부의 스타일·섹션넘버에 대해서는 변환하지 않도록 되어 있어도 된다.
건반(19)은 발음 해야하는 악음의 음높이를 선택하기 위한 복수의 건을 구비하고 있어, 각 건에 대응한 키스위치를 가지고 있고, 또한 필요에 따라 압압력검출장치 등의 접촉검출수단을 가지고 있다. 건반(19)은 음악연주를 위한 기본적인 조작자이고, 이 이외의 연주조작자라도 되는 것은 말할 것도 없다.
압건검출회로(13)는 발생해야하는 악음의 음높이를 지정하는 건반(19)의 각각의 건에 대응하여 설치되어진 키스위치 회로를 포함한다. 이 압건검출회로(13)는 건반(19)의 이건(離鍵)상태에서 압건(押鍵)상태로의 변화를 검출하여 키 온 이벤트(key-on event)를 출력하고, 압건상태에서 이건상태로의 변화를 검출하여 키오프 이벤트(key-off event)를 출력함과 동시에 각각의 키온이벤트 및 키오프이벤트에 관한 건의 음높이를 나타내는 키코드(음색넘버)를 출력한다. 압건검출회로(13)는 이 외에도 건을 눌러 내릴시의 압건조작속도나 압압력등을 판별하여 속도데이터와 애프터접촉데이터로써 출력한다.
스위치검출회로(14)는 패널(2)상에 설치되어진 각각의 조작자에 대응하여 설치되어져 있고, 각각의 조작자의 조작상황에 따른 조작데이터를 이벤트정보로써 출력한다.
표시회로(15)는 패널(2)상에 설치되어진 LCD(20)의 표시내용과 각 조작자의 상측에 형성되어진 LED군의 표시상태(점등·소등·점멸 등)를 제어한다.
패널(2)에는 각종 조작자 및 표시수단(LCD(20)과 LED군)이 설치되어져 있다. 패널(2)에 설치되어 있는 조작자로서는, 노래선택 스위치(21A 및 21B), 반주스위치(22), 리플레이스스위치(23), 스타일변환 스위치(24), 스타트/스톱 스위치(25), 시퀀서채널스위치(26) 및 반주채널스위치(27)등이 있다. 이 외에도 패널(2)에는 발생해야할 악음의 음색, 음량, 음고, 효과 등을 선택, 설정, 제어하기 위한 각종 조작자를 가지는데, 여기에서는 실시예의 설명에 필요한 것에 대해서만 설명한다.
노래선택 스위치(21A 및 21B)는 LCD(20)에 표시되는 노래명을 선택설정하는 것이다. 반주스위치(22)는 자동반주의 온·오프를 제어하는 것이다. 스타일변환스위치(24)는 스타일·섹션 변환테이블에 따른 스타일 변환처리의 온/오프를 제어하는 것이다. 리플레이스스위치(23)는 시퀀서측의 소정의 채널의 뮤트/비뮤트 상태를 제어하는 것이다. 스타트/스톱스위치(25)는 자동반주의 스타트/스톱을 제어하는 것이다. 시퀀서채널스위치(26)는 시퀀서측의 각 채널에 대해 뮤트/비뮤트를 선택 설정하는 것이다. 반주채널스위치(27)는 자동반주측의 각 채널에 대해 뮤트/비뮤트를 선택설정하는 것이다. 이들 시퀀서채널스위치(26) 및 반주채널스위치(27)의 상측에는 뮤트/비뮤트 상태를 나타내기 위한 LED군이 형성되어져 있다.
음원회로(16)는 복수의 음향발생 채널(이 실시예에서는 32채널)로 각각 다른 음색의 악음신호의 동시발생이 가능하고, 데이터 및 어드레스버스(18)를 경유하여 인가된 연주데이터(MIDI규격에 준거한 데이터)를 입력하고, 이 연주데이터에 의거하여 악음신호를 발생한다.
음원회로(16)에 있어서의 악음신호발생방식은 어떠한 것을 사용해도 된다. 예를 들면, 발생해야할 악음의 음고에 대응하여 변화하는 어드레스 데이터에 따라 파형메모리에 기억한 악음파형 샘플값데이터를 순차 판독하는 메모리판독방식, 또는 상기 어드레스 데이터를 위상각 매개변수 데이터로써 소정의 주파수변조연산을 실행하여 악음파형 샘플값데이터를 구하는 FM방식, 혹은 상기 어드레스데이터를 위상각 매개변수 데이터로서 소정의 진폭변조연산을 실행하여 악음파형 샘플값데이터를 구하는 AM방식등의 공지된 방식을 적당히 채용해도 된다.
음원회로(16)에서 발생되는 악음신호는 사운드시스템(1A)(앰프 및 스피커로 이루어진다)을 통하여 음향발생된다.
타이머(17)는 시간간격을 계수하거나 자동연주의 템포를 설정하기 위한 템포클럭펄스(tempo clock pulses)를 발생시키는 것이고, 이 템포클럭펄스의 주파수는 패널(2)상의 템포스위치(도시하지 않음)에 의해 조정된다. 발생한 템포클럭펄스는 CPU(10)에 대해 인터럽트명령으로써 인가되고, CPU(10)는 인터럽트처리에 의해 자동연주의 각종처리를 실행한다. 이 실시예에 있어서 템포클럭펄스는 4분음표에 붙어 96회 발생되는 것으로 한다.
또한 이들 장치이외에 MIDI인터페이스와 공중회선, 각종 네트워크, FDD, HDD등을 통하여 데이터의 교환을 행해도 되는 것은 말할 것도 없다.
다음에 CPU(10)에 의해 실행되는 전자악기의 처리의 일 예를 제3도에서 제13도의 플로우 차트에 의거하여 설명한다.
제3도는 패널(2)상의 노래선택 스위치(21A 또는 21B)가 조작되어, RAM(12)내의 노래데이터가 선택된 경우에, 제1도의 전자악기의 CPU(10)가 처리하는 노래선택스위치 처리의 일 예를 도시하는 도면이다. 이 노래선택 스위치처리는 다음과 같은 스텝으로 순서대로 실행된다.
스텝31:RAM(12)에 기억되어 있는 복수의 노래데이터 중에서, 노래선택스위치(21A 및 21B)에 의해 선택된 노래데이터의 초기설정 데이터를 판독하여, 각종의 설정을 행한다. 예를 들면, 각 채널의 음색, 템포, 음량, 효과 등을 설정한다.
스텝32:선택된 노래데이터의 시퀀스데이터를 판독하여, 이벤트가 존재하는 채널 및 스타일 관련의 이벤트를 검색한다. 즉 음색이벤트 및 연주이벤트와 함께 기억되어 있는 채널넘버를 판독하고, 또 시퀀스데이터의 중에 스타일·섹션 이벤트나 코드 이벤트 등의 스타일 관련의 이벤트가 존재하는가를 검색한다.
스텝33: 상기 스텝32의 검색결과에 의거하여, 이벤트가 존재하는 채널넘버에 대응하는 시퀀서채널스위치(26)의 상측에 위치하는 LED를 점등한다.
스텝34: 스텝32의 검색결과에 의거하여, 스타일 관련의 이벤트가 존재하는가 판정하고, 존재하는(YES)경우는 스텝35로 진행하고, 존재하지 않는(NO) 경우는 스텝36으로 진행한다.
스텝35: 상기 스텝34에서 스타일 관련의 이벤트가 존재한다고 판정되었으므로, 여기에서는 스타일관련 이벤트 존재 플래그(STEXT)에 『1』을 셋트한다. 스타일 관련 이벤트 존재 플래그(STEXT)는 『1』의 경우에 노래데이터의 시퀀스데이터 중에 스타일 관련의 이벤트가 존재하는 것을 나타내고, 『0』경우에 존재하지 않는 것을 나타낸다.
스텝36: 상기 스텝34에서 스타일 관련의 이벤트가 존재하지 않는다고 판정되었기 때문에, 여기에서는 스타일관련 이벤트 존재 플래그(STEXT)에 『0』을 셋트한다.
스텝37: 노래데이터의 최초의 델타타임데이터를 시퀀서용 타이밍레지스터(TIME1)에 격납한다. 시퀀서용 타이밍레지스터(TIME1)는 제2(a)도의 노래데이터의 중에서 시퀀스데이터를 순차 판독하기 위한 타이밍을 계시하는 것이다.
스텝38: 반주 온 플래그(ACCMP), 리플레이스 온 플래그(REPLC) 및 스타일 변환 온 플래그(STCHG)에 『0』으로 셋트한다. 반주 온 플래그(ACCMP)는 『1』의 경우에 제2(b)도의 스타일 데이터에 의거한 반주를 행하는 것을 나타내고, 『0』의 경우에 그 반주를 행하지 않는 것을 나타낸다. 리플레이스 온 플래그(REPLC)는 『1』의 경우에 리플레이스이벤트에 따른 시퀀서측의 채널을 뮤트/비뮤트상태로 하는 것을 나타내고, 『0』의 경우는 이와 같은 제어를 행하지 않는 것을 나타낸다. 스타일변환 온 플래그(STCHG)는 『1』의 경우에 스타일·섹션 변환테이블에 의거한 변환처리를 행하는 것을 나타내고, 『0』의 경우는 그 변환처리를 행하지 않는 것을 나타낸다.
스텝39: 패널(2)상의 반주스위치(22), 리플레이스 스위치(23) 및 스타일 변환 스위치(24)의 상측에 위치하는 각LED를 점등하고, 반주오프상태, 리플레이스 오프상태 및 스타일변환 오프상태인 것을 조작자에게 나타내고, 리턴한다.
제4도는 패널(2)상의 반주스위치(22)가 조작된 경우에, 제1도의 전자악기의 CPU(10)가 처리하는 반주스위치 처리의 일 예를 도시하는 도면이다. 이 반주스위치처리는 다음과 같은 스텝으로 순서대로 실행된다.
스텝41: 스타일 관련 이벤트 존재 플래그(STEXT)가 『1』인가를 판정하여, 『1』(YES)의 경우는 노래데이터 중에 스타일관련이벤트가 존재하는 것을 의미하므로 스텝42이후로 진행하고, 『0』(NO)의 경우는 노래 데이터의 중에 스타일 관련이벤트가 존재하지 않는 것을 의미하기 때문에 즉각 리턴한다.
스텝42: 반주스위치(22)가 조작된 시점의 반주상태가 반주 온상태인가 반주 오프 상태인가를 판정하기 위하여, 반주 온 플래그(ACCMP)가 『1』인지 여부를 판정하고, 『1』(YES)의 경우는 스텝48로 진행하고, 『0』(NO)의 경우는 스텝43으로 진행한다.
스텝43: 상기 스텝42에서 반주 온 플래그(ACCMP)가 『0』(반주 오프 상태)으로 판정되었기 때문에, 여기에서는 반주 온 플래그(ACCMP) 및 리플레이스 온 플래그(REPLC)에 『1』을 셋트하여, 이 이후는 반주 온 상태이고, 또한 리플레이스 온상태인 것을 나타낸다.
스텝44: 스타일 넘버 레지스터(STYL)의 격납치, 섹션넘버 레지스터(SECT)의 격납치 및 현재의 진행위치에 따른 제2(b)도의 스타일데이터 안에서 소정의 섹션의 반주패턴의 판독위치를 설정하고, 스타일용 타이밍레지스터(TIME2)에 다음의 이벤트까지의 시간(델타 타임)을 셋트한다. 스타일넘버레지스터(STYL)는 스타일 넘버를, 섹션넘버(SECT)는 섹션넘버를, 각각 격납하는 레지스터이다. 스타일용 타이밍레지스터(TIME2)는 제2(b)도의 스타일 데이터의 소정의 섹션에서 반주패턴을 순차 판독하기 위한 타이밍을 계시하는 것이다.
스텝45: 스타일넘버 레지스터(STYL)의 격납치 및 섹션 넘버레지스터(SECT)의 격납치에 의해 특정된 반주패턴을 전부 판독하여, 이벤트가 존재하는 채널을 검색한다.
스텝46: 상기 스텝45의 검색결과에 의거하여, 이벤트가 존재하는 채널넘버에 대응하는 반주채널 스위치(27)의 상측에 위치하는 LED를 점등한다.
스텝47: 반주스위치(22)와 리플레이스 스위치(23)의 상측에 위치하는 LED를 점등하여, 반주 온상태이고, 또한 리플레이스 온 상태인 것을 조작자에게 나타내고, 리턴한다.
스텝48: 상기 스텝42에서 반주 온 플래그(ACCMP)가 『1』(반주 온상태)로 판정되었기 때문에, 여기에서는 반주 온 플래그(ACCMP), 리플레이스 온 플래그(REPLC) 및 스타일변환 온 플래그(STCHG)에 『0』을 셋트한다.
스텝49: 주행상태 플래그(RUN)가 『1』인지 여부, 즉 자동연주 중인가를 판정하고, 『1』(YES)의 경우는 다음 스텝4A로 진행하고, 『0』(NO)의 경우는 스텝4B로 점프한다. 주행상태 플래그(RUN)는 『1』의 경우에 자동연주주행상태를 나타내고, 『0』의 경우에 자동연주정지상태를 나타낸다.
스텝4A: 상기 스텝49에서 자동연주 중이라고 판정되었으므로, 현재 발음중의 스타일관련의 반주음을 소음한다.
스텝4B: 패널(2)상의 반주스위치(22), 리플레이스 스위치(23) 및 스타일변환 스위치(24)의 상측에 위치하는 LED를 점등하고, 반주오프상태, 리플레이스 오프상태 및 스타일변환 오프 상태인 것을 조작자에게 나타내고, 리턴한다.
제5도는 패널(2)상의 리플레이스 스위치(23)가 조작된 경우에, 제1도의 전자악기의 CPU(10)가 처리하는 리플레이스 스위치처리의 일 예를 도시하는 도면이다. 이 리플레이스 스위치처리는 다음과 같은 스텝으로 순서대로 실행된다.
스텝51: 리플레이스 스위치(23)가 조작된 시점의 반주상태가 반주 온상태인가 반주 오프상태인가를 판정하기 위하여, 반주 온 플래그(ACC71P)가 『1』인지 여부를 판정하고, 『1』(YES)의 경우는 스텝52 이후로 진행하고, 『0』(NO)의 경우는 리플레이스 스위치(23)의 조작을 무시하고, 리턴한다.
스텝52: 상기 스텝51에서 반주 온 플래그(ACCMP)가 『1』(반주 온상태)로 판정되었기 때문에, 이번에는 리플레이스 스위치(23)가 조작된 시점의 리플레이스 상태가 온상태인가 오프상태인가를 판정하기 위하여, 리플레이스 온 플래그(REPLC)가 『1』인지 여부를 판정하고, 『1』(YES)의 경우는 스텝55로 진행하고 『0』(NO)의 경우는 스텝53으로 진행한다.
스텝53: 상기 스텝52에서 리플레이스 온 플래그(REPLC)가 『0』(리플레이스 오프상태)으로 판정되었기 때문에, 여기에서는 리플레이스 온 플래그(REPLC)에 『1』을 셋트한다.
스텝54: 리플레이스 스위치(23)의 상측에 위치하는 LED를 점등하고, 리플레이스 스위치(23)의 조작에 의해 리플레이스 온 상태로 된 것을 조작자에게 나타낸다.
스텝55: 상기 스텝52에서 리플레이스 온 플래그(REPLC)가 『1』(리플레이스 온상태)로 판정되었기 때문에, 여기에서는 리플레이스 온 플래그(REPLC)에 『0』을 셋트한다.
스텝56: 리플레이스 스위치(23)의 상측에 위치하는 LED를 점등하고, 리플레이스 스위치(23)의 조작에 의해 리플레이스오프 상태로 된 것을 조작자에게 나타낸다.
제6도는 패널(2)상의 스타일변환 스위치(24)가 조작된 경우에, 제1도의 전자악기의 CPU(10)가 처리하는 스타일변환 스위치처리의 일 예를 도시하는 도면이다. 이 스타일변환 스위치처리는 다음과 같은 스텝으로 순서대로 실행된다.
스텝61: 스타일변환 스위치(24)가 조작된 시점의 반주상태가 반주 온상태인가 반주 오프상태인가를 판정하기 위하여, 반주 온 플래그(ACCMP)가 『1』인가를 판정하고, 『1』(YES)의 경우는 스텝62 이후로 진행하고, 『0』(NO)의 경우는 스타일변환 스위치(24)의 조작을 무시하고, 리턴한다.
스텝62: 상기 스텝 61에서 반주 온 플래그(ACCMP)가 『1』(반주온상태)로 판정되었기 때문에, 이번에는 스타일변환 스위치(24)가 조작된 시점의 스타일변환 상태가 온상태인가 오프상태인가를 판정하기 위하여, 스타일변환온플래그(STCHG)가 『1』인가를 판정하고, 『1』(YES)의 경우는 스텝65로 진행하고, 『0』(NO)의 경우는 스텝63으로 진행한다.
스텝63: 상기 스텝62에서 스타일변환 온 플래그(STCHG)가 『0』(스타일변환오프상태)으로 판정되었기 때문에, 여기에서는 스타일변환 온 플래그(STCHG)에 『1』을 셋트한다.
스텝64: 스타일변환 스위치(24)의 상측에 위치하는 LED를 점등하고, 스타일변환 스위치(24)의 조작에 의해 스타일변환 온상태로 된 것을 조작자에게 나타낸다.
스텝65: 상기 스텝62에서 스타일변환 온 플래그(STCHG)가 『1』(스타일변환 온상태)로 판정되었기 때문에, 여기에서는 스타일변환 온 플래그(STCHG)에『0』을 셋트한다.
스텝66: 스타일변환스위치(24)의 상측에 위치하는 LED를 점등하고, 스타일변환스위치(24)의 조작에 의해 스타일변환오프 상태로 된 것을 조작자에게 나타낸다.
제7도는 패널(2)상의 스타트/스톱 스위치(25)가 조작된 경우에, 제1도의 전자악기의 CPU(10)가 처리하는 스타트/스톱 스위치 처리의 일 예를 도시하는 도면이다. 이 스타트/스톱 스위치 처리는 다음과 같은 스텝으로 순서대로 실행된다.
스텝71: 주행상태플래그(RUN)가 『1』인가를 판정하고, 『1』(YES)의 경우는 스텝72로 진행하고, 『0』(NO)의 경우는 스텝74로 진행한다.
스텝72: 상기 스텝71에서 자동연주주행상태로 판정되었다고 하는 것은, 자동연주주행상태로 스타트/스톱 스위치(25)가 조작된 것을 의미하기 때문에, 자동연주를 정지하기 위해 음원회로(16)의 발음 중의 음에 대해, 음색오프를 출력하고, 발음 중의 음을 소음한다.
스텝73: 주행상태플래그(RUN)에 『0』을 셋트하고, 이 이후 자동연주 정지 상태로 한다.
스텝74: 상기 스텝71에서 자동연주 정지상태로 판정되었다고 하는 것은, 자동연주 정지상태로 스타트/스톱 스위치(25)가 조작된 것을 의미하기 때문에, 이 이후 자동연주 주행상태로 하기 위한 주행상태플래그(RUN)에 『1』을 셋트한다.
제8도는 4분 음표당 96회의 타이머인터럽트로 실행되는 시퀀서 재생처리의 일 예를 도시하는 도면이다. 이 시퀀서 재생처리는 다음과 같은 스텝으로 순서대로 실행된다.
스텝81: 주행상태플래그(RUN)가 『1』인가를 판정하고, 『1』(YES)의 경우는 다음 스텝82 이후로 진행하고, 『0』(NO)의 경우는 리턴하고, 다음의 인터럽트타이밍까지 대기한다. 즉 제7도의 스텝74에 의해 주행상태플러그(RUN)에 『1』이 셋트될 때까지 스텝82 이후의 처리는 실행되지 않는다.
스텝82: 시퀀서용 타이밍레지스터(TIME1)의 격납치가 『0』인가를 판정하고, 『0』(YES)의 경우는 제2(a)도의 노래데이터 안에서 시퀀스데이터를 판독하는 타이밍이 된 것을 의미하므로 다음의 스텝83으로 진행하고, 『0』이외(NO)의 경우는 스텝88로 진행한다.
스텝83: 상기 스텝82에서 시퀀스데이터의 판독 타이밍이 되었다고 판정되었기 때문에, 여기에서는 제2(a)도의 노래데이터 중에서 다음의 데이터를 판독한다.
스텝84: 상기 스텝83에서 판독된 데이터가 델타타임데이터인가를 판정하여, 델타타임데이터(YES)의 경우는 스텝85로 진행하고, 그렇지 않은 경우는 스텝86으로 진행한다.
스텝85: 판독된 데이터가 델타타임데이터로 상기 스텝84에서 판정되었기 때문에, 여기에서는 그 델타타임데이터를 시퀀서용 타임레지스터(TIME1)에 격납한다.
스텝86: 판독된 데이터가 델타타임데이터가 아닌 것으로 상기 스텝84에서 판정되었기 때문에, 여기에서는 그 판독된 데이터에 대응한 처리(데이터 대응처리1)를 행한다. 이 데이터 대응처리1의 상세한 내용에 대해 후에 기술한다.
스텝87: 시퀀서용 타이밍레지스터(TIME1)의 격납치가 『0』인지 여부, 즉 전 스텝83에서 판독된 델타타임데이터가 『0』인지 여부를 판정하고, 『0』(YES)의 경우는 같은 타이밍에 해당하므로, 스텝83으로 리턴하고, 그 델타타임에 대응하는 이벤트 데이터를 판독하여 스텝86의 데이터 대응처리1을 행하고, 『0』이외(NO)의 경우는 스텝88로 진행한다.
스텝88: 상기 스텝82 또는 스텝 87에서 시퀀서용 타이밍레지스터(TIME1)의 격납치가 『0』이 아니라고 판정되었기 때문에, 그 시퀀서용 타이밍 레지스터(TIME1)의 격납치를 1만 감소처리하여 리턴하고, 다음의 인터럽트타이밍까지 대기한다.
제9도는 제8도의 스텝83의 처리에 의해 판독된 데이터가 델타타임 이외의 음색 이벤트 및 스타일 섹션 넘버이벤트의 경우에 행해지는 제8도의 스텝86의(데이터대응처리1)의 상세한 내용을 도시하는 플로우 차트이다.
제9(a)도는 판독된 데이터가 음색 이벤트의 경우에 실행되는 데이터 대응처리1 안의 음색 이벤트처리를 도시하는 도면이다. 이 음색 이벤트처리는 다음과 같은 스텝으로 순서대로 실행된다.
스텝91: 제8도의 스텝83에서 판독된 데이터가 음색 이벤트이기 때문에 여기에서는 리플레이스 온 플래그(REPLC)가 『1』인지 여부를 판정하고, 『1』(YES)의 경우는 리플레이스 처리하기 위한 다음 스텝92로 진행하고, 『0』(NO)의 경우는 리플레이스 처리하지 않으므로 스텝93으로 점프한다.
스텝92: 상기 스텝91에서 리플레이스 온 플래그(REPLC)가 『1』로 판정되었기 대문에, 그 이벤트에 대응하는 채널이 뮤트상태인가를 판정하고, 뮤트상태(YES)의 경우 그 이벤트는 반주음에 의해 리플레이스되든가 또는 뮤트만 되기 때문에, 제8도의 스텝83으로 즉각 리턴하고, 한편, 비뮤트상테(NO)의 경우 그 이벤트는 리플레이스 되지 않기 때문에, 다음 스텝93으로 진행한다.
스텝93: 상기 스텝91 및 스텝92에서 음색 이벤트는 리플레이스도 뮤트도 되지 않는다고 판정되었기 때문에, 여기에서는 그 음색이벤트에 대응하는 연주데이터를 음원회로(16)로 출력하고, 제8도의 스텝83으로 리턴한다.
제9(b)도는 판독된 데이터가 스타일·섹션 넘버이벤트의 경우에 실행되는 데이터 대응처리1의 안의 스타일·섹션 넘버이벤트처리를 도시하는 도면이다. 이 스타일·섹션 넘버이벤트처리는 다음과 같은 스텝으로 순서대로 실행된다.
스텝94: 제8도의 스텝83에서 판독된 데이터가 스타일·섹션 넘버이벤트이기 때문에, 여기에서는 스타일변환 온 플래그(STCHG)가 『1』인지 여부를 판정하고, 『1』(YES)의 경우는 스타일변환테이블에 의거하여 변환처리를 행하기 때문에 다음 스텝95로 진행하고, 『0』(NO)의 경우는 스텝96으로 점프한다.
스텝95: 상기 스텝94에서 스타일변환 온 플래그(STCHG)가 『1』로 판정되었기 때문에, 그 스타일넘버 및 섹션넘버를 스타일변환 테이블에 따라 새로운 스타일 섹션넘버로 변환한다.
스텝96: 제8도의 스텝83에서 판독된 스타일· 섹션넘버 또는 상기 스텝95에서 변환된 새로운 스타일·섹션넘버를 각각 스타일넘버 레지스터(STYL) 및 섹션넘버 레지스터(SECT)에 격납한다.
스텝97: 스타일넘버 레지스터(STYL) 및 섹션넘버 레지스터(SECT)의 격납치에 따라 재생하는 반주패턴을 바꾼다. 즉 스타일넘버 레지스터(STYL) 및 섹션넘버 레지스터(SECT)의 각각의 격납치에 의해 특정되는 제2(b)도의 스타일 데이터의 반주패턴으로 바꾸고, 제8도의 스텝83으로 리턴한다.
제10도는 제8도의 스텝83의 처리에 의해 판독된 데이터가 델타타임 이외의 리플레이스 이벤트, 스타일뮤트이벤트, 다른 연주이벤트, 코드이벤트 및 엔드이벤트의 경우에 행해지는 제8도의 스텝86의[데이터대응처리1]의 상세한 내용의 플로우 챠트이다.
제10(a)도는 판독된 데이터가 리플레이스 이벤트인 경우에 실행되는 데이터대응처리1 안의 리플레이스 이벤트처리를 도시하는 도면이다. 이 리플레이스 이벤트처리는 다음과 같이 하여 행해진다.
우선 판독된 리플레이스 이벤트의 16비트 구성의 데이터에 의거하여, 시퀀서용의 각 채널에 대해 뮤트 비뮤트를 설정한다.
상기 스텝에서 뮤트로 설정된 시퀀서용 채널의 음을 소음한다.
이벤트가 존재하는 시퀀서용 채널중, 뮤트상태로 설정된 시퀀서채널스위치(26)의 상측에 위치하는 LED를 점멸한다.
이벤트가 존재하는 채널중, 비뮤트상태로 설정된 시퀀서채널스위치(26)의 상측에 위치하는 LED를 점등하고, 제8도의 스텝83으로 리턴한다.
이것에 의해, 조작자는 이벤트가 존재하는데도 불구하고 뮤트상태에 있는 시퀀서용 채널, 및 비뮤트 상태에 있는 시퀀서용 채널을 용이하게 인식할 수 있게 된다.
제10(b)도는 판독된 데이터가 스타일뮤트이벤트의 경우에 실행되는 데이터대응처리1 안의 스타일뮤트 이벤트처리를 도시하는 도면이다.
이 스타일뮤트 이벤트처리는 다음과 같이 해서 행해진다.
우선 판독된 스타일뮤트 이벤트의 16비트 구성의 데이터에 의거하여, 반주용의 각 채널에 대해 뮤트·비뮤트를 설정한다.
전 스텝에서 뮤트로 설정된 반주용 채널의 음을 소음한다.
이벤트가 존재하는 반주용 채널 중, 뮤트 상태로 설정된 반주채널 스위치(27)의 상측에 위치하는 LED를 점멸한다.
이벤트가 존재하는 반주용 채널 중, 비뮤트 상태로 설정된 반주채널 스위치(27)의 상측에 위치하는 LED를 점등하여, 제8도의 스텝83으로 리턴한다.
이것에 의해, 조작자는 이벤트가 존재하는데도 불구하고 뮤트상태에 있는 반주용 채널, 및 비뮤트 상태에 있는 반주용 채널을 용이하게 인식할 수 있게 된다.
제10(c)도는 판독된 데이터가 다른 연주이벤트의 경우에 실행되는 데이터대응처리1 중의 다른 연주이벤트처리를 도시하는 도면이다. 이 밖에 연주이벤트처리에서는, 판독된 연주이벤트를 음원회로(16)등으로 출력하고, 제8도의 스텝83으로 리턴한다.
제10(d)도는 판독된 데이터가 코드이벤트의 경우에 실행되는 데이터대응처리1 안의 코드이벤트 처리를 도시하는 도면이다. 이 코드이벤트 처리에서는, 판독된 루트데이터를 근음레지스터ROOT에, 타입데이터를 타입레지스터 TYPE에 각각 격납하고, 제8도의 스텝83으로 리턴한다.
제10(e)도는 판독된 데이터가 엔드이벤트의 경우에 실행되는 엔드이벤트처리를 도시하는 도면이다. 이 엔드이벤트 처리에서는, 판독된 데이터가 엔드이벤트이기 때문에, 그것에 따라 발음 중의 시퀀서 및 스타일에 관한 음을 소음하고, 주행상태플래그(RUN)를 『0』으로 리셋트하여, 제8도의 스텝83으로 리턴한다.
제11도는 4분 음표당 96회의 타이머인터럽트로 실행되는 스타일 재생처리의 일 예를 도시하는 도면이다. 이 스타일 재생처리는 다음과 같은 스텝으로 순서대로 실행된다.
스텝111: 현재의 인터럽트타이밍에 있어서의 반주상태가 반주온상태인가 반주오프상태인가, 즉 반주 온 플래그(ACCMP)가 『1』인가를 판정하고, 『1』(YES)의 경우는 반주를 행하기 위한 스텝112 이후로 진행하고, 『0』(NO)의 경우는 반주를 행하지 않으므로 그대로 리턴하여, 다음의 인터럽트타이밍까지 대기한다. 즉 제4도의 스텝43에 의해 반주 온 플래그(ACCMP)에 『1』이 셋트될 때까지 스텝112 이후의 처리는 실행되지 않는다.
스텝112: 주행상태 플래그(RUN)가 『1』인가를 판정하고, 『1』(YES)의 경우는 다음 스텝113 이후로 진행하고, 『0』(NO)의 경우는 리턴하여, 다음 인터럽트타이밍까지 대기한다. 즉 제7도의 스텝74에 의해 주행상태플래그(RUN)에 『1』이 셋트될 때까지 스텝113 이후의 처리는 실행되지 않는다.
스텝113: 스타일용 타이밍레지스터(TIME2)의 격납치가 『0』인지 여부를 판정하고, 『0』(YES)의 경우는 제2(b)도의 스타일 데이터 중에서 반주데이터를 판독하는 타이밍인 것을 의미하므로 다음 스텝114로 진행하고, 『0』이외(NO)의 경우는 스텝119로 진행한다.
스텝114: 상기 스텝113에서 스타일 데이터의 판독타이밍이 되었다고 판정 되었기 때문에, 여기에서는 제2(b)도의 스타일데이터 중에서 다음의 데이터를 판독한다.
스텝115: 상기 스텝114에서 판독된 데이터가 델타타임데이터 인가를 판정하여, 델타타임데이터(YES)의 경우는 스텝116으로 진행하고, 그렇지 않은 경우는 스텝117로 진행한다.
스텝116: 판독된 데이터가 델타타임 데이터라고 상기 스텝115에서 판정되었기 때문에, 여기에서는 그 델타타임 데이터를 스타일용 타이밍레지스터(TIME2)에 격납한다.
스텝117: 판독된 데이터가 델타타임 데이터가 아니라고 상기 스텝115에서 판정되었기 때문에, 여기에서는 그 판독된 데이터에 대응한 처리(데이터 대응처리2)를 행한다. 이 데이터 대응처리2의 상세한 내용에 대해서는 다음에 기술한다.
스텝118: 스타일용 타이밍레지스터(TIME2)의 격납치가 『0』인지 여부, 즉 전 스텝114에서 판독된 델타타임 데이터가 『0』인가를 판정하고, 『0』(YES)의 경우는 같은 타이밍에 해당하므로, 스텝114로 리턴하고, 그 델타타임에 대응하는 이벤트데이터를 판독하여 스텝117의 데이터 대응처리2를 행하고, 『0』 이외(NO)의 경우는 스텝119로 진행한다.
스텝119: 상기 스텝113 또는 스텝118에서 스타일용 타이밍레지스터(TIME2)의 격납치가 『0』이 아니라고 판정되었기 때문에, 스타일용 타이밍레지스터(TIME2)의 격납치를 1만 감소 처리하여 리턴하고, 다음의 인터럽트타이밍까지 대기한다.
제12도는 제11도의 스텝114의 처리에 의해 판독된 데이터가 델타타임 이외의 음색 이벤트, 다른 연주이벤트 또는 엔드이벤트의 경우에 행해지는 제11도의 스텝117의[데이터 대응처리2]의 상세하게 도시하는 플로우 차트이다.
제12(a)도는 판독된 데이터가 음색이벤트의 경우에 실행되는 데이터 대응처리2 안의 음색이벤트 처리를 나타낸다. 이 음색이벤트 처리는 다음과 같은 스텝으로 순서대로 실행된다.
스텝121: 음색이벤트에 대응하는 연주용 채널이 뮤트 상태인가를 판정하고, 뮤트상태(YES)인 경우는 그 이벤트에 관한 연주는 행하지 않으므로 그대로 리턴하고, 비뮤트상태(NO)인 경우는 그 이벤트에 대한 연주를 행하기 때문에, 다음 스텝112 이후로 진행한다.
스텝122: 판독된 음색이벤트의 음색넘버를 근음 레지스터 ROOT내의 루트데이터 및 타입 레지스터(TYPE)내의 타입데이터에 의거한 음색넘버로 변환한다. 다만 리듬파트에 대해서는 변환하지 않는다.
스텝123: 상기 스텝122에서 변환된 이벤트에 대응하는 연주데이터를 음원회로(16)로 출력하고, 제11도의 스텝114로 리턴한다.
제12(b)도는 판독된 데이터가 다른 연주이벤트의 경우에 실행되는 데이터 대응처리2 안의 다른 연주이벤트 처리를 나타낸다. 이 밖의 연주이벤트 처리에서는, 판독된 연주이벤트를 음원회로(16)등으로 출력하고, 제11도의 스텝114로 리턴한다.
제12(c)도는 판독된 데이터가 엔드이벤트의 경우에 실행되는 데이터 대응처리2 중의 엔드이벤트 처리를 도시하는 도면이다. 이 엔드이벤트 처리에서는 판독된 데이터가 스타일데이터의 엔드이벤트이기 때문에, 여기에서는 대응하는 반주데이터의 선두로 이행하고, 그 선두의 델타타임데이터를 스타일용 타이밍레지스터(TIME2)에 격납하여, 제11도의 스텝114로 리턴한다.
지금까지는 뮤트/비뮤트의 설정을 노래데이터 내의 리플레이스이벤트데이터 및 스타일뮤트 이벤트데이터에 의거하여 행하는 경우에 대해 설명하였으나, 이 실시예에서는 각 시퀀서채널스위치(26) 또는 반주채널스위치(27)을 독립으로 조작함으로써 개별로 뮤트/비뮤트의 설정을 행할 수 있도록 되어있다. 즉 이벤트가 존재하는 채널에 대응하는 시퀀서채널스위치(26) 및 반주채널스위치(27)의 상측에 위치하는 LED는 점등되어 있고, 그 안에서 뮤트상태에 있는 것은 점멸되어 있다. 따라서 이와 같이 LED가 점등 또는 점멸되어 있는 채널스위치를 개별로 조작함으로써, 제13도의 각 채널스위치 처리가 실행되고, 조작자는 뮤트/비뮤트의 설정을 적당하게 행할 수 있다.
이하 각 채널스위치 처리에 대해 상세하게 설명한다.
제13도는 패널(2) 상의 시퀀서채널스위치(26) 또는 반주채널스위치(27)의 어떤 채널스위치가 조작된 경우에, 제1도의 전자악기의 CPU(10)가 처리하는 각 채널스위치 처리의 일 예를 도시하는 도면이다. 각 채널스위치 처리는 다음과 같은 스텝으로 순서대로 실행된다.
스텝131: 조작된 스위치에 대응하는 채널(상기채널)에 이벤트가 존재하는지 여부를 판정하고, 존재하는(YES)경우는 스텝132로 진행하고, 존재하지 않는(NO) 경우는 리턴한다.
스텝132: 상기 스텝131에서 이벤트가 존재한다고 판정되었기 때문에, 여기에서는 그 채널이 현재 뮤트상태인가 비뮤트상태인가를 판정하고, 뮤트상태(YES)의 경우는 스텝133으로 진행하고, 비뮤트상태(NO)의 경우는 스텝135로 진행한다.
스텝133: 상기 스텝132에서 현재 뮤트상태라고 판정되었으므로, 여기에서는 비뮤트상태로 설정한다.
스텝134: 대응하는 시퀀서채널스위치(26) 또는 반주채널스위치(27)의 상측에 위치하는 LED를 점등하여, 비뮤트상태로 된 것을 조작자에게 나타낸다.
스텝135: 상기 스텝132에서 현재 비뮤트상태로 판정되었으므로, 여기에서는 뮤트상태로 설정한다.
스텝136: 뮤트로 설정된 반주용 채널(상기 채널) 발음중의 음을 소음한다.
스텝137: 대응하는 시퀀서채널스위치(26) 또는 반주채널스위치(27)의 상측에 위치하는 LED를 점멸하고, 뮤트상태로 된 것을 조작자에게 나타낸다.
상술한 실시예에서는 시퀀서측의 뮤트/비뮤트의 설정을 시퀀서 데이터내의 리플레이스 이벤트데이터에 의거하여 행하고, 스타일측의 뮤트/비뮤트의 설정을 노래데이터 내의 스타일뮤트 이벤트데이터에 의거하여 행하는 경우에 대해 설명하였으나, 리플레이스 이벤트처리와 스타일뮤트 이벤트처리를 각각 대응시켜서 시퀀서측에서 뮤트/비뮤트의 설정을 행하도록 해도 된다. 즉 리플레이스 이벤트데이터에 의거하여 시퀀서측의 채널이 뮤트로 설정된 경우에는, 그 채널에 대응하는 스타일측의 채널을 비뮤트로 설정하고, 반대로 시퀀서측의 채널이 비뮤트로 설정된 경우에는, 그 채널에 대응하는 스타일측의 채널을 뮤트로 설정하도록 한다. 이와 같은 처리에 대응한 리플레이스 이벤트처리의 다른 실시예에 대해 이하 설명한다. 또한 대응하는 채널은 시퀀서측과 스타일측에 각각 설정되어 있는 음색에 의거하여 결정해도 되고, 사용자가 대응관계를 설정하거나, 노래마다 미리 결정되어 있어도 된다.
제14도는 제10도의 리플레이스 이벤트처리의 별도의 실시예를 도시하는 플로우 차트도이다. 이 리플레이스 이벤트처리는 다음과 같이 하여 행해진다.
판독된 리플레이스 이벤트데이터의 16비트 구성의 데이터에 의거하여, 시퀀서용의 각 채널에 대해 뮤트/비뮤트를 설정한다.
상기 스텝에서 뮤트로 설정된 시퀀서용 채널의 음을 소음한다.
이벤트가 존재하는 시퀀서용 채널중, 뮤트상태로 설정된 시퀀서채널스위치(26)의 상측에 위치하는 LED를 점멸한다.
시퀀서측의 처리에 의해 뮤트상태로 설정된 채널에 대응하는 파트의 스타일측의 반주용 채널을 비뮤트상태로 설정한다.
시퀀서측의 처리에 의해 비뮤트상태로 설정된 채널에 대응하는 파트의 스타일측의 반주용 채널을 뮤트상태로 설정한다.
뮤트로 설정된 반주용 채널의 음을 소음한다.
이벤트가 존재하는 반주용 채널 중, 뮤트상태로 설정된 반주채널스위치(27)의 상측에 위치하는 LED를 점멸한다.
상술한 실시예에서는, 자동연주장치가 자동반주기능을 가지는 경우에 대해 설명하였으나, 다음에 자동연주장치가 자동반주기능을 가지지 않는 경우의 다른 실시예에 대해 설명한다. 제15도는 자동연주장치가 자동반주기능을 구비하지 않은 시퀀서타입인 경우에 있어서의 [시퀀서재생처리2]를 도시하는 플로우 차트도이다. 이 시퀀서재생처리2는 제8도의 시퀀서재생처리촤 마찬가지로, 4분음표당 96회의 타이머인터럽트로 실행된다. 이 시퀀서재생처리2가 제8도와 다른 점은, 판독된 데이터가 시퀀서이벤트(음색이벤트, 다른 연주이벤트) 와 엔드이벤트의 경우만 거기에 대응한 처리를 행하고, 이 이외의 스타일· 섹션이벤트, 코드이벤트, 리플레이스이벤트, 스타일 뮤트 이벤트의 경우에는 아무 것도 처리하지 않는 점이다. 이 시퀀서재생처리2는 다음과 같은 스텝으로 순서대로 실행된다.
스텝151: 주행상태 플래그(RUN)가 『1』인지 여부를 판정하고, 『1』(YES)의 경우는 다음 스텝152 이후로 진행하고, 『0』(NO)의 경우는 리턴하여, 다음 인터럽트타이밍까지 대기한다. 즉 제7도의 스텝74에 의해 주행상태 플래그(RUN)에 『1』이 셋트될 때가지 스텝152의 처리는 실행되지 않는다.
스텝152: 시퀀서용 타이밍레지스터(TIME1)의 격납치가 『0』인지 여부를 판정하고, 『0』(YES)의 경우는 제2(a)도의 노래 데이터 중에서 시퀀스데이터를 판독하는 타이밍이 된 것을 의미하므로 다음 스텝153으로 진행하고, 『0』이외(NO)의 경우는 스텝158로 진행한다.
스텝153: 상기 스텝152에서 시퀀스데이터의 판독타이밍이 되었다고 판정되었기 때문에, 여기에서는 제2(a)도의 노래데이터 중에서 다음의 데이터를 판독한다.
스텝154: 상기 스텝153에서 판독된 데이터가 델타타임데이터 인지 여부를 판정하고, 델타타임데이터(YES)의 경우는 스텝155로 진행하고, 그렇지 않은 경우는 스텝156으로 진행한다.
스텝155: 판독된 데이터가 델타타임 데이터라고 상기 스텝154에서 판정되었기 때문에, 여기에서는 그 델타타임 데이터를 시퀀서용 타이밍레지스터(TIME1)에 격납한다.
스텝156: 판독된 데이터가 델타타임 데이터가 아닌 것으로 상기 스텝154에서 판정되었기 때문에, 여기에서는 그 판독된 데이터가 엔드이벤트인지 여부를 판정하여, 엔드데이터(YES)의 경우는 스텝157로 진행하고, 엔드데이터 이외(NO)의 경우는 스텝159로 진행한다.
스텝157: 판독된 데이터가 엔드이벤트로 전 스텝156에서 판정되었기 때문에, 거기에 따라 발음의 시퀀서에 관한 음을 소음한다.
스텝158: 주행상태 플래그(RUN)를 『0』으로 리셋트하고, 스텝153으로 리턴한다.
스텝159: 판독된 데이터가 엔드이벤트 이외로 판정되었기 때문에, 요번에는 그것이 시퀀서이벤트(음색 이벤트 또는 다른 연주이벤트) 인지 여부를 판정하여, 시퀀서이벤트(YES)의 경우는 스텝15A로 진행하고, 시퀀서이벤트 이외(NO)의 경우(즉 스타일·섹션이벤트, 코드이벤트, 리플레이스이벤트, 스타일뮤트 이벤트의 경우)는 스텝153으로 리턴한다.
스텝15A: 판독된 데이터가 시퀀서이벤트로 전 스텝159에서 판정되었기 때문에, 그 이벤트를 음원등으로 출력하고, 스텝153으로 리턴한다.
스텝15B: 시퀀서용 타이밍레지스터(TIME1)의 격납치가 『0』인가, 즉 전스텝153에서 판독된 델타타임데이터가 『0』인가를 판정하고, 『0』(YES)의 경우는 같은 타이밍에 해당하므로, 스텝153으로 리턴하고, 그 델타타임에 대응하는 이벤트데이터를 판독하여 스텝156-15A의 처리를 행하고, 『0』이외(NO)의 경우는 스텝 15C로 진행한다.
스텝15C: 전 스텝152 또는 15C에서 시퀀서용 타이밍레지스터(TIME1)의 격납치가 『0』이 아닌 것으로 판정되었기 때문에, 그 시퀀서용 타이밍레지스터 (TIME1)의 격납치를 1만 감소처리하여 리턴하고, 다음의 인터럽트타이밍까지 대기한다.
이상과 같이 자동연주장치가 자동반주기능을 구비하고 있지 않은 경우라도 시퀀서재생처리2에 의해, RAM(12)내의 시퀀스데이터에 의거한 시퀀서연주가 행해지고, 자동연주장치가 자동반주기능을 구비하고 있는 경우에는 시퀀서재생처리와 스타일재생처리에 의해 시퀀서연주와 반주연주의 양쪽이 행해진다. 즉 노래데이터를 RAM(12)과 같은 구성으로 함으로써, 자동연주장치가 자동반주기능을 구비하고 있는가에 관계없이 시퀀서연주를 행할 수 있고, 또한 자동반주기능을 구비하고 있는 경우에는 그 배열등을 용이하게 행할 수 있는 효과가 있다.
또한 상술의 실시예에서는, 시퀀서측의 채널마다 뮤트/비뮤트를 설정하도록 했지만, 연주파트 마다 설정하도록 해도 된다. 예를 들면, 복수의 채널을 혼합하여 한 개의 파트로 하는 경우, 그 파트를 뮤트하도록 설정한 경우, 대응하는 복수의 채널 전부를 뮤트하도록 해도 된다.
또한 상술의 실시예에서는, 시퀀서의 연주정보의 도중에 뮤트에 관한 데이터(리플레이스이벤트)를 메워 넣고, 뮤트하는 채널을 곡의 진행에 따라 변경할 수 있도록 했지만, 한 곡을 통해 같은 뮤트 설정이 되도록 해도 된다. 즉 초기설정정보로써 뮤트에 관한 정보를 가지도록 해도 된다. 또한 시퀀서의 연주 데이터안에는 뮤트하는가 아닌가 만을 지정하는 정보를 기억시키고, 별도(초기설정정보와 자동연주장치 측에서 조작자가) 뮤트하는 채널을 설정하도록 해도 된다.
또한 연주되는 자동연주의 파트와 같은 시퀀서의 파트를 자동적으로 뮤트하도록 해도 된다.
스타일변환 테이블을 노래마다 가지게 하는 경우에 대해 설명했는데, 노래와는 독립하여 이와 같은 정보를 가지도록 해도 된다. 예를 들면, 자동연주장치본체의 RAM에 변환 테이블을 가지게 해도 된다.
스타일데이터는 자동연주장치측에 기억되는 경우에 대해 설명했는데, 일부의 스타일데이터(노래의 특유한 특수 스타일등)를 노래데이터측에 가지게 해도 된다. 이와 같이 하면, 자동연주장치측에 기억하는 스타일데이터는 기본적인 것만으로 좋게 되고, 메모리 절약이 된다.
또한 상술한 실시예에서 자동연주장치를 내장한 전자악기에 대해 설명했는데, 자동연주처리를 행하는 시퀀서모즐과 음원회로로 이루어지는 음원모즐이 각각 별도로 구성되어, 각 모즐간의 데이터의 원수를 주지의 MIDI규격으로 행하도록 구성된 것과 마찬가지로 적용 할 수 있는 것은 말할 것도 없다.
또한 상술한 실시예에서 본 발명을 자동연주로 적용한 경우에 대해 설명했는데, 여기게 한정되지 않고 자동리듬연주, 자동반주에도 적용해도 되는 것은 말할 것도 없다.
본 발명에 의하면 연주데이터를 편집하지 않아도 곡의 배열을 용이하게 변경할 수 있다고 하는 효과가 있다.

Claims (12)

  1. 적어도 하나의 멜로디파트 및 하나 이상의 반주파트를 포함하는 복수개의 동시 연주되는 연주파트에 대한 제1자동연주데이터와, 적어도 하나의 반주파트에 대한 제2자동연주데이터로서, 연주 이벤트정보를 포함하는 제1자동연주데이터와 제2자동연주데이터를 기억하는 기억수단과; 이벤트 발생 순서에 따라 상기 기억수단으로부터 상기 제1자동연주데이터를 판독하여 상기 판독한 제1자동연주데이터를 기초로 상기 연주파트의 연주를 실행하는 제1연주수단과; 이벤트의 발생순서에 따라 상기 기억수단으로부터 상기 제2자동연주데이터를 판독하되, 상기 제1자동연주데이터와 병렬로 동시에 판독하여, 상기 판독한 제2자동연주데이터를 기초로 상기 연주파트의 연주를 실행하는 제2연주수단과; 상기 제2연주수단이 상기 제2자동연주데이터에 기초하는 연주를 실행할 때, 상기 제1자동연주데이터의 판독을 계속하는 동안 상기 제1자동연주데이터의 반주파트의 적어도 하나의 연주를 뮤트하는 뮤트수단을 구비하는 것을 특징으로 하는 자동연주장치.
  2. 제1항에 있어서, 상기 뮤트수단에 의해 뮤트되는 연주파트를 지정하는 정보가 상기 제1자동연주데이터 안에 포함되어 있는 것을 특징으로 하는 자동연주장치.
  3. 제1항에 있어서, 상기 뮤트수단에 의해 뮤트되는 연주파트를 선택설정하는 파트 선택 조작자를 추가로 구비하는 것을 특징으로 하는 자동연주장치.
  4. 제1항에 있어서, 상기 제2연주수단에 의한 연주를 실행할지의 여부를 선택할 수 있도록 한 것을 특징으로 하는 자동연주장치.
  5. 제1항에 있어서, 상기 제2연주수단이 상기 제2자동연주 데이터에 의거하여 연주하는 경우에, 상기 뮤트수단은 상기 제1자동연주 데이터의 소정의 연주파트에 관한 연주를 뮤트할 것인가 여부를 선택 할 수 있도록 한 것을 특징으로 하는 자동연주장치.
  6. 제1항에 있어서, 상기 뮤트수단이 뮤트되는 연주파트를 변경하는 경우에, 상기 뮤트수단은 그 변경 전의 연주파트에 대응하는 상기 제2자동연주데이터의 연주파트를 뮤트하는 것을 특징으로 하는 자동연주장치.
  7. 제1항에 있어서, 상기 뮤트수단에 의해 뮤트되는 상기 제1자동연주데이터의 연주파트는, 상기 제2자동연주데이터의 연주파트에 대응하고 있는 것을 특징으로 하는 자동연주장치.
  8. 복수의 연주 스타일 각각에 대해서 자동반주 패턴데이터를 기억하는 스타일 데이터기억수단과; 상기 연주스타일 중 어느 것을 사용할 것인가를 지정하는 패턴지정정보를 포함하는 자동연주데이터를 기억하는 연주데이터 기억수단과: 상기 연주데이터 기억수단으로부터 상기 자동연주데이터를 판독하여, 판독된 상기 자동연주데이터를 기초로 연주를 시행하는 제1연주수단과: 상기 제1연주수단에 의해 판독된 상기 패턴지정정보를 다른 패턴지정정보로 변환하는 변환수단과: 상기 변환수단에 의해 변환된 상기 패턴지정정보에 따라 상기 스타일데이터 기억수단으로부터 상기 자동반주 패턴데이터를 판독하여, 이 판독된 자동반주패턴테이터를 기초하여 연주를 실행하는 제2연주수단을 구비하는 것을 특징으로 하는 자동연주장치.
  9. 제1연주파트와 제2연주파트에 관한 제1자동연주데이터와, 상기 제2연주파트에 관한 제2자동연주 데이터를 기억하는 기억장치로부터 데이터를 판독하여 자동연주를 실행하는 자동연주데이터의 처리방법에 있어서; 상기 제1자동연주 데이터만을 처리할 수 있는 제1자동연주장치에 의해 상기 자동연주가 실행될 때, 상기 기억장치로부터 제1자동연주데이터를 판독하고, 상기 판독된 제1자동연주데이터에 의거하여 상기 제1연주파트 및 제2연주파트를 연주하는 단계와; 상기 제1자동연주데이터 및 상기 제2자동연주데이터를 처리할 수 있는 제2자동연주장치에 의해 상기 자동연주가 실행될 때, 상기 기억장치로부터 제1자동연주데이터 및 제2자동연주데이터를 판독하고, 상기 판독된 제1자동연주데이터에 의거하여 상기 제1연주파트를 연주하며, 동시에 상기 판독된 제2자동연주데이터에 의거하여 제2연주파트를 연주하는 단계를 포함하는 것을 특징으로 하는 자동연주데이터의 처리방법.
  10. 제9항에 있어서, 상기 제1자동연주데이터는 곡의 개시에서 종료까지의 연주데이터를 기억한 노래데이터이고, 상기 제2자동연주데이터는 반복 연주되는 하나 이상의 소절에 대한 연주패턴데이터인 것을 특징으로 하는 자동연주데이터의 처리방법.
  11. 제9항에 있어서, 상기 기억장치는 복수개의 상기 제2자동연주데이터를 기억하고, 상기 제1자동연주데이터는 상기 제2자동연주데이터 중 어느 것을 지정하는 지정데이터를 포함하는 것을 특징으로 하는 자동연주데이터의 처리방법.
  12. 제11항에 있어서, 상기 지정데이터에 의해 지정되는 제2자동연주데이터의 세트는 변경 가능한 것을 특징으로 하는 자동연주데이터의 처리방법.
KR1019950072357A 1994-12-26 1995-12-26 자동연주장치 및 자동연주 데이터의 처리방법 KR100297674B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
JP33665294A JP3303576B2 (ja) 1994-12-26 1994-12-26 自動演奏装置
JP94-336652 1994-12-26

Publications (2)

Publication Number Publication Date
KR960025308A KR960025308A (ko) 1996-07-20
KR100297674B1 true KR100297674B1 (ko) 2001-10-24

Family

ID=18301388

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019950072357A KR100297674B1 (ko) 1994-12-26 1995-12-26 자동연주장치 및 자동연주 데이터의 처리방법

Country Status (7)

Country Link
US (1) US5831195A (ko)
EP (1) EP0720142B1 (ko)
JP (1) JP3303576B2 (ko)
KR (1) KR100297674B1 (ko)
CN (1) CN1133150C (ko)
DE (1) DE69517294T2 (ko)
HK (1) HK1012843A1 (ko)

Families Citing this family (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6216052B1 (en) 1996-10-23 2001-04-10 Advanced Micro Devices, Inc. Noise elimination in a USB codec
US5818948A (en) * 1996-10-23 1998-10-06 Advanced Micro Devices, Inc. Architecture for a universal serial bus-based PC speaker controller
US5914877A (en) * 1996-10-23 1999-06-22 Advanced Micro Devices, Inc. USB based microphone system
US6122749A (en) * 1996-10-23 2000-09-19 Advanced Micro Devices, Inc. Audio peripheral device having controller for power management
JP3640235B2 (ja) * 1998-05-28 2005-04-20 株式会社河合楽器製作所 自動伴奏装置及び自動伴奏方法
JP2000066668A (ja) * 1998-08-21 2000-03-03 Yamaha Corp 演奏装置
US6798427B1 (en) * 1999-01-28 2004-09-28 Yamaha Corporation Apparatus for and method of inputting a style of rendition
EP1028409B1 (en) * 1999-01-29 2005-03-16 Yamaha Corporation Apparatus for and method of inputting music-performance control data
JP2000315087A (ja) * 1999-04-30 2000-11-14 Kawai Musical Instr Mfg Co Ltd 自動伴奏装置
JP3785934B2 (ja) * 2001-03-05 2006-06-14 ヤマハ株式会社 自動伴奏装置、方法、プログラム及び媒体
JP3915695B2 (ja) 2002-12-26 2007-05-16 ヤマハ株式会社 自動演奏装置及びプログラム
JP3906800B2 (ja) 2002-12-27 2007-04-18 ヤマハ株式会社 自動演奏装置及びプログラム
US7536257B2 (en) * 2004-07-07 2009-05-19 Yamaha Corporation Performance apparatus and performance apparatus control program
JP3985825B2 (ja) * 2005-04-06 2007-10-03 ヤマハ株式会社 演奏装置及び演奏プログラム
JP4046129B2 (ja) * 2005-07-29 2008-02-13 ヤマハ株式会社 演奏装置
JP3985830B2 (ja) * 2005-07-29 2007-10-03 ヤマハ株式会社 演奏装置
JP4254793B2 (ja) * 2006-03-06 2009-04-15 ヤマハ株式会社 演奏装置
US8723011B2 (en) * 2011-04-06 2014-05-13 Casio Computer Co., Ltd. Musical sound generation instrument and computer readable medium
JP6583320B2 (ja) * 2017-03-17 2019-10-02 ヤマハ株式会社 自動伴奏装置、自動伴奏プログラムおよび伴奏データ生成方法
JP7043767B2 (ja) * 2017-09-26 2022-03-30 カシオ計算機株式会社 電子楽器、電子楽器の制御方法及びそのプログラム

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2519623Y2 (ja) * 1988-03-08 1996-12-11 ヤマハ株式会社 自動演奏装置
US4930390A (en) * 1989-01-19 1990-06-05 Yamaha Corporation Automatic musical performance apparatus having separate level data storage
JPH0437440A (ja) * 1990-06-01 1992-02-07 Sintokogio Ltd 加圧圧縮装置
JP2596206B2 (ja) * 1990-10-08 1997-04-02 ヤマハ株式会社 演奏データ記録再生装置および演奏データ記録再生方法
JP2677146B2 (ja) * 1992-12-17 1997-11-17 ヤマハ株式会社 自動演奏装置
JPH06337674A (ja) * 1993-05-31 1994-12-06 Kawai Musical Instr Mfg Co Ltd 電子楽器の自動演奏装置

Also Published As

Publication number Publication date
JP3303576B2 (ja) 2002-07-22
CN1131308A (zh) 1996-09-18
CN1133150C (zh) 2003-12-31
HK1012843A1 (en) 1999-08-06
EP0720142A1 (en) 1996-07-03
DE69517294D1 (de) 2000-07-06
KR960025308A (ko) 1996-07-20
US5831195A (en) 1998-11-03
JPH08179763A (ja) 1996-07-12
DE69517294T2 (de) 2001-01-25
EP0720142B1 (en) 2000-05-31

Similar Documents

Publication Publication Date Title
KR100297674B1 (ko) 자동연주장치 및 자동연주 데이터의 처리방법
JPH10105169A (ja) ハーモニーデータ生成装置およびカラオケ装置
JP3266149B2 (ja) 演奏ガイド装置
US5973254A (en) Automatic performance device and method achieving improved output form of automatically-performed note data
JP3915807B2 (ja) 奏法自動判定装置及びプログラム
JP3533972B2 (ja) 電子楽器の設定制御装置
JP3239411B2 (ja) 自動演奏機能付電子楽器
JPS5938595B2 (ja) デンシガツキノジドウバンソウソウチ
JP3671788B2 (ja) 音色設定装置および音色設定方法並びに音色設定プログラムを記録したコンピュータで読み取り可能な記録媒体
JP3397071B2 (ja) 自動演奏装置
JP3632536B2 (ja) パート選択装置
JP3895139B2 (ja) 自動演奏装置
JP2660462B2 (ja) 自動演奏装置
JP3669335B2 (ja) 自動演奏装置
JP2570411B2 (ja) 演奏装置
JPH10247059A (ja) 演奏ガイド装置、演奏ガイド用演奏データ作成装置および記憶媒体
JPH06348258A (ja) 電子楽器の自動演奏装置
JP3017902B2 (ja) 電子楽器の自動伴奏装置
JP3033393B2 (ja) 自動伴奏装置
JP3120487B2 (ja) 自動伴奏機能付電子楽器
JP3755468B2 (ja) 楽曲データの表情付け装置及びプログラム
JP3499672B2 (ja) 自動演奏装置
JP3791784B2 (ja) 演奏装置
JPH10133658A (ja) 伴奏パターンデータ作成装置
JPH0728469A (ja) 電子楽器のコード指定装置

Legal Events

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

Payment date: 20100512

Year of fee payment: 10

LAPS Lapse due to unpaid annual fee