この関数を使った多くのプログラムを見てきましたが、isRange(int low, int high, int threshold)
どのように機能するのか理解できません。
ドキュメントは次のように述べています。
周波数エネルギー モードでは、範囲 [低、高] に含まれるバンドの少なくともしきい値バンドがビートを登録した場合、これは true を返します。音響エネルギー モードでは、これは常に false を返します。
27 を超える高い値を設定できないのはなぜですか?
この関数を使った多くのプログラムを見てきましたが、isRange(int low, int high, int threshold)
どのように機能するのか理解できません。
ドキュメントは次のように述べています。
周波数エネルギー モードでは、範囲 [低、高] に含まれるバンドの少なくともしきい値バンドがビートを登録した場合、これは true を返します。音響エネルギー モードでは、これは常に false を返します。
27 を超える高い値を設定できないのはなぜですか?
benoit linkには、次の問題に関する素晴らしい引用があります。
したがって、isRange(5, 20, 10) と言うときは、「5 から 20 の範囲の onset 配列のブール値を見てください。そのうちの少なくとも 10 個が true の場合は、true を返します」と言っているのです。
主な質問が、しきい値に 27 よりも高い値を設定できない理由である場合は、低い値と高い値の間の範囲が 27 よりも小さいことが原因である可能性があります。
isRange() 関数を理解するには、まずビート検出の概念と問題をいくつか理解することが重要です。ここで何かを見つけることができます:
http://code.compartmental.net/tools/minim/manual-beatdetect/
お役に立てば幸いです。