JPH11243598A - ディジタルフィルタ処理方法、ディジタルフィルタ装置、記録媒体、firフィルタ処理方法、および音像定位装置 - Google Patents
ディジタルフィルタ処理方法、ディジタルフィルタ装置、記録媒体、firフィルタ処理方法、および音像定位装置Info
- Publication number
- JPH11243598A JPH11243598A JP10312549A JP31254998A JPH11243598A JP H11243598 A JPH11243598 A JP H11243598A JP 10312549 A JP10312549 A JP 10312549A JP 31254998 A JP31254998 A JP 31254998A JP H11243598 A JPH11243598 A JP H11243598A
- Authority
- JP
- Japan
- Prior art keywords
- data
- samples
- digital
- filter
- digital data
- 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
Landscapes
- Stereophonic System (AREA)
- Reverberation, Karaoke And Other Acoustics (AREA)
- Electrophonic Musical Instruments (AREA)
Abstract
像定位効果を得る。 【解決手段】 CPU1は、座標命令Pに基づいて、H
RTF係数データメモリM2からHRTF係数データh
を読み出すとともに、フレーム単位で波形バッファメモ
リM1から波形データを読み出す。波形データとHRT
F係数データhは、バス2を介して単純FIR計算機3
にフレーム周期毎にバースト転送される。単純FIR計
算機3は間歇的に波形データを処理する。このため、1
フレームのサンプル数をf、FIRフィルタのタップ数
をkとすれば、1フレーム当たりf+k以上の波形デー
タが転送される。これにより、k個以上の波形データを
隣接するフレームで重複して転送することができるの
で、波形データを連続的に処理することができる。
Description
タ演算を複数サンプル毎に間歇的に行なうようにしたデ
ィジタルフィルタ処理方法及び装置に関し、また、この
フィルタ処理方法を用いて、音波形データに高品質な音
像定位効果を付与するのに好適な音像定位装置に関す
る。
めに、各種の音像定位装置が開発されている。例えば、
映画や音楽コンサートなどを想定したシステムとして、
5.1チャンネル方式が規格化されている。この方式に
あっては、視聴者の前方に3チャンネルのスピーカを配
置するとともに、その後方に2チャンネルのスピーカを
配置し、音源の移動に応じて各スピーカから発音される
音量および位相が調整される。
までの頭部伝達関数HRTF(HeadRelated Trausfer F
unction)を、音源の座標と対応付けて予め測定してお
き、音源の座標が変化するのに応じて、頭部伝達関数H
RTFの係数を動的に変化させる3次元サウンドポジシ
ョニングシステムが知られている。この3Dサウンドポ
ジショニングシステムにあっては、発音に用いるスピー
カやアンプが左右の耳に対応する2チャンネルで足りる
ので、システムを簡易に構成することができる。
ニングシステムの機能ブロック図である。なお、この例
では3つの音源を用いている。図において、SG1〜S
G3は音源であって、波形データW1〜W3を各々生成
する。また、F1〜F3はFIR(有限インパルス応
答)フィルタであって、その特性は仮想音源から左右の
耳までの頭部伝達関数HRTFを表している。ここで、
音源SG1〜SG3が仮想的に移動したとすれば、その
座標によって、FIRフィルタF1〜F3の係数は、動
的に変更されるようになっている。
RフィルタF1〜F3からの各データを加算する。これ
により、L,Rチャンネルの波形データを各々得ること
ができる。ところで、加算器A1,A2から出力される
波形データは、左右の耳に直接入力されることを前提と
した頭部伝達関数HRTFによって生成される。したが
って、ヘッドホンのように発音手段が左右の耳に近接し
ており、一方の発音手段からの発音が、片方の耳だけで
聞かれる場合は問題ないが、LチャンネルとRチャンネ
ルのスピーカを視聴者の前方に設置すると、片方のスピ
ーカの発音によって、両方の耳に音が入力されてしまい
クロストークが生じる。クロストーク処理部Cは、クロ
ストークを聴感上なくすように予め補正されたLチャン
ネル波形データDLとRチャンネル波形データDRを生
成するために用いられる。なお、加算器A1,A2まで
の処理は各音別の処理であり、一方、クロストーク処理
は、各音に共通した処理である。
ック図である。この装置が、例えばパーソナルコンピュ
ータ内に設けられているとすると、FIRフィルタF1
は、図示せぬホストドライバとPCIバス等で接続され
ており、積和算の演算を行うDSP100と、DSP1
00を制御するCPU200、CPU200に接続され
る作業メモリ210、HRTF係数データhを記憶した
HRTF係数データメモリ110から構成される。以上
の構成により、ホストドライバから座標命令Pがバスを
介してFIRフィルタF1に転送されると、CPU20
0は、作業メモリ210を用いて、フィルタの各タップ
係数に相当するHRTF係数データhの記憶領域を指示
するアドレスを演算し、当該アドレスをDSP100に
送る。この後、DSP100は、転送されたアドレスに
基づいて、HRTF係数データメモリ110からHRT
F係数データhを読み出し、こHRTF係数データhと
波形データW1との間で積和算の演算を行って、処理済
波形データW1’を生成する。
させる方向精度は、HRTF係数データhのデータ量に
依存する。このため、臨場感に溢れる発音を行うべく、
音像定位の精度を向上させると、FIRフィルタF1の
内部に大容量のHRTF係数データメモリ110を設け
る必要がある。
ドライバから転送される座標命令Pを解釈して、HRT
F係数データhを選択する必要があるため、CPU20
0をコントローラとして、FIRフィルタF1の内部に
設ける必要があった。
コンピュータの全体を制御するCPUや、大容量のメイ
ンメモリ等が設けられていることが多い。このため、従
来のシステムでは、ホストドライバ側の回路構成を有効
に活用することができず、FIRフィルタの回路規模が
大きくなってしまうといった問題があった。
で、その目的の1つは、コンピュータのバスに接続され
て動作するディジタルフィルタ処理方法及び装置であっ
て、その回路規模を増大させることなく、かつ効率的に
動作させることができるディジタルフィルタ処理方法及
び装置を提供しようとするものである。本発明の別の目
的は、間歇的なディジタルフィルタ処理を行なうことに
よって、回路規模を増大させることなく、かつ、高品質
な音像定位制御を行なうことができる音像定位装置を提
供しようとするものである。
に、本発明に係るディジタルフィルタ処理方法は、フィ
ルタされるべきディジタルデータの複数サンプルを、コ
ンピュータのバス介して、まとめて転送する第1ステッ
プと、転送されてきた複数サンプルのディジタルデータ
に対して、所定のサンプリング周期よりも速い処理レー
トで、所定のフィルタ関数に従うフィルタ処理を施す第
2ステップと、フィルタ処理されたディジタルデータを
バッファし、前記所定のサンプリング周期に従って出力
する第3ステップとを具備している。
数サンプルをコンピュータのバスを介してまとめて転送
するので、コンピュータの側では、所定のサンプリング
周期に同期してディジタルデータを送り出す必要がな
く、時間的に拘束されない。従って、コンピュータ及び
そのバスを他の用途にも効率的に使用することができ
る。また、第2ステップにおけるフィルタ処理は、所定
のサンプリング周期よりも速い処理レートで、所定のフ
ィルタ関数に従うフィルタ演算処理を行なうので、例え
ば複数f個のサンプル数のディジタルデータに対するフ
ィルタ処理を行なうために、通常必要とされるfサンプ
リング周期分の時間をかけることなく、素早くフィルタ
演算が行なわれる。かくして、第1ステップでは、複数
サンプルからなるディジタルデータのかたまり毎に、フ
ィルタされるべきディジタルデータの複数サンプルをコ
ンピュータのバスを介して間歇的に転送することがで
き、これに伴い、第2ステップでは、複数サンプルから
なるディジタルデータの各かたまり毎に、間歇的にフィ
ルタ演算処理を行なうことができる。フィルタ演算処理
済みのデータは、第3ステップで次々にバッファ記憶さ
れ、所定のサンプリング周期に従って出力することで、
所定のサンプリング周期に従う通常のフィルタ演算処理
済みデータを得ることができる。
を行なうが故に、1チャンネルについてのフィルタ演算
のみならず、複数チャンネルについてのフィルタ演算を
それぞれ空き時間を利用して行なうことができ、回路規
模を大きくすることなく、多くのチャンネルについての
それぞれ独立のフィルタ演算処理を行なうことができ
る。
き一連のディジタルデータを複数の区間に分割し、各区
間毎の複数サンプル(例えばf個)からなるディジタル
データブロックを、間歇的に転送するものであり、1区
間分のディジタルデータを転送するときにそれに隣接す
る区間に属するディジタルデータの一部(例えばn個の
サンプル)を併せて転送することで、1区間分のサンプ
ル数(f個)よりも多いサンプル数(f+n個)からな
る時系列的なディジタルデータを転送する。これによ
り、前記第2ステップでは、1区間分のサンプル数より
も多いサンプル数からなる時系列的なディジタルデータ
を使用して、前記所定のフィルタ関数に従うフィルタ処
理を施すことで、少なくとも1区間分のサンプル数(f
個)に相当するフィルタ処理済みデータを得る。こうし
て、間歇的なフィルタ演算処理を実行ならしめることが
できる。すなわち、通常、1組のフィルタ係数の数がk
個であるとすると、k−1個の単位遅延を含む、いわゆ
るk−1次のフィルタ演算を行なうこととなり、k個分
の係数の積和により、1サンプル分のフィルタ処理済み
データを得る。よって、fサンプル分のフィルタ処理済
みデータを得るためには、フィルタされるべき時系列的
なディジタルデータは少なくともf+k個のサンプル分
入力されるべきである。しかして、上記で、余分に転送
される隣接区間のデータのサンプル数nを、n≧kとす
ることで、少なくとも1区間分のサンプル数(f個)に
相当するフィルタ処理済みデータを得ることができる。
余分に転送された隣接区間のデータのサンプル数nは、
次に当該区間についてのフィルタ演算処理を行なうとき
にも使用されるものである。そのために、第2ステップ
の段階でこれを適宜保存しておいてもよいが、そうせず
に、次に当該区間についての第1ステップでの転送処理
に際して、再送するようにするとよい。第2ステップの
フィルタ演算処理段階でこれを保存しておくことは、そ
の分のレジスタを必要とするので、回路規模を幾分大き
くしてしまうが、第1ステップでそのような再送処理を
行なうことは、コンピュータの処理として簡単に余分の
レジスタを必要とすることなく行なえる、という利点が
ある。
る区間に属するディジタルデータの一部として、更に、
補間用の所定サンプル数(例えばj個)からなるディジ
タルデータが含まれていてよい。これにより、前記第2
ステップでは、1区間分のサンプル数と補間用の所定サ
ンプル数とを合計したサンプル数(例えばf+j個)か
らなるフィルタ処理済みデータを得る。そして、更に、
補間用の所定サンプル数(j個)に相当するフィルタ処
理済みデータを次の区間のためにバッファする第4ステ
ップと、前の区間においてバッファされた補間用の所定
サンプル数(j個)に相当するフィルタ処理済みデータ
と、今回の区間についての1区間分のサンプル数(f
個)に相当するフィルタ処理済みデータとを用いて所定
の補間処理を行う第5ステップとを具備する。
いて、前の区間で使用したフィルタ係数に従うフィルタ
演算結果と、今回の区間で使用したフィルタ係数に従う
フィルタ演算結果とが補間され、補間結果としてj個の
データが得られる。このj個の補間済みデータは、他の
k−j個のフィルタ済みデータと共に、合計kサンプル
分のフィルタ済み及び補間済みデータとして、第3ステ
ップを介して、出力される。これにより、前回の区間に
ついてのフィルタ演算で使用した係数組と今回の区間に
ついてのフィルタ演算で使用した係数組との内容が異な
っていても(つまり、フィルタ係数が時変動しても)、
両区間のフィルタ演算処理済みデータを補間によって滑
らかにつなげることができる。
フィルタ処理において使用される係数組をも前記コンピ
ュータのバスを介して転送するようにするとよい。前記
第2ステップでは、転送されてきた前記係数組を使用し
て前記フィルタ処理を施せばよい。これにより、第2ス
テップの側、つまりフィルタ演算用のプロセッサ(例え
ばDSP)の側において、複数組のフィルタ係数を予め
記憶しているメモリを準備しておく必要がなく、その回
路規模を大きくすることがない。例えば、フィルタ係数
を時変動させる場合は、大容量の係数メモリが必要であ
るが、必要な係数組のみをバスを介して転送する構成と
すれば、そのような大容量のメモリをフィルタ演算用の
プロセッサの側に設ける必要がなく、ホストコンピュー
タ側に設けておけばよいこととなる。また、フィルタ係
数を時変動させない場合でも、音像定位制御のように、
音像定位の座標位置を解析し、解析した座標位置に応じ
たフィルタ係数組を選択的に読み出すような処理を行な
う場合は、係数メモリをホストコンピュータ側に設けて
おけば、解析のための複雑なホストコンピュータ側で行
なうことが容易にでき、その点でも、フィルタ演算用の
プロセッサの側の構成を簡素化することができる。
処理のために使用する係数組は、フィルタ処理用のプロ
セッサの側においてメモリ等に記憶しておき、バスを介
して転送しなくてもよい場合もありうる。例えば、フィ
ルタ係数が時変動しない場合は、そのような係数は最低
1組記憶されていればよいのでそれほどのメモリ容量は
要求されないかもしれない。あるいは、音像定位のため
の複雑な座標解析が不要の場合は、そのような解析処理
が不要である。これらの場合、フィルタ演算処理のため
に使用する係数組を、フィルタ処理用のプロセッサの側
においてメモリ等に予め記憶しておくことができる。
コンピュータの汎用プロセッサ側のプログラムによって
実行し、前記第2及び第3ステップは前記バスに接続さ
れたフィルタ処理用プロセッサ側のプログラムによって
実行する。しかして、本発明は、高能力のホストコンピ
ュータをフィルタ処理のために無駄に拘束することがな
いので、その有効活用を図ることができると共に、フィ
ルタ処理用プロセッサの回路規模やソフトウェア規模を
大型化することなく、簡素化し、効率的にディジタルフ
ィルタ処理を行なわせることができる。
ュータのバスに接続されるディジタルフィルタ装置は、
前記バスを介して、所定の1フレーム期間における任意
の1又は複数の時点で、まとまった所定サンプル数のデ
ィジタルデータの転送を受けるインターフェース部と、
前記インターフェース部を介して受けたディジタルデー
タに対して所定のフィルタ演算処理を行なうフィルタ演
算部と、前記フィルタ演算部の出力をバッファし出力す
る出力部とを具備する。
は、所定のサンプリング周期とは非同期で、若しくは高
速で、フィルタ演算処理を行なう。一方、前記出力部
は、バッファしたフィルタ処理済みデータを所定のサン
プリング周期に同期して出力する。また、前記インター
フェース部では、前記1フレーム期間内の異なる時点
で、複数チャンネルのうちの個々のチャンネルについて
の所定サンプル数のディジタルデータの転送をそれぞれ
受け、前記フィルタ演算部では、各チャンネル毎のフィ
ルタ演算処理を前記1フレーム期間内で高速で行なう。
その場合、前記出力部では、各チャンネル毎のフィルタ
処理済みデータを同一サンプル時点毎に累算しつつバッ
ファする。更に、前記インターフェース部では、前記フ
ィルタ演算部において使用されるフィルタ係数組をも前
記コンピュータのバスを介して受取り、前記フィルタ演
算部では、受け取った前記フィルタ係数組を使用して前
記所定のフィルタ演算処理を行なう。
方法及び/又は装置は、ディジタル楽音信号の処理は勿
論のこと、汎ゆる分野で応用することができる。すなわ
ち、コンピュータに接続して効率的なフィルタ処理を行
なう方法及び/または装置として最適であり、コンピュ
ータの時間利用効率及びフィルタプロセッサ側の回路規
模の縮小の両面で、優れた効果を発揮する。なお、本発
明で、コンピュータとは、必ずしも、パーソナルコンピ
ュータや大型のホストコンピュータなどスタンドアロン
タイプのコンピュータ装置・機器・設備のみを示すので
はなく、各種応用装置・機器・設備の中に組み込まれた
CPU等を主要構成要素とするマイクロコンピュータデ
バイスやチップをも包含する、広義の意味で使用する。
例えば、電子ゲーム装置や特定の応用装置・機器あるい
は或る種のマルチメディア機器などの中にマイクロコン
ピュータデバイスが組み込まれていて、そのバスにフィ
ルタ処理用のプロセッサ(例えばDSP)が接続され
る、といったような形態も、本発明の範囲に含まれる。
ことで、回路規模を増大させることなく、高品質な音像
定位効果を楽音信号に付与することができるようにな
る。すなわち、本発明に係る音像定位装置は、波形デー
タをfサンプル毎のフレームに分割し、フレーム単位で
間歇的に音像の定位効果を前記波形データに付与する音
像定位装置であって、発音の位置情報に対応する係数デ
ータを予め格納した第1の記憶部と、前記波形データを
記憶した第2の記憶部と、前記係数データと前記波形デ
ータに基づいて、出力データを生成するkタップのFI
Rフィルタ演算部と、前記第1の記憶部、前記第2の記
憶部および前記FIRフィルタ演算部と接続され、バー
スト転送に対応するバスと、現在のフレームの前記位置
情報に対応するk個の前記係数データを前記第1の記憶
部から読み出し、隣接フレーム間でk個以上の前記波形
データが重なるように前記第2記憶部からf+k個以上
の前記波型データをフレーム単位毎に読み出し、読み出
された前記係数データと前記波形データを、前記バスを
介して前記FIRフィルタ演算部にバースト転送するよ
うに制御する制御部とを備えたことを特徴とする。ここ
で、前記制御部は、音原の移動が聴感上検知できないよ
うな短い周期で前記バースト転送を行うように制御して
よい。また、前記位置情報は、前記フレームの中央付近
のタイミングにおける発音の位置を示すものであってよ
い。
することができるのみならず、装置発明として構成し、
実施することもできる。また、この発明は、コンピュー
タプログラムまたはDSP等のためのマイクロプログラ
ムの形態で実施することができるし、そのようなコンピ
ュータプログラムまたはマイクロプログラムを記憶した
記録媒体の形態で実施することもできる。
置の一実施形態である3次元サウンドポジショニングシ
ステムのブロック図である。1はCPUであって、装置
全体を制御する。また、MはCPU1に接続されている
当該システムのメインメモリであって、例えば、EDO
DRAM(Extended Data Out DRAM)等によって構成
される。また、メインメモリMのある記憶領域は、波形
バッファメモリM1やHRTF係数データメモリM2と
して機能する。また、メインメモリMの他の記憶領域に
は、ドライバプログラムやアプリケーションプログラム
が格納されており、これらのデータおよびプログラム
は、コンピュータシステムの起動時や特定の命令入力時
にハードディスク等の2次記憶装置から読み出され、メ
インメモリMに格納されようになっている。
の音源によって生成された各波形データWが記憶され
る。この波形データWのサンプリングレートは、例えば
48KHzである。HRTF係数データメモリM2に
は、音源の座標を指定する座標命令Pに対応づけられて
HRTF係数データhが格納されており、CPU1の読
出命令に従って、座標命令Pに対応するHRTF係数デ
ータhが読み出されるようになっている。
TF係数データメモリM2とは、当該システムのメイン
メモリMの一部として構成される。したがって、このシ
ステムでは、波形データWやHRTF係数データhを記
憶するために特別なメモリをディジタルフィルタ計算機
3の側に予め設けておく必要がない。
す。この例にあっては、連続する波形データWをfサン
プルのフレームに分割し、フレーム単位で効果付与処理
を行なっている。なお、サンプリングレートを48KH
zとし、1フレームを256サンプルで構成するとすれ
ば、1フレーム期間は、図示するように略5.3msと
なる。
であり、例えば、PCIバスを用いるのが好適である。
PCIバスは、データ/アドレスとも32ビット幅(あ
るいは64ビット幅)の転送となっている。また、PC
Iバスの動作クロックは33MHzであり、理論上の最
高データ転送速度は132Mバイト/秒(あるいは26
4Mバイト/秒)である。さらに、サポートしているバ
スマスタ機能では、汎用DMAコントローラを使用しな
い高速なDMAやCPUにかかる負荷の軽減を実現する
ことができる。
ートされていないバースト転送モードを備えている。バ
ースト転送モードとは、1回のアドレス指定で複数のデ
ータをまとめて連続的に転送するモードであり、このバ
ースト転送モードを利用することにより、後述のバース
ト転送モードを備えたDRAM(Dynamic RAM)からの
連続データの読み出しを高速化することができる。さら
に、PCIバスには、バスに接続するためのインタフェ
ースを安価に製造できるという利点もある。以上がPC
Iバスを用いる理由であり、このような特性を有するの
であれば、PCIバス以外の拡張バスを用いてもよい。
フィルタ計算機であって、積和算の高速演算を行うもの
で、例えば、単純FIRフィルタ演算を行う。このディ
ジタルフィルタ計算機3は、DSP(Digital Signal P
rocessor)によって構成される。ディジタルフィルタ計
算機3の機能ブロックを図3に示す。図3に示されたデ
ィジタルフィルタ計算機3において、バスインターフェ
ース301を介してバス2との間でデータのやりとりを
行なう。ウェーブ入力バッファ302は、バス2を介し
てバースト転送されてくるデータのうち、一転送単位分
の波形サンプルデータ(例えば、f+k+j個のサンプ
ル数からなる)をバッファ記憶する。係数入力バッファ
303は、バス2を介してバースト転送されてくるデー
タのうち、一転送単位分のフィルタ係数データ(例え
ば、k個の係数データ)をバッファ記憶する。制御部3
04は。ディジタルフィルタ計算機3における各部間の
データのやりとりの制御及びその他の制御を行うなもの
で、ウェーブ入力バッファ302及び係数入力バッファ
303にバッファ記憶したデータをフィルタ演算部30
5に供給し、該供給した波形サンプルデータ及び係数デ
ータに基づき所定のアルゴリズムに従うフィルタ演算を
該フィルタ演算部305で高速で実行させる。
フィルタ演算アルゴリズムの典型例を示す機能ブロック
図であり、単純FIR(有限インパルス応答)フィルタ
演算を行う。この図において、311〜31k-1は、Dフ
リップフロップであり、サンプルクロックに同期して、
動作するようになっている。また、320〜32k-1は乗
算器であって、そこにはHRTF係数データh0〜hk-1
がセットされるようになっており、波形データWとの間
で乗算が行われる。33は加算器であって、乗算器32
0〜32k-1の各出力データを加算する。以上の構成によ
り、タップ数kのFIRフィルタが構成される。このF
IRフィルタを左右それぞれに対応したHRTF係数デ
ータに基づき2系統設けることによって、波形データW
に音響効果処理を施される。これにより、あたかも音源
が移動したような効果を波形データWに付与して、立体
的な臨場感を演出することが可能となる。
り、加算器33の出力データに対して、クロスフェード
処理を施す。クロスフェード処理については後述する。
クロスフェード処理部34から出力されるフィルタ処理
済み(及びクロスフェード処理済み)のデータは、図3
に示されるダブルバッファからなる出力バッファ306
及び307の一方に累算的に取り込まれる。すなわち、
出力バッファ306及び307は、それぞれ1フレーム
分の波形データのサンプル数fに対応する数のアドレス
場所を有しており、各サンプル毎のフィルタ出力データ
を各アドレス場所に記憶する。ここで、ディジタルフィ
ルタ計算機3におけるフィルタ演算部305において
は、複数チャンネルについての1フレーム分のフィルタ
演算をそれぞれ独立にかつ高速で行なうようになってお
り、各チャンネルについての各サンプル毎のフィルタ出
力データを、ダブルバッファからなる出力バッファ30
6及び307の一方における、対応する各アドレス場所
に足し込む(累算する)ようになっている。こうして、
全てのチャンネルについての1フレーム分の高速フィル
タ演算が終了したときには、書き込みモード中である出
力バッファ306及び307の一方における各アドレス
場所には、fサンプル数分の各チャンネルのフィルタ演
算結果を、同じサンプル時間同士で累算したものが蓄積
されたことになる。ダブルバッファからなる出力バッフ
ァ306及び307は、書き込みモードと読出モードが
1フレーム毎に交互に切り替わるように制御される。す
なわち、前回フレームの期間で書き込みモードであった
出力バッファ306及び307の一方は、今回フレーム
の期間では、読出モードとなり、fサンプル数分の各チ
ャンネルのフィルタ演算結果の累算データを、所定のサ
ンプリング周波数(例えば48kHz)に従って順次読
み出す。なお、左右2系統のフィルタ処理出力を生ずる
ために、ダブルバッファからなる出力バッファ306及
び307とは別に、もう1系統のダブルバッファからな
る出力バッファ308及び309が設けられる。フィル
タ演算部305は、左右2系統のフィルタ処理で共用す
るようにしてもよいし、別系統で設けてもよい。
で異なるフィルタ係数組を使用するチャンネル(いわば
フィルタ処理チャンネル)に相当する。例えば、3次元
サウンドポジショニングシステムで、3音源からの波形
データ(3チャンネルの波形データ)をそれぞれに対応
する頭部伝達関数HRTFでフィルタ処理する場合、左
系統用に3チャンネル、右系統用に3チャンネル、のフ
ィルタ処理がそれぞれのHRTF係数データを用いて行
なわれる。なお、各バッファ302,303,306〜
309は、それぞれ1チャンネルについての1フレーム
分のデータをバッファ記憶するのに必要なアドレス数だ
けあればよいので、全体として、極めて少容量で済む。
すなわち、複数チャンネル分のフィルタ処理を行なう場
合であっても、ディジタルフィルタ計算機3において
は、1フレーム時間内において各チャンネル毎に別々に
高速で(つまり出力サンプリング周波数よりも高速で)
フィルタ演算処理を行なうので、各入力バッファ30
2,303は、そのときの1フレーム分のフィルタ演算
に必要な1チャンネル分のデータをバッファ記憶する容
量を有しているだけでよい。また、各出力バッファ30
6〜309はそれぞれ1フレーム分のサンプル数(f
個)のデータをバッファ記憶する容量を有しているだけ
でよい。
ィルタ計算機3に転送されるデータは、バス2を介して
間歇的に伝送される。図5(a)は、1音の処理に対応
するバースト転送の様子を示したものである。図に示す
ように1回のバースト転送において、ディジタルフィル
タ計算機3のタップ数kだけのHRTF係数データh
と、kよりも多い所定サンプル数(f+k+j個)の波
形データWとがバス2を介してディジタルフィルタ計算
機3へ転送される。
スト転送によってデータを転送しているので、音響効果
付与のためにバス2を常時占有することはない。また、
図5(a)に示す例は、1つの音源に対応する波形デー
タWと1系統のHRTF係数データh0〜hk-1とを転送
するものであったが、前述のように実際には1つの音源
に対して、波形データW(共通)と左右の耳に対応した
2系統のHRTF係数データが転送される。さらに、バ
ス2はPCIバスのように高速でデータ転送が可能であ
るから、複数の音に対して効果付与処理を行う場合に
は、転送データを時分割多重して転送することができ
る。これにより、複数の音源からの音に対して、音像定
位処理を行うことが可能となる。
は、頭部伝達関数HRTFによって定まるものであるか
ら、音源の移動に伴って連続的に変化する。したがっ
て、HRTF係数データh0〜hk-1の更新は、本来、1
サンプル周期毎に行うことが望ましい。しかし、1サン
プル周期毎の更新を行うには、短時間でHRTF係数デ
ータh0〜hk-1をHRTF係数データメモリM2から読
み出す必要があり、さらに読み出したデータをバス2を
介して転送する必要がある。この場合には、バス2を長
時間占有することになるので、HRTF係数データhの
転送処理と他の処理との間でバス2の奪い合いが生じる
ことが多い。一方、人の聴覚には、短い時間間隔で音源
が不連続に移動したとしても、それを検知することがで
きず、音源が連続して移動したように感じられるといっ
た特性がある。換言すれば、人の耳は、ある程度の時間
をかけて音源が不連続に移動した場合に、不連続である
ことを始めて検知する。
処理を一定の間隔(フレーム周期)に区切り、一定周期
内では頭部伝達関数HRTFに変化がないものとして取
り扱うことにより、データ転送に必要な係数の個数を低
減し、バス2の占有時間を減らしている。すなわち、頭
部伝達関数HRTFの更新を、聴感上の変化が認められ
ない程度の時間間隔で行っている。この時間間隔として
は、略10ms以下が望ましい。
算機3におけるHRTF係数データh0〜hk-1の更新周
期を、バースト転送周期(すなわち、フレーム周期)と
一致させ、10ms以下に設定している。例えば、サン
プリング周波数を48KHz、1フレームのサンプル数
を256サンプルに設定すると、更新周期は略5.3m
sとなる。なお、音源が高速で移動する場合には、頭部
伝達関数HRTFの変化が大きくなるため、音源の移動
が不連続となるように人の耳で感じられる場合も起こり
得る。このため、本実施形態にあっては、後述するクロ
スフェード処理を行って、人の耳で音源が連続的に移動
するように感じられるようにしている。
作を説明する。まず、バースト転送処理について説明す
ると、図5(b)に示すとおり、n番目のフレームにお
いて、ドライバ側からバス2を介して伝送する転送デー
タ群Fnは次のようになる。 Fn=(hn,0、hn,1、…hn,k-1、df(n-1)、df(n-
1)+1、…dfn-1+k+j) ただし、fは1フレーム当たりのサンプル数、また、j
はオーバラップ数である。
k個のHTRF係数データhn,0〜hn,k-1と、f+k+
j個の波形データdf(n-1)〜dfn-1+k+jとから構成され
ている。ここで、転送する波形データ数を、1フレーム
のサンプル数fより多いf+k+j個としたのは、以下
の理由による。まず、FIRフィルタ処理にあっては、
フィルタのタップ数kだけの波形データWとHRTF係
数データhとの積和算によって、あるサンプルの出力デ
ータを生成する。したがって、1フレーム期間(fサン
プル)分の出力データを生成するためには、f+k個の
波形データWが必要となり、さらに、クロスフェード処
理のためのオーバーラップ処理のためにj個の波形デー
タが必要となるので、転送する波形データ数は、f+k
+j個となるのである。すなわち、この例にあっては、
1フレーム期間のサンプル数f以上の波形データWを再
送することによって、単純FIRフィルタ計算機3にお
いて、間歇的な処理を可能としている。
タ処理例を説明する。演算部305では、あるフレーム
において、1フレームのサンプル数fとオーバーラップ
処理のためのサンプル数jを加えたf+j個を処理す
る。ここで、n番目のフレームにおける、図に示す加算
器の各出力データを要素とするベクトルをXnとする
と、ベクトルXnは以下の式で表される。 Xn=(Hn・D[f(n-1):f(n-1)+k-1]、Hn・D[f(n-1)+1:f(n-1)+k]、… Hn・D[fn+j:fn-1+k+j]) =(xn,0、xn,1、…xn,f+j-1) ただし、「・」はベクトルの内積を表すものとする。
について定義する。n番目のフレームにおける、タップ
数kのHRTF係数データh0〜hk-1を、(hn,0、h
n,1、hn,2、…hn,k-1)で表すものとし、各係数デー
タを要素とする係数ベクトルをHnで表すものとする
と、係数ベクトルHnは次の式で与えられるものとす
る。 Hn=(hn,0、hn,1、hn,2、…hn,k-1)
素とするベクトルDを次式で定義するものとする。ただ
し、d0、d1、d2、…dmは、各サンプルにおける波形
データである。 D=(d0、d1、d2、…dm)
とするベクトルをD[a]で表すものとし、a番目からb
番目までの波形データda〜dbを要素とするベクトルを
D[a:b]で表すものとすると、D[a]とD[a:b]は、以下
に示す式で与えられるものとする。 D[a]=da D[a:b]=(da、da+1、…db)
的に考察する。まず、図5(b)に示す転送データが、
hn,0から順に単純FIRフィルタ3に供給されると、
HRTF係数データhn,0、hn,1、…hn,k-1が、図4
に示す乗算器320〜32k-1に順にセットされる。この
後、k個の波形データdf(n-1)〜df(n-1)+k-1とHRT
F係数データhn,0、hn,1、…hn,k-1との間で、内積
が演算され出力データxn,0が生成される。したがっ
て、xn,0は、次式で与えられる。 xn,0=hn,0 df(n-1)+hn,1 df(n-1)+1+…+hn,k-
1df(n-1)+k-1
形データを1サンプルずらして、演算が行われ、次式で
示される出力データxn,1が生成される。 xn,1=hn,0 df(n-1)+1+hn,1 df(n-1)+2+…+hn,
k-1df(n-1)+k 以下、同様に波形データを順にずらしながら演算するこ
とによって、加算器33から出力データxn,0〜xn,f+j
-1が出力される。
スフェード処理部34で行われるクロスフェード処理に
ついて説明する。図6は、クロスフェード処理を説明す
るための概念図である。上述した第nフレームの出力デ
ータxn,0〜xn,f+j-1と、第n+1フレームの出力デー
タxn+1,0〜xn+1,f+j-1とは、図6に示すように波形デ
ータdf(n-1)〜df(n+1)-1+k+jに基づいて生成される。
この図から判るように、波形データdfn〜dfn-1+k+j
は、第nフレームと第n+1フレームに重複して使用さ
れる。この結果、j個の出力データxn,f〜xn,f+j-1と
出力データxn+1,0〜xn+1,j-1とが、異なるHRTF係
数データに従ってオーバーラップして生成される。
力データxn+1,0〜xn+1,j-1とに基づいて、第nフレー
ムと第n+1フレームとの間のクロスフェード処理が行
われる。ここで、第n+1フレームにおけるクロスフェ
ード処理部34の出力データを要素とするベクトルをY
nとすると、Yn+1は、以下の式で与えられる。 Yn+1=((1−aβ)Xn[f+a-1]+aβXn+1[a-
1]、Xn+1[j:f]) ただし、β=1/jである。また、aはオバーラップす
るデータの順番を表しており、j以下の自然数である。
ば、第n+1フレームのオーバーラップ部分に対応する
出力データyn+1,0〜出力データyn+1,j-1は、図6に示
すように以下の式で表すことができる。 第1番目(a=1);yn+1,0=0.8xn,256+0.2xn+1,0 第2番目(a=2);yn+1,1=0.6xn,257+0.4xn+1,1 第3番目(a=3);yn+1,2=0.4xn,258+0.6xn+1,2 第4番目(a=4);yn+1,4=0.2xn,259+0.8xn+1,3
番が進むにつれて、第nフレームの出力データの影響が
少なくなり、逆に、第n+1フレームの出力データの影
響が大きくなる。これにより、音源が高速に移動した場
合であっても、聴感上、音源が自然に移動したように感
じられるようにすることができる。なお、クロスフェー
ド処理のためにオーバーラップして生成されるデータの
うち、先行フレームのオーバーラップ分データ(例えば
第nフレームのj個の前記フィルタ出力データxn,f〜
xn,f+j-1)は、次フレーム期間において行なうクロス
フェード演算で利用できるようにするため、適宜バッフ
ァ記憶しておくものとする。そのためのバッファ記憶領
域を、クロスフェード処理部34の内部に有していても
よいし、(「チャンネル数×j」のバッファ領域があれ
ばよい)、あるいは、バス2を介してメインメモリMに
一旦転送してメインメモリM内でバッファ記憶してお
き、次フレーム期間で他のデータと共にフィルタ計算機
3の側へバースト転送するようにしてもよい。すなわ
ち、第nフレームのときに求めたクロスフェード処理用
(つまりオーバーラップ分)のフィルタ出力データx
n,f〜xn,f+j-1は、次の第n+1フレームまで適切に
バッファ記憶され、該第n+1フレームの先頭のj個の
フィルタ出力データxn+1,0〜xn+1,j-1とクロスフェ
ード合成される。このクロスフェード結果が第n+1フ
レームの先頭のj個分のフィルタ処理済み(及びクロス
フェード処理済み)出力データとなり、それに後続する
f−j個のフィルタ出力データxn+1,j〜xn+1,f-1と共
に、当該第n+1フレームについての合計f個のフィル
タ処理済み(及びクロスフェード処理済み)出力データ
として、出力バッファ306(又は307)に送られ、
f個の各アドレス場所に足し込まれる。
ば、波形データWを所定のサンプル数に分割したフレー
ム単位で、フィルタ処理を行うために、フィルタのタッ
プ数K以上の波形データを次のフレームで再送するよう
にしたので、バス2を介してディジタルフィルタ計算機
3にデータをバースト転送するにも拘わらず、連続した
波形データに対してフィルタ処理を行うことができる。
F係数データhを記憶保持しておき、これを小分けして
必要に応じて各フレーム毎にバス2を介して転送するよ
うにしたので、ディジタルフィルタ計算機3側におい
て、すべての波形データWと時変動するすべてのHRT
F係数データhを保持するメモリを予め具備しておく必
要がない。さらに、ディジタルフィルタ計算機3側で
は、フィルタ処理に伴う、積和算を所定のタイミングで
実行する通常のフィルタ処理だけを行なえばよいので、
音像定位制御用の座標命令を解釈して実行する制御手段
を特別に設ける必要がない。このため、例えば、ディジ
タルフィルタ計算機3を音源装置として、コンピュータ
の拡張用ボードに収納する場合には、この音源装置つま
り拡張用ボードの構成を簡素化し、製造コストを大幅に
低減することができる。
データWとHRTF係数データhをフレーム周期毎にバ
ースト転送し、同一フレーム内は、同一のHRTF係数
データhを用いてFIRフィルタ処理を行った。この場
合、HRTF係数データhはバースト転送周期で更新さ
れることになるので、理論上、音源はバースト転送周期
で不連続に移動したことになる。しかし、人の耳では、
音源がある程度の速度で不連続に移動しても、連続して
移動したように検知される。したがって、上述したよう
にバースト転送周期(フレーム周期)を、音源が通常の
速度で移動した場合に、連続して移動したように感じら
れるように短い周期に設定することにより、違和感のな
い音像定位を得ることができる。
ースト転送において、1フレーム分の波形データ(f
個)およびFIRフィルタ処理のための再送用の波形デ
ータ(k個)に加えて、オバーラップ処理用の波形デー
タ(j個)をバースト転送するようにしたので、j個の
波形データについては、隣接するフレームにおいて異な
るHRTF係数データを用いたFIRフィルタ処理が行
われる。そして、フィルタ処理済のデータにクロスフェ
ードを施すようにしたので、人の耳では音源がより連続
して移動したように感じられる。これにより、音源が高
速で移動した場合であっても、連続して移動したように
感じさせることができる。
が、本発明は上述した実施形態に限定されるものではな
く、以下に述べる各種の変形が可能である。上述した実
施形態では、HRTF係数データhをフレーム単位でバ
ースト転送するようにして、単純FIRフィルタ計算機
3におけるHRTF係数データhの更新を、フレーム周
期で行うようにした。この場合、あるフレームにおける
HRTF係数データhは、当該フレーム期間中のいずれ
かのタイミングで生成されたものであれば、当該フレー
ムの代表値として取り扱うことができる。
の座標Pに基づいて生成されるものであるから、正確に
は各サンプルタイミング毎に変化している。ここで、フ
レーム期間の中央付近のタイミングで、当該フレームを
代表するHRTF係数データhを生成すると、誤差を最
小にすることができ、音源が高速で移動した場合にも、
聴感上、音源の移動がより連続的であると感じさせるこ
とができる。したがって、HRTF係数データhは、フ
レーム期間中央付近における音源の座標Pに基づいて生
成されたものであることが望ましい。
形データWに対して音像定位の処理を間歇的に行なうた
めに、FIRフィルタのタップ数(つまり1組の係数の
数)kに相当するサンプル数の波形データを再送するよ
うにしているが、本発明はこれに限定されるものではな
い。すなわち、本発明は、一般的なディジタルフィルタ
における新規な間歇的フィルタ処理方式を提案するもの
である。従って、ディジタルフィルタの使用目的や、処
理対象とするディジタルデータの種類を問わず、本発明
を適用することができる。また、この場合、フィルタ係
数を時変動させずに固定してもよい。そのような場合
は、フィルタ係数をバス2を介してバースト転送せず
に、ディジタル計算機3の側で予め記憶保持させておく
ようにしてもよい。また、FIRフィルタに限らず、I
IR(無限インパルス応答)フィルタにおいても本発明
を適用してもよい。
ムに分割し、この入力データをkタップの(つまり、k
個の係数を使用する)フィルタに転送して、間歇的にF
IRフィルタ処理を行う場合に、一のフレーム期間中に
入力データをf+nサンプルだけフィルタに転送し、次
のフレーム期間中に一のフレームにおいて転送したf+
nサンプルの入力データのうち、後半のnサンプルの入
力データが重なるようにn+f個の入力データをフィル
タに転送し、n≧kとなるように設定すればよい。この
場合には、フィルタへ、そのタップ数k以上の入力デー
タ(n個)が再送されることになるので、処理を連続し
たものにすることができる。
スフェード処理部34において、クロスフェード処理を
行ったが、この処理は必要に応じて適宜省略してもよ
い。あるいは、フィルタ演算部305の内部にクロスフ
ェード処理部34を設けずに、外部に、つまり、出力バ
ッファ出力側にクロスフェード合成処理部(補間部)を
設けるようにしてもよい。その場合は、所定のサンプリ
ング周期に同期したタイミングでクロスフェード(補
間)演算が行なわれることになる。
タの処理単位であるフレーム期間は、一定のものとして
取り扱ったが、これを可変するようにしてもよい。例え
ば、同時に処理する音数が4個の場合には、1フレーム
を256サンプルで構成し、同時に処理する音数が2個
の場合には、1フレームを128サンプルで構成すると
いったように、音数に応じて、フレームを構成するサン
プル数を可変してもよい。この場合には、音数が少なく
なると、バースト転送周期が短くなるので、HRTF係
数データhの更新間隔を短くすることができ、音像定位
の方向精度を向上させることができる。また、上記実施
例では、1フレーム分のデータを1回のバースト転送で
送信するようにしているが、1回に限らず、1フレーム
分のデータを数回に小分けして、それぞれ一括転送する
ようにしてもよい。また、上記実施例では、出力バッフ
ァ306〜309は、複数チャンネルについてのフィル
タ処理済みデータをサンプリング毎に累算してバッファ
記憶する構成であるが、これに限らず、各チャンネル別
に出力バッファを設け、累算処理を伴わずに、単純に1
チャンネルのフィルタ処理済みデータをバッファ記憶す
るようにしてもよい。また、ディジタルフィルタ計算機
3の出力バッファ306〜309からのデータの読み出
しは、必ずしも、所定のサンプリング周期に同期して行
なわなくてもよい。例えば、ディジタルフィルタ計算機
3の出力バッファ306〜309からフィルタ処理済み
のデータを高速読み出しして、別途出力装置または利用
装置に転送し、これらの出力装置または利用装置の側
で、最終的に所定のサンプリング周期に同期してデータ
が出力されるようになっていてもよい。
タルフィルタ計算機3のタップ数(つまり、1組の係数
の数)kは固定のものとして説明したが、これを可変す
るようにしてもよい。例えば、音数が4音の場合には、
上述したようにタップ数kを90に設定し、音数が14
音の場合には、タップ数を25に設定するといったよう
に、音数に応じて、タップ数kを可変してもよい。この
場合には、音数が少なくなると、FIRフィルタのタッ
プ数kが増加するため、頭部伝達関数HRTFをより忠
実に再現するフィルタを構成することができる。一方、
音数が多くなった場合には、転送するデータ数を減らす
ことができるので、1音当たりのバス2の占有時間を減
少させて、バス2の奪い合いを回避することができる。
項によれば、隣接するフレームで重複する入力データを
ディジタルフィルタに転送するようにしたので、ディジ
タルフィルタを間歇的に動作させることができる。ま
た、間歇的にディジタルフィルタ処理を行うことによっ
て、回路規模を増大させることなく、高品位な音像定位
効果を付与する音像定位装置を提供することができる。
ある3Dサウンドポジショニングシステムのブロック図
である。
図である。
機の機能ブロック図である。
るフィルタ演算アルゴリズムの典型例を示す機能ブロッ
ク図である。
バースト転送の様子を示した図である。
明するための概念図である。
ムの機能ブロック図である。
である。
ルタ計算機(演算部)、34…クロスフェード処理部、
W…波形データ(入力データ)、M1…波形バッファメ
モリ(第1の記憶部)、M2…HRTF係数データメモ
リ(第2の記憶部)、h…HRTF係数データ(係数デ
ータ)、P…座標命令(位置情報)。
Claims (32)
- 【請求項1】 フィルタされるべきディジタルデータの
複数サンプルを、コンピュータのバスを介して、まとめ
て転送する第1ステップと、 転送されてきた複数サンプルのディジタルデータに対し
て、所定のサンプリング周期よりも速い処理レートで、
所定のフィルタ関数に従うフィルタ処理を施す第2ステ
ップと、 フィルタ処理されたディジタルデータをバッファし、前
記所定のサンプリング周期に従って出力する第3ステッ
プと、 を具備するディジタルフィルタ処理方法。 - 【請求項2】 請求項1に記載のディジタルフィルタ処
理方法において、 前記第1ステップでは、フィルタされるべき一連のディ
ジタルデータを複数の区間に分割し、各区間毎の複数サ
ンプルからなるディジタルデータブロックを、間歇的に
転送するものであり、1区間分のディジタルデータを転
送するときにそれに隣接する区間に属するディジタルデ
ータの一部を併せて転送することで、1区間分のサンプ
ル数よりも多いサンプル数からなる時系列的なディジタ
ルデータを転送し、 これにより、前記第2ステップでは、1区間分のサンプ
ル数よりも多いサンプル数からなる時系列的なディジタ
ルデータを使用して、前記所定のフィルタ関数に従うフ
ィルタ処理を施すことで、少なくとも1区間分のサンプ
ル数に相当するフィルタ処理済みデータを得ることを特
徴とするディジタルフィルタ処理方法。 - 【請求項3】 請求項2に記載のディジタルフィルタ処
理方法において、 前記第1ステップで転送される前記隣接する区間に属す
るディジタルデータの一部は、少なくとも前記所定のフ
ィルタ関数において使用される係数の数に相当するサン
プル数からなることを特徴とするディジタルフィルタ処
理方法。。 - 【請求項4】 請求項3に記載のディジタルフィルタ処
理方法において、 前記第1ステップで転送される前記隣接する区間に属す
るディジタルデータの一部として、更に、補間用の所定
サンプル数からなるディジタルデータが含まれ、 これにより、前記第2ステップでは、1区間分のサンプ
ル数と補間用の所定サンプル数とを合計したサンプル数
からなるフィルタ処理済みデータを得て、 更に、 補間用の所定サンプル数に相当するフィルタ処理済みデ
ータを次の区間のためにバッファする第4ステップと、 前の区間においてバッファされた補間用の所定サンプル
数に相当するフィルタ処理済みデータと、今回の区間に
ついての1区間分のサンプル数に相当するフィルタ処理
済みデータとを用いて所定の補間処理を行なう第5ステ
ップとを具備し、 前記第3ステップでは、1区間分のサンプル数に相当す
る前記補間処理済みのデータをバッファし、前記所定の
サンプリング周期に従って出力することを特徴とするデ
ィジタルフィルタ処理方法。 - 【請求項5】 請求項4に記載のディジタルフィルタ処
理方法において、 前記第1ステップでは、前記1区間分のフィルタ処理の
ために使用される係数組をも前記コンピュータのバスを
介して転送し、 前記第2ステップでは、転送されてきた前記係数組を使
用して前記フィルタ処理を施し、各区間毎に異なる係数
組を使用して特性が時変動するフィルタ処理が可能であ
ることを特徴とするディジタルフィルタ処理方法。 - 【請求項6】 請求項2に記載のディジタルフィルタ処
理方法において、 前記第1のステップでは、或る第1の区間に対応して当
該第1の区間の1区間分のサンプル数fとその次の第2
の区間の始まり部分の所定のサンプル数nとを合計した
サンプル数f+nの時系列的ディジタルデータを転送
し、次の第2の区間に対応して前記第1の区間で転送済
みの該第2の区間の始まり部分の前記所定のサンプル数
nのディジタルデータを再送すると共にそれに続くサン
プル数fのディジタルデータを転送し、 ここで、前記nは、フィルタ処理において使用される1
組の係数の数kに対して、n≧kであることを特徴とす
るディジタルフィルタ処理方法。 - 【請求項7】 請求項1に記載のディジタルフィルタ処
理方法において、 前記第1ステップでは、前記フィルタ処理において使用
される係数組をも前記コンピュータのバスを介して転送
し、 前記第2ステップでは、転送されてきた前記係数組を使
用して前記フィルタ処理を施すことを特徴とするディジ
タルフィルタ処理方法。 - 【請求項8】 請求項1に記載のディジタルフィルタ処
理方法において、 前記第2ステップは、転送されてきた複数サンプルのデ
ィジタルデータをバッファするステップを含み、バッフ
ァしたディジタルデータに対して前記所定のフィルタ関
数に従うフィルタ処理を施すことを特徴とするディジタ
ルフィルタ処理方法。 - 【請求項9】 フィルタされるべきディジタルデータを
複数のブロックに分割し、各ブロック毎の複数サンプル
のディジタルデータを、コンピュータのバスを介して、
間歇的に転送する第1ステップと、 転送されてきた複数のサンプルのディジタルデータに対
して、各ブロック毎に独特のフィルタ係数組を使用し
て、所定のフィルタ処理を施す第2ステップであって、
このフィルタ処理は、間歇的な各ブロック毎の前記ディ
ジタルデータの転送に対応して、各ブロック毎に間歇的
に行われることと、 フィルタ処理されたディジタルデータをバッファし、出
力する第3ステップとを具備するディジタルフィルタ処
理方法。 - 【請求項10】 フィルタされるべきディジタルデータ
を複数のブロックに分割し、各ブロック毎の複数サンプ
ルのディジタルデータを、コンピュータのバスを介し
て、間歇的に転送する第1ステップであって、隣接する
ブロックでは一部重複するサンプルsのディジタルデー
タが転送されることと、 転送されてきた複数サンプルのディジタルデータに対し
て、各ブロック毎に独特のフィルタ係数組を使用して、
所定のフィルタ処理を施す第2ステップであって、この
フィルタ処理は、間歇的な各ブロック毎の前記ディジタ
ルデータの転送に対応して、各ブロック毎に間歇的に行
われることと、 前記第2ステップでフィルタ処理済みのデータを、少な
くとも2つの隣接ブロック間で、クロスフェード合成す
る第3ステップと、 クロスフェード合成されたフィルタ処理済みディジタル
データをバッファし、出力する第4ステップとを具備す
るディジタルフィルタ処理方法。 - 【請求項11】 フィルタされるべきディジタルデータ
の複数サンプルを、コンピュータのバスを介して、まと
めて転送する第1手段と、 転送されてきた複数サンプルのディジタルデータに対し
て、所定のサンプリング周期よりも速い処理レートで、
所定のフィルタ関数に従うフィルタ処理を施す第2手段
と、 フィルタ処理されたディジタルデータをバッファし、前
記所定のサンプリング周期に従って出力する第3手段と
を具備するディジタルフィルタ装置。 - 【請求項12】 機械読み取り可能な記録媒体であっ
て、プロセッサによって実行されるフィルタ処理のため
のプログラムの命令群を内容としており、前記プログラ
ムが、 フィルタされるべきディジタルデータの複数サンプル
を、コンピュータのバスを介して、まとめて転送する第
1ステップと、 転送されてきた複数サンプルのディジタルデータに対し
て、所定のサンプリング周期よりも速い処理レートで、
所定のフィルタ関数に従うフィルタ処理を施す第2ステ
ップと、 フィルタ処理されたディジタルデータをバッファし出力
する第3ステップとを具備する記録媒体。 - 【請求項13】 請求項12に記載の記録媒体におい
て、 前記第1ステップは前記コンピュータの汎用プロセッサ
側のプログラムによって実行し、 前記第2及び第3ステップは前記バスに接続されたフィ
ルタ処理用プロセッサ側のプログラムによって実行する
ことを特徴とする記録媒体。 - 【請求項14】 フィルタされるべきディジタルデータ
を複数のブロックに分割し、各ブロック毎の複数サンプ
ルのディジタルデータを、コンピュータのバスを介し
て、間歇的に転送する第1手段と、 転送されてきた複数サンプルのディジタルデータに対し
て、各ブロック毎に独特のフィルタ係数組を使用して、
所定のフィルタ処理を施す第2手段であって、このフィ
ルタ処理は、間歇的な各ブロック毎の前記ディジタルデ
ータの転送に対応して、各ブロック毎に間歇的に行われ
るものと、 フィルタ処理されたディジタルデータをバッファし、出
力する第3手段とを具備するディジタルフィルタ装置。 - 【請求項15】 フィルタされるべきディジタルデータ
を複数のブロックに分割し、各ブロック毎の複数サンプ
ルのディジタルデータを、コンピュータのバスを介し
て、間歇的に転送する第1手段であって、隣接するブロ
ックでは一部重複するサンプルsのディジタルデータが
転送されるものと、 転送されてきた複数サンプルのディジタルデータに対し
て、各ブロック毎に独特のフィルタ係数組を使用して、
所定のフィルタ処理を施す第2手段であって、このフィ
ルタ処理は、間歇的な各ブロック毎の前記ディジタルデ
ータの転送に対応して、各ブロック毎に間歇的に行われ
るものと、 前記第2手段でフィルタ処理済みのデータを、少なくと
も2つの隣接ブロック間で、クロスフェード合成する第
3手段と、 クロスフェード合成されたフィルタ処理済みディジタル
データをバッファし、出力する第4手段とを具備するデ
ィジタルフィルタ装置。 - 【請求項16】 機械読み取り可能な記録媒体であっ
て、プロセッサによって実行されるフィルタ処理のため
のプログラムの命令群を内容としており、前記プログラ
ムは、 フィルタされるべきディジタルデータを複数のブロック
に分割し、各ブロック毎の複数サンプルのディジタルデ
ータを、コンピュータのバスを介して、間歇的に転送す
る第1ステップと、 転送されてきた複数サンプルのディジタルデータに対し
て、各ブロック毎に独特のフィルタ係数組を使用して、
所定のフィルタ処理を施す第2ステップであって、この
フィルタ処理は、間歇的な各ブロック毎の前記ディジタ
ルデータの転送に対応して、各ブロック毎に間歇的に行
われることと、 フィルタ処理されたディジタルデータをバッファし、出
力する第3ステップとを具備する記録媒体。 - 【請求項17】 機械読み取り可能な記録媒体であっ
て、プロセッサによって実行されるフィルタ処理のため
のプログラムの命令群を内容としており、前記プログラ
ムは、 フィルタされるべきディジタルデータを複数のブロック
に分割し、各ブロック毎の複数サンプルのディジタルデ
ータを、コンピュータのバスを介して、間歇的に転送す
る第1ステップであって、隣接するブロックでは一部重
複するサンプルのディジタルデータが転送されること
と、 転送されてきた複数サンプルのディジタルデータに対し
て、各ブロック毎に独特のフィルタ係数組を使用して、
所定のフィルタ処理を施す第2ステップであって、この
フィルタ処理は、間歇的な各ブロック毎の前記ディジタ
ルデータの転送に対応して、各ブロック毎に間歇的に行
われることと、 前記第2ステップでフィルタ処理済みのデータを、少な
くとも2つの隣接ブロック間で、クロスフェード合成す
る第3ステップと、 クロスフェード合成されたフィルタ処理済みディジタル
データをバッファし、出力する第4ステップと、 を具備する記録媒体。 - 【請求項18】 コンピュータのバスに接続されるディ
ジタルフィルタ装置であって、 バスを介して、所定の1フレーム期間における任意の1
又は複数の時点で、まとまった所定サンプル数のディジ
タルデータの転送を受けるインターフェース部と、 前記インターフェース部を介して受けた前記ディジタル
データに対して所定のフィルタ演算処理を行うフィルタ
演算部と、 前記フィルタ演算部の出力をバッファし出力する出力部
とを具備するディジタルフィルタ装置。 - 【請求項19】 請求項18に記載されたディジタルフ
ィルタ装置において、 前記フィルタ演算部は、所定のサンプリング周期とは非
周期でフィルタ演算処理を行なうことを特徴とするディ
ジタルフィルタ装置。 - 【請求項20】 請求項18に記載されたディジタルフ
ィルタ装置において、 前記フィルタ演算部は、所定のサンプリング周期よりも
高速でフィルタ演算処理を行なうことを特徴とするディ
ジタルフィルタ装置。 - 【請求項21】 請求項18に記載されたディジタルフ
ィルタ装置において、 前記出力部は、バッファしたフィルタ処理済みデータを
所定のサンプリング周期に同期して出力することを特徴
とするディジタルフィルタ装置。 - 【請求項22】 請求項18に記載されたディジタルフ
ィルタ装置において、 前記インターフェース部では、前記1フレーム期間内の
異なる時点で、複数チャンネルのうちの個々のチャンネ
ルについての所定サンプル数のディジタルデータの転送
をそれぞれ受け、 前記フィルタ演算部では、各チャンネル毎のフィルタ演
算処理を前記1フレーム期間内で高速で行なうことを特
徴とするディジタルフィルタ装置。 - 【請求項23】 請求項22に記載されたディジタルフ
ィルタ装置において、 前記出力部では、各チャンネル毎のフィルタ処理済みデ
ータを同一サンプル時点毎に累算しつつバッファするこ
とを特徴とするディジタルフィルタ装置。 - 【請求項24】 請求項18に記載されたディジタル装
置において、 前記インターフェース部では、前記フィルタ演算部にお
いて使用されるフィルタ係数組をも前記コンピュータの
バスを介して受取り、 前記フィルタ演算部では、受け取った前記フィルタ係数
組を使用して前記所定のフィルタ演算処理を行なうこと
を特徴とするディジタルフィルタ装置。 - 【請求項25】 請求項18に記載されたディジタルフ
ィルタ装置において、 前記コンピュータは、フィルタされるべき一連のディジ
タルデータを複数のフレームに分割し、各フレーム毎の
複数サンプルからなるディジタルデータブロックを、間
歇的に前記バスを介して前記インターフェース部に転送
するものであり、1フレーム分のディジタルデータを転
送するときにそれに隣接するフレームに属するディジタ
ルデータの一部を併せて転送することで、1フレーム分
のサンプル数よりも多いサンプル数からなる時系列的な
ディジタルデータを転送し、 前記フィルタ演算部は、前記インターフェース部を介し
て前記コンピュータから受理した1フレーム分のサンプ
ル数よりも多いサンプル数からなる時系列的なディジタ
ルデータを使用して、前記所定のフィルタ演算処理を施
すことで、少なくとも1フレーム分のサンプル数に相当
するフィルタ処理済みのデータを得ることを特徴とする
ディジタルフィルタ装置。 - 【請求項26】 請求項18に記載されたディジタルフ
ィルタ装置において、 前記フィルタ演算部は、各フレーム毎の特有のフィルタ
係数組を使用してフィルタ演算処理を行い、 前記フィルタ演算部から出力されるフィルタ演算処理済
みのデータを少なくとも2つの隣接するフレームの間で
補間する補間部を更に備えることを特徴とするディジタ
ルフィルタ装置。 - 【請求項27】 機械読み取り可能な記録媒体であっ
て、コンピュータのバスに接続されたプロセッサによっ
て実行されるフィルタ処理のためのプログラムの命令群
を内容としており、前記コンピュータは、前記バスを介
して、所定の1フレーム期間における任意の1又は複数
の時点で、まとまった所定サンプル数のディジタルデー
タを転送するものであり、前記プログラムは、 前記コンピュータから前記バスを介して転送される前記
ディジタルデータを受けるステップと、 受けた前記ディジタルデータに対して少なくとも1フレ
ーム期間分の所定のフィルタ演算処理を行なうステップ
であって、ここで、該フィルタ演算処理は前記バスから
のディジタルデータ受理に応じて間歇的に行われること
と、 前記フィルタ演算処理済みのデータをバッファし出力す
るステップとを具備する記録媒体。 - 【請求項28】 入力データをfサンプル毎のフレーム
に分割し、フレーム単位毎に前記入力データをkタップ
のFIRフィルタに転送して、間歇的にFIRフィルタ
処理を行うFIRフィルタ処理方法であって、 一のフレーム期間中に、前記入力データをf+nサンプ
ルだけ前記FIRフィルタに転送してFIRフィルタ処
理を行なうステップと、 次のフレーム期間中に、前記一のフレームにおいて転送
したf+nサンプルの前記入力データのうち、後半のn
サンプルの前記入力データが重なるようにn+f個の前
記入力データを前記FIRフィルタに転送してFIRフ
ィルタ処理を行なうステップとを備え、 n≧kであることを特徴とするFIRフィルタ処理方
法。 - 【請求項29】 波形データをfサンプル毎のフレーム
に分割し、フレーム単位で間歇的に音像の定位効果を前
記波形データに付与する音像定位装置であって、 発音の位置情報に対応する係数データを予め格納した第
1の記憶部と、 前記波形データを記憶した第2の記憶部と、 前記係数データと前記波形データに基づいて、出力デー
タを生成するkタップのFIRフィルタ演算部と、 前記第1の記憶部、前記第2の記憶部および前記FIR
フィルタ演算部と接続され、バースト転送に対応するバ
スと、 現在のフレームの前記位置情報に対応するk個の前記係
数データを前記第1の記憶部から読み出し、隣接フレー
ム間でk個以上の前記波形データが重なるように前記第
2の記憶部からf+k個以上の前記波形データをフレー
ム単位毎に読み出し、読み出された前記係数データと前
記波形データを、前記バスを介して前記FIRフィルタ
演算部にバースト転送するように制御する制御部とを備
えたことを特徴とする音像定位装置。 - 【請求項30】 前記制御部は、音源の移動が聴感上検
知できないような短い周期で前記バースト転送を行うよ
うに制御することを特徴とする請求項2に記載の音像定
位装置。 - 【請求項31】 波形データをfサンプル毎のフレーム
に分割し、フレーム単位で間歇的に音像の定位効果を前
記波形データに付与する音像定位装置であって、 発音の位置情報に対応する係数データを予め格納した第
1の記憶部と、 前記波形データを記憶した第2の記憶部と、 前記係数データと前記波形データに基づいて、出力デー
タを生成するkタップのFIRフィルタ演算部と、 前記第1の記憶部、前記第2の記憶部および前記演算部
と接続され、バースト転送に対応するバスと、 現在のフレームの前記位置情報に対応するk個の前記係
数データを前記第1の記憶部から読み出し、前記フレー
ム単位毎にf+k+j個の前記波形データを前記第2の
記憶部から読み出し、読み出された前記係数データと前
記波形データを、前記バスを介して前記演算部にバース
ト転送するように制御する制御部と、 前記FIRフィルタによって、一のフレームで生成され
るf+j個の前記出力データと、次のフレームで生成さ
れるf+j個の前記出力データのうち、オ−バーラップ
するj個の前記各出力データ間でクロスフェード処理を
行うクロスフェード処理部とを備えたことを特徴とする
音像定位装置。 - 【請求項32】 前記位置情報は、前記フレームの中央
付近のタイミングにおける発音の位置を示すものである
ことを特徴とする請求項2乃至4のうちいずれか1項に
記載の音像定位装置。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP31254998A JP4042229B2 (ja) | 1997-10-31 | 1998-11-02 | ディジタルフィルタ処理方法、ディジタルフィルタ装置、記録媒体および音像定位装置 |
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP30132897 | 1997-10-31 | ||
JP9-301328 | 1997-10-31 | ||
JP31254998A JP4042229B2 (ja) | 1997-10-31 | 1998-11-02 | ディジタルフィルタ処理方法、ディジタルフィルタ装置、記録媒体および音像定位装置 |
Related Child Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2007134323A Division JP4321625B2 (ja) | 1997-10-31 | 2007-05-21 | ディジタルフィルタ処理方法およびディジタルフィルタ装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
JPH11243598A true JPH11243598A (ja) | 1999-09-07 |
JP4042229B2 JP4042229B2 (ja) | 2008-02-06 |
Family
ID=26562643
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP31254998A Expired - Fee Related JP4042229B2 (ja) | 1997-10-31 | 1998-11-02 | ディジタルフィルタ処理方法、ディジタルフィルタ装置、記録媒体および音像定位装置 |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP4042229B2 (ja) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002026000A3 (en) * | 2000-09-19 | 2003-10-09 | Central Research Lab Ltd | A method of synthesising an approximate impulse response function |
US6738479B1 (en) | 2000-11-13 | 2004-05-18 | Creative Technology Ltd. | Method of audio signal processing for a loudspeaker located close to an ear |
US6741711B1 (en) | 2000-11-14 | 2004-05-25 | Creative Technology Ltd. | Method of synthesizing an approximate impulse response function |
JP2012516639A (ja) * | 2009-01-30 | 2012-07-19 | パナソニック オートモーティブ システムズ カンパニー オブ アメリカ ディビジョン オブ パナソニック コーポレイション オブ ノース アメリカ | オーディオヘッドホンのユーザのためのメニューナビゲーション方法 |
JPWO2021117140A1 (ja) * | 2019-12-10 | 2021-06-17 | ||
JP2023503959A (ja) * | 2019-11-25 | 2023-02-01 | テンセント ミュージック エンターテイメント テクノロジー (シンチェン) カンパニー リミテッド | リスニングシーンを構築する方法及び関連装置 |
-
1998
- 1998-11-02 JP JP31254998A patent/JP4042229B2/ja not_active Expired - Fee Related
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2002026000A3 (en) * | 2000-09-19 | 2003-10-09 | Central Research Lab Ltd | A method of synthesising an approximate impulse response function |
US6738479B1 (en) | 2000-11-13 | 2004-05-18 | Creative Technology Ltd. | Method of audio signal processing for a loudspeaker located close to an ear |
US6741711B1 (en) | 2000-11-14 | 2004-05-25 | Creative Technology Ltd. | Method of synthesizing an approximate impulse response function |
JP2012516639A (ja) * | 2009-01-30 | 2012-07-19 | パナソニック オートモーティブ システムズ カンパニー オブ アメリカ ディビジョン オブ パナソニック コーポレイション オブ ノース アメリカ | オーディオヘッドホンのユーザのためのメニューナビゲーション方法 |
JP2023503959A (ja) * | 2019-11-25 | 2023-02-01 | テンセント ミュージック エンターテイメント テクノロジー (シンチェン) カンパニー リミテッド | リスニングシーンを構築する方法及び関連装置 |
US12089021B2 (en) | 2019-11-25 | 2024-09-10 | Tencent Music Entertainment Technology (Shenzhen) Co., Ltd. | Method and apparatus for listening scene construction and storage medium |
JPWO2021117140A1 (ja) * | 2019-12-10 | 2021-06-17 |
Also Published As
Publication number | Publication date |
---|---|
JP4042229B2 (ja) | 2008-02-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US6487572B2 (en) | Digital filtering method and device and sound image localizing device | |
CN1981558B (zh) | 音频再现设备 | |
AU2021233166B2 (en) | Apparatus and method for rendering a sound scene using pipeline stages | |
JP6007474B2 (ja) | 音声信号処理装置、音声信号処理方法、プログラムおよび記録媒体 | |
WO2006025531A1 (ja) | 音響処理装置 | |
JP3258816B2 (ja) | 3次元音場空間再生装置 | |
JP2008058984A (ja) | オーディオ信号処理方法および装置 | |
US7502816B2 (en) | Signal-processing apparatus and method | |
WO2002065814A1 (fr) | Processeur de signaux de localisation d'images sonores | |
US9913036B2 (en) | Apparatus and method and computer program for generating a stereo output signal for providing additional output channels | |
JP4042229B2 (ja) | ディジタルフィルタ処理方法、ディジタルフィルタ装置、記録媒体および音像定位装置 | |
TW444511B (en) | Multi-channel sound effect simulation equipment and method | |
JP3991458B2 (ja) | 楽音データ処理装置およびコンピュータシステム | |
JP4321625B2 (ja) | ディジタルフィルタ処理方法およびディジタルフィルタ装置 | |
JP4691662B2 (ja) | 頭外音像定位装置 | |
JP2006033551A (ja) | 音像定位制御装置 | |
JP3810110B2 (ja) | 線型予測係数を用いた立体音響処理装置 | |
JPH1042398A (ja) | サラウンド再生方法及び装置 | |
EP4138406B1 (en) | Noise cancellation method for audio signal, audio signal processing apparatus, and electronic device | |
JP4106739B2 (ja) | デジタル信号処理方法およびデジタル信号処理装置 | |
WO2022034805A1 (ja) | 信号処理装置および方法、並びにオーディオ再生システム | |
JP2569210B2 (ja) | 伝播信号処理装置及びプロセッサシステム | |
JP2002244683A (ja) | 音響信号処理装置 | |
JP2000308199A (ja) | 信号処理装置および信号処理装置の製造方法 | |
JP2000261899A (ja) | 3dデジタル・オーディオにおける耳間時間遅延を処理するための方法および装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20041224 |
|
A131 | Notification of reasons for refusal |
Free format text: JAPANESE INTERMEDIATE CODE: A131 Effective date: 20070320 |
|
A521 | Written amendment |
Free format text: JAPANESE INTERMEDIATE CODE: A523 Effective date: 20070521 |
|
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: 20071023 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20071105 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101122 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20101122 Year of fee payment: 3 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111122 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20111122 Year of fee payment: 4 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121122 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20121122 Year of fee payment: 5 |
|
FPAY | Renewal fee payment (event date is renewal date of database) |
Free format text: PAYMENT UNTIL: 20131122 Year of fee payment: 6 |
|
LAPS | Cancellation because of no payment of annual fees |