从发件人投射时无法在远程 MediaController 中显示专辑封面

Posted

技术标签:

【中文标题】从发件人投射时无法在远程 MediaController 中显示专辑封面【英文标题】:Unable to display AlbumArt in RemoteMediaController while casting from sender 【发布时间】:2014-10-24 07:40:59 【问题描述】:

我已关注此doc 来开发我的演员发件人应用程序。

无法显示专辑封面,我正在加载媒体信息,如下所示。如果我做错了什么,请帮助我。

MediaMetadata mediaMetadata = new MediaMetadata(MediaMetadata.MEDIA_TYPE_MOVIE);

    mediaMetadata.putString(MediaMetadata.KEY_SUBTITLE, "Movie");
    mediaMetadata.putString(MediaMetadata.KEY_STUDIO, "studio");
    if (null != subTitle) 
        mediaMetadata.putString("closedCaption", subTitle);
    
    if (null != title) 
        mediaMetadata.putString(MediaMetadata.KEY_TITLE, title);
    
    if (null != mImageUrl) 
        // mediaMetadata.putString("thumb", mImageUrl);
        // mediaMetadata.putString("images", mImageUrl);
        mediaMetadata.addImage(new WebImage(Uri.parse(mImageUrl)));
        Boolean bImage = mediaMetadata.hasImages();
        List<WebImage> images = mediaMetadata.getImages();
        System.out.print(images.size());
    

    MediaInfo mediaInfo = new MediaInfo.Builder(profileUrl).setContentType(contentType).setStreamType(MediaInfo.STREAM_TYPE_BUFFERED).setMetadata(mediaMetadata).build();
// And finally startcastControlleActivity 
mCastManager.startCastControllerActivity(context, mediaInfo, 0, true);

【问题讨论】:

你用的是什么接收器?媒体播放开始正常吗?您是否在 android 设备上的 Cast Controller Activity 中看到专辑封面?您是否查看了 Chromecast 上的控制台日志以查看是否存在任何问题? 媒体启动正常且播放正常。问题是我无法在 senderApp VideoCastControllerActivity 中显示专辑封面。相同的专辑封面在通知和锁定屏幕中都可以正常显示。 【参考方案1】:

终于解决了这个问题,为元数据添加了两个图像 uri。显然 videoCastControllerActiviy 需要 WebImage 数组和至少两个。这样它就可以根据需要的区域(即Notification、LockScreen和CastControllerActivity)进行相应的缩放和显示

mediaMetadata.addImage(new WebImage(Uri.parse(mImageUrl)));
mediaMetadata.addImage(new WebImage(Uri.parse(mBigImageUrl)));

【讨论】:

以上是关于从发件人投射时无法在远程 MediaController 中显示专辑封面的主要内容,如果未能解决你的问题,请参考以下文章

单个网页上的多个 Chromecast 发件人

从 Android 发件人应用程序进行 Chromecast 时更新电视上的搜索栏

Chromecast API 发件人 - Android 手机

在投射期间更改文本轨道(字幕)语言不起作用

带有谷歌电视的 Chromecast 是不是需要 Android TV 接收器应用程序才能进行投射?

Chromecast 示例项目未在电视上投射