我想无缝播放多个视频内容。 (HLS /使用queueData)
预加载是可行的!但是当视频更改时,会显示“正在加载”屏幕。
在CAF自定义播放器中如何在不“加载”屏幕的情况下进行播放?
答案 0 :(得分:1)
即使PRELOAD
请求开始缓冲队列中的下一个项目以减少下一个剪辑的加载时间,回放也绝不会“无缝”。
每次实际的LOAD
请求进入时,播放器都会(默认)切换到BUFFERING
状态并显示关联的UI,直到返回到PLAYING
Google's UX guidelines for autoplay非常清楚UI在队列播放时的行为-如果您要发布应用,则可能要考虑遵循该行为。话虽这么说:
看看您的HTML-您是否在使用<cast-media-player></cast-media-player>
自定义标记?您可以使用CSS设置应用程序所有状态的外观-详细信息请查看documentation。
--buffering-image
和--spinner-image
是可在此处更改的可自定义元素。再说一次:当播放器进入缓冲状态时,这些总是会弹出,因此您将不得不想出一些比旋转器和默认图像更不令人讨厌的东西:也许是黑屏?
此外,您不能简单地使用CSS来消除这些问题:初始化播放并建立队列时,您很可能仍想显示它们-因此完全禁用它们不是一种选择。 棘手的部分是找到合适的events来停用并重新启用它们:
考虑使用MediaFinishedEvent禁用它们,也许考虑使用PLAYER_LOAD_COMPLETE
事件将它们恢复为默认值。
(BUFFERING事件也可能起作用,但在我尝试使用它时非常不可靠。)