自定义接收器无法正确显示图像

时间:2016-11-05 14:37:15

标签: javascript android css chromecast google-cast

我正在使用chromecast SDK 3.0并想要创建自定义接收器。它适用于视频和音频,但在图像投射方面存在问题。
html 文件中:

<body style="margin: 0">
         <img id="androidImage" src="" />
...


js 文件中:

sampleplayer.CastPlayer.prototype.loadImage_ = function(info) {
  this.log_('loadImage_');
  var url = info.message.media.contentId;
  document.getElementById("androidImage").src=url;
  this.setState_(sampleplayer.State.PLAYING, true);
};

使用此类实现图像会在一秒钟后出现,并在替换为背景图像时消失。同时显示的图像尺寸不合适。为了设置比例类型,我使用了这样的代码:

<style>
      img#androidImage {
        height:100%;
        width:100%;
      }
  </style>

有人有一些意见吗?谢谢!

1 个答案:

答案 0 :(得分:1)

图像处理与视频和音频不同,因为没有“播放”状态。由于图像由html图像标记处理,因此没有与它们相关联的事件(在视频/音频的情况下,Media元素会生成Cast SDK接收的许多事件)。因此,不要尝试在接收器端设置图像的状态。您可以选择使用以最基本方式处理图像的默认/样式接收器。如果你想编写一个自定义接收器,你可以简单地使用一个自定义命名空间将图像url发送到接收器和接收器端,抓取url并填充图像标签(类似于你正在尝试的);没有必要打扰其他类型媒体的接收器SDK的其他方面。最后一件事:如果您计划添加幻灯片功能,花哨的过渡等,您将无法对图像做很多事情;你可以逐个显示图像,淡出一个并在下一个中淡入(以产生更令人愉悦的过渡)。