我有一个Javascript,可以成功地使一个嵌入式YouTube视频始终在高清播放(如果该视频上传在高清以及)。
我的问题:当我在Internet中运行代码时,它不会在HD720中播放视频,它只在420(Large=420px)中播放。当我在Chrome、Firefox和Safari中运行这段代码时,它们都在HD720中播放视频。
你知道我怎么能让IE总是在HD720?上播放我嵌入的Youtube视频吗?
我的代码:参见下面为什么'hd720‘不起作用的说明:
<script type="text/javascript" src="https://www.youtube.com/player_api"></script>
<script>
function onPlayerReady(event) {
event.target.setPlaybackQuality('highres');
// NOTE: MAKING the above value 'hd720' makes NONE of the browsers
// play the video in HD720, test it for yourself to see.
// So thats NOT a solution.
}
function loadYouTubeVideo(uid) {
setTimeout( function() {
var id = uid;
var instPlayer = new YT.Player(id, {
height: '480',
width: '853',
enablejsapi: 1,
suggestedQuality: 'highres',
videoId: uid,
events: {
'onReady': onPlayerReady
}
});
}, 500);
}
</script> 然后,像这样在页面中嵌入一个Youtube视频(注意,*VIDEO_ID*是youtube视频的唯一ID):
<div id="VIDEO_ID"></div>
<script>
loadYouTubeVideo("VIDEO_ID");
</script> 发布于 2012-11-21 07:18:59
在480 px视频播放器中播放720 p (720 Px)视频不会提高视频质量,因为额外的像素无法显示在设备上。事实上,调整大小的方式必须比在YouTube服务器上转码时更注重性能,而且你最终可能会得到比允许标准分辨率显示更糟糕的播放质量。
默认情况下,YouTube播放器将选择适合播放机内部的最大分辨率(按高度计算),在考虑到任何播放控件之后。也就是说,对于480个像素高的播放器,最高的质量将适合420 p版本。
我还没有在不同的播放器和编解码器上显式测试setPlaybackQuality方法,看它是否与最初的视频加载有不同的行为,但我不认为这样做的目的是让开发人员强制使用比实际显示的分辨率更高的分辨率。
https://stackoverflow.com/questions/13390785
复制相似问题