You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Hi @goldfire, thanks again for the best javascript player on the Github. I found another huge problem with html5 audio. Please take a deep look into it.
Formal sequence to reproduce problem:
Open demo in Chrome (it has really simple and isolated code) with web-developer console: demo.zip;
Playback is starting automatically;
Please wait while track starts playing, then push the button (it uses howler‘s .seek(number) method with an argument-number larger than audio file duration; also works with an argument-number exact as howl’s .duration());
One of two bugs happens randomly:
4.1 Events onseek and onend are not firing;
4.2 Playback starts from the position about 3 seconds before the end, but howl.seek() (as well as howl._sounds[0]._node.currentTime) returns the time more than file‘s duration (look at the console):
Those problems reproduces randomly in Chrome for me when I‘m trying to .seek(number) exactly on the end of the file or further.
I debugged it step-by-step and found the root of problem for the bug 4.1: Promise which you are creating at play method (you use play with internal flag inside seek) is not resolving, so runLoadQueue function didn‘t run. It looks like browser bug.
And I have no idea about bug 4.2.
Please let me know what do you think about that.
Thank you!
The text was updated successfully, but these errors were encountered:
I believe those bugs are partly related to some issues with mp3 format or to some server settings or http protocol or something like this. I‘m not good with this kind of stuff. But I hope howler.js can fix it inside itself and give us brilliant working API 😈
Hi @goldfire, thanks again for the best javascript player on the Github. I found another huge problem with html5 audio. Please take a deep look into it.
Formal sequence to reproduce problem:
.seek(number)
method with an argument-number larger than audio file duration; also works with an argument-number exact as howl’s.duration()
);4.1 Events
onseek
andonend
are not firing;4.2 Playback starts from the position about 3 seconds before the end, but
howl.seek()
(as well ashowl._sounds[0]._node.currentTime
) returns the time more than file‘s duration (look at the console):Those problems reproduces randomly in Chrome for me when I‘m trying to
.seek(number)
exactly on the end of the file or further.I debugged it step-by-step and found the root of problem for the bug 4.1:
Promise
which you are creating atplay
method (you useplay
withinternal
flag insideseek
) is not resolving, sorunLoadQueue
function didn‘t run. It looks like browser bug.And I have no idea about bug 4.2.
Please let me know what do you think about that.
Thank you!
The text was updated successfully, but these errors were encountered: