| 301 | } |
| 302 | |
| 303 | void AudioBackendXAudio2::Source_Remove(uint32 sourceID) |
| 304 | { |
| 305 | ScopeLock lock(XAudio2::Locker); |
| 306 | auto aSource = XAudio2::GetSource(sourceID); |
| 307 | if (!aSource) |
| 308 | return; |
| 309 | |
| 310 | // Free source |
| 311 | if (aSource->Voice) |
| 312 | { |
| 313 | aSource->Voice->DestroyVoice(); |
| 314 | } |
| 315 | aSource->Init(); |
| 316 | } |
| 317 | |
| 318 | void AudioBackendXAudio2::Source_VelocityChanged(uint32 sourceID, const Vector3& velocity) |
| 319 | { |