誰かの心拍数に合わせて曲を調整する方法を探しています。mp3 または wav 形式の曲があり、再生中に速度を上げたいと考えています。またはループで再生し、各ループ間で加速または減速します。理想的には、それは python になります。それを行う方法を知っていますか?
よろしくお願いします。
ブシエール
誰かの心拍数に合わせて曲を調整する方法を探しています。mp3 または wav 形式の曲があり、再生中に速度を上げたいと考えています。またはループで再生し、各ループ間で加速または減速します。理想的には、それは python になります。それを行う方法を知っていますか?
よろしくお願いします。
ブシエール
ここにはいくつかの異なる部分があり、それぞれを解決する必要があります。それらのどれも些細なものではなく、かなりの量の信号処理の知識を必要とします。そのため、その重労働の部分を処理するためのライブラリーを探す必要があるでしょう。
心拍検出。これは私の知識の範囲外ですが、何らかの方法でこれにアクセスできると仮定しましょう。
音楽ビートの検出これには、商用およびオープン ソースの両方で利用できるライブラリがいくつかあります。http://aubio.org/を参照してください。すでに Python バインディングが利用可能です。
テンポ変更-- ターゲット BPM と現在の BPM がわかったら、オーディオ トラックのテンポを変更して (ピッチを変更せずに) 一致させるために使用できる別のライブラリが必要になります。注目すべきいくつかは、ラバーバンドとSoundTouchです
グーグルは、これらの操作のための他のライブラリを見つけます(そして、あなたが必要とする他の部分、サウンドを開いて再生するためのPyMediaのようなものなど)。
おそらく、別の入力を使用して進行中のオーディオのテンポを制御できるソフトウェアの1つが「Puredata」です-
これは非常に完全ですが、複雑ではありますが、視覚的なノード接続からのさまざまなマルチミディア変換を処理することを目的としたノード ベースのソフトウェアですが、Python API を介してプログラムすることもできます。
http://crca.ucsd.edu/~msp/Pd_documentation/index.htm
Python バインディング: