説明

デジタル信号処理システムおよび処理方法

【課題】高価な出費をすることなく、スタジオ品質の音を再生する。
【解決手段】本発明は、音響信号をデジタル処理するための方法およびシステムを提供するもので、複数のフィルタイコライジング係数を有するプロファイルを受信し、前記プロファイルから前記複数のフィルタイコライジング係数によりグラフィックイコライザの複数のフィルタを設定し、処理するための第1信号を受信し、第1ゲインを使用して、前記複数のフィルタを調節し、前記グラフィックイコライザの前記複数のフィルタを使用して、前記第1信号をイコライジングし、処理するための第2信号を受信し、第2ゲインを使用して、前記プロファイルから前記フィルタイコライジング係数により予め設定された前記複数のフィルタを調節し、前記グラフィックイコライザの複数のフィルタにより、前記第2信号の複数の周波数を調節し、前記第2信号を出力させる。

【発明の詳細な説明】
【技術分野】
【0001】
[関連出願]
本出願は、米国仮特許出願60/861,711(2006年11月30日出願)に基づいて優先権主張する米国特許出願11/947,301(2007年11月29日出願)と、米国仮特許出願60/765,722(2006年2月7日出願)に基づいて優先権主張する米国特許出願11/703,216(2007年2月7日出願)とのCIP出願である。上記の各出願は、全体としてここに参考文献として含まれるものとする。
【0002】
本発明は、音響信号をデジタル処理するシステムおよび方法を提供するものである。いくつかの実施形態は、音響機器の全スペクトルに亘って再生することのできるスタジオ品質の音のような方法で音響信号をデジタル処理するものに関する。
【背景技術】
【0003】
歴史的に見て、スタジオ品質の音は、スタジオ録音処理の際に使用される音響周波数の全範囲の完全再生として、最もよく説明することができるが、音響録音スタジオにおいてのみ、適切に達成することができる。スタジオ品質の音は、中間の上の周波数範囲が効果的に操作されて再生される場合に限って実現される鮮明さ、および明るさのレベルにより特徴付けられる。スタジオ品質の音の技術的基盤は、経験を積んだ録音製作者だけが、十分に理解することができる一方、平均的なリスナーは、スタジオ品質の音が作る差異を容易に聞き分けることができる。
【0004】
録音スタジオ以外の場所で、スタジオ品質の音を再生する様々な試みがなされてきた。これらの試みは、非常に費用がかかり(通常、進歩したスピーカ設計、高価なハードウエアおよび追加したパワーアンプに起因する)、また、まちまちの結果しか得られなかった。従って、一貫性があり、高品質で、低価格に実現できるスタジオ品質の音を、スタジオ以外の場所で再生できる処理が要望されている。また、このような処理を実行する、音響機器の内部に組み込むことのできるコンピュータチップとともに、このような処理を実行する音響機器が要望されている。さらに、安価なスピーカを用いてスタジオ品質の音を再生する能力が要望されている。
【0005】
携帯電話では、会話中の音声や再生中の音響番組の音響品質を向上させ、かつ最適化することは、ほとんど行われていない。製造業者は、ある場合には、音響品質を向上させることを試みているが、通常、これは、機器の音量制御を使用して行われている。一般的な声の「音」の鮮明さは、固定されている。音声は、単に増幅されるか、および/または、均一にされるに過ぎない。しかも、増幅および/または均一のための設定は、固定されており、ユーザが変更することはできない。
【0006】
さらに、車両のための音響システムの設計は、多数の異なる要因の考慮を含んでいる。音響システムの設計者は、車両内におけるスピーカの位置および数を選択する。また、各スピーカの所望の周波数応答を決定しなければならない。例えば、インストルメンタルパネルに配置されるスピーカの所望の周波数応答は、後部ドアパネルの下の部分に配置されるスピーカの所望の周波数応答とは異なる可能性がある。
【0007】
また、音響システムの設計者は、機器間の差異が音響システムにどのような影響を与えるのかを考慮しなければならない。例えば、コンバーチブルの音響システムは、ハードトップの同じモデルの車両の同じ音響システムと同程度の良好な音質にならない可能性がある。また、車両のための音響システムのオプションは、大きく異なる。車両のためのある音響オプションは、チャンネル当たり40ワットの増幅率を有する基本の4スピーカシステムを含み、また、他の音響プションは、チャンネル当たり200ワットの増幅率を有する12スピーカシステムを含む可能性がある。音響システムの設計者は、車両のための音響システムを設計する場合、これらの仕様の全てを考慮しなければならない。これらの理由から、音響システムの設計には、時間とコストがかかる。また、音響システムの設計者は、信号処理およびイコライジングについて、比較的豊富なバックグランドを備えていなければならない。
【0008】
車両の歴史において、これらを考慮して、スタジオ品質の音に近づけるためには、工場で組み込まれるスピーカの高価なアップグレードを含む、想定可能な金銭的出費が要求されていた。そのため、このような高価な出費をすることなく、車両におけるスタジオ品質の音を再生できるシステムが要望されている。
【発明の概要】
【発明が解決しようとする課題】
【0009】
本発明は、音響機器の全スペクトルに亘って再生することのできるスタジオ品質の音のような方法で、音響信号をデジタル的に処理する方法を提供することにより、上述した課題に対処するものである。また、本発明は、そのような方法で音響信号をデジタル的に処理するコンピュータチップおよびそのチップを備える音響装置を提供するものである。
【0010】
さらに、本発明は、スタジオ品質の音の再生に使用される安価なスピーカを可能とすることにより、上述した課題に対処するものである。さらにまた、本発明は、音響信号をデジタル的に操作し、車両の既存のスピーカシステムを使用して、スタジオ品質の音を再生するために車両内で使用できる携帯音響機器を提供することにより、上述した課題に対処するものである。実際、車両の工場で組み込まれたスピーカであっても、本発明を適用することで、スタジオ品質の音を実現するために使用することができる。
【課題を解決するための手段】
【0011】
一実施形態では、本発明は、音響信号を入力し、まず、前記音響信号のゲインを調節し、第1ローシェルフフィルタにより前記信号を処理し、第1ハイシェルフフィルタにより前記信号を処理し、第1コンプレッサにより前記信号を処理し、第2ローシェルフフィルタにより前記信号を処理し、第2ハイシェルフフィルタにより前記信号を処理し、グラフィックイコライザにより前記信号を処理し、第2コンプレッサにより前記信号を処理し、次いで、前記音響信号のゲインを調節するステップを備える方法を提供するものである。この実施形態では、前記音響信号は、スタジオ品質の音が生成されるように操作される。さらに、この実施形態では、音源間またはプログラム素材に存在するいかなる固有の音量の違いも補償し、また、上質で豊かな音を一定の出力レベルで生成する。
【0012】
また、この実施形態では、走行中の自動車のような高ノイズ環境において、スタジオ品質の音を再生することができる。本発明に係るいくつかの実施形態は、任意の環境でスタジオ品質の音を再生することができる。このことは、制限されるものではないが、コンサートホールのような音響効果を考慮して十分に設計された環境を含む。また、このことは、制限されるものではないが、伝統的な居間、車両内等のような、音響効果を十分に考慮して設計されていない環境を含む。さらに、本発明のいくつかの実施形態は、本発明に関連する電子コンポーネントおよびスピーカの品質に関わりなく、スタジオ品質の音を再生することができる。従って、本発明は、最上位機種と低価格機種の電子機器およびスピーカの双方、並びに、これらの中間に位置するものの全てにおいて、スタジオ品質の音を再生するために使用することができる。
【0013】
いくつかの実施形態では、この実施形態は、制限されるものではないが、自動車、飛行機、船舶、クラブ、劇場、遊園地、ショッピングセンタのような高ノイズ環境において、音楽、映画またはビデオゲームを楽しむために使用することができる。さらに、いくつかの実施形態では、本発明は、約600Hzから約1000Hzの間である人間の耳、および音響変換器の両方の有効領域を超える音響信号を処理することにより、音の表現の改善を求めるものである。この領域を超える音響処理を行うことにより、より豊かでより広い表現を得ることができる。
【0014】
いくつかの実施形態では、前記音響信号の前記低音部分は、圧縮前に減衰させ、圧縮後に強めることができる。従って、前記スピーカから出力される音は、低音の音程で上質のスペクトルが得られ、従来の圧縮により生じる消音効果を回避することができる。さらに、いくつかの実施形態では、前記音響信号のダイナミックレンジは、圧縮により減衰されているので、最終的な出力は、制限された音量の範囲内となる。例えば、本発明では、80dBのノイズフロアおよび110dBの音の閾値の高ノイズ環境において、スタジオ品質の音を心地よく発生させることができる。
【0015】
いくつかの実施形態では、上述した特定の方法は、上述した方法の前後、または、上述した方法の間で実行されるデジタル信号処理方法と組みわせることができる。
【0016】
特定の実施形態では、本発明は、上述した特定の方法を遂行するコンピュータチップを提供するものである。一実施形態では、前記コンピュータチップは、デジタル信号処理装置またはDSPとすることができる。他の実施形態では、前記コンピュータチップは、制限されるものではないが、コンピュータ、コンピュータソフトウエア、電子回路、これらのステップを実行するためにプログラムされた電子チップ、または、上述した方法を遂行する他の任意の手段のような、上述した方法を遂行することのできる任意の処置装置であってもよい。
【0017】
さらに本発明は、このようなコンピュータチップを備える音響機器を提供するものである。前記音響機器は、例えば、制限されるものではないが、ラジオ、CDプレーヤ、テーププレーヤ、MP3プレーヤ、携帯電話、テレビ、コンピュータ、拡声装置、Playstation 3(ソニー株式会社、東京、日本)、X-Box 360(マイクロソフトコーポレーション、レドモンド、ワシントン州)、Nintendo Wii(任天堂株式会社、京都、日本)のようなゲームステーション、ホームシアターシステム、DVDプレーヤまたはブルーレイプレーヤを備えている。
【0018】
このような実施形態では、本発明の前記チップは、音源選択部を通過した後、音量制御部に到達する前に、前記音響信号を配信することができる。特に、いくつかの実施形態では、前記音響機器に設置された本発明の前記チップは、制限されるものではないが、ラジオ、CDプレーヤ、テーププレーヤ、DVDプレーヤ等、1つ以上の音源を含む音響信号を処理する。本発明の前記チップの出力は、信号が適宜増幅されて他の信号処理モジュールやスピーカを駆動する。
【0019】
特に、一実施形態では、本発明は、このようなコンピュータチップを備える携帯音響機器を提供するものである。このような携帯音響機器は、自動車に設置され、また、例えば、制限されるものではないが、ラジオ、CDプレーヤ、テーププレーヤ、MP3プレーヤ、DVDプレーヤまたはビデオカセットプレーヤが備えることができる。
【0020】
この実施形態では、本発明の前記携帯音響機器は、特に、最適な性能を得、スピーカの配置、客室の構成および背景ノイズのような各車両に応じた個性的な音響特性を実現するために使用する車両毎に調節することができる。また、この実施形態では、本発明の前記携帯音響機器は、すべての4つの独立に制御されるチャンネルを正確に調節することができる。また、この実施形態では、本発明の前記携帯音響機器は、約200Wの出力を配信することができる。また、この実施形態では、本発明の前記携帯音響機器は、スタジオ品質の音を生成するため、車両の既存の(場合によっては、工場で設置された)スピーカシステムを使用することができる。また、この実施形態では、本発明の前記携帯音響機器は、標準的なデジタル規格で演奏される楽曲を許可するUSBポートを備えることができる。また、この実施形態では、本発明の前記携帯音響機器は、衛星ラジオで使用するアダプタを備えることができる。また、この実施形態では、本発明の前記携帯音響機器は、制限されるものではないが、MP3プレーヤのような既存のデジタル音響再生機器で使用するアダプタを備えることができる。また、この実施形態では、本発明の前記携帯音響機器は、リモートコントローラを備えることができる。また、この実施形態では、本発明の前記携帯音響機器は、着脱可能なフェイスプレートを備えることができる。
【0021】
種々の実施形態の方法は、複数のフィルタイコライジング係数を有するプロファイルを受信し、前記プロファイルから、前記複数のフィルタイコライジング係数を使用して、グラフィックイコライザの複数のフィルタを設定し、処理するための第1信号を受信し、第1ゲインを使用して、前記複数のフィルタを調節し、前記グラフィックイコライザの前記複数のフィルタを使用して、前記第1信号をイコライジングし、前記第1信号を出力し、処理するための第2信号を受信し、第2ゲインを使用して、前記プロファイルから前記フィルタイコライジング係数を使用して予め設定された前記複数のフィルタを調節し、前記グラフィックイコライザの前記複数のフィルタにより、前記第2信号の複数の周波数をイコライジングし、前記第2信号を出力する処理を備える。前記プロファイルは、通信ネットワークおよび/またはファームウエアから受信することができる。
【0022】
前記複数のフィルタは、通話中の音声を明瞭にする前記第1信号を変更し、高ノイズ環境での音声を明瞭にする前記第1信号を変更し、および/または、携帯端末のためのメディアファイルに関連する音を調節する前記第1信号を変更する前記複数のフィルタイコライジング係数を使用して設定することができる。
【0023】
前記方法は、さらに、前記第1信号をイコライジングする前に、前記第1信号のゲインを調節し、ローシェルフフィルタにより、調節された前記第1信号をフィルタリングし、コンプレッサにより、フィルタリングされた前記第1信号を圧縮する処理を備える。さらに、前記第1信号をイコライジングした後に、コンプレッサにより、イコライジングされた前記第1信号を圧縮し、圧縮された前記第1信号を調節する。
【0024】
いくつかの実施形態では、本発明の方法は、さらに、第1ローシェルフフィルタにより、前記第1信号をフィルタリングし、フィルタリングされた前記第1信号をコンプレッサにより圧縮する前に、第1ハイシェルフフィルタにより、前記第1ローシェルフフィルタから受信した前記第1信号をフィルタリングし、前記第1信号を前記グラフィックイコライザによりイコライジングする前に、第2ローシェルフフィルタにより、前記第1信号をフィルタリングし、前記第1信号が前記第2ローシェルフフィルタによりフィルタリングされた後、第2ハイシェルフフィルタにより、前記第1信号をフィルタリングする処理を備えている。
【0025】
前記グラフィックイコライザの前記複数のフィルタは、11個の縦続接続する二次フィルタを備えることができる。前記各二次フィルタは、ベルフィルタとすることができる。
【0026】
いくつかの実施形態のシステムは、グラフィックイコライザを備える。前記グラフィックイコライザは、フィルタモジュール、プロファイルモジュールおよびイコライジングモジュールを備えることができる。前記フィルタモジュールは、複数のフィルタを有する。前記プロファイルモジュールは、複数のフィルタイコライジング係数を有するプロファイルを受信して設定することができる。前記イコライジングモジュールは、前記プロファイルから、前記複数のフィルタイコライジング係数により前記複数のフィルタを設定し、第1信号および第2信号を受信し、第1ゲインを使用して、前記複数のフィルタを調節し、前記グラフィックイコライザの前記複数のフィルタを使用して、前記第1信号をイコライジングし、前記第1信号を出力し、第2ゲインを使用して、前記プロファイルから前記フィルタイコライジング係数を使用して、予め設定された前記複数のフィルタを調節し、前記グラフィックイコライザの前記複数のフィルタにより、前記第2信号をイコライジングし、前記第2信号を出力するために設定することができる。
【0027】
種々の実施形態の方法は、複数のフィルタイコライジング係数によりグラフィックイコライザを設定し、第1ゲインを使用して、前記グラフィックイコライザを調節し、前記グラフィックイコライザにより第1信号を処理し、前記グラフィックイコライザから前記第1信号を出力し、第2ゲインを使用して、前記グラフィックイコライザを調節し、前記複数のフィルタイコライジング係数により予め設定された前記グラフィックイコライザにより、前記第2信号を処理し、前記グラフィックイコライザから前記第2信号を出力するステップを備えている。
【0028】
いくつかの実施形態では、コンピュータにより読み出し可能な媒体は、実行可能な命令を備えることができる。前記命令は、方法を遂行するためのプロセッサにより実行することができる。前記方法は、複数のフィルタイコライジング係数を有するプロファイルを受信し、前記プロファイルから、前記複数のフィルタイコライジング係数を使用して、グラフィックイコライザの複数のフィルタを設定し、処理するための第1信号を受信し、第1ゲインを使用して、前記複数のフィルタを調節し、前記グラフィックイコライザの前記複数のフィルタを使用して、前記第1信号をイコライジングし、前記第1信号を出力し、処理するための第2信号を受信し、第2ゲインを使用して、前記プロファイルから前記フィルタイコライジング係数を使用して予め設定された前記複数のフィルタを調節し、前記複数のグラフィックイコライザのフィルタにより、前記第2信号の前記複数の周波数をイコライジングし、前記第2信号を出力するステップを備えることができる。
【0029】
本発明の他の特徴は、本発明の実施形態に関する特徴を例示する添付の図面を参照し、以下に詳細に説明する記載から明らかである。この説明は、本発明を限定することを意図するものではない。本発明は、添付の特許請求の範囲によってのみ規定される。
【図面の簡単な説明】
【0030】
本発明の種々の実施形態に関し、以下、図面を参照して詳細に説明する。図面は、本発明の典型的な、または、例としての実施形態を示すことのみを目的とするものであり、本発明の理解を容易にするために提供するもので、本発明の範囲または適応性を定めることを考慮したものではない。なお図面は、描写の明瞭さ、および容易性のために、縮尺を一定としたものでないことに留意されたい。
【0031】
【図1】本発明に係るデジタル信号処理方法の一実施形態のブロック図である。
【図2】本発明に係るデジタル信号処理方法の一実施形態に使用されるローシェルフフィルタの効果を示す図である。
【図3】ハイパスフィルタおよびローパスフィルタを使用して、ローシェルフフィルタを生成する方法の説明図である。
【図4】本発明に係るデジタル信号処理方法の一実施形態において使用されるハイシェルフフィルタの効果を示す図である。
【図5】本発明に係るデジタル信号処理方法の一実施形態において使用されるベルフィルタの周波数応答の説明図である。
【図6】本発明に係るデジタル信号処理方法の一実施形態において使用されるグラフィックイコライザの一実施形態のブロック図である。
【図7】ミトラ−レガリア実現を用いたフィルタの構成方法を示すブロック図である。
【図8】本発明に係るデジタル信号処理方法の一実施形態において使用できるマグニチュード相補ローシェルフフィルタの効果を示す説明図である。
【図9】本発明に係るデジタル信号処理方法の一実施形態において使用されるマグニチュード相補ローシェルフフィルタを実装したブロック図である。
【図10】本発明に係るデジタル信号処理方法の一実施形態において使用されるコンプレッサの静的伝達特性(出力レベルと入力レベルとの関係)の説明図である。
【図11】本発明に係るデジタル信号処理方法の一実施形態において使用される二次伝達関数を実装する直接形態タイプ1のブロック図である。
【図12】本発明に係るデジタル信号処理方法の一実施形態において使用される二次伝達関数を実装する直接形態タイプ1のブロック図である。
【図13】本発明に係るデジタル信号処理方法の一実施形態において使用されるグラフィックイコライザのブロック図である。
【図14】本発明に係るデジタル信号処理方法の一実施形態における複数のフィルタ係数を有するグラフィックイコライザを設定するためのフローチャートである。
【図15】本発明に係るデジタル信号処理方法の一実施形態において、前記グラフィックイコライザを設定する1つ以上のプロファイルを選択するためのグラフィカルユーザインタフェースの例を示す図である。
【0032】
図は、本発明を包括し、または制限することを意図するものではない。本発明は、変更および修正ができ、また、特許請求の範囲、およびそれと等価なものによってのみ制限されることに留意すべきである。
【発明を実施するための形態】
【0033】
本発明は、以下に説明する特定の手順、組み合わせ、材料、製造技術、用途および応用に制限されるものではなく、変更できるものであることに留意すべきである。また、以下において使用する用語は、特定の実施形態を説明することのみを目的とし、本発明の要旨を制限することを意図するものでないことに留意すべきである。以下の記載、および付加された実施形態で使用されるように、単数形である「1つの」(a、an)および「前記」(the)は、文脈で明確な断りがない限り、複数をも含むものである。従って、例えば、「音響機器」は、1つ以上の音響機器を言うものであり、当業者に公知の等価物を含んでいる。同様に、他の例において、「ステップ」、「手段」は、1つ以上のステップまたは手段を意味し、サブステップと補助的な手段を含むことがある。使用されている全ての接続詞は、可能な限り、最も包括的な意味で理解するべきである。従って、「または」という用語は、文脈で特に断りがなければ、論理的な「排他的or」ではなく、論理的な「or」を意味するものと理解されるべきである。近似を表すように解釈されることができる言語は、文脈で特に断りがなければ、その通りに理解されるべきである。
【0034】
他に規定がなければ、ここで使用されている全ての技術的および科学的用語は、本発明が属する技術の当業者により共通に理解されている意味と同じ意味を有する。好ましい方法、技術、装置、材料について説明するが、ここで説明されているものと類似または等価の任意の方法、技術、装置または材料は、本発明の実施または検査で使用することができる。ここで説明されている構造は、このような構造の機能的等価物も含むものである。
【0035】
[1.0 概要]
最初に、線形の時間的に不変なシステムについてのいくつかのバックグラウンドが有用である。入力x[k]と出力y[k]を有する線形の時間的に不変(LTI)のN次の離散時間(discrete-time)フィルタは、次の差分方程式のようになる。
【0036】
【数1】

【0037】
ここで、係数{b0,b1,...,bN,a1,a2,...,aN}は、フィルタが所望の特徴を有するように選択される(ここで、所望の項は、時間領域特性または周波数領域特性を示すことができる。)。
【0038】
上記の差分方程式は、値が次式により与えられるインパルス関数δ[k]によって励起することができる。
【0039】
【数2】

【0040】
信号δ[k]が、上記の差分方程式により示されるシステムに適用される場合、その結果は、インパルス応答h[k]となる。システム理論からよく知られた結果として、インパルス応答h[k]は、任意の入力信号に対するLTI離散時間系の特性を、単独で完全に特徴付ける。すなわち、h[k]が既知であれば、入力信号x[k]に対する出力信号y[k]は、畳み込みとして知られている演算により得ることができる。形式上、h[k]とx[k]では、応答y[k]は、次式のように計算することができる。
【0041】
【数3】

【0042】
z変換におけるいくつかのバックグラウンドも有用である。時間領域と周波数領域との関係は、z変換として知られている式により与えられる。インパルス応答h[k]により記述されるシステムのz変換は、関数H(z)として規定できる。
【0043】
【数4】

【0044】
ここで、zは、実数部および虚数部の両者を有する複素変数である。複素変数が複素平面の単位円(すなわち、[z]=1の関係により説明される領域)に限定されると、その結果は、次式のような極座標形式で記述できる複素変数である。
【0045】
【数5】

【0046】
離散時間フーリエ変換のいくつかのバックグラウンドも有益である。極座標形式で記述されるzにより、単位円へのz変換の限定は、離散時間フーリエ変換(DTFT)として知られており、次式により与えられる。
【0047】
【数6】

【0048】
特に、所定の周波数の正弦曲線により励起される場合、システムがどのように動作するのかが興味深い。LTI系の理論からの最も重要な結果の1つは、正弦曲線がこのようなシステムの固有関数であることである。これは、正弦曲線sin(θ0k)に対するLTI系の定常状態の応答は、また、振幅および位相のみが入力と異なる同じ周波数θ0の正弦曲線であることを意味する。実際、LTI系の定常状態の出力yss[k]は、駆動され、入力x[k]=sin(θ0k)が与えられる場合、次式により与えられる。
【0049】
【数7】

【0050】
最後に、周波数応答におけるいくつかのバックグラウンドが必要とされる。上記の式は、正弦曲線により駆動されるときのLTI系の定常状態の応答が同じ周波数の正弦曲線であり、その周波数のDTFTの大きさによりスケーリング(scale)され、その周波数のDTFTの位相により、時間がオフセットされることを示している点で重要である。本発明は、定常状態の応答の振幅に最も関心がある。DTFTは、LTI系が正弦曲線により駆動される場合、出力対入力の相対的な大きさを与える。任意の入力信号は、正弦曲線の線形の組合せ(フーリエ分解定理)として表されるため、DTFTは、随意選択的な入力信号に対する応答を与える。定性的には、DTFTは、システムの出力に現れる所定周波数の信号量の有意な尺度を与えるDTFTの大きさをプロットすることにより、システムが入力周波数の範囲にどのように応答するのかを示す。この理由から、DTFTは、システムの周波数応答として一般的に知られている。
【0051】
[2.0 デジタル信号処理]
図1は、本発明の一実施形態に係る方法100の一例であるデジタル信号処理の流れを示す。図1において、方法100は、次のステップを含んでいる。すなわち、入力ゲイン調節部101、第1ローシェルフフィルタ102、第1ハイシェルフフィルタ103、第1コンプレッサ104、第2ローシェルフフィルタ105、第2ハイシェルフフィルタ106、グラフィックイコライザ107、第2コンプレッサ108、および出力ゲイン調節部109を含んでいる。
【0052】
一実施形態では、デジタル信号処理方法100は、入力として、入力音響信号110を取得し、ステップ101〜109の処理を行い、出力として、出力音響信号111を提供することができる。一実施形態では、デジタル信号処理方法100は、限定されるものではないが、デジタル信号プロセッサ、またはDSPのようなコンピュータチップ上で実行可能である。一実施形態では、このようなチップは、限定されるものではないが、ラジオ、MP3プレーヤ、ゲームステーション、携帯電話、テレビ、コンピュータ、または拡声装置のような、より大きな音響機器の一部とすることができる。このような一実施形態では、デジタル信号処理方法100は、音響機器から出力される前の音響信号に対して行うことができる。このような実施形態では、デジタル信号処理方法100は、ソース選択部を通過した後であって、音量制御部を通過する前の音響信号に対して行うことができる。
【0053】
一実施形態では、ステップ101〜109の処理は、参照符合の番号順に行うことができる。しかし任意の順序で行ってもよい。一実施形態では、ステップ101〜109の処理は、排他的に行うことができるが、他の実施形態では、他のステップの処理を同様にして行うことができる。一実施形態では、各ステップ101〜109の処理を行うことができるが、他の実施形態では、1つ以上のステップを省略することができる。
【0054】
一実施形態では、入力ゲイン調節部101は、入力音響信号110を、デジタル信号処理方法100の次の内部点におけるデジタルオーバーフローを防ぐレベルにするため、所望のゲイン量を提供する。
【0055】
一実施形態では、各ローシェルフフィルタ102、105は、コーナ周波数と呼ばれる、ある周波数を超える全ての周波数で0dBの公称ゲインを有するフィルタである。コーナ周波数よりも低い周波数では、ローシェルフフィルタは、そのローシェルフフィルタがブーストモードかカットモードかにより、それぞれ±GdBのゲインを有する。これは、図2に示されている。
【0056】
図2は、本発明の一実施形態により実行されるローシェルフフィルタの効果を示す。図2に示すように、ローシェルフフィルタの目的は、コーナ周波数より低い全ての周波数を固定量であるGdBだけブーストするかカットする一方、コーナ周波数を超える全ての周波数を変更しない状態にすることである。0dB点は、所望の1000Hzよりも僅かに高いことにも注意すべきである。コーナ周波数で−3dBの応答を有するように、カットモードでローシェルフフィルタを規定することは、標準的である。一方、ブーストモードのローシェルフフィルタは、コーナ周波数の応答がG−3dB、すなわち、最大のブーストから3dB下がるように規定される。実際、シェルフフィルタを作成するための全ての教科書の公式は、このような応答になる。これは、ある量の非対称を意味する。ブーストまたはカットのほぼ全ての値Gに対して、カットおよびブーストのローシェルフフィルタは、互いに鏡像にならない。これは、本発明により解決される必要があり、フィルタの実装に対する革新的な方法を必要とする。
【0057】
ここで、非対称を無視すると、ローシェルフフィルタを生成する標準的な方法は、ハイパスフィルタおよびローパスフィルタの加重和である。例えば、−GdBのゲインと1000Hzのコーナ周波数とを有するカットモードのローシェルフフィルタの場合を考える。図3は、−GdBによりスケーリングされる1000Hzのカットオフ周波数を有するハイパスフィルタと、1000Hzのカットオフ周波数を有するローパスフィルタとを示す。直列で適用されるこれらの2つのフィルタの統合効果は、図2のローシェルフフィルタのようになる。実際、ブーストまたはカットのない状態からGdBのブーストまたはカットの状態への転移の急峻さにおいて、いくつかの制限がある。図3は、この制限を示し、1000Hzで示されるコーナ周波数と、ブーストまたはカットの所望のGdBとは、1000Hzよりも低い特定の周波数まで実現されない。本発明の全てのシェルフフィルタは、一次シェルフフィルタであり、通常、これらが一次有理伝達関数により表せられることに留意すべきである。
【0058】
【数8】

【0059】
いくつかの実施形態では、各ハイシェルフフィルタ103、106は、ローシェルフフィルタの鏡像にすぎない。すなわち、コーナ周波数よりも低い全ての周波数は、変更されない状態であり、コーナ周波数を超える周波数は、GdBでブーストまたはカットされる。急峻さと非対称に関する同じ仮出願は、ハイシェルフフィルタに適用される。図4は、本発明の一実施形態により実行されるハイシェルフフィルタの効果を示す。図4には、1000Hzのハイシェルフフィルタが示されている。
【0060】
図5は、本発明の一実施形態に係る方法100により実行されるベルフィルタの一例の周波数応答を示す。図5に示すように、各二次フィルタは、固定された中心周波数でベル型のブーストまたはカットを達成する。F1(z)は30Hzを中心とし、F11(z)は16000Hzを中心とし、他のフィルタは、約1オクターブの間隔でその間に中心がある。図5には、ベル型のフィルタは、1000Hzを中心として示されている。フィルタは、中心周波数1000Hzよりも上下の周波数で0dBの公称ゲインと、1000Hzで−GdBのゲインと、1000Hzの周りの領域でベル型の応答特性とを有する。
【0061】
フィルタの形状は、単一のパラメータ、すなわち、Q値(quality factor)により特徴付けられる。Q値は、フィルタの中心周波数と、図に示されている3−dBの帯域幅Bとの比、すなわち、フィルタ応答が−3dBの点を交差する2つの周波数間のHzの差として規定される。
【0062】
図6は、本発明の一実施形態に係るグラフィックイコライザ600のブロックの一例を示す。図6を参照すると、グラフィックイコライザ600は、11個の二次フィルタF1(z)、F2(z)、…、F11(z)の縦続接続されたバンクからなっている。一実施形態では、(図1に示されているような)グラフィックイコライザ107は、グラフィックイコライザ600として実装される。
【0063】
本発明の11個の各二次フィルタは、次式に類似する式から計算することができる。
【0064】
【数9】

【0065】
このような式には、1つの問題がある。すなわち、上記の5つの各係数{b0,b1,b2,a1,a2}は、Q値およびゲインGに直接依存する。このことは、フィルタが調節可能であること、すなわち、変数QおよびGを有することを意味し、全ての5つの係数は、実時間で再計算されなければならない。このような計算は、グラフィックイコライザ107を実行するのに使用可能なメモリを容易に消費し、許容できない過剰な遅延または誤りの問題を生じる可能性があり、問題である。この問題は、ミトラ−レガリア実現(Mitra-Regalia Realization)を使用することにより回避することができる。
【0066】
デジタル信号処理(DSP)の理論から得られる非常に重要な結果は、デジタル信号処理方法100で使用されるフィルタを実行するために使用される。この結果は、フィルタ(特に、デジタル信号処理方法100で使用されるフィルタ)の広い多様性が、全通過フィルタと入力からのフィードフォワード分岐との加重和に分解できることを示している。この結果の重要性は、明白である。とりあえず、二次伝達関数H(z)が、Q値およびサンプリング周波数Fsを有し、fcを中心とするベルフィルタを次式によって表すために実行されると仮定する。
【0067】
【数10】

【0068】
補助的な量k1、k2は、次式により規定することができる。
【0069】
【数11】

【0070】
また、伝達関数A(z)は、次式により規定することができる。
【0071】
【数12】

【0072】
A(z)は、全通過フィルタであることを確認することができる。このことは、A(z)の振幅が全ての周波数で一定であり、位相だけが周波数の関数として変化することを意味している。A(z)は、各ベル型フィルタの構成要素として使用することができる。以下に非常に重要な結果を示す。
【0073】
【数13】

【0074】
このことは、ミトラ−レガリア実現の最も重要な点である。調整可能なゲインを有するベルフィルタは、ゲインGを含むことを非常に明確な方法で示すために実行することができる。このことは、図7に示されている。図7は、本発明の一実施形態に係るミトラ−レガリア実現を使用して構成されたフィルタの例を示している。
【0075】
このような非直感的な方法で、フィルタを分解する非常に妥当な理由がある。上記の式を参照すると、ゲインGが変更されるとき(すなわち、グラフィックEQの「スライダ(slider)」の1つが動かされるとき)、係数aおよびbの全てを常に再計算する必要があることは分かると思う。係数aおよびbに対して行われる必要のある計算は示されていないが、これらは非常に複雑で時間がかかり、実時間でこれらを再計算するのは、実際的とは言えない。しかしながら、典型的なグラフィックEQでは、ゲインGおよびQ値を一定に維持し、また、ゲインGだけを変化させることができる。このことは、直ちに上記の式の注意を喚起する。上記の式から、A(z)がゲインGに何ら依存せず、Qおよび中心周波数fcが固定された状態であれば(グラフィックEQフィルタで行われるように)、k1およびk2は、ゲインGによらず固定された状態であることに留意しなければならない。従って、これらの変数は、一度計算されれば十分である。ゲイン変数の計算は、実時間で2つの簡単な量を変化させることにより達成することができる。
【0076】
【数14】

【0077】
これらは非常に簡単な計算であり、いくつかのCPUサイクルだけを必要とする。これは、全通過伝達関数A(z)を実行する方法の問題のみを残し、やや些細な課題である。従って、グラフィックイコライザのバンクの全体は、それぞれが自己のミトラ−レガリア実現を介して実行される11個の縦続接続されたベルフィルタから構成される。
【0078】
【数15】

【0079】
この式から、グラフィックイコライザのバンク全体は、一度だけ計算されてメモリに記憶される必要のある、全部で22個の固定された係数に依存することが分かる。グラフィックイコライザの「調節」は、パラメータG1、G2、…、G11を調節することにより達成される。このことを概略的な形式として示すため、図6を参照する。ミトラ−レガリア実現は、デジタル信号処理方法100が使用される種々のフィルタで何度も使用される。また、ミトラ−レガリアは、シェルフフィルタの実行に有用である。ここで、シェルフフィルタは、一次フィルタを使用するため、より簡単である。最終的な結果として、シェルフフィルタは、単一の全通過パラメータkおよびゲインGにより特徴付けられる。ベルフィルタに関しては、シェルフフィルタは、固定されたコーナ周波数を有し(実際、これらの全ては、1kHzのコーナ周波数を有する。)、帯域幅も固定される。全部で4個のシェルフフィルタは、簡単に次式により完全に示される。
【0080】
【数16】

【0081】
上述したように、フィルタがブーストしているときと、フィルタがカットしているときとで、従来のシェルフフィルタの応答には、非対称が存在する。これは、既に説明したように、カットするときよりもブーストするときの方が、−3dBの点に対して異なる規定を有する設計技術による。デジタル信号処理方法100は、相互に鏡像であるフィルタH1(z)およびH3(z)に依存する。同じことがH2(z)およびH4(z)にも言える。これは、ブーストするシェルフフィルタの特別なフィルタ構造の使用を導く。1つは、図8に示すように、フィルタH1、H3およびH2、H4に対してほぼ完全な相殺を導く。このタイプの周波数応答は、マグニチュード相補(magnitude complementary)として知られている。この構成は、本発明に特有のものである。一般に、任意のフィルタH(z)に対して相補的な大きさの応答を有するフィルタを得ることは、簡単な数学的事項である。フィルタH1(z)は、確かに必要条件を満たすが、安定した、または、実行可能なzの関数ではない。どの場合も、解は、単なる数学的興味があるだけであり、実用上役に立たない。これは、従来のシェルフフィルタの場合である。上記の式は、全通過フィルタからベルフィルタを生成する方法を示す。これらの式は、一次全通過フィルタA(z)で開始するシェルフフィルタを構成するため、同等に良好に適用される。ここで、
【0082】
【数17】

【0083】
であり、αは、次のように選択される。
【0084】
【数18】

【0085】
ここで、fcは、所望のコーナ周波数であり、Fsは、サンプリング周波数である。上記の式を適用し、項を並べ替えると、これは、以下のように表すことができる。
【0086】
【数19】

【0087】
これは、ローシェルフフィルタの式である。(ハイシェルフフィルタは、項(1−G)を項(G−1)に変更することで得られる。)。H(z)の逆数は、以下の結果となる。
【0088】
【数20】

【0089】
この式は、遅延のないループを含み、従来の状態変数方法によって実行できないことを意味するため、問題である。幸いにも、遅延のないループを有する有理関数の実行方法を示したシステム理論によるいくつかの最近の結果がある。フォンタナおよびカジャライネン(Fontana and Karjalainen)は、各ステップが時間的に2つの「サブステップ」に「分割」できることを示している。
【0090】
図9は、本発明の一実施形態に係るマグニチュード相補ローシェルフフィルタの一例を示す。図9に示すように、第1サブステップ(「サブサンプル1」と付されている)の間、フィルタA(z)に0の入力を与え、その出力l0[k]を計算する。同じサブサンプルの間、l0[k]の値を使用して出力y[k]を計算する。これは、直前の式から以下のように行うことができる。
【0091】
【数21】

【0092】
図9から、これらの2つの計算は、スイッチが「サブサンプル1」の位置にある場合に対応することが分かる。次に、スイッチは、「サブサンプル2」の位置に入れられる。残りの処理は、フィルタA(z)の内部状態を更新することである。従来と異なるこのフィルタ構造は、11の完全なマグニチュード相補をもたらす。これは、以下の方法により本発明に有効に使うことができる。すなわち、デジタル信号処理方法100のシェルフフィルタが「カット」モードの場合、次式を使用することができる。
【0093】
【数22】

【0094】
一方、デジタル信号処理方法100のシェルフフィルタが「ブースト」モードの場合、次式は、「カット」モードで使用されるゲインGと同じ値を使用することができる。
【0095】
【数23】

【0096】
これは、図8にそれぞれ示すように、別のフィルタの完全な鏡像であるシェルフフィルタをもたらす。これは、デジタル信号処理方法100で必要とされるものである。(注:上述の式は、(1−G)/2の項の符合を変更することにより、ハイシェルフフィルタを生成する式とすることができる。)。図8は、本発明の一実施形態により実行されるマグニチュード相補ローシェルフフィルタの効果を示す。
【0097】
各コンプレッサ104、108は、信号のピークレベルと、その平均レベルとの比を減少させ、信号のダイナミックレンジを変更するために設計されたダイナミックレンジコンプレッサである。1つのコンプレッサは、4つの量により特徴付けられる。すなわち、アタック時間Tatt、解除時間Trel、閾値KTおよび比rである。簡単に説明すると、信号のエンベロープは、信号レベルのおおよその「外形」を与えるアルゴリズムにより追跡される。レベルが閾値KTを超えると、Tattに等しい時間、コンプレッサは、閾値KTを超える全てのdBに対して、比rdBだけ信号のレベルを減少させる。解除時間Trelに等しい期間、信号のエンベロープがKTよりも下がると、コンプレッサは、レベルの減少を停止させる。図10は、本発明の一実施形態により実行されるコンプレッサの静的伝達特性(出力レベルと入力レベルとの関係)を示す。
【0098】
静的伝達特性を厳密に調べることが有益である。時間kにおける信号のレベルL[k]が計算されていると仮定する。有益な目的のため、1つの単一静的レベルLを考える。レベルLがコンプレッサのトリガ閾値KTよりも低ければ、コンプレッサは、何も行わず、信号が変更されないことを許容する。一方、レベルLがKTよりも大きければ、コンプレッサは、レベルLがKTを超えることで、全てのdBに対して入力信号をrdBだけ減衰させる。
【0099】
LがKTよりも大きく、20・log10(L)>20・log10(KT)である例について考察することが有益である。このような例では、過剰なゲイン、すなわち、レベルが閾値を超過するdBの量は、gexcess=20・log10(L)−20・log10(KT)である。コンプレッサが過剰なゲインの全てのdBで入力をrdBだけ減衰させるとき、ゲイン減少gRは、次のように表される。
【0100】
【数24】

【0101】
この式から、20・log10(L)=gR・20・log10(x)により与えられるコンプレッサの出力yでは、所望の出力と入力との関係が満たされることが導かれる。
【0102】
対数の逆関数としてこの式を線形変換することにより、以下のドメインが得られる。
【0103】
【数25】

【0104】
この式は、次の式に等しい。
【0105】
【数26】

【0106】
コンプレッサアルゴリズムの最も重要な部分は、信号のレベルの有意義な評価を決定することである。これはかなり簡単な方法で実現される。すなわち、信号の絶対値の実行中の「積分(integration)」が維持され、レベルが積分される割合が所望のアタック時間により決定される。信号の瞬間的なレベルが現在の積分レベルより下がると、積分レベルは、解除時間により決定された割合で下がることが許容される。アタック時間Tattおよび解除時間Trelが与えられると、レベルL[k]の追跡を維持するために使用される式は、次のようになる。
【0107】
【数27】

【0108】
上述したように、レベル計算のあらゆる点において、計算されたL[k]が閾値KTと比較され、L[k]がKTよりも大きければ、入力信号x[k]は、レベルが閾値を超える量に比例する量によりスケーリングされる。比例定数は、コンプレッサ比rに等しい。大量の数学的操作の後、コンプレッサの入力、出力間の以下の関係が設定される。
【0109】
上述の式で計算されたレベルL[k]を用いて、量Gexcessは、以下のように計算される。
【0110】
【数28】

【0111】
これは過剰ゲインの量を表している。過剰ゲインが1よりも小さければ、入力信号は変更されず、出力まで通過する。過剰ゲインが1を超過した場合には、ゲイン減少GRは、次式により計算される。
【0112】
【数29】

【0113】
次いで、入力信号は、ゲイン減少GRによりスケーリングされ、出力に送られる。
【0114】
【数30】

【0115】
この手順を介して、入力信号のレベルが1dB増加する毎に、レベルが1/rdB増加する出力信号が生成される。
【0116】
実際、あるコンピュータチップは、実時間での分割が不得手であり、上記の式におけるKT-1の逆数の計算には、時間がかかることがある。KTは、既知であり、ユーザがそれを変更したときにのみ変更されるため、予め計算されたKT-1の値のテーブルは、メモリに記憶され、必要に応じて使用することができる。同様に、上記の式におけるGRを計算する指数演算は、実時間で行うことが極めて困難であるため、予め計算された値を近似として使用することができる。量GRは、Gexcessが1よりも大きいときのみ問題になるため、例えば、GR=1からGR=100の整数値で予め計算されたGRの100の値のリストは、比rの全ての可能な値に対して生成することができる。(ほぼそれらの全てである)GRの非整数値に対しては、GRを計算する上記の式の量は、次の方法で近似することができる。Gexcessが、Gexcessの最も近い積分値を超える量をinterpとする。換言すると、以下のとおりである。
【0117】
【数31】

【0118】
R,0およびGR,1を予め計算された値とする。
【0119】
【数32】

【0120】
次いで、GRを近似計算するため、以下のように線形補間を使用することができる。
【0121】
【数33】

【0122】
Rの真の値と上記の式の近似との間の誤差は、本発明の目的に対して重要でないことが了解できる。さらに、GRの近似値の計算は、少数の計算サイクルと、予め計算されたテーブルからの数回の読み取りとだけを必要とする。一実施形態では、比rの6つの異なる値と、Gexcessの100の整数点との表がメモリに記憶されている。このような実施形態では、メモリ全体の使用量は、メモリの600ワードだけであり、GRの真の値を直接計算するのに必要な数100の計算サイクルよりもはるかに好ましい。このことは、本発明の大きな利点である。
【0123】
デジタル信号処理方法100の各デジタルフィルタは、任意の1つの種々の潜在的なアーキテクチャまたは実現方法を使用して実行することができる。それぞれは、複雑性、スループットの速度、係数感度、安定性、固定点のふるまい、その他の数値的考慮に関して、トレードオフを有する。特定の実施形態では、タイプ1の直接型アーキテクチャ(DF1)として知られる簡単なアーキテクチャを使用することができる。DF1アーキテクチャは、多数の所望の特性を有するが、問題となる差分方程式、およびフィルタの伝達関数に対する明白な対応は少しもない。デジタル信号処理方法100における全てのデジタルフィルタは、一次または二次のいずれかである。
【0124】
初めに、二次フィルタを詳細に調べる。上述したように、二次フィルタで実行される伝達関数は、次式により与えられる。
【0125】
【数34】

【0126】
これは、以下の差分方程式に対応する。
【0127】
【数35】

【0128】
図11は、本発明の一実施形態に係る二次フィルタのDF1アーキテクチャを示す。図11に示すように、このフィルタ構造の乗算係数は、上記の伝達関数および差分方程式の係数に対応する。記号z-1で表されるブロックは、遅延レジスタであり、その出力は、計算のあらゆるステップで必要とされる。これらのレジスタの出力は状態変数と呼ばれ、デジタル信号処理方法100のいくつかの実施形態において、それらにメモリが割当てられる。デジタルフィルタの出力は、以下のように計算される。
【0129】
先ず、状態変数の全てが0にセットされる。換言すると、次のとおりである。
【0130】
【数36】

【0131】
時間k=0において、図11に従って以下の計算が行われる。
【0132】
【数37】

【0133】
次いで、レジスタは、x[k−1]で表されるレジスタがx[0]を保持し、x[k−2]で表されるレジスタがx[−1]を保持し、y[k−1]で表されるレジスタがy[0]を保持し、y[k−2]で表されるレジスタがy[−1]を保持するように更新される。
【0134】
時間k=1において、次の計算が行われる。
【0135】
【数38】

【0136】
次いで、レジスタは、x[k−1]で表されるレジスタがx[1]を保持し、x[k−2]で表されるレジスタがx[0]を保持し、y[k−1]で表されるレジスタがy[1]を保持し、y[k−2]で表されるレジスタがy[0]を保持するように再度更新が完了する。
【0137】
さらに、この処理は、全ての時間kに対して繰り返し行われる。新しい入力x[k]が取り込まれ、新しい出力y[k]が計算され、状態変数が更新される。
【0138】
一般的には、次のデジタルフィルタリング演算は、係数b0、b1、b2、a1、a2と、状態変数x[k−1]、x[k−2]、y[k−1]、y[k−2]とを使用して、データの流れx[0]、x[1]、x[2]、…について行われる乗算および加算の組と見ることができる。
【0139】
特定の状態においてこれを明らかにすることは、有益である。グラフィックイコライザ107の基本的な構成要素を構成するベルフィルタを調べることは、有益である。上述したように、ベルフィルタは、サンプリング周波数Fs、中心周波数fcにおけるゲインGおよびQ値を用いて、次式により実行される。
【0140】
【数39】

【0141】
ここで、A(z)は、次式により規定される全通過フィルタである。
【0142】
【数40】

【0143】
ここで、k1およびk2は、中心周波数fcおよびQから次式により計算される。
【0144】
【数41】

【0145】
値k1およびk2は、予め計算され、メモリのテーブルに記憶される。Qおよび中心周波数fcの特定の値に対するフィルタを実行するため、k1およびk2の対応する値がこのテーブルから得られる。アルゴリズムでは、中心周波数fcの11個の特別な値と、Qの16個の特別な値とが存在する。フィルタは、単一のサンプリング周波数Fsで動作し、k2だけがfcおよびQの両者に依存するため、k1およびk2の係数の組に対して要求される全体的な記憶容量は、非常に小さい(最大でも、11×16×2ワード)。
【0146】
上記のA(z)の式を見ると、係数は対称的である。すなわち、式は、以下のように書き替えることができる。
【0147】
【数42】

【0148】
上記の式で与えられたA(z)を見ると、差分方程式が示唆される。
【0149】
【数43】

【0150】
この式は、次のように並べ替えることができる。
【0151】
【数44】

【0152】
特定の実施形態では、状態変数は、配列xv[]およびyv[]に記憶することができる。xv[0]はx[k−2]に対応し、xv[1]はx[k−1]に対応し、yv[0]はy[k−2]に対応し、yv[1]はy[k−1]に対応する。次いで、以下のコード部分は、全通過フィルタの単一のステップを実行する。
【0153】
【数45】

【0154】
ここで、ループは、上記の各式として、全通過フィルタの周辺を包含しなければならない。これは、次のコードにより明らかに実現される。
【0155】
【数46】

【0156】
さらに簡単に言えば、上述した2つコード部分は、以下のような単一のルーチンとして組み合わせることができる。
【0157】
【数47】

【0158】
ここで、一次フィルタについて詳細に調べる。これらのフィルタは、以下の伝達関数により記述することができる。
【0159】
【数48】

【0160】
この式は以下の差分方程式に対応する。
【0161】
【数49】

【0162】
図12は、本発明の一実施形態に係る一次フィルタに対するDF1アーキテクチャを示す。図12を参照すると、このフィルタ構造の乗算係数は、明らかに伝達関数および差分方程式の係数に対応している。デジタルフィルタの出力は以下のように計算される。
【0163】
先ず、全ての状態変数を0に設定する。換言すると、以下のようにする。
【0164】
【数50】

【0165】
時間kにおいて、図11に基づいて、次の計算が行われる。
【0166】
【数51】

【0167】
次いで、レジスタは、x[k−1]で表されるレジスタがx[0]を保持し、y[k−1]で表されるレジスタがy[0]を保持するように更新される。
【0168】
時間k=1において、次の計算が行われる。
【0169】
【数52】

【0170】
その後、レジスタは、x[k−1]で表されるレジスタがx[1]を保持し、y[k−1]で表されるレジスタがy[1]を保持するように再度更新が完了する。
【0171】
次いで、この処理は、全ての時間kに対して繰り返し行われる。すなわち、新しい入力x[k]が取り込まれ、新しい出力y[k]が計算され、状態変数が更新される。
【0172】
一般的には、次のデジタルフィルタリング演算は、係数b0、b1、a1と、状態変数x[k−1]、y[k−1]とを使用して、データの流れx[0]、x[1]、x[2]、…について行われる乗算および加算の組として見ることができる。
【0173】
図13は、本発明のデジタル信号処理方法の一実施形態で使用されるグラフィックイコライザ1300のブロック図である。種々の実施形態では、1つのプロファイルは、グラフィックイコライザ1300の設定に使用できる複数のフィルタイコライジング係数を備えることができる。ここで説明するように、グラフィックイコライザ1300は、複数のフィルタイコライジング係数により一旦設定されると(例えば、係数変更部)、複数の信号をイコライジングすることができる。グラフィックイコライザ1300のフィルタは、(例えば、所望のゲインの値を使用して)調節することができるが、グラフィックイコライザ1300のフィルタは、複数の信号をイコライジングする間、イコライジング係数の異なる組を用いて再設定する必要はない。
【0174】
種々の実施形態では、グラフィックイコライザ1300は、フィルタモジュール1302、プロファイルモジュール1304およびイコライジングモジュール1306を備える。グラフィックイコライザ1300は、11バンドのグラフィックイコライザ107を備えていてもよい。当業者は、グラフィックイコライザを任意のバンド数で構成可能なことを十分に理解することができる。
【0175】
フィルタモジュール1302は、任意の数のフィルタを備える。種々の実施形態では、フィルタモジュール1302を構成する複数のフィルタは、互いに並列に接続される。複数のフィルタのうち、1つ以上のフィルタは、異なる周波数で信号をフィルタリングするように設定することができる。いくつかの実施形態では、複数のフィルタは、二次ベルフィルタである。
【0176】
プロファイルモジュール1304は、プロファイルを受信するように設定される。プロファイルは、グラフィックイコライザのフィルタ(例えば、フィルタモジュール1302の複数のフィルタ)を設定するために使用できる複数のフィルタイコライジング係数(例えば、フィルタイコライジング係数変更部)を備える。いくつかの実施形態では、プロファイルは、ハードウエア(例えば、スピーカ)の特定のタイプまたはモデル、特定のリスニング環境(例えば、うるさいのか、静かなのか)、および/または、音響コンテンツ(例えば、音声、音楽または映画)を指定することができる。ハードウエアプロファイルのいくつかの例として、携帯電話、固定電話、コードレス電話、通信機器(例えば、無線機およびその他の2方向無線送受信機)、警察無線、音楽プレーヤ(例えば、Apple IPodおよびMicrosoft Zune)、ヘッドセット、イヤホーン、マイクロホーン等を指定するプロファイルを挙げることができる。
【0177】
例えば、プロファイルがハードウエアの特定のタイプまたはモデルを指定すると、そのプロファイルの複数のフィルタイコライジング係数は、ハードウエアの特定のタイプまたはモデルのための品質を改善するため、1つ以上の信号をイコライジングするグラフィックイコライザ1300を設定することができる。一例として、ユーザは、PCスピーカの特定のモデルに対して指定されるプロファイルを選択することができる。選択されたプロファイルの複数のフィルタイコライジング係数は、PCスピーカを介して出力するための信号をイコライジングするグラフィックイコライザ1300の設定に使用することができる。これにより、PCスピーカから出力されて把握される音質は、グラフィックイコライザ1300がこのように設定されない場合よりも高い品質を達成することができる。
【0178】
他の例として、ユーザは、マイクロホーンの特定のモデルに対して指定されるプロファイルを選択することができる。選択されたプロファイルの複数のフィルタイコライジング係数は、マイクロホーンから受信した信号をイコライジングするグラフィックイコライザ1300の設定に使用することができる。これにより、把握される音質を向上させることができる。
【0179】
また、1つ以上のリスニング環境に対して指定されるプロファイルがある。例えば、通話中の音声を明瞭にし、高ノイズ環境における音声や音楽を明瞭にし、および/または、リスナーの聞き取りを悪くする音声または音楽環境を改善するために指定されるプロファイルがある。さらに、音声、音楽および映画に関連する信号のためのプロファイルを含む異なる音響コンテンツのための個々のプロファイルがある。一例として、異なるタイプの音楽(例えば、二者択一な音楽であるジャズとクラシック)に対する異なるプロファイルがある。
【0180】
当業者であれば、音の向上または明瞭化が、音の改善された知覚に注意を向けることができることを十分に理解しうると思う。種々の実施形態では、プロファイルのフィルタイコライジング係数は、特定の音響コンテンツ(例えば、携帯メディアプレーヤ上での映画)を出力する特定の機器のための音の知覚を改善するように選択することができる。プロファイルにおける複数のフィルタイコライジング係数は、所望の音の出力、および/または品質に基づいて選択し、および/または、生成することができる。
【0181】
イコライジングモジュール1306は、プロファイルにおける複数のフィルタイコライジング係数を使用して、フィルタモジュール1302のフィルタを設定することができる。ここで説明するように、グラフィックイコライザ1300のフィルタは、ミトラ−レガリア実現を介して実行することができる。一例として、イコライジングモジュール1306がフィルタイコライジング係数によりフィルタを設定すると、フィルタの係数は、固定された状態に維持することができる(すなわち、フィルタは、複数の信号のイコライジング前、イコライジング中またはイコライジング後に、新しい係数により再設定されない。)。グラフィックイコライザ1300のフィルタは、新しいフィルタ係数により再設定されないが、フィルタは、ゲインの値(例えば、ゲイン変数)により周期的に調節される。さらに、イコライザフィルタを設定するためのゲインの値の計算は、既に説明したように、簡単な量を変化させることで達成することができる。
【0182】
また、イコライジングモジュール1306は、プロファイルのフィルタイコライジング係数により設定されたフィルタを使用して、複数の信号をイコライジングすることができる。一例として、イコライジングモジュール1306は、予め設定されているフィルタモジュール1302のイコライザフィルタを使用して、複数の周波数を含む第1信号をイコライジングする。同様にして、第2信号は、予めフィルタイコライジング係数により設定されているイコライザフィルタを使用してイコライジングすることができる。さらに、いくつかの実施形態では、イコライジングモジュール1306は、第2信号がイコライジングされる前に、イコライザフィルタを設定するためのゲインを調節する。
【0183】
いくつかの実施形態では、プロファイルは、1つ以上のシェルフフィルタ係数を備えることができる。ここで説明するように、1つ以上のシェルフフィルタは、一次フィルタを備えることができる。1つ以上のシェルフフィルタ(例えば、図1の第1ローシェルフフィルタ102、第1ハイシェルフフィルタ103、第2ローシェルフフィルタ105および第2ハイシェルフフィルタ106)は、プロファイル内のシェルフフィルタ係数により設定することができる。一例として、プロファイルは、コンピュータの特定のモデルの特定の内蔵スピーカに対して指定することができる。この例では、プロファイル内のシェルフフィルタ係数は、内臓スピーカの音質を改善しまたは向上させるシェルフフィルタを設定するのに使用することができる。当業者は、プロファイルが、音質の改善または向上のための任意のフィルタの設定に使用できる多数の異なるフィルタ係数を備えることができることを十分に理解できる。さらに、シェルフフィルタまたは任意のフィルタは、ここで説明したように、ゲインの値を用いて設定することができる。
【0184】
当業者は、事実上、モジュールが図13に示すモジュールの機能を遂行できることを十分に理解できる。モジュールの数は、任意である。モジュールは、ハードウエア、ソフトウエア、または、これらの組み合わせにより構成することができる。ハードウエアモジュールは、電気回路を含む任意のハードウエアの形態により構成することができる。いくつかの実施形態では、フィルタ電気回路は、フィルタモジュール1302と同じまたは類似の機能を遂行する。プロファイル電気回路は、プロファイルモジュール1304と同じまたは類似の機能を遂行することができる。イコライジング電気回路は、イコライジングモジュール1306と同じまたは類似の機能を遂行することができる。ソフトウエアモジュールは、ハードドライブ、RAM、フラッシュメモリ、CD、DVD等のような、コンピュータが読み取り可能な媒体内に記憶できる命令により構成することができる。ソフトウエアの命令は、方法を遂行するためのプロセッサにより実行することができる。
【0185】
図14は、本発明のデジタル信号処理方法の一実施形態において、複数のフィルタイコライジング係数によりグラフィックイコライザ1300を設定するためのフローチャートである。ステップ1402では、プロファイルモジュール1304は、複数のフィルタイコライジング係数を有するプロファイルを受信する。種々の実施形態では、デジタル機器のユーザは、利用可能なハードウエア、リスニング環境、および/または音響コンテンツに関連するプロファイルを選択することができる。デジタル機器は、メモリおよびプロセッサを有する任意の機器である。いくつかの例では、デジタル機器は、携帯電話、固定電話、コードレス電話、音楽プレーヤ、メディアプレーヤ、携帯端末、電子書籍(e-book)リーダ、ラップトップコンピュータ、デスクトップコンピュータ等により構成することができる。
【0186】
プロファイルは、予めデジタル機器(例えば、ハードドライブ、フラッシュメモリまたはRAM)に記憶され、ファームウエアから読み出され、または、通信ネットワーク(例えば、インターネット)からダウンロードすることができる。いくつかの実施形態では、異なるプロファイルをダウンロードして利用可能である。各プロファイルは、特定のハードウエア(例えば、スピーカやヘッドホーンのモデルおよび/またはタイプ)、リスニング環境(例えば、うるさい環境)、および/または、音響コンテンツ(例えば、音声、音楽または映画)に対して指定することができる。一例として、1つ以上のプロファイルを、製造者および/またはウエブサイトからダウンロードすることができる。
【0187】
ステップ1404では、イコライジングモジュール1306は、プロファイルからの複数のフィルタイコライジング係数により、グラフィックイコライザ1300のフィルタ(例えば、フィルタモジュール1302のイコライザフィルタ)を設定する。また、イコライジングモジュール1306または他のモジュールは、プロファイルに含まれる他の係数により1つ以上の他のフィルタを設定することができる。
【0188】
ステップ1406では、イコライジングモジュール1306は、第1信号を受信する。第1信号は、フィルタモジュール1302の予め設定されたイコライザフィルタによりイコライジングされる複数の周波数を備えることができる。
【0189】
ステップ1408では、イコライジングモジュール1306は、第1ゲイン(例えば、第1ゲインの値)を用いて、グラフィックイコライザ1300(例えば、フィルタモジュール1302のフィルタ)のフィルタを調節する。いくつかの実施形態では、ゲインは、スピーカに関連する。ゲインは、保存されている音の所望の特徴に関連させることができる。さらに、ゲインは、第1信号に関連させることができる。いくつかの実施形態では、イコライジングモジュール1306は、第1信号を受信する前にフィルタモジュール1302のフィルタを調節する。
【0190】
ステップ1410では、イコライジングモジュール1306は、第1信号をイコライジングする。種々の実施形態では、イコライジングモジュール1306は、プロファイルのフィルタイコライジング係数により設定されるとともに、ゲインが調節されたフィルタモジュール1302のイコライザフィルタにより、第1信号をイコライジングする。
【0191】
ステップ1412では、イコライジングモジュール1306は、第1信号を出力することができる。いくつかの実施形態では、第1信号は、スピーカ機器または記憶機器に出力させることができる。他の実施形態では、第1信号は、さらなる処理(例えば、1つ以上のコンプレッサおよび/または1つ以上のフィルタ)のために出力させることができる。
【0192】
ステップ1414では、イコライジングモジュール1306は、第2信号を受信する。ステップ1416では、イコライジングモジュール1306は、第2ゲインによりグラフィックイコライザ1300のフィルタを調節する。一例として、イコライジングモジュール1306は、さらに、フィルタイコライジング係数を使用して予め設定されたフィルタモジュール1302のフィルタを調節する。第2ゲインは、第1信号、第2信号、スピーカまたは音の特徴に関連させることができる。いくつかの実施形態では、このステップは、任意である。
【0193】
ステップ1418では、イコライジングモジュール1306は、グラフィックイコライザ1300により第2信号をイコライジングする。いくつかの実施形態では、イコライジングモジュール1306は、プロファイルのフィルタイコライジング係数により設定されるとともに、第1ゲインおよび/または第2ゲインにより調節されたフィルタモジュール1302のイコライザフィルタにより、第2信号をイコライジングする。ステップ1420では、イコライジングモジュール1306は、第2信号を出力することができる。
【0194】
当業者であれば、異なるプロファイルを信号処理中(例えば、音がスピーカから出力されている間)に適用できることを十分に理解できる。いくつかの実施形態では、ユーザは、処理中において、グラフィックイコライザ1300を設定するために使用されるフィルタイコライジング係数を含む第1プロファイルを選択することができる。設定されたグラフィックイコライザ1300の信号処理によって生じる変更または向上は、リスナーにより知覚することができる。また、ユーザは、グラフィックイコライザ1300を再設定するために使用される異なるフィルタイコライジング係数を含む第2プロファイルを選択することができる。また、ここで説明したように、再設定されたグラフィックイコライザ1300の信号処理によって生じる変更または向上は、リスナーにより知覚することができる。いくつかの実施形態では、リスナー(例えば、ユーザ)は、信号処理中に異なる様々なプロファイルを選択し、その差異を聞くことができる。その結果、リスナーは、好ましいプロファイルを決定することができる。
【0195】
図15は、本発明のデジタル信号処理方法の一実施形態において、グラフィックイコライザを設定するため、1つ以上のプロファイルを選択するグラフィカルユーザインタフェース1500の例を示す。いくつかの実施形態では、グラフィカルユーザインタフェース1500は、任意のデジタル機器のモニタ、スクリーンまたはディスプレイに表示させることができる。グラフィカルユーザインタフェース1500は、任意のオペレーティングシステム(例えば、Apple OS、Microsoft Windows(登録商標)またはLinux(登録商標))を使用して表示させることができる。また、グラフィカルユーザインタフェース1500は、Apple Itunesのような1つ以上のアプリケーションにより表示させることができる。
【0196】
グラフィカルユーザインタフェース1500は、任意である。種々の実施形態は、グラフィカルユーザインタフェースを使用できるか否かよらず、様々なハードウエア、およびソフトウエアのプラットフォーム上で遂行させることができる。一例として、いくつかの実施形態は、RIM Blackberryの通信機器上で遂行させることができる。他の例として、いくつかの実施形態は、Apple Itunesのようなコンピュータ上のアプリケーションで遂行させることができる。
【0197】
例えば、既存のメディアプレーヤやアプリケーションは、(例えば、プラグインまたは他のソフトウエアをダウンロードすることで)プロファイルを受信して設定し、フィルタイコライジング係数をグラフィックイコライザに適用することができる。一例として、Apple Itunesのプラグインの場合、ダウンロードされ、インストールされることができる。ユーザは、再生する音楽を選択することができる。音楽信号は、Apple Itunesから取り込まれ、(ユーザにより任意に選択される)1つ以上のプロファイルにより設定される1つ以上のフィルタとグラフィックイコライザとを使用して処理することができる。次いで、処理された信号は、処理を継続し、または、スピーカに出力するため、アプリケーション、および/またはオペレーティングシステムに戻すことができる。プラグインは、インストールの前にダウンロードし、および/または、復号することができる。プロファイルも復号することができる。いくつかの実施形態では、プロファイルは、テキストファイルにより構成することができる。アプリケーションは、ユーザに対して、アプリケーションの最小化、およびグラフィカルユーザインタフェース1500の表示をオプションとして提供することができる。
【0198】
いくつかの実施形態では、グラフィカルユーザインタフェース1500は、仮想メディアプレーヤと、ユーザが1つ以上のプロファイルを選択するための手段とを表示する。オン/オフボタン1502は、仮想メディアプレーヤを起動させることができる。
【0199】
内蔵スピーカボタン1504、デスクトップスピーカボタン1506、およびヘッドホーンボタン1508は、グラフィカルユーザインタフェース1500を介してユーザにより選択的に起動させることができる。ユーザが内蔵スピーカボタン1504、デスクトップスピーカボタン1506またはヘッドホーンボタン1508を選択的に起動させると、(例えば、ハードドライブ、ファームウエアのようなローカルメモリから)関連するプロファイルが読み出され、または、(例えば、通信ネットワークから)ダウンロードされる。次いで、複数の係数のフィルタイコライジング係数は、音の出力を変更するグラフィックイコライザを設定するために使用することができる。一例として、ヘッドホーンボタン1508に関連するプロファイルは、デジタル機器に操作可能に連結できるヘッドホーンの出力を調節し、変更し、向上させ、または、その他の修正を行うために設定されるフィルタイコライジング係数を備えることができる。
【0200】
音楽ボタン1510および映画ボタン1512は、グラフィカルユーザインタフェース1500を介して、ユーザがそれぞれを選択的に起動させることができる。内蔵スピーカボタン1504、デスクトップスピーカボタン1506およびヘッドホーンボタン150と同様に、ユーザが音楽ボタン1510または映画ボタン1512を選択的に起動させると、関連するプロファイルが読み出される。いくつかの実施形態では、関連するプロファイルは、音の出力を調節し、変更し、向上させ、または、その他の修正を行うグラフィックイコライザのフィルタを設定するために使用されるフィルタイコライジング係数を備えることができる。
【0201】
複数のプロファイルは、ダウンロードすることができる。また、1つのプロファイルの1つ以上のフィルタイコライジング係数は、音の出力を改善するため、他のプロファイルのフィルタイコライジング係数と連携することができる。これらは、当業者であれば十分に理解しうるところである。例えば、ユーザは、内蔵スピーカから出力される音を改善するため、第1プロファイルからのフィルタイコライジング係数により、グラフィックイコライザのフィルタを設定する内蔵スピーカボタン1504を選択することができる。また、ユーザは、内蔵スピーカから出力される音楽の音をさらに改善するため、第2プロファイルからのフィルタイコライジング係数により、グラフィックイコライザのフィルタイコライジング係数をさらに設定する音楽ボタン1510を選択することができる。
【0202】
いくつかの実施形態では、複数のプロファイルは、結合されない。例えば、ユーザは、内蔵スピーカから出力される音楽の音を改善または向上させるため、フィルタイコライジング係数を備える単一のプロファイルを読み出す内蔵スピーカボタン1504、および音楽ボタン1510を選択することができる。同様にして、ユーザがデスクトップスピーカボタン1506および音楽ボタン1510を起動させると、個々のプロファイルを読み出すことができる。ユーザが1つ以上のハードウエア、リスニング環境、および/またはメディアタイプを選択することに関連して、任意の数のプロファイルがあることは、当業者であれば十分に理解できる。
【0203】
巻き戻しボタン1514、再生ボタン1516、早送りボタン1518および状態表示部1520は、仮想メディアプレーヤの機能を表示することができる。一例として、ユーザは、(例えば、ここで説明したボタンを選択して)使用するプロファイルを選択した後、再生ボタン1516を介して、メディアファイル(例えば、音楽および/または映画)を再生することができる。同様にして、ユーザは、巻き戻しボタン1514を使用してメディアファイルを巻き戻し、早送りボタン1518を使用してメディアファイルを早送りさせることができる。状態表示部1520は、メディアファイルについての関連情報(例えば、アーティスト、メディアファイルの全再生時間、およびメディアファイルの再生残り時間)とともに、ユーザに対してメディアファイルの名前を表示することができる。状態表示部1520は、ユーザに対して任意の情報、動画または図形を表示することができる。
【0204】
種々の実施形態では、ここで説明した1つ以上の実施形態を遂行するプラグインまたはアプリケーションは、プラグインまたはアプリケーションが完全に機能する前に登録される必要がある。一例として、ユーザは、無料試用のものをダウンロードすることができる。試用バージョンは、信号処理を前の状態(例えば、音は、試用プログラムがダウンロードされる前の状態に戻すことができる。)に戻す前に、向上した音または音響で所定期間(例えば、1分)だけ再生することができる。いくつかの実施形態では、向上していない音または音響が他の所定期間(例えば、1、2分)再生され、次いで、予め設定されたグラフィックイコライザおよび/または他のフィルタを使用して、信号処理により再び音質を元の状態に向上させることができる。この処理は、歌曲が続く間、繰り返すことができる。プラグインまたはアプリケーションの登録が完了すると、プラグインまたはアプリケーションは、切り替えが繰り返されることなく信号を処理するように設定することができる。
【0205】
上述した式に戻って参照し、一次シェルフフィルタは、次式を適用して生成することができる。
【0206】
【数53】

【0207】
一次全通過フィルタA(z)は、次式で表される。
【0208】
【数54】

【0209】
αは、次式から選択される。
【0210】
【数55】

【0211】
cは、所望のコーナ周波数であり、Fsは、サンプリング周波数である。上記の全通過フィルタA(z)は、次式の差分方程式に対応する。
【0212】
【数56】

【0213】
全通過係数αをallpass_coefとして、方程式の項を入れ替えると、上記の方程式は、次式のようになる。
【0214】
【数57】

【0215】
この差分方程式は、以下に詳細に示すシェルフフィルタのコード実装に対応する。
【0216】
デジタル信号処理方法100の1つの特定のソフトウエア実装について、詳細に説明する。
【0217】
上述したように、入力ゲイン調節部101および出力ゲイン調節部109は、共に、以下のように実装される「scale」関数を使用して達成することができる。
【0218】
【数58】

【0219】
上述したように、第1ローシェルフフィルタ102および第2ローシェルフフィルタ105は、共に、以下に示すように実装される「low_shelf」関数を使用して達成することができる。
【0220】
【数59】

【0221】
この関数は、やや複雑であるため、その詳細な説明が相応である。先ず、関数を宣言する。
【0222】
【数60】

【0223】
「low_shelf」関数は、パラメータポインタとして、5つの異なる浮動小数点の配列を有する。配列xvおよびyvは、フィルタに対する「x」および「y」の状態変数を含む。シェルフフィルタが全て一次フィルタであるため、状態変数の配列は、長さの配列のみである。デジタル信号処理方法100で使用される各シェルフフィルタに対して、明瞭に区別できる「x」および「y」の状態変数がある。次に使用される配列は、特定のシェルフフィルタに関係するフィルタ係数「wpt」の配列である。wptは、3つの長さの配列を有し、その成分wpt[0]、wpt[1]およびwpt[2]は、次式のように示される。
【0224】
【数61】

【0225】
αは、全通過係数であり、Gは、シェルフフィルタゲインである。αの値は、コーナ周波数によってのみ決定されるため、全てのシェルフフィルタに対して同じである(このことに留意すべきである。また、デジタル信号処理方法100における4つの全てのシェルフフィルタは、1kHzのコーナ周波数を有する。)。ゲインGの値は、4つのシェルフフィルタ毎に異なる。
【0226】
配列「input」は、各シェルフフィルタに入力として供給される入力サンプルのブロックであり、フィルタリング処理の結果は、配列「output」に格納される。
【0227】
次の2つのコードの行
【0228】
【数62】

【0229】
は、図9からの量l0[k]であり、ループカウンタ変数iおよび補助数lのためのスペースを割り当てる。
【0230】
次のコードの行
【0231】
【数63】

【0232】
は、NSAMPLES回の全回数に従ったコードを実行する。ここで、NSAMPLESは、デジタル信号処理方法100で使用されるデータのブロック長である。
【0233】
これは、次の条件付きテストに従って継続される。
【0234】
【数64】

【0235】
上述した式を再び呼び出す。wpt[2]<0は、「カット」モードのシェルフフィルタに対応し、wpt[2]≧0は、「ブースト」モードのシェルフフィルタに対応している。シェルフフィルタがカットモードであれば、次のコードが実行される。
【0236】
【数65】

【0237】
値xy[0]は、単に状態変数x[k]であり、yv[0]は、yv[k]そのものである。上記のコードは、式を実装したものに過ぎない。
【0238】
【数66】

【0239】
シェルフフィルタがブーストモードであれば、次のコードが実行される。
【0240】
【数67】

【0241】
これは、次式を実行する。
【0242】
【数68】

【0243】
上述したように、第1ハイシェルフフィルタ103および第2ハイシェルフフィルタ106は、共に、次のように、実装される「high_shelf」関数を使用して達成することができる。
【0244】
【数69】

【0245】
ハイシェルフフィルタの実行は、実際、ローシェルフフィルタの実行と同じである。上記の2つの関数を比較すると、実質的な相違は、1つの係数の符号が異なるだけである。従って、プログラムの流れは、同じである。
【0246】
上述したように、グラフィックイコライザ107は、「ベル」フィルタ関数を11回連続して読み出して使用することで実行することができ、次のように実行される。
【0247】
【数70】

【0248】
関数bell()は、アーギュメントポインタとして、配列xv(「x」状態変数)、yv(「y」状態変数)、wpt(グラフィックEQパラメータG、k2、k1(l+k2)を含む。)、入力サンプル「input」のブロック、および、出力サンプルを格納するスペースを有する。上述したコードの部分の最初の4つのステートメントは、簡単な承認ステートメントであり、説明の必要はないと思う。
【0249】
forループは、NSAMPLES回実行される。ここで、NSAMPLESは、入力データのブロックのサイズである。次のステートメントは、次のとおりである。
【0250】
【数71】

【0251】
上述したように、上記のステートメントは、全通過フィルタの出力を計算する。次の4つのステートメントは、次のとおりである。
【0252】
【数72】

【0253】
は、x[k−1]に格納されている値をx[k−2]にシフトする。
【0254】
【数73】

【0255】
は、input[k]の値をx[k−1]にシフトする。
【0256】
【数74】

【0257】
は、y[k−1]に格納されている値をy[k−2]にシフトする。
【0258】
【数75】

【0259】
は、全通過フィルタの出力であるoutput[k]の値をy[k−1]にシフトする。最後に、ベルフィルタの出力は、次式により計算される。
【0260】
【数76】

【0261】
上述したように、第1コンプレッサ104および第2コンプレッサ108は、次のように実装される「compressor」関数を使用して実行することができる。
【0262】
【数77】

【0263】
compressor関数は、入力アーギュメントポインタとして、入力、出力およびwptの配列と、指数である整数とを有する。入力および出力の配列は、それぞれ入力データおよび出力データのブロックのために使用される。コードの最初の行
【0264】
【数78】

【0265】
は、関数の呼び出し間での信号レベルを維持する「level」という値に対して静的記憶域を割り当てる。これは、1つのデータのブロックを実行している間ではなく、プログラムが実行している全期間、レベルを連続的に追跡する必要があるためである。
【0266】
次のコードの行
【0267】
【数79】

【0268】
は、コンプレッサのアルゴリズムが計算している間、使用されるいくつかの量に対してメモリを一時的に割り当てる。これらの量は、ブロック毎に必要とされるだけであり、各関数を通過した後、消去することができる。
【0269】
次のコードの行
【0270】
【数80】

【0271】
は、配列wptの第3成分であるwpt[2]に格納されているコンプレッサの閾値の逆数を復号する。配列wptの他の成分は、アタック時間、解除時間およびコンプレッサ比を含む。
【0272】
次のコードの行は、コンプレッサループがNSAMPLES回繰り返されることを示す。次のコードの2行は、上述した式毎にレベル計算を実行する。このことから、以下の行
【0273】
【数81】

【0274】
は、拡張されたステートメントに等しいことに留意する。
【0275】
【数82】

【0276】
このステートメントは、アタック定数αattを格納するwpt[0]と、解除定数αrelを記憶するwpt[1]とを有する上述した必要な式を実行するために必要とされる。
【0277】
次に、ゲインの減衰GRは、1に等しいと仮定することができる。そこで、比較処理
【0278】
【数83】

【0279】
が実行される。これは、level>T、すなわち、信号レベルが閾値を超えるかどうかを判定するのと同じことである。信号レベルが閾値を超えなければ、何も処理を行わない。信号レベルが閾値を超えると、ゲイン減衰が計算される。最初に、超過ゲインが、
【0280】
【数84】

【0281】
として、上述した式を使用して計算される。次の2つのステートメント
【0282】
【数85】

【0283】
は、上述した式毎に指数の値を計算し、指数計算された値のテーブルを作成する。次の複数の行
【0284】
【数86】

【0285】
は、上述した補間を実行する。二次元配列「table」は、2つの指数indexおよびjによりパラメータ化される。値jは、超過ゲインに最も近い整数である。テーブルは、
【0286】
【数87】

【0287】
に等しい値を有する。このことは、上記の式から必要な値として理解できる。ここで、jは整数であるから、「floor」処理は必要ない。最後に、入力は、計算されたゲイン減少GRにより、
【0288】
【数88】

【0289】
毎にスケーリングされ、その値は、出力配列における次の位置に書かれる。そして、処理は、入力ブロックが消滅するすべてのNSAMPLEの値まで、入力配列の次の値により継続する。
【0290】
実際、上述した各関数は、1回の1つのサンプルよりもむしろ、入力データおよび出力データの配列として扱われる、ということに留意すべきである。これは、参照として上述したルーチンが入出力を通過するという事実に基づき、実際、プログラムを大きく変更しない。アルゴリズムは、長さにおけるNSAMPLESのブロックが引き渡されると仮定すると、データの配列をベル関数に組み込む必要のある変更だけが、次のようにして、ループ処理をコードに組み込む。
【0291】
【数89】

【0292】
全体としてのデジタル信号処理方法100は、次のように実行される上述した各関数を呼び出すプログラムとして実行することができる。
【0293】
【数90】

【0294】
これから分かるように、Scale関数、low_shelf関数、high_shelf関数、bell関数およびcompressor関数に対する複数の呼び出しがある。さらに、呼び出された配列xv1、yv1、xv2、yv2等に対する参照がある。これらの配列は、種々のルーチンの呼び出し間を維持する必要のある状態変数であり、処理における種々のフィルタの内部状態を格納する。また、ワーキングテーブルを呼び出した配列に対して繰り返される参照がある。このテーブルは、アルゴリズム全体で使用される種々の予め計算された係数を保持する。デジタル信号処理方法100のこの実施形態のようなアルゴリズムは、2つの部分に分けることができる。すなわち、実時間処理ループで使用される係数の計算と、実時間処理ループ自体とである。実時間処理ループは、実時間で簡単に行われる簡単な積算および加算と、複雑な超越関数、三角関数および実時間で効果的に行うことのできない他の処理が要求される係数計算とからなっている。幸いなことに、実行時間中の係数は一定であり、実時間処理を行う前に予め計算することができる。これらの係数は、特に、デジタル信号処理方法100が使用される各音響機器のために計算することができる。特に、デジタル信号処理方法100が車両での使用のために設定された携帯音響機器で使用される場合、これらの係数は、車両毎に個々に計算することができる。この場合、音響機器は、最適な性能を得るとともに、スピーカの配置、客室構成および背景ノイズのような、各車両の個性的な音響特性に適合させて使用することができる。
【0295】
例えば、特別なリスニング環境は、定常波のような特異な音響応答を生成することができる。例えば、このような定常波は、自動車のような小さなリスニング環境で時々発生する。自動車の長さは、例えば、400サイクル前後の長さである。このような環境では、いくつかの定常波は、この周波数で発生し、また、いくつかは、それ以下の周波数で発生する。定常波は、それらの周波数で不快な音響信号となる増幅された信号を示す。同じモデルの自動車のように、同じサイズ、形状および同じ特徴からなる車両は、それらの類似したサイズ、形状、構造的構成、スピーカの配置、スピーカの品質、およびスピーカのサイズによる同じ特異性を示すことができる。他の実施形態では、周波数および実行される調節量は、予め設定し、リスニング環境で将来発生する特異な応答を減衰するグラフィックイコライザ107での使用のために記憶させておくことができる。
【0296】
先の部分で示した「ワーキングテーブル」は、全て、メモリに保存され、必要に応じて読み取られる予め計算された値により構成される。これは、実行時間における膨大な量の計算を節約し、デジタル信号処理方法100が低価格のデジタル信号処理チップ上で動作することを可能とする。
【0297】
この部分で詳細に示したアルゴリズムは、ブロック形式で記述されることに留意すべきである。上述したプログラムは、デジタル信号処理方法100の簡単な特定のソフトウエアの実施形態であり、決して本発明を制限することを意図するものではない。このソフトウエアの実施形態は、制限されるものではないが、ラジオ、MP3プレーヤ、ゲームステーション、携帯電話、テレビ、コンピュータまたは拡声装置のような、音響機器で使用するコンピュータチップ上にプログラムすることができる。このソフトウエアの実施形態は、音響信号を入力として取り込み、その音響信号を変更された形態で出力する場合に効果がある。
【0298】
本発明の種々の実施形態について上述したが、それらは、単なる例示であり、なんら制限するものでないことに留意すべきである。同様に、種々の図は、本発明の構造例、またはその他の構成を示すものであり、本発明に包含できる特徴および機能の理解を支援するためのものである。本発明は、図示された構造または構成の例に限定されるものではなく、所望の特徴は、選択的な構造および構成の組み合わせを使用して実行することができる。本発明の所望の特徴を実行するため、選択的な機能、論理または物理的な分割および構成を実行する方法は、当業者にとっては明らかである。また、多数の異なる構成モジュールの名称は、種々の部分に対して、ここに記載した以外のものを適用することができる。加えて、フローチャート、処理の記載および方法クレームに関して、ここに示されているステップの順序は、説明が他の方法を指示しない限り、同じ順序で列挙された機能を遂行するために実行することを定めているものではない。
【0299】
この明細書で使用される用語および表現、並びに、その変形は、明示されていなければ、限定とは反対のオープンエンドとして解釈されるべきである。前述の説明の例として、用語「including(含む)」は、「限定ではなく含む」等の意味として解釈されるべきであり、用語「example(例)」は、説明中のアイテムの例示のために使用されており、その排他的または限定のリストではない。用語「a」または「an」は、「少なくとも1つ」、「1つ以上」等の意味として解釈されるべきであり、「conventional(一般的)」、「traditional(伝統的)」、「normal(通常)」、「standard(標準的)」、「known(既知)」のような形容詞および類似の意味の語は、説明されているアイテムを所定時間または所定時間の利用可能なアイテムに限定するとして解釈してはならない。代わりに、現在または将来の任意の時間に、利用可能または知られることができる、一般的、伝統的、通常、または標準的な技術を含むものと解釈されるべきである。同様に、この明細書は、当業者に明らかであるか、知られている技術を指す場合、このような技術は、現在または将来の任意の間において、当業者に明らかであるか、または知られるものを含んでいる。
【0300】
接続語「and」で連結されるアイテムのグループは、それらのアイテムのそれぞれまたは全てがグループに存在する必要があるとして解釈されるべきではなく、特に明示されていなければ、「および/または」として解釈されるべきである。同様に、接続語「or」で連結されるアイテムのグループは、そのグループ間で相互に排他性を必要とするように解釈されるべきではなく、特に明示されていなければ、「および/または」として解釈されるべきである。さらに、本発明のアイテム、要素または部品は、単数で説明またはクレームされる可能性があるが、単一に対する限定が明示されていなければ、複数がその範囲に含まれることが予期される。
【0301】
「1つ以上」、「少なくとも」、「限定されないが」、または、他のいくつかの例の同様の表現のような拡張用語および表現の存在は、このような拡張表現が存在しない例では、狭い場合が意図されまたは必要とされることを意味する、と解釈されてはならない。用語「モジュール」の使用は、モジュールの一部として機能的に説明されているか、クレームされている部品または機能が全て共通のパッケージで構成されていることを示唆しない。モジュールの任意または全ての種々の部品は、制御論理または他の部品であっても、単一のパッケージに組み込み、または、別々に維持することができ、さらに、多数のグループまたはパッケージ、若しくは、多数の位置に渡って分配することができる。
【0302】
さらに、ここに明記した種々の実施形態は、例示的なブロック図、フローチャート、および、その他の図面により説明した。本明細書を読んだ当業者にとって明らかなように、示された実施形態およびそれらの種々の選択は、示された例に限定することなく実行することができる。例えば、ブロック図およびそれらに関連する説明は、特定の構造または構成を命じるものと解釈されてはならない。
【符号の説明】
【0303】
100 デジタル信号処理方法
101 入力ゲイン調節部
102 第1ローシェルフフィルタ
103 第1ハイシェルフフィルタ
104 第1コンプレッサ
105 第2ローシェルフフィルタ
106 第2ハイシェルフフィルタ
107、600 グラフィックイコライザ
108 第2コンプレッサ
109 出力ゲイン調節部
110 入力音響信号
111 出力音響信号
1300 グラフィックイコライザ
1302 フィルタモジュール
1304 プロファイルモジュール
1306 イコライジングモジュール
1502 オン/オフボタン
1504 内蔵スピーカボタン
1506 デスクトップスピーカボタン
1508 ヘッドホーンボタン
1510 音楽ボタン
1512 映画ボタン
1514 巻き戻しボタン
1516 再生ボタン
1518 早送りボタン
1520 状態表示部

【特許請求の範囲】
【請求項1】
複数のフィルタイコライジング係数を有するプロファイルを受信し、前記プロファイルから、前記複数のフィルタイコライジング係数を使用して、グラフィックイコライザの複数のフィルタを設定するステップと、
処理するための第1信号を受信するステップと、
第1ゲインを使用して、前記複数のフィルタを調節するステップと、
前記グラフィックイコライザの前記複数のフィルタを使用して、前記第1信号をイコライジングするステップと、
前記第1信号を出力するステップと、
処理するための第2信号を受信するステップと、
第2ゲインを使用して、前記プロファイルから前記フィルタイコライジング係数を使用して予め設定された前記複数のフィルタを調節するステップと、
前記グラフィックイコライザの前記複数のフィルタにより、前記第2信号の複数の周波数をイコライジングするステップと、
前記第2信号を出力するステップとを備えることを特徴とするデジタル信号処理方法。
【請求項2】
前記複数のフィルタイコライジング係数を有する前記プロファイルは、通信ネットワークから受信されることを特徴とする請求項1記載のデジタル信号処理方法。
【請求項3】
前記複数のフィルタイコライジング係数を有する前記プロファイルは、ファームウエアから受信されることを特徴とする請求項1記載のデジタル信号処理方法。
【請求項4】
前記複数のフィルタは、通話中の音声を明瞭にする前記第1信号を変更する前記複数のフィルタイコライジング係数を使用して設定されることを特徴とする請求項1記載のデジタル信号処理方法。
【請求項5】
前記複数のフィルタは、高ノイズ環境における音声を明瞭にする前記第1信号を変更する前記複数のフィルタイコライジング係数を使用して設定されることを特徴とする請求項1記載のデジタル信号処理方法。
【請求項6】
前記複数のフィルタは、携帯端末のためのメディアファイルに関連する音を調節する前記第1信号を変更する前記複数のフィルタイコライジング係数を使用して設定されることを特徴とする請求項1記載のデジタル信号処理方法。
【請求項7】
さらに、前記第1信号をイコライジングするステップの前に、
前記第1信号のゲインを調節するステップと、
ローシェルフフィルタにより、調節された前記第1信号をフィルタリングするステップと、
コンプレッサにより、フィルタリングされた前記第1信号を圧縮するステップとを備えることを特徴とする請求項1記載のデジタル信号処理方法。
【請求項8】
さらに、前記第1信号をイコライジングするステップの後に、
コンプレッサにより、イコライジングされた前記第1信号を圧縮するステップと、
圧縮された前記第1信号を調節するステップとを備えることを特徴とする請求項1記載のデジタル信号処理方法。
【請求項9】
さらに、
第1ローシェルフフィルタにより、前記第1信号をフィルタリングするステップと、
フィルタリングされた前記第1信号をコンプレッサにより圧縮する前に、第1ハイシェルフフィルタにより、前記第1ローシェルフフィルタから受信した前記第1信号をフィルタリングするステップと、
前記第1信号を前記グラフィックイコライザによりイコライジングする前に、第2ローシェルフフィルタにより、前記第1信号をフィルタリングするステップと、
前記第1信号が前記第2ローシェルフフィルタによりフィルタリングされた後、第2ハイシェルフフィルタにより、前記第1信号をフィルタリングするステップとを備えることを特徴とする請求項1記載のデジタル信号処理方法。
【請求項10】
前記グラフィックイコライザの前記複数のフィルタは、11個の縦続接続する二次フィルタを備えることを特徴とする請求項1記載のデジタル信号処理方法。
【請求項11】
前記各二次フィルタは、ベルフィルタであることを特徴とする請求項10記載のデジタル信号処理方法。
【請求項12】
グラフィックイコライザを備え、
前記グラフィックイコライザは、
複数のフィルタを有するフィルタモジュールと、
複数のフィルタイコライジング係数を有するプロファイルを受信して設定されるプロファイルモジュールと、
前記プロファイルから、前記複数のフィルタイコライジング係数を使用して、前記複数のフィルタを設定し、第1信号および第2信号を受信し、第1ゲインを使用して、前記複数のフィルタを調節し、前記グラフィックイコライザの前記複数のフィルタを使用して、前記第1信号をイコライジングし、前記第1信号を出力し、第2ゲインを使用して、前記プロファイルから前記フィルタイコライジング係数を使用して予め設定された前記複数のフィルタを調節し、前記グラフィックイコライザの前記複数のフィルタを使用して、前記第2信号をイコライジングし、前記第2信号を出力するために設定されたイコライジングモジュールとを備えることを特徴とするシステム。
【請求項13】
前記複数のフィルタイコライジング係数を有する前記プロファイルは、通信ネットワークから受信されることを特徴とする請求項12記載のシステム。
【請求項14】
前記複数のフィルタイコライジング係数を有する前記プロファイルは、ファームウエアから受信されることを特徴とする請求項12記載のシステム。
【請求項15】
前記プロファイルモジュールは、通話中の音声を明瞭にする前記第1信号を変更する前記複数のフィルタイコライジング係数を使用して、前記複数のフィルタを設定することを特徴とする請求項12記載のシステム。
【請求項16】
前記プロファイルモジュールは、高ノイズ環境における音声を明瞭にする前記第1信号を変更する前記複数のフィルタイコライジング係数を使用して、前記複数のフィルタを設定することを特徴とする請求項12記載のシステム。
【請求項17】
前記プロファイルモジュールは、携帯端末のためのメディアファイルに関連する音を調節する前記第1信号を変更する前記複数のフィルタイコライジング係数を使用して、前記複数のフィルタを設定することを特徴とする請求項12記載のシステム。
【請求項18】
さらに、
前記第1信号および前記第2信号を増幅するために設定されるゲイン増幅器と、
増幅された前記第1信号および増幅された前記第2信号をフィルタリングするために設定されるローシェルフフィルタと、
フィルタリングされた前記第1信号およびフィルタリングされた前記第2信号を圧縮するために設定されるコンプレッサとを備えることを特徴とする請求項12記載のシステム。
【請求項19】
さらに、
イコライジングされた前記第1信号およびイコライジングされた前記第2信号を圧縮するために設定されるコンプレッサと、
前記コンプレッサから前記第1信号および前記第2信号を受信し、前記第1信号および前記第2信号のゲインを増幅し、前記第1信号および前記第2信号を出力するために設定されるゲイン増幅器とを備えることを特徴とする請求項12記載のシステム。
【請求項20】
さらに、
前記第1信号および前記第2信号をコンプレッサにより圧縮する前に、前記第1信号および前記第2信号をフィルタリングするために設定される第1ハイシェルフフィルタと、
前記第1ハイシェルフフィルタから前記第1信号および前記第2信号を受信し、前記第1信号および前記第2信号をイコライジングする前記グラフィックイコライザの前に、前記第1信号および前記第2信号をフィルタリングするために設定されるローシェルフフィルタと、
前記ローシェルフフィルタから前記第1信号および前記第2信号を受信し、前記第1信号および前記第2信号をフィルタリングするために設定される第2ハイシェルフフィルタとを備えることを特徴とする請求項12記載のシステム。
【請求項21】
前記グラフィックイコライザの前記複数のフィルタは、11個の縦続接続する二次フィルタを備えることを特徴とする請求項12記載のシステム。
【請求項22】
複数のフィルタイコライジング係数を使用して、グラフィックイコライザを設定するステップと、
第1ゲインを使用して、前記グラフィックイコライザを調節するステップと、
前記グラフィックイコライザにより第1信号を処理するステップと、
前記グラフィックイコライザから前記第1信号を出力するステップと、
第2ゲインを使用して、前記グラフィックイコライザを調節するステップと、
前記複数のフィルタイコライジング係数を使用して予め設定されたグラフィックイコライザにより、前記第2信号を処理するステップと、
前記グラフィックイコライザから前記第2信号を出力するステップとを備えることを特徴とするデジタル信号処理方法。
【請求項23】
さらに、
通信ネットワークから前記複数のフィルタイコライジング係数を受信するステップを備えることを特徴とする請求項22記載のデジタル信号処理方法。
【請求項24】
さらに、
ファームウエアから前記複数のフィルタイコライジング係数を受信するステップを備えることを特徴とする請求項22記載のデジタル信号処理方法。
【請求項25】
さらに、
前記第1信号のゲインを調節するステップと、
第1ローシェルフフィルタにより、前記第1信号を処理するステップと、
コンプレッサにより、前記第1信号を処理するステップとを備えることを特徴とする請求項22記載のデジタル信号処理方法。
【請求項26】
方法を遂行するためのプロセッサにより実行可能な命令を有するコンピュータ読み出し可能媒体において、
前記方法は、
複数のフィルタイコライジング係数を有するプロファイルを受信するステップと、
前記プロファイルから、前記複数のフィルタイコライジング係数を使用して、グラフィックイコライザの複数のフィルタを設定するステップと、
処理するための第1信号を受信するステップと、
第1ゲインを使用して、前記複数のフィルタを調節するステップと、
前記グラフィックイコライザの前記複数のフィルタを使用して、前記第1信号をイコライジングするステップと、
前記第1信号を出力するステップと、
処理するための第2信号を受信するステップと、
第2ゲインを使用して、前記プロファイルから前記フィルタイコライジング係数を使用して予め設定された前記複数のフィルタを調節するステップと、
前記グラフィックイコライザの前記複数のフィルタにより、前記第2信号の複数の周波数をイコライジングするステップと、
前記第2信号を出力するステップとを備えることを特徴とするコンピュータ読み出し可能媒体。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate

【図8】
image rotate

【図9】
image rotate

【図10】
image rotate

【図11】
image rotate

【図12】
image rotate

【図13】
image rotate

【図14】
image rotate

【図15】
image rotate


【公表番号】特表2013−516143(P2013−516143A)
【公表日】平成25年5月9日(2013.5.9)
【国際特許分類】
【出願番号】特願2012−547109(P2012−547109)
【出願日】平成22年12月15日(2010.12.15)
【国際出願番号】PCT/US2010/060472
【国際公開番号】WO2011/081965
【国際公開日】平成23年7月7日(2011.7.7)
【出願人】(512168869)ボンジョビ アコースティックス リミテッド ライアビリティー カンパニー (1)
【Fターム(参考)】