private void button_StartRecording_Click(object _s, EventArgs _e)
{
StartRecording();
// 開始時に間隔を指定する
var timer = new System.Timers.Timer(100/*msec*/);
// Elapsedイベントにタイマー発生時の処理を設定する
timer.Elapsed += (sender, e) =>
{
try
{
timer.Stop(); // もしくは timer.Enabled = false;
// 何らかの処理
Debug.WriteLine($"rms: {rms}");
progressBar_AudioMeter.BeginInvoke(new Action(() =>
{
//float value = (float)Math.Log10(rms + 0.001);
progressBar_AudioMeter.Value = (int)(audioVolumeMax * 100.0);
//UIスレッドで実行すべき処理
}));
}
finally
{
timer.Start(); // もしくは timer.Enabled = true;
}
};
// タイマーを開始する
timer.Start();
}