JP2001312276A - オーディオ波形データの時間軸圧縮伸長再生装置 - Google Patents

オーディオ波形データの時間軸圧縮伸長再生装置

Info

Publication number
JP2001312276A
JP2001312276A JP2000133840A JP2000133840A JP2001312276A JP 2001312276 A JP2001312276 A JP 2001312276A JP 2000133840 A JP2000133840 A JP 2000133840A JP 2000133840 A JP2000133840 A JP 2000133840A JP 2001312276 A JP2001312276 A JP 2001312276A
Authority
JP
Japan
Prior art keywords
audio waveform
data
tempo
waveform data
reproduction
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
Application number
JP2000133840A
Other languages
English (en)
Inventor
Takashi Haga
剛史 羽賀
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Roland Corp
Original Assignee
Roland Corp
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 Roland Corp filed Critical Roland Corp
Priority to JP2000133840A priority Critical patent/JP2001312276A/ja
Publication of JP2001312276A publication Critical patent/JP2001312276A/ja
Pending legal-status Critical Current

Links

Landscapes

  • Electrophonic Musical Instruments (AREA)
  • Compression, Expansion, Code Conversion, And Decoders (AREA)

Abstract

(57)【要約】 【課題】演奏テンポなどの周期情報に正確に追従して時
間軸圧縮伸長したオーディオ波形信号を得る。 【解決手段】オーディオ波形信号を表すオーディオ波形
データを記憶した記憶手段と、記憶手段に記憶されたオ
ーディオ波形データを読み出して再生波形信号を生成し
て出力する再生波形信号生成手段と、記憶手段に記憶さ
れたオーディオ波形データ上を所定周期間隔で示す位置
データを生成する位置データ生成手段と、所望の周期情
報を発生する周期情報発生手段と、再生波形信号生成手
段における再生波形信号の生成において、オーディオ波
形データの読み出し位置を、周期情報発生手段によって
発生された所望の周期情報に同期して、位置データ生成
手段によって生成された位置データの表す位置にジャン
プする制御を行う波形生成位置制御手段とを有し、オー
ディオ波形データを所望の周期情報の周期に対応して時
間軸圧縮伸長する。

Description

【発明の詳細な説明】
【0001】
【発明の属する技術分野】本発明は、オーディオ波形デ
ータの時間軸圧縮伸長再生装置に関し、さらに詳細に
は、記憶されたオーディオ波形データを時間軸上で圧縮
して再生したり、記憶されたオーディオ波形データを時
間軸上で伸長して再生したりすることのできるオーディ
オ波形データの時間軸圧縮伸長再生装置に関する。
【0002】なお、本明細書において、オーディオ波形
データの「時間軸圧縮伸長」とは、オーディオ波形デー
タを「時間軸上で圧縮」(時間軸圧縮)することと、オ
ーディオ波形データを「時間軸上で伸長」(時間軸伸
長)することとを意味する。
【0003】
【従来の技術】従来より、予め記憶されたオーディオ波
形データを時間軸上で圧縮して再生したり、予め記憶さ
れたオーディオ波形データを時間軸上で伸長して再生し
たりすることのできるオーディオ波形データの時間軸圧
縮伸長再生装置が知られている。
【0004】図1は、こうした従来のオーディオ波形デ
ータの時間軸圧縮伸長再生装置により行われる処理の説
明図である。
【0005】即ち、図1には、アドレス0からアドレス
Aendまで記憶されているとともに、オリジナルの発
音時間がTorgのオーディオ波形信号のオーディオ波
形データを、時間軸圧縮伸長して発音時間を変化させる
処理が示されている。
【0006】まず、図1を参照しながら、オーディオ波
形データを時間軸上で圧縮する時間軸圧縮処理について
説明することとする。
【0007】ここで、オリジナル発音時間Torgを発
音時間Tcmpに時間軸圧縮する場合について説明する
と、この場合には、従来のオーディオ波形データの時間
軸圧縮伸長再生装置では、図1において2点鎖線で示す
時間対アドレスの変化特性を得て、それに基づいてオー
ディオ波形データの読み出しを制御して時間軸圧縮され
たオーディオ波形データを得るようになされていた。
【0008】ただし、この2点鎖線で示すアドレス変化
特性そのものでオーディオ波形データを読み出してオー
ディオ波形データを再生すると、オーディオ波形データ
の読み出し速度(オーディオ波形データの読み出し位置
の歩進量)が変化してしまい(即ち、オーディオ波形デ
ータの読み出し速度が速くなってしまい)、再生される
オーディオ波形データの音高が高く変化してしまうこと
になる。
【0009】それを防ぐために、従来のオーディオ波形
データの時間軸圧縮伸長再生装置においては、オーディ
オ波形データを読み出す際に、オリジナルのオーディオ
波形データをサンプリングしたときと同じ速度で読み出
しを行うとともに、予め定められた時間Tx毎に上記し
た2点鎖線で示す時間対アドレス変化特性の示すアドレ
スに、オーディオ波形データの読み出し位置をジャンプ
させるようにして読み出しを行い、再生されるオーディ
オ波形データの音高が高く変化しないようにオーディオ
波形データの読み出しを制御している。
【0010】その結果、オーディオ波形データの読み出
しのアドレスは、図1において2点鎖線に沿って描かれ
ている太実線のように変化し、全体として見ると図1に
おける2点鎖線のような時間変化をするオーディオ波形
データを再生することができるようになるものである。
【0011】即ち、この太実線で示すアドレスでオーデ
ィオ波形データを読み出すことにより、音高が変化する
ことなく時間軸のみ圧縮されたオーディオ波形データを
再生することができるものである。
【0012】なお、実際の処理においては、時間Tx毎
に読み出されたオーディオ波形データをクロスフェード
処理で接続するようにようなされており、接続点におけ
るノイズの発生を防止している。
【0013】次に、図1を参照しながら、オーディオ波
形データを時間軸上で伸長する時間軸伸長処理について
説明することとする。
【0014】この時間軸伸長処理においても、上記した
時間軸圧縮処理の場合と同様に、オリジナル発音時間T
orgを発音時間Tstrに時間軸伸長する場合につい
て説明すると、この場合には、従来のオーディオ波形デ
ータの時間軸圧縮伸長再生装置では、図1において1点
鎖線で示す時間対アドレスの変化特性を得て、それに基
づいてオーディオ波形データの読み出しを制御して時間
軸圧縮されたオーディオ波形データを得るようになされ
ていた。
【0015】ただし、この1点鎖線で示すアドレス変化
特性そのものでオーディオ波形データを読み出してオー
ディオ波形データを再生すると、オーディオ波形データ
の読み出し速度(オーディオ波形データの読み出し位置
の歩進量)が変化してしまい(即ち、オーディオ波形デ
ータの読み出し速度が遅くなってしまい)、再生される
オーディオ波形データの音高が低く変化してしまうこと
になる。
【0016】それを防ぐために、従来のオーディオ波形
データの時間軸圧縮伸長再生装置においては、オーディ
オ波形データを読み出す際に、オリジナルのオーディオ
波形データをサンプリングしたときと同じ速度で読み出
しを行うとともに、予め定められた時間Tx毎に上記し
た1点鎖線で示す時間対アドレス変化特性の示すアドレ
スに、オーディオ波形データの読み出し位置をジャンプ
させるようにして読み出しを行い、再生されるオーディ
オ波形データの音高が低く変化しないようにオーディオ
波形データの読み出しを制御している。
【0017】その結果、オーディオ波形データの読み出
しのアドレスは、図1において1点鎖線に沿って描かれ
ている太実線のように変化し、全体として見ると図1に
おける1点鎖線のような時間変化をするオーディオ波形
データを再生することができるようになるものである。
【0018】即ち、この太実線で示すアドレスでオーデ
ィオ波形データを読み出すことにより、音高が変化する
ことなく時間軸のみ伸長されたオーディオ波形データを
再生することができるものである。
【0019】なお、実際の処理においては、時間Tx毎
に読み出されたオーディオ波形データをクロスフェード
処理で接続するようにようなされており、接続点におけ
るノイズの発生を防止している。
【0020】ところで、従来のオーディオ波形データの
時間軸圧縮伸長再生装置においては、上記したように時
間軸圧縮伸長した後の発音時間(時間軸圧縮する場合に
は発音時間Tcmpであり、時間軸伸長する場合には発
音時間Tstrである。)が直接与えられている場合に
は、当該直接与えられた発音時間を用いて時間軸圧縮伸
長を行えばよいので何らの問題もないが、楽音に対して
時間軸圧縮伸長処理を施す場合には、テンポ情報を用い
て時間軸圧縮伸長処理を行うことがある。
【0021】例えば、テンポ情報としての演奏テンポの
値が100BPMのオリジナル波形データを、120B
PMの演奏テンポの値に変更する場合には、この演奏テ
ンポ値から「100/120」だけ時間軸圧縮する処理
を行っていた。
【0022】しかしながら、このような演奏テンポはあ
まり正確な値が得られない場合があったり、有効桁数が
あまり多く取れずに、上記したような演奏テンポからの
演算過程(上記した例においては、「100/120」
の演算を行う演算過程である。)において演算誤差が生
じたりして、正確な演奏テンポで時間軸圧縮伸長したオ
ーディオ波形データを得ることが困難であるという問題
点あった。
【0023】
【発明が解決しようとする課題】本発明は、上記したよ
うな従来の技術の有する問題点に鑑みてなされたもので
あり、その目的とするところは、演奏テンポなどの周期
情報に正確に追従して時間軸圧縮伸長したオーディオ波
形データを得ることを可能としたオーディオ波形データ
の時間軸圧縮伸長再生装置を提供しようとするものであ
る。
【0024】
【課題を解決するための手段】上記目的を達成するため
に、本発明によるオーディオ波形データの時間軸圧縮伸
長再生装置は、周期情報に同期してオーディオ波形デー
タの読み出し位置をジャンプさせることにより、オーデ
ィオ波形データの軸圧縮伸長処理を行うようにしたもの
である。
【0025】このため、本発明によるオーディオ波形デ
ータの時間軸圧縮伸長再生装置によれば、周期情報に正
確に追従してオーディオ波形データの時間軸圧縮伸長処
理を行うことができるようになる。
【0026】また、本発明によるオーディオ波形データ
の時間軸圧縮伸長再生装置によれば、リアルタイムで時
間軸圧縮伸長処理を行っても、時間変化に正確に追従し
てオーディオ波形データの時間軸圧縮伸長処理が実行さ
れることになる。
【0027】さらに、周期情報として再生テンポに対応
した周期の周期情報を使用すると、再生テンポに正確に
対応する時間軸圧縮伸長したオーディオ波形信号を得る
ことができるようになる。
【0028】さらにまた、周期情報として再生テンポに
対応した周期の周期情報を使用する場合には、オーディ
オ波形データのジャンプ処理が演奏テンポに同期して行
われるため、ジャンプ処理による不自然な楽音は演奏テ
ンポに同期して生じることになるので、不自然さ目立た
なくなり、高音質な楽音を生成することができるように
なる。
【0029】即ち、本発明のうち請求項1に記載の発明
は、オーディオ波形信号を表すオーディオ波形データを
記憶した記憶手段と、上記記憶手段に記憶された上記オ
ーディオ波形データを読み出して再生波形信号を生成し
て出力する再生波形信号生成手段と、上記記憶手段に記
憶された上記オーディオ波形データ上を所定周期間隔で
示す位置データを生成する位置データ生成手段と、所望
の周期情報を発生する周期情報発生手段と、上記再生波
形信号生成手段における再生波形信号の生成において、
上記オーディオ波形データの読み出し位置を、上記周期
情報発生手段によって発生された上記所望の周期情報に
同期して、上記位置データ生成手段によって生成された
上記位置データの表す位置にジャンプする制御を行う波
形生成位置制御手段とを有し、上記オーディオ波形デー
タを上記所望の周期情報の周期に対応して時間軸圧縮伸
長するようにしたものである。
【0030】従って、本発明のうち請求項1に記載の発
明によれば、所望の周期の周期情報に従って、オーディ
オ波形データの再生位置たる読み出し位置をジャンプす
る処理が行われるので、当該所望の周期情報に正確に追
従したオーディオ波形データの時間軸圧縮伸長処理を行
うことができ、また、リアルタイムで時間軸圧縮伸長処
理を行っても、時間変化に正確に追従して時間軸圧縮伸
長処理が実行されることになる。
【0031】なお、上記した本発明のうち請求項1に記
載の発明の各構成要素と後述する実施の形態における各
構成との関係について説明しておくと、上記した「記憶
手段」は後述する実施の形態における「レコーダメモ
リ」に対応し、上記した「再生波形信号生成手段」は後
述する実施の形態における「再生処理」に対応し、上記
した「位置データ生成手段」は後述する実施の形態にお
ける「テンプレート作成処理」に対応し、上記した「位
置データ」は後述する実施の形態における「テンプレー
トとして作成されたアドレス」に対応し、上記した「周
期情報発生手段」は後述する実施の形態における「シー
ケンサ12」に対応し、上記した「周期情報」は後述す
る実施の形態における「テンポクロック」に対応し、上
記した「波形生成位置制御手段」は後述する実施の形態
における「テンポ追従処理におけるジャンプ処理」に対
応する。
【0032】また、本発明のうち請求項2に記載の発明
は、オーディオ波形信号を表すオーディオ波形データと
所望の周期間隔の上記オーディオ波形データ上の位置を
表す第1位置データとを記憶した記憶手段と、上記記憶
手段に記憶された上記オーディオ波形データを読み出し
て再生波形信号を生成して出力する再生波形信号生成手
段と、上記記憶手段に記憶された上記第1位置データに
基づいて、上記第1位置データより短い周期間隔の上記
オーディオ波形データ上の位置を表す第2位置データを
生成する第2位置データ生成手段と、所望の周期情報を
発生する周期情報発生手段と、上記再生波形信号生成手
段における再生波形信号の生成において、上記オーディ
オ波形データの読み出し位置を、上記周期情報発生手段
によって発生された上記所望の周期情報に同期して、上
記第2位置データ生成手段によって生成された上記第2
位置データの表す位置にジャンプする制御を行う波形生
成位置制御手段とを有し、上記オーディオ波形データを
上記所望の周期情報の周期に対応して時間軸圧縮伸長す
るようにしたものである。
【0033】従って、本発明のうち請求項2に記載の発
明によれば、所望の周期の周期情報に従って、記憶して
おいた第1位置データに基づいて生成された第2位置デ
ータの表す位置にオーディオ波形データの再生位置たる
読み出し位置をジャンプする処理が行われるので、当該
所望の周期情報に正確に追従したオーディオ波形データ
の時間軸圧縮伸長処理を行うことができ、また、リアル
タイムで時間軸圧縮伸長処理を行っても、時間変化に正
確に追従して時間軸圧縮伸長処理が実行されることにな
る。
【0034】なお、上記した本発明のうち請求項2に記
載の発明の各構成要素と後述する実施の形態における各
構成との関係について説明しておくと、上記した「記憶
手段」は後述する実施の形態における「レコーダメモ
リ」に対応し、上記した「第1位置データ」は「小節毎
のレコーダ時刻」に対応し、上記した「再生波形信号生
成手段」は後述する実施の形態における「再生処理」に
対応し、上記した「第2位置データ生成手段」は後述す
る実施の形態における「テンプレート作成処理」に対応
し、上記した「第2位置データ」は後述する実施の形態
における「テンプレートとして作成されたアドレス」に
対応し、上記した「周期情報発生手段」は後述する実施
の形態における「シーケンサ12」に対応し、上記した
「周期情報」は後述する実施の形態における「テンポク
ロック」に対応し、上記した「波形生成位置制御手段」
は後述する実施の形態における「テンポ追従処理におけ
るジャンプ処理」に対応する。
【0035】また、本発明のうち請求項3に記載の発明
は、所望の演奏テンポに従って演奏されたオーディオ波
形信号を表すオーディオ波形データと該所望の演奏テン
ポに対応した周期間隔の上記オーディオ波形データ上の
位置を表す第1位置データとを記憶した記憶手段と、上
記記憶手段に記憶された上記オーディオ波形データを読
み出して再生波形信号を生成して出力する再生波形信号
生成手段と、上記記憶手段に記憶された上記第1位置デ
ータに基づいて、上記第1位置データより短い周期間隔
の上記オーディオ波形データ上の位置を表す第2位置デ
ータを生成する第2位置データ生成手段と、再生テンポ
に対応した周期情報を発生する周期情報発生手段と、上
記再生波形信号生成手段における再生波形信号の生成に
おいて、上記オーディオ波形データの読み出し位置を、
上記周期情報発生手段によって発生された上記再生テン
ポに対応した周期情報に同期して、上記第2位置データ
生成手段によって生成された上記第2位置データの表す
位置にジャンプする制御を行う波形生成位置制御手段と
を有し、上記オーディオ波形データを上記再生テンポに
対応して時間軸圧縮伸長するようにしたものである。
【0036】従って、本発明のうち請求項3に記載の発
明によれば、再生テンポに対応した周期情報に従って、
記憶しておいた第1位置データに基づいて生成された第
2位置データの表す位置にオーディオ波形データの再生
位置たる読み出し位置をジャンプする処理が行われるの
で、当該再生テンポに正確に対応したオーディオ波形デ
ータの時間軸圧縮伸長処理を行うことができ、また、ジ
ャンプ処理による不自然な楽音は再生テンポに同期して
生じることになるので、不自然さ目立たなくなり、高音
質な楽音を生成することができるようになる。
【0037】なお、上記した本発明のうち請求項3に記
載の発明の各構成要素と後述する実施の形態における各
構成との関係について説明しておくと、上記した「記憶
手段」は後述する実施の形態における「レコーダメモ
リ」に対応し、上記した「第1位置データ」は「小節毎
のレコーダ時刻」に対応し、上記した「再生波形信号生
成手段」は後述する実施の形態における「再生処理」に
対応し、上記した「第2位置データ生成手段」は後述す
る実施の形態における「テンプレート作成処理」に対応
し、上記した「第2位置データ」は後述する実施の形態
における「テンプレートとして作成されたアドレス」に
対応し、上記した「周期情報発生手段」は後述する実施
の形態における「シーケンサ12」に対応し、上記した
「周期情報」は後述する実施の形態における「テンポク
ロック」に対応し、上記した「波形生成位置制御手段」
は後述する実施の形態における「テンポ追従処理におけ
るジャンプ処理」に対応する。
【0038】また、本発明のうち請求項4に記載の発明
は、設定された所望の演奏テンポに対応して自動演奏し
楽音信号を発生するとともに、上記所望の演奏テンポに
対応した第1周期情報と該第1周期情報より短い周期の
第2周期情報とを発生する自動演奏手段と、上記自動演
奏手段を所望の演奏テンポに従って自動演奏するととも
に入力手段に入力されたオーディオ波形信号をサンプリ
ングして、該オーディオ波形信号を表すオーディオ波形
データと、上記オーディオ波形信号と上記第1周期情報
との位置関係を表す第1位置データとを記憶手段に記憶
するサンプリング手段と、上記自動演奏手段を上記所望
の演奏テンポとは異なる所望の再生テンポに設定し該再
生テンポに従って自動演奏するとともに、上記記憶手段
に記憶されたオーディオ波形データを読み出し再生波形
信号を生成して出力する再生波形信号生成手段と、上記
記憶手段に記憶された上記第1位置データに基づいて、
上記第1位置データより短い周期間隔の上記オーディオ
波形データ上の位置を表す第2位置データを生成する第
2位置データ生成手段と、上記再生波形信号生成手段に
おける再生波形信号の生成において、上記オーディオ波
形データの読み出し位置を、上記再生テンポに従って自
動演奏される上記自動演奏手段より発生される上記第2
周期情報に同期して上記第2位置データの表す位置にジ
ャンプする制御を行う波形生成位置制御手段とを有し、
上記オーディオ波形データを上記再生テンポに対応して
時間軸圧縮伸長するようにしたものである。
【0039】従って、本発明のうち請求項4に記載の発
明によれば、再生テンポに従って自動演奏される自動演
奏手段より発生される第2周期情報に同期して、記憶し
ておいた第1位置データに基づいて生成された第2位置
データの表す位置にオーディオ波形データの再生位置た
る読み出し位置をジャンプする処理が行われるので、当
該再生テンポに正確に対応したオーディオ波形データの
時間軸圧縮伸長処理を行うことができ、また、ジャンプ
処理による不自然な楽音は再生テンポに同期して生じる
ことになるので、不自然さ目立たなくなり、高音質な楽
音を生成することができるようになる。
【0040】なお、上記した本発明のうち請求項4に記
載の発明の各構成要素と後述する実施の形態における各
構成との関係について説明しておくと、上記した「自動
演奏手段」は後述する実施の形態における「シーケンサ
12」に対応し、上記した「第1周期情報」は後述する
実施の形態における「小節情報」に対応し、上記した
「第2周期情報」は後述する実施の形態における「テン
ポクロック」に対応し、上記した「サンプリング手段」
は後述する実施の形態における「録音処理」に対応し、
上記した「第1位置データ」は「小節毎のレコーダ時
刻」に対応し、上記した「記憶手段」は後述する実施の
形態における「レコーダメモリ」に対応し、上記した
「第2位置データ生成手段」は後述する実施の形態にお
ける「テンプレート作成処理」に対応し、上記した「第
2位置データ」は後述する実施の形態における「テンプ
レートとして作成されたアドレス」に対応し、上記した
「再生波形信号生成手段」は後述する実施の形態におけ
る「再生処理」に対応し、上記した「波形生成位置制御
手段」は後述する実施の形態における「テンポ追従処理
におけるジャンプ処理」に対応する。
【0041】ここで、本発明のうち請求項5に記載の発
明のように、請求項2、請求項3または請求項4のいず
れか1項に記載の発明において、上記記憶手段は、上記
オーディオ波形データとともに上記所望の演奏テンポを
表すテンポデータを記憶し、上記第2位置データ生成手
段は、上記第1位置データと上記記憶手段に記憶された
上記テンポデータとに基づいて第2位置データを生成す
るものとしてもよい。
【0042】なお、上記した本発明のうち請求項5に記
載の発明の各構成要素と後述する実施の形態における各
構成との関係について説明しておくと、上記した「テン
ポデータ」は後述する実施の形態における「録音時のテ
ンポ」に対応する。
【0043】さらに、本発明のうち請求項6に記載の発
明のように、請求項2、請求項3または請求項4のいず
れか1項に記載の発明において、上記第2位置データ生
成手段は、上記第1位置データ間を等分割することによ
り第2位置データを生成するものとしてもよい。
【0044】
【発明の実施の形態】以下、添付の図面を参照しなが
ら、本発明によるオーディオ波形データの時間軸圧縮伸
長再生装置の実施の形態の一例を詳細に説明する。
【0045】なお、以下の説明においては、本発明の理
解を容易にするために、従来の技術を適用できる技術内
容の説明は省略し、本発明の実施に関連する技術内容で
ある、オーディオ波形データの時間軸圧縮伸長処理につ
いてのみ詳細に説明するものとする。
【0046】まず、図2には、本発明によるオーディオ
波形データの時間軸圧縮伸長再生装置の実施の形態の一
例を備えたシステムのブロック構成図が示されており、
この図2に示すシステムは、図示しないマイクロコンピ
ュータにより全体の動作の制御が行われている。
【0047】この図2に示すシステムは、レコーダ10
とシーケンサ(音源を含む自動演奏装置)12とが一体
になって構成されているシステムである。
【0048】ここで、レコーダ10は、シーケンサ12
から「l/32」拍のテンポクロックと、小節情報およ
び演奏テンポ値を供給されるものである。
【0049】なお、この実施の形態においては、説明を
簡潔にして理解を容易にするために、レコーダ10はモ
ノラルにより録音されているものとするが、本発明をス
テレオにより録音する際に用いることができることは勿
論である。
【0050】さらに図2に示すシステムは、このシステ
ムの外部からアナログ信号であるオーディオ波形信号を
入力する入力部14と、入力部14に入力されたアナロ
グ信号であるオーディオ波形信号をデジタル信号である
オーディオ波形データにアナログ/デジタル変換するア
ナログ/デジタル変換器(A/D)16と、レコーダ1
0の記憶手段として機能するメモリ18と、録音操作
子、再生操作子、停止操作子、テンポ設定操作子、演奏
パターン選択操作子およびオーディオ波形データ選択操
作子などの各種の操作子などより構成されるユーザーイ
ンターフェース部(User Interface:U
I)20と、レコーダ10とシーケンサ12とから出力
されたオーディオ波形データを合成する合成部22と、
合成部22において合成されたデジタル信号であるオー
ディオ波形データをアナログ信号であるオーディオ波形
信号に変換するデジタル/アナログ変換器(D/A)2
4と、デジタル/アナログ変換器24から出力されたオ
ーディオ波形信号を増幅するアンプ26と、アンプ26
において増幅されたオーディオ波形信号を外部のスピー
カー(図示せず)などに出力するための出力部28とを
有している。
【0051】なお、ユーザーインターフェース部20に
おいては、各操作子の操作を検出して、各操作子の操作
に応じた各処理を行うための制御を行っている。
【0052】そして、このシステムにおいては、フロー
チャートを参照しながら後述するように、シーケンサ1
2の伴奏にあわせてレコーダ10によりオーディオ波形
データを録音し、録音した情報たるオーディオ波形デー
タを再生するときにシーケンサ12のテンポを録音時か
ら変更したとしても、レコーダ10は録音した情報たる
オーディオ波形データを時間軸伸張圧縮してシーケンサ
12に追従することができるようになされているもので
ある。
【0053】また、このシステムにおいては、合成部2
2の処理により、レコーダ10とシーケンサ12との再
生音がミキシングされて出力するようになされている。
【0054】さらに、シーケンサ12の伴奏は後で自由
に作ったり、別の伴奏パターンと入れ替えたりすること
ができるものであるので、レコーダ10の録音時に演奏
させる伴奏は、再生時にレコーダ10と一緒に演奏され
る伴奏パターンとは必ずしも同じではなくてよい。
【0055】そして、上記したユーザーインターフェー
ス部20の録音操作子を操作すると、図3のフローチャ
ートに示すUI録音処理ルーチンを起動して、演奏パタ
ーン選択操作子により選択された演奏パターンとテンポ
設定操作子により設定された演奏テンポとを検出し、図
4にデータ構成を示すレコーダメモリ(後述する。)の
ヘッダ部42に記憶する。また、これと同時に、図4の
フローチャートに示す録音処理ルーチン(後述する。)
の割り込み処理の起動を許可する。
【0056】なお、ユーザーインターフェース部20の
停止操作子が操作されると、図4のフローチャートに示
す録音処理ルーチンの割り込み処理を禁止する。
【0057】ここで、図3のフローチャートに示すUI
録音処理ルーチンを詳細に説明すると、このUI録音処
理ルーチンが起動された場合には、まずステップS30
2の処理において、ユーザーインターフェース部20の
演奏パターン選択操作子によりシーケンサ12が自動演
奏する演奏パターンが選択されているか否かと、ユーザ
ーインターフェース部20のテンポ設定操作子によりシ
ーケンサ12が自動演奏する際の演奏テンポが設定され
ているか否かを判断する。
【0058】このステップS302の判断処理におい
て、演奏パターンと演奏テンポとの両者が設定されてい
るとは判断されなかった場合には、演奏パターンと演奏
テンポとの両者が設定されていると判断されまで、ステ
ップS302の判断処理を繰り返すことになる。
【0059】そして、ステップS302の判断処理にお
いて、演奏パターンと演奏テンポとの両者が設定されて
いると判断された場合には、ステップS304の処理へ
進み、演奏パターンと演奏テンポとを図4にデータ構成
を示すレコーダメモリのヘッダ部42に記憶するととも
に、図4のフローチャートに示す録音処理ルーチンの割
り込み処理の起動を許可してレコーダ10の録音処理を
開始させる。
【0060】ここで、レコーダメモリは、メモリ18の
所定の領域内に設定されるものであり、図4にはレコー
ダメモリに記憶されるデータ構成が示されており、ステ
ップS304の処理においては、レコーダメモリのヘッ
ダ部42に、「伴奏パターン選択データ」として演奏パ
ターンが記憶され、「録音時のテンポ」として演奏テン
ポが記憶されることになる。
【0061】上記したステップS304の処理を終了す
ると、ステップS306の処理へ進み、ユーザーインタ
ーフェース部20の停止操作子が操作されたか否かを判
断する。
【0062】このステップS306の判断処理におい
て、停止操作子が操作されていないと判断された場合に
は、停止操作子が操作されたと判断されまで、ステップ
S306の判断処理を繰り返すことになる。
【0063】そして、ステップS306の判断処理にお
いて、停止操作子が操作されたと判断された場合には、
ステップS308の処理へ進み、図4のフローチャート
に示す録音処理ルーチンの割り込み処理を禁止してレコ
ーダ10の録音処理を停止させ、このUI録音処理ルー
チンを終了する。
【0064】次に、図4のフローチャートに示す録音処
理ルーチンを詳細に説明するが、この録音処理ルーチン
はレコーダ10における処理であり、UI録音処理ルー
チンのステップS304の処理において割り込み処理の
起動を許可されて実行される、サンプリング周期毎の割
り込み処理である。
【0065】なお、ユーザーインターフェース部20の
録音操作子が操作されたときには、レコーダ10におい
ては、この録音処理ルーチンに示す処理が実行されるこ
とになるが、シーケンサ12においては、ステップS3
04において設定された演奏パターンおよび演奏テンポ
に従って自動演奏(伴奏)が開始される。
【0066】ここで、図4のフローチャートに示す録音
処理ルーチンが起動されると、まずステップS402の
処理において、アナログ/デジタル変換器16からオー
ディオ波形データを受け取り、レコーダメモリのサンプ
ル波形メモリ部46に「サンプリングデータ」として記
憶する処理を行う。
【0067】上記したステップS402の処理を終了す
ると、ステップS404の処理へ進み、シーケンサ12
からレコーダ10へ供給されている小節情報に基づい
て、現在の小節値が変化したか否かを判断する。
【0068】なお、この現在の小節値が変化したか否か
の判断の処理について詳細に説明すると、当該判断処理
は、以下に説明するバッファメモリに記憶されている
「現在の小節」を参照して行われるものである。
【0069】ここで、「現在の小節」は、シーケンサ1
2から情報が入力される毎に起動する別の割り込みルー
チンの処理中において、入力された情報が小節情報であ
ると判断されると、図5に示すように、入力された小節
情報を「現在の小節」としてバッファメモリに記憶する
ことによって得られるものである。
【0070】このステップS404の判断処理におい
て、現在の小節値が変化したと判断された場合には、ス
テップS406の処理へ進み、現在の小節値が変化した
ときのレコーダ時刻、即ち、小節の頭のレコーダ時刻
を、「小節毎のレコーダ時刻」としてレコーダメモリの
レコーダ時刻部44に記録する。
【0071】ここで、「レコーダ時刻」とは、1サンプ
ル周期に1増加させる(インクリメントする)値であっ
て、録音開始時を「0」と定義しており、サンプリング
データの位置を示すために使用する。
【0072】このステップS406の処理を終了する
と、ステップS408の処理へ進み、また、上記したス
テップS404の判断処理において、現在の小節値が変
化したと判断されなかった場合には、ステップS408
の処理へジャンプして進む。
【0073】そして、ステップS408の処理において
は、レコーダ時刻をインクリメントして、この録音処理
ルーチンを終了する。
【0074】次に、上記したユーザーインターフェース
部20の再生操作子を操作すると、図6のフローチャー
トに示すUI再生処理ルーチンを起動して、オーディオ
波形データ選択操作子の操作によって選択されたオーデ
ィオ波形データ(サンプリングデータ)を検出し、それ
を再生するオーディオ波形データとして設定し、図7の
フローチャートに示す再生処理ルーチン(後述する。)
の割り込み処理の起動を許可する。
【0075】なお、ユーザーインターフェース部20の
停止操作子が操作されると、図7のフローチャートに示
す再生処理ルーチンの割り込み処理を禁止する。
【0076】ここで、図6のフローチャートに示すUI
再生処理ルーチンを詳細に説明すると、このUI再生処
理ルーチンが起動された場合には、まずステップS60
2の処理において、ユーザーインターフェース部20の
オーディオ波形データ選択操作子により、レコーダ10
が再生するオーディオ波形データ(サンプリングデー
タ)として、レコーダメモリのサンプル波形メモリ部4
6に記録されたオーディオ波形データが選択されている
か否かを判断する。
【0077】このステップS602の判断処理におい
て、オーディオ波形データが選択されているとは判断さ
れなかった場合には、オーディオ波形データが選択され
ていると判断されまで、ステップS602の判断処理を
繰り返すことになる。
【0078】そして、ステップS602の判断処理にお
いて、オーディオ波形データが選択されていると判断さ
れた場合には、ステップS604の処理へ進み、図7の
フローチャートに示す再生処理ルーチンの割り込み処理
の起動を許可して、レコーダ10における選択したオー
ディオ波形データの再生処理を開始させる。
【0079】上記したステップS604の処理を終了す
ると、ステップS606の処理へ進み、ユーザーインタ
ーフェース部20の停止操作子が操作されたか否かを判
断する。
【0080】このステップS606の判断処理におい
て、停止操作子が操作されていないと判断された場合に
は、停止操作子が操作されたと判断されまで、ステップ
S606の判断処理を繰り返すことになる。
【0081】そして、ステップS606の判断処理にお
いて、停止操作子が操作されたと判断された場合には、
ステップS608の処理へ進み、図7のフローチャート
に示す再生処理ルーチンの割り込み処理を禁止してレコ
ーダ10の再生処理を停止させ、このUI再生処理ルー
チンを終了する。
【0082】次に、図7のフローチャートに示す再生処
理ルーチンを詳細に説明するが、この再生処理ルーチン
はレコーダ10における処理であり、UI再生処理ルー
チンのステップS604の処理において割り込み処理の
起動を許可されて実行される、サンプリング周期毎の割
り込み処理である。
【0083】この再生処理ルーチンにおいては、シーケ
ンサ12から「l/32」拍のテンポクロックと現在の
演奏テンポ値(BPM)と現在の小節情報とを供給され
ながら、サンプリング周期毎に割り込み処理を行うもの
である。
【0084】ここで、「テンポクロック」、「演奏テン
ポ値」ならびに「現在の小節」は、シーケンサ12から
情報が入力される毎に起動する別の割り込みルーチンの
処理中において、入力された情報がテンポクロック、演
奏テンポ値ならびに小節情報であると判断されると、図
8に示すように、入力されたテンポクロックを「テンポ
クロック」としてバッファメモリに記憶し、入力された
演奏テンポ値を「演奏テンポ値」としてバッファメモリ
に記憶し、入力された小節情報を「現在の小節」として
バッファメモリに記憶することによって得られるもので
ある。
【0085】ここで、図7のフローチャートに示す再生
処理ルーチンが起動されると、まずステップS702の
処理において、録音時に記憶していた「録音時のテンポ
情報(original tempo)」と現在のシー
ケンサ12からの「演奏テンポ値(current t
empo)」とを比較して、両者が一致するか否かを判
断する。
【0086】なお、「録音時のテンポ情報(origi
nal tempo)」としては、レコーダメモリのヘ
ッド部42に「録音時のテンポ」として記憶された演奏
テンポが用いられる。
【0087】上記したステップS702の判断処理にお
いて、「録音時のテンポ情報(original te
mpo)」と現在のシーケンサ12からの「演奏テンポ
値(current tempo)」とが一致すると判
断された場合には、ステップS704の処理へ進み、テ
ンポクロックが到来したか否かを判断する。
【0088】このステップS704の判断処理におい
て、テンポクロックが到来したと判断された場合には、
ステップS706の処理へ進み、シーケンサ12からレ
コーダ10へ供給されている小節情報に基づいて、現在
の小節値が変化したか否かを判断する。なお、この現在
の小節値が変化したか否かの判断処理は、バッファメモ
リに記憶されている「現在の小節」を参照して行われる
ものである。
【0089】そして、ステップS706の判断処理にお
いて、現在の小節値が変化したと判断された場合には、
ステップS708の処理へ進み、次の小節のテンプレー
ト作成依頼の要求を出力する。テンプレートの作成は、
この「次の小節のテンプレート作成依頼」の要求に基づ
いて、別の処理ルーチンであるテンプレート作成ルーチ
ン(ステップS730)によって処理されることにな
る。
【0090】なお、テンプレートの作成の処理に関して
は、図12に示すテンプレート作成ルーチンが実行する
処理内容の説明図を参照しながら後述する。
【0091】上記したステップS708の処理を終了す
ると、ステップS710の処理へ進み、テンポクロック
tempo_clockを「0」に設定するとともに拍
数beatを「0」に設定する。
【0092】そして、ステップS710の処理を終了す
ると、ステップS711の処理へ進む。
【0093】一方、ステップS706の判断処理におい
て、現在の小節値が変化したとは判断されなかった場合
には、ステップS712の処理へ進み、テンポクロック
tempo_clockをインクリメントする。
【0094】そして、ステップS712の処理を終了す
ると、ステップS711の処理へ進む。
【0095】このステップS711の処理においては、
テンポクロックtempo_clockが32であるか
否かを判断する。
【0096】そして、ステップS711の判断処理にお
いて、テンポクロックtempo_clockが32で
あると判断された場合には、ステップS713へ進み、
テンポクロックtempo_clockを「0」に設定
するとともに拍数beatをインクリメントする。そし
て、このステップS713の処理が終了するとステップ
S714の処理へ進む。
【0097】一方、ステップS711の処理において、
テンポクロックtempo_clockが32でないと
判断された場合には、ステップS714の処理へと進
む。
【0098】また、ステップS704の判断処理におい
て、テンポクロックが到来したとは判断されなかった場
合には、ステップS714の処理へジャンプして進む。
【0099】そして、ステップS714においては、オ
ーディオ波形データの読み出し位置を示すリードポイン
タ(readPtr)に従ってレコーダメモリのサンプ
ル波形メモリ部46からサンプリングデータ(オーディ
オ波形データ)を読み出して出力する。
【0100】上記したステップS714の処理を終了す
ると、ステップS716の処理へ進み、リードポインタ
(readPtr)をインクリメントして、この再生処
理ルーチンを終了する。
【0101】なお、上記においては、ステップS708
の「次の小節のテンプレート作成依頼」の要求に基づい
て、ステップS730においてテンプレート作成ルーチ
ンが実行されることになる。即ち、ステップS704乃
至ステップS716の処理においては、テンプレートを
作成する処理が含まれることになるが、録音時と再生時
とでテンポが変化しない場合には、実際にはテンプレー
トを作成する処理により得られるテンプレート情報は必
要ない。
【0102】ただし、演奏中においてユーザーインター
フェース部20のテンポ設定操作子の操作によりテンポ
が変更された場合に、当該テンポの変化に即座に追従で
きるようにするために、テンプレートを作成する処理を
行っておくことになる。
【0103】一方、ステップS702の判断処理におい
て、「録音時のテンポ情報(original tem
po)」と現在のシーケンサ12からの「演奏テンポ値
(current tempo)」とが一致するとは判
断されなかった場合には、ステップS718の処理へ進
み、「演奏テンポ値(current tempo)」
が最大テンポ値LimitBPM(なお、最大テンポ値
LimitBPMは、例えば、「100(BPM)」で
ある。)より小さいか否かを判断する。
【0104】このステップS718の判断処理におい
て、「演奏テンポ値(currenttempo)」が
最大テンポ値LimitBPMより小さいと判断された
場合には、ステップS720の処理へ進み、クロックモ
ードclock_modeを「1/32」モードに設定
する。
【0105】そして、ステップS720の処理を終了す
ると、ステップS724の処理へ進む。
【0106】一方、ステップS718の判断処理におい
て、「演奏テンポ値(current tempo)」
が最大テンポ値LimitBPMより小さいとは判断さ
れなかった場合には、ステップS722の処理へ進み、
クロックモードclock_modeを「1/16」モ
ードに設定する。
【0107】そして、ステップS722の処理を終了す
ると、ステップS724の処理へ進む。
【0108】ここで、ステップS724においては、こ
の再生処理ルーチンのサブルーチンとしてのテンポ追従
処理ルーチン(図9に示すフローチャート)が実行され
るものであり、このテンポ追従処理ルーチンの実行を終
了すると、この再生処理ルーチンを終了する。
【0109】次に、図9のフローチャートに示すテンポ
追従処理ルーチンについて説明するが、このテンポ追従
処理ルーチンにおいては、リードポインタ(readP
tr)のインクリメント処理(リードポインタ(rea
dPtr)を1アドレスづつ進める処理。)により、オ
ーディオ波形データの読み出し速度を変えずにオーディ
オ波形データを読み出している。
【0110】ところが、録音時のテンポと異なるテンポ
で再生する場合には、読み出しアドレスを修正し、時間
軸に対して整合するようにしなければならない。具体的
には、例えば、後述する図10における1点鎖線上に修
正する処理や、図11における2点鎖線上に修正する処
理を行わなければならない。
【0111】そこで、シーケンサ12からテンポクロッ
クを受け取り、リードポインタ(readPtr)をジ
ャンプさせて、オーディオ波形データの読み出し位置を
図10における1点鎖線上や図11における2点鎖線上
に修正するようにしている(後述するステップS916
参照)。
【0112】ただし、リードポインタ(readPt
r)自身でオーディオ波形データを読み出し、時間軸圧
縮伸長したオーディオ波形信号を生成すると、上記した
修正処理(リードポインタのジャンプさせる処理)によ
り読み出しアドレスがジャンプするのでノイズが生じる
こととなる。
【0113】従って、こうしたノイズの発生を防ぐため
に、このシステムにおいては、アドレスがジャンプする
位置でクロスフェード処理を行っている。
【0114】即ち、後述するステップS918の処理に
おいては、基本的にはリードポインタ(readPt
r)に従ってオーディオ波形データを読み出している
が、クロスフェード部分ではリードポインタ(read
Ptr)と多少異なってクロスフェードするようにオー
ディオ波形データを読み出している。
【0115】そして、テンポ追従処理ルーチンのサブル
ーチンとしての後述するステップS920のクロスフェ
ードルーチン(CrossFade Routine)
においては、読み出したオーディオ波形データをクロス
フェード処理して時間軸圧縮伸長したオーディオ波形信
号を生成しているものである。
【0116】以下に、図9のフローチャートに示すテン
ポ追従処理ルーチンについて詳細に説明すると、まずス
テップS902の処理において、テンポクロックが到来
したか否かを判断する。
【0117】このステップS902の判断処理におい
て、テンポクロックが到来したと判断された場合には、
ステップS904の処理へ進み、シーケンサ12からレ
コーダ10へ供給されている小節情報に基づいて、現在
の小節値が変化したか否かを判断する。なお、この現在
の小節値が変化したか否かの判断処理は、バッファメモ
リに記憶されている「現在の小節」を参照して行われる
ものである。
【0118】そして、ステップS904の判断処理にお
いて、現在の小節値が変化したと判断された場合には、
ステップS906の処理へ進み、次の小節のテンプレー
ト作成依頼の要求を出力する。テンプレート作成は、こ
の「次の小節のテンプレート作成依頼」の要求に基づい
て、別の処理ルーチンであるテンプレート作成ルーチン
(ステップS930)によって処理されることになる。
【0119】上記したステップS906の処理を終了す
ると、ステップS908の処理へ進み、テンポクロック
tempo_clockを「0」に設定するとともに拍
数beatを「0」に設定する。
【0120】そして、ステップS908の処理を終了す
ると、ステップS911の処理へ進む。
【0121】一方、ステップS904の判断処理におい
て、現在の小節値が変化したとは判断されなかった場合
には、ステップS910の処理へ進み、テンポクロック
tempo_clockをインクリメントする。
【0122】そして、ステップS910の処理を終了す
ると、ステップS911の処理へ進む。
【0123】このステップS911の処理においては、
テンポクロックtempo_clockが32であるか
否かを判断する。
【0124】そして、ステップS911の判断処理にお
いて、テンポクロックtempo_clockが32で
あると判断された場合には、ステップS913へ進み、
テンポクロックtempo_clockを「0」に設定
するとともに、拍数beatをインクリメントする。そ
して、このステップS913の処理が終了するとステッ
プS912の処理へ進む。
【0125】一方、ステップS911の処理において、
テンポクロックtempo_clockが32でないと
判断された場合には、ステップS912の処理へと進
む。
【0126】このステップS912の処理においては、
クロックモードclock_modeが「1/32」モ
ードであるか「1/16」モードであるかを判断する。
【0127】このステップS912の判断処理におい
て、クロックモードclock_modeが「1/1
6」モードであると判断された場合には、ステップS9
14の処理へ進み、テンポクロックtempo_clo
ckが偶数であるか否かを判断する。
【0128】そして、ステップS914の判断処理にお
いて、テンポクロックtempo_clockが偶数で
あると判断された場合には、ステップS916の処理へ
進む。
【0129】一方、ステップS912の判断処理におい
て、クロックモードclock_modeが「1/3
2」モードであると判断された場合には、ステップS9
16の処理へジャンプして進む。
【0130】ここで、ステップS916の処理において
は、拍数beatおよびテンポクロックtempo_c
lockにおけるtemplateの値(templa
te[beat][tempo_clock])をリー
ドポインタ(readPtr)に設定して、シーケンサ
12からテンポクロックを受け取ってリードポインタ
(readPtr)をジャンプさせ、オーディオ波形デ
ータの読み出し位置を修正する。そして、このステップ
S916の処理を終了すると、ステップS918の処理
へ進む。
【0131】一方、ステップS902の判断処理におい
て、テンポクロックが到来したとは判断されなかった場
合、また、ステップS914の判断処理において、テン
ポクロックtempo_clockが偶数であるとは判
断されなかった場合にも、ステップS918の処理へ進
む。
【0132】ステップS918の処理においては、テン
ポ追従処理ルーチンのサブルーチンとして「リードポイ
ンタ(readPtr)に従ってオーディオ波形データ
を読み出す」処理を実行する。このステップS918の
処理においては、基本的にはリードポインタ(read
Ptr)に従ってオーディオ波形データを読み出してい
るが、クロスフェード部分ではリードポインタ(rea
dPtr)と多少異なってクロスフェードするようにオ
ーディオ波形データを読み出している。
【0133】上記したステップS918の処理を終了す
ると、ステップS920の処理へ進み、テンポ追従処理
ルーチンのサブルーチンとしての「クロスフェードルー
チン(CrossFade Routine)」処理を
実行し、読み出したオーディオ波形データをクロスフェ
ード処理して時間軸圧縮伸長したオーディオ波形信号を
生成する。
【0134】上記したステップS920の処理を終了す
ると、ステップS922の処理へ進み、リードポインタ
(readPtr)をインクリメントして、この再生処
理ルーチンを終了する。
【0135】なお、上記したステップS918における
「リードポインタ(readPtr)に従ってオーディ
オ波形データを読み出す」処理ならびにステップS92
0における「クロスフェードルーチン(CrossFa
de Routine)」処理については、公知の技術
を適用することができるものであるので、その詳細な説
明は省略する。
【0136】ここで、図10には、時間軸を伸長して再
生する場合(時間軸伸長再生)の処理の説明図が示され
ている。
【0137】即ち、図10には、クロックモードclo
ck_modeが「l/16」モード」のときの時間軸
伸長時における、テンポクロックとリードポインタ(r
eadPtr)とに基づいた読み出しアドレス(太実
線)が示されている。
【0138】一方、図11には、時間軸を圧縮して再生
する場合(時間軸圧縮再生)の処理の説明図が示されて
いる。
【0139】即ち、図11には、クロックモードclo
ck_modeが「l/16」モード」のときの時間軸
圧縮時における、テンポクロックとリードポインタ(r
eadPtr)とに基づいた読み出しアドレス(太実
線)が示されている。
【0140】ここで、オリジナルテンポクロックは録音
時のテンポクロックとアドレスとの関係を示し、再生テ
ンポクロックはテンポを変えたテンポクロック(再生時
のテンポクロック)とアドレスとの関係を示している。
【0141】そして、再生テンポが変わるとクロックの
タイミングが変わるが、そのクロックにおけるアドレス
位置を録音時のアドレス位置に修正すれば、再生テンポ
に追従できるものである。
【0142】即ち、リードポインタ(readPtr)
はテンポクロックが来ると同時にジャンプするが、実際
の読み出しアドレスは、クロスフェード区間Tcの部分
が重なって読み出されるものである。
【0143】次に、図12を参照しながら、ステップS
730ならびにステップS930におけるテンプレート
作成ルーチンが実行する処理内容について説明する。
【0144】このシステムにおいては、テンポクロック
毎に録音時のアドレスを算出するときの効率性を向上す
るために、テンプレート作成ルーチンにおいて1小節ま
とめたテンプレートを作成するようにしている。
【0145】図12に示されている「tempo_cl
ock」はシーケンサ12からの「l/32」拍のテン
ポクロックをカウントアップした値であって、一拍毎に
「0」にリセットされるものである。また、アドレスを
ジャンプして修正する際に使用するアドレス値は、「a
(n)」(n=0,1,2,3・・・,29,30or
31)で示される部分である。
【0146】ここで、シーケンサ12から現在の小節情
報が供給されており、それが変化したときに、テンプレ
ート作成ルーチンに次の小節のテンプレート作成の依頼
の要求が出されるものである(ステップS708,ステ
ップS906)。
【0147】なお、現在の小節用のテンプレートは、前
の小節の頭において同様に作成の依頼を指示してあるの
で既にできあがっている。
【0148】即ち、テンプレートはダブルバッファにな
っており、交互に作成して使用可能になされている。
【0149】次に、図12を参照しながら、テンプレー
ト作成のためのアドレス演算の説明をすると、まずテン
プレートの先頭のアドレスは、録音時に記録しておいた
小節毎のレコーダ時刻T(n)から算出する。
【0150】即ち、テンプレートの小節の1拍目の先頭
のアドレスであるtemplate[0][0]は、 template[0][0]=a0=T(n) である。
【0151】また、録音時のクロック毎のオーディオ波
形データのアドレスは、録音時のテンポ値が分かれば算
出することができる。
【0152】そして、「1/32」拍の時間間隔あたり
のオーディオ波形データの読み出し量は、 「1/32」拍の時間間隔あたりのオーディオ波形デー
タの読み出し量=60/tempo×l/Tf×l/3
2 ただし tempo :テンポ Tf=1/Fs :サンプリング周波数 の演算式により求められる。
【0153】従って、演奏の始めのアドレスを「0」と
すれば、任意のクロックのアドレスは、 a(n)=(60/tempo×l/Tf×l/32)
×累積クロック の演算式で求めることができる。
【0154】なお、このシステムにおいては、レコーダ
メモリのレコーダ時刻部44に、録音時に小節の先頭時
刻のレコーダ時刻T(n)(meas)を記録してある
ので、 小節の先頭アドレス=T(n)(meas) a(n)=小節の先頭アドレス+(60/tempo×
l/Tf×l/32)×(小節の先頭からの累積tem
po_clock) となる。
【0155】これにより、録音時のテンポ値と時間軸上
の演奏位置とが「1/32」単位で分かるようになり、
その演奏時刻のオーディオ波形データのアドレス値を算
出することができることになる。
【0156】上記したことから、録音時と再生時とで伴
奏のテンポが変わっても、「1/32」拍毎に演奏時刻
に同期したオーディオ波形データの読み出しアドレスを
算出し、修正することができるようになる。
【0157】なお、上記においては「l/32」拍のク
ロックで説明したが、MIDI信号で使用されている
「1/24」拍など、任意の間隔のクロックを使用する
ことができるのは勿論であり、適宜、実装時の条件によ
って決めることができる。また、そのこととは別に、こ
のシステムにおいては、「1/32」拍と「1/16」
拍とを使い分けている(図7および図13参照)。
【0158】即ち、このシステムにおいては、再生時は
シーケンサから「1/32」拍のクロックをもらってお
り、「l/32」拍モードにおいてはそのクロックをそ
のまま用いるようになされており、「l/16」拍モー
ドではそのクロックを一つおきに使用して、半分のタイ
ミングのクロックを用いるようにしている。
【0159】即ち、図10や図11に示す例においては
「l/32」拍のテンポクロックを1つおきに使用して
いるが、図13に示す例においては「1/32」拍のテ
ンポクロック毎にジャンプ処理を行っている(図12に
おける「「ジャンプ処理」が生じるタイミング」を参照
する。)。
【0160】「1/16」拍モードは「l/32」拍モ
ードよりも荒いサイクルで処理するので、システム負荷
が軽くなるという利点がある。
【0161】従って、テンポをはやめる時間軸圧縮処理
では、シーケンサや音源の負荷が大きくなるので、「l
/16」拍モードが適しているものである。
【0162】一方、テンポを遅くする時間軸伸張処理で
は、アドレスを戻すので、テンポを極端に落とした場合
には、ディレイが掛かったような音質になる傾向があ
る。このため、「1/32」拍モードにおいては「l/
16」拍モードよりも細かい時間間隔でアドレスを戻す
ことにより音質を改善することができるので、このシス
テムにおいては、一定のテンポ以下になったら「l/1
6」拍モードから「1/32」拍モードに切り替わるよ
うにしている。
【0163】なお、上記した実施の形態は、以下(1)
乃至(4)に示すように変形してもよい。
【0164】(1)上記した実施の形態においては、オ
ーディオ波形データの読み出し速度(リードポインタ
(readPtr)の歩進量)は書き込み速度と同じで
あって、1づつ歩進するようになされているが、これに
限られるものではないことは勿論であり、再生時の音高
を変更したい場合には、再生時の読み出し速度(リード
ポインタ(readPtr)の歩進量)を変更してもよ
い。即ち、読み出し速度を速くすれば再生時の音高は高
くなり、読み出し速度を遅くすれば再生時の音高は低く
なる。
【0165】(2)上記した実施の形態においては、一
連のサンプリングデータに対して1つの「録音時のテン
ポデータ」を記憶するようになされているが、これに限
られるものではないことは勿論であり、自動演奏手段
(シーケンサ)から「演奏テンポ値」が供給されてお
り、テンポが時間経過で変化するような場合には、その
時間経過で変化した「録音時のテンポデータ」を記憶し
てもよい。具体的には、例えば、1小節毎に「録音時の
テンポデータ」を記憶していてもよい。
【0166】(3)上記した実施の形態においては、テ
ンプレートは「録音時のテンポ」を使用して作成してい
たが、これに限られるものではないことは勿論であり、
例えば、1小節間を32等分に等分割してテンプレート
を作成するならば、「録音時のテンポ」を使用しなくて
もよい。
【0167】(4)上記した実施の形態ならびに上記し
た(1)乃至(3)に示す変形例を、適宜に組み合わせ
るようにしてもよい。
【0168】
【発明の効果】本発明は、以上説明したように構成され
ているので、演奏テンポなどの周期情報に正確に追従し
て時間軸圧縮伸長したオーディオ波形信号を得ることを
可能としたオーディオ波形データの時間軸圧縮伸長再生
装置を提供することができるという優れた効果を奏す
る。
【図面の簡単な説明】
【図1】従来のオーディオ波形データの時間軸圧縮伸長
再生装置により行われる処理の説明図である。
【図2】本発明によるオーディオ波形データの時間軸圧
縮伸長再生装置の実施の形態の一例を備えたシステムの
ブロック構成図である。
【図3】UI録音処理ルーチンのフローチャートであ
る。
【図4】録音処理ルーチンのフローチャートである。
【図5】バッファメモリにおける「現在の小節」の記憶
処理に関する説明図である。
【図6】UI再生処理ルーチンのフローチャートであ
る。
【図7】再生処理ルーチンのフローチャートである。
【図8】バッファメモリにおける「テンポクロック」、
「演奏テンポ値」および「現在の小節」の記憶処理に関
する説明図である。
【図9】テンポ追従処理ルーチンのフローチャートであ
る。
【図10】時間軸を伸長して再生する場合(時間軸伸長
再生)の処理の説明図である。
【図11】時間軸を圧縮して再生する場合(時間軸圧縮
再生)の処理の説明図である。
【図12】テンプレート作成ルーチンが実行する処理内
容の説明図である。
【図13】「1/32」モードの説明図である。
【符号の説明】
10 レコーダ 12 シーケンサ 14 入力部 16 アナログ/デジタル変換器(A/D) 18 メモリ 20 ユーザーインターフェース部(UI) 22 合成部 24 デジタル/アナログ変換器(D/A) 26 アンプ 28 出力部 42 ヘッド部 44 レコーダ時刻部 46 サンプル波形メモリ部
───────────────────────────────────────────────────── フロントページの続き Fターム(参考) 5D378 AD07 AD22 AD51 AD61 AD70 BB12 LB12 LB22 LB27 MM13 MM16 MM19 MM42 MM48 MM58 MM59 MM62 MM65 MM73 MM92 MM95 5J064 AA00 BA00 BB09 BB10 BC01 BC02 BC06 BC07 BC08 BD01

Claims (6)

    【特許請求の範囲】
  1. 【請求項1】 オーディオ波形信号を表すオーディオ波
    形データを記憶した記憶手段と、 前記記憶手段に記憶された前記オーディオ波形データを
    読み出して再生波形信号を生成して出力する再生波形信
    号生成手段と、 前記記憶手段に記憶された前記オーディオ波形データ上
    を所定周期間隔で示す位置データを生成する位置データ
    生成手段と、 所望の周期情報を発生する周期情報発生手段と、 前記再生波形信号生成手段における再生波形信号の生成
    において、前記オーディオ波形データの読み出し位置
    を、前記周期情報発生手段によって発生された前記所望
    の周期情報に同期して、前記位置データ生成手段によっ
    て生成された前記位置データの表す位置にジャンプする
    制御を行う波形生成位置制御手段とを有し、 前記オーディオ波形データを前記所望の周期情報の周期
    に対応して時間軸圧縮伸長するものであるオーディオ波
    形データの時間軸圧縮伸長再生装置。
  2. 【請求項2】 オーディオ波形信号を表すオーディオ波
    形データと所望の周期間隔の前記オーディオ波形データ
    上の位置を表す第1位置データとを記憶した記憶手段
    と、 前記記憶手段に記憶された前記オーディオ波形データを
    読み出して再生波形信号を生成して出力する再生波形信
    号生成手段と、 前記記憶手段に記憶された前記第1位置データに基づい
    て、前記第1位置データより短い周期間隔の前記オーデ
    ィオ波形データ上の位置を表す第2位置データを生成す
    る第2位置データ生成手段と、 所望の周期情報を発生する周期情報発生手段と、 前記再生波形信号生成手段における再生波形信号の生成
    において、前記オーディオ波形データの読み出し位置
    を、前記周期情報発生手段によって発生された前記所望
    の周期情報に同期して、前記第2位置データ生成手段に
    よって生成された前記第2位置データの表す位置にジャ
    ンプする制御を行う波形生成位置制御手段とを有し、 前記オーディオ波形データを前記所望の周期情報の周期
    に対応して時間軸圧縮伸長するものであるオーディオ波
    形データの時間軸圧縮伸長再生装置。
  3. 【請求項3】 所望の演奏テンポに従って演奏されたオ
    ーディオ波形信号を表すオーディオ波形データと該所望
    の演奏テンポに対応した周期間隔の前記オーディオ波形
    データ上の位置を表す第1位置データとを記憶した記憶
    手段と、 前記記憶手段に記憶された前記オーディオ波形データを
    読み出して再生波形信号を生成して出力する再生波形信
    号生成手段と、 前記記憶手段に記憶された前記第1位置データに基づい
    て、前記第1位置データより短い周期間隔の前記オーデ
    ィオ波形データ上の位置を表す第2位置データを生成す
    る第2位置データ生成手段と、 再生テンポに対応した周期情報を発生する周期情報発生
    手段と、 前記再生波形信号生成手段における再生波形信号の生成
    において、前記オーディオ波形データの読み出し位置
    を、前記周期情報発生手段によって発生された前記再生
    テンポに対応した周期情報に同期して、前記第2位置デ
    ータ生成手段によって生成された前記第2位置データの
    表す位置にジャンプする制御を行う波形生成位置制御手
    段とを有し、 前記オーディオ波形データを前記再生テンポに対応して
    時間軸圧縮伸長するものであるオーディオ波形データの
    時間軸圧縮伸長再生装置。
  4. 【請求項4】 設定された所望の演奏テンポに対応して
    自動演奏し楽音信号を発生するとともに、前記所望の演
    奏テンポに対応した第1周期情報と該第1周期情報より
    短い周期の第2周期情報とを発生する自動演奏手段と、 前記自動演奏手段を所望の演奏テンポに従って自動演奏
    するとともに入力手段に入力されたオーディオ波形信号
    をサンプリングして、該オーディオ波形信号を表すオー
    ディオ波形データと、前記オーディオ波形信号と前記第
    1周期情報との位置関係を表す第1位置データとを記憶
    手段に記憶するサンプリング手段と、 前記自動演奏手段を前記所望の演奏テンポとは異なる所
    望の再生テンポに設定し該再生テンポに従って自動演奏
    するとともに、前記記憶手段に記憶されたオーディオ波
    形データを読み出し再生波形信号を生成して出力する再
    生波形信号生成手段と、 前記記憶手段に記憶された前記第1位置データに基づい
    て、前記第1位置データより短い周期間隔の前記オーデ
    ィオ波形データ上の位置を表す第2位置データを生成す
    る第2位置データ生成手段と、 前記再生波形信号生成手段における再生波形信号の生成
    において、前記オーディオ波形データの読み出し位置
    を、前記再生テンポに従って自動演奏される前記自動演
    奏手段より発生される前記第2周期情報に同期して前記
    第2位置データの表す位置にジャンプする制御を行う波
    形生成位置制御手段とを有し、 前記オーディオ波形データを前記再生テンポに対応して
    時間軸圧縮伸長するものであるオーディオ波形データの
    時間軸圧縮伸長再生装置。
  5. 【請求項5】 請求項2、請求項3または請求項4のい
    ずれか1項に記載のオーディオ波形データの時間軸圧縮
    伸長再生装置において、 前記記憶手段は、前記オーディオ波形データとともに前
    記所望の演奏テンポを表すテンポデータを記憶し、 前記第2位置データ生成手段は、前記第1位置データと
    前記記憶手段に記憶された前記テンポデータとに基づい
    て第2位置データを生成するものであるオーディオ波形
    データの時間軸圧縮伸長再生装置。
  6. 【請求項6】 請求項2、請求項3または請求項4のい
    ずれか1項に記載のオーディオ波形データの時間軸圧縮
    伸長再生装置において、 前記第2位置データ生成手段は、前記第1位置データ間
    を等分割することにより第2位置データを生成するもの
    であるオーディオ波形データの時間軸圧縮伸長再生装
    置。
JP2000133840A 2000-05-02 2000-05-02 オーディオ波形データの時間軸圧縮伸長再生装置 Pending JP2001312276A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2000133840A JP2001312276A (ja) 2000-05-02 2000-05-02 オーディオ波形データの時間軸圧縮伸長再生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2000133840A JP2001312276A (ja) 2000-05-02 2000-05-02 オーディオ波形データの時間軸圧縮伸長再生装置

Publications (1)

Publication Number Publication Date
JP2001312276A true JP2001312276A (ja) 2001-11-09

Family

ID=18642247

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2000133840A Pending JP2001312276A (ja) 2000-05-02 2000-05-02 オーディオ波形データの時間軸圧縮伸長再生装置

Country Status (1)

Country Link
JP (1) JP2001312276A (ja)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013024911A (ja) * 2011-07-15 2013-02-04 Yamaha Corp 信号処理装置
JP2023515122A (ja) * 2020-02-20 2023-04-12 アンテスコフォ ユーザの楽曲演奏時のあらかじめ記録された楽曲伴奏の改善された同期

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2013024911A (ja) * 2011-07-15 2013-02-04 Yamaha Corp 信号処理装置
JP2023515122A (ja) * 2020-02-20 2023-04-12 アンテスコフォ ユーザの楽曲演奏時のあらかじめ記録された楽曲伴奏の改善された同期
JP7366282B2 (ja) 2020-02-20 2023-10-20 アンテスコフォ ユーザの楽曲演奏時のあらかじめ記録された楽曲伴奏の改善された同期

Similar Documents

Publication Publication Date Title
CN102568452B (zh) 电子乐器
JP3644263B2 (ja) 波形形成装置及び方法
JP6011064B2 (ja) 自動演奏装置及びプログラム
US4924745A (en) Automatic performance recording apparatus
US7511214B2 (en) Automatic performance apparatus for reproducing music piece
JP3654117B2 (ja) 時間軸方向における楽音波形信号の伸縮方法
EP3373289B1 (en) Electronic musical instrument, musical sound generating method, and storage medium
JPH0798586A (ja) 電子楽器の音源装置
JP2001312276A (ja) オーディオ波形データの時間軸圧縮伸長再生装置
JP3675184B2 (ja) 波形形成装置及び方法
JP2001312277A (ja) オーディオ波形データの同期再生装置
JP2970396B2 (ja) 波形処理装置
US6207885B1 (en) System and method for rendition control
JP4552769B2 (ja) 楽音波形合成装置
JP4236570B2 (ja) 波形再生装置および波形再生プログラム
JP3656906B2 (ja) 時間軸可変の波形データ再生装置
JP5488977B2 (ja) 楽音発生装置およびプログラム
JP4084858B2 (ja) 波形再生装置
JP2001075571A (ja) 波形生成装置
JP4479635B2 (ja) オーディオ装置及びカラオケ装置
JP2007047307A (ja) 効果音生成装置
JPH04270389A (ja) ボーカルデータ表示装置
JPH1031486A (ja) 演奏データ記憶再生方法および装置
JP3147111B2 (ja) 自動演奏記録再生装置
JPH0636462A (ja) ディジタル信号記録再生装置

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20070314

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20080606

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20080624

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20081021