CRI ADX  Last Updated: 2025-05-07 13:34 p
Sound stops unintentionally
If the sound unintentionally stops during playback, you can identify the reason by monitoring the stop process of the audio resource with this specific playback ID.
If the background music stops due to sound effects playing, this is most likely the case.
The cause of the voice stopping can be obtained based on the playback ID.

Monitoring the Stop Process of the Audio Resource With a Playback ID

To obtain the cause of the voice stop, you need to register a callback function for obtaining the cause and the target playback ID.

/* Voice stop cause acquisition callback function */
void voice_stop_callback(void* obj, CriAtomExMonitoringVoiceStopInfo* voice_stop)
{
// Check the contents of voice_stop->reason
}
main()
{
/* Registering the voice stop cause acquisition callback function */
criAtomEx_SetMonitoringVoiceStopCallback(&voice_stop_callback, user_obj);
/* Make a playback request */
/* Registering a playback ID to monitor */
}
void criAtomEx_SetMonitoringVoiceStopPlaybackId(CriAtomExPlaybackId playback_id)
Registering a playback ID for monitoring a voice stop.
void criAtomEx_SetMonitoringVoiceStopCallback(CriAtomExMonitoringVoiceStopCbFunc func, void *obj)
Registering a callback function for monitoring a voice stop.
CriAtomExPlaybackId criAtomExPlayer_Start(CriAtomExPlayerHn player)
Start the playback.
CriUint32 CriAtomExPlaybackId
Playback ID.
Definition: cri_le_atom_ex.h:3722
Structure for acquiring voice stop information.
Definition: cri_le_atom_ex.h:5300

How to deal with each cause

These are examples of how to avoid the causes you have obtained. Depending on the situation, different measures may be taken, so please feel free to contact support.

Enumeration value Explanation and solution
CRIATOM_VOICE_STOP_REASON_EXPLAYER_STOP CriAtomExPlayerHn stop has been called. Check the criAtomExPlayer_Stop function call.
CRIATOM_VOICE_STOP_REASON_EXPLAYER_STOPWITHOUTRELEASE CriAtomExPlayerHn immediate stop has been called. Check the criAtomExPlayer_StopWithoutReleaseTime function call.
CRIATOM_VOICE_STOP_REASON_PLAYBACK_STOP Playback ID stop has been called. Check the criAtomExPlayback_Stop function call.
CRIATOM_VOICE_STOP_REASON_PLAYBACK_STOPWITHOUTRELEASE Playback ID immediate stop has been called. Please check the call of the criAtomExPlayback_StopWithoutReleaseTime function.
CRIATOM_VOICE_STOP_REASON_SOUNDPLAYER_DESTROY This is a cause that does not usually occur. Please contact support with the call history when it occurred.
CRIATOM_VOICE_STOP_REASON_FADER_STOP A stop due to a fader has occurred. Please check that multiple playback is not being performed with the same CriAtomExPlayerHn .
CRIATOM_VOICE_STOP_REASON_PLAYER_STOP Stop of CriAtomPlayerHn has been called. Please check the call of the criAtomPlayer_Stop function.
CRIATOM_VOICE_STOP_REASON_AWB_STOP An AWB-specified stop has been performed. Please check that other causes have also occurred.
CRIATOM_VOICE_STOP_REASON_STREAMING_CACHE_STOP Streaming cache stop has been called. Please check if streaming cache destruction has been performed.
CRIATOM_VOICE_STOP_REASON_PLAYER_FORCE_STOP CriAtomPlayerHn has been forced to stop. Please contact support with the call history when this occurred.
CRIATOM_VOICE_STOP_REASON_PLAYER_DESTROY CriAtomPlayerHn destruction has been called. Please check the criAtomPlayer_Destroy function call.
CRIATOM_VOICE_STOP_REASON_MTPLAYER_STOP Player stop for ADAMS has been called.
CRIATOM_VOICE_STOP_REASON_VOICE_POOL_DESTROY Voice pool destruction has been called. Please check the call of the criAtomExVoicePool_Free function.
CRIATOM_VOICE_STOP_REASON_VOICE_STEAL_CASE1 A voice stop has occurred due to a voice limit group. Measures such as raising the voice priority are required.
CRIATOM_VOICE_STOP_REASON_VOICE_STEAL_CASE2 A voice stop has occurred due to a voice limit group. Measures such as raising the voice priority are required.
CRIATOM_VOICE_STOP_REASON_VOICE_STEAL_CASE3 A voice stop has occurred due to a voice limit group. Measures such as raising the voice priority are required.
CRIATOM_VOICE_STOP_REASON_VOICE_STEAL_CASE4 A voice stop has occurred due to the number of voices exceeding the upper limit and the voice being stolen. Measures such as raising the voice priority are required.
CRIATOM_VOICE_STOP_REASON_SOUND_SERVER_RESULT_VIRTUAL_VOICE_BEYOND_LIFE_TIME Occurs when the playback time exceeds the waveform length in virtual state.
CRIATOM_VOICE_STOP_REASON_ELEMENT_FREE The internal resource release process is running. Check to see if other factors or errors have occurred.
CRIATOM_VOICE_STOP_REASON_EXPLAYER_STOP_ERROR_HN CriAtomPlayerHn in an error state has been stopped.
CRIATOM_VOICE_STOP_REASON_ACB_RELEASE CriAtomExAcbHn is being released. Check to see if the criAtomExAcb_Release function is called.
CRIATOM_VOICE_STOP_REASON_VOICE_ALLOCATE_FAIL Failed to allocate voice. Check to see if other factors or errors have occurred.
CRIATOM_VOICE_STOP_REASON_VOICE_RESET The voice is being reset. This can also occur when playback starts, so check to see if other factors or errors have occurred.
CRIATOM_VOICE_STOP_REASON_VOICE_VIRTUALIZE Stopping due to voice virtualization.
CRIATOM_VOICE_STOP_REASON_PLAYBACKSOUND_ALLOCATE_FAIL Failed to secure internal resources. Check to see if other factors or errors have occurred.
CRIATOM_VOICE_STOP_REASON_STOP_ACTION_WITH_BEATSYNC Stopping due to a stop action with beat sync.
CRIATOM_VOICE_STOP_REASON_START_CANCEL_WITH_BEATSYNC Vocal cancellation due to multiple synchronization waits with beat sync.
CRIATOM_VOICE_STOP_REASON_STOP_ACTION Stopping due to a stop action.
CRIATOM_VOICE_STOP_REASON_BLOCK_TRANSITION_CASE0 A stop is occurring due to a block transition.
CRIATOM_VOICE_STOP_REASON_BLOCK_TRANSITION_CASE1 A stop is occurring due to a block transition.
CRIATOM_VOICE_STOP_REASON_BLOCK_TRANSITION_CASE2 A stop is occurring due to a block transition.
CRIATOM_VOICE_STOP_REASON_BLOCK_TRANSITION_CASE3 A stop has occurred due to a block transition.
CRIATOM_VOICE_STOP_REASON_CATEGORY_CUE_LIMIT Voice production has stopped due to the category cue limit. Measures such as raising the cue priority are required.
CRIATOM_VOICE_STOP_REASON_UNSET_ACB CriAtomExAcbHn has been released.
CRIATOM_VOICE_STOP_REASON_SEQUENCE_END A stop has occurred due to a sequence end marker.
CRIATOM_VOICE_STOP_REASON_BLODK_END A stop has occurred due to a block end.
CRIATOM_VOICE_STOP_REASON_SEQUENCE_EXECUTE A stop has occurred due to internal processing of the sequencer. Check to see if other factors or errors have occurred.
CRIATOM_VOICE_STOP_REASON_TRACK_MONO A stop has been made due to track mono mode processing.
CRIATOM_VOICE_STOP_REASON_FADER_STOP_IMMEDIATE An immediate stop has been made by the fader due to multiple fade-outs, etc.
CRIATOM_VOICE_STOP_REASON_CUE_LIMIT Sound has been stopped due to the cue limit. Measures such as increasing the number of limits are required.
CRIATOM_VOICE_STOP_REASON_SOUND_OBJECT_ADD_PLAYER A stop has been made due to the addition of CriAtomPlayerHn to a sound object.
CRIATOM_VOICE_STOP_REASON_SOUND_OBJECT_DELETE_PLAYER A stop has been made due to the deletion of CriAtomPlayerHn from a sound object.
CRIATOM_VOICE_STOP_REASON_SOUND_OBJECT_DELETE_ALL_PLAYER Stopping is occurring due to the process of deleting CriAtomPlayerHn from the sound object.
CRIATOM_VOICE_STOP_REASON_UNREGISTER_ACF Stopping is occurring due to the process of unregistering ACF .
CRIATOM_VOICE_STOP_REASON_EXPLAYER_DESTROY Stopping is occurring due to the destruction of CriAtomExPlayerHn .
CRIATOM_VOICE_STOP_REASON_EXPLAYER_ATTACH_FADER Stopping is occurring due to the addition of a fader to CriAtomExPlayerHn .
CRIATOM_VOICE_STOP_REASON_EXPLAYER_DETACH_FADER Stopping is occurring due to the removal of a fader from CriAtomExPlayerHn .
CRIATOM_VOICE_STOP_REASON_DETACH_AWB Stopping due to AWB release process for stream playback is being performed.
CRIATOM_VOICE_STOP_REASON_CATEGORY_STOP Category stop is being called.
CRIATOM_VOICE_STOP_REASON_CATEGORY_STOPWITHOUTRELEASE Immediate category stop is being called.
CRIATOM_VOICE_STOP_REASON_NOTE_OFF Stopping due to sequencer process is being performed.
CRIATOM_VOICE_STOP_REASON_REGISTER_ACF Stopping due to ACF registration process is being performed.
CRIATOM_VOICE_STOP_REASON_STOP_ACTION_WITH_FADE Stopping due to stop action with fade is being performed.
CRIATOM_VOICE_STOP_REASON_BLOCK_TRANSITION_CASE4 A stop is occurring due to a block transition.
CRIATOM_VOICE_STOP_REASON_BLOCK_TRANSITION_CASE5 A stop is occurring due to a block transition.
CRIATOM_VOICE_STOP_REASON_BLOCK_TRANSITION_CASE6 A stop is occurring due to a block transition.
CRIATOM_VOICE_STOP_REASON_NOTE_OFF2 A stop is occurring due to a MIDI note stop message.
CRIATOM_VOICE_STOP_REASON_ALL_NOTE_OFF A stop is occurring due to a MIDI all no and stop message.
CRIATOM_VOICE_STOP_REASON_ALL_NOTE_OFF_WITHOUTRELEASE A stop is occurring due to a MIDI all no and stop message.
CRIATOM_VOICE_STOP_REASON_SOUND_SERVER_RESULT_ENVELOPE_LEVEL_ZERO A stop is being performed due to sustain level 0.
CRIATOM_VOICE_STOP_REASON_AUX_IN_STOP A stop is being performed to an external input.
CRIATOM_VOICE_STOP_REASON_ACB_RELEASE_ASYNC A stop is being performed due to an asynchronous ACB release.
CRIATOM_VOICE_STOP_REASON_INGAMEPREVIEW_PREPARE_OVERWRITE_ACF All ACBs are being stopped as a pre-processing step for updating ACFs in InGamePreview.
CRIATOM_VOICE_STOP_REASON_INGAMEPREVIEW_PREPARE_OVERWRITE_ACB ACBs are being stopped as a pre-processing step for updating ACBs in InGamePreview.
CRIATOM_VOICE_STOP_REASON_CUE_LIMIT_RESUME_PREPARE The cue limit process associated with the release of prepare has cancelled the voice output.
If you have questions about the cause of the error as determined by the monitoring process, please contact our technical support with the related information.
If you cannot obtain any results, it means the audio resource is playing. Check the following: