JP2007534214A - 多様なサンプルレートでの畳込みを用いてオーディオパフォーマンスを合成する方法、機器、およびシステム - Google Patents
多様なサンプルレートでの畳込みを用いてオーディオパフォーマンスを合成する方法、機器、およびシステム Download PDFInfo
- Publication number
- JP2007534214A JP2007534214A JP2006534396A JP2006534396A JP2007534214A JP 2007534214 A JP2007534214 A JP 2007534214A JP 2006534396 A JP2006534396 A JP 2006534396A JP 2006534396 A JP2006534396 A JP 2006534396A JP 2007534214 A JP2007534214 A JP 2007534214A
- Authority
- JP
- Japan
- Prior art keywords
- audio
- synthesizer
- acoustic
- performance
- microphone
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Classifications
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/0091—Means for obtaining special acoustic effects
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H1/00—Details of electrophonic musical instruments
- G10H1/02—Means for controlling the tone frequencies, e.g. attack or decay; Means for producing special musical effects, e.g. vibratos or glissandos
- G10H1/06—Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour
- G10H1/12—Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour by filtering complex waveforms
- G10H1/125—Circuits for establishing the harmonic content of tones, or other arrangements for changing the tone colour by filtering complex waveforms using a digital filter
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2210/00—Aspects or methods of musical processing having intrinsic musical character, i.e. involving musical theory or musical parameters or relying on musical knowledge, as applied in electrophonic musical tools or instruments
- G10H2210/155—Musical effects
- G10H2210/265—Acoustic effect simulation, i.e. volume, spatial, resonance or reverberation effects added to a musical sound, usually by appropriate filtering or delays
- G10H2210/295—Spatial effects, musical uses of multiple audio channels, e.g. stereo
- G10H2210/301—Soundscape or sound field simulation, reproduction or control for musical purposes, e.g. surround or 3D sound; Granular synthesis
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2220/00—Input/output interfacing specifically adapted for electrophonic musical tools or instruments
- G10H2220/091—Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith
- G10H2220/101—Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith for graphical creation, edition or control of musical data or parameters
- G10H2220/106—Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith for graphical creation, edition or control of musical data or parameters using icons, e.g. selecting, moving or linking icons, on-screen symbols, screen regions or segments representing musical elements or parameters
- G10H2220/111—Graphical user interface [GUI] specifically adapted for electrophonic musical instruments, e.g. interactive musical displays, musical instrument icons or menus; Details of user interactions therewith for graphical creation, edition or control of musical data or parameters using icons, e.g. selecting, moving or linking icons, on-screen symbols, screen regions or segments representing musical elements or parameters for graphical orchestra or soundstage control, e.g. on-screen selection or positioning of instruments in a virtual orchestra, using movable or selectable musical instrument icons
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/055—Filters for musical processing or musical effects; Filter responses, filter architecture, filter coefficients or control parameters therefor
- G10H2250/111—Impulse response, i.e. filters defined or specifed by their temporal impulse response features, e.g. for echo or reverberation applications
- G10H2250/115—FIR impulse, e.g. for echoes or room acoustics, the shape of the impulse response is specified in particular according to delay times
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/131—Mathematical functions for musical analysis, processing, synthesis or composition
- G10H2250/145—Convolution, e.g. of a music input signal with a desired impulse response to compute an output
-
- G—PHYSICS
- G10—MUSICAL INSTRUMENTS; ACOUSTICS
- G10H—ELECTROPHONIC MUSICAL INSTRUMENTS; INSTRUMENTS IN WHICH THE TONES ARE GENERATED BY ELECTROMECHANICAL MEANS OR ELECTRONIC GENERATORS, OR IN WHICH THE TONES ARE SYNTHESISED FROM A DATA STORE
- G10H2250/00—Aspects of algorithms or signal processing methods without intrinsic musical character, yet specifically adapted for or used in electrophonic musical processing
- G10H2250/131—Mathematical functions for musical analysis, processing, synthesis or composition
- G10H2250/215—Transforms, i.e. mathematical transforms into domains appropriate for musical signal processing, coding or compression
- G10H2250/235—Fourier transform; Discrete Fourier Transform [DFT]; Fast Fourier Transform [FFT]
Abstract
音響空間、マイクロホンのモデリングおよび配置など、1つまたは複数の音響特性を選択的に変えることができるオーディオパフォーマンス(50)の合成において使用するための方法、機器、およびシステム(48)が開示される。処理時間を削減するために、本システムは、プロセッサ負荷が大幅に削減された擬似畳込み処理技術(54)を使用する。本システムは、異なる音響空間における音声出力をエミュレートし、音楽ソース(楽器および他の音源)を音楽的状況から分離し、音楽ソースおよび音楽的状況を、周囲の音の状況を含む比較的正確な音響的整合性を用いて対話形式で組み換え(56)、マイクロホンモデルおよびマイクロホンの配置をエミュレートし、反響などの音響効果を生じ(58)、楽器本体の共鳴をエミュレートし、エミュレートされた楽器本体を、所与の音楽楽器において対話形式で切り換えることが可能である。
Description
本出願は、両方とも2003年10月9日に出願した米国特許仮出願第60/510068号および第60/510019号の利益を主張する。
本出願は、参照により本明細書に組み込まれている、コンパクトディスクでのコンピュータ添付リストを含む。
本発明は概して、音声処理に関し、より詳細には、音響空間、マイクロホンのモデリングおよび配置など、1つまたは複数の音響特性が、擬似畳込み処理技術を用いて変えられるオーディオパフォーマンスを合成する方法、機器、およびシステムに関する。
当該分野において、デジタル音楽シンセサイザが公知である。このようなデジタル音楽シンセサイザの例が、参照により本明細書に組み込まれている特許文献1において開示されている。特許文献1において開示されているシステムは、多様なコンポーネントフィルタを開示し、混合時間領域および周波数領域処理に基づいている。残念ながら、特許文献1において使用されている方法は、比較的計算集約的であり、したがって効率的でない。このようなものとして、特許文献1において開示されているシステムは、主として、計算時間が重大ではない学術的、科学的適用範囲において有用であるに過ぎない。
したがって、従来技術のものより比較的効率のよいシンセサイザが必要とされる。
本発明は、音響空間、マイクロホンのモデリングおよび配置など、1つまたは複数の音響特性を選択的に変えることができるオーディオパフォーマンスの合成において使用するための方法、機器、およびシステムに関する。処理時間を削減するために、本システムは、プロセッサ負荷が大幅に削減された擬似畳込み処理技術を使用する。本システムは、異なる音響空間における音声出力をエミュレートし、音楽ソース(楽器および他の音源)を音楽的状況から分離し、音楽ソースおよび音楽的状況を、周囲の音の状況を含む比較的正確な音響的整合性を用いて対話形式で組み換え、マイクロホンモデルおよびマイクロホンの配置をエミュレートし、反響などの音響効果を生じ、楽器本体の共鳴をエミュレートし、エミュレートされた楽器本体を、所与の音楽楽器において対話形式で切り換えることが可能である。
本発明は、1つまたは複数の音響特性が選択的に変えられる、音響応答を合成する音声処理システムに関する。例えば、選択可能な音楽的状況または音響空間における音声応答をエミュレートすることができる。具体的には、実質的にどの音響空間、例えばカーネギーホールのモデルも、記録し記憶することができる。本発明の一態様によると、本システムは、音声入力が、例えばカーネギーホールで演奏されているかのように聞こえるように、選択された音響空間モデルにおける音響応答をエミュレートする。
本発明の一態様によると、本システムは、音楽ソース(すなわち、楽器および他の音源)を、音楽的状況(すなわち、音源が再生される音響空間)から分離する能力をもつ。応答を、上述したように、選択可能な音楽状況にエミュレートすることによって、様々な音楽ソースに対する音響応答は、ステーションワゴンの後部座席を含む、実質的にどの音響空間向けにもエミュレートすることができる。
音響空間のモデルを生成する様々な技術を用いることができる。モデルは、部屋または他の空間あるいは音楽的状況のフィンガープリントとみなすことができる。モデルは、例えば、部屋の応答を、開始の号砲からの発砲や他の音響入力など、サウンドインパルスに記録することによって作成される。サウンドインパルスは、例えば、モデリングされる部屋または空間にスピーカを置き、周波数掃引を行うことによって作成することができる。より具体的には、一般的な技術は、スイープトーンおよび補完的デコードトーンを有する正弦波掃引方法である。スイープトーンおよびデコードトーンの畳込みは、完全な単一サンプルスパイク(インパルス)である。スイープトーンが、部屋の中でスピーカを通して再生され、マイクロホンによって録音された後、その結果生じた記録が、部屋のインパルス応答を明らかにするデコードトーンで畳み込まれる。あるいは、空間において開始の号砲を単に鳴らし、応答を記録するのは、別のやり方である。あるいは、様々な「密閉された」音響空間モデルが、現在、インターネット上で、非特許文献1、非特許文献2、および非特許文献3において入手可能である。
本発明の他の態様によると、本システムは、年代もののAKG C−12マイクロホンなど、1つまたは複数の所定のマイクロホンへの応答など、他の音響特性をエミュレートすることが可能である。マイクロホンは、音楽的状況と同じやり方でエミュレートされる。具体的には、年代もののマイクロホンの音響インパルスへの音響応答が、例えば録音され記憶される。本システムを介して再生されるどの音楽ソースも、年代もののマイクロホンを通して再生されているかのように聞こえるように処理される。
本システムは、音声状況における音声源の場所など、他の音響特性をエミュレートすることも可能である。具体的には、本発明の別の態様によると、本システムは、音源、音響空間の応答、マイクロホンおよび楽器本体共鳴応答を、オーディオパフォーマンスにおける別個の再構成可能な音声源に組み合わせることが可能である。例えば、楽器、例えばバイオリンが、部屋の中で演奏され、マイクロホンを通して録音されると、その結果生じる音声は、調性および多様なインパルス要素、すなわち、マイクロホン、部屋の音響およびバイオリン本体によって決定される反響を含む。多くのケースにおいて、こうした3つの要素を個々に制御し、お互いに、かつバイオリンの弦の振動から分離することが望ましい。そうすることによって、マイクロホン、部屋環境またはバイオリン本体の異なる選択を、ユーザまたはオーディオパフォーマンスの内容制作者によって個別に行うことができる。さらに、本システムは、任意選択で、マイクロホンの配置に相対した音声源の場所など、別の音声特性に応答をエミュレートすることが可能であり、したがって、音声源を、マイクロホンに相対して実質的に移動させる。このようなものとして、例えばドラムを、マイクロホンのより近くに、またはさらに離れて聞こえるようにすることができる。
本発明の別の態様によると、本システムは、上で論じた特許文献1において開示されている音声処理システムなど、公知の音楽シンセサイザよりはるかに計算集約的でないリアルタイム音声処理システムである。具体的には、処理の負荷を削減するのに、公知のシステムと比較して様々な技術が用いられる。例えば、後でより詳しく説明するように、「ターボ」モードの動作において、本システムは、入力音声サンプルを、入力サンプルレートより遅いサンプルレートで処理し、したがって、例えば、プロセッサの負荷を最大75%削減する。
本発明とともに使用するための例示的なホスト計算プラットフォームを、図12に示し、参照番号20で全体を識別してある。ホスト計算プラットフォームは、後で説明するユーザインターフェースおよび処理アルゴリズムとともにロードされると、音声シンセサイザを形成する。ホスト計算プラットフォーム20は、CPU22、ランダムアクセスメモリ(RAM)24、ハードドライブ26、ならびに外部ディスプレイ28、外部マイクロホン30および1つまたは複数の外部スピーカ32を含む。ホスト計算プラットフォーム20に対する最小要件は、ウィンドウズ(登録商標)XP(Pro、ホームエディション、組込み型または互換性のある他のオペレーティングシステム)、インテルペンティアム(登録商標)4、Celeron、Athlon XP 1GHzまたは他のCPU、256MBのRAM、20GBハードドライブである。
ユーザインターフェース
図1A〜1Dは、本発明に関連して用いることができるコントロールパネル100の例示的な実施形態のグラフィック表現を示す。簡単にするために、一実施形態のみを説明する。具体的には、図1Aに示す実施形態において、コントロールパネル100は、所定の音楽的状況(例えば、暗い、硬質な床材、中規模など)を選択するのに使うことができるドロップダウンメニュー102と、「未加工インパルス」を選択するのに使うことができるドロップダウンメニュー104と、特定の音楽楽器(例えば、第1バイオリン、下げ弓で滑らかに)を選択するのに使うことができるドロップダウンメニュー106と、オリジナルマイクロホン(例えば、NT1000)を選択するのに使うことができるドロップダウンメニュー108と、特定の差替えマイクロホン(例えば、AKG414)を選択するのに使うことができるドロップダウンメニュー110とを含む。後でより詳しく説明するように、マイクロホン配置選択の短いテキスト記述を表示する表示領域112が提供される。
図1A〜1Dは、本発明に関連して用いることができるコントロールパネル100の例示的な実施形態のグラフィック表現を示す。簡単にするために、一実施形態のみを説明する。具体的には、図1Aに示す実施形態において、コントロールパネル100は、所定の音楽的状況(例えば、暗い、硬質な床材、中規模など)を選択するのに使うことができるドロップダウンメニュー102と、「未加工インパルス」を選択するのに使うことができるドロップダウンメニュー104と、特定の音楽楽器(例えば、第1バイオリン、下げ弓で滑らかに)を選択するのに使うことができるドロップダウンメニュー106と、オリジナルマイクロホン(例えば、NT1000)を選択するのに使うことができるドロップダウンメニュー108と、特定の差替えマイクロホン(例えば、AKG414)を選択するのに使うことができるドロップダウンメニュー110とを含む。後でより詳しく説明するように、マイクロホン配置選択の短いテキスト記述を表示する表示領域112が提供される。
ドロップダウンメニュー104を介して選択された未加工インパルスの、音声トラックへの適用に関連づけられた「カスケード」特徴を選択的に有効にし無効にするボタン114が提供される。ユーザが選択した音響モデルの、ドロップダウンメニュー106を介して選択された楽器への適用を許可する「エンコード」特徴を選択的に有効にし無効にするボタン116が提供される。表示領域118は、任意選択で、ドロップダウンメニュー102によって選択された音楽的状況を、絵または写真によって表現することができる。
左側および右側マイクロホンに対して、ミッド/サイド(M/S)マイクロホンペアの配置を選択的に活動化し非活動化するボタン120が提供される。例えば、全マイクロホン(ボタン121)、正面(「F」)マイクロホン(ボタン122)、ワイド(「W」)マイクロホン(ボタン123)、および後部または周辺(「S」)マイクロホン(ボタン124)を含む、マイクロホンのグループを指定する付加ボタン121、122、123、124が提供される。
ユーザは、所与のどの状況でも利用されるマイクロホンそれぞれに対するマイクロホンのポーラーパターンおよびロールオフ特性を入れることもできる。この目的のために、マイクロホンのロールオフ特性または応答を選択するボタン124、125、126、127、128、129が提供される。例えば、ボタン125、126は、2通りの低周波数バンプを選択する。すなわち、ボタン127は、平坦応答を選択し、ボタン128、129は、それぞれ2通りの低周波数ロールオフ応答を選択する。同様に、ボタン130〜134は、全方位パターン(ボタン130)、広角カージオイドパターン(ボタン131)、カージオイドパターン(ボタン132)、ハイパーカージオイドパターン(ボタン133)、またはいわゆる「8の字」パターン(ボタン134)など、よく知られている異なるいくつかのマイクロホンポーラーパターンの1つをユーザに選択させる。
コントロールパネル100は、配置コントロールセクション135も含み、セクション135は、図示した実施形態において、複数の配置セレクタ/インジケータボタン(番号1から18で示す)を含む。こうした配置セレクタ/インジケータボタンは、ユーザが選択した音楽的状況における音楽楽器の位置(例えば、ユーザが指定したマイクロホン(群)に相対した、ドロップダウンメニュー106によって選択された楽器の位置)をユーザに指定させる。グラフィカル表示エリア118は、ユーザによって作動された特定の配置セレクタ/インジケータボタンによって指定されたその部屋または音楽的状況における配置に対応するドロップダウンメニュー102によって選択された部屋または音楽的状況の遠近感の描写を表示することができる。当然ながら、当業者には容易に明らかであるように、図1Aに示す配置セレクタ/インジケータボタンに加えて、またはその代わりに、特定の音楽的状況における楽器の配置をユーザが選択することを許可するのに、異なる多くの代替手段を利用することができる。例えば、部屋または音楽的状況の図解を表示することができ、マウス、トラックボール、または他の従来のポインタコントロール装置を使って、ユーザによって所望される可能性があるその部屋または音楽的状況におけるどの配置にも対応する部屋または音楽的状況の図解中の所定の配置に場所指定装置を移動することができよう。
図1Aにも示してあるように、コントロールパネル100は、「mic−to−output」コントロールセクション136も含み、セクション136は、ユーザに、所与の状況において使われる各マイクロホンを、対応するミキサー出力チャネルに割り当てさせる、一列に並んだボタンを含む。図に示すように、コントロールパネル100は、mic−to−outputコントロールセクション136において、1から7の番号をつけられたボタンの列で表される7つのミキサー出力チャネルを提供する。7つのミキサー出力チャネルは、所与の状況において、7つのマイクロホン(例えば、左右正面、左右広角、左右サラウンド、および中心チャネル)が使われることを可能にする。当然ながら、本発明の所与のどの実施形態においても、特定のシミュレータの需要に基づいて、より多いまたはより少ないミキサー出力チャネルを提供してよいことが当業者には容易に理解されよう。例えば、ステレオシミュレータにおいては、2つのミキサー出力チャネルのみが提供される必要がある。特定のミキサー出力チャネルに特定のマイクロホンを割り当てるために、ユーザは、特定のマイクロホンに対応する、ボタンの行および特定のミキサー出力チャネルに対応する、ボタンの列の中のボタンを押下するだけでよい。mic−to−outputコントロールセクション136の各行中のコントロールは、特定のマイクロホンを一度に1つのミキサー出力チャネルにのみ関連付けることができるように、相互に排他的に動作する。
mic−to−outputコントロールセクション136は、単一のマイクロホンシミュレーションまたは出力が、2つの(すなわち、ステレオ)ミキサー出力チャネルを展開するように処理される「シミュレートされたステレオ」モードを選択的に有効にし無効にするボタン140も含む。ボタン140は、例えば、シミュレートされたステレオ出力が、完全なステレオリアルタイム処理を扱うのに十分な処理能力をもたない遅いコンピュータによって生じられるのを可能にするのに使うことができる。「真性ステレオ」モードを選択的に有効にするボタン142が提供され、このモードは、左右のステレオマイクロホンのシミュレーションまたは2つのミキサー出力チャネルへの出力を単に結合する。さらに、7つのマイクロホンシミュレーションまたは出力がそれぞれ、それぞれのミキサー出力チャネルに結合されて、完全7チャネルサラウンドサウンド出力を提供する「7チャネル」モードを選択的に有効にし無効にするボタン144が提供される。
図示されたシンセサイザに、完全畳込みを実施することによって合成応答の最初のN秒を導き出させ、次いで、損失は多いが計算効率がよい再帰アルゴリズム(後でより詳しく説明する)を使って合成応答の余韻または最終部分の近似を導き出させる「余韻継続」特徴を選択的に有効にし無効にするボタン146が提供される。正確な音響的シミュレーションが要求されない場合、余韻継続特徴を有効にすると、正確な音響シミュレーションと計算オーバーヘッドの間の妥協点がもたらされる。3つのパラメータ、すなわちOverlap、Level、およびCutoffが、余韻継続特徴に関連づけられ、それぞれのスライダコントロール148、150、152が、こうしたパラメータそれぞれの調節のために提供される。
より具体的には、スライダコントロール148は、合成応答または出力信号の再帰的に生成された余韻部分と、特定のサンプルレートでの畳込みによって計算される出力信号の時間的先行部分との間の、一定量のオーバーラップの調節を許可する。スライダコントロール150は、出力信号の再帰的生成部分のレベルが、出力信号の時間的に先行して畳み込まれた部分のレベルとより厳密に一致するように、レベルの調節を許可する。スライダコントロール152は、出力信号の再帰的生成部分と、出力信号の時間的に先行して畳み込まれた部分との間の周波数領域カットオフの調節を許可し、そうすることによって、出力信号の再帰的生成部分の周波数領域帯域幅が、そうした2つの部分の間の遷移点で出力信号の畳込み部分の周波数領域帯域幅とより厳密に一致するように、合成応答または出力信号の全体的な分光減衰を円滑にする。
特定の状況において使われる各マイクロホンに対応するレベルをユーザに調節させるために、それ以外の複数のスライダコントロールを提供することができる。図示した実施形態では、図示してあるシミュレーションまたはシンセサイザシステムにおいて使用可能なマイクロホンの1つに各々が対応する7つの記録チャネルそれぞれの記録レベルを調節するスライダコントロール154〜160が提供される。さらに、ユーザに、スライダコントロール154〜160それぞれによって設定されたレベルを同時に調節させるための、主スライダコントロール161が提供される。図に示すように、各スライダコントロール154〜161と並行して、対応するスライダコントロール154〜161によって所与のどのときに設定されたレベルも数字でユーザに示す、デジタルな読取りが可能になる。図示した実施形態では、レベルは、0から2047の範囲の11ビット数で表される。ただし、適切な任意の単位での、他の適切な任意の範囲のレベルも代わりに用いることができることが、当業者には明白なはずである。
コントロールパネル100は、レベルボタン164、遠近感ボタン166、およびプリディレイボタン168も含む。レベルボタン164は、ユーザに、レベルコントロール154〜161を選択的に活動化し非活動化させる。遠近感ボタン166は、ユーザに、スライダコントロール154〜161が、所与のどのシミュレーション用にもシミュレートを行うパラメータを調節するのに使われることを可能にする遠近感特徴を選択的に活動化し非活動化させる、ドロップダウンメニュー102によって選択された音楽的状況または部屋の物理的次元を変える。プリディレイボタン168は、ユーザに、スライダコントロール154〜161を利用して、エコー応答速度をシミュレートするパラメータを(記録した信号中の初期残響と所定の量の残響密度の増加との間の、シミュレートされた遅れを調節することによって)調節させる。
例示的な代替グラフィカルユーザインターフェース(GUI)を、図1B〜1Dに示してある。こうしたGUIも、ユーザが本発明の原理によるシステムの様々なパラメータを調節することを許可する。GUIは、図1Aに示すコントロールパネルと本質的に同じ機能を提供するので、代替GUIについては、これ以上は説明しない。
処理アルゴリズム
図2は、簡単にするために、本発明による音声処理システム48の例示的な実施形態の1つの音声チャネルを示す高レベルなソフトウェアブロック図を示す。音声処理システム48は、実行時入力チャネル処理ルーチン50と、実行時順序制御、コントロール、およびデータマネージャ52と、マルチレート適応フィルタ54、収集および調整ルーチン56、余韻継続プロセッサ58を含むプロセスチャネルモジュール53とを含む。図に示すように、入力デジタル音声源サンプルが、アナログ−デジタルコンバータ(図示せず)、例えば、16ビットまたは24ビット、PCM、44.1、48、88.2、96、176.4または192kHzサンプルレート、Cirrus Crystal CS4226コーデックにおけるステレオADCなど、モノまたはマルチチャネルADCによってデジタル化され、実行時入力チャネル処理ルーチン50に与えられ、ルーチン50は、時間領域から周波数領域にあるサンプルを変換し、周波数領域サンプルを実行時順序制御、コントロールおよびデータマネージャ52に与える。さらに、例えば、ユーザが選択したマイクロホン、音楽的状況(すなわち、音響空間)、音楽楽器、および相対的な位置決めなど、ユーザが選択した音楽的状況においてユーザが選択したマイクロホンおよび/または音楽楽器の様々な音声特性の特性に対応するインパルス応答を表すインパルス応答データが、係数記憶メモリ装置60に格納される。ロード時係数処理ルーチン62および実行時係数処理ルーチン64が、係数メモリ記憶装置60からの係数を、例えば、図1A〜1Dに示すような、コントロールパネルまたはグラフィカルユーザインターフェースを介して提供されたユーザ入力66に基づいて引き続き処理するのに用いられる。
図2は、簡単にするために、本発明による音声処理システム48の例示的な実施形態の1つの音声チャネルを示す高レベルなソフトウェアブロック図を示す。音声処理システム48は、実行時入力チャネル処理ルーチン50と、実行時順序制御、コントロール、およびデータマネージャ52と、マルチレート適応フィルタ54、収集および調整ルーチン56、余韻継続プロセッサ58を含むプロセスチャネルモジュール53とを含む。図に示すように、入力デジタル音声源サンプルが、アナログ−デジタルコンバータ(図示せず)、例えば、16ビットまたは24ビット、PCM、44.1、48、88.2、96、176.4または192kHzサンプルレート、Cirrus Crystal CS4226コーデックにおけるステレオADCなど、モノまたはマルチチャネルADCによってデジタル化され、実行時入力チャネル処理ルーチン50に与えられ、ルーチン50は、時間領域から周波数領域にあるサンプルを変換し、周波数領域サンプルを実行時順序制御、コントロールおよびデータマネージャ52に与える。さらに、例えば、ユーザが選択したマイクロホン、音楽的状況(すなわち、音響空間)、音楽楽器、および相対的な位置決めなど、ユーザが選択した音楽的状況においてユーザが選択したマイクロホンおよび/または音楽楽器の様々な音声特性の特性に対応するインパルス応答を表すインパルス応答データが、係数記憶メモリ装置60に格納される。ロード時係数処理ルーチン62および実行時係数処理ルーチン64が、係数メモリ記憶装置60からの係数を、例えば、図1A〜1Dに示すような、コントロールパネルまたはグラフィカルユーザインターフェースを介して提供されたユーザ入力66に基づいて引き続き処理するのに用いられる。
実行時のCPU資源使用を削減するために、ロード時係数処理ルーチン62は、記憶装置60からの時間領域インパルス係数を、ユーザ入力に基づいた、音声応答への変更を容易にするための音声信号処理でロード時に前処理し、その結果生じた時間領域係数データを周波数領域に変換する。実行時順序制御、コントロール、およびデータマネージャ52は、音声源入力サンプルおよび処理済のインパルス応答係数を、CPU負荷最適配分および効率的リアルタイム処理を容易にするように処理する。実行時順序制御、コントロール、およびデータマネージャ52からの、処理済のサンプルおよび係数は、音声出力サンプル68を生じるために、プロセスチャネルモジュール53に与えられ、モジュール53は、入力音声源の音声応答を、ユーザが選択した様々な音声特性にエミュレートする。
図3は、図2に示す実行時入力チャネル処理ルーチン50の、例示的な一実施形態のブロック図を示す。図3を参照すると、実行時入力チャネル処理ルーチン50は、デジタル化された音声源サンプルを、第1のサンプルレート、例えば48kHzで、デジタルサンプルバッファ(IOBUF)70から受け取る。デジタルサンプルバッファ70は、各々が32ビットの32個の音声サンプル分のサイズである。デジタルサンプルバッファ70からのデジタルサンプルは、フレームコピールーチン(B)72、(A)74によって、フレーム単位でそれぞれのフレームバッファ(XLB)76、(XLA)78にコピーされる。より具体的には、同じ入力サンプルは、2通りのサンプルレートでの後続処理を容易にするように、潜在的に異なるフレームサイズの2つの別個のバッファXLB、XLAにフレーム化される。XLBバッファのフレームサイズは、XLAと比較してより小さく、通常、XLBと比較して8分の1のサイズである。余韻維持ルーチン80は、有限インパルス応答(FIR)フィルタ長のデータを、2:1の間引きフィルタ90によって要求されるFIR係数のオーバーラップをカバーするように、フレームバッファXLAの最初から最後までコピーする。間引きフィルタ90は、音声源サンプルのXLA全体のフレームサイズをダウンサンプルする。前記フレームサイズは、より低いサンプルレート、例えば音声源サンプルレートの1/2に対応する。フィルタ90は、こうしたサンプルを、間引きフレームバッファ(Xl_lp)92にコピーする。
FFTルーチン84、86、88を含む高速フーリエ変換(FFT)モジュール82が、フレームバッファ76、78中の時間領域で表されるデータフレームを、対応する周波数領域データにコンバートするために提供される。より具体的には、FFTルーチン84は、フレームバッファ76からのXLBフレームの高速フーリエ変換を生じ、変換されたデータを、周波数領域バッファ(XLBF)94に提供する。ターボモードにおいて、フレームバッファ(XLA)78からのフレームデータは、低域フィルタ、例えば2:1のフィルタによってフィルタリングされて、サンプルレートを、音声入力ソースサンプルレートの1/2に削減する。低域通過フィルタは、単に音声帯域幅を、入力サンプル帯域幅の2分の1に削減し、他のすべてのサンプルのみを保存することによって結果を切り捨てる。フィルタリングされたサンプルは、間引きフレームバッファ(Xl−lP)92に格納される。この間引きフレームバッファ92は、低域通過フィルタリングおよび他のすべてのサンプルの放棄によって生じた、帯域が削減され切り捨てられたサンプルを含み、こうしたサンプルを、FFTルーチン86に渡し、ルーチン86は、間引かれフィルタリングされたフレームデータに対してFFTを実施し、その結果生じた周波数領域フレームデータを、周波数領域バッファ(XLAF)96に格納する。
ユーザが、余韻終了処理を利用しないことを望む(すなわち、むしろ、結果としてより大きな処理能力を生じる、フルサンプルレートの畳込みの音響の正確さを達成することを好む)場合、FFTモジュール88を、フルサンプルレート(すなわち、入力サンプルと同じサンプルレート)で動作させて、フレームバッファ(XLA)78からのフレームデータを、そのオリジナルサンプルレートで変換し、したがって、フルサンプルレートの周波数領域データを周波数領域バッファ96(XLAF)に提供することができる。
フレームコピールーチン(B)72、(A)74、余韻維持ルーチン80、FFTモジュール82、および低域通過フィルタ90の動作は、フレーム制御プロセスルーチン98によって操作される。フレーム制御プロセスルーチンは、フレームが同調して動くようにフレームのタイミングを同期させ、周波数領域フレーム全体が、多様な時間領域フレームからなるように、時間領域フレームサイズより大きい周波数領域フレームを組み立てる。フレーム制御プロセスは、実行時順序制御、コントロールおよびデータマネージャ52内部のリアルタイムスケジューリングおよびCPU負荷最適配分ルーチンに供給される、XLA、XLB、XLAF、XLBFバッファの多様なサンプルレートおよびフレームサイズも同期させる。
図4は、図2に示す音声処理システムの動作において起こるデータフローの拡大図を含む、そのシステムをより詳細に示すブロック図を示す。図に示すように、複数の音声源入力チャネルCH.1、CH.2....CH.Nを示してある。上述したように、音声源入力チャネルCH.1、CH.2....CH.Nはそれぞれ、多様なサンプルレートに分けられた時間領域音声源サンプルを、さらに処理するためにそれぞれの周波数領域バッファに変換するのに用いられる実行時入力チャネル処理ルーチン50(図3)によって処理される。上述したように、各チャネル向けの周波数領域サンプルは、それぞれ参照番号102、103、104で識別される複数のフレームバッファXLBf1、XLAf2..、XLAfNに格納され、1つのフレームバッファが各チャネルに対応する。フレームバッファ102、103、104はそれぞれ、N個の音声入力チャネルの対応する1つから一度に1フレームの入力音声サンプルを受け取るだけのサイズ、例えば2048個の32ビットサンプル分である。実行時メモリ100は、例えば、M個の音響特性(すなわち、音響空間モデルまたは他の音響特性)に対するM個のインパルス応答の係数、ならびにそのそれぞれのコントロールパラメータ、索引、およびバッファを表す複数のデータ構造106、107、108も含む。インパルス応答データは、I/Oコントロールルーチン111を介してロードおよびプロセスルーチン110によって監視されるユーザコマンドに応答して、係数メモリ記憶装置60から、ロードおよびプロセスルーチン110によって取得される。ルーチン110は、ルーチン62、64(図2)から構成される。具体的には、I/Oコントロールルーチンは、単に、図1Aまたは1Bに示すGUIへのユーザ入力を監視し、ユーザが選択した音響特性に対応する係数のデータ構造を取り出す。ロードおよびプロセスルーチン110は単に、選択されたデータ構造を、チャネル単位で実行時メモリ100にロードする。こうしたデータ構造は、実行時メモリ中で、インパルス1 106、インパルス2 107...インパルスM108と識別される。図4に示すように、フレームバッファ102、103、104からの周波数領域データPXLBf1、PXLAf1、PXLBf2、PXLAf2、...PXLBfN、PXLAfNおよびデータ構造plc1 106、plc2 107...plcM108は、チャネル順序制御モジュール118に伝達され、モジュール118は、データを、プロセス53による処理のために時間多重化する働きをする。具体的には、チャネル順序制御モジュール118からプロセスチャネルモジュール120に渡される情報は、N個の音声入力チャネルそれぞれに対して、その音声入力チャネル(PXLBf(i)、i=1、2、...N)を介して受信されたデータの各フレームの時間同期した第1のフレーム化部分を表すデータ、その音声入力チャネル(PXLAf(i)、i=1、2、...N)を介して受信された同じデータの時間同期した第2のフレーム化部分を表すデータを含む。他の変数も、プロセスチャネルモジュール53に渡される。PIc(i)は、インパルスチャネル(i)のtagDynamicChannelDataデータを指すポインタであり、PIOBuf(i)は、インパルスチャネル(i)の出力バッファを指すポインタであり、dwFRAMESizeは、ホストによってコールされる度にプロセスチャネルルーチン53に入力され出力される時間領域サンプルの数であり、PIは、インスタンスにとって一意であるが、各インスタンスに対する複数のチャネルの間で共有されるインスタンスデータ構造を指すポインタであり、シミュレートされたステレオは、シミュレートされたステレオ機能を有効にし/無効にする制御ビットであり、M/Sデコードは、ミッドサイド音声デコーダ機能を有効にし/無効にする制御ビットであり、コントロールは、リアルタイム処理のCPU負荷最適配分を容易にするように、左右のチャネルが別個のフレーム上で処理されることを可能にするリアルタイムスケジューリング制御ビットである。このデータはすべて、チャネル順序制御モジュール118からプロセスチャネルルーチン120へ通過する。やはり図4に示すように、矢印122で示す、プロセスチャネルルーチン53と実行時メモリ100の間の双方向通信が提供される。
参照番号112、113、114で識別される複数のT個の出力バッファOUT1、OUT2...OUT Tが、実行時メモリ100中で提供される。出力バッファ112、113、114はそれぞれ、それぞれのT個の出力サンプルストリームを出力する1フレームの出力音声サンプルを一度に受け取るだけのサイズである。入力音声サンプルの各チャネルCH.1、CH.2...CH.Nの、ユーザが選択した音声特性用の出力バッファポインタpIOBuf1、pIOBuf2...pIOBufTは、チャネル順序制御モジュール118によって時間多重化されて、プロセスチャネル53を非依存参照し、チャネル53は、音声出力ストリームを、参照番号112、113、114で識別される出力バッファOUT1、OUT2...OUT Tにリアルタイムで合成する。
同じ音声処理システム48の多様なコピーまたは多様なインスタンスを、同時に使うことも、時分割で使うこともできる。多様なインスタンスは、例えば、異なる音楽楽器の同時処理を可能にする。例えば、オーケストラにおける、マイクロホンに相対した各楽器の相対的な場所をシミュレートすることができる。このような楽器は同時に演奏されるので、音声処理システム48の多様なコピーまたはインスタンスが、影響をリアルタイムで合成するのに要求される。このようなものとして、チャネル順序制御モジュール118は、コピーまたはインスタンスのすべての適切な参照を、プロセスチャネルモジュール53に提供しなければならない。このようなものとして、参照番号116で識別されるインスタンスデータバッファJが、実行時メモリ100中で、利用される音声処理システム48の各インスタンスごとに提供される。
本発明に関与する音声処理を明確に理解させるために、例示的なインパルス応答入力信号の時間領域表現を、図6にグラフで示してある。図に示すように、インパルス入力信号は、B)で示す時間的に第1の部分と、Aで示す、連続する時間的に第2の部分と、時間的に第2の部分Aを連続的に越える「余韻」部分とを含む。時間領域内で、インパルス入力信号を、サンプルのグループに分割することができる。インパルス入力信号の第1の部分(これ以降、「B部分」と呼ぶ)は好ましくは、FFTブロックXLENA2に対する大きい方のフレームサイズに対応するいくつかのサンプルを含み、時間的に第2の部分(これ以降、「A部分」と呼ぶ)は好ましくは、このようないくつかのサンプルフレームからなる。FFTブロックXLENB2用には、小さい方のフレームサイズ、例えば、例示的な実施形態では大きい方のブロックサイズの8分の1がある。図6に示す音声信号をなすサンプル総数を、FTAPS2で示す。図示してある音声インパルス応答または入力信号をなすサンプルの集約集合体内部での相対的な位置を指定するのに、ポインタhindexが使われる。
A部分およびB部分に対する一意のhindex、すなわちそれぞれHindexAおよびHindexBがある。図8は、図5においてブロック170で示した係数索引順制御ルーチンを示し、XLENA2、XLENB2、HindexA、HindexB、およびHLENAAから導出された係数索引順制御を示し、このうちの後の方は、ターボモードで動作する際、XLENA2のサイズの半分にスケーリングされ、ターボモードで動作しない場合は、XLENA2に等しい。HindexAおよびHindexB索引は、ブロック53で導出され、制御信号LPhaseABによって、適応フィルタ内部の係数を適合させるように切り換えられて、インパルス応答のAおよびB部分を調節する。
図5は、上述したプロセスチャネルルーチン53(図2、4)、具体的には、インテルペンティアム(登録商標)4プロセッサなど、汎用CPU上で、大幅に削減されたプロセッサ負荷で使用するための、本発明による擬似畳込み処理ルーチンの動作をより詳細に示すブロック図を示す。従来の周波数領域畳込みは、単に、周波数領域被乗数のベクトル乗算であり、その後に、時間変化しない単一の統一された固定サンプルレートおよびブロックサイズでの積の逆フーリエまたは高速フーリエ変換が続き、その結果、計算およびスループットがはるかに高くなる。従来の畳込みは、マルチレート入力音声信号、マルチレートインパルス応答のフレーム化、同期、または処理に必要なプロセスも含まず、所与のインパルス応答に対する時間変化係数を用いた適応フィルタも利用しない。
図5に示すように、図4で「コントロール」として識別される、チャネル順序制御モジュール118からの動的チャネルデータ150が、プロセスチャネルルーチン53に与えられる。具体的には、各コピーまたは音声処理システム48のインスタンスに対して、チャネル順序制御ルーチンは、各チャネルごとの動的データ構造150を、ユーザが選択した音声特性および入ってきた音声源サンプルに基づいて定式化する。より具体的には、上述したように、入力音声サンプルが、周波数領域にコンバートされ、実行時メモリ100に格納される。ユーザ選択可能な様々な音響特性へのインパルス応答係数も、同様に実行時メモリ100に格納される。このデータはすべて、データ構造、例えば、図5に示す例示的なデータ構造150に定式化される。1つのデータ構造150が、現在リアルタイムで処理されている畳込みの各チャネルごとに提供され、別個の入力チャネルを割り当てられる。
データ構造150は、図に示すように、複数の例示的なデータフィールド152、154、156、158、160、162、164、166、168を含み得る。図5に示すように、有限インパルス応答(FIR)フィルタの周波数領域係数Hx(F)が、フィールド154を形成するのに使われる。図4で識別されるpIc(n)ポインタによってポイントされる構造内の特定の参照を介してアクセスされるフィールド152は、(1)時間的に第1の部分インパルス応答入力データが処理されていることを表す索引参照(hindex B)、(2)インパルス応答入力データの時間的に第2の部分が処理されていることを表す索引参照(hindex A)、および(3)実行時MicLevel、Perspective、DirectLevel、余韻継続音声処理コントロールパラメータなどの追加コントロールデータを表す2つの索引を表すのに使うことができる。シミュレートされたステレオコントロール実行時パラメータ、および他の音声デジタル信号処理パラメータはロード時または実行時音声処理に関連づけられている。これらについては、下のtagDynamicChannelDataデータ構造テーブルでさらに記述する。
フィールド154(図5)は、周波数領域フィルタ係数Hx(f)を含み、この係数は、音響インパルス応答の形でもよく、FIRの形でシミュレートされる音響モデルの周波数領域表現(例えば、特定の音響空間、特定のマイクロホン、特定の音楽楽器本体共鳴特性など)を投入することができる。この有限FIRは、周波数領域表現を調節するために、音響モデルをなす時間領域サンプルの数を2倍に調節するだけのサイズ(すなわち、IMPSIZE*2)であるデータ構造Hx(f)に格納される。
フィールド156は、動的に生成され、N個のチャネルに対して、係数索引順制御ルーチン170によってポイントされるFIR係数のベクトル乗算器172および、参照番号174で識別されるボックス中に示される周波数領域音声源入力データXLBF、XLAFからのベクトル乗算の積の中間部を含む。バッファXLBFは、フルサンプルレート、インパルス応答の前半部分、または(図3)からフィールド94への周波数領域出力中のFIRフィルタ係数を含み、ターボモードが可能にされると、バッファXLAFは、ハーフサンプルレート、インパルス応答の後半部分、または(図3)からフィールド96への周波数領域出力中のFIRフィルタ係数を含む。Cf中間積は、逆高速フーリエ変換ルーチンIFFT176によって時間領域にコンバートされ、フィールド158に格納される。フィールド158中の時間領域データ、Hlen、halfHlenは、音声集合および索引順制御ルーチン178に与えられ、集合索引データ、すなわちフィールド160中のacolindexA&B、acolindexPrevA&Bとともに、後で述べるように、データをフィールド162、164、166で展開するのに用いられる。
Hlenは、時間領域の形で、1フレームの周波数領域データの相当物を表す。halfHlenは、時間領域の形で、周波数領域データの2分の1フレームの相当物を表す。
フィールド160は、インパルス応答のB部分に対する音声集合バッファ中の過去および現在のフレームへの索引(それぞれ、acolindexprevBおよびacolindexB、インパルス応答のA部分に対しては、それぞれ、acolindexprevAおよびacolindexBを含む。フィールド162は、ブロック178a(図7)(重複加算または重複減算を容易にする中間累積)で示すフルサンプルレートで起こり、フレームに基づくオーバーラップおよびモジュロアドレッシングを包含する処理に対応する音声集合バッファ(acol)162を含む。このバッファ(acol)162は、ブロック192(図7)で示すように、モジュロアドレッシングされ、後続フレームが重複加算され、または重複減算されるインパルスサイズ長(インパルス応答の時間領域長)のサイズである。
図9および図10は、音声集合および索引順制御178での音声収集およびhindex索引の保持に関するより細部を示す。ベクトル乗算172に対するコールに先立って、XLenAまたはXlenBどちらかにHlenが割り当てられ、acolindexが、acolindexAまたはacolindexBに割り当てられ、それぞれのインパルス係数および集合体バッファ索引が、モジュロアップデートされる。これは、周波数領域フィルタ係数を、同じフィルタモジュール内部のインパルス応答の多様な部分のブロック処理にオンザフライで適合させるように行われる。
図10に示すように、図6に示した係数索引hindexは、図6に示す波形のどの部分が処理されているかに応じて設定される。図10に示すように、判断ブロック203で判定されるように図6で「b」と識別された、波形の前半部が処理されている場合、係数索引hindexは、0にセットされる。判断ブロック205で判定されるように図6で「a」と識別された、波形の後半部分が処理されている場合、係数索引は、部分「a」の開始であるXlenA2に設定される。
(図7)に示すように、ベクトル乗算およびIFFT段階が、ターボモードでのフルサンプルレートの半分で動作しているとき、および判断ブロック200で判定されたように部分Aからのサンプルを処理しているとき、音声集合および索引順制御ルーチン178(図5)によって生成された音声集合および索引順制御フィールドならびにそれぞれの集合索引は、それぞれの音声フレームを、ctフィールド158からバッファ(acolh)、すなわち音声収集ハーフサンプルレートフィールド164に位相調整し重複加算する。やはり(図7)に示すように、余韻継続が選択され設定され、判断ブロック178bで判定されたように、係数索引hindexが、余韻集合の限度より大きい場合、音声集合および索引順制御ルーチンは、ブロック178cで示すように動作し、音声集合および索引順制御フィールド178(図5)ならびにそれぞれの集合索引は、それぞれの音声フレームを、ctフィールド158からバッファacolDH、すなわち音声収集ディレイハーフレートフィールド166に位相調整し、重複加算し、または重複減算する。acolh164およびacolDHバッファ166は、ブロック192(図7)で示すようにモジュロアドレッシングされ、インパルスサイズの半分の長さに1:2のアップサンプルフィルタフィールド180中のタップ数を足したもののサイズであり、タップ長は、FIRタイプフィルタ特有のバッファ末尾の重複を容易にするために、バッファサイズに加算される。
全ハーフサンプルレート処理が、集合索引による適切な位相に従って相殺され、acolhに重複加算された後、1:2のアップサンプルブロックフィールド180は、ハーフサンプルレートデータをフルサンプルレートに変換し、結果を音声収集フルサンプルレートバッファフィールド162に累積する。
全ハーフサンプルレート余韻継続処理が、集合索引による適切な位相に従って相殺され、acolDHに重複加算された後、余韻継続の1:2のアップサンプルブロックフィールド182は、この余韻継続ハーフサンプルレートデータをフルサンプルレートに変換し、結果を余韻継続音声収集ディレイフルレートバッファ、acolD、フィールド168に累積する。
余韻継続処理は、インパルス応答のまさに最後の部分をモデリングして、畳込み処理が非常にCPU集約的であるという事実を緩和するためにユーザによって任意選択で有効にされる。より具体的には、不可聴あるいはインパルス応答の前半部分より重大でない点に近づいている可能性があるインパルス応答の部分に貴重な計算時間を費やすのではなく、余韻継続モデリングは、アルゴリズムモデルをはるかに低い計算負荷で利用する。例えば、インパルス応答の持続期間が4秒の場合、最後の1秒は、応答の前半部のみのために割増し畳込み処理時間を保存するようにモデリングすることができる。
図11は、例示的な余韻継続モデルである。図11に示すモデルは例示であり、図に示すように、2つの基本ルーチン、すなわちコピースケールルーチンasmcpyscale207およびフィルタルーチンasmfbkfilt209を含む。他の構成も本発明の範囲内である。音声データは読み書きバッファacolD168に書き込まれる。図5に示すように、余韻継続処理ルーチンは、バッファacolD中のこのデータを処理し、図5に示すようにバッファacolに戻す。
畳込み処理の後半部分、例えば我々の4秒のインパルス例における3秒目は、バッファ、すなわちacolDHにハーフサンプルレートで、またはacolDにフルサンプルレートでコピーすることができる。余韻継続モデルは、従来の反響アルゴリズムと同様に、遅い応答に同期され加えられる。ティンバーマッチング、実際のインパルスの余韻レベルへの音量マッチングのための音量コントロール、フィードバックおよび重複パラメータ用の低域通過フィルタが存在し、これらはすべて、畳込み処理からアルゴリズム処理への円滑な遷移を容易にする。
本発明の重要な態様は、音楽シンセサイザエンジン用の音楽サンプラであるサンプラまたはシンセサイザ内部への畳込み技術の組込みおよび制御に関し、この技術が行う内容は、仮想音楽楽器の説明に対する追加である。一例は、アコースティックピアノのモデリングに関する。この例において、ピアノの共鳴板の共鳴の動きがエミュレートされる。この例では、ピアノの共鳴板のインパルス応答を制御するパラメータは、ピアノでの個々の調のオリジナルサンプル、およびアコースティックピアノの共鳴板の動きがモデルバージョンと同じになるように畳込み境界をリアルタイムに動的にスケーリングするためのコントロールパラメータ両方を含むファイル記述に保存することができる。したがって、本質的に、本システムは、畳込み関連パラメータをシンセサイザエンジン内部に組み込み、制御し、したがって、その畳込みプロセスを、仮想音楽楽器処理自体の内部に組み込む。通常、サンプラまたはシンセサイザエンジンは、ピッチコントロール、低周波数発振器すなわちLFO、およびエンベロープジェネレータを与える補間器を含む。エンベロープジェネレータは、畳込みプロセスを介して経路指定される音声をすべてが処理している長期に渡る振幅の動的制御をもたらし、ここで、音の制御およびモデリングの他の側面は、畳込みプロセスを動的に制御するシンセサイザエンジンによるものである。畳込みプロセスの動的な制御の例は、畳込みレベルコントロールの前および後制御、減衰ペダルがもち上げられる際のピアノの共鳴板の減衰をシミュレートする畳込みバッファ中からの音声エネルギーの減衰、ウェット/ドライの変更、音の様々な属性を表す様々なインパルス応答の加算および減算、「遠近感コントロール」の変更である。「遠近感コントロール」に関しては、このコントロールが行うのは、音楽楽器が演奏されている際のリアルタイムでのインパルス応答のエンベロープの変更である。こうしたプロセスをすべて組み合わせることによって、物理的楽器を、以前より大幅に詳細かつ正確にモデリングすることができる。
音楽楽器の音に関連づけられたインパルス応答、インパルス応答に関連づけられた制御パラメータ、ある楽器の単一または多様な調を表すデジタル音サンプル、シンセサイザエンジンフィルタ用のコントロールパラメータ、LFO、エンベロープジェネレータ、補間器、および音ジェネレータが、音楽楽器の1つのファイル構造表現に一緒に格納される、様々なファイル構造を利用することができる。このファイル構造は、合成音のこうしたcharatersそれぞれを表す単一または多様なデータフィールドを有し、こうした特徴は、様々なファイルデータタイプを使って様々に編成することができる。この音楽楽器のファイル構造は、周囲の環境、楽器本体の共鳴、マイクロホンタイプ、マイクロホンの配置、または合成音の他の音声特徴を含み得る。ファイル構造例は、インパルス応答1...インパルス応答(n)、インパルス応答1インパルスコントロール1...インパルス応答1インパルスコントロール(m)、インパルス応答(n)インパルスコントロール1...インパルス応答(n)インパルスコントロール(m)、デジタル音サンプル1...デジタル音サンプル(p)、サンプラエンジンコントロールパラメータ1...サンプラエンジンコントロールパラメータ(q)、シンセサイザエンジンコントロールパラメータ1...シンセサイザエンジンコントロールパラメータ(r)、他のファイルへのポインタ1、..他のファイルへのポインタ(n)のようになる。こうしたパラメータは、一体となって、音楽楽器または音の質感ジェネレータの音の動きを表し、ユーザ性能データを介したシンセサイザエンジン内部でのインパルス応答およびその対話性は、楽器モデルによって生じた音に寄与する。]
例示的なチャネルデータ構造を下に示す。チャネル順序制御ルーチン118(図4)は、プロセスチャネルに供給される特定のポインタおよびコントロールを選ぶ[ジム、ここでより優れた定義を与える必要がある]。このデータ構造の各インスタンスは、実行時メモリ100の中の1つの動的チャネルデータインパルスブロックを表す。「重複加算」方法(技術的には、ダウンストリーム位相が逆転した重複減算)によって、(組み合わされる部分において)区分的畳込みが行われる。
例示的なチャネルデータ構造を下に示す。チャネル順序制御ルーチン118(図4)は、プロセスチャネルに供給される特定のポインタおよびコントロールを選ぶ[ジム、ここでより優れた定義を与える必要がある]。このデータ構造の各インスタンスは、実行時メモリ100の中の1つの動的チャネルデータインパルスブロックを表す。「重複加算」方法(技術的には、ダウンストリーム位相が逆転した重複減算)によって、(組み合わされる部分において)区分的畳込みが行われる。
上記の説明は、本発明を実施する最良モードを当業者に教示する目的のためであり、例示としてのみ解釈されるべきである。この説明を鑑みて、本発明の多様な修正形態および代替形態が当業者には明らかであり、開示した構造の詳細は、本発明の精神から実質的に逸脱することなく変わり得る。したがって、添付の特許請求の範囲内でのすべての修正形態の独占的使用が保持される。
特許状によりカバーされるべき、権利を主張し要望する内容は、特許請求の範囲に続く。
Claims (14)
- オーディオパフォーマンスを表し、第1のサンプルレートでの複数の音声入力サンプルを含む入力音声ストリームを受け取る手段と、
音響効果に対応するインパルス応答を表すデータを受け取る手段と、
前記応答時間の部分に対する前記インパルス応答を表す前記データで前記音声入力サンプルを畳み込み、前記応答時間の残りの間に前記応答をモデリングすることによって、前記入力音声ストリームおよび前記インパルス応答に基づいて出力音声ストリームを生成する手段とを備えることを特徴とするシンセサイザ。 - ユーザから、前記音響効果の指示を受け取る手段をさらに備えることを特徴とする請求項1に記載のシンセサイザ。
- 前記音響効果は、前記オーディオパフォーマンスの音響上の変更を含むことを特徴とする請求項1に記載のシンセサイザ。
- 前記音響効果は、前記オーディオパフォーマンスの音響上の変更を含むことを特徴とする請求項1に記載のシンセサイザ。
- 前記入力音声ストリームは、複数の入力チャネルそれぞれに対する複数の音声入力サンプルを含むことを特徴とする請求項1に記載のシンセサイザ。
- 前記出力音声ストリームは、複数の出力チャネルを含むことを特徴とする請求項1に記載のシンセサイザ。
- 前記音響効果は、特定のマイクロホンを用いて前記オーディオパフォーマンスの録音を音響的にシミュレートすることを含むことを特徴とする請求項1に記載のシンセサイザ。
- 前記音響効果は、特定のマイクロホン配置を用いて前記オーディオパフォーマンスの録音を音響的にシミュレートすることを含むことを特徴とする請求項1に記載のシンセサイザ。
- 前記音響効果は、特定の音楽的状況を用いて前記オーディオパフォーマンスの録音を音響的にシミュレートすることを含むことを特徴とする請求項1に記載のシンセサイザ。
- 前記音響効果は、特定の楽器本体を使って前記オーディオパフォーマンスの少なくとも一部分の演奏を音響的にシミュレートすることを含むことを特徴とする請求項1に記載のシンセサイザ。
- 前記音響効果は、特定の楽器配置を使って前記オーディオパフォーマンスの少なくとも一部分の演奏を音響的にシミュレートすることを含むことを特徴とする請求項1に記載のシンセサイザ。
- 前記生成手段は、前記出力音声ストリームの余韻部分を再帰的に外挿する手段を備えることを特徴とする請求項1に記載のシンセサイザ。
- 前記演奏は、第1の数のソースチャネルを含み、前記生成手段によって生成された前記出力音声ストリームは、前記第1の数のソースチャネルより多い第2の数の出力チャネルを含むことを特徴とする請求項1に記載のシンセサイザ。
- 前記演奏は、単一のソースチャネルのみを含み、前記出力音声ストリームは、前記単一のソースチャネルのシミュレートされたステレオバージョンを含むことを特徴とする請求項13に記載のシンセサイザ。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US51006803P | 2003-10-09 | 2003-10-09 | |
US51001903P | 2003-10-09 | 2003-10-09 | |
PCT/US2004/033290 WO2005036523A1 (en) | 2003-10-09 | 2004-10-08 | Method, apparatus, and system for synthesizing an audio performance using convolution at multiple sample rates |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2007534214A true JP2007534214A (ja) | 2007-11-22 |
Family
ID=34437315
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2006534396A Pending JP2007534214A (ja) | 2003-10-09 | 2004-10-08 | 多様なサンプルレートでの畳込みを用いてオーディオパフォーマンスを合成する方法、機器、およびシステム |
Country Status (5)
Country | Link |
---|---|
US (1) | US20110064233A1 (ja) |
EP (1) | EP1685554A1 (ja) |
JP (1) | JP2007534214A (ja) |
TW (1) | TW200525877A (ja) |
WO (1) | WO2005036523A1 (ja) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011197441A (ja) * | 2010-03-19 | 2011-10-06 | Yamaha Corp | セルフラーニング機能を有する音響システム |
JP2013085119A (ja) * | 2011-10-07 | 2013-05-09 | Sony Corp | 音声信号処理装置、音声信号処理方法、プログラムおよび記録媒体 |
Families Citing this family (19)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102005043641A1 (de) | 2005-05-04 | 2006-11-09 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Vorrichtung und Verfahren zur Generierung und Bearbeitung von Toneffekten in räumlichen Tonwiedergabesystemen mittels einer graphischen Benutzerschnittstelle |
TWI403976B (zh) * | 2006-12-17 | 2013-08-01 | Digitaloptics Corp Internat | 利用以硬體為基礎之反摺積的影像加強 |
US8612225B2 (en) * | 2007-02-28 | 2013-12-17 | Nec Corporation | Voice recognition device, voice recognition method, and voice recognition program |
US8180063B2 (en) * | 2007-03-30 | 2012-05-15 | Audiofile Engineering Llc | Audio signal processing system for live music performance |
US20080256136A1 (en) * | 2007-04-14 | 2008-10-16 | Jerremy Holland | Techniques and tools for managing attributes of media content |
JP2009128559A (ja) | 2007-11-22 | 2009-06-11 | Casio Comput Co Ltd | 残響効果付加装置 |
JP5262324B2 (ja) | 2008-06-11 | 2013-08-14 | ヤマハ株式会社 | 音声合成装置およびプログラム |
US8819554B2 (en) | 2008-12-23 | 2014-08-26 | At&T Intellectual Property I, L.P. | System and method for playing media |
GB2471089A (en) * | 2009-06-16 | 2010-12-22 | Focusrite Audio Engineering Ltd | Audio processing device using a library of virtual environment effects |
DE102013105375A1 (de) * | 2013-05-24 | 2014-11-27 | Fraunhofer-Gesellschaft zur Förderung der angewandten Forschung e.V. | Tonsignalerzeuger, Verfahren und Computerprogramm zum Bereitstellen eines Tonsignals |
JP6176132B2 (ja) * | 2014-01-31 | 2017-08-09 | ヤマハ株式会社 | 共鳴音生成装置及び共鳴音生成プログラム |
JP6391265B2 (ja) * | 2014-03-21 | 2018-09-19 | 株式会社河合楽器製作所 | 電子鍵盤楽器 |
US9793879B2 (en) * | 2014-09-17 | 2017-10-17 | Avnera Corporation | Rate convertor |
US10319353B2 (en) * | 2016-09-01 | 2019-06-11 | The Stone Family Trust Of 1992 | Method for audio sample playback using mapped impulse responses |
GB201709851D0 (en) * | 2017-06-20 | 2017-08-02 | Nokia Technologies Oy | Processing audio signals |
CN110265064B (zh) * | 2019-06-12 | 2021-10-08 | 腾讯音乐娱乐科技(深圳)有限公司 | 音频爆音检测方法、装置和存储介质 |
KR102181643B1 (ko) * | 2019-08-19 | 2020-11-23 | 엘지전자 주식회사 | 마이크의 배치 적합도를 결정하는 방법 및 이를 위한 장치 |
US11579838B2 (en) * | 2020-11-26 | 2023-02-14 | Verses, Inc. | Method for playing audio source using user interaction and a music application using the same |
CN114365219A (zh) * | 2021-11-25 | 2022-04-15 | 广州酷狗计算机科技有限公司 | 音频分离方法、装置、设备、存储介质及程序产品 |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9417185D0 (en) * | 1994-08-25 | 1994-10-12 | Adaptive Audio Ltd | Sounds recording and reproduction systems |
JP3918315B2 (ja) * | 1998-08-20 | 2007-05-23 | ヤマハ株式会社 | インパルス応答測定方法 |
US20030169887A1 (en) * | 2002-03-11 | 2003-09-11 | Yamaha Corporation | Reverberation generating apparatus with bi-stage convolution of impulse response waveform |
-
2004
- 2004-10-08 EP EP04794594A patent/EP1685554A1/en not_active Withdrawn
- 2004-10-08 JP JP2006534396A patent/JP2007534214A/ja active Pending
- 2004-10-08 US US10/575,278 patent/US20110064233A1/en not_active Abandoned
- 2004-10-08 WO PCT/US2004/033290 patent/WO2005036523A1/en active Application Filing
- 2004-10-11 TW TW093130759A patent/TW200525877A/zh unknown
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2011197441A (ja) * | 2010-03-19 | 2011-10-06 | Yamaha Corp | セルフラーニング機能を有する音響システム |
JP2013085119A (ja) * | 2011-10-07 | 2013-05-09 | Sony Corp | 音声信号処理装置、音声信号処理方法、プログラムおよび記録媒体 |
Also Published As
Publication number | Publication date |
---|---|
WO2005036523A1 (en) | 2005-04-21 |
EP1685554A1 (en) | 2006-08-02 |
US20110064233A1 (en) | 2011-03-17 |
TW200525877A (en) | 2005-08-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
JP2007534214A (ja) | 多様なサンプルレートでの畳込みを用いてオーディオパフォーマンスを合成する方法、機器、およびシステム | |
CN102395098B (zh) | 生成3d声音的方法和设备 | |
CN1091916C (zh) | 由单代器的音频样本产生多仪器的声音的方法和装置 | |
US5890115A (en) | Speech synthesizer utilizing wavetable synthesis | |
CN1230273A (zh) | 一种音响合成器中的减少内存的混响模拟器 | |
Välimäki et al. | Virtual musical instruments—natural sound using physical models | |
CN105659630A (zh) | 用于处理多媒体信号的方法和设备 | |
CN1230275A (zh) | 使用可变采样率近似的波形表合成器及其方法 | |
Smith | Virtual acoustic musical instruments: Review and update | |
US20070160216A1 (en) | Acoustic synthesis and spatialization method | |
CN108242231A (zh) | 乐音生成装置、电子乐器、乐音生成方法以及存储介质 | |
CN108242232A (zh) | 乐音生成装置、电子乐器、乐音生成方法以及存储介质 | |
Creasey | Audio Processes: Musical Analysis, Modification, Synthesis, and Control | |
JPH11513821A (ja) | 逆変換狭帯域/広帯域音声合成 | |
WO2022248729A1 (en) | Stereophonic audio rearrangement based on decomposed tracks | |
TW378314B (en) | Apparatus and method for approximating an exponential decay in a sound synthesizer | |
JP3991458B2 (ja) | 楽音データ処理装置およびコンピュータシステム | |
JP2005338480A (ja) | 共鳴効果付加装置 | |
JP2009500669A (ja) | パラメトリック・マルチチャンネル復号化 | |
JP2022550746A (ja) | 音響空間のモード残響効果 | |
d’Alessandro et al. | The ORA project: Audio-visual live electronics and the pipe organ | |
Verfaille et al. | Ssynth: a real time additive synthesizer with flexible control | |
JP2754613B2 (ja) | デジタル音声信号発生装置 | |
JP2017173632A (ja) | 演奏信号生成装置および演奏信号生成方法 | |
JP2001086599A (ja) | ステレオ音響装置及びステレオ音響方法 |