したらばTOP ■掲示板に戻る■ 全部 1-100 最新50 | |

C++でVST作りの指摘・質問

111 管理人★ :2015/08/15(土) 20:17:01
専門学生さん

load_from_file()関数はおそらくwavファイルを読み込む関数だと思います。

processReplacing()関数は数十ミリ秒ごとに何度も呼び出される関数のため、
load_from_file()関数をprocessReplacing()関数の中で呼び出すと、
数十ミリ秒間隔で何度もwavファイルへアクセスすることになります。

これにより作成したVSTiから応答が返らなくなり、結果としてDAW側で応答が
なくなるものと考えられます。

対応としては
 1.事前にコンストラクタ等でwavファイル読み込む
 2.wavファイルの読み込みを別スレッドで行う
が考えられます。

不明点がございましたら再度 ご質問いただければと思います。

なお、コードの中で気になった点がありましたので記載させていただきます。
 ・inputs[]は入力信号が入ったバッファなので、値を代入するのはまずい
 ・short型のch1[]をそのままinput[]、output[]に代入しているが
  -1.0〜1.0の範囲に変更するのが望ましい。
 ・for分の中で、iを波形データのサイズ(wav1.data_size)までとしているが、
  output[]やinput[]の配列サイズよりwav1.data_sizeが大きい場合、
  メモリ破壊につながるので、小さいほうに合わせるほうがよい。


新着レスの表示


名前: E-mail(省略可)

※書き込む際の注意事項はこちら



掲示板管理者へ連絡 無料レンタル掲示板