这似乎是一个很简单的问题,我有一些直接的AS3来使用Youtube API从Youtube加载视频。这工作得很好,但是我希望默认的 Youtube 播放器控件会出现,但它们似乎没有。我看到了如何通过 HTML 打开它们,但我需要通过 AS3 打开它们,因为我无法编辑 HTML 嵌入或 IFrame 标签。这是我到目前为止的代码:
import flash.display.Loader;
import flash.net.URLRequest;
import flash.events.Event;
import flash.system.Security;
Security.allowDomain("www.youtube.com");
Security.allowInsecureDomain("www.youtube.com");
var vid_player:Object;
var my_loader:Loader = new Loader();
my_loader.load(new URLRequest("http://www.youtube.com/apiplayer?version=3"));
my_loader.contentLoaderInfo.addEventListener(Event.INIT, onLoaderInit);
function onLoaderInit(e:Event):void{
addChild(my_loader);
vid_player = my_loader.content;
vid_player.addEventListener("onReady", onPlayerReady);
}
function onPlayerReady(e:Event):void{
vid_player.setSize(415,234);
vid_player.loadVideoById("sq7wu4OukBE",0);
}
所以这会把它拉进去,但是如果你翻转,控件不会向上切换。我还希望视频暂停,直到用户按下播放,但是上面的代码会自动播放。我确实想出了一个设置,该设置将显示视频一开始暂停,但是它只是拉入视频的大版本,不允许我调整其大小:
loadVideoById({'videoId': 'bHQqvYy5KYo', 'startSeconds': 5, 'endSeconds': 60, 'suggestedQuality': 'large'});
调整建议的质量不会改变尺寸,只会改变分辨率。如能澄清这两个问题,将不胜感激。
要使用控件加载默认播放器,请使用以下 URL:
http://www.youtube.com/v/VIDEO_ID?version=3
将VIDEO_ID替换为视频的 ID。
下面是所有可用设置和 API 调用的良好参考。
https://developers.google.com/youtube/flash_api_reference#Playback_controls