Audio Unit によるリアルタイム・タイムストレッチ(3. パラメータ設定)

本タイトルでは最後となる、タイムストレッチのパラメータ設定について説明していきます。 まず、前回説明した prepareAUGraph 関数内でコメントにしていた箇所を有効にします。 上記で生成している AUiPodTimeProxy クラスでタイムストレッチのパラメータ設定を行います。 まず、AUiPodTimeProxy クラスの定義を示します…続きを読む

Audio Unit によるリアルタイム・タイムストレッチ(2. タイムストレッチ)

今回はタイムストレッチの処理を行う実装の説明を行います。 前回の prepareAUGraph 関数を追記/修正することになります。 「2. AUNodeの作成」において、componentSubType が kAudioUnitSubType_AUiPodTimeOther の AUNode を追加することで、タイムストレッチの処理を行うことがで…続きを読む

Audio Unit によるリアルタイム・タイムストレッチ(1. 準備)

Audio Unit によるリアルタイムにタイムストレッチを行う方法を説明していきます。 タイムストレッチとは、音程を保ったまま再生速度を変える処理です。AUGraph(Audio Unit を複数接続するサービス)に含まれる機能を用いて、リアルタイム・タイムストレッチを実現することができます。 以下のアプリで実現していますので、よかったら試してみ…続きを読む