# How can I know when sound playing finish

**URL:** <https://qa.fmod.com/t/how-can-i-know-when-sound-playing-finish/12135>\
**Category:** Unity\
**Created:** [November 4, 2015, 1:09am UTC](https://qa.fmod.com/t/how-can-i-know-when-sound-playing-finish/12135 "2015-11-04T01:09:13Z")\
**Posts on this page:** 3\
**Page:** 1

<div class="post-metadata">

**Author:** ![captals](https://avatars.discourse-cdn.com/v4/letter/c/ea5d25/32.png) [@captals](https://qa.fmod.com/u/captals)\
**Post date:** [November 4, 2015, 1:09am UTC](https://qa.fmod.com/t/how-can-i-know-when-sound-playing-finish/12135/1 "2015-11-04T01:09:13Z")

</div>

I see there is a method named setCallback in class EventInstance can pass parameter EVENT\_CALLBACK\_TYPE.STOPPED cause a call when sound playing finish.But this callback is in another thread, not in unity main thread.I’m afraid this callback will cause my game crash,because unity does not support multi thread call unity api.

---

<div class="post-metadata">

**Author:** ![nick1](https://avatars.discourse-cdn.com/v4/letter/n/47e85d/32.png) [@nick1](https://qa.fmod.com/u/nick1)\
**Post date:** [November 4, 2015, 1:15am UTC](https://qa.fmod.com/t/how-can-i-know-when-sound-playing-finish/12135/2 "2015-11-04T01:15:28Z")

</div>

You are correct that STOPPED callbacks will come from another thread. There is nothing that can be done about it. You either need to deal with multi-threading issues yourself. Or you call poll EventInstance.getPlaybackState ([http://www.fmod.org/documentation/#content/generated/FMOD\_Studio\_EventInstance\_GetPlaybackState.html](http://www.fmod.org/documentation/#content/generated/FMOD_Studio_EventInstance_GetPlaybackState.html)) from the main unity thread.

---

<div class="post-metadata">

**Author:** ![wills](https://yyz2.discourse-cdn.com/flex036/user_avatar/qa.fmod.com/wills/32/2641_2.png) [@wills](https://qa.fmod.com/u/wills)\
**Post date:** [September 21, 2021, 10:16pm UTC](https://qa.fmod.com/t/how-can-i-know-when-sound-playing-finish/12135/3 "2021-09-21T22:16:46Z")

</div>

In my experiments `FMOD_CHANNELCONTROL_CALLBACK_END` events get fired on the main thread
