更改轨道后html音频元素严重缓冲

时间:2018-07-13 13:20:07

标签: angular streaming mp3 html5-audio

我已经用Angular 5制作了PWA音乐播放器。播放器可以播放Spotify,Youtube和上载的MP3文件。 MP3文件有问题。用户可以将MP3文件上传到云。上载和流传输的后端是使用.Net Core完成的。之后,该用户可以使用播放器进行播放。播放器正在使用html音频元素播放MP3文件。曲目位于播放列表中,因此当一个曲目结束时,下一个曲目将自动播放。轨道结束时,音频元素发送结束事件,然后我决定新轨道。它可能是MP3文件,Spotify曲目或YouTube视频。通常,它是列表中的下一个曲目,但用户可以使用随机播放。因此,确定曲目结束的时间是下一曲目。使用Chrome桌面浏览器时,一切运行正常。当使用Android版Chrome浏览器且UI一直显示时,一切都可以正常工作。当用户使用Android版Chrome并关闭屏幕时出现问题。音乐会继续播放当前曲目直到结尾,曲目会更改为下一个曲目并开始播放。一会儿,下一首曲目继续播放良好,但随后开始停止并继续。仅当我使用UI选择新曲目时,此问题才会修复。因此,当我再次打开UI时,停止并继续操作将继续。因此,在没有用户交互的情况下将音频源更改为新音频源之后,音频元素似乎缓冲不良。

相关的前端代码在这里。

https://github.com/JanneHarju/MultiSourcePlayList/blob/master/src/app/modules/main/components/player/player.component.ts#L190

我应该使用load()方法还是需要它?

0 个答案:

没有答案