我创建了用于将特定图像从网络投射到屏幕的chromecast应用程序,但我现在需要的是添加从我的电脑中选择照片进行投射的可能性。我使用函数readAsDataUrl()尝试使用Javascript类FileReader。它可以工作,如果我想在页面上显示图像,但它在尝试投射它时说媒体错误。也许因为格式?任何人都知道热修复它或者可能有不同的方法来解决这个问题吗?
代码:
$(function () {
$(":file").change(function () {
if (this.files && this.files[0]) {
var reader = new FileReader();
reader.onload = imageIsLoaded;
reader.readAsDataURL(this.files[0]);
}
});
});
function imageIsLoaded(e) {
url= e.target.result;
$('#myImg').attr('src', e.target.result);}
....
function loadMedia(){
var mediaInfo=new chrome.cast.media.MediaInfo(url,type);
mediaInfo.metadata=new chrome.cast.media.PhotoMediaMetadata();
mediaInfo.metadata.metadataType=chrome.cast.media.MetadataType.PHOTO;
mediaInfo.contentType=type;
var request=new chrome.cast.media.LoadRequest(mediaInfo);
session.loadMedia(request,onMediaDiscovered.bind(this,"loadMedia"),onMediaError.bind(this));
}
答案 0 :(得分:1)
为了使chromecast能够获取您的图像,您需要有一个Web服务器来提供图像。如果它不在云中,则您的发件人(网络或电话)需要嵌入Web服务器,然后将图像的URL(由Web服务器提供)传送到chromecast。