IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ エーアイエムアイ インコーポレイテッドの特許一覧

特許7640134変分オートエンコーディングのためのオーディオ表現
<>
  • 特許-変分オートエンコーディングのためのオーディオ表現 図1
  • 特許-変分オートエンコーディングのためのオーディオ表現 図2
  • 特許-変分オートエンコーディングのためのオーディオ表現 図3
  • 特許-変分オートエンコーディングのためのオーディオ表現 図4
  • 特許-変分オートエンコーディングのためのオーディオ表現 図5
  • 特許-変分オートエンコーディングのためのオーディオ表現 図6
  • 特許-変分オートエンコーディングのためのオーディオ表現 図7
  • 特許-変分オートエンコーディングのためのオーディオ表現 図8
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2025-02-25
(45)【発行日】2025-03-05
(54)【発明の名称】変分オートエンコーディングのためのオーディオ表現
(51)【国際特許分類】
   G10L 19/00 20130101AFI20250226BHJP
   G10L 21/007 20130101ALI20250226BHJP
【FI】
G10L19/00 250
G10L21/007
【請求項の数】 18
(21)【出願番号】P 2023517689
(86)(22)【出願日】2021-09-16
(65)【公表番号】
(43)【公表日】2023-10-03
(86)【国際出願番号】 US2021050583
(87)【国際公開番号】W WO2022060926
(87)【国際公開日】2022-03-24
【審査請求日】2023-05-15
(31)【優先権主張番号】63/080,615
(32)【優先日】2020-09-18
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】520456941
【氏名又は名称】エーアイエムアイ インコーポレイテッド
(74)【代理人】
【識別番号】100107766
【弁理士】
【氏名又は名称】伊東 忠重
(74)【代理人】
【識別番号】100070150
【弁理士】
【氏名又は名称】伊東 忠彦
(74)【代理人】
【識別番号】100135079
【弁理士】
【氏名又は名称】宮崎 修
(72)【発明者】
【氏名】ギフォード,トビー
【審査官】山下 剛史
(56)【参考文献】
【文献】特開2000-181452(JP,A)
【文献】特開2007-249009(JP,A)
【文献】特表2004-527005(JP,A)
【文献】中国特許出願公開第104050147(CN,A)
【文献】五十嵐佑樹他,混合音楽信号の正弦波・残差モデルを用いた再生速度変換の検討,日本音響学会2014年春季研究発表会講演論文集[CD-ROM],2014年03月,pp.1045-1048
(58)【調査した分野】(Int.Cl.,DB名)
G10L 19/00-25/93
IEEE Xplore
(57)【特許請求の範囲】
【請求項1】
異なる共振周波数を持つ複数の共振器モデルの状態情報を、コンピューティングシステムによって保持すること;
時間領域のオーディオサンプルのセット内の複数のそれぞれのサンプルに対して、前記コンピューティングシステムによって反復的に実行すること;
サンプル振幅に基づいて前記複数の共振器モデルの前記状態情報を更新することであって、所与の共振器を更新することが、少なくとも部分的に、前記複数の共振器モデルの1つ以上の隣接する共振器の状態に基づく、更新すること
更新された前記複数の共振器モデルのそれぞれの共振器振幅と位相決定することであって、前記更新すること及び前記決定することは、複数のサンプルをウィンドウ化することなしに、サンプル毎に実行することである、決定すること;及び
前記サンプルのそれぞれの共振器振幅及び位相変化の情報を格納すること;を含む、
方法。
【請求項2】
前記複数の共振器モデルの所与の1つの前記状態情報を更新することが:
前記複数の共振器モデルの前記所与の1つの現在の加速度を決定すること;
前記複数の共振器モデルの前記所与の1つの現在の速度を決定すること;及び
前記複数の共振器モデルの前記所与の1つの現在の位置を決定すること;を含む、
請求項1に記載の方法。
【請求項3】
前記複数の共振器モデルのうちの前記所与の1つの現在のサンプル、以前の速度、及び以前の位置に基づいて前記現在の加速度を決定すること;
前記複数の共振器モデルのうちの前記所与の1つの前記以前の速度と前記現在の加速度に基づいて前記現在の速度を決定すること;及び
前記複数の共振器モデルの前記所与の1つの前記現在の速度と前記以前の位置に基づいて前記現在の位置を決定すること;をさらに含む、
請求項2に記載の方法。
【請求項4】
前記複数の共振器モデルの所与の1つの現在のサンプルの共振器振幅と位相を決定することは:
先行サンプルの位相と位相増分に基づいて、前記現在のサンプルの現在の位相を計算すること;及び
前記現在のサンプルの位置に基づいて現在の共振器振幅を計算すること;を含む、
請求項1に記載の方法。
【請求項5】
前記複数の共振器モデルの前記所与の1つの前記現在のサンプルの共振器振幅と位相を決定することはさらに:
前記複数の共振器モデルの前記所与の1つの前記先行サンプルの位置に対する前記現在のサンプルによって引き起こされる位置の変化を決定すること;
前記複数の共振器モデルの前記所与の1つの前記先行サンプルの速度に対する前記現在のサンプルによって引き起こされる速度の変化を決定すること;及び
前記位置の変化と前記速度の変化に基づいて前記位相増分を計算すること;を含む、
請求項4に記載の方法。
【請求項6】
オーディオ信号を再合成することをさらに含み、前記オーディオ信号を再合成することは、前記更新された複数の共振器モデルの格納された前記共振器振幅と位相変化の情報を発振器関数に提供することを含む、
請求項1に記載の方法。
【請求項7】
前記オーディオ信号を再合成することは、さらに:
前記オーディオサンプルのセットの1つ1つをピッチシフトすることであり、前記ピッチシフトすることは、前記オーディオサンプルのセットの1つ1つのそれぞれの位相を、位相増分とスケーリングファクタの積によってシフトすることを含む、
請求項に記載の方法。
【請求項8】
前記格納された共振器振幅と位相変化の情報からオーディオ信号を再合成すること;及び
楽曲を形成するように、前記オーディオ信号と1つ以上の追加のオーディオ信号を自動的に結合すること;をさらに含む、
請求項1に記載の方法。
【請求項9】
命令を格納する、非一時的コンピュータ可読媒体であって、前記命令は、プロセッサによって実行されるとき:
時間領域で複数のそれぞれのオーディオサンプルを生成すること;
前記複数のオーディオサンプルの1つ1つのサンプル振幅に基づいて複数の共振器モデルの状態情報を更新することであって、前記複数の共振器モデルは互いに異なる共振周波数を持ち、所与の共振器を更新することが、少なくとも部分的に、前記複数の共振器モデルの1つ以上の隣接する共振器の状態に基づく、更新すること;
前記複数のオーディオサンプルの前記1つ1つの更新された前記複数の共振器モデルのそれぞれの共振器振幅と位相を決定することであって、前記更新すること及び前記決定することは、複数のサンプルをウィンドウ化することなしに、サンプル毎に実行することである、決定すること;及び
前記複数のサンプルの1つ1つについて、それぞれの共振器振幅と位相変化の情報を共振器モデルごとに格納すること;
含む動作を実行する、
非一時的コンピュータ可読媒体。
【請求項10】
前記動作は、前記複数のオーディオサンプルを使用してオーディオ信号を再合成することをさらに含み、前記オーディオ信号を再合成することは:
前記更新された複数の共振器モデルの前記共振器振幅と前記位相変化を発振器関数に提供すること;及び
前記複数のオーディオサンプルの1つ1つをピッチシフトすることであって、前記複数のオーディオサンプルの前記1つ1つをピッチシフトすることは、前記複数の共振器モデルの前記位相に位相増分とスケーリングファクタの積を適用することを含む、ピッチシフトすること;を含む、
請求項に記載のコンピュータ可読媒体。
【請求項11】
前記動作は、さらに、前記再合成されたオーディオ信号及び1つ以上の追加のオーディオ信号を使用して楽曲を自動的に生成することを含む、
請求項10に記載のコンピュータ可読媒体。
【請求項12】
前記複数の共振器モデルの所与の1つの状態情報を更新することは:
前記複数の共振器モデルの前記所与の1つの以前の速度と以前の位置に基づいて、前記複数の共振器モデルの前記所与の1つの現在の加速度を計算すること;
前記複数の共振器モデルの前記所与の1つの前記以前の速度と前記現在の加速度に基づいて、前記複数の共振器モデルの前記所与の1つの現在の速度を計算すること;及び
前記複数の共振器モデルの前記所与の1つの前記以前の速度と前記現在の加速度に基づいて、前記複数の共振器モデルの前記所与の1つの現在の位置を計算すること;を含む、
請求項に記載のコンピュータ可読媒体。
【請求項13】
前記複数の共振器モデルの所与の1つの共振器振幅と位相を決定することは:
前記複数の共振器モデルの前記所与の1つの先行サンプルに対する現在のサンプルの位置の変化と速度の変化を決定すること;
前記位置の変化と前記速度の変化に基づいて前記現在のサンプルの位相増分を計算すること;
先行サンプルの位相と前記位相増分に基づいて前記現在のサンプルの現在の位相を計算すること;及び
前記現在のサンプルの位置に基づいて現在の共振器振幅を計算すること;を含む、
請求項に記載のコンピュータ可読媒体。
【請求項14】
前記動作は、ウィンドウ化することなしにサンプルごとに前記格納することを実行することをさらに含む、
請求項に記載のコンピュータ可読媒体。
【請求項15】
プロセッサと;
命令を格納する、非一時的コンピュータ可読媒体であって、前記命令は、前記プロセッサによって実行されるとき:
互いに異なる共振周波数を持つ複数の共振器モデルの状態情報を保持することと;
時間領域のオーディオサンプルのセット内の複数のそれぞれのオーディオサンプルに対して、サンプルごとに:
現在のサンプルの振幅に基づいて前記複数の共振器モデルの前記状態情報を更新することであって、所与の共振器を更新することが、少なくとも部分的に、前記複数の共振器モデルの1つ以上の隣接する共振器の状態に基づく、更新すること
更新された前記複数の共振器モデルのそれぞれの共振器振幅と位相を決定することであって、前記更新すること及び前記決定することは、複数のサンプルをウィンドウ化することなしに、サンプル毎に実行することである、決定すること;及び
前記現在のサンプルの、それぞれの共振器振幅と位相変化の情報を、共振器モデルごとに格納すること;を含む動作を実行することと;
を含む動作を実行する、非一時的コンピュータ可読媒体と;を有する、
装置。
【請求項16】
前記動作はさらに:
更新された前記複数の共振器モデルの前記共振器振幅と前記位相変化を発振器関数に提供することによってオーディオ信号を再合成することであって、前記オーディオ信号を再合成することは、前記オーディオサンプルに位相増分とスケーリングファクタの積を適用することによって、前記オーディオサンプルのセットの前記オーディオサンプルの1つ1つをピッチシフトすることをさらに含む、再合成すること;
前記オーディオ信号と少なくとも1つの追加のオーディオ信号を使用して楽曲を自動的に生成すること;及び
前記装置のスピーカーを通して前記楽曲の再生を実行すること;を含む、
請求項15に記載の装置。
【請求項17】
前記非一時的コンピュータ可読媒体は、前記プロセッサによって実行されるとき:
前記複数の共振器モデルの所与の1つの現在の加速度を、前記複数の共振器モデルの前記所与の1つの以前の速度と以前の位置に基づいて計算すること;
前記複数の共振器モデルの前記所与の1つの現在の速度を、前記複数の共振器モデルの前記所与の1つの前記以前の速度と前記現在の加速度に基づいて計算すること;及び
前記複数の共振器モデルの前記所与の1つの現在の位置を、前記複数の共振器モデルの前記所与の1つの前記以前の速度と前記現在の加速度に基づいて計算すること;
を含む動作を実行する命令を格納する、
請求項15に記載の装置。
【請求項18】
前記非一時的コンピュータ可読媒体は、前記プロセッサによって実行されるとき:
前記複数の共振器モデルの所与の1つの先行サンプルに対する現在のサンプルの位置の変化と速度の変化を決定すること;
前記位置の変化と前記速度の変化に基づいて前記現在のサンプルの位相増分を計算すること;
先行サンプルの位相と前記位相増分に基づいて前記現在のサンプルの現在の位相を計算すること;及び
前記現在のサンプルの位置に基づいて、現在の共振器振幅を計算すること;
を含む動作を実行する命令を格納する、
請求項15に記載の装置。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は信号処理、より具体的には、オーディオ(audio(音声))信号のエンコーディング(encoding)及び処理に関するものである。
【背景技術】
【0002】
変分オートエンコーダ(Variational Auto Encoders)(VAE)は、ディープラーニングを使用して異なるオーディオ間でモーフィングする手段を提供し、生成音楽制作や自動リミックスに応用されている。この方法の実用化は、使用されるオーディオ表現によって複雑になる。音楽の結果については、高速フーリエ変換(FFT)を使用するなど、周波数領域でトレーニングがしばしば行われる。これらの実装では、オーディオ信号の再合成は、逆FFTを使用して行われることがある。
【発明の概要】
【0003】
変分オーディオエンコーディングでの使用に適したオーディオを表現するための様々な方法が開示される。一実施形態では、方法は、異なる共振周波数を持つ複数の共振器モデルの状態情報を、コンピューティングシステムによって保持すること(maintaining)を含む。方法はさらに、時間領域内のオーディオサンプルのセット内の複数のそれぞれのサンプルに対して、コンピューティングシステムによっていくつかの異なる動作を反復的に実行することを含む。これらの動作は、サンプル振幅に基づいて複数の共振器モデルの状態情報を更新することを含む。動作は、また、更新された複数の共振器モデルのそれぞれの共振器振幅及び位相を決定し、サンプルのそれぞれの共振器振幅及び位相変化の情報を保存することを含む。
【0004】
オーディオサンプルがオーディオ信号に再合成される様々な実施形態が可能であり、考慮されている。そのような実施形態は、オーディオ信号をピッチシフトすることも含まれる。これは、位相増分を決定し、さまざまなサンプルを位相増分といくつかの乗数値の積としてピッチシフトすることによって達成される。これらの実施形態は、さらに、再合成されたオーディオ信号を1つ以上の追加のオーディオ信号(ここに開示された方法からの再合成信号であってもなくてもよい)と組み合わせることを考慮している。再合成は、楽曲を生成するために自動的に行われ得る。
【図面の簡単な説明】
【0005】
以下の詳細な説明は、添付の図面を参照し、ここでは簡単に説明する。
【0006】
図1】信号をサンプリングし、それに応じて共振器モデルを更新する方法論の一実施形態を示す図である。
【0007】
図2】初期状態と励起状態のチェーンを示す、共振器のチェーンの一実施形態を示す図である。
【0008】
図3】いくつかのオーディオサンプルに対する共振器の位置、速度、及び加速度を決定する方法の一実施形態のフロー図である。
【0009】
図4】いくつかのオーディオサンプルに対する振幅及び位相シフト増分を決定する方法の一実施形態のフロー図である。
【0010】
図5】信号をサンプリングし、それに応じて共振器モデルを更新する方法の一実施形態のフロー図である。
【0011】
図6】いくつかのオーディオサンプルにわたるいくつかの異なる共振器振幅及び位相シフト情報を持つデータ構造の一実施形態を示す図である。
【0012】
図7】エンコーディングされたオーディオファイルを使用して楽曲を生成するシステムの一実施形態を示すブロック図である。
【0013】
図8】ここに開示されたエンコーディング及び楽曲生成アプリケーションを実行できるコンピューティングデバイスの一実施形態を示すブロック図である。
【発明を実施するための形態】
【0014】
変分オートエンコーダ(VAE)は、ディープラーニングを使用して異なるオーディオ間でモーフィングするメカニズムを提供し、生成音楽制作や自動リミックスに応用されている。この方法の実用化は、使用されるオーディオ表現によって複雑になる。音楽の結果については、トレーニングが周波数領域で行われるのが最適であり得る。しかし、多くの場合、任意の高速フーリエ変換(FFT)データを再合成すると、元のオーディオに対して忠実性を欠いた低ビットレートのオーディオファイルに似た、低品質のオーディオになる。一般的に言えば、時間領域表現も周波数領域表現も、人間の耳が知覚する音の表現を可能にする情報をキャプチャするのに十分ではない。
【0015】
純粋なFFTデータを使用してVAEをトレーニングする際の1つの課題は、位相のトポロジーが失われることである。信号の位相は周期的であるが、具体的にモデル化されていない限り、VAEにとっては未知である。位相がモデル化されている場合でも、FFT再合成の結果として生じるオーディオは、常に巻き戻し位相(unwinding phase)を適切に表現できないことによって悪影響を受ける可能性がある。
【0016】
本開示は、VAEからの再合成に適したオーディオの時間周波数表現に向けられている。ここに開示されているさまざまな方法論は、ウィンドウ化を省略したサンプルごとのオーディオの時間周波数表現を生成し得る。方法論は、さらに、サンプリングされたオーディオ信号内の位相空間のトポロジーをさらに尊重し得る。さらに、本開示は、再合成におけるオーディオ信号のピッチシフト、再合成されたオーディオ信号の結合、及び結合されたオーディオ信号を使用した楽曲の自動生成を可能にする。
【0017】
いくつかの実施形態では、本開示の方法は、同調、駆動、及び減衰された高調波共振器のモデルを有するデジタルフィルタバンクを利用する。共振器は、1次元フィルタバンク内の共振器の結合による、減衰質量-ばね系(damped mass-spring system)の物理的なアナロジーを介してモデル化される。入力信号は、(共振器チェーンとも呼ばれる得る)フィルタバンク内の共振器の各々に作用する外力として扱われ得る。任意の所与の時点で、個々の共振器の応答は、その共振周波数のスペクトル係数として解釈され得る。この応答は、振幅値及び位相値としてエンコーディングされ得る。
【0018】
一実施形態では、コンピューティングシステムは、複数の共振器モデルの状態情報を保持し、各モデルは他のモデルに対して一意の共振周波数を持つ。反復プロセスが、時間領域で取得されたサンプルのセット内の複数のそれぞれのサンプルに対して実行され得る。状態情報はサンプル振幅に対して更新され、更新された共振器モデルに対して共振器振幅及び位相が決定される。相変化情報(Change-in-phase information)も決定され、サンプルの共振器振幅と共に保存される。この情報は、後にオーディオ信号の再合成に使用され得る。さらに、位相増分などの情報が決定されることがあり、この情報はオーディオ信号のピッチシフトを行うために使用することができる。
【0019】
前述のように、時間周波数表現はサンプルごとに(sample-by-sample basis)生成され得る。動作(operation)のこの時間領域の側面に基づいて、各共振器のスペクトル係数が、サンプルのウィンドウ又はブロックではなく、各サンプルで更新され得る。これは、位相の不連続性から生じるアーティファクトを回避するためにさまざまな技術(例えばオーバーラップ)が必要になる可能性があるウィンドウ化/ブロック化された方法ではなく、サンプル内で位相を有意義に進化させることを可能にする。時間コヒーレント位相表現は、非定常周波数成分を持つオーディオ信号の表現において、より良い忠実性を可能にし得る。例えば、移動周波数を持つ「チャープ(chirp)」音は、連続位相を持つ単一の線として表現されるように見えることがある。これは、元のオーディオソースにおける真の位相不連続を検出する能力をさらに強化し得る。
【0020】
以下の議論は、共振器モデルを使用して、オーディオ信号をサンプリングし、サンプリングされた情報に基づいてさまざまな処理タスクを実行するための基本的なシステム及び方法の説明から始まる。次に共振器チェーンの例を論じ、励起状態と初期(非励起)状態の両方の例を示す。次に、サンプリングされたオーディオ信号を処理する際に利用される様々な方法の実施形態を説明する。次に、オーディオ信号の再合成及び楽曲の自動生成のためのシステムについて説明し、続いて、ここで説明する様々な方法の実施形態を実装できるデバイスについて説明する。
【0021】
共振器モデルを使用してオーディオを処理するシステム及び方法:
図1は、いくつかの実施形態による信号をサンプリングし、共振器モデルを更新するための例示的な方法論を示す図である。示されている実施形態では、オーディオ信号5は、時間にわたって、例えばt0、t1、t2、t3、及びt4でサンプリングされる。これらのサンプルが取得されると、それらはコンピューティングシステム100に提供される。いくつかの共振器モデル20が、サンプルが提供されるときにそれらを受け取るために配置される。各共振器モデル20は、異なる共振周波数を持つ共振器を表す。周波数に関しては、共振器モデル20は、オーディオ信号を受信するのに適した方法で間隔を空けられ得る。共振器モデル20を見る1つの方法は、それぞれが特定の周波数に最も応答するバンドパスフィルタのようなフィルタのバンクとして見ることである。共振器モデル20を見るもう1つの方法は、上で議論したような物理的な減衰質量ばね系のモデルとして見ることである。
【0022】
オーディオ信号5のサンプルは、任意の適切なアナログ-デジタル変換器(ADC、図示せず)を使用してアナログからデジタルに変換することによって生成され得る。個々のサンプルのデジタル情報は、共振器モデル20に適用される。各共振器モデル20は、それぞれの周波数について、現在のサンプルの振幅と位相の情報を決定し得る。その後、この情報は、サンプルごとにストレージ105に格納される。これは、ウィンドウ、又は個々のサンプルの代わりにサンプルのブロックを使用してオーディオデータを処理するための以前のさまざまな方法論とは対照的である。
【0023】
オーディオ信号5の時間-周波数表現は、時間の関数として個別の周波数帯域に含まれるエネルギーの観点から信号を記述する。これは、離散時間短時間フーリエ変換(DT-STFT)として知られるデジタルオーディオのために一般的に使用される時間-周波数表現の代替である。DT-STFTは、信号と時間による異なる周波数のウィンドウ化された(windowed)正弦波との間の相関の振幅と位相を表す複素数の2次元配列である。DT-STFTの計算は、入力信号を時間の短いウィンドウに分割し、各ウィンドウのFFTを計算する(通常はウィンドウ関数を掛ける)。対応する再合成方法は、信号をオーバーラップするウィンドウに分割し、ウィンドウ化手順のアーティファクトとして現れる可能性のある位相の不連続性を緩和するために、オーバーラップ全体の周波数応答をさらに平均化し得る。これは、位相情報の損失につながる可能性がある。特に、過渡現象から生じる真の位相不連続性は、DT-STFT法を使用して検出することがより困難である可能性があり、再合成ではそれほど顕著ではない可能性がある。
【0024】
ここで開示されている時間周波数表現及びそれを計算する方法は、オーディオ信号のウィンドウ化なしで実行することができる。この表現は、高調波共振器のチェーンの振幅及び巻き戻し位相を含むことができ、ここでは図2を参照して説明する。
【0025】
図2は、ここで説明するさまざまな方法論でモデル化される共振器チェーンの一部を示す図である。より具体的には、図2は、初期(非励起)状態と、サンプリングされたオーディオ信号からの刺激に応答して励起状態にある共振器チェーン200を示している。初期状態では、各共振器211は水平軸からの変位を持たない。励起状態では、共振器211は対応する垂直軸に沿って様々な量で変位する。前述のように、各共振器211は、質量が垂直方向に変位し、その後復元力によって中立(非励起)位置に引き戻される減衰単純調和運動(例えば、質量ばね系)の方程式に基づくデジタルフィルタを表すことができる。
【0026】
質量ばね系では、次の式で表されるように、復元力は、変位に線形比例し、符号は逆である。
F=-ky、
(式1)
ここで、yは共振器の垂直変位、kはフックの法則に従うばねの定数係数である。外力がない場合、単純調和運動の方程式は、この力の法則とニュートンの第2法則F=maを組み合わせて、2次の運動の微分方程式を得る。
【数1】

ここで、
【数2】

は加速度、yは変位、ωは調和運動の角周波数である。角周波数は次のように計算することもできる。

【数3】

.
【0027】
外部からの調和力を受けると、共振器はエネルギーを得て振動を始める。最大の応答は、外力が共振器の共振周波数で変化するときに起こる。したがって、この物理プロセスのデジタルモデルは、同調バンドパスフィルタとして機能し、入力信号が外力として扱われ、出力信号は時間を通しての共振器の垂直変位である。減衰がない場合、共振器の振動は限界なく増加する可能性がある。したがって、物理モデルによって動機付けられ、共振器の速度に比例する減衰項が含まれる。これにより、運動方程式は次のように修正される:
【数4】

ここで、fは入力信号(スケーリング可能)、cは減衰定数である。
【0028】
サンプル毎に振幅及び位相を決定する方法:
図2に示す減衰された共振器のチェーンは、関心のある周波数ビンに従って各共振器の定数を選択することによって、同調された共振器のフィルタバンクと考えることができる。減衰は、各共振器の共振周波数をわずかに変更し得、駆動信号の特定の振幅に応答して飽和振幅を決定し得る。オリジナルと同じ周波数等化で信号を再合成するために、個々の共振器の異なる相対飽和振幅(relative saturation amplitudes)を考慮する。したがって、式3を非減衰共振周波数ω0に対して書き、減衰定数を共振周波数の無次元スカラー倍ηで書くと、運動方程式は次のようになる:
【数5】

次に、調和駆動信号f=Fsin(ωt+φ)に対して、共振周波数で最大振幅応答が得られる:
【数6】

対応する振幅は:
【数7】

である。安定性の条件は次のように書かれる:
【数8】
【0029】
デジタル入力信号に対してこのモデルを実装するには、式5を差分方程式に変換する必要があり、単純な順方向反復(forward iteration)で解くことができる。順方向の反復によるこの差分方程式の解法をアルゴリズム1として以下に示すが、これは図3のフロー図にも示されている。
【表1】
【0030】
上記のアルゴリズム1を実装する方法300は、n=1(ブロック305)のサンプル[n]とi=1(ブロック310)の共振器iから始まる。この方法はさらに、現在のサンプル情報及び以前のサンプルからの速度と位置を使用して、示された式を使用して共振器i、サンプルnの加速度を計算することを含む(ブロック315)。以前のサンプルがないため、最初のサンプルでは速度と位置の値が0になる場合があることが留意される。示された式のωの値は、共振器iの共振(角)周波数に対応する。次に、共振器iに適用される現在のサンプルの速度(ブロック320)が、以前のサンプルの速度と現在のサンプルの加速度、及びサンプルレートrの逆数をオペランドとして、示された式を使用して計算される。次に、現在の速度と以前のサンプルの位置を使用して、共振器iに適用される現在のサンプルの位置が計算される(ブロック325)。結果として出力されるのは、その共振器に適用される現在のサンプルの加速度、速度、及び位置である(ブロック330)。条件i=Lが真でない場合(ブロック335、ノー)、iの値が1だけインクリメントされ(ブロック340)、方法はブロック315に戻り、次の共振器に対してループが繰り返される。条件i=Lが真(ブロック335、イエス)であるが、条件n=Nが真ではない(ブロック345、ノー)場合、nは1だけインクリメントされ(ブロック350)、方法はブロック310に戻り、次のサンプルのさまざまな共振器に実行される。n=Nが真(ブロック345、イエス)の場合、方法300は完了する。
【0031】
いくつかの実施形態では、所与の共振器の更新は、少なくとも部分的には1つ以上の隣接する共振器の状態に基づく。

例えば、アルゴリズム1に戻ると、計算のいくつかは、所与の共振器を更新するとき、yi+1[n]、
【数9】

又は他の同様の情報をさらに利用し得る。これらの値は、適切な重み又は定数を使用して調整され得る。共振器間のこの関係は、いくつかの実施形態では、エンコーディング品質を向上させる可能性がある。
【0032】
所与のサンプルの共振器セットの位置、速度、及び加速度を決定した後、時間周波数表現が決定され得る。これは、所与のサンプルの異なる共振器振幅と位相を計算することを含む。共振器はサンプルごとに更新される可能性があるため、位相の計算は、単調増加を仮定して明確に更新できる。これは、連続的に進化する(continuously evolving)巻き戻し位相(例えば、リーマン(Reimann)面上の連続曲線)をもたらす。表面上の点は順序対Γ=(r、φ)として表され、位相φは[0,2π]に拘束されないが、任意の実数値を取ることができる。
【0033】
各新しい入力サンプルの更新された時間周波数係数Γを計算するために、相対的にゆっくりと進化する振幅を仮定して、関連する共振器の暗黙の瞬間振幅と位相を、変位と速度の項が互いに位相が90°ずれていることに基づいて計算する。
【0034】
以下を仮定する:
【数10】
,

ここでyはreの実数部であると考えると、次のようになる:
【数11】

及び:
【数12】

ここでRは複素数の実数部を指す。φとrを解くと次のようになる:
【数13】

及び:
【数14】
【0035】
arctan関数(上でtan-1と書かれている)は、位相の以前の値よりも大きい最小値を生成する多値関数の分岐を選択するものとして理解される。
位相の全微分は、
【数15】

の関数として考えられるarctanの2次元勾配を介して表すことができる。wを
【数16】

と書くと、位相φの微分は次のようになる:
【数17】
【0036】
振幅r、位相φ、位相差の方程式がわかれば、これらの値は各共振器の各サンプルについて計算できる。これを図4のフロー図に示し、アルゴリズム2として以下に示す。
【表2】
【0037】
方法400は、サンプル[n]、共振器i=1から始まる(ブロック405)。次に、共振器の位置の変化が、現在の位置と、共振器[n]の以前のサンプルの位置を使用して計算される(ブロック410)。次に、速度の変化が、現在の速度と、共振器[n]の以前のサンプルからの速度を使用して計算される(ブロック415)。位置の変化と速度の変化を得て、位相増分が計算される(ブロック420)。位相増分を得て、現在の位相が計算され(ブロック425)、現在の振幅の決定を伴う(ブロック430)。条件i=Lが真でない場合(ブロック435、ノー)、iの値がインクリメントされ(ブロック440)、方法はブロック410に戻って繰り返す。条件i=Lが真であるが(ブロック435、イエス)、条件n=Nが真でない(ブロック445、ノー)場合、nがインクリメントされ(ブロック450)、方法はブロック405に戻って次のサンプルのプロセスを開始する。条件i=Lが真であり(ブロック435、イエス)、条件n=Nも真である(ブロック445、イエス) 場合、方法は完了する。
【0038】
上記の方法で計算された時間周波数表現は、いくつかのアプリケーションで使用される可能性がある。この表現からの元の信号の再合成は、「位相ボコーディング」の形式を介して達成される:共振フィルタバンクの各要素に対して発振器関数(oscillator function)を使用して、計算された振幅と位相r及びφを使用して、発振器rsinφの更新を駆動することができる。ピッチシフティングは、上記のアルゴリズムにおける位相増分dfに対して一定のスケーリング係数sを乗算することによって、容易に達成することができる。例えば、
【数18】
【0039】
これは、振動成分がピッチにおいて変化しているが、全体の再生速度は変化していない再合成された信号をもたらし得る。位相と振幅の値の連続性は、従来のFFTベースの位相ボコーダから発生する可能性のあるオーディオのアーティファクトを減らし得る。位相と振幅の値の連続性は、この時間周波数表現の補間値を使用して音を合成するのにも役立つ可能性があり、例えば、この表現の信号のコーパスでトレーニングされた変分オートエンコーダから派生する場合がある。
【0040】
処理中に、方法300及び400のさまざまな部分の実行が互いに同時に行われる可能性があることが留意される。例えば、共振器モデルのすべて又は一部は、所与の入力サンプルに対して並列に更新され、振幅と位相の差のすべて又は一部は、共振器モデルのすべて又は一部に対して並列に計算される可能性がある。さらに、ここで説明するさまざまな方法を実行するために、さまざまなメカニズムが考えられていることが留意される。これらの方法は、コンピュータシステムのプロセッサによって実行される可能性のある非一時的コンピュータ可読媒体に実装された命令、これらの方法を実行するようにプログラムされたフィールドプログラマブルゲートアレイ(FPGA)、ハードワイヤード回路などを含む。一般的に言えば、本開示は、ここに開示された方法を実行するための多種多様な適切なメカニズム、及びハードウェアとソフトウェアの任意の数の組み合わせを考慮している。
【0041】
図5は、本開示に従って実行することができる方法の別の実施形態のフロー図である。上記に従って、方法500によって実行される様々な方法ステップは、様々な実施形態において、例えば、複数のサンプル及び/又は複数の共振器に対して、互いに同時に実行することができることが留意される。
【0042】
方法500は、異なる共振周波数を持つ複数の共振器モデルの状態情報を、コンピューティングシステムによって保持する(maintain)ことを含む(ブロック505)。この方法はさらに、サンプル振幅に基づいて複数の共振器モデルの状態情報を更新し(ブロック510)、更新された複数の共振器モデルのそれぞれの共振器振幅と位相を決定し(ブロック515)、サンプルのそれぞれの共振器振幅と位相変化の情報を格納する(ブロック520)ことを含む。この方法は、時間領域のオーディオサンプルのセット内の複数のそれぞれのサンプルについて、コンピューティングシステムによってブロック510から520を繰り返し実行することによって実行され得る(ブロック525)。
【0043】
さまざまな実施形態では、複数の共振器モデルの所与の1つの状態情報を更新することは、複数の共振器モデルの所与の1つの現在の加速度を決定することを含む。
【0044】
状態情報の更新はまた、複数の共振器モデルの所与の1つの現在の速度を決定することと、複数の共振器モデルの所与の1つの現在の位置を決定することも含む。これらのさまざまな値を決定する際に、この方法のさまざまな実施形態は、複数の共振器モデルの所与の1つについて、現在のサンプル、以前の速度、以前の位置に基づいて現在の加速度を決定すること、複数の共振器モデルの所与の1つについて、以前の速度と現在の加速度に基づいて現在の速度を決定すること、及び複数の共振器モデルの所与の1つについて、現在の速度と以前の位置に基づいて現在の位置を決定することも含み得る。
【0045】
この方法の実施形態がさらに考慮され、複数の共振器モデルの所与の1つの現在のサンプルについて、共振器振幅と位相を決定することは、先行サンプルの位相と位相増分に基づいて現在のサンプルの現在の位相を計算し、位置に基づいて現在の共振器振幅を計算することを含む。このような実施形態では、複数の共振器モデルの所与の1つの現在のサンプルについて、共振器振幅と位相を決定することは、複数の共振器モデルの所与の1つについて、先行サンプルの位置に対する現在のサンプルによって引き起こされる位置の変化を決定することと、複数の共振器モデルの所与の1つについて、先行サンプルの速度に対する現在のサンプルによって引き起こされる速度の変化を決定することを含む。その後、この方法は、位置の変化と速度の変化に基づいて位相増分を計算することを続ける。
【0046】
この方法のいくつかの実施形態は、複数のサンプルのウィンドウ化なしに、サンプルごとの更新と決定を実行することを含む。
【0047】
オーディオ信号の再合成を含む実施形態がさらに可能であり、考慮され、これは、更新された複数の共振器モデルの格納された共振器振幅と位相変化の情報を発振器関数に提供することを含む。これらの実施形態では、オーディオ信号を再合成することは、オーディオサンプルのセットの1つ1つ(ones)をピッチシフトすることをさらに含み、ピッチシフトは、オーディオサンプルのセットのうちの1つ1つのそれぞれの位相を位相増分とスケーリングファクタの積によってシフトすることを含む。
【0048】
本開示はまた、格納された共振器振幅と位相変化の情報からオーディオ信号を再合成すること、及び、楽曲を形成するようにオーディオ信号を1つ以上の追加のオーディオ信号と自動的に結合することを含む方法を考慮している。
【0049】
データ構造とシステムの具体例:
図6は、上記の方法の実施形態を実行するシステムによって生成される可能性のあるデータ構造の一実施形態を示す図である。示された実施形態では、データ構造600は、前述のように共振器チェーンの合計L個の異なる共振器振幅Rと位相変化値φを含む。さらに、本開示は、ウィンドウ化せずにサンプルごとにこの情報を生成することを考慮しているので、データ構造は、L個の共振器のそれぞれのN個の異なるサンプルのそれぞれについて振幅Rと位相値φを含む。
【0050】
図7は、エンコーディングされたオーディオファイルを使用して楽曲を生成するシステムの一実施形態を示すブロック図である。前述のように、ここで説明する様々なアルゴリズム/方法論は、例えば人工知能(AI)を使用した楽曲の自動生成に使用することができる。示されている実施形態では、システム700は、エンコーディングされたオーディオファイル711及び712を受信するように構成され、前者は、上記で説明したアルゴリズム/方法の実施形態を実行するように構成されたエンコーディングアプリケーション701から受信される。オーディオファイル712は、オーディオファイル711と同じ方法で(エンコーディングアプリケーション701を使用して)エンコーディングされ得ることが留意される。しかし、システム700のすべてのオーディオファイルをこの特定の方法でエンコーディングする必要はない。
【0051】
エンコーディングされたオーディオファイル711及び712は、音楽アプリケーション702に提供される。音楽アプリケーションで実行される可能性のあるさまざまな動作の中には、上記で説明したような結合、再合成、及びピッチシフトがあり、そこでは、オーディオファイルから生成されるさまざまなオーディオ信号のピッチをシフトするために、位相増分又は差に何らかのスケーリングファクタが乗算される。例えば、オーディオファイル711と712の両方は、さまざまな音楽的アレンジを含むことがあり、これは、元のピッチが保持される場合、一方のアレンジが他方と互換性のない音楽的キーをもたらす。それに応じて、例えば、音楽アプリケーション702に実装される可能性のあるさまざまなAIを使用して、オーディオファイル711は、オーディオファイル712のそれと互換性のある音楽的キーにピッチシフトされ得る。
【0052】
所望のピッチシフト、結合、及び再合成を実行した後、結果として得られた楽曲613が再生され得る。例えば、再生は、スマートフォンのスピーカー、コンピュータスピーカー、又は音楽アプリケーション702を利用する可能性のあるその他のデバイスで行われ得る。
【0053】
一実施形態では、図1~6を参照して上で説明され、エンコーディングアプリケーション701に組み込まれた動作が、音楽アプリケーション702とは別に実行され得る。しかし、エンコーディングアプリケーション701が音楽アプリケーション702との共通アプリケーションに組み込まれた実施形態も可能であり、考慮されている。
【0054】
図8は、上述の様々な動作を実行するために使用され得るコンピューティングデバイスの一実施形態のブロック図である。示された実施形態では、コンピューティングデバイス800は、エンコーディングアプリケーション701及び音楽アプリケーション702の実施形態が格納された非一時的コンピュータ可読媒体(CRM)811を含む。CRM811は、フラッシュメモリ、ディスクストレージ、ランダムアクセスメモリ(RAM)、静的ランダムアクセスメモリ(SRAM)など、永続的ストレージに適した任意のメカニズムを使用して実装され得る。
【0055】
コンピューティングデバイス800のプロセッサ810は、適切な入力データを使用して、エンコーディングアプリケーション701及び音楽アプリケーション702の命令を実行するように構成される。これは、オーディオファイルを含み得る。コンピューティングデバイス800は、アナログオーディオ信号をサンプリングし、それに基づいて対応するオーディオファイルを生成するように構成され得る。
【0056】
コンピューティングデバイス800は、いくつかの異なるタイプのコンピュータのうちの1つであり得る。例えば、コンピューティングデバイス800は、スマートフォン、デスクトップコンピュータ、ラップトップコンピュータなどであり得る。一般的に言えば、コンピューティングデバイス800は、オーディオファイルをエンコーディングする、ピッチシフトを実行する、オーディオファイルを再合成する、オーディオファイルを結合する、及びオーディオファイルを使用して楽曲を自動的に生成するために、上記で説明したさまざまな方法を実行できる任意のタイプのコンピューティングデバイスであり得る。
【0057】
本開示は、「実施形態」又は「実施形態」のグループ(例えば、「いくつかの実施形態」又は「様々な実施形態」)への言及を含む。実施形態は、開示の概念の異なる実施又はインスタンスである。「実施形態」、「一実施形態」、「特定の実施形態」等への言及は、必ずしも同じ実施形態を指すとは限らない。具体的に開示されたものに加えて、本開示の精神又は範囲内にある変更又は置換を含む、多数の可能な実施形態が予期される。
【0058】
本開示は、開示の実施形態から生じ得る潜在的な利点を説明し得る。これらの実施形態の全ての実施は、必ずしも潜在的な利点のいずれか又は全てを明示するとは限らない。特定の実施に対して利点が実現されるかどうかは多くの要因に依存し、その要因のいくつかは本開示の範囲外である。実際に、特許請求の範囲内にある実施が、開示した利点の一部又は全部を示さない可能性があるが理由がいくつかある。例えば、特定の実施は、開示の実施形態のうちの1つとの組み合わせで、開示した利点の1つ以上を否定又は減少させる、本開示の範囲外の他の回路を含み得る。さらに、特定の実施(例えば、実装技術又はツール)の準最適な設計実行も、開示した利点を否定又は減少させ得る。熟練した実施を想定しても、利点の実現は、実施が展開される環境状況等の他の要因に依然依存し得る。例えば、特定の実施に提供される入力は、本開示で対処される1つ以上の課題が特定の機会に生じるのを防ぐ可能性があり、その結果、その解決の利益が実現されない場合がある。本開示の外部の可能性のある要因の存在を考えると、本明細書で説明した潜在的な利点は、侵害を証明するために満たされなければならない特許請求の範囲の制限と解釈すべきでないことを明確に意図している。むしろ、そのような潜在的な利点の特定は、本開示の利益を有する設計者が利用可能な改善の種類を説明することを意図している。そのような利点が寛容に説明されていることは(例えば、特定の利点が「生じ得る」と記述は)、そのような利点が実際に実現できるかどうかについての疑いを伝えることを意図しているのではなく、むしろ、そのような利点の実現はしばしば追加的な要因に依存するという技術的現実を認識することを意図している。
【0059】
特段明記がない限り、実施形態は非限定的である。すなわち、開示の実施形態は、特定の特徴に関して単一の例のみが説明されている場合であっても、本開示に基づいて起草される特許請求の範囲を限定することを意図していない。開示の実施形態は、開示において反対の記述がない、限定的ではなく例示的であることを意図している。そのため、本願は、特許請求の範囲が開示の実施形態に加えて、本開示の利益を有する当業者には明らかであろうそのような代替、変更及び均等物を網羅できるようにすることを意図している。
【0060】
例えば、本願における特徴は、任意の適切な方法で組み合わせられ得る。したがって、本願(又は優先権を主張する出願)の手続きの間に、そのような特徴の組み合わせに対して新たな請求項が作され得る。とりわけ、添付の特許請求の範囲を参照して、従属請求項からの特徴は、必要に応じて、他の独立請求項に従属する請求項を含む他の従属請求項の特徴と組み合わせられ得る。同様に、それぞれの独立請求項からの特徴は、必要に応じて組み合わせられ得る。
【0061】
したがって、追加された従属請求項は、それぞれが1つの他の請求項に従属するように起草され得るが、追加の従属も考えられる。本開示と一致する従属請求項内の特徴の任意の組み合わせが考えられ、本願又は別の出願で要求され得る。つまり、組み合わせは、添付の特許請求の範囲に具体的に列挙されているものに限定されない。
【0062】
適切な場合には、ある形式又は法定の種類(例えば、装置)で起草された請求項は、別の形式又は法定の種類(例えば、方法)の対応する請求項をサポートすることを意図して
いるとも考えられる。
【0063】
本開示は法的文書であるため、様々な用語及び語句は行政及び司法的な解釈の対象となり得る。以下の段落及び本開示全体を通じて提供されている定義を用いて、本開示に基づいて起草された請求項をどのように解釈するかを決定すべきことをここに公告する。
【0064】
あるアイテムの単数形(すなわち、「a」、「an」又は「the」が前に付いている名詞又は名詞句)への言及は、特段明示がない限り、「1つ以上」を意味することを意図している。そのため、特許請求の範囲における「1つのアイテム」への言及は、付随する文脈なしに、そのアイテムの追加の事例を排除しない。「複数」のアイテムとは、2つ以上のアイテムの集合を意味する。
【0065】
「~し得る」という用語は、本明細書では許容的な意味(すなわち、可能性を有すること、可能であること)で用いられ、強制的な意味(すなわち、絶対)ではない。
【0066】
「有する」及び「含む」という用語及びその形式は、オープンエンドであり、「含むが、それに限定されない」ことを意味する。
【0067】
本開示において「又は」という用語が選択肢の一覧に関して用いられる場合、別段明記がない限り、一般に包括的な意味で用いられているものと理解される。そのため、「x又はy」の記載は「x又はy又はその両方」と同等であり、そのため、1)yではなくx、2)xではなくy、及び3)x及びyの両方をカバーする。他方、「x又はyいずれか、であるが両方ではない」等の表現は、「又は」が排他的な意味で用いられていることを明確にする。
【0068】
「w、x、y、若しくはz、又はそれらの組み合わせ」又は「w、x、y、及びzのうち少なくとも1つ」との記載は、セット内の単一の要素から要素の合計数までを含む全ての可能性を網羅することを意図している。例えば、セット[w、x、y、z]を考えた場合、これらの表現は、セットの任意の単一の要素(例えば、x、y、zではなくw)、任意の2つの要素(例えば、y又はzではなくw及びx)、任意の3つの要素(例えば、zではなくw、x及びy)及び4つの要素の全てをカバーする。そのため「w、x、y及びzのうち少なくとも1つ」という表現は、セット[w、x、y、z]のうちの少なくとも1つを指すため、この要素の一覧内の全ての可能な組み合わせをカバーする。この表現は、wの少なくとも1つのインスタンス、xの少なくとも1つのインスタンス、yの少なくとも1つのインスタンス、zの少なくとも1つのインスタンスがあることを要求するものではない。
【0069】
本開示では、名詞又は名詞句の前に様々な「ラベル」が先行し得る。別段明示がない限り、特徴に用いられる異なるラベル(例えば、「第1の回路」、「第2の回路」、「特定の回路」、「所与の回路」等)は、特徴の異なるインスタンスを指す。加えて、「第1」、「第2」及び「第3」といったラベルが特徴に適用された場合、別段明示がない限り、いかなる種類の順序付け(例えば、空間的、時間的、論理的等)も含意しない。
【0070】
「~に基づく」という用語は、決定に影響を及ぼす1つ以上の要因を記述するために用いられる。この用語は、追加の要因が決定に影響を及ぼす可能性を除外するものではない。すなわち、決定は、特定された要因のみに基づき得るか又は特定された要因に加えて他の特定されていない要因に基づき得る。「Bに基づいてAを決定する」という表現を考えてみる。この表現は、BはAを決定するために用いられた要因であり得るか又はAの決定に影響を与えることを規定する。この表現は、Aの決定が他の要因、例えばCにも基づき得ることを除外するものではない。この表現はまた、AがBのみに基づいて決定される実施形態をカバーすることを意図する。本明細書で用いる「基づく」という用語は、「少なくとも部分的に基づく」という用語と同意である。
【0071】
「~に応答して」及び「~に反応して」という表現は、効果を引き起こす1つ以上の要因を記述する。この表現は、追加の要因が、特定の要因と共同で又は特定の要因から独立して、効果に影響を与え得るか、その他の方法で効果を引き起こし得る可能性を排除しない。つまり、効果はそれらの要因にのみに応答し得るか又は特定の要因に加えて、他の不特定の要因にも応答し得る。「Bに応答してAを行う」という表現を考えてみる。この表現は、BがAのパフォーマンスを引き起こす要因であること又はAの特定の結果を引き起こす要因であることを規定する。この表現は、Aを行うことがC等の他の要因にも応答したものであり得ることも除外しない。この表現は、Aを行うことがB及びCに共同で応答したものであり得ることも妨げない。この表現は、Bに応答してのみAが行われる実施形態をカバーすることも意図している。本明細書で用いる「~に応答して」という表現は、「少なくとも部分的に反応して」という表現と同義である。同様に、「~に応答して」という表現は、「少なくとも部分的に応答して」という表現と同義である。
【0072】
本開示内では、異なるエンティティ(様々に「ユニット」、「回路」、他のコンポーネント等と様々な形で言及され得る)は、1つ以上のタスク又は動作を行うように「構成」されると記載又は請求項に記載され得る。[1つ以上のタスクを行う]ように構成された[エンティティ]という定式は、本明細書では、構造(即ち、物理的な何か)を指すために用いられている。より具体的には、この定式は、係る構造が、動作中に1つ以上のタスクを行うように配置されていることを示すために用いられる。構造は、現在動作中でなくても、あるタスクを行うように「構成されている」と言うことができる。そのため、あるタスクを行うように「構成されている」と記載又は請求項に記載されているエンティティは、プロセッサユニットと、係るタスクを実施するために実行可能な命令を記憶するメモリとを有する装置、回路、システム等の物理的な何かを表す。この表現は、本明細書では無形のものを表すためには用いられていない。
【0073】
場合によっては、様々なユニット/回路/コンポーネントが、一連のタスク又は動作を実行するものとして本明細書で説明され得る。これらのエンティティは、特に明記されていなくても、これらのタスク/動作を行うように「構成」されていることが理解される。
【0074】
「構成されている」という用語は、「構成可能である」ことを意味することを意図していない。例えば、プログラムされていないFPGAは、ある特定の機能を行うように「構成されている」とは考えられない。しかしながら、このプログラムされていないFPGAは、その機能を行うように「構成可能」であり得る。適切なプログラミングの後、FPGAはその特定の機能を行うように「構成されている」と言うことができる。
【0075】
本開示に基づく米国特許出願の目的のために、添付の特許請求の範囲において、ある構造が1つ以上のタスクを行うように「構成されている」という記載は、その記載の要素について米国特許法第112条(f)を行使することを意図したものではないと明示する。したがって、本開示に基づく米国特許出願の手続きの間に第112条(f)の行使を出願人が希望する場合は、[機能を行う]「ための手段」を用いる請求項の要素を記載する。
【0076】
上記の開示が十分に理解されれば、多数の変形及び修正が当業者に明らかになるであろう。以下の請求項は、そのような全ての変形及び修正を包含するように解釈されることを意図している。
図1
図2
図3
図4
図5
図6
図7
図8