chromecast - 如何直接从 chromecast 接收器加载元数据?
问题描述
我尝试使用以下代码将元数据从发送方发送到接收方,该代码运行良好。
const mediaInfo = new chrome.cast.media.MediaInfo(url, type);
/* --------------------------------------------- */
mediaInfo.metadata = new chrome.cast.media.GenericMediaMetadata();
mediaInfo.metadata.metadataType = chrome.cast.media.MetadataType.GENERIC;
mediaInfo.metadata.title = title;
/* --------------------------------------------- */
const request = new chrome.cast.media.LoadRequest(mediaInfo);
但现在我试图在接收器本身内部进行 api 调用,并尝试直接从接收器本身加载元数据。
有没有办法做到这一点?如果是这样怎么做?我浏览了很多页面的 chromecast 接收器设置,但找不到这样做的方法。
非常感谢您的帮助。谢谢。
解决方案
您需要setMessageInterceptor
在加载时使用并调用 api 并在 metaData 上设置数据并添加到loadRequestData
最后返回loadRequestData
const context = cast.framework.CastReceiverContext.getInstance();
const MediaMetadata = new cast.framework.messages.MediaMetadata()
const playerManager = context.getPlayerManager();
/* --------------------------------------------- */
playerManager.setMessageInterceptor(
cast.framework.messages.MessageType.LOAD, loadRequestData => {
return fetch('thirdpartyapi')
.then(response => response.json())
.then(data => {
MediaMetadata.title = 'your.Title'
MediaMetadata.subtitle = 'your.Subtitle'
/* --------------------------------------------- */
loadRequestData.media.metadata = MediaMetadata
/* --------------------------------------------- */
return loadRequestData;
})
});
推荐阅读
- mongodb - 无法在 localhost:3001 连接到 MongoDB
- idris - 如何在向量长度上说服 Idris
- angular - 如何在表单控件中设置默认布尔值 false
- python - Scrapy 无法到达 start_urls:DEBUG: Crawled (200) and ERROR
- here-api - 直接路由
- javafx - 如何在 install4J 中将 javafx 与 JRE 14 捆绑在一起?
- java - 这段代码会以另一种方式是什么
- python - 熊猫按其他列的数量填充列
- typo3 - 如何从一个模块中打开web_layout模块并返回
- ruby - 检查 Ruby 中的有效输入