JP2004126127A - 圧縮データ構造、波形生成装置および波形記憶装置 - Google Patents
圧縮データ構造、波形生成装置および波形記憶装置 Download PDFInfo
- Publication number
- JP2004126127A JP2004126127A JP2002288783A JP2002288783A JP2004126127A JP 2004126127 A JP2004126127 A JP 2004126127A JP 2002288783 A JP2002288783 A JP 2002288783A JP 2002288783 A JP2002288783 A JP 2002288783A JP 2004126127 A JP2004126127 A JP 2004126127A
- Authority
- JP
- Japan
- Prior art keywords
- waveform data
- frame
- compressed
- data
- unit
- 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
Links
Images
Landscapes
- Electrophonic Musical Instruments (AREA)
Abstract
【解決手段】1フレームは1アドレスに対応するデータ幅の正数倍の固定長とされており、圧縮関連情報である予測係数、量子化幅、ビット数情報と、圧縮波形データとにより1フレームが構成されている。圧縮関連情報の領域、圧縮波形データの領域は、それぞれ固定長の領域が割り当てられている。このため、フレームの開始位置は決まった位置になると共に、フレームにおける圧縮波形データの開始位置も決まった位置となり、簡易な構成を圧縮波形データを読み出して伸長することができるようになる。
【選択図】 図8
Description
【発明の属する技術分野】
本発明は、楽音生成装置等に用いられる記憶されている圧縮波形データのデータ構造、その圧縮波形データを読み出して楽音を生成する楽音生成装置、および、波形データを圧縮した圧縮波形データを書き込む波形記憶装置に関するものである。
【0002】
【従来の技術】
従来、電子楽器における楽音信号の発生方法の一つとして、自然楽器の楽音波形の瞬時値を逐次サンプリングしてディジタルとされたサンプル波形データとして予めメモリに記憶しておき、楽音の発生時にこのサンプル波形データを読み出して楽音信号を発生するようにしたPCM方式がある。このPCM方式は自然楽器に近い楽音を発生できるという点で優れているが、波形データを記憶しておくメモリの容量が膨大になるという問題がある。これを解決するために、サンプル波形データを圧縮し、この圧縮波形データをメモリに記憶しておき、再生時にはこの圧縮波形データを伸長して楽音信号を形成するようにした楽音信号発生装置が提案されている(特許第2605434号参照)。
【0003】
【発明が解決しようとする課題】
このような楽音信号発生装置においては、サンプル波形データが圧縮されているため、メモリ容量を効率的に使用することができる。また、圧縮波形データは可変長に圧縮処理されており、例えば16サンプルの固定数の圧縮波形データによりフレームが構成されて、このフレーム毎にメモリに記憶されている。このため、フレームの総ビット数は、圧縮処理された1サンプルあたりの圧縮波形データのビット数に応じて可変とされている。
すると、フレームが可変長とされていることからメモリ上においてフレーム毎にフレーム開始位置が異なるようになる。このため、フレームの先頭アドレスを演算して算出する回路が必要となり、圧縮波形データを伸長処理する回路が複雑になると云う問題点があった。
【0004】
そこで本発明は、簡易な構成で伸長処理することができる圧縮データ構造、波形生成装置および波形記憶装置を提供することを目的としている。
【0005】
【課題を解決するための手段】
上記目的を達成するため、本発明にかかる圧縮データ構造、波形生成装置および波形記憶装置においては、フレームを構成する総ビット数を固定としている。これにより、フレームの開始位置が決まった位置となることからフレームの先頭アドレスを容易に得ることができるようになる。したがって、波形データを効率よく記憶することができると共に、伸長処理を行う回路を簡単化することができるようになる。
また、圧縮波形データと共にフレームを構成する副情報には、前記圧縮波形データにおける圧縮関連情報が含まれている。そこで、この圧縮関連情報を利用して圧縮波形データの伸長処理を行うことができる。なお、フレーム内における圧縮波形データの1サンプル当たりのビット数は一定とされている。さらに、可変長とされた1サンプル当たりの圧縮波形データのビット数を、フレームにおける圧縮波形データが格納される固定長のデータ領域のビット数における素数の倍数のビット数とすると、無駄なビットを生じさせることなく効率よく圧縮波形データを記憶することができるようになる。
【0006】
【発明の実施の形態】
本発明の実施の形態にかかる波形記憶装置の概略構成を示すブロック図を図1に示す。
図1に示すように、波形記憶装置は波形記憶部10と制御部4とから構成されている。波形記憶部10は、入力された元波形データを可変長の圧縮波形データに圧縮処理する圧縮処理部1と、圧縮処理された圧縮波形データを副情報と共にフレーム化するフレーム化部2と、フレーム化部2により生成されたフレームが書き込まれて記憶される記憶手段3から構成されている。制御部4は、波形記憶部10における波形記憶処理の制御を行うことにより、圧縮波形データの1サンプル当たりのビット数をフレーム毎に可変制御していると共に、圧縮波形データの1サンプル当たりのビット数をフレーム内において一定とする圧縮処理の制御を行うようにしている。圧縮処理部1においては適用差分符号化(ADPCM)を利用して圧縮処理を行うことができると共に、線形予測符号化(LPC)を利用して圧縮処理を行うことができるようにされている。
【0007】
ここで、ADPCMを利用して圧縮処理を行う圧縮処理部1の構成例を図2に示す。
図2において、元波形データSnは、減算器11に入力されてADPCM予測部17より出力される予測信号◇Snが減算され、残差信号dn(=Sn−◇Sn)が出力される。この残差信号dnは、量子化部12において、まず、信号のレベルを量子化幅信号△nに基づいて量子化(正規化)されつつビット数kを決定され、さらに決定されたビット数kで符号化されてビット数kの圧縮波形データLnに変換される。量子化幅判定部13は、この圧縮波形データLnと過去の圧縮波形データから量子化幅を判定し、最適の量子化幅信号Δnを出力して量子化部12に重みとして供給する。また、圧縮波形データLnは逆量子化部15に供給されて量子化幅信号△nに基づいて逆量子化(逆正規化)され、圧縮波形データLnの復号信号qnとして出力される。復号信号qnは加算器16に供給され、ADPCM予測部17より出力される予測信号◇Snが加算されて再生波形データ◇Xnが再生され、ADPCM予測部17に供給されるようになる。ADPCM予測部17では、過去のp個の再生波形データ◇Xn−p,◇Xn−p+1,・・・◇Xn−1までを用いて現サンプルの予測信号◇Snを生成する。
【0008】
このようにして元波形データの圧縮処理がサンプル毎に行われることにより、圧縮波形データが量子化部12から順次出力されてフレーム化部14に供給される。フレーム化部14においては、総ビット数が固定とされて固定長とされているフレームを、量子化部12から順次出力されてフレーム化部14に供給された圧縮波形データと、ビット数k情報およびその他の副情報からなる副情報とで構成する。この場合、副情報にはフレーム内の固定された副情報領域が割り当てられており、残るフレーム内のデータ領域が圧縮波形データに割り当てられる。圧縮波形データは、順次割り当てられたデータ領域につめこまれて副情報と共にフレームが構成される。このようにして生成されたフレームは、フレーム毎に出力されて記憶手段に書き込まれるようになる。なお、フレーム内における圧縮波形データのビット数は同一とされており、フレーム毎に圧縮波形データのビット数を可変とできるようにされている。
【0009】
このようにフレーム化された圧縮波形データを伸長するデコーダの構成例を図3に示す。
図3において、記憶手段から読み出されたフレームが供給されるデータ取出部21は、フレーム内の固定された副情報領域から副情報を取り出すと共に副情報中のビット数k情報から、圧縮波形データのビット数を決定し、決定されたビット数に基づいてフレーム内のデータ領域から順次圧縮波形データLnを抽出して逆量子化部22に供給している。圧縮波形データLnは、量子化幅判定部23にも供給され、量子化幅判定部23はこの圧縮波形データLnと過去の圧縮波形データから量子化幅を判定し、最適の量子化幅信号Δnを出力して逆量子化部22に重みとして供給する。逆量子化部22は、量子化幅判定部23から出力された量子化幅信号△nに基づいて逆量子化(逆正規化)を行い、圧縮波形データLnの復号信号qnを出力している。加算器24においてこの復号信号qnに、ADPCM予測部25より出力される予測信号◇Snが加算されて再生波形データ◇Xnが再生されて復号波形データとして出力される。また、再生波形データ◇XnはADPCM予測部25に供給されて、過去のp個の再生波形データ◇Xn−p,◇Xn−p+1,・・・◇Xn−1から現サンプルを復元するのに使用される予測信号◇Snが生成される。
【0010】
このようにして、デコーダから出力された復号波形データに基づいて、音を生成することにより再生音を得ることができる。この場合、記憶手段に記憶されているフレーム化された圧縮波形データの元データが楽音波形データであった場合は、出力された復号波形データに基づいて楽音を生成できるようになる。なお、データ取出部21においては、その他の副情報が出力されており、この副情報を音量情報や波形データのループアドレスとすることにより、楽音を生成する際に音量情報や波形データのループアドレスを利用して楽音を生成することができるようになる。
【0011】
次に、LPCを利用して圧縮処理を行う圧縮処理部1の構成を図4に示す。
図4において、元波形データSnは予測係数算出部33に入力され、フレームに対応する所定期間の元波形データのサンプルから自己相関法等の線形予測係数演算によって予測係数Pn(p個の係数、ないし、p個の係数を示すインディクス)が算出されてフレーム判定部34に供給される。また、減算器31に入力された元波形データSnからは、線形予測部38より出力される線形予測信号◇Snが減算され、残差信号dn(=Sn−◇Sn)が出力される。この残差信号dnは、量子化部32において、その信号のレベルを指定された量子化幅信号とビット数とに基づいて量子化(正規化)されつつ符号化され、指定されたビット数の圧縮波形データLnに変換される。また、圧縮波形データLnは逆量子化部36に供給されて指定された量子化幅信号とビット数とに基づいて逆量子化(逆正規化)され、圧縮波形データLnの復号信号qnとして出力される。復号信号qnは加算器37において、線形予測部38より出力される線形予測信号◇Snが加算されて再生波形データ◇Xnが再生されて、線形予測部38に供給されるようになる。線形予測部38では、予測係数Pnと過去のp個の再生波形データ◇Xn−p,◇Xn−p+1,・・・◇Xn−1に基づいて線形予測演算を行い、現サンプルの線形予測信号◇Snを生成している。
【0012】
フレーム判定部34においては、圧縮処理部1による元波形データの1フレーム分の線形予測圧縮を、異なるビット数、予測係数、ないし量子化幅で複数通りに実行させ、その圧縮結果に基づいて各フレームの圧縮のためのビット数、予測係数、量子化幅を決定している。量子化部32は、決定されたビット数および量子化幅信号に基づいて量子化を行い圧縮波形データLnを生成している。この場合、フレーム判定部34において、まず、過去のビット数に基づいてビット数を仮決定し、線形予測係数算出部33から仮決定されたビット数で圧縮する場合の1フレームの元波形データに応じた予測係数Pnを供給する。続いて、フレーム判定部34において、過去の量子化幅に基づいて量子化幅が仮決定され、線形予測部38における予測係数Pnによる線形予測と、量子化部32における仮決定されたビット数と量子化幅に基づく量子化が行われ、圧縮波形データLnが生成される。以上の仮の線形予測圧縮処理における再生波形データ(加算器37から出力される)と元波形データとが対比され、再生波形データの歪率が算出される。そして、複数とおりに行われた仮の線形予測圧縮処理の結果に基づき、歪率が許容範囲に入る範囲で最も圧縮率が良くなるビット数、予測係数、量子化幅の組み合わせがフレーム毎に決定される。
【0013】
このようにしてフレーム毎に決定された予測係数、ビット数および量子化幅によりフレームを構成する元波形データの圧縮処理がサンプル毎に行われて、圧縮波形データが量子化部32から順次出力されてフレーム化部35に供給される。フレーム化部35においては、総ビット数が固定とされて固定長とされているフレームを、量子化部35から順次出力されてフレーム化部35に供給された圧縮波形データと、決定された予測係数、ビット数および量子化幅情報およびその他の副情報からなる副情報とにより構成する。この場合、副情報にはフレーム内の固定された副情報領域が割り当てられており、フレーム内の残るデータ領域が圧縮波形データに割り当てられる。圧縮波形データは、順次割り当てられたデータ領域につめこまれて副情報と共にフレームが構成される。このようにして生成されたフレームは、フレーム毎に出力されて記憶手段に書き込まれるようになる。なお、フレーム毎に圧縮波形データの予測係数、ビット数および量子化幅を可変することができる。
【0014】
このようにしてフレーム化された圧縮波形データを伸長するデコーダの構成例を図5に示す。
図5において、記憶手段から読み出されたフレームが供給されるデータ取出部41は、フレーム内の固定された副情報領域から副情報を取り出すと共に副情報中のビット数情報に基づいてフレーム内の固定されたデータ領域から圧縮波形データLnを順次取り出して逆量子化部42に供給している。さらに、データ取出部41においては副情報から予測係数情報Pnを取り出して線形予測部44に供給すると共に、量子化幅情報を取り出して逆量子化部42に供給している。逆量子化部42は、データ取出部41から供給された量子化幅情報に基づいて圧縮波形データLnの逆量子化(逆正規化)を行い、復号信号qnを出力する。復号信号qnは加算器43において、線形予測部44より出力される予測信号◇Snが加算されて再生波形データ◇Xnが再生されて復号波形データとして出力される。また、再生波形データ◇Xnは線形予測部44に供給され、線形予測部44は、予測係数Pnと過去のp個の再生波形データ◇Xn−p,◇Xn−p+1,・・・◇Xn−1に基づいて線形予測演算を行うことにより現サンプルの線形予測信号◇Snを生成している。
【0015】
このようにして、デコーダから出力された復号波形データに基づいて、音を生成することにより再生音を得ることができる。この場合、記憶手段に記憶されているフレーム化された圧縮波形データの元データが楽音波形データであった場合は、出力された復号波形データに基づいて楽音を生成できるようになる。なお、データ取出部21においては、その他の副情報が出力されており、この副情報を音量情報や波形データのループアドレスとすることにより、楽音を生成する際に音量情報や波形データのループアドレスを利用して楽音を生成することができるようになる。
【0016】
ここで、記憶手段3に記憶される圧縮波形データと副情報から構成されるフレームの本発明にかかるデータ構造の線形予測圧縮を利用した場合の一例を図8に示す。
図8には、1サンプル当たりの圧縮波形データが2ビット、3ビット、4ビット、5ビット、6ビットおよび10ビットとされている場合のフレームのデータ構造が示されている。1サンプル当たりの圧縮波形データが2ビットとされている場合を例に挙げて説明すると、1フレームは、例えば図示するようにアドレスが「00」から「04」の5アドレスに対応するデータの大きさとされており、1アドレスに対応するデータ幅が、例えば16ビットとされていることから、1フレームの総ビット数は80ビットとされている。この1フレームの総ビット数は固定長とされている。また、フレームは先頭から20ビットの固定長の副情報領域と、残る60ビットの圧縮波形データが格納される固定長のデータ領域から構成されている。この場合、副情報領域には11ビットの予測係数情報、5ビットの量子化幅情報および4ビットのビット数情報が格納され、データ領域には1サンプル当たり2ビットに圧縮されているサンプル番号「1」〜「30」の圧縮波形データが30サンプル分格納されている。フレーム内においては圧縮された1サンプル当たりの圧縮波形データのビット数は固定とされている。
【0017】
このように、1フレームの総ビット数が1アドレスに対応するデータ幅を単位とした固定ビット数とされていることから、フレームは決まった位置から開始するようになる。例えば、図8に示すように1フレームが5データ幅とされている場合は、フレームの開始アドレスは「00」から始まり5アドレス毎のアドレス位置から開始するようになる。また、副情報領域は固定長とされていることから圧縮波形データの開始位置も決まった位置となる。したがって、伸長処理する際にフレームを読み出すアドレスを簡易な構成で生成することができるようになる。また、図8に示すように1サンプル当たりの圧縮波形データが3ビット、4ビット、5ビット、6ビットおよび10ビットとされている場合においても1フレームの総ビット数は、1アドレスに対応するデータ幅を単位とした固定ビット数とされている。
【0018】
したがって、図8に示すように1フレームが5データ幅とされている場合において、1サンプル当たりの圧縮波形データが3ビットとされている場合は、20サンプル分の圧縮波形データが1フレームに格納され、4ビットとされている場合は、15サンプル分の圧縮波形データが1フレームに格納される。同様にして、5ビットとされている場合は、12サンプル分の圧縮波形データが1フレームに格納され、6ビットとされている場合は、10サンプル分の圧縮波形データが1フレームに格納され、10ビットとされている場合は、6サンプル分の圧縮波形データが1フレームに格納される。このように、圧縮波形データに割り当てられている60ビットの素数である2,3,5の倍数のビット数とすることにより、無駄を生じることなくフレーム内に圧縮波形データを詰め込むことができるようになる。
なお、ADPCM圧縮された圧縮波形データを記憶する場合には、予測係数や量子化幅の情報を記憶する必要がないので、図8のデータ構造におけるアドレス「00」の領域は不要であり、各フレーム毎に「01」から「04」の4アドレスに対応するデータだけを記憶するようにすればよい。
【0019】
次に、本発明にかかるデータ構造のフレーム化された圧縮波形データが記憶されている記憶手段3を備える本発明にかかる楽音生成装置のブロック図を図6に示す。
図6に示す楽音生成装置50おいて、CPU61は楽音生成に関連する各種プログラムを実行することにより楽音生成装置50における楽音生成の動作を制御する中央処理装置(Central Processing Unit)であり、タイマ64は動作時の経過時間を示したり、特定の間隔でタイマ割込を発生するタイマであり、自動演奏の時間管理等に使用される。フラッシュROM62は、CPU61が実行する楽音生成処理のプログラムや、本願発明にかかるデータ構造のフレーム化された圧縮波形データ等の各種データが格納される書き換え可能なフラッシュROM(Read Only Memory)である。ROM/RAM63は楽音生成装置50におけるメインメモリであり、CPU61のワークエリア等が設定されるRAM(Random Access Memory)と、本願発明にかかる波形記憶装置により、本願発明にかかるデータ構造のフレーム化された圧縮波形データ等のデータが書き込まれているROMからなるメモリシステムである。
【0020】
また、演奏操作子65は鍵盤等の演奏操作子であり、MIDIインタフェース66は、楽音生成装置50内部で作成したMIDIメッセージを外部へ送出したり、外部からのMIDIメッセージを受信するMIDIインターフェースである。パネルスイッチ(パネルSW)67は、楽音生成装置50のパネルに設けられている各種スイッチであり、これを操作することにより楽音生成装置50に各種指示を与えることができる。表示器68は、楽音生成時に各種情報を表示させる表示器である。さらに、表示器68の周囲に設けられている表示器SW69を操作することにより楽音生成装置50に各種指示を与えることができる。ハードディスク70は、本願発明にかかるデータ構造のフレーム化された圧縮波形データを記憶することができると共に、演奏データやユーザ設定データ等を記憶することができる大容量記憶媒体である。
【0021】
音源部71は、フレーム化された圧縮波形データの伸長処理を行う図3や図5に示すような構成のデコーダを備えており、CPU61の制御に基づいて、ROM/RAM63から楽音生成に必要とするフレーム化された圧縮波形データを読み出し、この圧縮波形データの伸長処理を行っている。そして、デコードされた波形データの補間、エンベロープ付与、チャンネル累算(ミキシング)、および効果(エフェクト)付与などの処理を行って、楽音波形データとして出力している。音源部71から出力された楽音波形データは、サウンドシステム72に供給されてアナログ信号に変換され放音されるようになる。なお、各部はバス73を介して接続されている。
【0022】
次に、楽音生成装置50における音源部71の詳細構成を示すブロック図を図7に示す。
楽音生成装置50におけるCPU61は、ノートオンに応じて楽音を発生する際に、音源部の有する複数の発音チャンネルの中から、該ノートオンに応じた楽音生成に使用するチャンネル(割り当てチャンネル)を選択し、制御レジスタ80の割り当てチャンネルに対応する記憶領域に各種音源パラメータを設定し、同チャンネルの発音の開始指示を出す。発音開始指示と共に制御レジスタ80に供給される音源パラメータ情報は、波形メモリ読み出し速度(楽音ピッチに対応)、波形メモリ読み出し区間、エンベロープパラメータ、ミキサ部87に対する設定情報、およびエフェクト用係数等とされる。この内の波形メモリ読み出し区間パラメータは、読み出す圧縮波形データの開始アドレスおよびそのデータ長とされる。
【0023】
アドレス発生部82は、制御レジスタ80から供給されている各発音チャンネルのピッチ情報および読出開始アドレスに基づいて、ROM/RAM63における波形記憶部63aから読み出す圧縮波形データが格納されているフレームを読み出すためのフレームアドレス(FAD)を作成している。具体的には、ピッチ情報であるFナンバを波形データ生成タイミング(サンプリング周期)毎に累算して読み出しアドレスを算出し、その整数部と読出開始アドレスに基づいてフレームアドレス(FAD)を作成している。このフレームアドレスはフレーム読出部81に供給されて、フレームアドレスに対応するフレームが波形記憶部63aから読み出されて、フレームキャッシュ部83に1フレーム分キャッシュされる。この場合、図8に示すようにフレームは1アドレスに対応するデータ幅を単位とする固定長とされて、フレームの先頭アドレスは決まっていることからアドレス発生部82を簡単な構成とすることができる。そして、フレームキャッシュ部83に新たなフレームがキャッシュされた際には、フレームキャッシュ部83から副情報が読み出されて、副情報の内の伸長処理する際に必要な圧縮関連情報がデコーダ84に設定される。例えば、圧縮波形データがADPCMを利用して圧縮処理されている場合は、圧縮されたビット数情報がデコーダ84に設定され、LPCを利用して圧縮処理されている場合は、圧縮されたビット数、線形予測係数、量子化幅情報がデコーダ84に設定される。また、圧縮関連情報以外の副情報は、制御レジスタ80に送られて格納される。
【0024】
さらに、アドレス発生部82において算出された読出アドレスの整数部はフレームキャッシュ部83に供給され、その小数部は補間部85に補間情報として供給される。フレームキャッシュ部83から読出アドレスの整数部に応じて読み出された圧縮波形データはデコーダ84に供給される。この場合、補間部85における補間処理において当該サンプリング周期における読出アドレスの整数部の増加分に対応した数の圧縮波形データのサンプルをフレームキャッシュ部83から読み出すアドレスがアドレス発生部82において作成され、対応する圧縮波形データがデコーダ84に読み出される。デコーダ84においては、フレームキャッシュ部83から読み出された複数の圧縮波形データに、設定された圧縮関連情報とデコーダ84内のバッファに記憶されている伸長されたpサンプルの波形データとに基づいて順次に伸長処理を施して元の波形データを再生しつつ、同バッファに伸長された波形データを保存している。なお、このバッファは、順次伸長される波形データのうちの最新のpサンプル分を保存するよう制御されている。
【0025】
このように、アドレス発生部82においてはサンプリング周期ごとにFナンバを累算して波形データの読み出しアドレスを生成するような通常の波形メモリ音源のアドレスカウンタがそのまま使用することができる。また、圧縮波形データのビット数がフレーム毎に異なる場合でも、フレーム内の固定されたデータ領域から決められたビット数ずつ取り出せばよいので、圧縮波形データを取り出すデータ取出部の構成を極めて簡単にすることができる。例えば、図8に示されるフレームであれば、2ビットと4ビット、3ビットと6ビット、5ビットと10ビットの各組について取り出しのロジックをかなりの部分で共用することができるようになる。
【0026】
ここで、補間部85において2点補間が行われる場合は、デコーダ84内のバッファから、保持されているp個の伸長された波形データのうちの最新の2サンプル(そのnサンプル後の連続した2サンプルでもよい)が供給される。そこで、この2サンプルの圧縮波形データがフレームキャッシュ部83から読み出されて、デコーダ84において伸長されバッファに格納されている。そこで、この2サンプルの伸長された波形データ間を、アドレス発生部82から供給されている波形データ読出アドレスの小数部に基づいて補間処理することにより、補間された波形データを得るようにしている。また、補間部85において4点補間が行われる場合は、デコーダ84内のバッファから同最新の4サンプル(そのnサンプル後の連続した4サンプルでもよい)が供給され、この4サンプルの伸長された波形データと、アドレス発生部82から供給されている波形データ読出アドレスの小数部に基づいて補間処理することにより、補間された波形データを得るようにしている。
【0027】
補間部85から出力された補間された波形データは、音量EG部86において制御レジスタ80から供給されている音量エンベロープデータにしたがって音量制御される。このような処理は、発音チャンネル毎にその処理タイミングにおいて行われており、音量EG部86から出力されたエンベロープ付与された複数の発音チャンネルの波形データが、ミキサ部87においてミキシングされる。ミキサ部87から出力された複数の発音チャンネルがミキシングされた波形データは、DAC88においてアナログ信号に変換されてサウンドシステム72に向けて出力される。また、ミキサ部87において操作子の操作に応じた効果付与処理を行うようにしてもよい。
【0028】
以上の説明においては、1フレームごとに圧縮波形データのビット数を変えることのできる可変長となっていたが、必ずしもそうしなくてもよい。例えば、複数フレームごとにビット数を変えられるようにしてもよいし、あるいは、(フレームごとにはビット数を変えずに)選択される波形データごとにビット数を変えるようにしてもよい。
さらに、上記の説明においては記憶手段の1アドレスに対応するデータ幅は16ビットとされていたが、1データ幅は16ビットに限らず8ビット、24ビット等でもよい。
さらにまた、80ビットからなる1フレームの場合には、副情報に20ビット、圧縮波形データに60ビットを割り当てるようにしたが、1フレームの総ビット数はこれに限るものではなく、1アドレスに対応するデータ幅を単位とする固定長とされていればよく、副情報および圧縮波形データの割り当てもそれぞれ固定長とされていれば任意の割合で割り当てることができるものである。
さらにまた、上記の説明では圧縮波形データのビット数を、格納されるデータ領域のビット数における素数の倍数のビット数としたが、これに限るものではなく任意のビット数としてもよい。この場合においては、フレームにおける最後のサンプルの圧縮波形データを捨てるようにすればよい。
【0029】
【発明の効果】
本発明は以上説明したように、圧縮波形データを記憶するフレームのサイズを固定とし、そのフレーム内の固定された位置に副情報領域とデータ領域とを設け、それぞれ副情報と圧縮波形データのサンプルを記憶する。圧縮波形データのサンプルのビット数が異なる場合でもデータ領域のサイズが変わらないため、記憶する圧縮波形データのサンプルのビット数に応じて、1つのフレームに記憶される圧縮波形データのサンプル数が変化する。これにより、圧縮波形データのサンプルのビット数が異なる場合であっても、フレームの開始位置がメモリアドレス上で一定間隔ごとにきちんと並び、フレームの先頭アドレスを容易に得ることができる。さらに、各フレーム内において副情報と圧縮波形データのサンプルの記憶領域が決まっているので、各データを容易に取り出すことができる。従って、波形データを効率よく記憶することができると共に、伸長処理を行う回路を簡単化することができるようになる。
【図面の簡単な説明】
【図1】本発明の実施の形態にかかる波形記憶装置の概略構成を示すブロック図である。
【図2】本発明の実施の形態にかかる波形記憶装置にかかるADPCMを利用して圧縮処理を行う圧縮処理部の構成を示す図である。
【図3】本発明の実施の形態にかかるフレーム化された圧縮波形データを伸長するADPCMデコーダの構成例を示す図である。
【図4】本発明の実施の形態にかかる波形記憶装置にかかるLPCを利用して圧縮処理を行う圧縮処理部の構成を示す図である。
【図5】本発明の実施の形態にかかるフレーム化された圧縮波形データを伸長するLPCデコーダの構成例を示す図である。
【図6】本発明にかかるデータ構造の圧縮波形データがフレーム毎に記憶されている記憶手段を備える本発明の実施の形態にかかる楽音生成装置のブロック図である。
【図7】本発明の実施の形態の楽音生成装置にかかる音源部の詳細構成を示すブロック図である。
【図8】本発明の実施の形態にかかるデータ構造を示す図である。
【符号の説明】
1 圧縮処理部、2 フレーム化部、3 記憶手段、4 制御部、10 波形記憶部、11 減算器、12 量子化部、13 量子化幅判定部、14 フレーム化部、15 逆量子化部、16 加算器、17 ADPCM予測部、21 データ取出部、22 逆量子化部、23 量子化幅判定部、24 加算器、25 ADPCM予測部、31 減算器、32 量子化部、33 予測係数算出部、34フレーム判定部、35 フレーム化部、35 量子化部、36 逆量子化部、37 加算器、38 線形予測部、41 データ取出部、42 逆量子化部、43 加算器、44 線形予測部、50 楽音生成装置、61 CPU、62 フラッシュROM、63 ROM/RAM、63a 波形記憶部、64 タイマ、65 演奏操作子、66 MIDIインタフェース、67 パネルSW、68 表示器、69 表示器SW、70 ハードディスク、71 音源部、72 サウンドシステム、73 バス、80 制御レジスタ、81 フレーム読出部、82アドレス発生部、83 フレームキャッシュ部、84 デコーダ、85 補間部、86 音量EG部、87 ミキサ部、88 DAC
Claims (4)
- 異なるビット数のサンプルに圧縮された圧縮波形データをフレーム毎に記憶する記憶手段における圧縮データ構造であって、
前記フレームのデータサイズは固定されており、前記フレーム内のそれぞれ固定された位置に、当該フレームの圧縮波形データを伸長するための圧縮関連情報を含む副情報を記憶する副情報領域と、1サンプル当たりのビット数が一定とされた前記圧縮波形データを複数サンプル分記憶するデータ領域とが配置されていることを特徴とする圧縮データ構造。 - フレーム分割されていると共に圧縮されている圧縮波形データに基づいて楽音を生成する楽音生成装置であって、
フレーム毎に一定とされたビット数の圧縮波形データのサンプルを複数サンプル分記憶するデータ領域と、前記圧縮波形データを伸長するための圧縮関連情報を含む副情報を記憶する副情報領域とが、固定されたサイズで、かつ、固定された位置に配置されたフレームにフレーム化して記憶する記憶手段と、
各フレームに記憶されている圧縮波形データのサンプルのビット数を指定するビット数指定手段と、
前記記憶手段から前記フレームを順次読み出す読出部と、
該読出部により読み出された前記フレームの前記副情報領域から前記副情報を取り出すと共に、前記データ領域から前記ビット数指定手段により指定されたビット数の前記圧縮波形データのサンプルを取り出すデータ取出部と、
該データ取出部により取り出された前記副情報に含まれている前記圧縮関連情報を利用することにより、取り出された前記圧縮波形データのサンプルを順次伸長するデコード部と、
該デコード部により伸長された波形データのサンプルに基づいて楽音を生成する楽音生成部と、
を備えたことを特徴とする楽音生成装置。 - 前記圧縮関連情報はビット数情報であって、前記ビット数指定手段は、該ビット数情報に基づいて前記ビット数を指定するようにしたことを特徴とする請求項2記載の楽音生成装置。
- 波形データのサンプルを異なるビット数に圧縮処理した圧縮波形データをフレーム化して、記憶手段にフレーム毎に書き込む波形記憶装置であって、
前記圧縮波形データのサンプルのビット数を指定する指定手段と、
前記波形データを圧縮処理する際に、フレーム内において圧縮された1サンプル当たりの圧縮波形データのビット数が、前記指定手段により指定された一定のビット数になるように圧縮処理を行う圧縮処理部と、
前記圧縮波形データにおける圧縮関連情報を含む副情報と、前記圧縮処理部から出力される複数の前記圧縮波形データとを、それぞれ固定された副情報領域とデータ領域とにつめこむことにより、サイズが固定とされている前記フレームを構成するフレーム化部と、
該フレーム化部によりフレーム化された前記圧縮波形データを、フレーム毎に記憶手段に書き込む書込手段と、
を備えるようにしたことを特徴とする波形記憶装置。
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002288783A JP3826870B2 (ja) | 2002-10-01 | 2002-10-01 | 圧縮データ構造、波形生成装置および波形記憶装置 |
US10/676,205 US7378586B2 (en) | 2002-10-01 | 2003-09-30 | Compressed data structure and apparatus and method related thereto |
US11/289,881 US7256340B2 (en) | 2002-10-01 | 2005-11-29 | Compressed data structure and apparatus and method related thereto |
US11/810,872 US7692087B2 (en) | 2002-10-01 | 2007-06-06 | Compressed data structure and apparatus and method related thereto |
US11/860,484 US7521621B2 (en) | 2002-10-01 | 2007-09-24 | Compressed data structure and apparatus and method related thereto |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2002288783A JP3826870B2 (ja) | 2002-10-01 | 2002-10-01 | 圧縮データ構造、波形生成装置および波形記憶装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2004126127A true JP2004126127A (ja) | 2004-04-22 |
JP3826870B2 JP3826870B2 (ja) | 2006-09-27 |
Family
ID=32281178
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2002288783A Expired - Fee Related JP3826870B2 (ja) | 2002-10-01 | 2002-10-01 | 圧縮データ構造、波形生成装置および波形記憶装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP3826870B2 (ja) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013195646A (ja) * | 2012-03-19 | 2013-09-30 | Casio Comput Co Ltd | 符号化装置、符号化方法、及びプログラム |
JP2014021162A (ja) * | 2012-07-12 | 2014-02-03 | Casio Comput Co Ltd | 復号装置、復号方法、及びプログラム |
US9165563B2 (en) | 2012-03-19 | 2015-10-20 | Casio Computer Co., Ltd. | Coding device, coding method, decoding device, decoding method, and storage medium |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10210854B2 (en) | 2015-09-15 | 2019-02-19 | Casio Computer Co., Ltd. | Waveform data structure, waveform data storage device, waveform data storing method, waveform data extracting device, waveform data extracting method and electronic musical instrument |
JP6146686B2 (ja) * | 2015-09-15 | 2017-06-14 | カシオ計算機株式会社 | データ構造、データ格納装置、データ取り出し装置および電子楽器 |
-
2002
- 2002-10-01 JP JP2002288783A patent/JP3826870B2/ja not_active Expired - Fee Related
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2013195646A (ja) * | 2012-03-19 | 2013-09-30 | Casio Comput Co Ltd | 符号化装置、符号化方法、及びプログラム |
US9165563B2 (en) | 2012-03-19 | 2015-10-20 | Casio Computer Co., Ltd. | Coding device, coding method, decoding device, decoding method, and storage medium |
JP2014021162A (ja) * | 2012-07-12 | 2014-02-03 | Casio Comput Co Ltd | 復号装置、復号方法、及びプログラム |
Also Published As
Publication number | Publication date |
---|---|
JP3826870B2 (ja) | 2006-09-27 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7692087B2 (en) | Compressed data structure and apparatus and method related thereto | |
JP3826870B2 (ja) | 圧縮データ構造、波形生成装置および波形記憶装置 | |
US8706506B2 (en) | Waveform compressing apparatus, waveform decompressing apparatus, and method of producing compressed data | |
KR100851715B1 (ko) | 데이터의 압축 및 압축해제를 위한 방법, 장치 및 회로 | |
JP2734323B2 (ja) | 電子楽器の音源装置 | |
JP3912304B2 (ja) | 圧縮データ構造、波形生成装置および波形記憶装置 | |
JP3081530B2 (ja) | 電子楽器 | |
JP3933072B2 (ja) | 波形圧縮装置 | |
JP2674161B2 (ja) | 音源データ圧縮符号化方法 | |
JP4107085B2 (ja) | 波形データ圧縮方法 | |
JP4007194B2 (ja) | 音源装置 | |
JP3933073B2 (ja) | 波形伸長装置 | |
JP3591451B2 (ja) | データ処理装置およびデータ処理方法 | |
JP3567768B2 (ja) | ロングストリーム再生機能を有する再生装置 | |
JP3567766B2 (ja) | 圧縮波形サンプルを用いたピッチシフト再生装置 | |
JP3567767B2 (ja) | 圧縮波形サンプルを用いたループ再生装置 | |
JP3918755B2 (ja) | 楽音合成装置 | |
JP3884131B2 (ja) | データ圧縮装置およびデータ伸長装置 | |
JP2004294780A (ja) | 波形データ圧縮方法、楽音信号発生方法、楽音信号処理装置およびプログラム | |
JP3915725B2 (ja) | 楽音合成装置 | |
JPH02137893A (ja) | 連続音源データ再生装置 | |
JP2017058663A (ja) | 波形データ構造、波形データ格納装置、波形データ格納方法、波形データ取り出し装置、波形データ取り出し方法および電子楽器 | |
JPH08101690A (ja) | 波形読出装置 | |
JPH1091167A (ja) | 電子楽器 | |
JPH07219552A (ja) | 楽音波形発生装置及び楽音波形圧縮装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20040705 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20060601 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20060613 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20060626 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 3826870 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
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: 20090714 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100714 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20100714 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110714 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20110714 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20120714 Year of fee payment: 6 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20130714 Year of fee payment: 7 |
|
LAPS | Cancellation because of no payment of annual fees |