如何在CAF自定义播放器中播放而无需“加载”屏幕。 (带有QueueData的HLS)

时间:2019-05-28 07:05:25

标签: javascript chromecast google-cast google-cast-sdk

我想无缝播放多个视频内容。 (HLS /使用queueData)

预加载是可行的!但是当视频更改时,会显示“正在加载”屏幕。

在CAF自定义播放器中如何在不“加载”屏幕的情况下进行播放?

1 个答案:

答案 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事件也可能起作用,但在我尝试使用它时非常不可靠。)

相关问题