Whenever I use the text-to-speech feature, the generated audio is automatically configured with an entrance effect (“Appear”) and an exit effect (“Disappear”). Could you explain why this happens?
We have recently created several training SCORM packages using ActivePresenter 10.x. Occasionally, colleagues who view these packages report that on some slides the audio stops unexpectedly about 0.5 to 1 second before the slide actually ends. From our analysis, it looks like an event in rlplayer.js may be triggering this stop/pause.
We also noticed a difference when we enable the option “Show to the end of the slide” for the audio: in that case, the “Disappear” effect is no longer applied, and the audio seems to play through more reliably. Could you clarify what changes internally when using this option, and how it interacts with entrance/exit effects?
Finally, have you heard of similar reports from other users? The main challenge is that the issue appears randomly, making it difficult for us to reproduce consistently.
In ActivePresenter, audio generated by the Text-to-Speech feature is treated as an object with a defined duration on the timeline. To manage this, the software automatically applies “Appear” and “Disappear” effects to control when the audio starts and ends. This is by design and helps synchronize the audio with other slide elements.
When the option “Show to the end of the slide” is enabled, the audio duration is extended to match the slide length and the exit effect is disabled. As a result, the “Disappear” effect is removed, allowing the audio to play until the slide ends. This helps reduce the risk of the player stopping the audio early due to timing or synchronization issues.
We have received occasional reports of similar behavior, especially in HTML5/SCORM output, where browser timing and player events can affect playback. As a workaround, we recommend enabling “Show to the end of the slide” or slightly extending the audio object on the timeline for more reliable playback.
I have generated a test AP 10.x project with 2 times and an audio saying “This is a test”. One I generated with “Show to the end of the slide” Audio #1 the other in standard mode with usual entrance and exit effect as Audio #2.
Then I wrote a chrome debug script that is printing a web browser SCORM log to the chrome debug console and let it analyse this with chatGPT afterwads. It says:
What exactly is happening?
Audio #1 (res_10000.m4a) plays all the way to the end and finishes cleanly: t=2.427, left=0.000, then pause + ended.
Audio #2 (res_10001.m4a) is started before Audio #1 finishes (the overlap is visible in the log).
Audio #2 is then actively stopped: 🚨 CUT DETECTED … left=0.609
Immediately afterwards you see ⏸️ pause() called …
And the stack trace points to rlplayer.js (i.Hc and i.js) → meaning the player triggers the pause, not the browser.
Important: Is Audio #2 being removed?
No. Your additional checks show: post-CUT check +0ms/+80ms/+250ms: isConnected=true
This means: Audio #2 remains in the DOM, but it is paused by the player.
In the default mode, narration audio is auto-played and synchronized with the slide timeline. When an exit effect (“Disappear”) is present, the HTML5 player explicitly calls pause() on the audio at the scheduled end time of the audio object. So your log analysis and stack trace interpretation are correct.
Because timeline synchronization in HTML5/JavaScript is not perfectly precise, this stop event can occasionally fire slightly early, which may cut off a small portion of the audio at the end.
As a temporary workaround, we recommend extending the audio end time (or slide duration) slightly to avoid relying on the exit timing event.
Would you say, that using the “Show to the end of the slide” function on narration audio would do the same effect?
The reason why I am asking is, that just clicking on our multiple audio tracks on the main timeline all at once and the check the box “Show to the end of the slide” for all at a time is much easier that to extend the audio end time.
Yes, using “Show to the end of the slide” on narration audio effectively achieves the same result.
Selecting multiple audio tracks and enabling this option in bulk is a perfectly valid and easier workaround compared to manually extending each audio end time.