Logic Pro X: JavaScript TimingInfoオブジェクトを使う

JavaScript TimingInfoオブジェクトを使う

TimingInfoオブジェクトには、ホストのトランスポートの状態と、現在の音楽的なテンポと拍子を表すタイミング情報が含まれています。TimingInfoオブジェクトはGetTimingInfo()を呼び出すことで取得できます。

TimingInfoのプロパティ

  • TimingInfo.playing: ブール論理が使用されます。「true」はホストのトランスポートが実行されていることを意味します。

  • TimingInfo.blockStartBeat: 処理ブロックの先頭にある拍の位置が浮動小数点数によって表されます。beatPosプロパティを使うという方法もあります。MIDIイベントのbeatPosプロパティを使うを参照してください。

  • TimingInfo.blockEndBeat: 処理ブロックの末尾にある拍の位置が浮動小数点数によって表されます。

  • TimingInfo.blockLength: 処理ブロックの拍単位の長さが浮動小数点数によって表されます。

  • TimingInfo.tempo: ホストのテンポが浮動小数点数によって表されます。

  • TimingInfo.meterNumerator: ホストの拍子の分子が整数によって表されます。

  • TimingInfo.meterDenominator: ホストの拍子の分母が整数によって表されます。

  • TimingInfo.cycling: ブール論理が使用されます。「true」はホストのトランスポートがサイクルモードになっていることを意味します。

  • TimingInfo.leftCycleBeat: サイクル範囲の先頭にある拍の位置が浮動小数点数によって表されます。

  • TimingInfo.rightCycleBeat: サイクル範囲の末尾にある拍の位置が浮動小数点数によって表されます。

    注記:拍の長さは Logic Pro X の拍子記号とテンポによって決まります。

対応するチュートリアル設定を読み込んで、スクリプトエディタにスクリプトを表示してください。コードおよびコメントの構文構造とレイアウトの理解に役立ちます。スクリプトエディタを使うを参照してください。

チュートリアルスクリプト9: NeedsTimingInfoとGetTimingInfo

この例では、トランスポートの実行中に拍の位置をコンソールに出力します。

  • 「/*」の後ろのテキストは、JavaScriptコードについて説明するコメントを示します。

    var NeedsTimingInfo = true; /* needed for GetTimingInfo to work */ function ProcessMIDI() { var info = GetTimingInfo(); /* get the timing info from the host */ if (info.playing) /* if the transport is playing */ Trace(info.blockStartBeat) /* print the beat position */ }
公開日: 2019/09/13
役に立ちましたか?