【文献】
Frederik NAGEL, et al.,"A PHASE VOCODER DRIVEN BANDWIDTH EXTENSION METHOD WITH NOVEL TRANSIENT HANDLING FOR AUDIO CODECS",Convention Paper Presented at the 126th Convention,Audio Engineering Society,2009年 5月,No.7711,pp.1024-1031
(58)【調査した分野】(Int.Cl.,DB名)
オーディオ信号または複数のサブバンド信号をデシメートするためのデシメータをさらに含み、時間マニピュレータが、複数のサブバンド信号のタイムストレッチを行うように構成される、請求項1に記載の装置。
オーバーラップ加算ステージが、複数のサブバンド信号のタイムストレッチを行うためのブロック抽出アドバンス値より大きいオーバーラップ加算アドバンス値を適用するよう構成される、請求項1から請求項3のいずれか1項に記載の装置。
過渡加算部が、過渡を有するサブバンド信号の一部を挿入するよう構成され、その一部の長さが十分に長く選択され、それによりオーバーラップ加算処理からの信号出力から過渡を有する部分へのまたは過渡を有する部分からオーバーラップ加算処理からの出力へのクロスフェードが可能になるようにされる、請求項1から請求項6のいずれか1項に記載の装置。
接続ステージをさらに含み、この接続ステージが、第1の分析フィルタバンクおよび接続ステージの入力部における複数のボコーダと、接続ステージの出力側におけるオーバーラップ加算ステージとの間に設けられ、複数のサブバンド信号のうちの対応する1つの信号のブロックと、複数の位相ボコーダにより出力される位相ボコーダで処理されたブロックのオーバーラップ加算ステージへの付与を制御するよう構成される、請求項13に記載の装置。
オーディオ信号の複数のサブ信号を個々に時間操作するための時間マニピュレータをさらに含み、時間マニピュレータが、オーバーラップ加算ステージと、過渡検出部と、過渡加算部とを含む、請求項1から請求項15のいずれか1項に記載の装置。
【先行技術文献】
【特許文献】
【0006】
【特許文献1】ラロッシュ、J.およびDolson、M.の「位相ボコーダピッチシフト」という名称の米国特許第 6,549,884号、(United States Patent No. 6,549,884 Laroche, J. & Dolson, M.: “Phase-vocoder pitch-shifting")
【非特許文献】
【0007】
【非特許文献1】J.L.フラナガンおよびR.M.ゴールデンによる「ベルシステム技術ジャーナル」、1966年11月、第1394頁から第1509頁(J. L. Flanagan und R. M. Golden, “The Bell System Technical Journal”, November 1966, pages 1394 to 1509)
【非特許文献2】ジーン・ラロッシュおよびマーク・ドルソンによる「ピッチシフト、ハーモナイズおよび他の新効果のための新しい位相ボコーダ技術」、Proc.1999年、音声および音響に対する信号処理の応用に関する1999IEEEワークショップ予稿集、ニューパルツ、ニューヨーク、1999年10月17日から20日(Jean Laroche and Mark Dolson, “New Phase-Vocoder Techniques for Pitch-Shifting, Harmonizing And Other Exotic Effects", Proc. 1999 IEEE Workshop on Applications of Signal Processing to Audio and Acoustics, New Paltz, New York, Oct. 17-20, 1999)
【非特許文献3】ラロッシュ、L.、ドルソン、M.による「オーディオの改良された位相ボコーダタイムスケール修正」IEEE論文集、音声およびオーディオ処理、第7巻、第3号、第323頁から第332頁(Laroche L., Dolson M.: Improved phase vocoder timescale modification of audio", IEEE Trans. Speech and Audio Processing, vol. 7, no. 3, pp. 323-332)
【非特許文献4】エマニュエル・ラヴェリ、マーク・サンドラ―、およびホアン・P.ベロによる「ステレオオーディオの非線形タイムスケーリングのための高速実装」、デジタルオーディオエフェクトに関する第8回国際会議予稿集(DAFx’05)、マドリッド、スペイン、2005年9月20日から22日(Emmanuel Ravelli, Mark Sandler and Juan P. Bello: Fast implementation for non-linear time-scaling of stereo audio; Proc. of the 8th Int. Conference on Digital Audio Effects (DAFx’05), Madrid, Spain, September 20-22, 2005)
【非特許文献5】ダックスベリー、C.、M.デービスおよびM.サンドラー(2001年12月)による「多分解能解析技術を用いた楽音における過渡情報の分離」、デジタルオーディオエフェクトに関するCOSTG−6会議予稿集(DaFX−01)、リメリック、アイルランド(Duxbury, C., M. Davies, and M. Sandler (2001, December). Separation of transient information in musical audio using multi resolution analysis techniques. In Proceedings of the COST G-6 Conference on Digital Audio Effects (DAFX-01), Limerick, Ireland)
【非特許文献6】ロベル、A.による「位相ボコーダにおける過渡処理の新たなアプローチ」、デジタルオーディオエフェクトに関する第6回国際会議予稿集(DAFx−03)、ロンドン、英国、2003年9月8日から11日(Robel, A.: A NEW APPROACH TO TRANSIENT PROCESSING IN THE PHASE VOCODER ; Proc. of the 6th Int. Conference on Digital Audio Effects (DAFx-03), London, UK, September 8-11, 2003)
【発明の概要】
【0008】
この出願の分野は、このプロセスにおける過渡音声事象の知覚的な動機による処理方法に関連する。特に、過渡音声事象は、タイムストレッチの信号操作の間に削除することができる。その後、ストレッチを考慮して、変更した(ストレッチした)信号に未処理の過渡信号部を正確にぴったり付加することができる。
【0009】
本件に開示の教示の実施例によれば、オーディオ信号を処理するための装置が、オーディオ信号の複数のサブバンド信号を個別に時間操作するための時間マニピュレータを含む。この時間マニピュレータが、ブロック抽出アドバンス値とは異なるオーバーラップ加算アドバンス値を使用して、複数のサブバンド信号のうちの1以上の信号のブロックをオーバーラップしかつ加算するためのオーバーラップ加算ステージと、オーディオ信号またはサブバンド信号において過渡を検出するための過渡検出部と、オーバーラップ加算ステージが発生した複数の信号に検出された過渡を加算するための複数の過渡加算部とを含む。オーバーラップ加算ステージは、加算を行う際に、検出された過渡の影響を減じるかまたは検出された過渡を使用しないよう構成される。
【0010】
他の実施例によれば、オーディオ信号を処理するための装置が、サブバンド信号を発生させるための分析フィルタバンクと、複数のサブバンド信号を個別に時間操作するための時間マニピュレータとを含み、時間マニピュレータが、ブロック抽出アドバンス値とは異なるオーバーラップ加算アドバンス値を使用して、サブバンド信号のブロックをオーバーラップしかつ加算するためのオーバーラップ加算ステージと、オーディオ信号またはサブバンド信号において過渡を検出するための過渡検出部とを含み、オーバーラップ加算ステージは、加算を行う際に、検出された過渡の影響を減じるかまたは検出された過渡を使用しないよう構成され、時間マニピュレータはさらに、オーバーラップ加算ステージが発生した信号に検出された過渡を加算するための過渡加算部を含む。
【0011】
他の実施例によれば、オーディオ信号を処理するための方法が、オーディオ信号の複数のサブバンド信号を個別に時間操作するステップを含み、この時間操作するステップが、ブロック抽出アドバンス値とは異なるオーバーラップ加算アドバンス値を使用して、複数のサブバンド信号のうちの対応する1つの信号のブロックをオーバーラップしかつ加算するステップと、オーディオ信号またはサブバンド信号における過渡を検出するステップと、オーバーラップおよび加算の際に、影響を減じるかまたは検出された過渡を廃棄するステップと、オーバーラップおよび加算の動作により発生する複数の信号に検出された過渡を加算するステップとを含む。
【0012】
他の実施例は、コンピュータ上で実行して、方法を実行するためのコンピュータプログラムに関連し、この方法が、オーディオ信号の複数のサブバンド信号を個別に時間操作するステップを含み、この時間操作するステップが、ブロック抽出アドバンス値とは異なるオーバーラップ加算アドバンス値を使用して複数のサブバンド信号のうちの対応する1つ信号のブロックをオーバーラップしかつ加算するステップと、オーディオ信号またはサブバンド信号における過渡を検出するステップと、オーバーラップおよび加算を行う際に、影響を減じるかまたは検出された過渡を廃棄するステップと、オーバーラップおよび加算動作により発生した複数の信号に検出された過渡を加算するステップとを含む。
【0013】
関連の実施例によれば、装置は、オーディオ信号または複数のオーディオ信号をデシメートするためのデシメータをさらに含んでもよい。時間マニピュレータが、複数のサブバンド信号のタイムストレッチを行うように構成されてもよい。
【0014】
他の実施例によれば、過渡検出部が、過渡を含むとして検出されたブロックをマークするよう構成されてもよく、かつ複数のオーバーラップ加算ステージが、マークされたブロックを無視するよう構成される。
【0015】
他の実施例によれば、複数のオーバーラップ加算ステージが、複数のサブバンド信号のタイムストレッチを行うためのブロック抽出値より大きいオーバーラップ加算値を適用するよう構成されてもよい。
【0016】
他の実施例によれば、時間マニピュレータが、ブロック抽出部と、ウィンドワ/位相調整部と、ウィンドワ/位相調整部が抽出されたブロックの調整を行うことを基礎とする位相を計算するための位相計算部とをさらに含んでもよい。
【0017】
他の実施例によれば、過渡加算部が、過渡を有するサブバンド信号の一部を挿入するようさらに構成され、その一部の長さが十分に長く選択され、それにより過渡を有する部分から出力される信号からオーバーラップ加算処理からの出力へのクロスフェードが可能になるようされてもよい。
【0018】
関連の実施例によれば、過渡加算部がクロスフェード動作を行うよう構成されてもよい。
【0019】
他の実施例によれば、過渡検出部が、過渡特性を有するサブバンド信号からブロック抽出部が抽出したブロックを検出するよう構成されてもよい。オーバーラップ加算ステージは、加算を行う際に、検出されたブロックの影響を減じるかまたは検出されたブロックを使用しないようさらに構成されてもよい。
【0020】
他の実施例では、過渡検出部が、分析フィルタバンクに入力される信号またはサブバンド信号の予め定められた期間にわたってエネルギの重力の移動中心計算を行うよう構成されてもよい。
【0021】
適切なセクションを選択する目的の過渡の位置の正確な決定は、たとえば適切な期間にわたるエネルギの移動中心の計算の助けにより実行することができる。特に、過渡決定は、フィルタバンク内で周波数選択的に行われ得る。また、セクションの期間を、過渡決定からの情報に基づいて、一定の値としてまたは可変に選択することができる。
【0022】
他の実施例では、装置は、サブバンド信号を発生させるための分析フィルタバンクをさらに含み得る。
【0023】
他の実施例では、装置は、分析フィルタバンクの入力側または出力側で配列されるデシメータをさらに含み得る。時間マニピュレータが、複数のサブバンド信号のタイムストレッチを行うよう構成されてもよい。
【0024】
他の実施例によれば、装置は、第1の分析フィルタバンクと、第2の分析フィルタバンクと、第2の分析フィルタバンクの上流にある再サンプル部と、第2の分析フィルタバンクにより出力される第2の複数のサブバンド信号のための複数の位相ボコーダとをさらに含み、複数の位相ボコーダが、1より大きい帯域幅拡張ファクタを有し、位相ボコーダ出力が、複数のオーバーラップ加算ステージへ付与されてもよい。
【0025】
他の実施例では、装置が接続ステージをさらに含んでもよく、この接続ステージは、第1の分析フィルタバンクおよび接続ステージの入力側における複数の位相ボコーダと、接続ステージの出力ステージにおけるオーバーラップ加算ステージとの間に設けられ、複数のサブバンド信号のうちの対応する1つ信号のブロックと、位相ボコーダで処理された信号のオーバーラップ加算ステージへの付与を制御するよう構成される。
【0026】
他の実施例によれば、装置は、異なるオーバーラップ値の振幅に影響する効果を補償するよう構成される振幅較正をさらに含んでもよい。
【0027】
本出願は、したがって、帯域幅拡張および帯域幅拡張に関連しない他のオーディオ応用に関連して、オーディオ信号を処理するための装置、方法またはコンピュータプログラムの様々な特徴を提供する。説明しかつ請求項に記載した個別の特徴については、一部または全部を組み合わせることができるが、相互に個別に使用することもできる。これは、コンピュータシステムまたはマイクロプロセッサにおいて実現すれば、個々の特徴が知覚品質、計算複雑性および処理装置/メモリリソースに関してすでに利点を提供するからである。
【0028】
ここに開示される教示により、かつまた既存の方法とは対照的に、過渡を含むウィンドウ処理されたセクションを、操作する信号から取り除くことができる。これは、オーバーラップ加算(OLA)プロセスの際に、過渡を含んでいない時間部分のみをブロックごとに合算することにより得られ得る。これにより、過渡を含まないタイムストレッチされた信号が得られる。タイムストレッチ終了後、元の信号から取り除かれていたストレッチされていない過渡を再び加算する。
【0029】
したがって、分散やエコー効果は、過渡の主観的オーディオ品質にもやは影響を与えない。
【0030】
元の信号部分を挿入することにより、サンプリングレートを変える際に、音色やピッチに変化が生じる。しかしながら、一般に、過渡は、音響心理学的にはこれを遮断する。特に、過渡の環境外では、n度目(n=ストレッチファクタ)ごとの高調波のみがマッピングされるので、整数ファクタによるストレッチが行われる際、音色はわずかにしか変化しない。
【0031】
添付の図面は実施例のよりよい理解のために含まれ、本明細書の一部に組み込まれこれを構成するものである。図面は実施例を図示し、記載とともに、実施例の原則を説明する役割を果たす。以下の詳細な説明を参照しより理解が進めば、他の実施例および実施例の意図する効果の多くは容易に理解されるものである。同様の参照番号は同じまたは類似する部分を示す。
【発明を実施するための形態】
【0033】
図1は、具体例としてピッチパイプとカスタネットを組み合わせたものからなるオーディオ信号の信号波形の時間断面を示す。図示のオーディオ信号を元の信号として使用し、その信号に対して、ここに開示の教示を適用せずまたは適用して、様々なタイムストレッチ動作を行う。ピッチパイプの音は、
図1におけるおよそ0.08単位の振幅を有する実質的に周期的信号に相当する。4つのカスタネットのビートは、
図1において、およそ0.45単位の振幅を有する4つの短いインパルスとして見ることができる。ピッチパイプは、実質的に音調信号を生成する。しかしながら、カスタネットは高度に過渡的な信号を生成する。音響およびオーディオにおいては、過渡は一般に楽音または単語音声の非高調波アタックフェーズを表す短い持続時間の信号として規定される。高程度の非周期的成分およびその音声の高調波成分よりも高い周波数の高い大きさを含むかもしれない。過渡は、一般に、それらが開始する音調の周波数に直接的に依存しない。
【0034】
図2は、
図1の信号波形の離散フーリエ変換(DFT)スペクトログラムを示す。
図3は、
図2に類似しかつ
図1の信号波形の64バンド擬直交ミラーフィルタバンク(pQMF)スペクトログラムを示す。
図2および
図3の2つのスペクトログラムからわかるとおり、元のオーディオ信号には、高密度の高調波部分音声構造(水平構造)およびカスタネットビート(垂直構造)を含む。
【0035】
そこから、
図4は、周波数選択的態様で、過渡信号部分をマーキングするバイナリ過渡検出マトリクスを示す。検出された過渡信号部は、白で示す。これは、ボコーダで除去してトランスポジションし、後で元の信号に基づいて再び加えてもよい。それ以外の方法では、検出された過渡信号部をタイムストレッチから排除して、後に元の信号からのそれぞれの信号部分で置換してもよい。
【0036】
図5から
図8は、2つの時間信号および関連のスペクトログラムの形式での、新規な過渡処理を伴うタイムストレッチと伴わないタイムストレッチの結果を示す。過渡処理の有無による時間信号およびスペクトログラムを比較することにより、ここに開示する教示を採用すれば、過渡信号部の望ましくない時間的ぼやけが効果的に回避されることがわかる。たとえば、
図5に示す時間信号と
図7に示す対応のスペクトログラムでは、カスタネットのビートが拡大されており、すなわちそれらの持続時間が
図1に示す元の時間信号より長いことがわかる。対照的に、ここに開示される教示による過渡処理を採用することにより得られた
図6に示す時間信号と
図8に示す対応のスペクトログラムでは、カスタネットのビートは、それらの持続時間に対して実質的に拡大することはなく、信号操作中、実質的に維持されていることがわかる。
【0037】
開示の教示に従う装置、方法およびコンピュータプログラムによれば、タイムストレッチおよびトランスポジション法により過渡を処理する際に生じるアーチファクト(分散、プリエコーおよびポストエコー)が効果的に回避される。その上、サブバンドにおいて静止部分または過渡部分のいずれが支配的かを周波数選択的な態様で区別することができ、かつ過渡処理法を応じて選択する。さらに、挿入予定の信号部分の期間を過渡決定のパラメータを考慮する可変な態様で構成して、過渡に対して信号部分の時間を最適に適合させることができる。
【0038】
この方法は、オーディオ信号の再生スピードまたはそれらのピッチが変わるすべてのオーディオ用途に適している。特に適している用途は、帯域幅拡張またはオーディオ効果の分野においてである。
【0039】
図9は、オーディオ帯域幅拡張の分野におけるオーディオ処理システムを示す。しかしながら、本発明は、帯域幅拡張を行わない他の分野にも適用可能である。ビットストリームをコアデコーダ100に入力する。コアデコーダによる信号出力、すなわち狭帯域幅オーディオ信号が、それぞれのデシメータ102a,102bおよび102cに入力される。コアデコーダ100が出力する信号に比べて時間長が短いデシメートされた信号が、pQMF分析ステージ104a,104bおよび104cに入力される。ステージ104a,104bおよび104cは、pQMFフィルタバンクではない何らかの他の分析フィルタバンクで実現することができる。すべて、この目的に使用できる多くの異なるフィルタバンクの実現例が存在する。
【0040】
各pQMF分析ステージ104a,104bおよび104cが、異なるサブバンドチャネルにおいて複数の異なるサブバンド信号を出力し、そこで各サブバンド信号の帯域幅は減じられ、かつ一般にサンプリングレートが減じられる。この場合、フィルタバンクは、本発明に好ましい2倍オーバサンプリングされたフィルタバンクである。しかしながら、クリティカルにサンプリングされたフィルタバンクも使用可能である。
【0041】
pQMF分析チャネルにおける対応の狭帯域信号またはサブバンド信号出力が位相ボコーダに入力される。
図9には、3つの位相ボコーダ106a,106bおよび106cしか図示しないが、各pQMF分析チャネルが独自の位相ボコーダを有しうることを理解することが重要である。位相ボコーダアルゴリズムも、ベースバンドまたは第1のパッチを介挿することによっても実現され得る。同じ分析フィルタバンクが発生する異なるサブバンド信号のための位相ボコーダは、同じ構成を有しかつ
図9に示す帯域幅拡張ファクタにより、他のフィルタバンクからのサブバンド信号用の位相ボコーダとは異なる。帯域幅拡張ファクタは位相ボコーダ106aにおいては2である。位相ボコーダ106bにおいては、帯域幅拡張ファクタは、3であり、かつ位相ボコーダ106cにおいては、帯域幅拡張ファクタは4である。なお、ここに開示する教示の目的には、一般に、帯域幅拡張またはいくつかの異なる帯域幅拡張でさえ行う必要はない。したがって、デシメータ102a,102bおよび102cは、省略することができる。異なる位相ボコーダからの出力をpQMF合成フィルタバンク108へ入力する。ブロック104a〜104cにおける分析フィルタバンクが、異なる技術において実現される場合、合成フィルタバンク108も、異なる技術で実現されることになり、それにより分析フィルタバンク技術および合成フィルタバンク技術は、相互に一致する。
ここに開示する教示による装置は、QMF分析ステージ104a,104bおよび104cの1以上とQMF合成フィルタバンク108において分散する態様で実現され得る。同じまたは類似する態様で、開示の教示による装置の一部である時間マニピュレータをQMF分析ステージ104a,104bおよび104cとQMF合成フィルタバンク108の間で分配させてもよい。したがって、QMF分析ステージ104a,104bおよび104cの1以上は、時間操作からの過渡を含むブロックを省略しかつ元のブロックを合成フィルタバンク108へ送る。合成フィルタバンク108は、検出されかつ一般に未修正の過渡を合成フィルタバンク108のオーバーラップ加算ステージにより発生させた信号に加算することにより過渡加算部の機能性も提供し得る。
図9の模式図にはこの過渡検部について明示的に示していない。過渡検出部は、QMF分析ステージ104a,104bおよび104cの一部とすることが可能である。他の方法では、過渡検出部をそれ自体でユニットとすることができる。
【0042】
図10は、異なる実現例を示し、ライン110上のベースバンド信号が分析フィルタバンク112へ入力される。こうして、ローバンド信号が、複数のサブバンド信号に変換される。さらに、スィッチングステージまたは接続ステージ114が設けられ、それにより位相ボコーダ106a,106bにより出力されるかまたはベースバンドpQMF分析112により出力される異なるサブバンド信号をなんらかの任意に選択された合成帯域へ入力できる。
【0043】
個々の位相ボコーダは、個別のpQMFバンドに関連する。
図10において、2の帯域幅拡張ファクタを用いる第1の高調波パッチの最初のpQMFバンドおよび最後のpQMFバンドを106aとして示す。帯域幅拡張ファクタ3を用いる他の高調波パッチについては、このパッチの最初と最後のpQMFバンドを106bとして示す。
【0044】
位相ボコーダ出力とベースバンドpQMF分析112出力の任意に選択された組み合わせを用いて、合成信号を発生できる。なお、スィッチングステージ114は、ある補助情報を有するオーディオ信号により制御されるかまたはある信号特性により制御される被制御スィッチングステージにすることができる。ほかのやり方では、ステージ114は、なんらのスィッチング能力も持たない単純な接続ステージにすることもできる。これは、要素112ならびに106aおよび106bからの出力信号のある分布が固定設定でかつ固定にプログラムされる場合である。この場合、ステージ114は、スィッチを含まないが、いくつかの貫通接続を含む。
【0045】
図11Aは、単一のサブバンド信号を処理するための処理実現例の実施例を示す。単一のサブバンド信号は、
図11Aには示さない分析フィルタバンクによるフィルター処理の前または後に何らかのデシメーションを行っていてもよい。デシメーションを行った場合には、この単一のサブバンド信号の時間長は、一般に、デシメーションを構成する前の時間長より短くなる。単一のサブバンド信号を、ブロック抽出部1800へ入力する。
図11Aのブロック抽出部1800は、eと例示的に呼ぶサンプル/ブロックアドバンス値を用いて動作する。サンプル/ブロックアドバンス値は、可変でも固定でもよく、ブロック抽出ボックス1800内への矢印として
図11Aに示す。ブロック抽出部1800の出力には、複数の抽出されたブロックが存在する。これらのブロックはかなり重複しており、これは、サンプル/ブロックアドバンス値eがブロック抽出部のブロック長よりかなり短いからである。例として、ブロック抽出部は、12サンプルからなる複数のブロックを抽出する。第1のブロックは、サンプル0〜11を含み、第2のブロックがサンプル1〜12を含み、第3のブロックがサンプル2〜13を含み、以下同様である。この実施例では、サンプル/ブロックアドバンス値eは1に等しく、11倍の重複がある。上記の例は、例として与えられる値であり、応用ごとに変更することができる。
【0046】
個々のブロックが、ブロックごとの窓関数を用いてブロックのウィンドウ処理を行うためのウィンドワ1802へ入力される。さらに、ブロックごとの位相を計算する位相計算部1804が、設けられる。位相計算部1804は、ウィンドウ処理の前または後に個々のブロックを使用することができる。そこで、位相調整値p×kが計算され、位相調整部1806へ入力される。位相調整部は、調整値をブロック内の各サンプルに付与する。さらに、因数kは、帯域幅拡張ファクタに等しい。たとえばファクタ2での帯域幅拡張を得る場合、ブロック抽出部1800により抽出されたブロックについて計算した位相pを、ファクタ2で乗算し、かつ位相調整器1806内のブロックの各サンプルに付与される調整値は、p×2である。これは、例として示す値/ルールである。他のやり方では、合成のために較正した位相がk * p、p + (k-1)*pである。したがってこの例では、較正ファクタは、乗算された場合は2または加算された場合は1*pのいずれかである。他の値/ルールを適用して位相較正値を計算することができる。
【0047】
実施例において、単一のサブバンド信号は複素サブバンド信号であり、ブロックの位相は、複数の異なる方法で計算することができる。一つの方法はブロックの中心または中心付近でサンプルを取りかつこの複素サンプルの位相を計算することである。
【0048】
図11Aでは、位相調整部が、ウィンドワに続いで動作するように示すが、これらの2つのブロックは相互に入れ替えが可能で、それによりブロック抽出部により抽出したブロックに位相調整を行い、続いてウィンドウ処理動作を行う。両方の動作、すなわちウィンドウ処理と位相調整は、実値または複素値乗算であり、これら2つの動作をそれ自体が位相調整乗算ファクタとウィンドウ処理ファクタの積である複素乗算ファクタを用いる単一の動作に要約することができる。
【0049】
位相調整したブロックをオーバーラップ/加算および振幅較正ブロック1808へ入力し、そこでウィンドウ処理しかつ位相調整されたブロックにオーバーラップ加算を行う。しかしながら重要なのは、ブロック1808におけるサンプル/ブロックアドバンス値がブロック抽出部1800で使用される値とは異なるということである。特に、ブロック1808におけるサンプル/ブロックアドバンス値がブロック1800において使用される値eより大きく、それによりブロック1808により出力される信号のタイムストレッチが得られる。したがって、ブロック1808が出力する処理済サブバンド信号は、ブロック1800に入力されるサブバンド信号より長い長さを有する。2の帯域幅拡張が得られる場合、ブロック1800における対応の値の2倍のサンプル/ブロックアドバンス値が使用される。これにより、ファクタ2のタイムストレッチが得られる。しかしながら、他のタイムストレッチファクタが必要な場合は、ブロック1808の出力が必要な時間長を有するように、他のサンプル/ブロックアドバンス値を使用することができる。
【0050】
オーバーラップの問題に対処すべく、ブロック1800と1808における異なるオーバーラップの問題に対処するため、振幅較正を行うことが好ましい。ただし、この振幅較正は、ウィンドワ/位相調整部乗算ファクタにも導入されることが考えられるが、振幅較正もオーバーラップ/処理に続いて行うことができる。
【0051】
ブロック長12、ブロック抽出部におけるサンプル/ブロックアドバンス値が1の上記の例では、ファクタ2で帯域幅拡張を行った場合、オーバーラップ/加算ブロック1808のサンプル/ブロックアドバンス値が2に等しくなると考えられる。これでは依然として6つのブロックが重なる。ファクタ3で帯域幅拡張した場合には、ブロック1808で使用するサンプル/ブロックアドバンス値が3に等しくなると考えられ、オーバーラップは、4のオーバーラップにまで下がると考えられる。4倍の帯域幅拡張が行われる場合、オーバーラップ/加算ブロック1808は、4のサンプル/ブロックアドバンス値を使う必要があるが、それでも依然として2を超える数のブロックがオーバーラップする。
【0052】
図11Aに示す個々のサブバンド信号の位相ボコーダは、接続部201aにより示すサブバンド信号内で過渡検出を行うかまたは接続ライン201bで示す分析フィルタバンク処理の前に信号の過渡検出を行うための過渡検出部200を備えていることが好ましい。過渡検出部200が過渡を検出するとすぐにオーバーラップ/加算ステージは、制御接続部203により示すオーバーラップ/加算処理において過渡を有するブロックを使用しないよう制御される。実施例において、ライン203上の信号が、オーバーラップ/加算ステージを制御して過渡事象を有するすべてのブロックを排除する。これにより、このステージの出力に信号が得られ、これは、このステージの前の信号に対してストレッチされているが過渡を含んでいない。
【0053】
過渡のないストレッチされた信号は、過渡を、ストレッチされた信号に加えるよう構成される過渡加算部へ入力され、出力では、過渡を挿入されたストレッチされた信号が存在するが、これらの挿入された過渡は複数のオーバーラップ/加算処理により影響を受けていない。
【0054】
ある実施例では、過渡部は、接続ライン206およびライン201aで示すサブバンド信号自体から挿入される。代替的には、信号を他のサブバンド信号かまたはサブバンド分析の前の信号から取り出すことができる。これは、過渡が個々のサブバンドに対しても全く同様の態様で生じるのが過渡の特徴だからである。しかしながら、一方で、サブバンドに生じる過渡事象を使用することは、いくつかの点で好ましい。というのは、サンプリングレートおよび他の考慮すべき事項が、ストレッチされた信号に限りなく近いからである。
【0055】
図11Bは、単一のサブバンド信号を処理するための処理実現の他の可能な実施例を示す。ブロック抽出部一1800の上流には、単一のサブバンド信号に作用する過渡抑制ウィンドワ1798が挿入される。過渡抑制ウィンドウ1798は、過渡を含むサンプルまたはブロックを取り除く。サンプルが過渡を含んでいるか否かの評価は、過渡検出部200によって行われる。単一のサブバンド信号は、過渡検出部200が入力として単一のサブバンド信号を受信するよう、過渡抑制ウィンドワ1798の入力側でタッピングされる。過渡の検出の際、過渡検出部200は、過渡抑制ウィンドワ1798へ対応の信号を出力し、過渡抑制ウィンドワ1798は、過渡を含むとして過渡検出部200により示されたサンプルを抑制することによって応答する。したがって、過渡検出部200によりサンプルを含むとしてマークされるサンプルは、ブロック抽出部1800に入らない。他の非過渡含有サンプルは、ブロック抽出部1800、ウィンドワ1802、位相計算部1804、位相調整部1806およびオーバーラップ加算ブロック1808が処理するブロックに保持される。オーバーラップ加算ブロック1808は、過渡のないストレッチされた信号を出力する。
【0056】
過渡含有サンプルは、再び過渡加算部204によって過渡のないストレッチされた信号へ加算される。過渡加算部204は、過渡検出部200からの制御信号と元の単一サブバンド信号を入力として受ける。この情報で、過渡加算部は、過渡抑制ウィンドワ1798により抑制されたサンプルを識別し、これらのサンプルを過渡のないストレッチされた信号へ再挿入することができる。過渡加算部204の出力で、過渡が挿入された処理済サブバンド信号(長い時間長)が得られる。
【0057】
図12Aから
図12Eは、以前に実現された方法およびここに開示する教示により、オーディオ信号または複数のサブバンド信号のうちの1つが処理され得る様子を示す。
図12Aにおいて、オーディオ信号1202のシーケンスが示される。シーケンス1202は、複数のサブバンド信号の1つに属し得る。文字「T」は、過渡検出部が過渡を検出したサンプルをマークする。
【0058】
図12Aのシーケンス1202の下に、複数の抽出されたブロック1206が示される。複数の抽出されたブロック1206は、各々12サンプルの長さでかつ過渡Tを有するサンプルを含む。複数の抽出されたブロック1206の上と下に、過渡Tを含まない1つの先行ブロック1204と1つの後続ブロック1208が示される。
図12Aに見られるとおり、複数の抽出されたブロック1204全体で、23ブロックにわたる。
【0059】
図12Bは、標準的な時間操作方法において、先行ブロック1204、複数の抽出されたブロック1206のいくつかのブロックおよび後続ブロック1208が、オーディオ信号のタイムストレッチを行うため、個々のブロックにオーバーラップおよび加算を行う前に、相互に1ブロックずつシフトされている。ブロックのシフトされたものまたは、複数のブロックには1204’,1206’および1208’と参照番号をつける。
図12Bにおいて、オーバーラップ加算アドバンス値は2であり、一方、
図12Aに示すブロック抽出アドバンス値は1である。ブロックをシフトさせた結果、複数の抽出されたブロック1206のうちのいくつかのブロックにおける過渡Tを含むサンプルは、すでに時間的には整列しておらず、12サンプルの時間スパンにわたって広がっている。
【0060】
図12Cは、ここに開示の教示にしたがう、それらのサンプルの1以上における過渡Tを含むブロックの排除を示す図である。排除されたブロックは、抽出された複数のブロック1206’に属し、点線で示す。ブロック1206’の排除により、14サンプル長のギャップが残される。さらに、ギャップの前の10サンプルの時間間隔およびギャップの後の10サンプルの時間間隔において、通常の6ブロックではなく、減じられた数のブロックがオーバーラップ加算処理において考慮され、または装置のオーバーラップ加算ステージによりオーディオ信号処理のために考慮される。なお、
図12Bおよび
図12Cは、例示目的のみのものであり、
図12Aの複数の抽出されたブロック1206のうちいくつかのブロックは、過渡検出後ただちに、すなわち、複数の抽出されたブロック1206のこれらのブロックに対して時間シフト動作を行うことなく削除することが可能である。ここに開示の教示による1つの可能な実現例では、複数の抽出されたブロック1206のこれらブロックをリルートさせてオーバーラップ加算ステージをバイパスさせ、オーバーラップ加算ステージの下流に挿入するやりかたである。
【0061】
図12Dは、時間操作されたオーディオ信号における元の過渡セクション、すなわち複数の抽出されたブロックの挿入を示す。元の過渡セクションは、過渡Tを含むブロックを削除した後に残されたギャップに挿入される。元の過渡セクションを、オーディオ信号の時間操作された残りの部分に加えることが可能である。ギャップの始まりまたは左端に、複数の抽出されたブロック1206が6つの通常ブロック(そのうち3つは、
図12Dではドッドパターンで示す)と重ねられる。
図12Dに示す例では、通常のブロックは、2のオーバーラップ加算値で処理される。
図12Dからわかるとおり、元の過渡セクションの終わりと次のブロック1208’との間に残留ギャップがある。元の過渡セクションが、シフトされた先行のブロック1204’とシフトされた後続のブロック1208’との間のギャップにおいてより均等に分布および/または配置されるように、複数の抽出されたブロック1206を右へ、すなわちより後の瞬間へ、数サンプルシフトさせることが可能である。
【0062】
図12Dの下の部分は、各サンプルに重ねられるブロックの数を示す。12サンプルのブロック長による通常の時間操作によれば、1のブロック抽出値および2のオーバーラップ加算アドバンス値では、時間操作されたオーディオ信号の特定のサンプルについてオーバーラップ加算プロセスの間に一般に6つのブロックが考えられる。言い換えれば、時間操作された信号の1つのサンプルにおいては、元のオーディオ信号から抽出された6つの異なるブロックから寄与がある。
図12Dの曲線は、元の過渡セクションの処理の際に、当初6つのブロックが考慮されることを示す。複数の抽出されたブロック1206のうちのいくつかのブロックが1サンプルの差ずつずらして並べられ、重ねられるブロックの数が増えて、過渡Tが検出されたサンプルについては、値は12に達する。次に、ブロックのカウントは、新たなサンプルごとに1ずつ減り、元の過渡セクションの終わりでは値1に達する。ブロックのカウントを用いて、重ねられたブロックの数が通常の6という値とは異なるセクションにおける時間操作された信号の振幅を較正することができる。このために、ブロックカウントを過渡の検出に基づいて決定し、振幅較正へ送ることができる。振幅較正は、オーバーラップ、加算および/もしくは重ねあわせの前のブロックまたは結果として得られた時間操作済みの信号のいずれかに対して作用し得る。
【0063】
上記のとおり、2つのサンプルの残留ギャプが残る。通常のブロックが再び開始する時、後続のブロック1208’から始める。
【0064】
図12Eは、元の過渡セクションの終わりとシフトされた後続のブロック1208’との間に残留ギャップが存在しないように2つのサンプル分ギャップが短縮された最適な実現例を示す。この方法により、結果として得られる時間操作済信号のわずかな破壊が生じるかもしれないが(特に、わずかな短縮)、その影響は無視可能である。上記のとおり、元の過渡セクションを前のブロック1204’と後続のブロック1208’との間のギャップのより中心に挿入することができる。
【0065】
1以上の過渡含有サンプルを含む完全なブロックを削除する代わりに、
図12Aから
図12Eに示すとおり、ブロックの残りのサンプルを維持したままで、個々の過渡含有サンプルをブロック内で削除することができる。過渡含有サンプルの削除は、サンプルの値をゼロに設定することで実現され得る。したがって、過渡含有サンプルは、オーバーラップ加算ブロック1808の出力に寄与しない。ゼロにされたサンプルでオーバーラップ加算される他のサンプルの寄与を増やすために、振幅較正を利用しても良い。過渡含有サンプルをゼロにする動作は、そのサンプルの前後のサブバンド信号をそれぞれフェードアウトおよびフェードインさせることを伴ってもよい。たとえば、過渡含有サンプルの数サンプル前と過渡含有サンプルの数サンプル後で、たとえば過渡含有サンプルの周りに三角形のフェーディングウィンドウを実現するために、サブバンド信号をフェーディングファクタ信号で乗算してもよい。
【0066】
図13は、開示の教示に従ってオーディオ信号を処理するための装置の一部を構成し得る時間マニピュレータの模式ブロック図である。時間マニピュレータは、ともにオーディオ信号を構成する複数のサブバンド信号を受信する。時間マニピュレータ内で、複数のサブバンド信号をブロック抽出部およびバッファ1810により一時的に保存し得る。ブロック抽出部およびバッファ1810は、複数のサブバンド信号の各々からブロックを抽出する。ブロックは、特定のブロック長Lを有し、特定のブロック抽出アドバンス値eで抽出される。例えば、ブロック長Lは、12であり、ブロック抽出アドバンス値eは、1であるとする。ブロック抽出部およびバッファ1810は、ブロック長Lおよびブロック抽出アドバンス値eを入力パラメータとして受ける。他の態様では、ブロック長Lおよびブロック抽出アドバンス値eをブロック抽出部およびバッファ1810において固定で保存することができる。
【0067】
ブロック抽出部およびバッファ1810は、抽出されたブロックを出力し、それらをオーバーラップ加算ステージ1808へ付与する。そこで、抽出されたブロックは、ブロック抽出アドバンス値eとは異なるオーバーラップ加算アドバンス値k * eでオーバーラップされて加算され、時間操作済オーディオ信号を構成する。オーバーラップ加算ステージ1808は、複数のサブバンド信号のうち対応の1つのオーバーラップ加算ユニット等複数のオーバーラップ加算ユニットを含み得る。他の選択肢としては、サブバンド信号が個々に連続してオーバーラップ加算されるように、単一のオーバーラップ加算ステージかまたはいくつかのオーバーラップ加算ユニットを時間シェアリングまたはマルチプレックス態様で使用することが考えられる。
【0068】
時間マニピュレータは、複数のサブバンド信号を受信する過渡検出部200をさらに含む。過渡検出部200は、たとえば楽音もしくは単語音声の非高調波アタックフェーズまたは高度な非周期的成分および/もしくはその音声の高調波成分より高い周波数のより高い大きさに関して、サブバンド信号またはオーディオ信号を分析し得る。過渡検出部200の出力は、オーディオ信号の現在のセクションにおいて過渡が識別されたかどうかならびにオーバーラップ加算ステージ1808および過渡加算部1812へ付与されるかどうかを示す。過渡検出部200の出力が、過渡が検出されたことを示す場合、オーバーラップ加算ステージ1808は、オーバーラップ加算動作を行う際に、過渡Tを含むこれらのブロックを無視するよう制御される。過渡加算部1812側は、過渡が検出されたとする過渡検出部200からの表示を受けて、他の態様で時間操作されるオーディオ信号に元の過渡セクションを挿入する。加算された過渡とともに時間操作された信号は時間マニピュレータの出力を構成する。
【0069】
図14は、ここに開示する教示による他の実現例に従う時間マニピュレータの模式ブロック図である。
図13に示す時間マニピュレータの要素に加えて、
図14の時間マニピュレータは、振幅較正1814を含む。振幅較正1814は、過渡検出部200からの検出された過渡についての表示を受ける。この情報に基づいて、振幅較正1814は、オーバーラップ加算プロセスで使用されている可変数のブロックに符合するよう信号ブロックの振幅を修正し得る。考慮するブロック数の変更は、複数の抽出されたブロック1204の除去とおそらくは元の過渡セクションの挿入に伴うものである。一般に、ブロックの数が変化する時間パターンは知られており、検出された過渡の時点に基づいて決定することができる。したがって、振幅較正へトリガ信号を付与して、時間パターンに従って後続ブロックの振幅を調整することで十分かもしれない。可能な時間パターンは、
図12Dおよび
図12Eに示すオーバーラップ加算プロセスにおいて考慮されるブロックの数の展開を示す波形に基づき得る。振幅較正値は、たとえばブロックカウントの逆数などが考えられる。
【0070】
図15は、ここに開示する教示によるオーディオ信号を処理するための方法の模式フロー図である。方法の開始の後、動作1502が行われ、オーディオ信号の複数のサブバンド信号が個々に時間操作される。動作1502はサブ動作1504〜1510を含む。
【0071】
1504で、複数のサブバンド信号のうちの対応するサブバンド信号のブロックをオーバーラップかつ加算する。ブロック抽出アドバンス値とは異なるオーバーラップ加算アドバンス値を使用する。動作1504は、過渡がない場合の通常のプロセスフローを表し、連続的に行われる。
【0072】
過渡検出動作は1506で行われ、オーディオ信号またはサブバンド信号における過渡を検出する。動作1506を
図15のフロー図に示す動作1504および他の動作と同時に行ってもよい。
【0073】
オーバーラップおよび加算の動作1504を行う際に、検出された過渡の影響は減じられるかまたは検出された過渡が廃棄されるかのいずれかである。
【0074】
検出された過渡は、その後、動作1510で、オーバーラップおよび加算の動作1504により発生した複数の信号に加算される。
【0075】
ここに開示する教示によれば、オーディオ信号の過渡セクションは、一般にオーディオ信号の残りと同じ時間操作を経ていないが、時間操作された結果として得られる信号は一般に過渡セクションを現実的な態様にする。これは、すくなくとも一部には、過渡が、周波数シフト等の多くの信号操作方法に感受性が非常に高いという事実によるものである。
【0076】
ここに開示の教示の他の局面によれば、オーディオ信号を処理するための装置が、サブバンド信号を発生させるための分析フィルタバンクと、複数のサブバンド信号を個別に時間操作するための時間マニピュレータとを含み、時間マニピュレータが、ブロック抽出アドバンス値とは異なるオーバーラップ加算アドバンス値を使用して、サブバンド信号のブロックをオーバーラップしかつ加算するためのオーバーラップ加算ステージと、オーディオ信号またはサブバンド信号において過渡を検出するための過渡検出部とを含み、オーバーラップ加算ステージは、加算を行う際に、検出された過渡の影響を減じるかまたは検出された過渡を使用しないよう構成され、時間マニピュレータはさらに、オーバーラップ加算ステージが発生した信号に、検出された過渡を加算するための過渡加算部を含む。
【0077】
ここに開示する教示の他の特徴によれば、上記の装置は、分析フィルタバンクの入力側または出力側で配列されるデシメータをさらに含み、時間マニピュレータが、サブバンド信号のタイムストレッチを行うよう構成されてもよい。
【0078】
ここに開示される教示の他の特徴によれば、上記の装置において、過渡検出部が、過渡を含むと検出されたブロックをマークするよう構成されてもよく、かつオーバーラップ加算ステージが、マークされたブロックを無視するよう構成されてもよい。
【0079】
ここに開示される教示の他の特徴によれば、上記の装置において、オーバーラップ加算ステージが、サブバンド信号のタイムストレッチを行うためのブロック抽出アドバンス値より大きいオーバーラップ加算アドバンス値を適用するよう構成されてもよい。
【0080】
ここに開示される教示の他の特徴によれば、先行の請求項のいずれかに記載の装置において、時間マニピュレータが、ブロック抽出部と、ウィンドワ/位相調整部と、ウィンドワ/位相調整部が、抽出されたブロックの位相調整を行うことを基礎とする位相を計算するための位相計算部とを含んでもよい。
【0081】
ここに開示される教示の他の特徴によれば、上記の装置において、過渡検出部が、過渡を含むサブバンド信号の一部の長さを決定するよう構成され、その長さが過渡加算部により挿入される信号の長さに一致しても良い。
【0082】
ここに開示される教示の他の特徴によれば、上記の装置において、過渡加算部が、過渡を有するサブバンド信号の一部を挿入するよう構成され、その一部の長さが十分に長く選択され、それによりオーバーラップ加算処理から出力される信号から過渡を有する部分へのまたは過渡を有する部分からオーバーラップ加算処理からの出力へのクロスフェードが可能になるようされてもよい。
【0083】
ここに開示される教示の他の特徴によれば、上記の装置において、過渡加算部が、クロスフェード動作を行うよう構成されてもよい。
【0084】
ここに開示される教示の他の特徴によれば、上記の装置において、過渡検出部が、過渡特性を有するサブバンド信号からブロック抽出部が抽出したブロックを検出するよう構成されてもよく、かつオーバーラップ加算ステージは、加算を行う際に、検出されたブロックの影響を減じるかまたは検出されたブロックを使用しないよう構成されてもよい。
【0085】
ここに開示される教示の他の特徴によれば、上記の装置において、過渡検出部が、分析フィルタバンクに入力される信号またはサブバンド信号の予め定められた期間にわたってエネルギの重力の移動中心計算を行うよう構成されてもよい。
【0086】
装置に関連していくつかの特徴について記載したが、これらの特徴は、ブロックまたは装置が方法ステップまたは方法ステップの特徴に相当する、対応する方法の説明も表すことは明らかである。同様に、方法ステップに関連して記載した特徴も対応の装置の対応のブロック、アイテムまたは特徴の説明も表す。
【0087】
発明のエンコードされたオーディオ信号は、デジタル記憶媒体に記憶するかまたは無線通信媒体等の伝送媒体もしくはインターネット等の有線伝送媒体上で伝送することができる。
【0088】
いくつかの実現要件によっては、本発明の実施例は、ハードウェアでもソフトウェアでも実現することができる。実現とは、電子的に可読な制御信号を記憶したフロッピィディスク、DVD、CD、ROM、PROM、EPROM、EEPROMまたはフラッシュメモリ等のデジタル記憶媒体を使用して行われ、これらの信号は、それぞれの方法が実行されるようにプログラム可能コンピュータシステムと協働する(または協働する能力がある)。
【0089】
本発明のいくつかの実施例には、電子的に可読な制御信号を有するデータキャリアを含み、これら信号は、プログラム可能なコンピュータシステムと協働することが可能で、それによりここに記載の方法の1つが実行される。
【0090】
一般に、本発明の実施例は、プログラムコードを有するコンピュータプログラム製品として実現可能で、コンピュータプログラム製品をコンピュータ上で実行すると、プログラムコードは、動作可能となり方法の1つが実行される。プログラムコードは、たとえば、機械可読なキャリア等に記憶することができる。
【0091】
他の実施例には、ここに記載の方法の一つを実行するための、機械可読なキャリアに記憶されたコンピュータプログラムを含む。
【0092】
したがって、言い換えれば、本発明の実施例は、コンピュータで実行される際に、ここに記載の方法の1つを実行するためのプログラムコードを備えるコンピュータプログラムである。
【0093】
したがって、発明の方法の他の実施例は、ここに記載の方法の1つを実行するためのコンピュータプログラムを記録したデータキャリア(またはデジタル記憶媒体またはコンピュータ可読媒体)である。
【0094】
したがって、発明の方法の他の実施例は、ここに開示する方法の1つを実施するためのコンピュータプログラムを表すデータストリームまたは信号のシーケンスである。データストリームまたは信号のシーケンスは、たとえば、インターネットを介してデータ通信接続により転送されるよう構成されてもよい。
【0095】
他の実施例は、ここに開示の方法の1つを実施するよう構成または適合されたコンピュータまたはプログラム可能論理装置等の処理手段を含む。
【0096】
他の実施例は、ここに開示の方法の1つを実行するためのコンピュータプログラムをインストールしたコンピュータを含む。
【0097】
いくつかの実施例では、プログラム可能論理装置(フィールドプログラマブルゲートアレイ等)を使用してここに記載の方法の機能性のいくつかまたはすべてを実行しても良い。いくつかの実施例においては、フィールドプログラマブルゲートアレイは、ここに記載の方法の1つを実行するためにマイクロプロセッサと協働してもよい。一般に、方法は、なんらかのハードウェア装置により実行されることが好ましい。
【0098】
上記の実施例は、本発明の原則を説明するに過ぎない。当業者には、ここに記載の構成および詳細について、変形および変更が明らかであることは当然である。したがって、発明は係属する請求の範囲によってのみ限定されることを意図し、実施例の記載および説明により提示される特定の詳細によって限定されない。