我在Google Cast SDK的新公开发布版中遇到了自适应HLS的问题(我会为另一个问题保存)所以作为一个完整性检查我想恢复到一个正常工作的渐进式MP4在开发人员预览版SDK中。
视频确实播放,但是有问题,它会放大并且屏幕上会出现滚动条。
以下是我的Chrome发件人代码中创建MediaInfo实例的部分:
var mediaInfo = new chrome.cast.media.MediaInfo('http://url_to_progressive_mp4.mp4');
mediaInfo.contentType = 'video/mp4';
mediaInfo.streamType = chrome.cast.media.StreamType.BUFFERED;
mediaInfo.duration = 1732;
http://url_to_progressive_mp4.mp4
是CloudFront上的已签名网址,我可以在Chrome(浏览器),VLC等中打开它。它在SDK的开发者预览版中也运行良好。
我的接收器是自定义接收器,与文档中的示例相同:
<html>
<head>
<title>Cast</title>
<script src="//www.gstatic.com/cast/sdk/libs/receiver/2.0.0/cast_receiver.js"></script>
</head>
<body>
<video id='media'/>
<script>
window.onload = function() {
window.mediaElement = document.getElementById('media');
window.mediaManager = new cast.receiver.MediaManager(window.mediaElement);
window.castReceiverManager = cast.receiver.CastReceiverManager.getInstance();
window.castReceiverManager.start();
}
</script>
</body>
我无法理解为什么会这样做,我希望在继续使用HLS之前让MP4再次运行。
答案 0 :(得分:0)
我通过将接收器中的视频标签更改为以下内容来修复它:
<video id='media' width="100%" height="auto" />
他们应该更新他们的文档并更改客户接收者页面上的示例: https://developers.google.com/cast/docs/custom_receiver
默认情况下,SDK中的脚本会将其调整为350px宽。
答案 1 :(得分:0)
Cast团队在simple receiver页面的Github示例应用的receiver.html中说明了以下内容:
We find that having everything fit in the HTML boxes tends to look nicer on TV
so, we also set overflow: hidden, which clips all flowing outside of boxes or
adding of scrollbars, which aren't useful on TV.
-->
<style type="text/css">
@import url(http://fonts.googleapis.com/css?family=Droid+Serif:400,700);
body {
font-family: "Droid Serif", serif;
color: #444;
line-height: 150%;
border: 0px;
margin: 0px;
width: 100%;
height: 100%;
overflow: hidden !important;
}
video {
width: 100%;
height: 100%;
margin: auto auto;
overflow: hidden !important;
}
</style>