PriorityLevelNeededExceptionが発生する理由
Cooperative Levelを設定していないと、SecondaryBuffer.Playしたときなどに、PriorityLevelNeededExceptionが発生するらしい。Device.SetCooperativeLevelをやっておけば大丈夫。
Device device; device = new Device(); device.SetCooperativeLevel(this, CooperativeLevel.Normal);
その解説は、これと思われる。音が聞こえないってかいてるけど、例外が発生しているのがManagedと普通のの違いなのかね。
協調レベル
標準協調レベル