フェーズボコーダ

フェーズボコーダ（英語: Phase vocoder）は音声信号を周波数領域の振幅と位相でモデル化するボコーダである。 フェーズボコーダの心臓部は短時間フーリエ変換 (STFT)であり、次の段階を経る。 分析: 　STFTによる時間領域表現→時間-周波数表現（英語版）変換 変更:　 任意の周波数成分の振幅・位相操作 再合成: 逆STFTによる周波数領域表現→時間領域表現変換 フェーズボコーダは周波数領域での変更処理により音声信号の時間伸縮とピッチ変換などを可能にする。また再合成前にSTFT分析フレームの時間的位置を変更すれば、再合成結果の時間発展を変更でき、たとえば音の時間スケール変更を実現できる。 位相コヒーレンス問題はSTFTによる時間-周波数表現 (STFT表現) の操作で必ず解決が必要な主要問題である。これは、時間軸方向にオーバーラップした分析窓（窓関数）を使用する事により、個々の信号成分 (正弦波、インパルス) が、複数のフレームやSTFT周波数ビン(bin)へ拡散しまう問題である（周波数については「スペクトル漏れ」にあたる。）。窓関数の時間的オーバーラップは、隣接するSTFT分析結果が互いに強い相関を持つという事実に基づいている (時刻 t の分析フレームに存在する正弦波成分は、後続フレームにも同様に存在し続ける可能性が高い)。 STFT表現上で行なう全ての変更は、隣接する 周波数ビン (垂直コヒーレンス) や 時間フレーム (水平コヒーレンス) との間で 「適切な相関関係」を維持する必要がある。これは、フェーズボコーダによる信号変形の問題に関連している。合成音が極めて単純な場合以外、この「適切な相関関係」を正確に維持ですることは困難である。フェーズボコーダの発明以来、研究は主にSTFT表現変更後に垂直/水平コヒーレンスを維持するアルゴリズムの発見のために行われてきた。なお、振幅コヒーレンスは、時間スケール操作に関してマイナーな問題に過ぎない。なぜなら、分析フレームの時間シフトは、振幅に小さな影響しか与えないからである。しかし位相コヒーレンスの問題は、適切な解決策が得られるまでかなり長い期間の検討を要した。 フェーズボコーダは Flanagan & Golden (1966) によって、正弦波成分を表す各ビンの位相間で水平コヒーレンスを維持するアルゴリズムとして導入された。このオリジナルのフェーズボコーダは、隣接する周波数ビン間の垂直コヒーレンスを考慮しなかったので、このシステムによるタイムストレッチ(時間伸縮)の音響信号は明瞭さが欠けていた。 振幅変更後のSTFT表現から音響信号を再構築する最適な方法は、Griffin & Lim (1984) により提案された。このアルゴリズムはコヒーレントSTFT生成の問題を考慮していないが、たとえ変更済みSTFTがコヒーレントでなくとも(いかなる信号も表現していなくとも)、それに可能な限り近いSTFTに相当する音響信号の発見を可能にする。 垂直コヒーレンスの問題は、タイム・スケーリング操作の品質に関する大きな問題として、Laroche & Dolson (1999) が周波数ビン間の位相的整合性を保つずっと簡単な方法を提案するまで、(問題が)残り続けた。LarocheとDolsonの提案は、フェーズボコーダの歴史的転換点と看做すべきだろう。垂直位相の整合性保証により、非常に高品質なタイムスケーリング変換が得られることが示されている。 Larocheが提案したアルゴリズムは、発声(あるいはノート発音)の瞬間の水平位相コヒーレンスの維持は不可能だった。この問題の解決策はRöbel (2003) が提案した 。ここで説明したRöbel提案までの音質改善策を施した、フェーズボコーダ・ベースの信号変換のソフトウェア実装例として、IRCAM SuperVPを挙げることができる 。 イギリスの作曲家 トレヴァー・ウィシャート（英語版）は、人間の声のフェーズボコーダ分析/変換に基づいて、“Vox V（）” (アルバム “Vox Cycle（英語版）”) を制作した。アメリカの作曲家 ロジャー・レイノルズの作品 “Transfigured Wind（）” は、フェーズボコーダをフルート音のタイムストレッチに使用した。 商用音楽制作で広く活用されているプロプライエタリなピッチ修正ソフトウェア「Auto-Tune」も、フェーズボコーダの動作原理に基づいているとみなされている。 音声分析合成 周波数スペクトル スペクトログラム [脚注の使い方] ^ 信号の位相情報とは、信号を極形式表示した場合の偏角 θ {\displaystyle \theta } の事。信号の周波数や位相の時間的変化を踏まえて瞬時位相（英語版）と呼ぶ。 一般に信号解析では複素解析を応用して、実信号 x ( t ) {\displaystyle x(t)} を形式的に複素拡張して解析信号（英語版） x a ( t ) = x ( t ) + i ⋅ x ~ ( t ) {\displaystyle x_{a}(t)=x(t)+i\cdot {\tilde {x}}(t)} として扱い、オイラーの公式で極形式 x a ( t ) = r ⋅ e i θ {\displaystyle x_{a}(t)=r\cdot e^{i\theta }} に変換して、偏角 θ {\displaystyle \theta } を得る。 信号が単純な余弦関数もしくは正弦関数の場合、その引数が偏角である。 フェーズボコーダのようなフーリエ変換の応用では、信号のフーリエ級数 x k ( t ) {\displaystyle x_{k}(t)} を極形式に変換して、フーリエ級数の偏角 θ k ( t ) {\displaystyle \theta _{k}(t)} を得る。 (関連記事: 「アディティブ・シンセシス」の"周期関数のフーリエ級数展開"、"周波数の時間発展") ^ "The method specifies the speech signal in terms of its short-time amplitude and phase spectra. For this reason, it is called phase vocoder." Flanagan, et al. (1966). Phase Vocoder. ^ Flanagan, J.L.; Golden, R.M. (1966), “Phase vocoder”, Bell System Technical Journal 45 (9): 1493–1509, http://www.alcatel-lucent.com/bstj/vol45-1966/articles/bstj45-9-1493.pdf  ^ Griffin, D.; Lim, J. (1984), “Signal Estimation from Modified Short-Time Fourier Transform”, IEEE Transactions on Acoustics, Speech and Signal Processing 32 (2): 236–243, doi:10.1109/TASSP.1984.1164317, http://ieeexplore.ieee.org/xpls/abs_all.jsp?arnumber=1164317  ^ Laroche, Jean; Dolson, Mark (1999), “Improved Phase Vocoder Time-Scale Modification of Audio”, IEEE Transactions on Speech and Audio Processing 7 (3): 323–332, doi:10.1109/89.759041, http://ieeexplore.ieee.org/iel4/89/16428/00759041.pdf  ^ Röbel, Axel (IRCAM) (2003), “A new approach to transient processing in the phase vocoder”, DAFx-03: Proc. of the 6th Int. Conference on Digital Audio Effects, オリジナルの2004年6月17日時点におけるアーカイブ。, https://web.archive.org/web/20040617224423/http://www.ircam.fr/equipes/analyse-synthese/roebel/paper/dafx2003.pdf  ^ SuperVP (Software), Analysis-Synthesis Team, IRCAM, http://anasynth.ircam.fr/home/english/software/supervp  SuperVP (Super Phase Vocoder)は、IRCAM で使われている 拡張フェーズボコーダ であり、その提供機能は、タイムストレッチ、ピッチシフト、フィルタリング、クロスシンセシス、音源分離とリミックス、構成成分のトリートメントと再構築、ノイズ除去、等。 AudioSculptのカーネルとして、Sinusoidal modelingを提供するPm2ライブラリと共に使用されている。 ^ Wishart, Trevor (Winter, 1988), “The Composition of Vox 5”, Computer Music Journal 12 (4): 21–27, JSTOR 3680150, http://www.jstor.org/stable/3680150  ^ Serra, Xavier (1989), “A System for Sound Analysis/Transformation/Synthesis based on a Deterministic plus Stochastic Decomposition”, PhD thesis (Stanford University): p. 12, CiteSeerx: 10.1.1.76.2306  ^ Mary Bellis, Who Invented Auto-Tune?, Harold Hildebrand aka Dr Andy Hildebrand Invented Auto-Tune, About.com, 2014年7月26日閲覧. ^ Joe Diaz, The Fate of Auto-Tune, マサチューセッツ工科大学, 2009. Dudley, Homer (1939), “The vocoder”, Bell Labs Record 17: pp. 122–126  英語版ウィキブックスに本記事に関連した解説書・教科書があります。 フェーズボコーダとエンコーダ The Phase Vocoder: A Tutorial, http://www.panix.com/~jens/pvoc-dolson.par  （英語） — フェーズボコーダに関するチュートリアル New Phase-Vocoder Techniques for Pitch-Shifting, Harmonizing and Other Exotic Effects, http://www.ee.columbia.edu/~dpwe/papers/LaroD99-pvoc.pdf  （英語） — [ピッチシフト、ハーモナイジング、その他のエキゾティックなエフェクトのための新しいフェーズボコーダ・テクニック] “Phase Vocoder”, Guitar Pitch Shifter, http://www.guitarpitchshifter.com/algorithm.html#33  （英語） — フェーズボコーダの解説(図・式入り) ソフトウェア AwesomeBox, https://web.archive.org/web/20110709004823/http://decabear.com/awesomebox.html  （英語） — オープンソースのピッチ修正ソフト