JPH10171459A - 波形信号処理方法および装置 - Google Patents
波形信号処理方法および装置Info
- Publication number
- JPH10171459A JPH10171459A JP8335547A JP33554796A JPH10171459A JP H10171459 A JPH10171459 A JP H10171459A JP 8335547 A JP8335547 A JP 8335547A JP 33554796 A JP33554796 A JP 33554796A JP H10171459 A JPH10171459 A JP H10171459A
- Authority
- JP
- Japan
- Prior art keywords
- waveform signal
- time
- characteristic
- waveform
- pitch
- Prior art date
- Legal status (The legal status 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 status listed.)
- Pending
Links
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
(57)【要約】
【課題】本発明は時系列音の修正等を行う波形信号処理
方法および装置に関し、自分の声(歌声など)や演奏音
等などの時系列音を、模範となる時系列音に簡単に似せ
ることができるようにすることを目的とする。 【解決手段】入力された時系列音の入力波形信号につい
てその経過に従って特質を抽出する入力波形特質抽出過
程と、基準となる時系列音の基準波形信号についてその
経過に従った特質を取得する基準波形特質取得過程と、
該入力波形特質抽出過程で抽出した各時間経過での入力
波形信号の特質を、対応する時間経過位置の基準波形信
号の特質に基づいて変更する特質変更過程とを備える。
方法および装置に関し、自分の声(歌声など)や演奏音
等などの時系列音を、模範となる時系列音に簡単に似せ
ることができるようにすることを目的とする。 【解決手段】入力された時系列音の入力波形信号につい
てその経過に従って特質を抽出する入力波形特質抽出過
程と、基準となる時系列音の基準波形信号についてその
経過に従った特質を取得する基準波形特質取得過程と、
該入力波形特質抽出過程で抽出した各時間経過での入力
波形信号の特質を、対応する時間経過位置の基準波形信
号の特質に基づいて変更する特質変更過程とを備える。
Description
【0001】
【発明の属する技術分野】本発明は波形信号処理方法お
よび装置に関する。本発明の波形信号処理方法および装
置は、使用者が自分で入力した歌声,声あるいは楽器音
を上手な人の歌声、声あるいは楽器音に似せて修正する
ことに用いることができる。
よび装置に関する。本発明の波形信号処理方法および装
置は、使用者が自分で入力した歌声,声あるいは楽器音
を上手な人の歌声、声あるいは楽器音に似せて修正する
ことに用いることができる。
【0002】
【従来の技術】誰もが上手に歌いたいという願望がある
が、なかなかプロ歌手のようには上手に歌えない。従
来、使用者が自分で入力した歌声を、予め用意してある
上手な歌声と比較してその上手、下手を採点するいわゆ
るカラオケ採点装置がある。歌の下手な人が上手になる
ためには、このようなカラオケ採点装置の採点を参考に
して、模範となる上手な歌声に似るよう練習をつむ必要
があるので、簡単に自分の声で上手な歌声を得ることは
できない。また楽器演奏を行う場合も同様に、模範演奏
を参考にして練習をつまなければ上手な演奏はできな
い。
が、なかなかプロ歌手のようには上手に歌えない。従
来、使用者が自分で入力した歌声を、予め用意してある
上手な歌声と比較してその上手、下手を採点するいわゆ
るカラオケ採点装置がある。歌の下手な人が上手になる
ためには、このようなカラオケ採点装置の採点を参考に
して、模範となる上手な歌声に似るよう練習をつむ必要
があるので、簡単に自分の声で上手な歌声を得ることは
できない。また楽器演奏を行う場合も同様に、模範演奏
を参考にして練習をつまなければ上手な演奏はできな
い。
【0003】
【発明が解決しようとする課題】本発明はかかる問題点
に鑑みてなされたものであり、自分の声(歌声など)や
演奏音等などの時系列音を、模範となる時系列音に簡単
に似せることができるようにすることを目的とする。
に鑑みてなされたものであり、自分の声(歌声など)や
演奏音等などの時系列音を、模範となる時系列音に簡単
に似せることができるようにすることを目的とする。
【0004】
【課題を解決するための手段】かかる時系列音として例
えば歌声を例として本発明の原理を簡単に説明すると、
上手な人の歌とあまり上手でない人の歌との差異を形成
するポイントとして抑揚の付け方が考えられる。そこ
で、上手な人の歌声信号からレベル、ピッチなどの特質
や各音節の時間長などの特質からなる抑揚を時系列に抽
出し、抽出した抑揚に基づいて自分の歌声信号を上手な
人の音声信号の抑揚に似せるように修正することによ
り、自分の声で上手な人が歌っているような歌声を作成
することができる。これは歌声に限らず、楽器音にも適
用できるものである。
えば歌声を例として本発明の原理を簡単に説明すると、
上手な人の歌とあまり上手でない人の歌との差異を形成
するポイントとして抑揚の付け方が考えられる。そこ
で、上手な人の歌声信号からレベル、ピッチなどの特質
や各音節の時間長などの特質からなる抑揚を時系列に抽
出し、抽出した抑揚に基づいて自分の歌声信号を上手な
人の音声信号の抑揚に似せるように修正することによ
り、自分の声で上手な人が歌っているような歌声を作成
することができる。これは歌声に限らず、楽器音にも適
用できるものである。
【0005】かかる考え方に基づいて、本発明において
は、上述の課題を解決するために、一つの形態として、
入力された時系列音の入力波形信号についてその経過に
従って特質を抽出する入力波形特質抽出過程と、基準と
なる時系列音の基準波形信号についてその経過に従った
特質を取得する基準波形特質取得過程と、該入力波形特
質抽出過程で抽出した各経過位置の入力波形信号の特質
を、対応する経過位置の基準波形信号の特質に基づいて
変更する特質変更過程とを備えた波形信号処理方法が提
供される。ここで、入力波形信号と基準波形信号の特質
は、波形信号が例えば歌声である場合には、歌声の音量
レベル、ピッチ、各音節の時間長、あるいはそれらの任
意の組合せなどとしたり、波形信号が例えば楽器音であ
る場合には、楽器音の音量レベル、ピッチ、音符の時間
長、あるいはそれらの任意の組合せなどとすることがで
きる。この波形信号処理方法では、特質変更過程におい
て、該入力波形特質抽出過程で抽出した各時間経過での
入力波形信号の特質を、基準波形特質取得過程で取得し
た対応する時間経過位置の基準波形信号の特質に基づい
て例えば両者が同じになるように変更する。これにより
入力波形信号は基準波形信号の特質を模倣できる。
は、上述の課題を解決するために、一つの形態として、
入力された時系列音の入力波形信号についてその経過に
従って特質を抽出する入力波形特質抽出過程と、基準と
なる時系列音の基準波形信号についてその経過に従った
特質を取得する基準波形特質取得過程と、該入力波形特
質抽出過程で抽出した各経過位置の入力波形信号の特質
を、対応する経過位置の基準波形信号の特質に基づいて
変更する特質変更過程とを備えた波形信号処理方法が提
供される。ここで、入力波形信号と基準波形信号の特質
は、波形信号が例えば歌声である場合には、歌声の音量
レベル、ピッチ、各音節の時間長、あるいはそれらの任
意の組合せなどとしたり、波形信号が例えば楽器音であ
る場合には、楽器音の音量レベル、ピッチ、音符の時間
長、あるいはそれらの任意の組合せなどとすることがで
きる。この波形信号処理方法では、特質変更過程におい
て、該入力波形特質抽出過程で抽出した各時間経過での
入力波形信号の特質を、基準波形特質取得過程で取得し
た対応する時間経過位置の基準波形信号の特質に基づい
て例えば両者が同じになるように変更する。これにより
入力波形信号は基準波形信号の特質を模倣できる。
【0006】また本発明においては、入力された時系列
音の入力波形信号を時間軸上で所定単位の時間区分(例
えば音節など)で区切って各時間区分の入力波形信号の
特質を抽出する入力波形特質抽出過程と、基準となる時
系列音の基準波形信号を時間軸上で所定単位の時間区分
で区切った各時間区分の基準波形信号の特質を取得する
基準波形特質取得過程と、該入力波形特質抽出過程で抽
出した各時間区分の入力波形信号の特質を、対応する時
間経過位置の時間区分の基準波形信号の特質に基づいて
変更する特質変更過程とを備えた波形信号処理方法が提
供される。この波形信号処理方法では、特質変更過程に
おいて、該入力波形特質抽出過程で抽出した各時間区分
の入力波形信号の特質を、基準波形特質取得過程で取得
した対応する時間経過位置の時間区分の基準波形信号の
特質に基づいて例えば両者が同じになるように変更す
る。これにより入力波形信号は基準波形信号の特質を模
倣できる。
音の入力波形信号を時間軸上で所定単位の時間区分(例
えば音節など)で区切って各時間区分の入力波形信号の
特質を抽出する入力波形特質抽出過程と、基準となる時
系列音の基準波形信号を時間軸上で所定単位の時間区分
で区切った各時間区分の基準波形信号の特質を取得する
基準波形特質取得過程と、該入力波形特質抽出過程で抽
出した各時間区分の入力波形信号の特質を、対応する時
間経過位置の時間区分の基準波形信号の特質に基づいて
変更する特質変更過程とを備えた波形信号処理方法が提
供される。この波形信号処理方法では、特質変更過程に
おいて、該入力波形特質抽出過程で抽出した各時間区分
の入力波形信号の特質を、基準波形特質取得過程で取得
した対応する時間経過位置の時間区分の基準波形信号の
特質に基づいて例えば両者が同じになるように変更す
る。これにより入力波形信号は基準波形信号の特質を模
倣できる。
【0007】上記波形信号処理方法においては、前記波
形信号の特質として音量レベルまたは時間区分の時間長
が用いられ、前記特質変更過程は、入力波形信号の特質
を、各時間区分の入力波形信号の特質と対応する時間経
過位置の時間区分の基準波形信号の特質の比に基づいて
変更するように構成できる。
形信号の特質として音量レベルまたは時間区分の時間長
が用いられ、前記特質変更過程は、入力波形信号の特質
を、各時間区分の入力波形信号の特質と対応する時間経
過位置の時間区分の基準波形信号の特質の比に基づいて
変更するように構成できる。
【0008】また本発明においては、他の形態として、
基準となる時系列音の基準波形信号の時間軸上の位置を
所定の変化量で変化して順次指定する第1の時間情報を
生成するとともに、該基準波形信号の所定時間区分の時
間長および該入力波形信号の所定時間区分の時間長の双
方に基づいた変化量で順次変化して該入力波形信号の時
間軸上の位置を順次指定する第2の時間情報を生成する
時間情報生成過程と、該基準波形信号の特質として該第
1の時間情報によって指定される時間位置におけるピッ
チを取得する基準波形特質取得過程と、該第2の時間情
報によって指定される時間位置における該入力波形信号
のピッチを該第1の時間情報によって指定される対応す
る時間位置における該基準波形信号のピッチに基づいて
変更する特質変更過程とを備えた波形信号処理方法が提
供される。この波形信号処理方法では、第1の時間情報
と第2の時間情報を用いることで、入力波形信号のある
時間位置に対してそれに対応する基準波形信号の時間位
置を知ることができ、それにより入力波形信号のある時
間位置におけるピッチを基準波形信号の対応する時間位
置におけるピッチに基づいて変更することができる。
基準となる時系列音の基準波形信号の時間軸上の位置を
所定の変化量で変化して順次指定する第1の時間情報を
生成するとともに、該基準波形信号の所定時間区分の時
間長および該入力波形信号の所定時間区分の時間長の双
方に基づいた変化量で順次変化して該入力波形信号の時
間軸上の位置を順次指定する第2の時間情報を生成する
時間情報生成過程と、該基準波形信号の特質として該第
1の時間情報によって指定される時間位置におけるピッ
チを取得する基準波形特質取得過程と、該第2の時間情
報によって指定される時間位置における該入力波形信号
のピッチを該第1の時間情報によって指定される対応す
る時間位置における該基準波形信号のピッチに基づいて
変更する特質変更過程とを備えた波形信号処理方法が提
供される。この波形信号処理方法では、第1の時間情報
と第2の時間情報を用いることで、入力波形信号のある
時間位置に対してそれに対応する基準波形信号の時間位
置を知ることができ、それにより入力波形信号のある時
間位置におけるピッチを基準波形信号の対応する時間位
置におけるピッチに基づいて変更することができる。
【0009】また本発明においては、また他の形態とし
て、基準となる時系列音の基準波形信号についてその経
過に従った特質として少なくともピッチを取得する基準
波形特質取得過程と、入力された時系列音の入力波形信
号を時間軸上で所定周期を単位とする切出し区間で切り
出す入力波形切出し過程と、該入力波形信号の各経過位
置での特質を対応する経過位置の基準波形信号の特質に
基づいて変更する過程であって、少なくとも該切り出し
た各切出し区間の入力波形信号のピッチを対応する経過
位置の基準波形信号のピッチに基づいて変更する特質変
更過程とを備えた波形信号処理方法が提供される。この
ように構成することで、少なくともピッチに関しては、
入力波形信号からピッチを抽出しなくとも、入力波形信
号のピッチを基準波形信号のピッチに基づいて変更する
ことが可能になる。
て、基準となる時系列音の基準波形信号についてその経
過に従った特質として少なくともピッチを取得する基準
波形特質取得過程と、入力された時系列音の入力波形信
号を時間軸上で所定周期を単位とする切出し区間で切り
出す入力波形切出し過程と、該入力波形信号の各経過位
置での特質を対応する経過位置の基準波形信号の特質に
基づいて変更する過程であって、少なくとも該切り出し
た各切出し区間の入力波形信号のピッチを対応する経過
位置の基準波形信号のピッチに基づいて変更する特質変
更過程とを備えた波形信号処理方法が提供される。この
ように構成することで、少なくともピッチに関しては、
入力波形信号からピッチを抽出しなくとも、入力波形信
号のピッチを基準波形信号のピッチに基づいて変更する
ことが可能になる。
【0010】この波形信号処理方法は、該基準波形信号
の時間軸上の位置を所定の変化量で変化して順次指定す
る第1の時間情報を生成するとともに、該基準波形信号
の所定時間区分の時間長および該入力波形信号の所定時
間区分の時間長の双方に基づいた変化量で変化して該入
力波形信号の時間軸上の位置を順次指定する第2の時間
情報を生成する時間情報生成過程を備え、前記基準波形
特質取得過程は、該基準波形信号について、該第1の時
間情報によって指定される時間位置におけるピッチを該
基準波形信号の特質として取得するようにし、前記特質
変更過程は、該第2の時間情報によって指定される時間
位置における該入力波形信号のピッチを該第1の時間情
報によって指定される時間位置における該基準波形信号
のピッチに基づいて変更するように構成できる。このよ
うに構成することで、前記同様に、第1の時間情報と第
2の時間情報を用いることで、入力波形信号のある時間
位置に対してそれに対応する基準波形信号の時間位置を
知ることができ、それにより入力波形信号のある時間位
置におけるピッチを基準波形信号の対応する時間位置に
おけるピッチに基づいて変更することができる。
の時間軸上の位置を所定の変化量で変化して順次指定す
る第1の時間情報を生成するとともに、該基準波形信号
の所定時間区分の時間長および該入力波形信号の所定時
間区分の時間長の双方に基づいた変化量で変化して該入
力波形信号の時間軸上の位置を順次指定する第2の時間
情報を生成する時間情報生成過程を備え、前記基準波形
特質取得過程は、該基準波形信号について、該第1の時
間情報によって指定される時間位置におけるピッチを該
基準波形信号の特質として取得するようにし、前記特質
変更過程は、該第2の時間情報によって指定される時間
位置における該入力波形信号のピッチを該第1の時間情
報によって指定される時間位置における該基準波形信号
のピッチに基づいて変更するように構成できる。このよ
うに構成することで、前記同様に、第1の時間情報と第
2の時間情報を用いることで、入力波形信号のある時間
位置に対してそれに対応する基準波形信号の時間位置を
知ることができ、それにより入力波形信号のある時間位
置におけるピッチを基準波形信号の対応する時間位置に
おけるピッチに基づいて変更することができる。
【0011】上記波形信号処理方法においては、前記基
準波形特質取得過程は、入力された基準波形信号の時間
経過に従った特質をその基準波形信号自体から抽出する
ものとするよう構成できる。あるいは、前記基準波形特
質取得過程は、予め抽出してある基準波形信号の時間経
過に従った特質を提供する手段から該基準波形信号の特
質を取得するよう構成できる。また本発明にかかる波形
信号処理装置は、上記に記載のいずれかの波形信号処理
方法を行うよう構成される。
準波形特質取得過程は、入力された基準波形信号の時間
経過に従った特質をその基準波形信号自体から抽出する
ものとするよう構成できる。あるいは、前記基準波形特
質取得過程は、予め抽出してある基準波形信号の時間経
過に従った特質を提供する手段から該基準波形信号の特
質を取得するよう構成できる。また本発明にかかる波形
信号処理装置は、上記に記載のいずれかの波形信号処理
方法を行うよう構成される。
【0012】
【発明の実施の形態】図1には本発明の一実施例として
の波形信号処理方法を行う波形信号処理装置のシステム
構成が示される。図1において、コンピュータ1は−般
的なパーソナルコンピュータであり、CPU、メモリな
どを備えている。このメモリにはこのコンピュータ1を
動作させるためのプログラムを記憶するエリア、プログ
ラムを動作させるのに必要なワーキングエリア、音声信
号を記憶するためのエリアなどが設けられている。コン
ピュータ1にはマイクロホンやCD(コンパクト・ディ
スク)プレーヤなどからの入力音声信号をデジタル信号
に変換して内部のメモリに記憶するためのAD変換器
4、各種の情報を表示するためのディスプレイ3、コン
ピュータ1に対して各種の指示をするためのキーボード
2、内部のメモリに記憶されている出力音声信号をアナ
ログ信号に変換して出力するためのDA変換器5が接続
されている。アナログ信号に変換されたDA変換器5の
出力音声信号は増幅器、スピーカなどからなるサウンド
システムを介して放音される。
の波形信号処理方法を行う波形信号処理装置のシステム
構成が示される。図1において、コンピュータ1は−般
的なパーソナルコンピュータであり、CPU、メモリな
どを備えている。このメモリにはこのコンピュータ1を
動作させるためのプログラムを記憶するエリア、プログ
ラムを動作させるのに必要なワーキングエリア、音声信
号を記憶するためのエリアなどが設けられている。コン
ピュータ1にはマイクロホンやCD(コンパクト・ディ
スク)プレーヤなどからの入力音声信号をデジタル信号
に変換して内部のメモリに記憶するためのAD変換器
4、各種の情報を表示するためのディスプレイ3、コン
ピュータ1に対して各種の指示をするためのキーボード
2、内部のメモリに記憶されている出力音声信号をアナ
ログ信号に変換して出力するためのDA変換器5が接続
されている。アナログ信号に変換されたDA変換器5の
出力音声信号は増幅器、スピーカなどからなるサウンド
システムを介して放音される。
【0013】このシステムでは、上手な人の歌声と自分
の歌声の音声信号をそれぞれコンピュータ1に取り込
み、コンピュータ1上で、上手な人の歌声の音声信号か
ら抑揚を抽出し、この抽出した抑揚を模倣するように自
分の歌声の音声信号の抑揚を制御して出力音声信号と
し、これを放音するものである。以下、その処理手順を
説明する。
の歌声の音声信号をそれぞれコンピュータ1に取り込
み、コンピュータ1上で、上手な人の歌声の音声信号か
ら抑揚を抽出し、この抽出した抑揚を模倣するように自
分の歌声の音声信号の抑揚を制御して出力音声信号と
し、これを放音するものである。以下、その処理手順を
説明する。
【0014】〔手順1〕歌が上手な人の歌声をコンピュ
ータ1のメモリに録音する。この歌声の波形信号を波形
信号1と称する。上手な人にその場で歌ってもらえる場
合、あるいは上手な人の歌声のみが録音されているCD
などがある場合には、その歌声を録音するだけでよい
が、歌声と伴奏音とが録音されたCDなどから歌声のみ
を取り出すには、次にような方法を採用すればよい。
ータ1のメモリに録音する。この歌声の波形信号を波形
信号1と称する。上手な人にその場で歌ってもらえる場
合、あるいは上手な人の歌声のみが録音されているCD
などがある場合には、その歌声を録音するだけでよい
が、歌声と伴奏音とが録音されたCDなどから歌声のみ
を取り出すには、次にような方法を採用すればよい。
【0015】(a)歌声+伴奏音の演奏と伴奏音のみの
演奏とが別々にある場合の方法 歌声+伴奏音の演奏と、伴奏音のみの演奏(いわゆるカ
ラオケ)とが別々にCDなどに録音されている場合に
は、歌声+伴奏音の演奏の信号から伴奏音のみの演奏の
信号を引くことにより、歌声のみを残すことができる。
このための方法として次の2つの方法がある。
演奏とが別々にある場合の方法 歌声+伴奏音の演奏と、伴奏音のみの演奏(いわゆるカ
ラオケ)とが別々にCDなどに録音されている場合に
は、歌声+伴奏音の演奏の信号から伴奏音のみの演奏の
信号を引くことにより、歌声のみを残すことができる。
このための方法として次の2つの方法がある。
【0016】(a−1) 歌声+伴奏音の演奏と伴奏音
のみの演奏を開始時点および信号レベルを合わせて再生
し、両者の差を取る。まず両演奏の信号をコンピュータ
1のメモリに録音する。メモリに記憶された両演奏の信
号の開始部分の波形および対応するメモリのアドレスを
それぞれディスプレイ画面上に表示させ、両演奏の開始
時点がメモリ上のどのアドレスに対応しているかを確認
し、このアドレスからメモリに記憶された両演奏を同時
に再生して差をとり、その差を放音する。このように演
奏開始時点が調整された両演奏の差を再生して聴いてみ
て、さらに良い開始時点があるようであれば、いずれか
の演奏の開始時点を前後に微調整するようにする。そし
て両演奏の差を再生して聴きながらいずれかの演奏の再
生レベルを調整し、伴奏音が最も小さくなるようにす
る。このようにして再生された歌声のみの信号を再びメ
モリに録音する。
のみの演奏を開始時点および信号レベルを合わせて再生
し、両者の差を取る。まず両演奏の信号をコンピュータ
1のメモリに録音する。メモリに記憶された両演奏の信
号の開始部分の波形および対応するメモリのアドレスを
それぞれディスプレイ画面上に表示させ、両演奏の開始
時点がメモリ上のどのアドレスに対応しているかを確認
し、このアドレスからメモリに記憶された両演奏を同時
に再生して差をとり、その差を放音する。このように演
奏開始時点が調整された両演奏の差を再生して聴いてみ
て、さらに良い開始時点があるようであれば、いずれか
の演奏の開始時点を前後に微調整するようにする。そし
て両演奏の差を再生して聴きながらいずれかの演奏の再
生レベルを調整し、伴奏音が最も小さくなるようにす
る。このようにして再生された歌声のみの信号を再びメ
モリに録音する。
【0017】(a−2) 歌声+伴奏音の演奏と伴奏音
のみの演奏を再生し、両者をアダプティブ・フィルタに
入力して歌声のみの信号を取り出す。図2に示すよう
に、フィルタ11と減算手段12とでアダプティブ・フ
ィルタが構成されている。アダプティブ・フィルタの構
成およびその制御方法は公知であるので詳細な説明は省
略する。伴奏音のみの演奏の信号をフィルタ11に入力
する。このフィルタ11はFIRフィルタなどで構成さ
れており、内部の係数が可変制御可能となっている。そ
して減算手段12により歌声+伴奏音の演奏の信号から
このフィルタ11の出力を減算して差を求め、その差に
基づいてこの差が最も小さくなるようにフィルタ11の
係数を制御する。この差を出力として減算手段12から
取り出す。減算手段12の出力は、これが歌声のみとな
った時に最も小さくなる。従ってこれを取り出すと歌声
のみが残ることとなるので、これをメモリに録音する。
のみの演奏を再生し、両者をアダプティブ・フィルタに
入力して歌声のみの信号を取り出す。図2に示すよう
に、フィルタ11と減算手段12とでアダプティブ・フ
ィルタが構成されている。アダプティブ・フィルタの構
成およびその制御方法は公知であるので詳細な説明は省
略する。伴奏音のみの演奏の信号をフィルタ11に入力
する。このフィルタ11はFIRフィルタなどで構成さ
れており、内部の係数が可変制御可能となっている。そ
して減算手段12により歌声+伴奏音の演奏の信号から
このフィルタ11の出力を減算して差を求め、その差に
基づいてこの差が最も小さくなるようにフィルタ11の
係数を制御する。この差を出力として減算手段12から
取り出す。減算手段12の出力は、これが歌声のみとな
った時に最も小さくなる。従ってこれを取り出すと歌声
のみが残ることとなるので、これをメモリに録音する。
【0018】なお、フィルタ11は遅延手段を内蔵して
いるため、信号が入力されてから出力されるまでに遅延
が生じる。このため、伴奏音のみの演奏の信号の再生開
始タイミングを歌声+伴奏音の演奏の信号の再生開始タ
イミングよりも早める必要がある。早める時間は、0か
らフィルタの遅延時間に相当する時間までの間であれば
よく、例えば遅延時間のおおよそ半分程度とする。
いるため、信号が入力されてから出力されるまでに遅延
が生じる。このため、伴奏音のみの演奏の信号の再生開
始タイミングを歌声+伴奏音の演奏の信号の再生開始タ
イミングよりも早める必要がある。早める時間は、0か
らフィルタの遅延時間に相当する時間までの間であれば
よく、例えば遅延時間のおおよそ半分程度とする。
【0019】上記第1の方法(a−1)では、2つの演
奏の開始タイミングおよびレベルを使用者が調整して合
わせる必要があったが、第2の方法(a−2)では、演
奏の開始タイミングの調整は必要であるが、これはフィ
ルタの遅延時間の範囲内であればよく、微妙な調整は不
要であり、またレベルの調整はアクティブ・フィルタが
自動的に行うこととなるため、使用者の負担が減る。
奏の開始タイミングおよびレベルを使用者が調整して合
わせる必要があったが、第2の方法(a−2)では、演
奏の開始タイミングの調整は必要であるが、これはフィ
ルタの遅延時間の範囲内であればよく、微妙な調整は不
要であり、またレベルの調整はアクティブ・フィルタが
自動的に行うこととなるため、使用者の負担が減る。
【0020】(b) 歌声+伴奏音の演奏しかない場合
の方法 歌声+伴奏音の演奏しかない場合には、歌声のピッチ変
動に合わせてトラッキング・フィルタのフィルタリング
周波数を変化させ、歌声+伴奏音の演奏の信号をフィル
タリングすることにより、歌声の周波数成分のみ取り出
すことができる。このようなトラッキング・フィルタと
して特開平6−4076号公報に示されたものを使用で
きる。
の方法 歌声+伴奏音の演奏しかない場合には、歌声のピッチ変
動に合わせてトラッキング・フィルタのフィルタリング
周波数を変化させ、歌声+伴奏音の演奏の信号をフィル
タリングすることにより、歌声の周波数成分のみ取り出
すことができる。このようなトラッキング・フィルタと
して特開平6−4076号公報に示されたものを使用で
きる。
【0021】歌声+伴奏音の演奏を使用者が聴きながら
フィルタリング周波数を手動変化させるようにしてもよ
いが、リアルタイムに歌声のピッチ変動に対応してフィ
ルタリング周波数を変化させることは困難が伴う。そこ
で、この演奏の信号をコンピュータのメモリにいったん
録音し、これを再生したものを聴きながらフィルタリン
グ周波数を手動変化させ、フィルタリング周波数の変化
を演奏の再生と同期して記憶しておく。このようにして
記憶したフィルタリング周波数の変化を演奏と同期して
再生し、これに基づいてフィルタリングを行い、フィル
タリングしたものを再び録音する。録音されたフィルタ
リングされた演奏を再生して聴いてみて、うまくフィル
タリングがなされているかどうか確認する。うまくフィ
ルタリングがなされていない箇所に関しては、記憶した
フィルタリング周波数を手動で変更する。以上の手順を
繰り返す。
フィルタリング周波数を手動変化させるようにしてもよ
いが、リアルタイムに歌声のピッチ変動に対応してフィ
ルタリング周波数を変化させることは困難が伴う。そこ
で、この演奏の信号をコンピュータのメモリにいったん
録音し、これを再生したものを聴きながらフィルタリン
グ周波数を手動変化させ、フィルタリング周波数の変化
を演奏の再生と同期して記憶しておく。このようにして
記憶したフィルタリング周波数の変化を演奏と同期して
再生し、これに基づいてフィルタリングを行い、フィル
タリングしたものを再び録音する。録音されたフィルタ
リングされた演奏を再生して聴いてみて、うまくフィル
タリングがなされているかどうか確認する。うまくフィ
ルタリングがなされていない箇所に関しては、記憶した
フィルタリング周波数を手動で変更する。以上の手順を
繰り返す。
【0022】あるいは歌声+伴奏音の演奏を聴きながら
使用者がそれに合わせて歌い、使用者の歌声のピッチ変
動を検出することにより、フィルタリング周波数の変化
を得るようにしてもよい。
使用者がそれに合わせて歌い、使用者の歌声のピッチ変
動を検出することにより、フィルタリング周波数の変化
を得るようにしてもよい。
【0023】〔手順2〕手順1で記憶した歌声あるいは
歌声+伴奏音の演奏を聴きながら同じ歌を自分で歌って
録音する。この波形信号を波形信号2と称する。
歌声+伴奏音の演奏を聴きながら同じ歌を自分で歌って
録音する。この波形信号を波形信号2と称する。
【0024】〔手順3〕波形信号1と波形信号2の音節
の区切りをそれぞれ見つけ、両信号が記憶されたメモリ
のアドレスとの対応関係を時間軸上の位置情報として記
憶する。この区切りは後述する手順4〜6でのレベル変
動、ピッチ変動、時間長の抽出や修正の処理単位を決定
するために行う。これらの抽出および修正は強弱の変
化、ビブラート、アーティキュレーションなどの抑揚を
捉えるのが目的であり、この実施例では音節を単位とし
て区切る例を説明する。しかし、必ずしも音節単位に拘
る必要はなく、使用者が演奏に見合った適当な長さで区
切るようにすればよい。例えば1つの音節が複数の音符
に跨がっている場合には区切りを音符毎としてもよい
し、あるいはフレーズや小節といった単位で区切るよう
にしてもよい。
の区切りをそれぞれ見つけ、両信号が記憶されたメモリ
のアドレスとの対応関係を時間軸上の位置情報として記
憶する。この区切りは後述する手順4〜6でのレベル変
動、ピッチ変動、時間長の抽出や修正の処理単位を決定
するために行う。これらの抽出および修正は強弱の変
化、ビブラート、アーティキュレーションなどの抑揚を
捉えるのが目的であり、この実施例では音節を単位とし
て区切る例を説明する。しかし、必ずしも音節単位に拘
る必要はなく、使用者が演奏に見合った適当な長さで区
切るようにすればよい。例えば1つの音節が複数の音符
に跨がっている場合には区切りを音符毎としてもよい
し、あるいはフレーズや小節といった単位で区切るよう
にしてもよい。
【0025】図3にはこの音節毎に区切る仕方の一例が
示される。波形信号1および波形信号2の波形をディス
プレイ画面上にその始まりの時間を合わせて同時に表示
する。なお、波形全体を表示するのは不可能であるの
で、特定の時間区間を指定してその間の波形を時間軸方
向に拡大して表示するようにする。また再生する範囲を
示す前カーソルと後カーソルが表示される。各カーソル
は使用者の指示により独立して移動させることが可能と
なっている。
示される。波形信号1および波形信号2の波形をディス
プレイ画面上にその始まりの時間を合わせて同時に表示
する。なお、波形全体を表示するのは不可能であるの
で、特定の時間区間を指定してその間の波形を時間軸方
向に拡大して表示するようにする。また再生する範囲を
示す前カーソルと後カーソルが表示される。各カーソル
は使用者の指示により独立して移動させることが可能と
なっている。
【0026】使用者はカーソルで再生範囲を指示すると
ともに、いずれの波形信号を再生するかを選択し、再生
指示をする。すると選択された波形信号の前カーソルと
後カーソルに挟まされた区間の波形の再生が行われ、音
として聴くことができる。各カーソルを移動させ再生す
るという手順を繰り返すことで、音節の区切りを見つけ
る。音節の区切りが見つかったら、書込み指示をするこ
とにより、再生指示のされている波形信号の音節の区切
りがその波形信号を記憶しているメモリのアドレスと対
応付けられて記憶される。この際、1つ前の音節の終了
位置が次の音節の開始位置とされる。この作業を各波形
信号に関して波形の始まりから終りまで各音節毎に順次
に行うことにより、音節毎に番号が付けられ、各音節毎
にその音節の開始位置と終了位置(ともにメモリのアド
レス)が記憶される。これにより、各音節の時間軸上の
位置が定められることとなり、各音節の時間長も定ま
る。
ともに、いずれの波形信号を再生するかを選択し、再生
指示をする。すると選択された波形信号の前カーソルと
後カーソルに挟まされた区間の波形の再生が行われ、音
として聴くことができる。各カーソルを移動させ再生す
るという手順を繰り返すことで、音節の区切りを見つけ
る。音節の区切りが見つかったら、書込み指示をするこ
とにより、再生指示のされている波形信号の音節の区切
りがその波形信号を記憶しているメモリのアドレスと対
応付けられて記憶される。この際、1つ前の音節の終了
位置が次の音節の開始位置とされる。この作業を各波形
信号に関して波形の始まりから終りまで各音節毎に順次
に行うことにより、音節毎に番号が付けられ、各音節毎
にその音節の開始位置と終了位置(ともにメモリのアド
レス)が記憶される。これにより、各音節の時間軸上の
位置が定められることとなり、各音節の時間長も定ま
る。
【0027】〔手順4〕波形信号1および波形信号2が
音節毎に区切られたら、波形信号1および波形信号2の
レベル変動を抽出する。この様子を図4に示す。レベル
変動の抽出は、波形信号のエンベロープを検出し、各音
節毎にその音節中のエンベロープの最大ピーク値をその
音節のレベルとして抽出することによって行う。図4
中、TR(1),TR(2) ・・・は波形信号1の各音節の時間
長、TS(1), TS(2)・・・は波形信号2の各音節の時間長
であり、LR(1), LR(2) ・・は波形信号1の各音節のレ
ベル、LS(1), LS(2) ・・・は波形信号2の各音節のレ
ベルである。
音節毎に区切られたら、波形信号1および波形信号2の
レベル変動を抽出する。この様子を図4に示す。レベル
変動の抽出は、波形信号のエンベロープを検出し、各音
節毎にその音節中のエンベロープの最大ピーク値をその
音節のレベルとして抽出することによって行う。図4
中、TR(1),TR(2) ・・・は波形信号1の各音節の時間
長、TS(1), TS(2)・・・は波形信号2の各音節の時間長
であり、LR(1), LR(2) ・・は波形信号1の各音節のレ
ベル、LS(1), LS(2) ・・・は波形信号2の各音節のレ
ベルである。
【0028】〔手順5〕波形信号1および波形信号2の
ピッチ変動を抽出する。ピッチ変動の抽出は、各音節毎
に行ってもよいが、ビブラートなどによる1音節中のピ
ッチ変動を捉えるために1音節よりも細かい時間単位毎
に各波形信号のピッチを検出するようにしてもよい。最
も細かく変動を抽出する場合には、各周期毎にそのピッ
チを求める。この様子を図5に示す。図5中、tr(1), t
r(2)・・・は波形信号1の各周期の時間軸上の終了位
置、ts(1), ts(2)・・・は波形信号2の各周期の時間軸
上の終了位置であり、PR(1), PR(2)・・・は波形信号1
の各周期のピッチ、PS(1), PS(2)・・・は波形信号2の
各周期のピッチである。これらのピッチは周期長(ここ
ではメモリのアドレス数)で表される。
ピッチ変動を抽出する。ピッチ変動の抽出は、各音節毎
に行ってもよいが、ビブラートなどによる1音節中のピ
ッチ変動を捉えるために1音節よりも細かい時間単位毎
に各波形信号のピッチを検出するようにしてもよい。最
も細かく変動を抽出する場合には、各周期毎にそのピッ
チを求める。この様子を図5に示す。図5中、tr(1), t
r(2)・・・は波形信号1の各周期の時間軸上の終了位
置、ts(1), ts(2)・・・は波形信号2の各周期の時間軸
上の終了位置であり、PR(1), PR(2)・・・は波形信号1
の各周期のピッチ、PS(1), PS(2)・・・は波形信号2の
各周期のピッチである。これらのピッチは周期長(ここ
ではメモリのアドレス数)で表される。
【0029】〔手順6〕手順3で求めた各波形信号の各
音節の区切りの情報と手順4で求めた各波形のレベル変
動の情報および手順5で求めた各波形のピッチ変動の情
報を基に、波形信号2の各音節の時間長、レベル変動お
よび各所定時間間隔毎のピッチ変動が波形信号1の各音
節の時間長、レベル変動および各所定時間間隔毎のピッ
チ変動と−致するように、波形信号2を修正して出力音
声信号として記憶する。時間長、レベル、ピッチの修正
は次の様に行う。
音節の区切りの情報と手順4で求めた各波形のレベル変
動の情報および手順5で求めた各波形のピッチ変動の情
報を基に、波形信号2の各音節の時間長、レベル変動お
よび各所定時間間隔毎のピッチ変動が波形信号1の各音
節の時間長、レベル変動および各所定時間間隔毎のピッ
チ変動と−致するように、波形信号2を修正して出力音
声信号として記憶する。時間長、レベル、ピッチの修正
は次の様に行う。
【0030】(1)波形信号2を音節毎に時間軸方向に
圧縮/伸張して波形信号1の対応する音節の時間長と一
致させる。時間軸方向への圧縮/伸長は、メモリからの
読出しアドレスの読出し間隔(前アドレスと次アドレス
の間隔)を圧縮/伸長して波形信号をメモリから読み出
し、これをメモリの別の領域に記憶し直すことにより行
う。なお、時間軸方向の圧縮/伸張に伴ってピッチが変
化するので、手順5で求めた波形信号2のピッチ変動の
情報をこの圧縮/伸張の量に合わせて変更しておく。
圧縮/伸張して波形信号1の対応する音節の時間長と一
致させる。時間軸方向への圧縮/伸長は、メモリからの
読出しアドレスの読出し間隔(前アドレスと次アドレス
の間隔)を圧縮/伸長して波形信号をメモリから読み出
し、これをメモリの別の領域に記憶し直すことにより行
う。なお、時間軸方向の圧縮/伸張に伴ってピッチが変
化するので、手順5で求めた波形信号2のピッチ変動の
情報をこの圧縮/伸張の量に合わせて変更しておく。
【0031】(2)時間長を変更した波形信号2のピッ
チを波形信号1のピッチと一致するように、公知の方法
でピッチ変換を行う。なお、ピッチ変換を行い、ピッチ
変換した波形信号をメモリの別の領域に記憶し直す。
チを波形信号1のピッチと一致するように、公知の方法
でピッチ変換を行う。なお、ピッチ変換を行い、ピッチ
変換した波形信号をメモリの別の領域に記憶し直す。
【0032】(3)ピッチ変換した波形信号2のレベル
を波形信号1のレベルと−致するように音節毎にレベル
変更を行い、レベル変更した波形信号をメモリの別の領
域に記憶し直す。
を波形信号1のレベルと−致するように音節毎にレベル
変更を行い、レベル変更した波形信号をメモリの別の領
域に記憶し直す。
【0033】〔手順7〕手順6で記憶した出力音声信号
を使用者の指示に応じて再生する。
を使用者の指示に応じて再生する。
【0034】本発明の実施にあたっては種々の変形形態
が可能である。例えば、上記の手順6に関しては、公知
のピッチ変換方法を用いる代わりに、以下のような処理
方法を採用すれば、時間長、レベル変動、ピッチ変動の
修正をまとめて行え、さらに再生される波形信号のフォ
ルマント特性の制御も行える。
が可能である。例えば、上記の手順6に関しては、公知
のピッチ変換方法を用いる代わりに、以下のような処理
方法を採用すれば、時間長、レベル変動、ピッチ変動の
修正をまとめて行え、さらに再生される波形信号のフォ
ルマント特性の制御も行える。
【0035】まず、このピッチ変換方法で用いる変数、
定数の意味を以下に示す。 n 音節番号で、先頭の音節から1,2,・・・MAX MAX 最後の音節の音節番号 t(n) 波形信号1の各音節の時間軸上の終了位置(アドレス) TR(n) 波形信号1の各音節の時間長 TS(n) 波形信号2の各音節の時間長 LR(n) 波形信号1の各音節のレベル LS(n) 波形信号2の各音節のレベル nr 波形信号1の周期番号で、先頭の周期から1,2,・・・ ns 波形信号2の周期番号で、先頭の周期から1,2,・・・ PR(nr) 波形信号1の各周期のピッチ(周期長=アドレス数) PS(ns) 波形信号2の各周期のピッチ(周期長=アドレス数) width 再生ピッチ=波形信号1の処理対象周期のピッチ (周期長=アドレス数) pitch 元ピッチ=波形信号2の処理対象周期のピッチ (周期長=アドレス数) tr(nr) 波形信号1の各周期の時間軸上の終了位置(アドレス) ts(ns) 波形信号2の各周期の時間軸上の終了位置(アドレス) length 波形窓の長さ formant-VR フォルマント変更係数 使用者によって設定される wnd-ph-rate 波形窓の位相変化速度 wnd-ph1 第1の処理経路の波形窓生成位相 wnd-ph2 第2の処理経路の波形窓生成位相 window1 第1の処理経路の波形窓 window2 第2の処理経路の波形窓 tr 波形信号1の時間軸上の処理位置(アドレス) ts 波形信号2の時間軸上の処理位置(アドレス) st1 第1の処理経路の波形切出し開始アドレス st2 第2の処理経路の波形切出し開始アドレス sadrs 波形切出し開始アドレス phase 再生位相 wave-ph1 第1の処理経路の波形読出し位相 wave-ph2 第2の処理経路の波形読出し位相 sflg 第1相・第2相区別フラグ 第1相/第2相=−1 /1 data1 第1の処理経路の読出し波形 data2 第2の処理経路の読出し波形 data 第1の処理経路と第2の処理経路の合成波形 i 出力音声信号の記憶アドレス out(i) 出力音声信号
定数の意味を以下に示す。 n 音節番号で、先頭の音節から1,2,・・・MAX MAX 最後の音節の音節番号 t(n) 波形信号1の各音節の時間軸上の終了位置(アドレス) TR(n) 波形信号1の各音節の時間長 TS(n) 波形信号2の各音節の時間長 LR(n) 波形信号1の各音節のレベル LS(n) 波形信号2の各音節のレベル nr 波形信号1の周期番号で、先頭の周期から1,2,・・・ ns 波形信号2の周期番号で、先頭の周期から1,2,・・・ PR(nr) 波形信号1の各周期のピッチ(周期長=アドレス数) PS(ns) 波形信号2の各周期のピッチ(周期長=アドレス数) width 再生ピッチ=波形信号1の処理対象周期のピッチ (周期長=アドレス数) pitch 元ピッチ=波形信号2の処理対象周期のピッチ (周期長=アドレス数) tr(nr) 波形信号1の各周期の時間軸上の終了位置(アドレス) ts(ns) 波形信号2の各周期の時間軸上の終了位置(アドレス) length 波形窓の長さ formant-VR フォルマント変更係数 使用者によって設定される wnd-ph-rate 波形窓の位相変化速度 wnd-ph1 第1の処理経路の波形窓生成位相 wnd-ph2 第2の処理経路の波形窓生成位相 window1 第1の処理経路の波形窓 window2 第2の処理経路の波形窓 tr 波形信号1の時間軸上の処理位置(アドレス) ts 波形信号2の時間軸上の処理位置(アドレス) st1 第1の処理経路の波形切出し開始アドレス st2 第2の処理経路の波形切出し開始アドレス sadrs 波形切出し開始アドレス phase 再生位相 wave-ph1 第1の処理経路の波形読出し位相 wave-ph2 第2の処理経路の波形読出し位相 sflg 第1相・第2相区別フラグ 第1相/第2相=−1 /1 data1 第1の処理経路の読出し波形 data2 第2の処理経路の読出し波形 data 第1の処理経路と第2の処理経路の合成波形 i 出力音声信号の記憶アドレス out(i) 出力音声信号
【0036】ここでは手順1〜5が既に行われているも
のとし、以下に示す処理は手順6に相当する。手順3で
は、波形信号1および波形信号2のメモリ上の先頭アド
レスを求めるとともに、波形信号1および波形信号2の
最後の音節番号をMAX とし、波形信号1の各音節の終了
位置に対応するアドレスを先頭の音節からそれぞれt
(1) ,t(2) , t(3) ・・・t(MAX) とし、波形信号1
および波形信号2の各音節の時間長を先頭の音節からそ
れぞれTR(1) , TR(2) ・・・TR(MAX) およびTS(1) ,TS
(2) ・・・TS(MAX) として記憶しているものとする。手
順4では、波形信号1および波形信号2の各音節のレベ
ルを先頭の音節からそれぞれLR(1) ,LR(2) ・・・LR(M
AX) およびLS(1) ,LS(2) ・・・LS(MAX) として記憶し
ているものとする。手順5では、波形信号1および波形
信号2の各周期のピッチをその周期に含まれる波形信号
のアドレス数として先頭の周期からそれぞれPR(1) ,PR
(2)・・・およびPS(1) ,PS(2) ・・・として記憶する
とともに、波形信号1および波形信号2の各周期の時間
軸上の終了位置のアドレスをそれぞれtr(1) ,tr(2)・
・・およびts(1) ,ts(2) ・・・として記憶しているも
のとする。
のとし、以下に示す処理は手順6に相当する。手順3で
は、波形信号1および波形信号2のメモリ上の先頭アド
レスを求めるとともに、波形信号1および波形信号2の
最後の音節番号をMAX とし、波形信号1の各音節の終了
位置に対応するアドレスを先頭の音節からそれぞれt
(1) ,t(2) , t(3) ・・・t(MAX) とし、波形信号1
および波形信号2の各音節の時間長を先頭の音節からそ
れぞれTR(1) , TR(2) ・・・TR(MAX) およびTS(1) ,TS
(2) ・・・TS(MAX) として記憶しているものとする。手
順4では、波形信号1および波形信号2の各音節のレベ
ルを先頭の音節からそれぞれLR(1) ,LR(2) ・・・LR(M
AX) およびLS(1) ,LS(2) ・・・LS(MAX) として記憶し
ているものとする。手順5では、波形信号1および波形
信号2の各周期のピッチをその周期に含まれる波形信号
のアドレス数として先頭の周期からそれぞれPR(1) ,PR
(2)・・・およびPS(1) ,PS(2) ・・・として記憶する
とともに、波形信号1および波形信号2の各周期の時間
軸上の終了位置のアドレスをそれぞれtr(1) ,tr(2)・
・・およびts(1) ,ts(2) ・・・として記憶しているも
のとする。
【0037】また使用者によるキーボード操作に応じ
て、自分の歌声のフォルマント特性をどの程度変更する
かを決めるフォルマント変更係数formant-VRが設定され
ているものとする。このフォルマント変更係数formant-
VRが1よりも大きい時にフォルマント特性は高音側に、
1よりも小さい時には低音側に変位され、1の時には変
位されない。
て、自分の歌声のフォルマント特性をどの程度変更する
かを決めるフォルマント変更係数formant-VRが設定され
ているものとする。このフォルマント変更係数formant-
VRが1よりも大きい時にフォルマント特性は高音側に、
1よりも小さい時には低音側に変位され、1の時には変
位されない。
【0038】出力音声信号が生成される過程を概略的に
説明する。自分の歌声である波形信号2から2周期分を
1周期ずつずらしながら音素片として順次に切り出し
て、その切り出した音素片を歌が上手な人の歌声である
波形信号1の対応する時間位置の音素片のピッチおよび
レベルに合うように再生して、それを出力音声信号とす
る。この際、各音節毎に再生される信号の時間長が波形
信号1の対応する音節の時間長と一致するように時間軸
方向に圧縮/伸張が行われて波形信号が読み出される。
より具体的には、2周期分の波形信号の再生を二つの処
理経路で並行して行い、それぞれの処理経路では波形信
号1のピッチ周期の2倍の周期でかつ互いが波形信号1
のピッチ周期の1周期分ずれるようにして音素片を再生
し、これらを合成することにより波形信号2を波形信号
1のピッチ周期とし、さらに合成された波形信号(修正
された波形信号2)のレベルを波形信号1および波形信
号2のレベルの比に基づいて波形信号1と同程度になる
よう補正し、出力音声信号としている。この際に、出力
音声信号の時間長を各音節毎に波形信号1の時間長と一
致させて再生するために、波形信号2からの音素片の切
出し位置(メモリのアドレス)の変化速度を波形信号1
および波形信号2の各音節の時間長に基づいて調整す
る。
説明する。自分の歌声である波形信号2から2周期分を
1周期ずつずらしながら音素片として順次に切り出し
て、その切り出した音素片を歌が上手な人の歌声である
波形信号1の対応する時間位置の音素片のピッチおよび
レベルに合うように再生して、それを出力音声信号とす
る。この際、各音節毎に再生される信号の時間長が波形
信号1の対応する音節の時間長と一致するように時間軸
方向に圧縮/伸張が行われて波形信号が読み出される。
より具体的には、2周期分の波形信号の再生を二つの処
理経路で並行して行い、それぞれの処理経路では波形信
号1のピッチ周期の2倍の周期でかつ互いが波形信号1
のピッチ周期の1周期分ずれるようにして音素片を再生
し、これらを合成することにより波形信号2を波形信号
1のピッチ周期とし、さらに合成された波形信号(修正
された波形信号2)のレベルを波形信号1および波形信
号2のレベルの比に基づいて波形信号1と同程度になる
よう補正し、出力音声信号としている。この際に、出力
音声信号の時間長を各音節毎に波形信号1の時間長と一
致させて再生するために、波形信号2からの音素片の切
出し位置(メモリのアドレス)の変化速度を波形信号1
および波形信号2の各音節の時間長に基づいて調整す
る。
【0039】次に、図6に基づいて出力音声信号が生成
される過程を詳細に説明する。波形信号1のピッチ(周
期長)が再生ピッチwidth (周期長)、波形信号2のピ
ッチ(周期長)が元ピッチpitch (周期長)とされる。
この再生ピッチwidthを周期長とする鋸歯状の再生位相p
hase が生成され、またそれぞれ再生ピッチwidth の2
倍を周期長とする矩形状の第1相/第2相区別フラグsf
lg、鋸歯状の第1波形読出し位相wave-ph1および鋸歯状
の第2波形読出し位相wave-ph2が生成される。なお、第
1波形読出し位相wave-ph1および第2波形読出し位相wa
ve-ph2は互に半周期ずれている。
される過程を詳細に説明する。波形信号1のピッチ(周
期長)が再生ピッチwidth (周期長)、波形信号2のピ
ッチ(周期長)が元ピッチpitch (周期長)とされる。
この再生ピッチwidthを周期長とする鋸歯状の再生位相p
hase が生成され、またそれぞれ再生ピッチwidth の2
倍を周期長とする矩形状の第1相/第2相区別フラグsf
lg、鋸歯状の第1波形読出し位相wave-ph1および鋸歯状
の第2波形読出し位相wave-ph2が生成される。なお、第
1波形読出し位相wave-ph1および第2波形読出し位相wa
ve-ph2は互に半周期ずれている。
【0040】そして、第1の処理経路では (第1波形読出し位相wave-ph1)×(フォルマント変更
係数formant-VR) の読出し速度で、また第2の処理経路では (第2波形読出し位相wave-ph2)×(フォルマント変更
係数formant-VR) の読出し速度でそれぞれの波形信号2の音素片を順次に
読み出す。読み出された波形信号はそれぞれ第1読出し
波形data1 、第2読出し波形data2 とされる。この読出
し速度がフォルマント特性の変更に関係する。
係数formant-VR) の読出し速度で、また第2の処理経路では (第2波形読出し位相wave-ph2)×(フォルマント変更
係数formant-VR) の読出し速度でそれぞれの波形信号2の音素片を順次に
読み出す。読み出された波形信号はそれぞれ第1読出し
波形data1 、第2読出し波形data2 とされる。この読出
し速度がフォルマント特性の変更に関係する。
【0041】なお、音素片の切出し開始位置は音素片を
読み出す毎に更新されるが、その変化速度は波形信号1
と波形信号2の処理対象の音節の時間長の比に対応する
ものとされている。
読み出す毎に更新されるが、その変化速度は波形信号1
と波形信号2の処理対象の音節の時間長の比に対応する
ものとされている。
【0042】さらに、第1波形読出し位相wave-ph1、第
2波形読出し位相wave-ph2にそれぞれ同期して鋸歯状の
第1波形窓生成位相wnd-ph1 、第2波形窓生成位相wnd-
ph2 を第1および第2の処理経路についてそれぞれ生成
し、この第1波形窓生成位相wnd-ph1 、第2波形窓生成
位相wnd-ph2 の値が0から2まで変化する期間において
波形切出し用の第1波形窓window1 、第2波形窓window
2 を第1および第2の処理経路についてそれぞれ生成す
る。なお、これらの波形窓は、波形窓長lengthの2倍の
長さのハニング窓である。波形窓長lengthは (元ピッチpitch )/(フォルマント変更係数formant-
VR) で求める。図6にはフォルマント変更係数formant-VRが
1.3の場合の第1波形窓window1 と第2波形窓window
2 が示されている。第1の処理経路では読み出された音
素片data1 に第1波形窓window1 を乗算して波形を生成
し、同様に第2の処理経路では読み出された音素片data
2 に第2波形窓window2 を乗算して波形を生成する。
2波形読出し位相wave-ph2にそれぞれ同期して鋸歯状の
第1波形窓生成位相wnd-ph1 、第2波形窓生成位相wnd-
ph2 を第1および第2の処理経路についてそれぞれ生成
し、この第1波形窓生成位相wnd-ph1 、第2波形窓生成
位相wnd-ph2 の値が0から2まで変化する期間において
波形切出し用の第1波形窓window1 、第2波形窓window
2 を第1および第2の処理経路についてそれぞれ生成す
る。なお、これらの波形窓は、波形窓長lengthの2倍の
長さのハニング窓である。波形窓長lengthは (元ピッチpitch )/(フォルマント変更係数formant-
VR) で求める。図6にはフォルマント変更係数formant-VRが
1.3の場合の第1波形窓window1 と第2波形窓window
2 が示されている。第1の処理経路では読み出された音
素片data1 に第1波形窓window1 を乗算して波形を生成
し、同様に第2の処理経路では読み出された音素片data
2 に第2波形窓window2 を乗算して波形を生成する。
【0043】このような処理方法によれば、これらの波
形は元の波形信号(波形信号2)のフォルマント特性を
フォルマント変更係数formant-VRに応じて変更したもの
となる。第1、第2処理経路におけるこれらの波形の周
期長は波形信号1の周期長の2倍となっているが、両処
理経路の波形を足し合わせると波形信号1の周期と同一
の周期長の波形となる。
形は元の波形信号(波形信号2)のフォルマント特性を
フォルマント変更係数formant-VRに応じて変更したもの
となる。第1、第2処理経路におけるこれらの波形の周
期長は波形信号1の周期長の2倍となっているが、両処
理経路の波形を足し合わせると波形信号1の周期と同一
の周期長の波形となる。
【0044】最後に、前述の足し合わせた波形のレベル
を、波形信号1および波形信号2のレベルの比に基づい
て波形信号1に倣うよう補正し、最終的な出力音声信号
とする。
を、波形信号1および波形信号2のレベルの比に基づい
て波形信号1に倣うよう補正し、最終的な出力音声信号
とする。
【0045】以下、上述の図6の処理をコンピュータで
行うための手順をフローチャートを参照して説明する。
図7はコンピュータ1で手順6を実行するためのメイン
ルーチンである。使用者による指示に応じて図7に示す
手順6の処理が実行される。最初の4つのステップS1
〜S4は各変数の初期化のための処理である。
行うための手順をフローチャートを参照して説明する。
図7はコンピュータ1で手順6を実行するためのメイン
ルーチンである。使用者による指示に応じて図7に示す
手順6の処理が実行される。最初の4つのステップS1
〜S4は各変数の初期化のための処理である。
【0046】ステップS1では次の処理を行う。 ・ nr=ns=1 波形信号1、2の周期番号nr, nsをそれぞれ「1」とす
る。 ・ witdth=PR(nr) 再生ピッチwidth として波形信号1の音素片の第1番目
の周期のピッチPR(1)を設定する。 ・ pitch =PS(ns) 元ピッチpitch として波形信号2の音素片の第1番目の
周期のピッチPS(1) を設定する。 ・ length=pitch /formant-VR 波形窓の長さlengthとしてpitch /formant-VRで演算し
た値を設定する。
る。 ・ witdth=PR(nr) 再生ピッチwidth として波形信号1の音素片の第1番目
の周期のピッチPR(1)を設定する。 ・ pitch =PS(ns) 元ピッチpitch として波形信号2の音素片の第1番目の
周期のピッチPS(1) を設定する。 ・ length=pitch /formant-VR 波形窓の長さlengthとしてpitch /formant-VRで演算し
た値を設定する。
【0047】これらの設定が終了したら、波形窓の長さ
lengthが波形信号1の再生ピッチpitch を超えているか
否かを判定し(ステップS2) 、超えていれば波形窓の
長さlengthを再生ピッチwidth の大きさに制限する(ス
テップS3)。超えていなければステップS4に進ん
で、さらに各種パラメータの初期化を行う。
lengthが波形信号1の再生ピッチpitch を超えているか
否かを判定し(ステップS2) 、超えていれば波形窓の
長さlengthを再生ピッチwidth の大きさに制限する(ス
テップS3)。超えていなければステップS4に進ん
で、さらに各種パラメータの初期化を行う。
【0048】ステップS4では次の処理を行う。 ・ wnd-ph-rate =1/length 波形窓の位相変化速度wnd-ph-rate としてステップS1
で設定した波形窓の長さlengthの逆数を設定する。 ・ phase =0 再生位相phase としてその周期区間の開始点である
「0」を設定する。 ・ wave-ph1=0 第1の処理経路の波形読出し位相wave-ph1としてその開
始点である「0」を設定する。 ・ wave-ph2=width 第2の処理経路の波形読出し位相wave-ph2としてその開
始点から波形窓の長さwidth だけ経過した値(第1の処
理経路の波形読出し位相wave-ph1よりも半周期進んだ
値) を設定する。 ・ wnd-ph1 =0 第1の処理経路の波形窓生成位相wnd-ph1 としてその開
始点である「0」を設定する。 ・ wnd-ph2 =width /length 第2の処理経路の波形窓生成位相wnd-ph2 としてwidth
/lengthを設定する。 ・ sflg=1 第1相/第2相区別フラグsflgを第1相を示す「1」に
設定する。 ・ tr=波形信号1の記憶領域の先頭アドレス 波形信号1の時間軸上の処理位置trとして波形信号1の
記憶領域の先頭アドレスを設定する。 ・ ts=波形信号2の記憶領域の先頭アドレス 波形信号2の時間軸上の処理位置tsとして波形信号2の
記憶領域の先頭アドレスを設定する。 ・ n=1 音節番号として最初の「1」を設定する。 ・ st1 =sadrs =波形信号1の記憶領域の先頭アドレ
ス 第1の処理経路の波形切出し開始アドレスst1 および波
形切出し開始sadrs として波形信号1の記憶領域の先頭
アドレスを設定する。 ・ st2 =sadrs +pitch 第2の処理経路の波形切出し開始アドレスst1 として、
波形切出し開始アドレスsadrs と元ピッチpitch を加算
したものを設定する。 ・ i=出力音声信号の記憶領域の先頭アドレス 出力音声信号の記憶アドレスiとして、出力音声信号の
記憶領域の先頭アドレスを設定する。
で設定した波形窓の長さlengthの逆数を設定する。 ・ phase =0 再生位相phase としてその周期区間の開始点である
「0」を設定する。 ・ wave-ph1=0 第1の処理経路の波形読出し位相wave-ph1としてその開
始点である「0」を設定する。 ・ wave-ph2=width 第2の処理経路の波形読出し位相wave-ph2としてその開
始点から波形窓の長さwidth だけ経過した値(第1の処
理経路の波形読出し位相wave-ph1よりも半周期進んだ
値) を設定する。 ・ wnd-ph1 =0 第1の処理経路の波形窓生成位相wnd-ph1 としてその開
始点である「0」を設定する。 ・ wnd-ph2 =width /length 第2の処理経路の波形窓生成位相wnd-ph2 としてwidth
/lengthを設定する。 ・ sflg=1 第1相/第2相区別フラグsflgを第1相を示す「1」に
設定する。 ・ tr=波形信号1の記憶領域の先頭アドレス 波形信号1の時間軸上の処理位置trとして波形信号1の
記憶領域の先頭アドレスを設定する。 ・ ts=波形信号2の記憶領域の先頭アドレス 波形信号2の時間軸上の処理位置tsとして波形信号2の
記憶領域の先頭アドレスを設定する。 ・ n=1 音節番号として最初の「1」を設定する。 ・ st1 =sadrs =波形信号1の記憶領域の先頭アドレ
ス 第1の処理経路の波形切出し開始アドレスst1 および波
形切出し開始sadrs として波形信号1の記憶領域の先頭
アドレスを設定する。 ・ st2 =sadrs +pitch 第2の処理経路の波形切出し開始アドレスst1 として、
波形切出し開始アドレスsadrs と元ピッチpitch を加算
したものを設定する。 ・ i=出力音声信号の記憶領域の先頭アドレス 出力音声信号の記憶アドレスiとして、出力音声信号の
記憶領域の先頭アドレスを設定する。
【0049】これらのパラメータの初期化の後は、指定
された音節番号(最初は初期化によりn=1)が最後の
音節番号(n=MAX )を超えているか否か判断し(ステ
ップS5)、指定された音節番号nが最後の音節番号n
=MAX を超えている場合には波形信号2の処理が全て終
了していることになるから、この手順6の処理を終了す
る。一方、超えていなければ波形生成処理サブルーチン
に進む(ステップS6)。
された音節番号(最初は初期化によりn=1)が最後の
音節番号(n=MAX )を超えているか否か判断し(ステ
ップS5)、指定された音節番号nが最後の音節番号n
=MAX を超えている場合には波形信号2の処理が全て終
了していることになるから、この手順6の処理を終了す
る。一方、超えていなければ波形生成処理サブルーチン
に進む(ステップS6)。
【0050】波形生成処理サブルーチンでは指定された
音節番号nの音節の波形を生成する(ステップS6)。
この波形生成処理サブルーチンの詳細は図8、図9を参
照して後述する。音節番号nの音節の波形生成処理が終
了したら、音節番号nを一つインクリメントすることで
次の音節に進め(ステップS7)、再び指定された音節
番号nが最後の音節番号n=MAX を超えているか否か判
断する処理(ステップS5)に戻り、指定された音節番
号nが最後の音節番号を超えたら手順6の処理を終了す
る。このような処理により先頭の音節から最後の音節ま
で波形が生成される。
音節番号nの音節の波形を生成する(ステップS6)。
この波形生成処理サブルーチンの詳細は図8、図9を参
照して後述する。音節番号nの音節の波形生成処理が終
了したら、音節番号nを一つインクリメントすることで
次の音節に進め(ステップS7)、再び指定された音節
番号nが最後の音節番号n=MAX を超えているか否か判
断する処理(ステップS5)に戻り、指定された音節番
号nが最後の音節番号を超えたら手順6の処理を終了す
る。このような処理により先頭の音節から最後の音節ま
で波形が生成される。
【0051】波形生成処理サブルーチン。 以下に波形生成処理サブルーチンの詳細な内容を図8、
図9のフローチャートを参照して説明する。波形信号1
に関して、時間軸上の現在の処理位置trが処理中の音節
番号nの音節の時間軸上の最終位置t(n) を超えている
かどうか判断し(ステップS601)、超えていれば処
理対象の音節の処理が終了したことになるので、メイン
ルーチンに戻る。
図9のフローチャートを参照して説明する。波形信号1
に関して、時間軸上の現在の処理位置trが処理中の音節
番号nの音節の時間軸上の最終位置t(n) を超えている
かどうか判断し(ステップS601)、超えていれば処
理対象の音節の処理が終了したことになるので、メイン
ルーチンに戻る。
【0052】波形信号1に関して、時間軸上の現在の処
理位置trが、現在処理中の周期番号nrの周期の最終位置
tr(nr)以上かどうか判断する(ステップS602)。判
断結果が「以上」であれば処理対象の周期の処理が終了
したことになるので、周期番号nrを一つインクリメント
して処理対象の周期を次のものに進め、その新たな周期
のピッチPR(nr)の値を再生ピッチwidth に設定する(ス
テップS603)。なお、処理位置trは後述するステッ
プS618においてこの波形生成処理サブルーチンが実
行される度に1ずつ増加されるものである。このように
して波形信号1の再生ピッチwidth が周期が更新される
毎に順次に更新される。
理位置trが、現在処理中の周期番号nrの周期の最終位置
tr(nr)以上かどうか判断する(ステップS602)。判
断結果が「以上」であれば処理対象の周期の処理が終了
したことになるので、周期番号nrを一つインクリメント
して処理対象の周期を次のものに進め、その新たな周期
のピッチPR(nr)の値を再生ピッチwidth に設定する(ス
テップS603)。なお、処理位置trは後述するステッ
プS618においてこの波形生成処理サブルーチンが実
行される度に1ずつ増加されるものである。このように
して波形信号1の再生ピッチwidth が周期が更新される
毎に順次に更新される。
【0053】波形信号2に関しても上記波形信号1と同
様に、時間軸上の現在の処理位置tsが処理中の周期nsの
最終位置ts(ns)以上かどうか判断し(ステップS60
4)、以上であれば処理対象の周期の処理が終了したこ
とになるので、処理対象の周期を次のものに進め、新た
な周期のピッチの値を元ピッチpitch に設定する(S6
5)。なお、処理位置tsは後述するステップS618に
おいてこの波形生成処理サブルーチンが実行される度に
波形信号2の処理対象の音節の時間長と波形信号1の処
理対象の音節の時間長との比:TS(n) /TR(n) ずつ増加
されるものである。これは波形信号2の時間軸上の処理
位置tsを波形信号2と波形信号1の音節の時間長に応じ
た速さで変化させるものであり、これにより波形信号2
の音節の処理終了時間を波形信号1の対応音節の処理終
了時間に合わせることができる。このようにして波形信
号2の元ピッチpitch が順次に更新される。
様に、時間軸上の現在の処理位置tsが処理中の周期nsの
最終位置ts(ns)以上かどうか判断し(ステップS60
4)、以上であれば処理対象の周期の処理が終了したこ
とになるので、処理対象の周期を次のものに進め、新た
な周期のピッチの値を元ピッチpitch に設定する(S6
5)。なお、処理位置tsは後述するステップS618に
おいてこの波形生成処理サブルーチンが実行される度に
波形信号2の処理対象の音節の時間長と波形信号1の処
理対象の音節の時間長との比:TS(n) /TR(n) ずつ増加
されるものである。これは波形信号2の時間軸上の処理
位置tsを波形信号2と波形信号1の音節の時間長に応じ
た速さで変化させるものであり、これにより波形信号2
の音節の処理終了時間を波形信号1の対応音節の処理終
了時間に合わせることができる。このようにして波形信
号2の元ピッチpitch が順次に更新される。
【0054】さらに波形信号2に関して、時間軸上の現
在の処理位置tsが波形切出しアドレスsadrs と元ピッチ
pitch との和以上かどうか判断する(ステップS60
6)。その判断結果が「以上」であれば、今まで切り出
していた周期の処理が終了したことになるので、切出し
アドレスsadrs を元ピッチpitch だけ進め(ステップS
607)、次の切出し位置を設定する。
在の処理位置tsが波形切出しアドレスsadrs と元ピッチ
pitch との和以上かどうか判断する(ステップS60
6)。その判断結果が「以上」であれば、今まで切り出
していた周期の処理が終了したことになるので、切出し
アドレスsadrs を元ピッチpitch だけ進め(ステップS
607)、次の切出し位置を設定する。
【0055】これらの波形信号1および波形信号2に関
する処理(ステップS601〜S607) は、処理対象
の周期の処理を終了した場合に、処理対象を次の周期と
し新たな周期に対応する初期化を行うものである。
する処理(ステップS601〜S607) は、処理対象
の周期の処理を終了した場合に、処理対象を次の周期と
し新たな周期に対応する初期化を行うものである。
【0056】次に、再生位相phase が再生ピッチwidth
よりも大きいかどうか判断する(ステップS608)。
大きければ再生位相phase が次の周期に進んだことを示
すので、再生位相phase を再生ピッチwidth 分だけ減ら
すことで初期化するとともに、元ピッチpitch をフォル
マント変更係数formant-VRで除算した商を波形窓の長さ
lengthに設定する(ステップS609)。さらに、この
設定した波形窓の長さlengthが再生ピッチwidth よりも
大きいかを判断し(ステップS610)、大きい場合に
は再生ピッチwidth の値を波形窓の長さlengthに設定す
る(ステップS611)。これは波形窓の長さlengthが
再生ピッチwidth よりも大きくならないようにするため
である。
よりも大きいかどうか判断する(ステップS608)。
大きければ再生位相phase が次の周期に進んだことを示
すので、再生位相phase を再生ピッチwidth 分だけ減ら
すことで初期化するとともに、元ピッチpitch をフォル
マント変更係数formant-VRで除算した商を波形窓の長さ
lengthに設定する(ステップS609)。さらに、この
設定した波形窓の長さlengthが再生ピッチwidth よりも
大きいかを判断し(ステップS610)、大きい場合に
は再生ピッチwidth の値を波形窓の長さlengthに設定す
る(ステップS611)。これは波形窓の長さlengthが
再生ピッチwidth よりも大きくならないようにするため
である。
【0057】そして、この設定した波形窓の長さlength
の逆数を波形窓の位相変化速度wnd-ph-rate に設定する
(ステップS612)。次いで、第1相/第2相区別フ
ラグsflgが「0」より大きいか否かで現在の相が第1相
か第2相かを判断する(ステップS613)。
の逆数を波形窓の位相変化速度wnd-ph-rate に設定する
(ステップS612)。次いで、第1相/第2相区別フ
ラグsflgが「0」より大きいか否かで現在の相が第1相
か第2相かを判断する(ステップS613)。
【0058】この判断の結果、それまで第2相であった
場合には、再生位相phase の値を第1の処理経路の波形
読出し位相wave-ph1に設定し、再生位相phase と波形窓
の位相変化速度wnd-ph-rate との積を第1の処理経路の
波形窓生成位相wnd-ph1 に設定し、波形切出し開始アド
レスsadrs の値を第1の処理経路の波形切出し開始アド
レスst1 に設定する(ステップS614)。この後、第
1相/第2相区別フラグsflgの極性を反転することで相
を第1相とする(ステップS616)。一方、それまで
第1相であった場合には同様に、第2の処理経路に関し
て上記同様の設定を行い(ステップS615)、相を第
2相とする (ステップS616)。
場合には、再生位相phase の値を第1の処理経路の波形
読出し位相wave-ph1に設定し、再生位相phase と波形窓
の位相変化速度wnd-ph-rate との積を第1の処理経路の
波形窓生成位相wnd-ph1 に設定し、波形切出し開始アド
レスsadrs の値を第1の処理経路の波形切出し開始アド
レスst1 に設定する(ステップS614)。この後、第
1相/第2相区別フラグsflgの極性を反転することで相
を第1相とする(ステップS616)。一方、それまで
第1相であった場合には同様に、第2の処理経路に関し
て上記同様の設定を行い(ステップS615)、相を第
2相とする (ステップS616)。
【0059】これらの処理(ステップS609〜S61
6)は再生位相phase が次の周期に進んだ場合に、新た
な周期に対応して第1処理経路あるいは第2処理経路の
初期化を交互に行うものである。
6)は再生位相phase が次の周期に進んだ場合に、新た
な周期に対応して第1処理経路あるいは第2処理経路の
初期化を交互に行うものである。
【0060】このように次の周期に進んで初期化が終了
した場合(ステップS609〜S616)、あるいはス
テップS608の判断で再生位相phase が再生ピッチwi
dth以下の場合には、再生位相phase は現在着目してい
る周期内にあるので、当該周期において波形信号2の波
形を読み出す波形読出し処理サブルーチンに進む(ステ
ップS617)。この波形読出し処理サブルーチンの詳
細は図10のフローチャートを参照して後述する。
した場合(ステップS609〜S616)、あるいはス
テップS608の判断で再生位相phase が再生ピッチwi
dth以下の場合には、再生位相phase は現在着目してい
る周期内にあるので、当該周期において波形信号2の波
形を読み出す波形読出し処理サブルーチンに進む(ステ
ップS617)。この波形読出し処理サブルーチンの詳
細は図10のフローチャートを参照して後述する。
【0061】波形読出し処理サブルーチンを終了した
ら、再生位相phase 、第1および第2の処理経路の波形
読出し位相wave-ph1、wave-ph2をそれぞれ一つ進め、さ
らに波形信号1の処理位置trを一つ進めるとともに、波
形信号2の処理位置tsを波形信号2の処理対象の音節番
号nの音節の時間長TS(n) を波形信号1の処理対象の音
節番号nの音節の時間長TR(n) で除算した商:TS(n)/TR
(n) だけ進める。なお、このTS(n)/TR(n) は請求項4ま
たは請求項6における第2の時間情報の変化量に相当す
るものである。このようにts=ts+TS(n)/TR(n) とする
ことで波形信号1と波形信号2の対応する音節の処理終
了タイミングを一致させることができるし、さらに波形
信号2のピッチ変更によって波形信号1と波形信号2と
の処理終了タイミングが一致させられた同じ音節内にお
ける各時間位置でのピッチもそれぞれ一致するようにな
る。このようにステップS618の更新を行うことで、
次のサンプルの再生に備える。
ら、再生位相phase 、第1および第2の処理経路の波形
読出し位相wave-ph1、wave-ph2をそれぞれ一つ進め、さ
らに波形信号1の処理位置trを一つ進めるとともに、波
形信号2の処理位置tsを波形信号2の処理対象の音節番
号nの音節の時間長TS(n) を波形信号1の処理対象の音
節番号nの音節の時間長TR(n) で除算した商:TS(n)/TR
(n) だけ進める。なお、このTS(n)/TR(n) は請求項4ま
たは請求項6における第2の時間情報の変化量に相当す
るものである。このようにts=ts+TS(n)/TR(n) とする
ことで波形信号1と波形信号2の対応する音節の処理終
了タイミングを一致させることができるし、さらに波形
信号2のピッチ変更によって波形信号1と波形信号2と
の処理終了タイミングが一致させられた同じ音節内にお
ける各時間位置でのピッチもそれぞれ一致するようにな
る。このようにステップS618の更新を行うことで、
次のサンプルの再生に備える。
【0062】波形読出し処理サブルーチン。 以下に図10のフローチャートと図6の波形図とを参照
して波形読出し処理サブルーチンの詳細な内容を説明す
る。第1の処理経路に関して、波形窓生成位相wnd-ph1
を波形窓の位相変化速度wnd-ph-rate の値だけ進め(ス
テップS621)、波形窓生成位相wnd-ph1 が2以上か
否かを判断する(ステップS622)。2以上でない場
合には、波形窓生成位相wnd-ph1 に基づいてハニング窓
を生成して波形窓window1 に設定する(ステップS62
3)。この設定は、 window1 =〔1− cos(‘wnd-ph1' ×π)〕/2 を演算することで行う。この演算により波形窓生成位相
wnd-ph1 が0〜2の区間で図6に点線で示すようなアイ
パターン状の波形窓window1 が設定される。波形窓生成
位相wnd-ph1 が2以上の場合には波形窓window1 に0を
設定する(ステップS624)。
して波形読出し処理サブルーチンの詳細な内容を説明す
る。第1の処理経路に関して、波形窓生成位相wnd-ph1
を波形窓の位相変化速度wnd-ph-rate の値だけ進め(ス
テップS621)、波形窓生成位相wnd-ph1 が2以上か
否かを判断する(ステップS622)。2以上でない場
合には、波形窓生成位相wnd-ph1 に基づいてハニング窓
を生成して波形窓window1 に設定する(ステップS62
3)。この設定は、 window1 =〔1− cos(‘wnd-ph1' ×π)〕/2 を演算することで行う。この演算により波形窓生成位相
wnd-ph1 が0〜2の区間で図6に点線で示すようなアイ
パターン状の波形窓window1 が設定される。波形窓生成
位相wnd-ph1 が2以上の場合には波形窓window1 に0を
設定する(ステップS624)。
【0063】続いて、波形切出し開始アドレスst1 と、
波形読出し位相wave-ph1とフォルマント係数formant-VR
の積:‘wave-ph1'בformant-VR'との和をアドレスと
して波形信号2を読み出し、この読み出した値を第1経
路の読出し波形data1 とする(ステップS625)。こ
れらの処理(ステップS621〜S625)は第1の処
理経路に関して波形窓window1 を生成するとともに、波
形信号2の音素片の波形を読み出すものである。
波形読出し位相wave-ph1とフォルマント係数formant-VR
の積:‘wave-ph1'בformant-VR'との和をアドレスと
して波形信号2を読み出し、この読み出した値を第1経
路の読出し波形data1 とする(ステップS625)。こ
れらの処理(ステップS621〜S625)は第1の処
理経路に関して波形窓window1 を生成するとともに、波
形信号2の音素片の波形を読み出すものである。
【0064】第2の処理経路に関しても第1の処理経路
と同様にして、波形窓を生成し、波形を読み出す(ステ
ップS626〜S630) 。
と同様にして、波形窓を生成し、波形を読み出す(ステ
ップS626〜S630) 。
【0065】第1、第2の処理経路の読出し波形data1
, data2 が得られたら、第1の処理経路の読出し波形d
ata1 と第1の処理経路の波形窓window1 の積:data1
×window1 と、第2の処理経路の読出し波形data2 と第
2の処理経路の波形窓window2 の積:data2 ×window2
との和を、合成波形dataに設定し、第1および第2の処
理経路の波形を合成する(ステップS631)。上記の
ように第1の処理経路の読出し波形data1 と第1の処理
経路の波形窓window1 の積:data1 ×window1をとる処
理は、図6に示すように信号波形2の2周期分の音素片
を波形窓window1 を掛け合わせることで抽出する処理と
なる。第2の処理経路についても同様である。また第
1、第2の処理経路の各積を加算するよって、合成波形
dataは波形信号1のピッチ周期と同じになる。
, data2 が得られたら、第1の処理経路の読出し波形d
ata1 と第1の処理経路の波形窓window1 の積:data1
×window1 と、第2の処理経路の読出し波形data2 と第
2の処理経路の波形窓window2 の積:data2 ×window2
との和を、合成波形dataに設定し、第1および第2の処
理経路の波形を合成する(ステップS631)。上記の
ように第1の処理経路の読出し波形data1 と第1の処理
経路の波形窓window1 の積:data1 ×window1をとる処
理は、図6に示すように信号波形2の2周期分の音素片
を波形窓window1 を掛け合わせることで抽出する処理と
なる。第2の処理経路についても同様である。また第
1、第2の処理経路の各積を加算するよって、合成波形
dataは波形信号1のピッチ周期と同じになる。
【0066】最後に合成波形dataに、波形信号1の処理
対象の音節番号nの音節のレベルLR(n) を波形信号2の
処理対象の音節番号nの音節のレベルLS(n) で除算した
商を乗算し、その積をアドレスiで示される領域に最終
的な出力音声信号out(i)として記憶する(ステップS6
32)。これにより、波形信号2の処理対象音節のレベ
ルLS(n) が波形信号1の処理対象音節のレベルLR(n) を
模倣するようにレベル調節される。この後、次の出力音
声信号にそなえてアドレスiを一つ進める(ステップS
633)。
対象の音節番号nの音節のレベルLR(n) を波形信号2の
処理対象の音節番号nの音節のレベルLS(n) で除算した
商を乗算し、その積をアドレスiで示される領域に最終
的な出力音声信号out(i)として記憶する(ステップS6
32)。これにより、波形信号2の処理対象音節のレベ
ルLS(n) が波形信号1の処理対象音節のレベルLR(n) を
模倣するようにレベル調節される。この後、次の出力音
声信号にそなえてアドレスiを一つ進める(ステップS
633)。
【0067】なお、上述の実施例では、上手な人の歌声
の波形信号から抑揚を抽出したが、既に抑揚が抽出され
ている場合には、もちろん抽出処理は不要であり、その
抽出済の抑揚を模倣するように使用者の歌声の波形信号
を調整すればよい。このような場合に備え、歌声と伴奏
音の演奏をCDなどの記憶媒体を介してあるいは通信回
線を介して使用者に提供する場合には、歌声から抽出し
た抑揚のデータを同時に提供するようにしてもよい。あ
るいは抑揚の抽出が行い易いように歌声のみの演奏を同
時に提供するようにしてもよい。これらの場合、音節の
区切りの情報も同時に提供するようにすれば使用者は前
述の手順3を省略することができる。
の波形信号から抑揚を抽出したが、既に抑揚が抽出され
ている場合には、もちろん抽出処理は不要であり、その
抽出済の抑揚を模倣するように使用者の歌声の波形信号
を調整すればよい。このような場合に備え、歌声と伴奏
音の演奏をCDなどの記憶媒体を介してあるいは通信回
線を介して使用者に提供する場合には、歌声から抽出し
た抑揚のデータを同時に提供するようにしてもよい。あ
るいは抑揚の抽出が行い易いように歌声のみの演奏を同
時に提供するようにしてもよい。これらの場合、音節の
区切りの情報も同時に提供するようにすれば使用者は前
述の手順3を省略することができる。
【0068】また、性別、年齢などによる上手な人の歌
声と自分の歌声とのオクターブ差を考慮するようにして
もよい。人の声は性別、年齢によってピッチが異なる。
例えば、同じ歌を男性は女性に比べて1オクターブ低く
歌うことがある。同様に同じ歌を子供は大人に比ベて1
オクターブ高く歌うことがある。実施例ではこのような
オクターブ差を考慮せずに、上手な人の歌声信号から抽
出したピッチに基づいて自分の歌声信号を修正するよう
にしている。このため、上手な人の歌声のピッチと自分
の歌声のピッチがオクターブ異なる場合には自分の歌声
のピッチがオクターブ高くあるいは低く補正され不自然
になってしまう。そこで、ピッチ抽出時に上手な人の歌
声のピッチと自分の歌声のピッチとがオクターブ異なる
かどうかを判断し、異なる場合には上手な人の歌声信号
から抽出したピッチ情報をその異なる分だけオクターブ
変更し、オクターブ変更したピッチ情報に基づいて自分
の歌声を修正するとよい。
声と自分の歌声とのオクターブ差を考慮するようにして
もよい。人の声は性別、年齢によってピッチが異なる。
例えば、同じ歌を男性は女性に比べて1オクターブ低く
歌うことがある。同様に同じ歌を子供は大人に比ベて1
オクターブ高く歌うことがある。実施例ではこのような
オクターブ差を考慮せずに、上手な人の歌声信号から抽
出したピッチに基づいて自分の歌声信号を修正するよう
にしている。このため、上手な人の歌声のピッチと自分
の歌声のピッチがオクターブ異なる場合には自分の歌声
のピッチがオクターブ高くあるいは低く補正され不自然
になってしまう。そこで、ピッチ抽出時に上手な人の歌
声のピッチと自分の歌声のピッチとがオクターブ異なる
かどうかを判断し、異なる場合には上手な人の歌声信号
から抽出したピッチ情報をその異なる分だけオクターブ
変更し、オクターブ変更したピッチ情報に基づいて自分
の歌声を修正するとよい。
【0069】また、以上の例では歌声を例にして説明し
たが、本発明は歌声に限定されるものではなく、例えば
詩の朗読などにおけるある特定の人の声の抑揚を真似る
よう使用者の声を変更したりもできる。あるいは声に限
らず、自分で演奏した楽器の演奏音を、模範となる楽器
の演奏音に真似るように変更することもできる。
たが、本発明は歌声に限定されるものではなく、例えば
詩の朗読などにおけるある特定の人の声の抑揚を真似る
よう使用者の声を変更したりもできる。あるいは声に限
らず、自分で演奏した楽器の演奏音を、模範となる楽器
の演奏音に真似るように変更することもできる。
【0070】さらに、歌声を模範となる楽器の演奏音に
真似るように変更したり、この逆に楽器の演奏音を模範
となる歌声に真似るように変更したり、あるいは、ある
種類の楽器の楽器音を別の種類の楽器の演奏音に真似る
ように変更したりすることもできる。
真似るように変更したり、この逆に楽器の演奏音を模範
となる歌声に真似るように変更したり、あるいは、ある
種類の楽器の楽器音を別の種類の楽器の演奏音に真似る
ように変更したりすることもできる。
【0071】また前述の実施例では波形の特質を変更す
るにあたり、ピッチ、各時間区分(音節)の時間長およ
びレベルの三つを変更する例について説明したが、変更
する特質はこれらのうちのいずれか一つあるいは二つで
もよいし、これら以外の特質を制御するものであっても
よい。
るにあたり、ピッチ、各時間区分(音節)の時間長およ
びレベルの三つを変更する例について説明したが、変更
する特質はこれらのうちのいずれか一つあるいは二つで
もよいし、これら以外の特質を制御するものであっても
よい。
【0072】また、以上においては、上記の波形信号処
理を行うための制御プログラムが予めコンピュータにイ
ンストールされているものとして説明を行ったが、この
波形信号処理を行う制御プログラムをコンピュータが機
械読取り可能な記憶媒体、例えばフロッピィディスクや
光ディスクなどにアプリケーションプログラムとして格
納しておき、適宜、パーソナルコンピュータ等にインス
トールして本発明の波形信号処理方法および装置を構成
するものであってもよい。この場合、記憶媒体に格納さ
れたプログラムとコンピュータ側が持つOS(オペレー
ション・システム)とが協働して本システムを構成する
ものであり、本システムを構成する各機能のプログラム
が記憶媒体とコンピュータの何れの側に分担して保持さ
れるかは、そのコンピュータの持つOSの機能や予めイ
ンストールされているアプリケーションプログラム等に
応じて適宜決定できる。
理を行うための制御プログラムが予めコンピュータにイ
ンストールされているものとして説明を行ったが、この
波形信号処理を行う制御プログラムをコンピュータが機
械読取り可能な記憶媒体、例えばフロッピィディスクや
光ディスクなどにアプリケーションプログラムとして格
納しておき、適宜、パーソナルコンピュータ等にインス
トールして本発明の波形信号処理方法および装置を構成
するものであってもよい。この場合、記憶媒体に格納さ
れたプログラムとコンピュータ側が持つOS(オペレー
ション・システム)とが協働して本システムを構成する
ものであり、本システムを構成する各機能のプログラム
が記憶媒体とコンピュータの何れの側に分担して保持さ
れるかは、そのコンピュータの持つOSの機能や予めイ
ンストールされているアプリケーションプログラム等に
応じて適宜決定できる。
【0073】
【発明の効果】以上に説明したように、本発明によれ
ば、自分の声(歌声など)や演奏音等などの時系列音
を、模範となる時系列音に簡単に似せることができる。
ば、自分の声(歌声など)や演奏音等などの時系列音
を、模範となる時系列音に簡単に似せることができる。
【図1】本発明に係る一実施例としての波形信号処理装
置のシステム構成を示す図である。
置のシステム構成を示す図である。
【図2】アダプティブ・フィルタの例を示す図である。
【図3】実施例における手順3を実行するためのディレ
イ画面上における波形信号1と波形信号2の表示状態を
示す図である。
イ画面上における波形信号1と波形信号2の表示状態を
示す図である。
【図4】実施例における手順4での波形信号1と波形信
号2のレベル変動の抽出処理を説明する図である。
号2のレベル変動の抽出処理を説明する図である。
【図5】実施例における手順5での波形信号1と波形信
号2のピッチ変動の抽出処理を説明する図である。
号2のピッチ変動の抽出処理を説明する図である。
【図6】実施例における手順6を行う他の実施例として
の波形信号処理を説明する図である。
の波形信号処理を説明する図である。
【図7】図6に示す手順6の処理を行うためのメインル
ーチンを示すフローチャートである。
ーチンを示すフローチャートである。
【図8】メインルーチンにおける波形生成処理サブルー
チンの詳細を示すフローチャート(1/2)である。
チンの詳細を示すフローチャート(1/2)である。
【図9】メインルーチンにおける波形生成処理サブルー
チンの詳細を示すフローチャート(2/2)である。
チンの詳細を示すフローチャート(2/2)である。
【図10】波形生成処理サブルーチンにおける波形読出
し処理サブルーチンの詳細を示すフローチャートであ
る。
し処理サブルーチンの詳細を示すフローチャートであ
る。
1 コンピュータ 2 キーボード 3 ディスプレイ装置 4 A/D変換器 5 D/A変換器
Claims (10)
- 【請求項1】 入力された時系列音の入力波形信号につ
いてその経過に従って特質を抽出する入力波形特質抽出
過程と、基準となる時系列音の基準波形信号についてそ
の経過に従った特質を取得する基準波形特質取得過程
と、 該入力波形特質抽出過程で抽出した各経過位置の入力波
形信号の特質を、対応する経過位置の基準波形信号の特
質に基づいて変更する特質変更過程とを備えた波形信号
処理方法。 - 【請求項2】 入力された時系列音の入力波形信号を時
間軸上で所定単位の時間区分で区切って各時間区分の入
力波形信号の特質を抽出する入力波形特質抽出過程と、 基準となる時系列音の基準波形信号を時間軸上で所定単
位の時間区分で区切った各時間区分の基準波形信号の特
質を取得する基準波形特質取得過程と、 該入力波形特質抽出過程で抽出した各時間区分の入力波
形信号の特質を、対応する時間経過位置の時間区分の基
準波形信号の特質に基づいて変更する特質変更過程とを
備えた波形信号処理方法。 - 【請求項3】 前記波形信号の特質として音量レベルま
たは時間区分の時間長が用いられ、前記特質変更過程
は、入力波形信号の特質を、各時間区分の入力波形信号
の特質と対応する時間経過位置の時間区分の基準波形信
号の特質の比に基づいて変更するようにしたものである
請求項2記載の波形信号処理方法。 - 【請求項4】 基準となる時系列音の基準波形信号の時
間軸上の位置を所定の変化量で変化して順次指定する第
1の時間情報を生成するとともに、該基準波形信号の所
定時間区分の時間長および該入力波形信号の所定時間区
分の時間長の双方に基づいた変化量で順次変化して該入
力波形信号の時間軸上の位置を順次指定する第2の時間
情報を生成する時間情報生成過程と、 該基準波形信号の特質として該第1の時間情報によって
指定される時間位置におけるピッチを取得する基準波形
特質取得過程と、 該第2の時間情報によって指定される時間位置における
該入力波形信号のピッチを該第1の時間情報によって指
定される対応する時間位置における該基準波形信号のピ
ッチに基づいて変更する特質変更過程とを備えた波形信
号処理方法。 - 【請求項5】 基準となる時系列音の基準波形信号につ
いてその経過に従った特質として少なくともピッチを取
得する基準波形特質取得過程と、 入力された時系列音の入力波形信号を時間軸上で所定周
期を単位とする切出し区間で切り出す入力波形切出し過
程と、 該入力波形信号の各経過位置での特質を対応する経過位
置の基準波形信号の特質に基づいて変更する過程であっ
て、少なくとも該切り出した各切出し区間の入力波形信
号のピッチを対応する経過位置の基準波形信号のピッチ
に基づいて変更する特質変更過程とを備えた波形信号処
理方法。 - 【請求項6】 該基準波形信号の時間軸上の位置を所定
の変化量で変化して順次指定する第1の時間情報を生成
するとともに、該基準波形信号の所定時間区分の時間長
および該入力波形信号の所定時間区分の時間長の双方に
基づいた変化量で変化して該入力波形信号の時間軸上の
位置を順次指定する第2の時間情報を生成する時間情報
生成過程を備え、 前記基準波形特質取得過程は、該基準波形信号につい
て、該第1の時間情報によって指定される時間位置にお
けるピッチを該基準波形信号の特質として取得するよう
にし、 前記特質変更過程は、該第2の時間情報によって指定さ
れる時間位置における該入力波形信号のピッチを該第1
の時間情報によって指定される時間位置における該基準
波形信号のピッチに基づいて変更するものである請求項
5記載の波形信号処理方法。 - 【請求項7】 前記基準波形特質取得過程は、入力され
た基準波形信号の時間経過に従った特質をその基準波形
信号自体から抽出するものである請求項1〜6のいずれ
かに記載の波形信号処理方法。 - 【請求項8】 前記基準波形特質取得手段は、予め抽出
してある基準波形信号の時間経過に従った特質を提供す
る手段から該基準波形信号の特質を取得するものである
請求項1〜6のいずれかに記載の波形信号処理方法。 - 【請求項9】 前記時間区分は音節を単位とするもので
ある請求項2、3、4または6記載の波形信号処理方
法。 - 【請求項10】 請求項1〜9に記載のいずれかに記載
の波形信号処理方法を行うよう構成された波形信号処理
装置。
Priority Applications (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8335547A JPH10171459A (ja) | 1996-12-16 | 1996-12-16 | 波形信号処理方法および装置 |
Applications Claiming Priority (1)
| Application Number | Priority Date | Filing Date | Title |
|---|---|---|---|
| JP8335547A JPH10171459A (ja) | 1996-12-16 | 1996-12-16 | 波形信号処理方法および装置 |
Publications (1)
| Publication Number | Publication Date |
|---|---|
| JPH10171459A true JPH10171459A (ja) | 1998-06-26 |
Family
ID=18289807
Family Applications (1)
| Application Number | Title | Priority Date | Filing Date |
|---|---|---|---|
| JP8335547A Pending JPH10171459A (ja) | 1996-12-16 | 1996-12-16 | 波形信号処理方法および装置 |
Country Status (1)
| Country | Link |
|---|---|
| JP (1) | JPH10171459A (ja) |
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100483138C (zh) | 2004-12-24 | 2009-04-29 | 陈耀钧 | 单周期波形检测分析方法及系统 |
| JP2011215643A (ja) * | 2011-07-19 | 2011-10-27 | Yamaha Corp | 音声特徴量算出装置 |
| JP2015073149A (ja) * | 2013-10-01 | 2015-04-16 | Kddi株式会社 | オーディオ信号処理装置、録音再生装置およびプログラム |
| JP2016050994A (ja) * | 2014-08-29 | 2016-04-11 | ヤマハ株式会社 | 音響処理装置 |
| CN108231048A (zh) * | 2017-12-05 | 2018-06-29 | 北京小唱科技有限公司 | 修正音频节奏的方法及装置 |
-
1996
- 1996-12-16 JP JP8335547A patent/JPH10171459A/ja active Pending
Cited By (5)
| Publication number | Priority date | Publication date | Assignee | Title |
|---|---|---|---|---|
| CN100483138C (zh) | 2004-12-24 | 2009-04-29 | 陈耀钧 | 单周期波形检测分析方法及系统 |
| JP2011215643A (ja) * | 2011-07-19 | 2011-10-27 | Yamaha Corp | 音声特徴量算出装置 |
| JP2015073149A (ja) * | 2013-10-01 | 2015-04-16 | Kddi株式会社 | オーディオ信号処理装置、録音再生装置およびプログラム |
| JP2016050994A (ja) * | 2014-08-29 | 2016-04-11 | ヤマハ株式会社 | 音響処理装置 |
| CN108231048A (zh) * | 2017-12-05 | 2018-06-29 | 北京小唱科技有限公司 | 修正音频节奏的方法及装置 |
Similar Documents
| Publication | Publication Date | Title |
|---|---|---|
| JP3319211B2 (ja) | 音声変換機能付カラオケ装置 | |
| JP3985814B2 (ja) | 歌唱合成装置 | |
| JP3102335B2 (ja) | フォルマント変換装置およびカラオケ装置 | |
| JP3815347B2 (ja) | 歌唱合成方法と装置及び記録媒体 | |
| JP4124247B2 (ja) | 楽曲練習支援装置、制御方法及びプログラム | |
| US5857171A (en) | Karaoke apparatus using frequency of actual singing voice to synthesize harmony voice from stored voice information | |
| US5703311A (en) | Electronic musical apparatus for synthesizing vocal sounds using format sound synthesis techniques | |
| JP3598598B2 (ja) | カラオケ装置 | |
| US5428708A (en) | Musical entertainment system | |
| US5955693A (en) | Karaoke apparatus modifying live singing voice by model voice | |
| JP2008146094A (ja) | 音声イントネーション較正方法 | |
| JP4207902B2 (ja) | 音声合成装置およびプログラム | |
| US5902951A (en) | Chorus effector with natural fluctuation imported from singing voice | |
| JPH10171459A (ja) | 波形信号処理方法および装置 | |
| CN100524456C (zh) | 歌唱声音合成方法和装置 | |
| JPH11259066A (ja) | 音楽音響信号分離方法、その装置およびそのプログラム記録媒体 | |
| TW201027514A (en) | Singing synthesis systems and related synthesis methods | |
| JP3901008B2 (ja) | 音声変換機能付カラオケ装置 | |
| WO2006003848A1 (ja) | 楽曲情報算出装置及び楽曲再生装置 | |
| JP4024440B2 (ja) | 曲検索システムのデータ入力装置 | |
| WO2022208627A1 (ja) | 歌唱音出力システムおよび方法 | |
| JP7367835B2 (ja) | 録音再生装置、録音再生装置の制御方法及び制御プログラム並びに電子楽器 | |
| JP3731476B2 (ja) | 波形データ解析方法、波形データ解析装置および記録媒体 | |
| JP4043126B2 (ja) | 波形再生装置の制御データ生成装置 | |
| JP3613191B2 (ja) | 波形生成方法及び装置 |