ヘッドセットとスピーカーから同時にサウンドを再生できるオーディオリピーターアプリケーションを実行しています。アプリケーション自体には「リアルタイム」に設定する機能がありますが、高に設定するだけなので、現時点ではタスクマネージャーで自分で設定する必要があります。
これを自動化することにしたので、プロセスの優先度を変更する小さなスクリプトをC#で作成しました(終了したら起動するために追加します)
namespace ProcessRealtime
{
class Program
{
static void Main(string[] args)
{
Process[] processes = Process.GetProcessesByName("audiorepeater");
foreach (Process proc in processes)
{
Console.WriteLine("Changing Priority for: "+proc.Id+" To RealTime");
proc.PriorityClass = ProcessPriorityClass.RealTime;
if (proc.PriorityClass == ProcessPriorityClass.RealTime)
{
Console.WriteLine("Worked");
}
}
Console.ReadLine();
}
}
}
問題は、変更が適用されないことです。
なぜこれが機能しないのか誰かが知っていますか?