JPH06348273A - 記憶再生装置 - Google Patents

記憶再生装置

Info

Publication number
JPH06348273A
JPH06348273A JP5139645A JP13964593A JPH06348273A JP H06348273 A JPH06348273 A JP H06348273A JP 5139645 A JP5139645 A JP 5139645A JP 13964593 A JP13964593 A JP 13964593A JP H06348273 A JPH06348273 A JP H06348273A
Authority
JP
Japan
Prior art keywords
silent
data
time
transfer
code
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.)
Granted
Application number
JP5139645A
Other languages
English (en)
Other versions
JP2765433B2 (ja
Inventor
Yoshio Fujita
佳生 藤田
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.)
Yamaha Corp
Original Assignee
Yamaha 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 Yamaha Corp filed Critical Yamaha Corp
Priority to JP5139645A priority Critical patent/JP2765433B2/ja
Publication of JPH06348273A publication Critical patent/JPH06348273A/ja
Application granted granted Critical
Publication of JP2765433B2 publication Critical patent/JP2765433B2/ja
Anticipated expiration legal-status Critical
Expired - Fee Related legal-status Critical Current

Links

Landscapes

  • Bus Control (AREA)
  • Electrophonic Musical Instruments (AREA)

Abstract

(57)【要約】 【目的】 無音期間が長時間にわたっても記憶容量を無
為に消費しない記憶再生装置を実現する。 【構成】 制御部12は、レベル判定器10の出力から
楽音データMDに一定期間以上の無音状態が存在するか
否かを判別する。無音状態が存在すると、制御部12は
無音コード発生部13から無音状態を表す無音コードS
Cを発生すると共に、無音状態に対応する楽音データM
Dを無音コードSCに置き換えてハードディスク装置8
に記憶させるようDMAC7に転送指示を出す。この結
果、無音期間が長時間にわたっても、これに対応する無
音コードのみがハードディスク装置8に記憶されるた
め、記憶容量が無為に消費されなくなる。

Description

【発明の詳細な説明】
【0001】
【産業上の利用分野】この発明は、サンプリングした楽
音信号をメモリに記憶し、該メモリに記憶された楽音信
号を読み出して再生する記憶再生装置に関する。
【0002】
【従来の技術】近年、楽音信号をサンプリングしてPC
Mデータに変換し、これをハードディスク装置などの記
憶手段に記憶する一方、この記憶手段から読み出したP
CMデータを楽音信号に変換して再生する記憶再生装置
が各種開発されている。このような記憶再生装置では、
ハードディスク装置のメモリ消費量を低減化するために
様々なデータ圧縮(符号化)技術を用いる場合が多い。
【0003】例えば、「特公平2−48919号公報」
あるいは「特公平2−48920号公報」にあっては、
準瞬時圧伸方式によって量子化された音声信号中に含ま
れる無音期間(音声信号レベルが微少となる期間)に形
成される音声データを圧縮する符号化技術が開示されて
いる。
【0004】以下、これら公報に開示される圧縮技術に
ついて説明する。まず、上述した準瞬時圧伸方式とは、
音声信号を所定時間間隔毎に分割し、分割された各区間
(以下、これをフレームと称す)毎に独立した量子化幅
で当該音声信号を量子化するものである。このため、無
音期間を含むフレームでは、各サンプリング点毎に振幅
レベル「0」を表す無為な音声データが形成されるてし
まう。そこで、フレーム全体が無音期間に含まれる場合
や、フレーム内の一部に無音期間が存在する場合を各々
表す「無音データ」を当該フレーム内に設けておき、こ
れにより無音期間に形成される無為な音声データを省略
し、無音期間を表すデータの圧縮を図っている。
【0005】
【発明が解決しようとする課題】ところで、このような
圧縮技術を用いた記憶再生装置では、無音期間を表す無
音データが各フレーム毎に設けられるため、例えば、複
数フレームに亙って無音期間が連続するような場合に
は、そのフレーム数分の無音データが形成されることに
なる。したがって、無音期間が長く続く場合には大量の
無音データが形成されることに相当する。加えて、フレ
ーム長を短く設定した時には、フレーム数が増えること
から、より多くの無音データが形成されてしまい、結果
的にこれら無音データが無為なデータとなり得る。つま
り、換言すれば、従来の記憶再生装置では、無音期間が
長時間にわたった場合、無音データが記憶装置に順次書
き込まれてしまい、当該記憶装置の記憶容量が無為に消
費されてしまうという問題がある。本発明は、上述した
事情に鑑みてなされたもので、無音期間が長時間にわた
っても記憶容量が消費されることがない記憶再生装置を
提供することを目的としている。
【0006】
【課題を解決するための手段】この発明は、波形データ
を入力する手段と、サンプリングした波形データを連続
的に記憶する記憶手段と、サンプリングした波形データ
を一時的に記憶するバッファ手段と、入力した波形デー
タを上記バッファ手段に順次転送する第1の転送手段
と、この第1の転送手段により上記バッファ手段に転送
された波形データの容量が所定量に達する毎に、前記バ
ッファ手段中の所定量の波形データを前記記憶手段に転
送する第2の転送手段と、入力する波形データが所定レ
ベル以下の無音部分を検出する無音部分検出手段と、無
音部分が所定時間以上継続したことを検出し、無音状態
として検知する無音状態検知手段と、前記無音部分の検
知に応じ、前記第1の転送手段の転送動作の中止を指示
する中止指示手段と、前記第1の転送手段により前記バ
ッファ手段に転送される波形データに含まれる無音状態
を、無音コードで置き換える置換手段と、無音状態が検
出された場合、該無音状態の開始時点から前記中止指示
手段が中止を指示するまでの期間に前記第2の転送手段
の行った転送を無効化する無効化手段とを具備すること
を特徴としている。
【0007】
【作用】上記構成によれば、無音状態が検出された場
合、該無音状態の開始時点から中止指示手段が中止を指
示するまでの期間に第2の転送手段の行った転送を無効
化する。したがって、無音状態が長時間にわたっても、
これに対応する無音コードのみが記憶手段に記憶される
ため、記憶容量が消費されることがない。また、再生時
においては無音状態に対応する期間中、波形再生が停止
する。
【0008】
【実施例】以下、図面を参照して本発明の一実施例によ
る記憶再生装置について説明する。なお、この記憶再生
装置は、大別すると、楽音信号を楽音データに変換して
記憶(録音)する記憶部1と該楽音データを楽音信号に
変換して再生する再生部2とから構成されており、以下
では各部別の構成およびその動作について説明する。
【0009】A.記憶部1の構成 図1は記憶部1の概略構成を示すブロック図である。こ
の図において、3は楽音信号の記憶(録音)開始あるい
は停止時に操作されるスタート・ストップ指示手段であ
り、設定操作に応じたスタート・ストップ指示信号Ss
を発生する。T1は例えば、図示されていないマイクロ
フォンから出力される楽音信号が供給される入力端子で
ある。4はスタート・ストップ指示信号Ssに応じて動
作が開始/停止されるAD変換器であり、入力端子T1
に供給される楽音信号を所定サンプリング周期毎に所定
ビット数の楽音データMDに変換して出力する。
【0010】5はスタート・ストップ指示信号Ssに応
じて動作が開始/停止される転送制御回路である。この
転送制御回路5は、書き込みアドレスや、後述する転送
・再転送指示信号S2等の各種制御信号を発生すると共
に、AD変換器4から供給される楽音データMDをダブ
ルバッファ6へ転送する。また、転送制御回路5は、楽
音データMD中に含まれる無音部分を検出し、検出した
無音部分を符号化する。なお、ここで言う「無音部分」
とは、楽音データMDの振幅(量子化された値)が所定
値以下となる領域を指す。
【0011】ダブルバッファ6は、2つのバッファエリ
ア6a,6bを備え、一方のバッファエリアに楽音デー
タMDが書き込まれている間、他方のバッファエリアか
ら先に書き込まれた楽音データMDが読み出される。す
なわち、このバッファ6は、一方のバッファエリア側に
書き込みがなされている間、他方のバッファエリア側か
ら読み出しがなされるように構成されている。7は周知
のダイレクトメモリアクセスコントローラ(以下、DM
ACと略す)である。DMAC7は、ダブルバッファ6
の一方のバッファエリアからブロック転送される楽音デ
ータを、CPU(図示略)を介することなく、直接ハー
ドディスク装置8に転送し、楽音データはハードディス
ク装置8内の記憶媒体に順次書き込まれる。なお、転送
制御回路5から供給される転送・再転送指示信号S2に
応じたDMAC7の動作については後述する。
【0012】B.転送制御回路5の構成 次に、図2を参照して転送制御回路5の構成について説
明する。図において、10はレベル判定器であり、AD
変換器4から供給される楽音データMDの振幅レベルを
判定し、判定結果に応じた信号S1を発生する。例え
ば、2の補数で表される16ビット長の楽音データMD
が「&hFFFC(16進表示)」〜「&h0003」
(10進表示で「−3」〜「+3」)の範囲内にある
と、このレベル判定器10は当該楽音データMDが上述
した「無音部分」に相当するとして「1」の信号S1を
発生する。一方、上記範囲外にある場合、すなわち、
「無音部分」でない場合には「0」の信号S2を発生す
る。11はシフトレジスタ等から構成されるディレイ回
路であり、入力される楽音データMDを少なくとも3サ
ンプリング周期分遅延して出力する。
【0013】12はCPU、ROMおよびRAMから構
成される制御部であり、上記信号S1に応じて楽音デー
タMDの転送制御に必要な各種信号S2〜S6を発生す
る。13は無音コード発生部であり、制御部12から供
給されるコード発生信号S2に対応した無音コードSC
を発生する。コード発生信号S2は、楽音データMDの
「無音部分」開始時刻、あるいは「無音部分」完了時刻
を表す。また、無音コードSCとは、「無音部分」の始
まりを表す3ワード分の無音データSDと「無音部分」
の持続時間を表すワードカウント値WCとからなる。例
えば、この無音データSDは、「&hFFFF」、「&
h8000」および「&hFFFF」の3ワードで形成
され、「無音部分」の始まりを表すようにしている。
【0014】14はセレクタであり、制御部12から選
択信号S3が供給された場合に入力端1側に供給される
信号を選択して出力する。セレクタ14には、楽音デー
タMDが「無音部分」を脱した時点で選択信号S3が供
給され、これにより入力端1側に入力される無音コード
SCを書き込みデータWDとしてダブルバッファ6へ出
力する。一方、選択信号S3が供給されない場合、セレ
クタ14は入力端0側に供給される楽音データMDを書
き込みデータWDとして出力する。
【0015】15はバッファエリア6a,6bへの書き
込みポインタXを発生するレジスタであり、制御部12
から供給されるカウント制御信号S4に応じて「インク
リメント」、「カウント停止」および「カウント値の取
込み」を行う。このレジスタ15が発生する書き込みポ
インタXは、ゲート17に供給されると共に、制御部1
2に取込まれる。これにより、制御部12は書き込みポ
インタXの値からレジスタ15のオーバーフローを検知
し、転送制御信号S6を生成すると共に、後述する補助
カウンタ18をインクリメントさせる。
【0016】16はサーチポインタYを記憶するレジス
タである。レジスタ16中のサーチポインタYは、通常
はレジスタ15のポインタXと等しい値であり、楽音デ
ータMDに「無音部分」が発生した時点で、書き込みポ
インタXの値を保持するようになっている。これらレジ
スタ15,16は、カウント制御信号S4に従って書き
込みポインタXとサーチポインタYとを生成するもので
あり、その動作については後述する。
【0017】ゲート17は、制御部12から出力される
書き込み中止信号S5によりオフ状態に設定される。該
信号S5が供給されない時、ゲート17は上記書き込み
ポインタXをバッファエリア6aあるいはバッファエリ
ア6bの書き込みアドレスADとして出力する。この書
き込み中止信号S5は、例えば、楽音データMD中に生
じる「無音部分」が256サンプリング周期以上持続し
た場合に生成されるものであり、このような場合を以後
「無音状態」と定義する。補助カウンタ18は、制御部
12から供給されるオーバフロー信号に基づき、アドレ
スカウンタ15のオーバーフロー回数をカウントして出
力する。
【0018】C.記憶部1の動作 次に、上記構成による記憶部1の動作について説明す
る。なお、ここでは、特に、転送制御回路5の転送動作
に重点を置いて説明を進める。また、以下では、楽音
データMDに「無音部分」が存在しない場合と、楽音
データMDに「無音部分」が所定サンプリング周期未満
存在する場合と、楽音データMDに「無音状態」が存
在する場合とに分け、各場合の動作を説明する。
【0019】楽音データMDに「無音部分」が存在し
ない場合の動作 まず、操作者によってスタート・ストップ指示手段3が
操作されると、記憶開始を表すスタート・ストップ指示
信号Ssが記憶部1の各構成要素4〜7に供給され、楽
音信号のサンプリングが始まる。AD変換器4からサン
プリング周期毎に供給される楽音データMDは、転送制
御回路5を介してダブルバッファ6に書き込まれる。す
なわち、転送制御回路5は、制御部12の制御の下にア
ドレスカウンタ15が生成する書き込みポインタXに従
って楽音データMDをダブルバッファ6のいずれかのバ
ッファエリアに書き込む。
【0020】図3は、レジスタ15にストアする書き込
みポインタXの進み方を示している。該書き込みポイン
タXの示すアドレスに応じてバッファエリア6a側(以
下、領域Aと称す)から順次楽音データMDを書き込
み、当該領域Aが満配になると、制御部12は転送制御
信号S6を発生し、これをDMAC7に供給する。これ
により、DMAC7は、領域Aに格納された楽音データ
MDをハードディスク装置8側へブロック転送する。一
方、こうした転送がなされている間にも、転送制御回路
5は継続的に楽音データMDをバッファエリア6b側
(以下、領域Bと称す)に書き込む。そして、この領域
Bへの書き込みが完了すると、転送制御信号S6に応じ
て領域Bに格納された楽音データMDがDMAC7を介
してハードディスク装置8側へブロック転送される。レ
ジスタ15は、領域Bの最終アドレスまで書き込みポイ
ンタXがインクリメントされた時点でオーバーフロー信
号を発生し、ストアしている書き込みポインタXの値を
領域Aのスタートアドレスに変更する。こうして、ま
た、領域Aへの書き込みを継続して行う。
【0021】これ以後、記憶停止を表すスタート・スト
ップ指示信号Ssが供給されるまで各領域A,Bが交互
にハードディスク装置8側へブロック転送される。この
ように、楽音データMDに「無音部分」が存在しない場
合には、転送制御回路5は各領域A,Bへの書き込みポ
インタXを生成し、セレクタ14の入力端0側に供給さ
れる楽音データMDをダブルバッファ6に書き込む。そ
して、領域A,Bのいずれか一方が満配になると、その
領域に書き込まれた楽音データMDをハードディスク装
置8側へブロック転送するようDMAC7に転送指示を
出す。
【0022】楽音データMDに「無音部分」が所定サ
ンプリング周期未満存在する場合 ここでは、楽音データMDに256サンプリング周期未
満の間、「無音部分」が存在する場合を例に挙げ説明す
る。いま、例えば、図4に示すように領域Aがハードデ
ィスク装置8側へブロック転送されると共に、領域Bへ
の書き込みがなされている過程において、2の補数表示
される16ビット長の楽音データが「&hFFFC」〜
「&h0003」(10進表示で「−3」〜「+3」)
の範囲内にあると、レベル判定器10は当該楽音データ
MDが「無音部分」であると判定し、「1」の信号S1
を発生する。
【0023】信号S1が「1」に変化した時刻t11で、
レジスタ16のポインタYの値はストップし、それ以
降、該時点でのレジスタ15のポインタXの値を保持す
る(図4のt11参照)。一方、レジスタ15はポインタ
Xのインクリメント動作を続け、該ポインタXの示すア
ドレスに応じて楽音データMDのバッファエリアへの書
き込み動作(図4の場合は領域Bへの書き込み動作)は
継続的に行われる。この間、セレクタ14への信号S3
は変化せず、ディレイ11を通過した楽音データMDを
選択し続ける。
【0024】256サンプリング周期未満で「無音部
分」が終了した時点t12で、信号S1は「0」に変化す
る。レジスタ15のポインタXとレジスタ16のポイン
タYの値の差が256に達していないため、制御部12
は、無音コード発生部13に対し、無音コードの発生を
指示せず、レジスタ15の値がレジスタ16にロードさ
れ、レジスタ16のポインタYがポインタXと同じ値に
なるようにロード信号を発生する。
【0025】以上のように、「無音部分」が256サン
プル未満の場合、「無音部分」を検出した時点でレジス
タ16が一時的にインクリメントを停止し、ポインタY
はレジスタ15のポインタXに対して遅れた値をとるよ
うになるが、「無音部分」が終了した時点でポインタX
の値をレジスタ16にロードするので、ポインタXとポ
インタYは再び同じ値を示すようになる。
【0026】楽音データMDのバッファエリアへの書き
込みに関しては、その間も、一定の速さでインクリメン
トしているポインタXをアドレスとして継続的に行わ
れ、「無音部分」が存在しなかった場合と全く同じにな
る。
【0027】楽音データMDに「無音状態」が存在す
る場合 楽音データMDに「無音状態」が存在する場合とは、前
述の定義の通り、「無音部分」が256サンプリング周
期以上持続する状態を指す。以下、このような場合の転
送動作について図5を参照して説明する。
【0028】いま、例えば、図5に示すように領域Bへ
の書き込みがなされている過程において、楽音データM
Dに「無音部分」が検出され、信号S1が「1」に変化
すると、上述した項の場合と同様に、レジスタ16の
ポインタYがインクリメントを停止し、その時点のポイ
ンタXの値の保持状態に入る。一方、インクリメントを
続けるレジスタ15のポインタXをアドレスとしてバッ
ファエリアの領域Bへの書き込みも上記項の場合と同
様に継続して行われる。
【0029】増加を続けるポインタXの値が、一定値を
保持するレジスタ16のポインタYの値に対し、256
以上大きくなった時(時刻t22)、制御部12はレジス
タ15とレジスタ16との値から「無音部分」が256
サンプリング周期以上継続する「無音状態」であること
を検知し、書き込み中止信号S5を発生する。この信号
S5が「1」に変化するのに応じてゲート17が閉じら
れ、楽音データMDのバッファエリアへの書き込みは中
止される。レジスタ15におけるポインタXの値のイン
クリメントは、信号S5の変化に関わり無く継続継続し
て行われる。
【0030】その後、「無音部分」が終了をレベル判定
器10が検出して信号S1が「0」に変化すると(時刻
23)、制御部12はレジスタ15のポインタXとレジ
スタ16のポインタYの値から「無音状態」の持続時間
WCを算出する。ポインタYの値は、「無音状態」が始
まった時点t22のポインタXの値であり、一方、ポイン
タXの現在値は、「無音状態」が終了した現在の時点t
23のポインタXの値であるので、ポインタXの値からポ
インタYの値を引算することにより、「無音状態」の持
続時間WCが得られる。得られた持続時間WCは、無音
コード発生部13に対し、無音コード発生の指示信号S
2として送出され、無音コード発生部13は該持続時間
WCに基づいて無音コードSCを発生する。
【0031】時刻t23において、同時に、制御部12は
レジスタ15に対しレジスタ16のポインタYの値をロ
ードするように指示し、かつ、選択信号S3を「1」に
してセレクタ14が無音コード発生部13の出力を選択
するように設定し、書き込み中止信号S5を「0」に戻
す。バッファエリアへの書き込みアドレス(ポインタ
X)は、ポインタYの示す「無音状態」開始時のポイン
タXの値に戻され、その位置からバッファエリアへの書
き込みが行われるようにセットされる。
【0032】セレクタ14では、無音コード発生部13
を選択されており、図7のように、「無音状態」が始ま
る直前の楽音データMDに続いて、まず、無音コード発
生部13から供給される4アドレス分の無音コードSC
が記憶される。ここで、無音コードSCは、3アドレス
分の無音データSD(&hFFFF,&h8000,&
hFFFF)とそれに続く1アドレス分の持続時間WC
からなるデータである。
【0033】無音コードSCの供給にあわせてレジスタ
15のポインタXはインクリメントされ、順次連続した
アドレスに書き込みが行われる。該書き込みが終了する
と、制御部12は信号S3を「0」に戻し、セレクタ1
4をディレイ11を選択するように設定し、上述した無
音コードSCに続いてディレイ11を通過した楽音デー
タMDのバッファエリアへの書き込み(通常の楽音デー
タMD書込動作)がスタートする。無音コードSCの書
込〜楽音データMDの書込の動作のタイミングを合わせ
るため、ディレイ11の遅延時間は、上述したレベル判
定器10の「無音部分」の終了(「無音状態」の終了に
対応する)の検出から、無音コードSCの書込みが終了
(通常の書込動作の開始に対応する)までの時間に一致
するように設計されている。
【0034】ところで、以上に説明した一例は1転送周
期以内に収る「無音状態」である。そこで、以下には、
「無音状態」が複数の転送周期にわたって連続する場合
の転送動作について図6を参照して説明する。まず、図
中時刻t31において「無音状態」が開始し、時刻t33
256サンプリング周期分経過したとする。この場合、
前述したように、時刻t31〜時刻t32の間、領域A(バ
ッファエリア6a)には無音データSDと「無音部分」
の楽音データMDとが書き込まれる。
【0035】また、時刻t31では、レジスタ16がレジ
スタ15のカウント値(書き込みポインタX)を取込
み、これをサーチポインタYとして保持する。そして、
時刻t32において、領域Aに書き込まれたデータがDM
AC7によりハードディスク装置8側へブロック転送さ
れる。そして、時刻t33に至ると、制御部12が発生す
る書き込み中止信号S5によりダブルバッファ6への書
き込みが中止される。この時、アドレスカウンタ15
は、書き込みポインタXを歩進させており、領域B(バ
ッファエリア6b)の最終書き込みポインタXを得た時
点(時刻t34)でオーバーフローする。
【0036】レジスタ15のポインタXの値がオーバー
フローすると、制御部12は補助カウンタ18を1カウ
ント分インクリメントする。各「無音部分」における最
初のオーバーフロー発生時の当該カウンタ18のカウン
ト値は「1」である。このカウント値は、アドレスカウ
ンタ15のオーバーフロー回数を表す。なお、制御部1
2は、「無音部分」がスタートした後(時刻t31)、
「無音状態」が確定するまで(時刻t33)の256サン
プリング期間の楽音データMDの書き込み中に、領域A
または領域Bのいずれかの書き込みが終了してDMAC
7により該領域のデータのハードディスク装置8への転
送(時刻t32の転送A)が行われた場合、その書き込み
の行われたハードディスク装置8内の記憶位置と同じ位
置に、「無音状態」終了後のDMAC7の最初の転送の
際、再度書込を行うように指示する。
【0037】このようにして、複数の転送周期を経過し
た後で、「無音状態」が完了した場合(時刻t35)につ
いて述べる。上述した項の場合と同様に、制御部12
は時刻t33の段階で既に「無音状態」が成立したことを
検知しており、時刻t35では「無音状態」の終了に応じ
て、まず、「無音状態」の持続時間WCの算出を行う。
この場合、「無音状態」の終了時点の値として、レジス
タ15のポインタXの値に補助カウンタ18のカウント
値に対応した値を加算した値を用い、その値からレジス
タ16中のポインタYの値を減算して持続時間WCを得
る。
【0038】制御部12は、レジスタ15にレジスタ1
6のポインタYの値をロードして書込みポインタXを
「無音状態」開始時点の位置に戻した後、セレクタ14
の選択信号S3を「1」、書込み中止信号S5を「0」
にして、まず、算出された持続時間WCを含む無音コー
ドSCの書込みを行う。続いて、選択信号S3を「0」
にして、ディレイ11を通過した楽音データMDの通常
の書込み動作に移行する。
【0039】次いで、時刻t36において領域Aの書き込
みが完了すると、制御部12はDMAC7に対してこの
領域Aのデータを時刻t32において転送された領域Aに
連結させるように再転送を指示する。つまり、時刻t32
でハードディスク装置8側に転送された領域Aのデータ
の内、時刻t31〜時刻t32に対応するデータは、無音デ
ータSDと「無音部分」の楽音データMDとが書き込ま
れており、その楽音データMDの替りに無音データSD
に持続時間WCを繋げて形成した無音コードSCおよび
時刻t35〜時刻t36に対応するデータをハードディスク
装置8側に転送(書き換えを行う)する訳である。そし
て、時刻t36以降、領域Bには通常の楽音データMDが
連続的に書き込まれ、該領域Bが満杯となった時点で制
御部12がDMAC7に転送指示し、これにより領域B
のデータがハードディスク装置8に転送される。
【0040】ここで、上述した動作に基づいて楽音デー
タMDが書き込まれるハードディスク装置8側の記憶形
態について図7を参照して説明する。まず、図7(イ)
は、ハードディスク装置8の一連の記憶データを連続デ
ータとして示した図であり、転送制御回路5によって転
送された楽音データMDの記憶形態を示している。な
お、実際にはFATで制御されるたね、ハードディスク
装置8内のデータ並びは同図に示す通り整列さていな
い。この図に示すように、ハードディスク装置8の記憶
エリアには、先頭に記憶(録音)開始時点のタイムコー
ドTCが書き込まれ、これ以後、前述した転送動作に従
って楽音データMDが順次書き込まれている。
【0041】そして、例えば、レジスタ15のポインタ
Xの値が「0101」となる時点から「7005」とな
る時点まで「無音状態」が持続し、この後に「無音状
態」が解消して再転送がなされると、同図(ロ)に示す
ように、「無音状態」開始直前の楽音データMDに続い
て、3ワード分の無音データSDと「無音状態」の持続
時間WCとから形成される無音コードSCが書き込まれ
た後、「無音状態」完了後の楽音データMDが書き込ま
れる。この場合、持続時間WCとして16進数表示で
「7006」と「0101」との差に相当する値「6F
051」が書き込まれる。
【0042】このように、記憶部1では、振幅が所定レ
ベル以下の楽音データMDを「無音部分」と判別し、こ
の「無音部分」が例えば、256サンプリング周期以上
にわたって持続した時、「無音状態」を表す無音コード
SCだけをハードディスク装置8に記憶させるようにし
たので、従来のように、「無音状態」が長く続いた時に
大量の無音データが形成されるといったことが解消され
る。しかも、この実施例によれば、「フレーム」という
概念が存在しないため、1つの「無音状態」に対して1
の無音コードSCを付与すれば良い。これにより、無音
期間が長時間にわたって場合でもハードディスク装置8
の記憶容量を消費することがない訳である。
【0043】D.再生部2の構成 次に、上述した動作によってハードディスク装置8に記
憶(録音)された楽音データMDを再生する再生部2の
構成について図8を参照して説明する。なお、この図に
おいて、図1に示す各部と共通する部分には同一の番号
を付し、その説明を省略する。図において、20は再生
用DMACである。この再生用DMAC20は、後述す
る無音期間指示データが供給されない場合、ダブルバッ
ファ6から読み出される楽音データMDを少なくとも3
サンプリング周期分遅延させた後、後段のD/A変換器
21へ転送する。
【0044】また、無音期間指示データが供給された場
合には、当該指示データが示す無音期間の間、楽音デー
タMDの転送を中断するようになっている。D/A変換
器21は、DMAC7から転送される楽音データMDを
アナログの再生楽音信号W1に変換して出力する。22
は無音コード検出器である。この検出器22は、ダブル
バッファ6から読み出される楽音データMD中に前述し
た無音コードSCを検出した場合に検出信号を発生す
る。
【0045】23はタイムコードカウンタである。タイ
ムコードカウンタ23は、楽音データMD列の先頭に付
与される記憶(録音)開始時点のタイムコードを検出す
ると共に、各サンプリング点毎の楽音データMDをカウ
ントし、このカウント値を検出したタイムコードに加算
することによって記憶(録音)開始時点からの経過時刻
を表すタイムコードを発生する。24は無音コード検出
器23から供給される検出信号とタイムコードカウンタ
23から供給されるタイムコードとに応じて無音期間指
示データを発生する。この無音期間指示データとは、無
音開始時刻から無音完了時刻になるまでの無音期間を再
生用DMAC20に知らせるデータである。
【0046】25はダブルバッファ6から読み出される
楽音データMDにシーケンサ26を同期させるシンクロ
ナイザである。このシンクロナイザ25には、予め演奏
開始時刻が記憶されており、この演奏開始時刻とタイム
コードカウンタ23が出力するタイムコードとが一致し
た時点で、タイムコードの進行に応じたテンポパルスの
MIDIデータとしての出力を開始する。シーケンサ2
6は、このテンポパルスに同期してMIDI演奏データ
を発生する。
【0047】27は周知の波形メモリ読み出し方式等に
よって構成される音源であり、MIDI演奏データに応
じて楽音合成し、その結果を楽音信号W2として出力す
る。28はD/A変換器21から出力される再生楽音信
号W1と音源27から出力される楽音信号W2とを混合
して出力するミキサである。29は、ミキサ28の出力
に対し効果音を付与したりノイズ除去するフィルタリン
グを施した後、これを増幅して楽音として発音させるサ
ウンドシステムである。このように、構成要素25〜2
9は自動演奏装置を構成している。
【0048】E.再生部2の動作 次に、上記構成による再生部2の読み出し動作について
図9を参照して説明する。図9の上段は、DMAC7に
よるハードディスク装置8からダブルバッファへの転送
タイミングを示しており、長方形の内部の「A」,
「B」の文字はダブルバッファ内の転送先が領域Aであ
るか領域Bかを表している。図9の下段の鋸波状のグラ
フは、再生用DMAC20のダブルバッファ読み出しの
ためのアドレスの変化を示している。
【0049】いま、例えば、再生開始が指示されて時刻
1にあるとする。この時刻t1では、DMAC7がハー
ドディスク装置8に記憶された楽音データMDを読み出
し、これをダブルバッファ6の領域A(バッファエリア
6a)に転送する。一方、再生用DMAC20は、時刻
0において転送書込み済みとなった領域Bの楽音デー
タMDを読み出しを開始し、これをD/A変換器21に
供給する。続く時刻t2では、再生用DMAC20の読
み出しアドレスは、時刻t1にて転送書込済みとなった
領域Aに移り、一方、再生用DMAC20によって読み
出しの終了した領域BにはDMAC7によりハードディ
スク装置8からの新たなデータの転送書込が開始され
る。このようにして、時刻t2〜時刻t4では、DMAC
7によってハードディスク装置8から領域A,Bへ交互
に楽音データMDが書き込まれる一方、再生用DMAC
20によって領域B,Aから交互に楽音データMDが読
み出され、D/A変換器21へ供給される。
【0050】こうした読み出し動作において、タイムコ
ードカウンタ23は記憶(録音)開始時刻からの経過時
間に応じたタイムコードを発生し続ける。ここで、シン
クロナイザ25に設定された演奏開始時刻と、このカウ
ンタ23が発生するタイムコードとが一致すると、シン
クロナイザ25はテンポパルスを発生開始し、シーケン
サ26に与える。この結果、シーケンサ26は演奏情報
を発生し、音源27が当該演奏情報に応じた楽音信号W
2を形成する。一方、D/A変換器21に供給された楽
音データMDは再生楽音信号W1を発生する。そして、
再生楽音信号W1と楽音信号W2とはミキサ28によっ
て混合される。これにより予め記憶しておいた楽音デー
タMDを、上述した自動演奏装置の出力に同期して再生
することが可能になる。
【0051】そして、例えば、時刻t4以後の読み出し
過程において、無音コード検出器22が無音コードSC
を検出したとする。そうすると、制御部12は該検出器
22から供給される検出信号に基づき、無音開始を表す
データを再生用DMAC20に与える(時刻t5)。こ
れにより、再生用DMAC20は楽音データMDの転送
を停止する。再生用DMAC20からのデータのDAC
21への出力がデータの入力から3サンプリング周期分
遅れているため、無音コードScがDAC21に出力さ
れる直前でDMAC20の出力が停止され、かわりにD
MAC20は「0」をDAC21に出力する。
【0052】そして、制御部12は、ワードカウント値
WCが表す「無音部分」の持続時間を、タイムコードカ
ウンタ23から供給されるタイムコードに基づいて計時
し、その持続時間経過時点の3サンプリング周期前のタ
イミングで無音完了の旨を表すデータを再生用DMAC
20に供給する(時刻t6)。この結果、再生用DMA
C20は、時刻t6にてダブルバッファの順次読み出し
を再開し、時刻t6から3サンプリング周期分遅延した
時刻t7から再び楽音データMDをD/A変換器21へ
転送する。
【0053】このように、再生部2にあっては、記憶部
1において記憶された無音コードSCに従って「無音状
態」を再現することが可能となる。ここで、楽音データ
MD中に含まれる無音開始時刻および完了時刻、すなわ
ち、無音コードSCが書き込まれた時刻を予めシンクロ
ナイザ25に記憶しておけば、「無音状態」を含む楽音
データMDに同期した自動演奏を実現することが可能に
なる。ここで言う「無音状態」を含む楽音データMDと
は、自動演奏装置で実現できず、しかもイントロやエン
ディングなど楽曲の一部の間しか演奏されない「ギター
ソロ」あるいは「サックスソロ」等である。
【0054】なお、上述した実施例においては、「無音
部分」の判別基準として、2の補数で表される16ビッ
ト長の楽音データMDが「&hFFFC(16進表
示)」〜「&h0003」の範囲としたが、これに限ら
ず任意の範囲としても良い。また、この範囲は256サ
ンプリング周期以上続いた場合に「無音状態」と定義し
たが、これも任意の期間にして良い。これら条件は、ユ
ーザによって任意に設定できる構成にすることも可能で
ある。
【0055】また、前述した記憶部1の転送制御回路5
において、レジスタ15をポインタXの書き込み専用に
用いているが、これに替えてレジスタ15,16を交互
に書き込みポインタ用に使用することも可能である。ま
た、前述したように、レジスタ15を書き込み専用とし
て用いる場合、レジスタ16はラッチ機能だけを備える
レジスタで構成するのが良い。また、前述した実施例で
は、レジスタ15,16の両者を用いて「無音部分」の
持続時間を計時するようにしたが、これに替えて、無音
期間を計測する独立したカウンタを設けても良い。
【0056】
【発明の効果】以上説明したように、本発明によれば、
無音状態が検出された場合、該無音状態の開始時点から
中止指示手段が中止を指示するまでの期間に第2の転送
手段の行った転送を無効化するので、無音状態が長時間
にわたっても、これに対応する無音コードのみが記憶手
段に記憶されるから、記憶容量が消費されないという効
果を得ることができる。また、再生時においては無音状
態に対応する期間中、波形再生が停止する。
【図面の簡単な説明】
【図1】 本発明の一実施例による記憶部1の構成を示
すブロック図。
【図2】 同実施例における転送制御回路5の構成を示
すブロック図。
【図3】 同実施例における記憶部1の動作を説明する
ための図。
【図4】 同実施例における記憶部1の動作を説明する
ための図。
【図5】 同実施例における記憶部1の動作を説明する
ための図。
【図6】 同実施例における記憶部1の動作を説明する
ための図。
【図7】 同実施例における記憶部1の動作を説明する
ための図。
【図8】 同実施例における再生部2の構成を示すブロ
ック図。
【図9】 同実施例における再生部2の動作を説明する
ための図。
【符号の説明】
1…記憶部、2…再生部、4…A/D変換器、5…転送
制御回路、6…ダブルバッファ、7…DMAC、8…ハ
ードディスク装置、10…レベル判定器、12…制御
部、13…無音コード発生部。

Claims (2)

    【特許請求の範囲】
  1. 【請求項1】 波形データを入力する手段と、 サンプリングした波形データを連続的に記憶する記憶手
    段と、 サンプリングした波形データを一時的に記憶するバッフ
    ァ手段と、 入力した波形データを上記バッファ手段に順次転送する
    第1の転送手段と、 この第1の転送手段により上記バッファ手段に転送され
    た波形データの容量が所定量に達する毎に、前記バッフ
    ァ手段中の所定量の波形データを前記記憶手段に転送す
    る第2の転送手段と、 入力する波形データが所定レベル以下の無音部分を検出
    する無音部分検出手段と、 無音部分が所定時間以上継続したことを検出し、無音状
    態として検知する無音状態検知手段と、 前記無音部分の検知に応じ、前記第1の転送手段の転送
    動作の中止を指示する中止指示手段と、 前記第1の転送手段により前記バッファ手段に転送され
    る波形データに含まれる無音状態を、無音コードで置き
    換える置換手段と、 無音状態が検出された場合、該無音状態の開始時点から
    前記中止指示手段が中止を指示するまでの期間に前記第
    2の転送手段の行った転送を無効化する無効化手段とを
    具備することを特徴とする記憶再生装置。
  2. 【請求項2】 前記置換手段は、前記第2の転送手段の
    複数回の転送に対応する量の波形データを前記無音コー
    ドに置換することを特徴とする請求項1記載の記憶再生
    装置。
JP5139645A 1993-06-10 1993-06-10 記憶再生装置 Expired - Fee Related JP2765433B2 (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP5139645A JP2765433B2 (ja) 1993-06-10 1993-06-10 記憶再生装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP5139645A JP2765433B2 (ja) 1993-06-10 1993-06-10 記憶再生装置

Publications (2)

Publication Number Publication Date
JPH06348273A true JPH06348273A (ja) 1994-12-22
JP2765433B2 JP2765433B2 (ja) 1998-06-18

Family

ID=15250104

Family Applications (1)

Application Number Title Priority Date Filing Date
JP5139645A Expired - Fee Related JP2765433B2 (ja) 1993-06-10 1993-06-10 記憶再生装置

Country Status (1)

Country Link
JP (1) JP2765433B2 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2133797A1 (en) * 2007-02-28 2009-12-16 NEC Corporation Dma transfer device and method

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7188215B2 (en) 2003-06-19 2007-03-06 Ip-First, Llc Apparatus and method for renaming a cache line

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04285765A (ja) * 1991-03-13 1992-10-09 Casio Comput Co Ltd デジタルレコーダ

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JPH04285765A (ja) * 1991-03-13 1992-10-09 Casio Comput Co Ltd デジタルレコーダ

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2133797A1 (en) * 2007-02-28 2009-12-16 NEC Corporation Dma transfer device and method
EP2133797A4 (en) * 2007-02-28 2010-12-08 Nec Corp DMA TRANSFER DEVICE AND METHOD
JP5360594B2 (ja) * 2007-02-28 2013-12-04 日本電気株式会社 Dma転送装置及び方法
US9367496B2 (en) 2007-02-28 2016-06-14 Nec Corporation DMA transfer device and method

Also Published As

Publication number Publication date
JP2765433B2 (ja) 1998-06-18

Similar Documents

Publication Publication Date Title
JP6191459B2 (ja) オーディオ波形データを使用する自動演奏技術
JPH06308964A (ja) 楽音形成装置
JPH11126070A (ja) 楽音生成方法
JPH0922287A (ja) 楽音波形生成方法
JPH04339000A (ja) 音楽再生装置
JP2765433B2 (ja) 記憶再生装置
JP2591417B2 (ja) 自動演奏データ修正装置
JP2008518248A (ja) Midiファイルを再生する装置及び方法
JP6531432B2 (ja) プログラム、音源装置及び音響信号生成装置
JP2712421B2 (ja) 音源装置
JP2712422B2 (ja) 連続音源データ再生装置
JP4120979B2 (ja) 波形再生装置
JP3518357B2 (ja) 楽音生成方法、楽音生成装置及び楽音生成処理プログラムを記録したコンピュータ読み取り可能な記録媒体
JPH09185379A (ja) サンプリング音源装置
JP4102931B2 (ja) 音波形合成装置
JP2671456B2 (ja) 音源装置
JP4048639B2 (ja) 音源装置
JP2798083B2 (ja) 電子楽器
JP2583377B2 (ja) 自動演奏装置
JP3407625B2 (ja) 自動演奏装置、自動演奏方法及びプログラムを記録した媒体
JP2548723Y2 (ja) 楽音再生装置
JP4102930B2 (ja) 音波形合成装置
JP2005223939A (ja) 映像再生装置
JPH06250662A (ja) 波形データ生成方法及び波形データメモリ
JP3098352B2 (ja) 自動演奏装置

Legal Events

Date Code Title Description
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 19980303

S531 Written request for registration of change of domicile

Free format text: JAPANESE INTERMEDIATE CODE: R313532

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090403

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20090403

Year of fee payment: 11

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20100403

Year of fee payment: 12

FPAY Renewal fee payment (event date is renewal date of database)

Free format text: PAYMENT UNTIL: 20110403

Year of fee payment: 13

LAPS Cancellation because of no payment of annual fees