나는 4 개의 소리를 서로 연주 (sounds1-> sound2-> sound3)하고 싶지만 각 연주 중에 또는 각 소리가 끝날 때까지 기다리지 않고 내 코드의 흐름을 멈추지 않는다.사운드를 비동기식으로 재생하는 방법은 있지만 대기열에있는 소리는 어떻게 재생합니까?
나는 이것을 거의 모든 곳에서 찾았지 만 내가 읽은 모든 방향은 다른 문제에 갇혀있다.
내 최고의 내기는 지금까지 : System.Media에서 이미 사용한 SoundPlayer를 사용하고 자체 대기열 기능을 만들지 만 Soundplayer에는 "완료된 재생"이벤트가 없으므로 언제 시작할지 알 수 없습니다. 다음 소리. (정말로, Microsoft?)
다른 해결책과 문제점 : DirectSound는 .NET (C#)에서 작동하려면 복잡해 보입니다. Win Playsound는 대기열에 들어갈 수 없기 때문에 실제로 도움이되지 않습니다.
백그라운드 스레드에서 'PlaySync()'를 호출 할 수 있습니다. – SLaks
NAudio는'PlaybackStopped' 이벤트를 가지고 있습니다 ... 또한 내장 큐를 가질 수도 있습니다; 나는 그것에 익숙하지 않다. –