KR100368046B1 - 오디오 신호의 음색 및/또는 피치를 변화시키기 위한 방법 및 장치 - Google Patents

오디오 신호의 음색 및/또는 피치를 변화시키기 위한 방법 및 장치 Download PDF

Info

Publication number
KR100368046B1
KR100368046B1 KR1019960705167A KR19960705167A KR100368046B1 KR 100368046 B1 KR100368046 B1 KR 100368046B1 KR 1019960705167 A KR1019960705167 A KR 1019960705167A KR 19960705167 A KR19960705167 A KR 19960705167A KR 100368046 B1 KR100368046 B1 KR 100368046B1
Authority
KR
South Korea
Prior art keywords
signal
input
shifted output
pitch
fundamental frequency
Prior art date
Application number
KR1019960705167A
Other languages
English (en)
Inventor
브라이언 찰스 깁슨
크리스토퍼 마이클 쥬비앙
브라이언 존 로뎅
Original Assignee
아이브이엘 테크놀로지즈 엘티디.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 아이브이엘 테크놀로지즈 엘티디. filed Critical 아이브이엘 테크놀로지즈 엘티디.
Application granted granted Critical
Publication of KR100368046B1 publication Critical patent/KR100368046B1/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
    • G10H3/00Instruments in which the tones are generated by electromechanical means
    • G10H3/12Instruments in which the tones are generated by electromechanical means using mechanical resonant generators, e.g. strings or percussive instruments, the tones of which are picked up by electromechanical transducers, the electrical signals being further manipulated or amplified and subsequently converted to sound by a loudspeaker or equivalent instrument
    • G10H3/125Extracting or recognising the pitch or fundamental frequency of the picked up signal
    • 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/18Selecting circuits
    • G10H1/20Selecting circuits for transposition
    • 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
    • G10H5/00Instruments in which the tones are generated by means of electronic generators
    • G10H5/005Voice controlled 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
    • G10H7/00Instruments in which the tones are synthesised from a data store, e.g. computer organs
    • G10H7/08Instruments in which the tones are synthesised from a data store, e.g. computer organs by calculating functions or polynomial approximations to evaluate amplitudes at successive sample points of a tone waveform
    • 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/031Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal
    • G10H2210/066Musical analysis, i.e. isolation, extraction or identification of musical elements or musical parameters from a raw acoustic signal or from an encoded audio signal for pitch analysis as part of wider processing for musical purposes, e.g. transcription, musical performance evaluation; Pitch recognition, e.g. in polyphonic sounds; Estimation or use of missing fundamental
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2240/00Data organisation or data communication aspects, specifically adapted for electrophonic musical tools or instruments
    • G10H2240/011Files or data streams containing coded musical information, e.g. for transmission
    • G10H2240/046File format, i.e. specific or non-standard musical file format used in or adapted for electrophonic musical instruments, e.g. in wavetables
    • G10H2240/056MIDI or other note-oriented file format
    • GPHYSICS
    • G10MUSICAL INSTRUMENTS; ACOUSTICS
    • G10HELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
    • G10H2250/00Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
    • G10H2250/131Mathematical functions for musical analysis, processing, synthesis or composition
    • G10H2250/261Window, i.e. apodization function or tapering function amounting to the selection and appropriate weighting of a group of samples in a digital signal within some chosen time interval, outside of which it is zero valued
    • G10H2250/285Hann or Hanning window
    • 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/631Waveform resampling, i.e. sample rate conversion or sample depth conversion

Landscapes

  • Physics & Mathematics (AREA)
  • Engineering & Computer Science (AREA)
  • Acoustics & Sound (AREA)
  • Multimedia (AREA)
  • Algebra (AREA)
  • General Physics & Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Electrophonic Musical Instruments (AREA)
  • Stereophonic System (AREA)

Abstract

입력신호의 음색 및 / 또는 피치를 시프트하는 방법이 개시된다. 입력신호는 제 1 비율로 샘플링되고 메모리 버퍼에 저장된다. 디지털 신호 처리기는 저장된 입력신호를 상기 입력신호가 최초로 샘플링된 제 1 비율과 다른 제 2 비율로 리샘플링하고 상기 리샘플링된 입력신호를 제 2 메모리 버퍼에 저장한다. 피치 시프터는 출력신호를 생성하기 위해 상기 리샘플링된 입력신호를 윈도우 함수로 주기적으로 스케일링하여 입력신호의 피치를 시프트한다. 리샘플링된 입력신호가 윈도우 함수에 의해 복사되는 비율은 출력신호의 피치를 결정한다.

Description

오디오 신호의 음색 및/또는 피치를 변화시키기 위한 방법 및 장치
주기적인 음들(notes)에는 그 음들에 특성이나 음색을 제공하는 여러 고 고주파뿐만 아니라 그 음들의 특정 피치를 결정하는 기본주파수가 있다. 예를 들어, 같은 음을 연주하는 기타와 바이올린이 서로 다르게 들리도록 만드는 것은 고조파와 기본주파수의 특정한 결합에 있다. 기본주파수 성분의 진폭과 악기나 음성에 의해 생성되는 고조파의 진폭의 관계는 스펙트럼 포락선(spectral envelope)으로 불린다. 기타, 플루우트 또는 색소폰과 같은 악기에서, 이 악기에 의해 연주되는 음의 스펙트럼 포락선은, 그 음의 피치가 시프트-업되거나 시프트-다운됨에 따라, 다소 비례적으로 팽창하거나 수축한다.
전자적 피치 시프터(electronic pitch shifter)는 입력음을 받아 다른 피치를 갖는 출력음을 생성하는 음악 의음발음기이다. 이러한 의음발음기는 한 사람의 연주자가 여러 사람처럼 소리낼 수 있도록 하는데 종종 사용된다. 악기에 대해서는, 그 악기로부터의 사운드를 샘플링하여 녹음하며, 샘플링되고 녹음된 사운드를그 샘플들이 녹음되었던 비율보다 더 빠르거나 느린 비율로 재생함으로써 음의 피치를 변화할 수 있다. 이러한 기술에 의해 생성된 출력 음들은 매우 자연스럽게 들리는데, 이는 피치 시프트된 사운드들의 스펙트럼 포락선이 악기에 의해 만들어진 스펙트럼 포락선이 피치에 따라 변화하는 방법을 흉내내기 때문이다.
악기에 의해 만들어지는 음들과는 대조적으로, 성음(vocal notes)의 포락선은 성음의 피치가 변화함에 따라 이례적으로 변화하지 않는다. 그러나, 이러한 스펙트럼 포람선을 형성하는 개별 주파수들의 상대적인 진폭들은 변화할수 있다. 노래를 부르거나 말을 할 때 성음을 샘플링하여 그 샘플들을 다른 속도로 재생함으로써 성음의 피치를 시프트하는 것은 자연스럽게 들리지 않는데, 이는 그 과정에서 피치 시프트량에 비례하여 포락선의 형태가 변화하기 때문이다. 실제적으로 성음 피치를 시프트하기 위해서는 기본주파수를 변화시키지만 스페트럼 포락선의 전체 형태는 단지 약간 변화시키는 방법이 요구된다.
실시간으로 하모니를 생성하기 위해 성음의 피치를 시프트하는 장치가 본 발명자들의 선행 미국 특허 제 5,231,671 호(이하 '671 특허라 함)에 개시되어 있다. '671 특허에 개시된 피치 시프트 방법은 Lent. K. 의 논문 "디지털 방식으로 샘플링된 사운드를 피치 시프트하기 위한 효과적인 방법 "(컴퓨터 음악저널, 13권, No.4, 1989; 이하 "Lent 방법"이라 함)으로부터 적용되었다. Lent방법은 디지털 방식으로 샘플링된 사운드의 피치가 스펙트럼 포락선을 변경시키기 않고 시프트되도록 한다. 간단히 설명하면, Lent 방법은 저장된 입력 신호를 그 일력음의 기본주파수보다 더 빠르거나 느린 비율로 복사함으로써 성음의 피치를 시프트하는데 사용될수 있다. 성음 피치를 시프트하는 이러한 방법은 잘 동작하는 반면, 피치 시프트된 음은 완벽히 자연스럽게 들리지는 않는다. 이는 스펙트럼 포락선이 성음 피치가 변화됨에 따라 고정된 상태로 남아 있기 때문이다.
상기한 바와 같이, 음 피치를 전자적으로 시프트하는 방법에는 두 가지가 있다. 첫 번째 방법은, 리샘플링(resampling)으로 언급되는데, 스펙트럼 포락선을 피치 시프트량에 비례하여 변화시킨다. 두 번째의 Lent 방법은 피치 시프트량에 관계없이 스펙트럼 포락선을 다소간 유지시킨다. 따라서, 음 피치에 좌우되지 않고 음의 스펙트럼 포락선을 변경시키는 방법이 필요하다. 이러한 방법을 사용함으로써, 보다 사실적인 하모니들이 생성될수 있다. 더욱이, 한 악기를 다른 악기와 같이 소리나도록 만들거나 또는 한 사람의 음성을 다른 사람의 음성과 같이 소리나도록 만드는 것도 가능하다.
발명의 요약
음성들 및 악기에 의해 생성되는 음들 모두의 음색을 시프트하기 위해, 본 발명은 신호의 샘플링율의 변경에 의한 피이 시프트와 Lent 방법에 다른 피치 시프트의 새로운 조합을 사용한다. 바람직한 실시예에서, 입력신호는 제 1 비율로 샘플링되고, 디지털로 표현되는 그 결과는 메모리 비퍼에 저장된다. 다음에 저장된 입력신호는 사용자에 의해 결정되는 제 1비율로 리샘플링된다. 이어서 리샘플링된 입력신호는 제 2 메모리 버퍼에 저장된다. 다음에 리샘플링된 입력신호의 피치는 이 리샘플링된 입력신호를 윈도우 함수를 이용하여 원하는 출력음의 기본주파수와 동일한 비율로 스케일링함으로써 시프트된다. 음의 피치가 아니라 음의 음색만을시프트하고자 한다면, 리샘플링된 입력신호가 윈도우 함수로 스케일링되는 비율은 입력음의 기본주파수와 동일하다. 또한 출력음의 음색뿐만 아니라 피치도 변화하고자 한다면, 리샘플링된 입력신호가 윈도우 함수로 스케일링되는 비율은 입력음의 기본주파수와 다르다.
본 발명의 다른 측면에 따르면, 미디(MIDI) 채널상으로 수신된 피치와 정합하도록 입력 오디오 신호의 음색이나 피치를 변경할 수 있는 효과 발생기가 개시된다. 효과 발생기는 이 효과 발생기에 연속된 멜로디나 하모니음을 제공하는 미디 가라오케 시스템(MIDI karaoke system)과 함께 사용되는 것이 바람직하다. 효과 발생기는 미디 채널상의 음들을 읽어 이 음들에 자동적으로 음색 시프트량을 할당한다. 이러한 할당은 하모니음의 피치를 하나 이상의 임계치들이나 또는 가라오케 시스템의 사용자로부터 수신된 입력 오디오 신호의 피치와 비교함으로써 이루어 질 수 있다. 각 음에 할당된 음색의 양은 하모니음이 입력 오디오 신호와 다르게 들리도록 하거나 또는 입력 오디오 신호가 피치에 있어 올라가거나 내려가는 경우 어떻게 변화하는지를 흉내낼 수 있다.
본 발명은 일반적으로 전자 오디오 의음발음기(electronic audio effects)에 관한 것으로, 보다 상세하게는 오디오 신호의 음색(timbre)이나 피치(pitch) 또는 음색/피치를 시프트하는 음악 의음발음기(musical effects)에 관한 것이다.
본 발명의 상기한 측면들과 많은 부수적인 장점들은 침부된 도면과 함께 이하 상세히 기술되는 내용을 참조하므로써 보다 쉽게 이해될 것이다.
제 1A-1D 도는 스펙트럼 포락선이 종래의 음색/피치 시프트 기술과 본 발명의 음색/피치 시프트 기술의 결과에 따라 각각 어떻게 변화하는가를 보여주는 음성신호들의 대표적인 스펙트럼 그래프이고,
제 2A 도는 입력음의 음색 및/또는 피치를 시프트하기 위해 본 발명에 의해 수행되는 단계들의 플로우챠트이고,
제 2B 도는 입력 성음으로부터 음색 시프트된 하모니음들을 생성하기 위해 본 발명에 의해 수행되는 단계들의 플로우챠트이고,
제 3 도는 본 발명의 방법에 따라 음성 하모니를 생성하기 위한 음악 효과 발생기의 블록 다이어그램이고,
제 4A 및 4B 도는 입력 음성신호가 본 발명의 방법의 단계에 따라 어떻게 리샘플링되는지를 보여주는 그래프 및 대응하는 도표식 메모리 차트이고,
제 5 도는 본 발명의 방법에 따라 프로그램된 디지털 신호 처리기에 의해 수행되는 기능들을 보여주는 블록 다이어그램이고,
제 6 도는 디지털 신호 처리기내 윈도우 오이도 발생기 유니트에 의해 수행되는 기능들을 보여주는 블록 다이어그램이고,
제 7A 및 7B 도는 디지털 방식으로 샘플링된 음성신호의 피치를 본 발명에 따라 시프트하는 방법을 도식적으로 나타낸 것이고,
제 8A 및 8B 도는 하닝 윈도우가 본 발명의 방법으로 어떻게 생성되고 저장되는지를 보여주며,
제 9A 및 9B 도는 음에 적용되는 음색 시프트량을 동적으로 선택하는 음악 효과의 블록 다이어그램들이다.
본 발명은 공지의 시스템에 의해 만들어진 음색 시프트보다 더 사실적으로소리나게 하는 방법으로 음색을 시프트하기 위한 시스템을 제공한다. 가장 간단한 형태로, 본 발명의 방법은 음 피치가 아니고 음색을 시프트하는데 사용될 수 있다. 예를 들어, 이 방법은 남자가 노래부르거나 말하는 음성신호에 대해 동일한 음이 여성이 노래부르거나 말하는 것처럼 들리도록 하는데 사용될 수 있다. 음색을 시프트하는 외에 본 발명의 방법은 음의 피치와 음색을 변화시키는데 사용될 수 있다.예를 들어, 본 발명은 여성이 노래부른 음이 남자가 노래 부르는 또 다른 음같이 들리도록 하는데 사용될 수 있다. 마지막으로, 본 발명의 바람직한 실시예는 입력음으로부터 음색 시프트된 하모니음들을 생성하는데 사용될 수 있다. 이하의 기술은 입력 음성으로부터 하모니음들을 만드는 것에 주로 집중되어 있지만, 상기 입력음은 음성일 필요없이 어떠한 소오스로부터도 만들어질 수 있으며 출력음은 입력 피치와 다르거나 조화할 필요가 없다는 것은 알 수 있다.
도 1A-1D는 종래기술 및 본 발명의 방법에 따라서 성음 피치가 시프트될때, 성음의 스펙트럼 포락선이 어떻게 변하는가를 비교하고 있다. 도 1A는 일반적인 성음을 나타내는 주파수 스펙트럼(30a)을 보여준다. 스펙트럼의 전체적인 형상은 하나 이상의 구성소음(formant) 또는 피크(32)에 의해 정의된다. 성음의 특색이나 음색은 그 음의 기본주파수의 상대적인 진폭 및 위치와 (화살표 34a로 표시된) 고조파에 의해 정의된다.
실질적으로 성음의 피치를 시프트하기 위해서는, 최초의 성음의 스펙트럼에 근접하는 스펙트럼의 구성소음을 유지하면서 음의 기본주파수를 시프트하는 것이 필요하다. 도 1B는 도 1A에 도시된 스펙트럼과 관련된 5도 아래 음정인 피치 시프트된 성음의 스펙트럼(30b)을 나타낸다. 스펙트럼(30b)에 관련된 성음은 샘플링된 최초의 성음의 재생률을 감소함으로써 생성되었다. 개개의 고조파들(34b)뿐 아니라 구성소음(32b)에 의해 정의된 전체 스펙트럼 포락선은 압축되어 저주파수로 시프트된다. 구성소음을 시그트한 결과로 피치 시프트된 성음은 자연스럽지 않게 들리게 된다.
도 1C는 도 1A에 도시된 스펙트럼과 관련된 5도 아래 음정으로,'671 특허에 설명된 방법에 따라 생성된 피치 시프트된 성음의 스펙트럼(30c)을 나타낸다. 스펙트럼(30c)에 관련된 피치 시프트된 성음은 입력 성음의 일부분을 최초의 입력 성음의 기본주파수보다 늦은 비율로 반복함으로써 생성되었다. 스펙트럼(30c)에서, '671 특허에 기술된 바와 같이 고조파(34c)의 주파수만이 변화한다. 스펙트럼의 전체 형상은 도 1A에 도시된 스펙트럼과 동일하게 남게 된다. 스펙트럼 (30c)과 관련된 피치 시프트된 성음은 도 1B에 도시된 스펙트럼(30b)과 관련된 성음에 의해 생성된 피치 시프트된 성음보다 더 자연스럽게 들린다. 그러나, 피치 시프트된 성음은 완벽하게 자연스럽게 들리지는 않는다. '671 특허에 기술된 방법에 의한 피치 시프트된 성음은 그것의 생성원인 입력 음성신호와 매우 유사한 음색을 갖는 경향이 있다. 따라서, 모든 피치 시프트된 성음들은 최초 성음의 변형같이 들린다.
사실적으로 소리를 내는 방법으로 음색을 바꾸기 위해, 본 발명은 성음의 재생율이 변화되는 피치 시프트 리샘플링 방법과 '671 특허에 기술된 방법의 새로운 조합을 이용한다. 그 결과, 보다 깊고 보다 남성답고 또는 보다 높고 보다 여성다운 음색 시프트된 성음이 만들어질 수 있다.
도 1D는 도 1A에 도시된 스펙트럼과 관련된 입력 성음의 5도 아래 음정으로 본 발명에 따라 생성된 주파수를 갖는 피치 시프트된 성음의 스펙트럼(30d)을 나타낸다. 보다 상세하게 기술되는 바와 같이, 스펙트럼 (30d)에 대응하는 피치 시프트된 성음은 최초의 샘플링율보다 약간 늦은 비율로 기 저장된 입력성음을 리샘플링하고 리샘플링된 데이터를 메모리 버퍼에 저장함으로써 얻어진다. 다음에 리샘플링된 데이터의 일부는 입력성음의 피치의 5도 아래 음정의 기본주파수와 동일한 비율로 복제된다. 스펙트럼(30d)은 약간 압축되지만 최초 스펙트럼(30a)과 비슷하다. 그 결과, 피치 시프트된 성음은 최초 성음의 복제본 과는 달리 자연스럽게 들린다.
입력신호로부터 음색, 피치 또는 음색/피치가 시프트된 출력신호를 생성하기 위한 본 발명의 주요 단계들은 도 2A에 도시된 플로우차트에서 설명된다. 단계 50에서 시작하여 입력신호는 아날로그-디지털 컨버터에 의해 제 1비율로 샘플링된다. 입력신호는 플루우트나 기타 등과 같은 악기로부터 만들어질 수도 있고, 사용자가 말하거나 노래하는 성음일 수 있으며, 또는 신서사이저와 같은 디지털 소오스에 의해 만들어질 수도 있다. 입력신호를 샘플링한 후, 입력신호에 대응하여 디지털 방식으로 표현된 것은 단계 52에서 디지털 메모리에 저장된다. 다음에 저장된 입력신호는 입력신호가 최초로 샘플링되었던 제 1비율과는 다른 제 2 비율로 리샘플링된다. 리샘플링율은 최초 샘플링율 보다 몇 퍼센트 크도록 또는 작도록 고정될 수 있다. 선택적으로, 리샘플링율은 사용자에 의해 선택될 수 있다.
리샘플링된 데이터는 단계 56에서 디지털 메모리에 저장된다. 마지막으로, 단계 58에서 원하는 출력신호의 기본주파수와 동일한 비율로 리샘플링된 데이터의한 부분을 복제함으로써 음색 시프트된 출력신호가 만들어진다. 예를 들어, 입력신호의 음색만을 변화시키고자 한다면, 리샘플링된 데이터의 상기 한 부분이 복제되는 비율은 입력신호의 기본주파수와 동일하다. 선택적으로, 입력신호의 음색 및 피치를 변화시키고자 할 수도 있는데, 이 경우에 리샘플링된 데이터의 상기 한 부분이 복제되는 비율은 입력신호의 기본주파수와 동일하지 않다. 마지막으로, 본 발명의 방법이 하모니 효과 발생기(harmony effect generator)에 사용되는 경우에는 리샘플링된 데이터의 상기 한 부분이 복제되는 비율은 입력신호의 기본주파수와 하모니적으로 관련된 기본주파수로 설정된다.
본 발명의 이 실시예에서 음색 시프트 기술은 사용자에 의한 입력성음으로부터 하모니음을 생성하는데 사용된다. 따라서, 이하 기술된 내용이 음색 시프트된 음성 하모니음을 만드는 것에 관련되겠지만, 본 발명의 방법은 입력신호의 피치와 하모니적으로 관련되지 않는 방법으로 입력신호의 음색만을 변화시키거나 또는 입력신호의 음색 및 피치를 변화시키는데에도 사용된다는 것을 잘 알수 있을 것이다.
도 2B는 음색 시프트된 음성하모니음을 만들기 위해 본 발명에서 수행되는 주요 단계들의 플로우챠트이다. 단계 60에서 시작하여, 아날로그 입력 성음은 제 1비율로 샘플링되어 디지털화된다. 단계 62에서, 디지털 샘플링된 입력 성음은 제 1 메모리 버퍼에 저장된다. 단계 64에서, 저장된 샘플은 입력 성음의 피치를 결정하기 위해 분석된다. 피치가 결정되면, 입력 성음으로 만들어질 하모니음이 단계 66에서 선택된다. 소정의 입력 성음에 대해 만들어지는 특정 하모니음은 개별적으로 사용자에 의해 선택되어 사전 프로그램되거나 또는 신서사이저, 시켄서와 같은 외부 소오스 또는 컴퓨터 디스크, 레이저 디스크와 같은 외부 저장장치로부터 수신될 수 있다.
하모니음이 선택된 후, 사용자에 의해 선택되었던 샘플링율의 퍼센트 증가나 감소가 단계 68에서 결정된다. 샘플링율은 하모니음에 보다 여성적인 질감을 주도록 증가되거나 또는 보다 남성적인 소리를 갖는 하모니음을 만들도록 감소될 수 있다.
단계 70에서는, 단계 62에서 저장되었던 디지털화된 입력 성음이 사용자에 의해 선택된 새로운 비율로 리샘플링되어 제 2 메모리 버퍼에 저장된다. 예를 들어 , 사용자가 샘플링율이 감소하도록 선택하였다면, 제 2 메모리 버퍼에는 데이터 샘플이 보다 적어져서 디지털화된 입력 성음을 저장하는데 필요한 메모리량이 감소할 것이다. 유사하게, 사용자가 샘플링율이 감소하도록 선택하였다면, 제 1 버퍼의 데이터는 데이터가 최초에 샘플링되었던 비율보다 더 높은 비율로 리샘플링됨으로써, 보다 많은 샘플들을 필요로 하며 디지털화된 입력 성음을 제 2 버퍼에 저장하는데 필요한 메모리량을 증가시킨다. 데이터가 보다 많은 메모리 공간을 차지함에 따라, 샘플들이 메모리로부터 판독되는 비율이 동일하게 유지된다고 가정하면, 음의 피치는 더 낮아지게 된다.
리샘플링된 데이터는 단계 72에서 제 2 메모리 버퍼에 저장된다. 마지막 으로, 단계 74에서 리샘플링된 입력 성음의 부분들을 단계 66에서 선택된 하모니음의 기본 주파수와 동일한 비율로 복제함으로써 하모니음이 생성된다.
도 3을 참조하면, 본 발명의 방법에 따라 음색 시프트된 하모니음을 만드는음악 효과 발생기(100)는 사용자가 부르는 입력 성음(105)을 수신한다. 일반적으로 효과 발생긱는 디지털 신호 처리기(DSP; 180) 및 랜덤 액세스 메모리 (PAM)와 인터페이스된 마이크로프로세서나 또는 CPU(138)를 가지며, 이하 상세히 기술되는 바와 같이 입력 성음과 결합되어 다중-성음 출력을 만드는 다수의 하모니음들(105a, 105b, 105c, 105d)을 만든다.
마이크로프로세서(138)는 자체의 리드 온리 메모리(ROM; 140)와 랜덤 액세스 메모리 (RAM;144)를 포함한다. 일련의 입력 제어 장치들 (148)은 마이크로프로세서와 연결되어 사용자로 하여금 음악 효과 발생기의 동작 파라미터를 변화 시킬 수 있게한다. 이러한 파라미터들은 소정의 입력음에 대해 어떤 하모니음이 생성될 것인가의 선택 및 좌우 스테레오 채널 사이에 하모니음의 분배를 포함한다.
일련의 디스플레이들(150)은 마이크로프로세서에 의해 동작된다. 디스플레이들은 효과 발생기가 어떻게 동작하고 사용자에 의해 어떤 동작이 선택되었는가를 시각적으로 보여준다. 하나 이상의 미디(MIDI) 포트들(154)은 마이크로 프로세서에 연결되어 효과 발생기가 다른 미디-호환 장치나 의음발음기 (effects)로부터 미디 데이터를 수신할 수 있도록 한다. 미디 포트에 대한 상세한 내용은 해당분야의 통상의 지식을 가진 자에게는 잘 알려져 있는 바, 더 이상 상세한 내용은 설명할 필요가 없다.
마지막으로, 효과 발생기는 한 쌍의 "성별 시프트" 제어장치들(gender shift controls: 156)을 포함한다. 성별 시프트 제어장치들은 사용자로 하여금 만들어질 각 하모니음에 적용될 리샘플링 피치 시프트량을 선택할 수 있도록 한다. 성별 시프트 제어장치들의 동작은 후에 보다 상세히 기술될 것이다.
디지털 신호 처리기(180)는 다양한 기능을 수행하는 전문화된 컴퓨터 칩이다. 디지털 신호 처리기를 동작시키는 프로그램 코드는 마이크로프로세서에 연결된 ROM(140)의 부분인 ROM(141)에 상주한다. 효과 발생기가 동작을 개시할때. 마이크로프로세서(138)는 본 발명의 방법에 따라 하모니음을 생성하기 위해 디지털 신호 처리기에 적절한 컴퓨터 프로그램을 로드시킨다.
효과 발생기(100)는 사용자의 입력 성음을 수신받아 이를 대응하는 아날로그 전기적 음성 신호로 변환하는 마이크로폰(110)을 포함한다. 입력 음성신호는 "드라이" 오디오 신호(dry audio signal)로도 불린다. 입력 음성신호는 고주파와 외부 잡음을 제거하는 저역 통과 필터(114)에 공급된다. 필터링된 입력 음성신호는 아날로그-디지털(A/D) 변환기(118)로 전송되며, 여기서 주기적으로 샘플링되어 디지털 형태로 변환된다. A/D 변환기는 새로운 샘플이 준비되어 있을때마다, DSP(180)에 인터럽트를 걸어 DSP로 하여금 샘플을 판독하여 효과 발생기의 랜덤 액세스 메모리의 일부인 제 l 메모리 비퍼(122)에 저장하도록 한다.
일단 입력 음성신호가 샘플링되고 제 1 메모리 버퍼에 저장되면, 디지털 신호 처리기(180)는 피치 인식 루틴(l88)을 실행하므로써 메모리 버퍼(122)에 저장되어 있는 데이터를 분석하여 그것의 피치를 측정한다. 어떤 음의 피치를 측정하는데 사용되는 방법은 여기에 참고되는 본 발명자의 미국 특허공보 제 4,688,464 호에 상세히 기술되어 있다. 본 명세서의 목적상 '피치(pitch)" 와 "기본주파수(fundamental frequency)"라는 용어는 상호 바뀌어 사용될 수 있다. 입력 성음의 피치로부터 상기 음의 주기가 계산된다.
일반적으로 음의 주기는 단순히 초 (second)로 표현된 기본주파수의 역수이다. 그러나 본 발명의 이 실시예에서는 주기는 입력 음성신호의 완전한 한 사이클을 저장하는데 팔요한 메모리 기억장소의 개수에 의하여 계산되고 저장된다. 예를 들어, 음 A의 완전한 한 사이클 440 Hz는 48 KHz(l/440 × 48,000)로 샘플링된다면, 109개의 메모리 기억장소들을 차지한다. 따라서 , A의 주기 440Hz는 109로써 저장된다. 음의 피치와 주기를 측정하는 외에, 디지털 신호 처리기는 입력 음성신호의 새로운 사이클이 시작하는 메로리내 기억장소에 대한 포인터인 주기 표시자(period marker)를 계산한다. 최초에 주기 표시자는 입력 음성 신호가 저장된 메모기 버퍼의 시작을 지시하도록 설정된다. 이어지는 주기 표시 자들은 이전의 주기 표시자에 입력 음성신호의 단 하나의 사이클(즉, 한 주기) 내 데이터 샘플들의 개수를 더함으로써 계산된다. 주기 표시자는 작은 지연을 뺀 다음의 사용가능한 메모리 기억장소를 지시하는 기록 포인터가 새로운 주기표시자가 지시할 곳 너머에 있을 때 갱신된다. 주기 표시자는, 후술되는 바와같이, 하모니음을 만들기 위해 DSP(180)에 의해 사용된다.
피치 인식 루틴(188)의 결과, 즉 제 1 버퍼(122)에 저장된 입력 음성신호의 피치 신호는 마이크로프로세서(138)에 공급된다. 마이크로프로세서의 ROM(140)내에는 입력 음성신호의 피치를 미디음과 상관시키는 룩업 테이블(lookup table)이 있다. 본 발명의 바람직한 실시예에서, 각 미디음은 0과 127사이의 수가 할당된다. 예를 들어, 음 A 440 Hz는 미디음 번호로 69이다. 입력신호가 정확히 피치상에 위치하지 않는 경우에는, 음은 가장 가까운 미디음으로 반올림 되거나 분수가 할당될 수 있다. 예를 들어 A 440Hz에 약간 모자라는 음에 대해서는 마이크로프로세서에 의해 68.887과 같은 수가 할당될 수 있다.
일단 마이크로프로세서가 입력 음성신호에 음을 할당하면, 마이크로프로세서는 어떤 하모니음이 생성될 것이가를 판단한다. 특정 하모니음들은 사용자에 의해 개별적으로 프로그램되거나 또는 하나 이상의 미리 정의된 하모니음 규칙들로부터 선택될 수 있다. 예를 들어, 사용자는 입력음의 3도 위의 음정, 입력음의 5도 위의 음정, 입력음의 7도 위의 음정 및 입력음의 3도 아래 음정의 4개의 하모니음들을 만들도록 마이크로프로세서를 프로그램할 수 있다. 선택적으로, 사용자는 입력 멜로디 라인의 위와 아래 코드 음색(chord tone)을 갖는 하모니음들을 항상 생성하는 "코드 하모니" 규칙(chord harmony rule)과 같은 규칙을 선택할 수 있다. 코드 하모니음 규칙과 같은 규칙을 사용하기 위해 사용자는 노래부를 코드를 입력함으로써, 마이크로프로세서로 하여금 정확한 코드 음색을 결정하도록 한다. 미리 정해진 하모니음 규칙은 ROM(140)내에 저장되어 사용자에 의해 입력 제어장치(148)로 작용된다.
생성될 하모니음을 선택하는 또 다른 방법은 미디 포트(154)를 사용하는 것이다. 포트를 사용하여 마이크로프로세서는 어떤 하모니음을 생성할 것인지에 대한 지시를 외부 소오스로부터 받을 수 있다. 이러한 음들은 신서사이저, 시켄서 또는 다른 미디-호환 장치로부터 받을 수 있다. 효과 발생기(100)는 입력 음성신호가 수신된 하모니음의 피치와 동일한 피치를 갖도록 입력 음성신호를 시프트시킨다. 선택적으로, 어떤 하모니음을 생성할 것인가에 대한 명령이 컴퓨터 디스크상에 저장되거나 또는 레이저 디스크상에 서브코드로써 저장될 수 있다. 레이저 디스크는 가라오케나 다른 오락기계를 사용하여 동작할 수 있는데, 이러한 기계에서 사용자가 가라오케 곡의 가사를 부를 때, 가라오케 기계는 만들어질 하모니음들에 대한 지시를 음악 효과 발생기(100)에 공급한다.
일단 하모니음들이 결정되면, 디지털 신호 처리기(180)는 리샘플링 루틴(192)을 실행하여 성별 시프트 제어장치(156)의 위치에 의해 결정된 비율로 메모리 버퍼(122)내에 저장된 입력 음성신호를 리샘플링한다. 리샘플링된 데이터는 각각이 성별 시프트 제어장치와 관련된 두 개의 메모리 버퍼들(128)에 저장된다. 보다 낮은 비율로 샘플링함으로써, 하모니음의 음색은 보다 여성적으로 들리며, 선택적으로, 샘플링율이 증가되면, 하모니음은 보다 남성적으로 들린다.
도 4A는 저장된 스펙트럼 포락선을 압축하여 입력 음성신호가 보다 여성적으로 들리도록 하기 위해 입력 음성데이터가 디지털 신호 처리기에 의해 어떻게 리샘플링되는지를 보여준다. 아날로그 입력 음성신호(105)는 다수의 동일한 시간 간격 0, 1, 2, 3, ....., 11로 A/D 변환기(118)에 의해 리샘플링된다. 각 샘플들은 대응하는 값 a, a, c, ..., 1을 갖는다. 샘플들을 메모리 버퍼(122)내 순환 배열의 요소들로 연속적으로 저장된다. 순환 배열은 항상 새로운 샘플 데이터로 채워지는 다음의 사용가능한 메모리를 지시하는 기록 포인티(wp)를 갖는다. 또한, 디지털 신호 처리기는 메모리 버퍼내에서 입력 음성신호의 새로운 사이클이 시작되는 위치를 지시하는 최종 주기 표시자(pm;122b)를 계산한다. 최종주기 표시자(l22b)와 이전주기 표시자(l22a)사이의 샘플들의 개수가 입력 음성신호의 한 사이클로 정의된다.
입력 음성신호의 스펙트럼 면적을 압축하기 위해, 저장된 신호는 최초로 샘플링되었던 비율보다 약간 더 높은 비율로 리샘플링되어 두 개의 메모리 버퍼 (128;도 3에 도시됨)중의 하나에 저장된다. 리샘플링율은 성별 시프트 제어장치(156)를 설정함으로써 절정된다. 도 4A에 도시된 예에서, 입력 음성신호는 25%만큼 늦춰진다. 이는 최초 샘플링 주기의 0.75배와 동일한 시간주기로 메모리 버퍼(122)내에 저장되어 있는 데이터를 리샘플링함으로써 이루어진다. 예를 들어, 샘플들 a', b', c' , d' , .....은 0, 0.75, 1.5, 2.25 등의 시각에서 취해져서 제 2 메모리 버퍼(128)에 저장된다.
제 l 메모리 버퍼(122)내에 저장된 샘플들 사이의 시각에서의 데이터 값들을 계산하기 위해, 보간법(interpolation method)이 사용된다. 본 발명의 바람직한 일 실시예에서는 선형 보간법이 사용된다. 예를 들어, 시각 0.75에서 샘플용 데이터를 채우기 위해, 디지털 신호 처리기는 메모리 버퍼(122)로부터 시각 1에서 얻어진 샘플값을 판독하여 여기에 0.75를 곱하고, 시각 0에서 얻어진 샘플값의 0.25배를 다시 더한다. 본 발명의 바람직한 이 실시예에서는 선형 보간법이 사용되었지만, 디지털 신호 처리기(180)내에 충분한 계산 능력을 주도록 스플라인(spline)과 같은 다른 더 정확한 방법이 사용될 수 있다.
데이터가 리샘플링되어 제 2 메모리 버퍼(128)에 저장되면, 디지털 신호 처리기는 리샘플링된 입력 음성신호의 새로운 사이클이 시작하는 메모리 버퍼 (128)내 위치를 가리키는 주기 표시자(l28b)를 계산해낸다. 주기 표시자(l28b)는 주기표시자(l22b)에 샘플링율의 퍼센트 변화를 곱함으로써 계산된다. 따라서, 새로운 주기 표시자(128b)는 주기 표시자(l28a)에 1.33(즉, 1/0.75)을 곱하고, 그 결과를 제 2 메모리 버퍼(128)내 이전 주기 표시자(l28a)애 더함으로써 계산된다. 도 4A에 도시된 두 개의 메모리 버퍼(122, 128)를 비교함으로써 알수 있듯이 입력 음성신호의 샘플링율을 증가시킨 결과로 입력 음성신호의 전제 사이클을 저장하는데 필요한 샘플들의 총 개수가 증가한다. 예를 들어, 메모리 버퍼(122)내의 두 개의 주기 표시자(l22a, 122b) 사이의 샘플들의 개수는 12개이다. 샘플링율을 33 %만큼 증가시킴으로써, 입력 음성신호의 전체 사이클을 저장하는데 필요한 샘플들의 개수, 즉 주기 표시자(l28a, l28b) 사이의 샘플들의 개수는 16개로 증가한다.
도 4B는 입력 음성신호가 A/D 변환기(118)에 의해 최초에 샘플링되었던 비율보다 더 늦은 비율로 디지털 신호 처리기에 의해 어떻게 리샘플링되고 메모리 버퍼(122)에 저장되는지를 보여준다. 다시, 아날로그 입력 음성신호(105)는 다수의 동일한 시간 간격 0, 1, 2, 3, ...., 11로 샘플링된다. 각 샘플은 제 1 메모리 버퍼(122)에 저장된 대응값 a, b, c, ..., 1을 갖는다. 주기 표시자 (l22b)는 입력 음성신호의 새로운 사이클의 시작을 표시하는 메모리 기억장소를 가리키도록 계산된다.
도 4B에서, 샘플링 주기는 25 %만큼 증가되는 것으로 도시되어 있다. 따라서, 입력 음성신호는 최초의 샘플링 간격의 0, 1.25, 2.5, 3.75배 등의 시각에서 리샘플링된다. 각 샘플은 새로운 값 a', b', c' , .... i'를 갖는다. 샘플 간격이 이전에 저장된 샘플들의 하나와 정확히 맞지 않는 경우에는 리샘플링된 데이터 값을 결정하기 위해 보간법이 사용된다. 예를 들어, 시각 3.75에서 샘플 d'의 값을 계산하기 위해서, 디지털 신호 처리기는 시각 4에서 얻어진 값의 0.75배와 시각 3에서 얻어진 데이터 값의 0.25배의 합을 구한다.
데이터가 리샘플링되어 제 2 메모리 버퍼(128)에 저장되면, 디지털 신호 처리기는 상기한 방법과 동일한 방법으로 리셈플링 데이티에 대한 최종 주기 표시자(l28b)를 재계산한다. 도 4b에 도시된 바와 같이 , 최초 입력 신호의 주기 표시자(l22a, 122b) 사이의 샘플들의 개수는 12개이다. 샘플링 주기가 25 %만큼 증가될 때, 주기 표시자(128a, 128b) 사이에는 단지 9.6개의 샘플들이 존재한다. 따라서, 입력 음성신호의 전체 사이클을 저장하는데 필요한 샘플들의 총 개수는 20 %만큼 감소한다.
본 발명의 바람직한 일실시예에서, 사용자는 샘플링율을 33 %만큼 증가 시키거나 감소시킬 수 있다. 리샘플링 시프트는 증감될 수 있지만, 음성 장치에 대해서 리샘플링율이 -18%에서 18 % 사이에 설정될 때, 가장 사실적으로 소리나는 음색 시프트가 얻어지는 것으로 판단되어 왔다.
일단 입력 음성신호가 성별 시프트 제어장치에 의해 지시된 비율로 리샘플링되어 데이터 버퍼(128)에 저장되면, DSP(180)는 리샘플링된 데이터의 주기를 재계산한다. 예를 들어, 사용자는 2.27 ms(48 KHz에서의 109개 샘플들)의 주기를 갖는 A음을 440 Hz로 노래하고 성별 제어장치의 하나를 +10 %로 설정할수 있다. 새로운 비율로 리샘플링될 때, 리샘플링된 음성신호의 주기는 2.043(48 KHz에서의 98개 샘플들)이 될 것이다. 이 새로운 주기는 하모니음을 발생하기 위해 디지털 신호 처리기에 의해 실행되는 윈도우 생성 루틴(196)에 의해 그리고 피치 시프트 루틴(200)에 사용된다(도 3에 도시됨).
도 7을 참조하면, 메모리 버퍼에 저장된 리샘플링된 입력 음성신호(400)의 한 부분을 윈도우 함수 (402)로 스케일링하여 그 부분의 시작과 끝에서는 샘플들의 진폭을 감소시키고 그 부분의 중앙에서는 샘플들의 값을 유지함으로써 피치 시프트 루틴이 동작한다. 윈도우 함수(402)는 부드럽게 변화하는 종형 함수로써, 본 발명의 바람직한 실시예에서는 하닝 윈도우(Hanning window)이다. 윈도우 함수(402)와 리샘플링된 음성신호(400)의 상기 부분을 점 단위로 곱한 결과가 신호 세그먼트(406)이다. 리샘플링된 음성신호(400)는 일련의 피크들 (401a, 401b, 40lc 등)을 포함한다. 신호 세그먼트(406)는 완전한 한 사이클 (즉, 한 피이크)의 리샘플링된 데이터를 포함하며, 시작과 끝은 진폭에 있어 상대적으로 작다.
도 7B를 참조하면, 하모니음 (408)은 일련의 신호 세그먼트들(406a, 406b, 406c. 406d)을 연쇄적으로 연결함으로써 생성된다. 하모니음(408)을 리샘플링된 음성신호(400; 도 7A에 도시됨)와 비교하면, 리샘플링된 데이터와 비교하여 하모니음에서는 피크들(408a, 408b, 408c)의 개수가 절반임을 알 수 있다. 따라서, 하모니음(408)은 리샘플링된 음성신호의 한 옥타브 아래로 들릴 것이다. 생성되는 하모니음의 피치는 리샘플링된 음성신호를 윈도우 함수로 스케일링함으로써 얻어지는 신호 세그먼트들이 함께 더해지는 비율에 의존한다. '671 특허와 Len의 논문에 기술된 바와 같이, 음 피치를 최초 피치의 한 옥타브 아래 이상의 값으로 시프트하기 위해서는 중첩하는 신호 세그먼트들이 함께 더해지는 것이 필요하다. 신호 세그먼트의 시작과 끝에서 샘플들의 진폭을 줄이는 이유는 중첩하는 신호 세그먼트들이 함께 더해지는 결과로 하모니음내의 커다란 변화를 방지하는 것이다.
도 8A 및 8B는 디지털 신호 처리기가 하모니음을 생성하는데 사용되는 하닝 윈도우를 어떻게 계산하는지를 보여준다. 상기한 윈도우 생성 루틴(196)은 4 개의 하닝 윈도우의 수학적 표현을 도 5의 4 개의 메모리 버퍼(l34a, l34b, 134c, 134d)에 저장한다. 각 메모리 버퍼(134a, 134b, 134c, 134d)는 도 5의 4 개의 하모니음 생성기들(220, 230, 240, 250)의 하나와 연관된다. ROM(140)내에는 256 개의 메모리 저장장소에 표준 하닝 윈도우를 저장하는 메모리 버퍼(141)가 있다. 이 버퍼에 저장된 데이터 a, b, C, d 등의 값은 코사인 공식으로 계산된다.
(1- COS(2πχ/256))
여기서 χ는 버퍼에 저장된 각 샘플을 나타낸다. 하모니음들을 생성하는데 사용되는 메모리 버퍼들 (134)중 하나에 윈도우 함수를 생성하기 위해, 먼저 윈도우의 길이가 결정되고, 다음에 메모리 비퍼(141)에 저장된 하닝 윈도우의 값들을 보간함으로써 윈도우는 새로운 데이터 포인트들 a', b', c' 등으로 채워진다.
도 8B는 도 3의 윈도우 생성 루틴에 의해 수행되는 단계들의 플로우차트이다. 단계 420에서 시작하여, 어떤 리샘플링된 입력 음성신호가 하모니음을 생성하는데 사용될 것인지가 결정된다. 예를 들어, 사용자가 성별 제어장치를 +10 %와 -10 %로 설정했다고 가정한다. 효과 발생기(100)를 사용할 때, 사용자는 어떤 리샘플링된 입력 음성신호가 하모니음을 생성하는대 사용될 것인지를 결정한다. 사용자는 +10 %의 비율로 리샘플링된 입력 음성신호가 최고 하모니음을 생성하는데 사용되고, -10 %의 비율로 리샘플링된 입력 음성신호가 다른 하모니음들을 생성하는데 사용되도록 구체화할 수 있다. 일단 DSP가 어떤 리샘플링된 입력 음성신호가 하모니음을 생성하는데 사용될 것인지를 결정하면, 단계 422에서 초기에 윈도우 함수의 길이는 (샘플들로 표현된) 연관된 리샘플링 입력 신호의 주기의 두 배와 같도록 설정된다. 다음에, 단계 424에서 , 생성될 하모니음의 피치는 리샘플링된 입력 신호의 피치와 비교된다. 하모니음의 피치가 리샘플링된 입력 신호의 피치보다 더 크다면, DSP는 단계 426으로 진행한다. 단계 426에서, DSP는 하모니음이 양의 임계치 위인 반음들(semitone)의 개수 x를 결정한다. 본 발명의 바람직한 일실시예에서, 양의 임계치는 제로(0) 반음으로 설정된다. 단계 428에서, 하모니음을 생성하는데 사용되는 하닝 윈도우를 저장하는 메모리 버퍼의 길이는 단계 422에서 계산된 길이에 다음 식의 결과를 곱함으로써 감소된다. 즉
2-χ/12
여기서 χ는 하모니음이 양의 임계치 위의 반음들의 개수이다. 예를 들어, 하로니음이 임계치 위의 5 반음들이라면, 메모리 버퍼의 길이는 계수 0.75만큼 줄어든다.
생성되는 하모니음의 피치가 리샘플링된 입력음의 피치 이하라면, 윈도우의 길이는 확장될 수 있다. 단계 430에서, DSP는 하모니음이 음의 임계치 아래인 반음들의 개수 x를 결정한다. 바람직한 일실시예에서 음의 임계치는 입력음의 피치 아래 24 반음이다. 하모니음이 임계치 아래에 있다면, 윈도우 함수를 저장하는 메모리 버퍼의 길이는 다음 식의 결과와 같은 양만큼 증가된다. 즉,
2+χ/12
여기서 x는 임계치 아래의 반음들의 개수이다. 예를 들어, 생성될 하모니음이 입력음의 피치 아래 29 반음들이었다면, x = 5이고 윈도우 함수를 저장하는 메모리 버퍼의 길이는 계수 1.33만큼 증가된다.
단계 434에서, 윈도우 함수의 길이가 이 윈도우 함수를 저장하는데 사용 가능한 메모리량보다 더 많은 양으로 증가되었는지의 여부를 판단한다. 증가되었다면, 윈도우 함수의 길이는 윈도우 함수를 저장할 수 있는 최대 메모리량으로 설정된다.
생성될 하모니음이 음의 임계값 이하가 아니라면, 윈도우 함수의 길이는 단계 422에서 계산된 것과 동일하게 된다.
윈도우 함수를 보유하는 메모리 버퍼의 길이가 계산된 후, 메모리 버퍼(134)는 윈도우 데이터 값들로 채워진다. 이는 버퍼(141, 현재는 256) 길이와 단계 428이나 또는 단계 432에서 결정된 버퍼 길이의 비율을 단계 438에서 결정함으로써 이루어진다. 이 비율은 윈도우 데이터를 보간시키기 위해 단계 440에서 이용된다. 예를 들어, 새로운 버퍼가 284 개 샘플의 길이를 가지고 있다면, 버퍼(134)는, 도 4A, 도 4B에 도시되고 상기에서 설명된 바와 같이, 입력 음성 신호가 리샘플링되는 것과 동일한 방식으로 포인트 0, 0.9, 1.8, 2.7에서 데이터를 보간함으로써 갖추어진다.
사용자는 발생된 각 하모니음에 대한 음량비를 명시할 수도 있다. 이 음량비는 메모리 버퍼(134)에 저장된 샘플들의 진폭에 영향을 미친다. 사용자가 하모니음들에 대해 최대 음량을 원한다면, 음량비는 1로 설정되며, 음량의 절반만 원한다면 0.5로 설정된다. 이 음량비는 단계 440에서 결정되고, 메모리 버퍼들(134)의 각 값은 단계 442에서 음량비에 곱해진다.
도 3을 보면, 피치 시프트 루틴(200)의 출력은 합산 블록(210)에 제공되는데, 합산 블록에서 상기 출력은 메모리 버퍼(122)에 저장된 드라이 오디오신호(dry audio signal)에 더해진다. 드라이 오디오신호와 하모니 신호들은 조합되어서 입력음과 하모니음들의 조합인 다중-음성 아날로그 (multi-voice analog) 신호를 발생시키는 D/A 컨버터(215)로 출력된다. '671 특허에 개시된 바와 같이, 사용자가 치찰음(sibilant sound)으로 노래한 것을 피치 인식 루틴이 검출하면, 출력 하모니음은 발생되지 않는다. 치찰음이란 "스(s)", "츠(ch)", "쉬(sh)" 등의 소리를 일컫는다. 하모니음이 사실적으로 소리나기 위해서, 이 신호들의 피치는 시프트되지 않는다. 사용자가 치찰음으로 노래한 것을 피치 인식 루틴이 검출하면, 마이크로프로세서는 발생될 모든 하모니들을 입력 음성신호와 동일한 피치로 설정한다. 이와 같이 하모니음들은 모두 입력 음성신호와 동일한 피치를 가지나, 피치 시프트 루틴(200)의 동작과 리샘플링 동작과의 결함으로 인하여 발생하는 음색 시프트 때문에 입력신호와는 약간 다르다.
선행의 피치 시프트 기술을 사용하여 얻어질 수 있는 것보다 자연스럽게 소리나는 하모니를 발생시키기 위해서, 본 발명은 리샘플링의 결과로서 피치 및 음색이 이미 시프트된 리샘플링 입력 음성신호의 한 부분을 복사한다. 도 5를 보면, 디지틸 신호 처리기(180)에 의해 수행되는 피치 시프트 루틴(200)은 일련의 하모니 발생기들(220, 230, 240, 250)을 사용하여 실행된다. 각 하모니 발생기는 메모리 버피(122)내에 저장된 드라이 오디오신호와 혼합되는 하나의 하모니음을 발생시킨다. 발생된 하모니음들은 리드(lead, 162)상의 디지털 신호 처리기로 출력되어 룩업 테이블(260)내에 저장된다. 디지털 신호 처리기내의 룩업 테이블(260)은 각 하모니음들에 대한 기본주파수를 결정하기 위해 사용된다.
디지털 신호 처리기내의 각 하모니 발생기는 룩업 테이블(260)내에 저장된 하모니음들중 하나를 발생시킨다. 상기에서와 같이, 하모니 발생기들은 리샘플링된 입력 음성신호들중 하나를 발생될 하모니음의 기본주파수와 동등한 비율에서 하모니 발생기의 연관된 메모리 버퍼(134a, 134b, 134c 또는 l34d)내에 저장된 하닝 윈도우를 이용하여 스케일링한다.
드라이 오디오 신호와 각 하모니 발생기(220, 230, 240, 250)의 출력신호는 좌우 채널사이의 신호들을 분할하는 합산 블록(210)에 출력된다. 예를 들어, 하모니 발생기(220)의 출력은 혼합기(mixer, 224)로 제공된다. 혼합기는 사용자로 하여금 발생될 하모니를 좌 또는 우 오디오채널중의 어느 하나로 또는 좌우 오디오채널을 혼합하여 보내도록 한다. 유사하게, 하모니 발생기(230, 240, 250)의 출력들은 해당 혼합기(234, 244, 254)로 공급된다. 각 혼합기들은 좌측 채널용 모든 하모니신호들을 조합하는 합산 블록(270)으로 제공된다. 유사하게, 각 혼합기(224, 234, 244, 254)는 우측 오디오채널용 모든 하모니신호를 조합한 합산 블록(272)으로 제공된다.
또한, 디지털 신호 처리기는 메모리 버퍼(122)로부터 드라이 오디오 신호를 판독하여, 드라이 오디오 신호를 좌측이나 우측 오디오채널의 소정의 배합에 인가하도록 사용자에 의해 작동될 수 있는 혼합기(284)에 상기 신호를 인가한다.
디지털 신호 처리기(180)는 4개의 하모니 발생기를 포함하는 것으로 도시되었으나, 사용가능한 메모리 및 디지털 처리기의 처리속도에 따라서 발생기의 개수는 증감될 수 있다는 것은 당해분야의 숙련자에게는 자명하다.
도 6을 참조하면, 각 하모니 발생기들에 의해 실행된 함수들의 상세한 내용이 도시되어 있다. 각 하모니 발생기는 다수의 윈도우 오디오 발생기 (window audio generators, 300, 310, 320, 330)를 포함한다. 각 윈도우 오디오 발생기는 하닝 윈도우에 의한 리샘플링 입력 음성신호를 스케일하기 위해 동작한다. 윈도우 오디오 발생기내에 있는 타이머(340)는 발생될 하모니음의 기본주파수와 동등한 값으로 제공된다. 기본주파수는, 각 하모니음을 해당 기본주파수와 상호관련시키는 룩업 테이블(260; 도 5)로부터 결정된다. 타이머(340)가 0까지 카운트다운되면, 스케이링 처리를 시작하기 위해서 윈도우 오디오 발생기들 (300, 310, 320 또는 330)중 하나를 찾고 있는 윈도우 오디오 발생기 할당블록 (350)으로 신호가 보내진다. 예를 들어, 원도우 오디오 발생기(300)가 사용중이 아니라면, 하모니신호를 발생시키는데 사용될 리샘플링된 입력 음성신호의 완전한 한 사이클이 시작되는 메모리 버퍼(l28)내 기억장소를 표시하는 주기 표시자의 값이 버퍼포인터(buffer pointer; 302)에 먼저 로드된다. 다음으로, 윈도우 포인터(window pointer; 304)는 하모니발생기와 관련된 메모리 버퍼(l34a, 134b, 134c 또는 134d; 도 5)의 처음을 가리키는 포인터가 로드된다. 마지막으로, 선택된 윈도우 함수를 저장하기 위해서 사용되는 샘플들의 개수가 카운터 (306)에 로드된다. 윈도우 함수에 있는 샘플들의 개수는 디지털 신호 프로세서에 의해서 하모니 발생기들로 제공되며 모든 윈도우 오디오 발생기에 의해 사용 되도록 메모리 기억장소(370)내에 저장된다.
버퍼포인터(302), 윈도우 프린터(304) 및 카운터(306)가 초기화된 후, 윈도우 오디오 발생기는, 관련 메모리 버퍼(128)안에 저장된 리샘플링 입력 음성신호와 관련 메모리 버퍼안에 저장된 하닝 윈도우를 포인트 단위의 승산 (point-by-point multiplication)을 시작한다. 승산의 결과는 모든 윈도우 오디오 발생기들(300, 310, 320, 330)로부터의 출력을 합산하는 합산 블록(372)에 인가된다. 승산이 완료된 후, 포인터(302, 304)는 진행하고 카운터(306)는 감소한다. 카운터(306)가 0이 되고 모든 승산이 수행된 경우, 윈도우 오디오 발생기는 윈도우 오디오 발생기 할당블록(350)에 다시 사용가능하다는 신호를 보낸다. 윈도우 오디오 발생기들(310, 320, 330)은 윈도우 오디오 발생기(300)와 동일한 방식으로 동작한다.
타이머(340), 메모리 기억장소(260; 도 5)에 저장된 주기 표시자들, 메모리 기억장소(370)에 저장된 윈도우 함수에 있는 포인트들의 개수 및 메모리 기억장소(134)에 저장된 하닝 윈도우들은 모두 사용자가 마이크로폰에 서로 다른 음들을 노래함에 따라 동적으로 업데이트된다.
상기와 같이, 입력 음성신호의 피치 이하의 피치를 갖는 하로니음들에 대해서, 하닝 윈도우는 하모니신호를 발생시키는데 사용된 입력신호 주기의 두배 또는그보다 긴 길이를 갖는 것으로 계산된다. 그러므로, 입력 음성신호보다 한 옥타브아래의 하모니신호를 발생시키기 위해서는 단지 한 개의 윈도우 오디오 발생기만이 필요하다. 그러나, 입력 성음의 피치보다 큰 피치를 갖는 하모니음을 발생시키기 위해서, 하닝 윈도우의 길이는 감소된다. 그러므로, 리샘플링된 입력 음성신호의 피치 이상의 출력신호를 발생시키기 위해서는 두 개의 원도우 오디오 발생기만이 필요하다.
상기 설명한 음악 효과 발생기는 피치 시프트된 음에 고정량의 음색시프트를 적용한다. 그러나, 디지털 방식으로 처리된 음의 사실성을 높이기 위해 음색 시프트량을 동적으로 변화시키는 것도 가능하다.
본 발명의 음악 효과 발생기는 미리 녹음된 멜로디 및/또는 하모니트랙을 갖는 가라오케 시스템에 사용가능하다. 선택적으로는, 멜로디 또는 하모니음은 키보드 또는 컴퓨터로부터 수신될 수도 있다. 일반적으로 미리 녹음된 멜로디 및/또는 하모니음들은 미리 채널을 통해 음악 효과 발생기에 전송된다. 하모니음을 하나만 발생하고자 한다면, 효과 발생기는 원하는 하모니음을 미디 포트로부터 판독하고, 그 음에 인가될 음색 시프트량을 참고하며, 리샘플링된 입력음의 부분들을 상기 설명된 방식으로 복사함으로써 하모니음을 만들어낼 수 있다. 그러나, 하나 이상의 하모니음을 만들고자 한다면, 각 음성에 대한 음들이 각 음들 자체의 미디 채널을 통하여 전송되어야 한다.
대부분의 경우에서, 하모니음들을 공급하는 미디 컨트롤러는 각 음성에 대해서 별도의 채널이 사용되기에 충분하게 자유 채널들을 갖고 있지 않다. 단일 미디채널은 발생될 각 멜로디 또는 하모니음을 정의하는데 사용될 수 있다. 그러나, 개개의 멜로디 또는 하모니음에 어느 정도의 음색 시프트가 인가되어야 하는지를 효과 발생기에 알려줄 실제적인 방법은 없다. 개념적으로는, 각 음의 앞에 위치하고 어느 정도의 음색시프트가 인가되는지를 정의하는 미디 메시지 (MIDI message)로 하모니 또는 멜로디음들을 설명하는 미디 파일(MIDI file)을 코딩하는 것이 가능하다. 그러나 그러한 파일은 구성하기가 곤란할 것이며, 멜로디/하모니음들이 사용자가 노래할 때 키보드로 코딩되고 있었다면 실시간으로 구성될 수 없다. 그러므로, 단일 미디 채널상에서 멜로디 또는 하모니음들을 수신하고 다양한 음성들로 구성된 음들에 서로 다른 양의 음색 시프트를 할당할 수 있는 효과발생기가 필요하다.
본 발명의 제 1 변형실시예는 도 9A에 도시되어 있다. 이 실시예에서, 소정의 노래를 반주할 모든 멜로디 또는 하모니음들은 단일 미디 채널상에서 엔코딩된다. 효과 발생기는 음들을 판독해서 실시간으로 음색 시프트량을 음들에 동적으로 할당하도록 프로그램된다. 본 발명의 이 실시예를 실행하는데 필요한 하드웨어는 도 3에서 도시된 것과 동일하다. 그러나 디지털 신호 처리기(180)는 약간 다른 방식으로 프로그램된다.
효과 발생기(500)는, 사용자가 노래부를 때, 가라오케 시스템, 키보드 또는 컴퓨터 시스템으로부터 단일 미디 채널(505)을 통하여 연속된 멜로디 또는 하모니음을 수신한다. 멜로디 또는 하모니음들은 디지털 신호 처리기에 의해 판독되고 처기블록(process block; 515)에 있는 음색 시프트량을 자동으로 할당받는다. 또한 발생될 하모니음 또는 멜로디의 피치를 하나 이상의 피치 임계값들과 비교하도록디지털 신호 처리기를 프로그램함으로써 자동 음색 할당블록(515)이 실행되는 것이 바람직하다.
멜로디 또는 하모니음의 피치가 임계값과 관련되는지에 따라, 그 음의 음색은 미리 정의되거나 또는 미리 프로그램된 규칙에 따라서 설정된다. 예를들어, 두 개의 임계값들이 있다면, 두 임계값보다 높은 피치를 갖는 음들은 -10 %의 비율로 리샘플링될 수 있는 반면, 임계값들 사이의 하모니음들은 -2 %의 비율로 리샘플링되고 두 임계값 이하의 하모니음들은 +5 %의 비율로 리샘플링될 수 있다. 물론, 음색 시프트량은 하나 이상의 피치 임계값들 이상 또는 이하의 음들에 대해서 동일할 수 있다. 선택적으로, 음악 효과 발생기는 음색 시프트가 음들에 인가되지 않도록 프로그램될 수 있다. 하나 이상의 피치 임계값들은 각 노래에 대해서 그 노래를 반주하는 미디 파일의 초기부에 미디 메시지들로써 하나 이상의 임계값 음들을 포함시킴으로써 미리 정의되거나 또는 프로그램될 수 있다.
멜로디 또는 하모니음들의 피치를 피치 임계값과 비교하는 변형예로서, 하모니음의 피치를 별도의 미디 파일에 저장되어 미디 채널(510)상에서 효과 발생기에 전송되는 원하는 멜로디음의 피치와 비교하도록 디지털 신호 처리기를 프로그램함으로써 자동 음색 할당블록(515)이 실행될 수 있다. 원하는 멜로디음들을 판독함으로써, 효과 발생기는 (싱어(singer)가 거의 맞는 키에서 노래한다고 가정해서)하모니음을 발생시키는데 필요한 피치 시프트의 예상량 결정은 예측할 수 있다. 그런 다음 효과 발생기는 피치 시프트의 예상량에 따라서 각 하모니음에 대한 음색 시프트량을 변경시킨다.
다른 변형예로서, 하모니음이 멜로디 라인의 위 또는 아래에 있는지를 판단하기 위해서 하모니음의 피치를 입력 성음의 피치와 비교하도록 디지털 신호 처리기를 프로그램함으로써 자동 음색 할당블록(515)이 실행될 수 있다. 하모니음의 음색은 이 하모니음의 피치와 입력 성음의 피치 사이의 차분함수로서 변경가능하다. 발생된 하모니음은 입력 성음과 다른 음색을 갖기 때문에, 입력음의 피치 시트트된 연주같이 들리지 않으며 따라서 합성음에 사실성을 더해준다.
본 발명에 따른 효과 발생기의 두 번째 변형실시예는 도 9B에 도시되어 있다. 여기에서 하모니음의 음색은 하모니 음성을 입력 음성과 구별시키는 방식으로 변경되지 않고, 싱어가 보다 높거나 또는 보다 낮은 음들을 노래할 때 싱어의 음성이 변화하는 방법을 흉내내는 방식으로 변경된다.
음악 효과 발생기(520)는 싱어로부터 입력 음성신호를 수신하고, 신호를 분석하여 그 피치를 결정한다. 효과 발생기는 입력 음성신호가 시프트될 피치를 가리키는, 미디 채널(530)상의 원하는 연속된 멜로디 또는 하모니음들을 수신한다. 효과 발생기내의 디지털 신호 처리기는 블록(540)이 표시하는 바와 같은 발생될 음에 소정량의 음색 시프트를 동적으로 할당시킨다. 바람직하게 디지털 신호 처리기는 어느 정도의 음색 시프트가 피치 시프트된 출력음에 인가되어야 하는지를 선택하기 위해서 원하는 음의 피치를 입력 음성신호의 피치와 비교한다. 예를 들어, 음색 시프트량은 입력 음성신호와 원하는 하모니 또는 멜로디음 사이의 피치의 차에 대해 선형적으로 변화할 수 있다. 선택적으로, 원하는 음의 피치가 입력 음성신호의 피치와 소정량 이상으로 다르게 될 때까지 음색이 변하지 않는 계단함수(stepfunction)가 사용되기도 한다. 음색 시프트량이 결정되면, 디저털화된 입력 음성신호는 리샘플링되고, 출력음은 앞서 설명한 바와 같이 원하는 출력음의 기본주파수와 동일한 비율로 리샘플링된 입력음의 부분들을 복사함으로써 만들어진다.
싱어의 음성 트랙(vocal tract)에서 발생하는 물리적인 변화를 흉내내는 사실상의 음색 시프트를 얻기 위해서, 입력 성음보다 높은 피치들을 갖는 음들에 대해서 리샘플링율은 최초 샘플링율보다 느려야 한다. 역으로, 입력 성음 이하의 피치를 갖는 음들에 대해서 리샘플링율은 최초 샘플링율보다 빨라야 한다. 요구되는 피치 시프트량에 기초한 음의 음색을 변화시키는 변형예로써, 입력 음송신호의 라우드니스(1oudness)의 변화에 근거한 음색의 변화도 가능하다. 디지털 신호 처리기는 디리털화된 입력 음성신호의 진폭을 분석하고, 진폭의 함수로서 음색 시프트량을 선택한다. 더욱이, 음색은 노래한 입력 음성신호의 시간 길이에 따라 변화한다. 효과 발생기가 입력 음성신호의 피치를 결정하고 나면, 디지털 신호처리기는 재정의된 한계내로 피치가 머무르는 시간의 길이를 기억하는 내부 타이머를 가동하기 시작한다. 음색 시프트량은 타이머에 의해 기록된 시간의 길이의 함수로서 선택된다. 그러나, 음에 적용될 음색 시프트량을 제어 하는데에는 기타 다른 표준들도 사용가능하다.
도 9B에 도시된 효과 발생기를 사용하면, 노래불러진 음의 피치가 변화됨에 따라 싱어의 음성에서 음색이 자연스럽게 변화하는 방법을 음들이 흉내내기 때문에 합성 출력신호는 좀더 사실적으로 들린다.
상기에서 본 발명은 음성 하모니 발생기에 대해서 설명되었지만, 기타 용도에도 본 발명은 적용가능하다. 일례로 음성 위장기(voice disguiser)를 들수 있는데, 사용자가 마이크로폰에 이야기하면 다른 음색 및/또는 피치를 갖는 출력신호가 발생한다. 출력신호가 입력신호보다 한 옥타브 낮은 주파수를 갖는다면, 데이터 리샘플링에서 사용된 피치 시프트량은 고정되고 단지 하나의 원도우 오디오 발생기만을 필요로 하는 장치가 만들어질 수 있다. 이러한 장치는 증인의 음성을 위장하는 법의 집행이나 사용자의 음성을 숨기기 위한 자동응답기의 부품으로서 유용하다. 선택적으로, 본 발명은 자신의 음성이 좀 더 굵고 낮게 들리기 원하는 라디오 아나운서들에게도 사용될 수 있다. 또한 본 발명은 악기로부터 수신된 입력음들에 대해서 사용될 수 있다. 피치 시프트를 음색 시프트와 결합함으로써 한 악기가 다른 악기처럼 들리도록 할 수 있다.
더욱이, 본 발명의 일실시예는 Lent 방법에 따라서 피치 시프트에 이은 리샘플링 피치 시프트를 이용한다. 역과정도 사용될 수 있는 바, Lent 방법을 사용하여 발생된 출력신호는 메모리 버퍼에 저장되고 피치를 디욱 시프트시키기 위해서 새로운 비율로 리샘플링된다. 각 방법들, 즉 Lent 방법 및 리샘플링에 의한 피치 시프트 방법은 상기 설명한 바와 같이 동작한다. 여기에서, 역순서로 단계들을 실행할 때에 명심해야 할 점이 두 가지 있다. 첫째, Lent 방법에 따라 동작하는 피치 시프터의 출력은 더 이상 전체적인 출력신호의 기본주파수를 직접적으로 제어하지 않는다. 그러므로, 리샘플링의 결과로 발생하는 피치 시프트에 대한 보상이 필요하다. 예를 들어, 음색 시프트 제어장치가 싱어의 목소리가 보다 여성적으로 들리도록 설정되었다면, 리샘플링 피치 시프터는 피치를 12 % 상향조정한다. 음색 시프트된 출릭신호를 440 Hz주파수로 발생시키고자 한다면, Lent 방법에 따라 작동하는 피치 시프터는 440/l.12=392.86 Hz의 기본주파수를 갖는 신호를 출력하도록 설정되어야 한다. 일반적으로, 이 관계는 TSF = LF × PSR로 표시되는데,
여기에서, TSF는 음색 시프트된 출력신호의 기본피치의 주파수,
LF는 Lent 방법에 따라 작동하는 피치시프터의 출력신호의 기본피치 주파수,
PSR는 리샘플링 피치 시프터의 피치 시프트율(Pitch Shift Ratio) 이다. 이것은 (입력 샘플율)/(리샘플링된 샘플율)의 비를 의미한다.
둘째로는, 도 6에 도시된 하모니 타이머(340)에 대한 클록원(clock source)이 다르다는 것이다. Lent 방법의 피치 시프터가 과정에서 마지막 단계에 있을 때, 이 타이머는 CD 음질의 오디오를 제공하는 시스템에서 시스템의 샘플링율, 예를 들어 44.1 KHz로 감소된다. 이는 Lent 방법의 피치 시프터가 그 비율로 피치 시프트된 오디오의 연속적인 흐름을 제공할 수 있다는 것을 보증한다. Lent 방법의 피치 시프터가 출력에 직접적으로라기 보다는 리샘플링 피치 시프터에 그 출력을 통과시킬 때, 타이머(340)는 리샘플링율로 클록된다. 이것은 두 가지 과정들이 동시적으로 동작한다는 보증한다. 도 4A에서와 같이 리샘플링이 높은 비율로 발생하고 있다면, Lent 방법은 리샘플링 피치 시프터에 데이티가 연속적으로 공급되도록 유지하기 위해서 복사된 피치주기들을 높은 비율로 발생시키고 있어야 한다. 유사하게, 리샘플링이 도 4B에서와 같이 낮은 비율로 발생하고 있다면, Lent 방법은 리샘플링 피치 시프터에 데이터가 연속적으로 공급되도록 유지하기 위해서 복사된 피치주기를 낮은 비율로 발생시킬 필요가 있다.
본 발명의 바람직한 실시예가 도시되고 설명되었으나, 본 발명의 정신과 범주를 일탈하지 않고 다양한 변경이 가해질 수 있다는 것은 자명하다. 따라서 본 발명의 범주는 이하의 청구범위로부터만 결정될 것이다.

Claims (36)

  1. 입력신호로부터 음색 시프트된(timbre shifted) 출력신호를 생성하는 방법에 있어서,
    제 1 비율로 샘플링된 입력신호의 디지털 표현(digital representation) 을 수신하는 단계와;
    상기 입력신호의 디지털 표현을 상기 제 1 비율과는 다른 제 2 비율로 리샘플링하는 단계와;
    상기 리샘플링된 입력신호의 세그먼트를 주기적으로 추출하고 상기 추출된 세그먼트들을 상기 출력신호의 기본주파수와 동일한 비율로 복사함으로써 상기 음색 시프트된 출력신호의 디지털 표현을 생성하는 단계를 포함하는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 생성하는 방법.
  2. 입력신호로부터 음색 및 피치 시프트된(timber, pitch shifted) 출력신호를 생성하는 방법에 있어서,
    제 1 비율로 샘플링된 입력신호의 디지털 표현을 수신하는 단계와;
    상기 입력신호의 세그먼트를 주기적으로 추출하고 상기 추출된 세그먼트들을 상기 피치 시프트된 출력신호의 기본주파수와 동일한 비율로 복사함으로써 상기 피치 시프트된 출력신호의 디지털 표현을 생성하는 단계와;
    상기 피치 시프트된 출력신호의 디지털 표현을 상기 제 1 비율과는 다른 제2 비율로 리샘플링함으로써 상기 음색 시프트된 출력신호의 디지털 표현을 생성하는 단계를 포함하는 것을 특징으로 하는 입력신호로부터 음색 및 피치 시프트된 출력신호를 생성하는 방법.
  3. 제 1 항 또는 제 2 항에 있어서, 상기 음색 시프트된 출력신호의 상기 디지털 표현을 상기 음색 시프트된 출력신호의 아날로그 표현으로 변환하기 위해 상기 음색 시프트된 출력신호의 상기 디지털 표현을 디지털-아날로그 변환기에 인가하는 단계를 더 포함하는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 생성하는 방법.
  4. 제 1 항에 있어서, 상기 입력신호는 기본주파수를 가지며, 상기 음색 시프트된 출력신호는 상기 입력신호의 기본주파수와 동일한 기본주파수를 갖는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 생성하는 방법.
  5. 제 1 항에 있어서, 상기 입력신호는 기본주파수를 가지며, 상기 음색 시프트된 출력신호는 상기 입력신호의 기본주파수와 다른 기본주파수를 갖는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 생성하는 방법.
  6. 제 1 항 또는 제 2항에 있어서, 상기 입력신호의 디지털 표현을 수신하는 단계는;
    상기 입력신호의 아날로그 표현을 수신하는 단계와;
    상기 입력신호의 상기 아날로그 표현을 상기 입력신호의 디지털 표현으로 변환하기 위해 상기 입력신호의 상기 아날로그 표현을 아날로그-디지털 변환기에 인가하는 단계를 포함하는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 생성하는 방법.
  7. 제 1 항 또는 제 2 항에 있어서, 상기 입력신호는 악기에 의해 생성되는 음(note)인 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 생성하는 방법.
  8. 제 1 항 또는 제 2 항에 있어서, 상기 입력신호는 음성(vocal note) 인 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 생성하는 방법.
  9. 입력 음성신호로부터 음색 시프트된 출력 음성신호를 생성하는 방법에 있어서,
    제 1 비율로 샘플링된 입력 음성신호의 디지털 표현을 수신하고, 리샘플링된 입력 음성신호를 생성하기 위해 상기 제 1 비율과는 다른 제 2 샘플링율로 상기 입력 음성신호를 리샘플링하는 단계와;
    상기 리샘플링된 입력 음성신호의 세그먼트를 윈도우 함수로 주기적으로 추출하고 상기 추출된 세그먼트들을 상기 출력 음성신호의 기본주파수와 동일한 비율로 복사함으로써 상기 음색 시프트된 출력 음성신호의 디지틸 표현을 생성하는 단계를 포함하는 것을 특징으로 하는 입력 음성신호로부터 음색 시프트된 출력 음성신호를 생성하는 방법.
  10. 입력 음성신호로부터 음색 및 피치 시프트된 출력 음성신호를 생성하는 방법에 있어서,
    제 1 비율로 샘플링된 입력 음성신호의 디지털 표현을 수신하고, 상기 리샘플링된 입력 음성신호의 세그먼트를 윈도우 함수로 주기적으로 추출하고 상기 추출된 세그먼트들을 상기 출력 음성신호의 기본주파수와 동일한 비율로 복사함으로써 상기 피치 시프트된 출력 음성신호의 디지털 표현을 생성하는 단계와;
    상기 제 1 샘플링율과 다른 제 2 샘플링율로 상기 피치 시프트된 출력 음성신호의 디지털 표현을 리샘플링함으로써 상기 음색 시프트된 출력 음성신호의 디지털 표현을 생성하는 단계를 포함하는 것을 특징으로 하는 입력 음성신호로부터 음색 및 피치 시프트된 출력 음성신호를 생성하는 방법.
  11. 제 9 항 또는 제 10 항에 있어서, 상기 입력 음성신호의 디지털 표현을 수신하는 단계는;
    상기 입력 음성신호의 아날로그 표현을 수신하는 단계와;
    상기 입력 음성신호의 상기 아날로그 표현을 상기 입력 음성신호의 디지털 표현으로 변환하기 위해 상기 입력 음성신호의 상기 아날로그 표현을 아날로그-디지털 변환기에 인가하는 단계를 포함하는 것을 특징으로 하는 입력 음성신호로부터 음색 시프트된 출력 음성신호를 생성하는 방법.
  12. 제 9 항 또는 제 10 항에 있어서, 상기 음색 시프트된 출력 음성신호의 상기 디지털 표현을 상기 음색 시프트된 출력 음성신호의 아날로그 표현으로 변환하기 위해 상기 음색 시프트된 출력 음성신호의 상기 디지털 표현을 디지털-아날로그 변환기에 인가하는 단계를 더 포함하는 것을 특징으로 하는 입력 음성신호로부터 음색 시프트된 출력 음성신호를 생성하는 방법.
  13. 제 9항 또는 제 10항에 있어서, 상기 입력 음성신호는 기본주파수를 가지며, 상기 음색 시프트된 출력 음성신호는 상기 입력 음성신호의 기본주파수와 동일한 기본주파수를 갖는 것을 특징으로 하는 입력 음성신호로부터 음색 시프프된 출력 음성신호를 생성하는 방법.
  14. 제 9항 또는 제 10항에 있어서, 상기 입력 음성신호는 기본주파수를 가지며, 상기 음색 시프트된 출력 음성신호는 상기 입력 음성신호의 기본주파수와 다른 기본주파수를 갖는 것을 특징으로 하는 입력 음성신호로부터 음색 시프트된 출력 음성신호를 생성하는 방법.
  15. 제 9 항에 있어서, 상기 입력 음성신호와 상기 음색 시프트된 출력음성신호는 기본주파수를 가지며, 상기 리샘플링된 입력 음성신호의 세그먼트를 추출하는 상기 단계는:
    상기 입력 음성신호의 기본주파수와 상기 음색 시프트된 출력 음성신호의 기본주파수 사이의 차분함수인 지속기간을 갖는 윈도우 함수를 생성하는 단계와;
    상기 원도우 함수와 상기 리샘플링된 입력 음성신호의 디지털 표현을 함께 곱하는 단계를 더 포함하는 것을 특징으로 하는 입력 음성신호로부터 음색시프트된 출력 음성신호를 생성하는 방법.
  16. 제 10항에 있어서, 상기 입력 음성신호와 상기 피치 시프트된 출력 음성신호는 기본주파수를 가지며, 상기 리샘플링된 입력 음성신호의 세그먼트를 추출하는 상기 단계는:
    상기 입력 음성신호의 기본주파수와 상기 피치 시프트된 출력 음성신호의 기본주파수 사이의 차분함수인 지속기간을 갖는 윈도우 함수를 생성하는 단계와;
    상기 윈도우 함수와 상기 피치 시프트된 출력 음성신호의 디지털 표현을 함께 곱하는 단계를 더 포함하는 것을 특징으로 하는 입력 음성신호로부터 음색 및 피치 시프트된 출력 음성신호를 생성하는 방법.
  17. 제 9 항에 있어서, 상기 입력 음성신호의 디지털 표현은 리샘플링에 앞서 디지털 메모리에 저장되고, 상기 입력 음성신호의 디지털 표현은 각 사이클이 다수의 메모리 기억장소들을 점유하는 다수의 사이클들을 포함하며, 상기 입력 음성신호의 디지털 표현을 리샘플링하는 단계는:
    상기 제 2 샘플링율이 상기 제 1 샘플링율보다 더 빠른 경우, 상기 입력 음성신호의 디지털 표현에 의해 점유되는 것보다 더 많은 수의 사이클당 메모리 기억장소들에 상기 리샘플링된 입력 음성신호를 저장하는 단계와:
    상기 제 2 샘플링율이 상기 제 l 샘플링율보다 더 느린 경우, 상기 입력 음성신호의 디지털 표현에 의해 점유되는 것보다 더 적은 수의 사이클당 메모리 기억장소들에 상기 리샘플링된 입력 음성신호를 저장하는 단계를 더 포함하는 것을 특정으로 하는 입력 음성신호로부터 음색 시프트된 출력 음성신호를 생성하는 방법.
  18. 제 10 항에 있어서, 상기 피치 시프트된 출력 음성신호의 디지털 표현은 리샘플링에 앞서 디지털 메모리에 저장되고, 상기 피치 시프트된 출력 음성신호의 디지틸 표현은 각 사이클이 다수의 메모리 기억장소들을 점유하는 다수의 사이클들을 포함하며, 상기 피치 시프트된 출력 음성신호의 디지털 표현을 리샘플링하는 단계는;
    상기 제 2 샘플링율이 상기 제 1 샘플링율보다 더 빠른 경우, 상기 피치 시프트된 출력 음성신호의 디지털 표현에 의해 점유되는 것보다 더 많은 수의 사이클당 메모리 기억장소들에 상기 리샘플링되고 피치 시프트된 출력 음성신호를 저장하는 단계와;
    상기 제 2 샘플링율이 상기 제 1 샘플링율보다 더 느린 경우, 상기 입력 음성신호의 디지털 표현에 의해 점유되는 것보다 더 적은 수의 사이클당 메모리 기억장소들에 상기 리샘플링되고 피치 시프트된 출력 음성신호를 저장하는 단계를 더 포함하는 것을 특징으로 하는 입력 음성신호로부터 음색 및 피치 시프트된 출력 음성신호를 생성하는 방법.
  19. 제 9 항에 있어서, 상기 입력 음성신호의 리샘플링 단계는 상기 입력 음성신호의 디지털 표현을 보간함으로써 수행되는 것을 특징으로 하는 입력 음성신호부터 음색 시프트된 출력 음성신호를 생성하는 방법.
  20. 제 19 항에 있어서, 상기 입력 음성신호의 디지털 표현을 보간하는 단계는 선형 보간법을 이용하여 수행되는 것을 특징으로 하는 입력 음성신호로 부터 음색 시프트된 출력 음성신호를 생성하는 방법.
  21. 제 10 항에 있어서, 상기 피치 시프트된 출력 음성신호의 리샘플링 단계는 상기 피치 시프트된 출력 음성신호의 디지털 표현을 보간함으로써 수행 되는 것을 특징으로 하는 입력 음성신호로부터 음색 및 피치 시프트된 출력 음성신호를 생성하는 방법.
  22. 제 21항에 있어서, 상기 피치 시프트된 출력 음성신호의 디지털 표현을 보가하는 단계는 선형 보간법을 이용하여 수행되는 것을 특징으로 하는 입력 음성신호로부터 음색 및 피치 시프트된 출력 음성신호를 생성하는 방법.
  23. 입력신호로부터 음색 시프트된 출력신호를 발생하는 장치에 있어서, 디지털 메모리;
    제 1 비율로 샘플링된 상기 입력신호의 디지털 표현을 수신하여 상기 입력신호의 디지털 표현을 상기 디지털 메모리에 저장하기 위한 디지털 신호 처리기와;
    상기 제 1 비율과는 다른 제 2 비율로 상기 디지털 메모리에 저장되어 있는 상기 입력신호의 디지털 표현을 리샘플링하고, 상기 리샘플링된 입력신호를 상기 디지털 메모리에 저장하기 위한 수단과;
    상기 리샘플링된 입력신호의 세그먼트를 주기적으로 추출하고 상기 추출된 세그먼트들을 상기 음색 시프트된 출력신호의 기본주파수와 동일한 비율로 복사함으로써 상기 음색 시프트된 출력신호의 디지털 표현을 생성하는 피치 시프터를 포함하는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 발생하는 장치.
  24. 제 23 항에 있어서,
    상기 입력신호를 대응하는 전기적 입력신호로 변환하는 마이크로폰과;
    상기 전기적 입력신호를 제 1 비율로 샘플링하여 상기 전기적 입력신호를 상기 입력신호의 디지털 표현으로 변환하는 아날로그-디지털 변환기를 더 포함하는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 발생하는 장치.
  25. 제 23 항에 있어서, 상기 음색 시프트된 출력신호의 디지털 표현을 상기 음색 시프트된 출력신호의 아날로그 표현으로 변환하는 디지털-아날로그 변환기를 더 포함하는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력 신호를 발생하는 장치.
  26. 제 23 항에 있어서, 상기 입력신호가 리샘플링되는 상기 제 2 비율을 변화시키는 제어장치를 더 포함하는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 발생하는 장치.
  27. 제 23 항에 있어서, 상기 피치 시프터는 상기 리샘플링된 입력신호를 윈도우 함수로 스케일링함으로써 상기 리샘플링된 입력신호의 세그먼트를 추출하는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 발생하는 장치.
  28. 제 27 항에 있어서, 상기 피치 시프터는 상기 리샘플링된 입력신호를 윈도우 함수를 이용하여 상기 입력신호의 기본주파수와 고조파 관련된 비율로 스케일링하는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 발생하는 장치.
  29. 제 27 항에 있어서, 상기 입력신호 및 상기 음색 시프트된 출력신호는 기본주파수를 가지며, 상기 피치 시프터는 상기 입력신호의 기본주파수와 상기 음색 시프트된 출력신호의 기본주파수 사이의 차에 근거하여 상기 윈도우 함수의 지속기간을 조정하는 수단을 더 포함하는 것을 특징으로 하는 입력신호로 부터 음색 시프트된 출력신호를 발생하는 장치.
  30. 제 29 항에 있어서, 상기 윈도우 함수의 지속기간을 조정하는 상기 수단은 상기 음색 시프트된 출력신호의 기본주파수가 상기 입력신호의 기본주파수보다 더 큰 경우 상기 윈도우 함수의 지속기간을 감소시키고, 상기 음색 시프트된 출력신호의 기본주파수가 상기 입력신호의 기본주파수보다 더 작은 경우 상기 원도우 함수의 지속기간을 증가시키는 것을 특징으로 하는 입력신호로부터 음색 시프트된 출력신호를 발생하는 장치.
  31. 입력신호로부터 음색 및/ 또는 피치 시프트된 출력신호를 생성하는 시스템에 있어서,
    제 1 비율로 샘플링된 상기 입력신호의 디지털 표현을 수신하기 위한 수단과;
    상기 음색 시프트된 출력신호의 소정의 제 1 기본주파수를 정의하는 제 1 기준음을 수신하기 위한 수단과;
    상기 제 1 기준음에 대한 분석을 수행하여 상기 분석의 함수로써 리샘플링율을 선택하는 비교기와;
    상기 선텍된 리샘플링율로 상기 입력신호의 디지털 표현을 리샘플링하는 디지털 신호 처리기와;
    상기 리샘플링된 입력신호의 세그먼트를 주기적으로 추출하고 상기 추출된 세그먼트들을 상기 제 1 기준음의 기본주파수와 동일한 비율로 복사함으로써 상기 음색 시프트된 출력신호를 생성하는 피치 시프터를 포함하는 것을 특징으로 하는 입력로부터 음색 및/또는 피치 시프트된 출력신호를 생성하는 시스템.
  32. 제 31 항에 있어서, 상기 비교기는 상기 제 1 기준음의 기본주파수를 하나 이상의 임계값들과 비교함으로써 상기 제 l 기준음을 분석하는 것을 특징으로 하는 입력신호로부터 음색 및/또는 피치 시프트된 출력신호를 생성하는 시스템.
  33. 제 31 항에 있어서,
    상기 입력신호의 기본주파수를 결정하기 위한 수단을 더 포함하며;
    상기 비교기는 상기 제 1 기준음의 기본주파수를 상기 입력신호의 기본 주파수와 비교함으로써 상기 제 1 기준음을 분석하고 상기 제 1 기준음의 기본 주파수와 상기 입력신호의 기본주파수 사이의 차분함수로써 상기 리샘플링율을 선택하는 것을 특징으로 하는 입력신호로부터 음색 및/또는 피치 시프트된 출력 신호를 생성하는 시스템.
  34. 제 31 항에 있어서,
    제 2 기본주파수를 정의하는 제 2 기준음을 수신하기 위한 수단을 더 포함하며;
    상기 비교기는 상기 제 1 기준음의 기본주파수를 상기 제 2기준음의 기본주파수와 비교함으로써 상기 제 2 기준음을 분석하고 상기 제 1 기준음의 기본주파수와 상기 제 2 기준음의 기본주파수 사이의 차분함수로써 상기 리샘플링율을 선택하는 것을 특징으로 하는 입력신호로부터 음색 및/또는 피치 시프트된 출력신호를 생성하는 시스템.
  35. 입력신호로부터 음색 및/또는 피치 시프트된 출력신호를 생성하는 시스템에 있어서,
    제 1 비율로 샘플링된 상기 입력신호의 디지털 표현을 수신하기 위한 수단과;
    상기 음색 시그트된 출력신호의 소정의 기본주파수를 정의하는 기준음을 수신하기 위한 수단과,
    상기 입력신호가 수신되어온 시간의 길이를 계산하기 위한 수단과;
    상기 입력신호가 수신되어온 시간의 길이를 분석하여 상기 시간 길이의 함수로써 리샘플링율을 선택하는 비교기와;
    상기 선택된 리샘플링율로 상기 입력신호의 디지털 표현을 리샘플링하는 디지털 신호 처리기와;
    상기 리샘플링된 입력신호의 세그먼트를 주기적으로 추출하고 상기 추출된 세그먼트들을 상기 기준음의 기본주파수와 실질적으로 동일한 비율로 복사함으로써 상기 음색 시프트된 출력신호를 생성하는 피치 시프터를 포함하는 것을 특징으로하는 입력신호로부터 음색 및/또는 피치 시프트된 출력신호를 생성하는 시스템.
  36. 입력신호로부터 음색 및/또는 피치 시프트된 출력신호를 생성하는 시스템에 있어서,
    제 1 비율로 샘플링된 상기 입력신호의 디지털 표현을 수신하기 위한 수단과;
    상기 음색 시프트된 출력신호의 소정의 기본주파수를 정의하는 기준음을 수신하기 위한 수단과;
    상기 입력신호의 디지털 표현의 진폭을 분석하여 상기 진폭의 함수로써 리샘플링율을 선택하는 비교기와;
    상기 선택된 리샘플링율로 상기 입력신호의 디지털 표현을 리샘플링하는 디지털 신호 처리기와;
    상기 리샘플링된 입력신호의 세그먼트를 주기적으로 추출하고 상기 세그먼트들을 상기 기준음의 기본주파수와 실질적으로 동일한 비율로 복사함으로써 상기 음색 시프트된 출력신호를 생성하는 피치 시프터를 포함하는 것을 특징으로 하는 입력신호로부터 음색 및/또는 피치 시프트된 출력신호를 생성하는 시스템.
KR1019960705167A 1995-01-18 1996-01-18 오디오 신호의 음색 및/또는 피치를 변화시키기 위한 방법 및 장치 KR100368046B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
US08/374,110 US5567901A (en) 1995-01-18 1995-01-18 Method and apparatus for changing the timbre and/or pitch of audio signals
US08/374,110 1995-01-18

Publications (1)

Publication Number Publication Date
KR100368046B1 true KR100368046B1 (ko) 2003-03-15

Family

ID=23475324

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1019960705167A KR100368046B1 (ko) 1995-01-18 1996-01-18 오디오 신호의 음색 및/또는 피치를 변화시키기 위한 방법 및 장치

Country Status (10)

Country Link
US (3) US5567901A (ko)
EP (1) EP0750776B1 (ko)
JP (1) JPH11502632A (ko)
KR (1) KR100368046B1 (ko)
CN (1) CN1106001C (ko)
AT (1) ATE205324T1 (ko)
AU (1) AU4428196A (ko)
BR (1) BR9603819A (ko)
DE (1) DE69614938T2 (ko)
WO (1) WO1996022592A1 (ko)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200047198A (ko) * 2018-10-26 2020-05-07 주식회사 크리에이티브마인드 자동작곡장치 및 그 방법

Families Citing this family (82)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6046395A (en) * 1995-01-18 2000-04-04 Ivl Technologies Ltd. Method and apparatus for changing the timbre and/or pitch of audio signals
US5567901A (en) * 1995-01-18 1996-10-22 Ivl Technologies Ltd. Method and apparatus for changing the timbre and/or pitch of audio signals
US5712437A (en) * 1995-02-13 1998-01-27 Yamaha Corporation Audio signal processor selectively deriving harmony part from polyphonic parts
US5831193A (en) * 1995-06-19 1998-11-03 Yamaha Corporation Method and device for forming a tone waveform by combined use of different waveform sample forming resolutions
US6326537B1 (en) 1995-09-29 2001-12-04 Yamaha Corporation Method and apparatus for generating musical tone waveforms by user input of sample waveform frequency
US5792971A (en) * 1995-09-29 1998-08-11 Opcode Systems, Inc. Method and system for editing digital audio information with music-like parameters
JP3102335B2 (ja) * 1996-01-18 2000-10-23 ヤマハ株式会社 フォルマント変換装置およびカラオケ装置
JP3163984B2 (ja) * 1996-06-28 2001-05-08 ヤマハ株式会社 楽音発生装置
JPH1020873A (ja) * 1996-07-08 1998-01-23 Sony Corp 音声信号処理装置
JPH1074098A (ja) * 1996-09-02 1998-03-17 Yamaha Corp 音声変換装置
US6081781A (en) * 1996-09-11 2000-06-27 Nippon Telegragh And Telephone Corporation Method and apparatus for speech synthesis and program recorded medium
US5744739A (en) * 1996-09-13 1998-04-28 Crystal Semiconductor Wavetable synthesizer and operating method using a variable sampling rate approximation
US6096960A (en) * 1996-09-13 2000-08-01 Crystal Semiconductor Corporation Period forcing filter for preprocessing sound samples for usage in a wavetable synthesizer
US5917917A (en) * 1996-09-13 1999-06-29 Crystal Semiconductor Corporation Reduced-memory reverberation simulator in a sound synthesizer
US5872727A (en) * 1996-11-19 1999-02-16 Industrial Technology Research Institute Pitch shift method with conserved timbre
US5911129A (en) * 1996-12-13 1999-06-08 Intel Corporation Audio font used for capture and rendering
JP3910702B2 (ja) 1997-01-20 2007-04-25 ローランド株式会社 波形発生装置
US6336092B1 (en) * 1997-04-28 2002-01-01 Ivl Technologies Ltd Targeted vocal transformation
CN1064157C (zh) * 1997-05-27 2001-04-04 凌阳科技股份有限公司 分轨最佳化周期记录的音调产生器
JP3451900B2 (ja) * 1997-09-22 2003-09-29 ヤマハ株式会社 ピッチ/テンポ変換方法及び装置
US6088461A (en) * 1997-09-26 2000-07-11 Crystal Semiconductor Corporation Dynamic volume control system
US6091824A (en) * 1997-09-26 2000-07-18 Crystal Semiconductor Corporation Reduced-memory early reflection and reverberation simulator and method
US6031173A (en) * 1997-09-30 2000-02-29 Kawai Musical Inst. Mfg. Co., Ltd. Apparatus for generating musical tones using impulse response signals
JP3459760B2 (ja) * 1997-09-30 2003-10-27 株式会社河合楽器製作所 楽音生成装置及び楽音発生方法
US5973252A (en) * 1997-10-27 1999-10-26 Auburn Audio Technologies, Inc. Pitch detection and intonation correction apparatus and method
JP3502247B2 (ja) * 1997-10-28 2004-03-02 ヤマハ株式会社 音声変換装置
US5936181A (en) * 1998-05-13 1999-08-10 International Business Machines Corporation System and method for applying a role-and register-preserving harmonic transformation to musical pitches
US6610917B2 (en) * 1998-05-15 2003-08-26 Lester F. Ludwig Activity indication, external source, and processing loop provisions for driven vibrating-element environments
TW430778B (en) * 1998-06-15 2001-04-21 Yamaha Corp Voice converter with extraction and modification of attribute data
JP2000330599A (ja) * 1999-05-21 2000-11-30 Sony Corp 信号処理方法及び装置、並びに情報提供媒体
US6148175A (en) * 1999-06-22 2000-11-14 Freedland; Marat Audio entertainment system
JP3365354B2 (ja) * 1999-06-30 2003-01-08 ヤマハ株式会社 音声信号または楽音信号の処理装置
US6124542A (en) * 1999-07-08 2000-09-26 Ati International Srl Wavefunction sound sampling synthesis
JP2001043603A (ja) * 1999-07-29 2001-02-16 Pioneer Electronic Corp 音楽機器
JP2001075565A (ja) 1999-09-07 2001-03-23 Roland Corp 電子楽器
US6549884B1 (en) * 1999-09-21 2003-04-15 Creative Technology Ltd. Phase-vocoder pitch-shifting
JP2001125568A (ja) 1999-10-28 2001-05-11 Roland Corp 電子楽器
EP1340219A4 (en) * 2000-12-05 2005-04-13 Amusetec Co Ltd METHOD OF ANALYZING MUSIC USING INSTRUMENT SOUNDS
US7232949B2 (en) 2001-03-26 2007-06-19 Sonic Network, Inc. System and method for music creation and rearrangement
DE60122296T2 (de) * 2001-05-28 2007-08-30 Texas Instruments Inc., Dallas Programmierbarer Melodienerzeuger
DE10148351B4 (de) * 2001-09-29 2007-06-21 Grundig Multimedia B.V. Verfahren und Vorrichtung zur Auswahl eines Klangalgorithmus
US20050190199A1 (en) * 2001-12-21 2005-09-01 Hartwell Brown Apparatus and method for identifying and simultaneously displaying images of musical notes in music and producing the music
US6961602B2 (en) 2001-12-31 2005-11-01 Biosense Webster, Inc. Catheter having multiple spines each having electrical mapping and location sensing capabilities
JP3649197B2 (ja) * 2002-02-13 2005-05-18 ヤマハ株式会社 楽音生成装置および楽音生成方法
DE10302448B4 (de) * 2003-01-21 2006-08-17 Houpert, Jörg Verfahren zur synchronisierten Veränderung der Tonhöhe und -länge eines Audiosignals
US20030182106A1 (en) * 2002-03-13 2003-09-25 Spectral Design Method and device for changing the temporal length and/or the tone pitch of a discrete audio signal
FR2839836B1 (fr) * 2002-05-16 2004-09-10 Cit Alcatel Terminal de telecommunication permettant de modifier la voix transmise lors d'une communication telephonique
US7089045B2 (en) * 2002-08-30 2006-08-08 Biosense Webster, Inc. Catheter and method for mapping Purkinje fibers
ES2375183T3 (es) * 2002-12-30 2012-02-27 Koninklijke Philips Electronics N.V. Aparato de reproducción de audio, sistema de realimentación y método.
JP4076887B2 (ja) * 2003-03-24 2008-04-16 ローランド株式会社 ボコーダ装置
US7003342B2 (en) * 2003-06-02 2006-02-21 Biosense Webster, Inc. Catheter and method for mapping a pulmonary vein
US7818048B2 (en) 2003-06-02 2010-10-19 Biosense Webster, Inc. Catheter and method for mapping a pulmonary vein
KR100594267B1 (ko) * 2004-03-29 2006-06-30 삼성전자주식회사 샘플링 레이트 변환 방법, 샘플링 레이트 변환 장치, 및그 장치를 포함하는 오디오 재생 시스템
US7865255B2 (en) * 2004-03-31 2011-01-04 Mstar Semiconductor, Inc. Audio buffering system and method of buffering audio in a multimedia receiver
US8383867B2 (en) * 2004-04-29 2013-02-26 Honeywell International Inc. Method for producing fluorinated organic compounds
US7179979B2 (en) * 2004-06-02 2007-02-20 Alan Steven Howarth Frequency spectrum conversion to natural harmonic frequencies process
US7598447B2 (en) * 2004-10-29 2009-10-06 Zenph Studios, Inc. Methods, systems and computer program products for detecting musical notes in an audio signal
US8476518B2 (en) * 2004-11-30 2013-07-02 Stmicroelectronics Asia Pacific Pte. Ltd. System and method for generating audio wavetables
US20060187770A1 (en) * 2005-02-23 2006-08-24 Broadcom Corporation Method and system for playing audio at a decelerated rate using multiresolution analysis technique keeping pitch constant
JP4734961B2 (ja) * 2005-02-28 2011-07-27 カシオ計算機株式会社 音響効果付与装置、及びプログラム
JP4645241B2 (ja) * 2005-03-10 2011-03-09 ヤマハ株式会社 音声処理装置およびプログラム
JP4247194B2 (ja) * 2005-03-23 2009-04-02 パナソニック株式会社 データ変換処理装置
US20060228683A1 (en) * 2005-04-08 2006-10-12 Shanghai Multak Technology Development Co., Ltd. Multi-functional karaoke microphone
KR100735444B1 (ko) * 2005-07-18 2007-07-04 삼성전자주식회사 오디오데이터 및 악보이미지 추출방법
WO2007029633A1 (ja) * 2005-09-06 2007-03-15 Nec Corporation 音声合成装置及び方法とプログラム
US7563975B2 (en) 2005-09-14 2009-07-21 Mattel, Inc. Music production system
DE102008013172B4 (de) 2008-03-07 2010-07-08 Neubäcker, Peter Verfahren zur klangobjektorientierten Analyse und zur notenobjektorientierten Bearbeitung polyphoner Klangaufnahmen
EP2107556A1 (en) * 2008-04-04 2009-10-07 Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. Audio transform coding using pitch correction
US7968785B2 (en) * 2008-06-30 2011-06-28 Alan Steven Howarth Frequency spectrum conversion to natural harmonic frequencies process
US20110017048A1 (en) * 2009-07-22 2011-01-27 Richard Bos Drop tune system
US10019995B1 (en) 2011-03-01 2018-07-10 Alice J. Stiebel Methods and systems for language learning based on a series of pitch patterns
US11062615B1 (en) 2011-03-01 2021-07-13 Intelligibility Training LLC Methods and systems for remote language learning in a pandemic-aware world
US9314299B2 (en) 2012-03-21 2016-04-19 Biosense Webster (Israel) Ltd. Flower catheter for mapping and ablating veinous and other tubular locations
JP5772739B2 (ja) * 2012-06-21 2015-09-02 ヤマハ株式会社 音声処理装置
US9123353B2 (en) * 2012-12-21 2015-09-01 Harman International Industries, Inc. Dynamically adapted pitch correction based on audio input
WO2017061577A1 (ja) * 2015-10-09 2017-04-13 ソニー株式会社 信号処理装置、信号処理方法及びコンピュータプログラム
WO2017150103A1 (ja) * 2016-02-29 2017-09-08 パナソニックIpマネジメント株式会社 音声処理装置、画像処理装置、マイクアレイシステム、及び音声処理方法
EP3485493A4 (en) * 2016-07-13 2020-06-24 Smule, Inc. CROWDSOURCING TECHNOLOGY FOR THE PRODUCTION OF TONE HEIGHT TRACKS
CN107863095A (zh) * 2017-11-21 2018-03-30 广州酷狗计算机科技有限公司 音频信号处理方法、装置和存储介质
EP3839947A1 (en) 2019-12-20 2021-06-23 SoundHound, Inc. Training a voice morphing apparatus
US11600284B2 (en) 2020-01-11 2023-03-07 Soundhound, Inc. Voice morphing apparatus having adjustable parameters
CN114822580B (zh) * 2022-04-28 2024-06-18 北京奇音妙想科技有限公司 基于重采样加速计算的修正音频的音高及音色的方法及装置

Family Cites Families (46)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US3600516A (en) * 1969-06-02 1971-08-17 Ibm Voicing detection and pitch extraction system
US3539701A (en) * 1967-07-07 1970-11-10 Ursula A Milde Electrical musical instrument
US3929051A (en) * 1973-10-23 1975-12-30 Chicago Musical Instr Co Multiplex harmony generator
US3999456A (en) * 1974-06-04 1976-12-28 Matsushita Electric Industrial Co., Ltd. Voice keying system for a voice controlled musical instrument
US3986423A (en) * 1974-12-11 1976-10-19 Oberheim Electronics Inc. Polyphonic music synthesizer
US4004096A (en) * 1975-02-18 1977-01-18 The United States Of America As Represented By The Secretary Of The Army Process for extracting pitch information
CA1056504A (en) * 1975-04-02 1979-06-12 Visvaldis A. Vitols Keyword detection in continuous speech using continuous asynchronous correlation
US4076960A (en) * 1976-10-27 1978-02-28 Texas Instruments Incorporated CCD speech processor
US4279185A (en) * 1977-06-07 1981-07-21 Alonso Sydney A Electronic music sampling techniques
US4142066A (en) * 1977-12-27 1979-02-27 Bell Telephone Laboratories, Incorporated Suppression of idle channel noise in delta modulation systems
US4508002A (en) * 1979-01-15 1985-04-02 Norlin Industries Method and apparatus for improved automatic harmonization
US4311076A (en) * 1980-01-07 1982-01-19 Whirlpool Corporation Electronic musical instrument with harmony generation
US4387618A (en) * 1980-06-11 1983-06-14 Baldwin Piano & Organ Co. Harmony generator for electronic organ
JPS5748791A (en) * 1980-09-08 1982-03-20 Nippon Musical Instruments Mfg Electronic musical instrument
CH657468A5 (de) * 1981-02-25 1986-08-29 Clayton Found Res Bedienungsgeraet an einem mit wenigstens einem synthesizer versehenen elektronischen musikinstrument.
US4464784A (en) * 1981-04-30 1984-08-07 Eventide Clockworks, Inc. Pitch changer with glitch minimizer
JPS58102298A (ja) * 1981-12-14 1983-06-17 キヤノン株式会社 電子機器
JPS58208914A (ja) * 1982-05-31 1983-12-05 Toshiba Ii M I Kk オーディオ用記録媒体の記録再生装置およびそれに使用する記録媒体
US4561102A (en) * 1982-09-20 1985-12-24 At&T Bell Laboratories Pitch detector for speech analysis
US4802223A (en) * 1983-11-03 1989-01-31 Texas Instruments Incorporated Low data rate speech encoding employing syllable pitch patterns
US5005204A (en) * 1985-07-18 1991-04-02 Raytheon Company Digital sound synthesizer and method
US4688464A (en) * 1986-01-16 1987-08-25 Ivl Technologies Ltd. Pitch detection apparatus
US4771671A (en) * 1987-01-08 1988-09-20 Breakaway Technologies, Inc. Entertainment and creative expression device for easily playing along to background music
JPH0670876B2 (ja) * 1987-02-10 1994-09-07 ソニー株式会社 光学ディスク及び光学ディスク再生装置
JPS6437995A (en) * 1987-08-04 1989-02-08 Mitsubishi Electric Corp Horizontal hook of sewing machine
US5048390A (en) * 1987-09-03 1991-09-17 Yamaha Corporation Tone visualizing apparatus
KR930010396B1 (ko) * 1988-01-06 1993-10-23 야마하 가부시끼가이샤 악음신호 발생장치
US4991218A (en) * 1988-01-07 1991-02-05 Yield Securities, Inc. Digital signal processor for providing timbral change in arbitrary audio and dynamically controlled stored digital audio signals
US4915001A (en) * 1988-08-01 1990-04-10 Homer Dillard Voice to music converter
US4998960A (en) * 1988-09-30 1991-03-12 Floyd Rose Music synthesizer
CN1013525B (zh) * 1988-11-16 1991-08-14 中国科学院声学研究所 认人与不认人实时语音识别的方法和装置
JP2853147B2 (ja) * 1989-03-27 1999-02-03 松下電器産業株式会社 音程変換装置
US5029509A (en) * 1989-05-10 1991-07-09 Board Of Trustees Of The Leland Stanford Junior University Musical synthesizer combining deterministic and stochastic waveforms
US5092216A (en) * 1989-08-17 1992-03-03 Wayne Wadhams Method and apparatus for studying music
US5194681A (en) * 1989-09-22 1993-03-16 Yamaha Corporation Musical tone generating apparatus
US5054360A (en) * 1990-11-01 1991-10-08 International Business Machines Corporation Method and apparatus for simultaneous output of digital audio and midi synthesized music
JP3175179B2 (ja) * 1991-03-19 2001-06-11 カシオ計算機株式会社 デジタルピッチシフター
US5428708A (en) * 1991-06-21 1995-06-27 Ivl Technologies Ltd. Musical entertainment system
US5231671A (en) * 1991-06-21 1993-07-27 Ivl Technologies, Ltd. Method and apparatus for generating vocal harmonies
JP3435168B2 (ja) * 1991-11-18 2003-08-11 パイオニア株式会社 音程制御装置及び方法
WO1993018505A1 (en) * 1992-03-02 1993-09-16 The Walt Disney Company Voice transformation system
JP3197975B2 (ja) * 1993-02-26 2001-08-13 株式会社エヌ・ティ・ティ・データ ピッチ制御方法及び装置
US5536902A (en) * 1993-04-14 1996-07-16 Yamaha Corporation Method of and apparatus for analyzing and synthesizing a sound by extracting and controlling a sound parameter
US5644677A (en) * 1993-09-13 1997-07-01 Motorola, Inc. Signal processing system for performing real-time pitch shifting and method therefor
US5567901A (en) * 1995-01-18 1996-10-22 Ivl Technologies Ltd. Method and apparatus for changing the timbre and/or pitch of audio signals
JP3102335B2 (ja) * 1996-01-18 2000-10-23 ヤマハ株式会社 フォルマント変換装置およびカラオケ装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR20200047198A (ko) * 2018-10-26 2020-05-07 주식회사 크리에이티브마인드 자동작곡장치 및 그 방법
KR102269591B1 (ko) * 2018-10-26 2021-06-24 주식회사 크리에이티브마인드 자동작곡장치 및 그 방법

Also Published As

Publication number Publication date
DE69614938D1 (de) 2001-10-11
US5986198A (en) 1999-11-16
EP0750776A1 (en) 1997-01-02
WO1996022592A1 (en) 1996-07-25
BR9603819A (pt) 1997-10-14
US5641926A (en) 1997-06-24
DE69614938T2 (de) 2002-04-25
JPH11502632A (ja) 1999-03-02
EP0750776B1 (en) 2001-09-05
CN1106001C (zh) 2003-04-16
US5567901A (en) 1996-10-22
CN1145679A (zh) 1997-03-19
AU4428196A (en) 1996-08-07
ATE205324T1 (de) 2001-09-15

Similar Documents

Publication Publication Date Title
KR100368046B1 (ko) 오디오 신호의 음색 및/또는 피치를 변화시키기 위한 방법 및 장치
US5301259A (en) Method and apparatus for generating vocal harmonies
US5792971A (en) Method and system for editing digital audio information with music-like parameters
US6046395A (en) Method and apparatus for changing the timbre and/or pitch of audio signals
US5428708A (en) Musical entertainment system
Cowell New musical resources
Prame Vibrato extent and intonation in professional Western lyric singing
US6307140B1 (en) Music apparatus with pitch shift of input voice dependently on timbre change
US6881888B2 (en) Waveform production method and apparatus using shot-tone-related rendition style waveform
WO1997007476A2 (en) Method and apparatus for formatting digital audio data
US8735709B2 (en) Generation of harmony tone
JPH027078B2 (ko)
Vercoe Extended Csound
JP2745865B2 (ja) 楽音合成装置
EP0691019B1 (en) Musical entertainment system
Schoonderwaldt et al. Towards a rule-based model for violin vibrato
CA2090948C (en) Musical entertainment system
Ternström et al. Monteverdi’s vespers. A case study in music synthesis
Pluta Impact on the sensation of consonance by controlling spectral components of simultaneous pitches consisting a chord in sound synthesis using the additive method
Boulanger Introduction to sound design in csound
Schneider Check for Aspects of Sound Structure in Historic Organs of Europe Albrecht Schneider (~) University of Hamburg, Hamburg, Germany
JP3348819B2 (ja) 電子楽器
Mitchell Basicsynth
JP5659501B2 (ja) 電子音楽装置及びプログラム
Bastien Voice specific signal processing tools

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: 20051222

Year of fee payment: 4

LAPS Lapse due to unpaid annual fee