Передача идентификатора видео youtube из видеопотока во flash

Я работаю над флэш-веб-приложением (ActionScript 2.0) для своего проекта с отличием, но у меня проблемы со встраиванием видео на YouTube. Обычно пользователь выбирает символы, которые запрашивают API YouTube с определенными тегами в зависимости от выбранных символов, а затем выбирается случайное видео из первых 30 видео. У меня это работает, используя следующий код:

on (release) {
url="http://gdata.youtube.com/feeds/api/videos?q=danger+passion&orderby=published&start-index="+random(30)+"&max-results=1&v=2"
getURL(url);
}

но это просто отображает веб-страницу со ссылкой на видео на YouTube.

Это код, который я буду использовать в качестве основы для плеера:

// create a MovieClip to load the player into
var ytplayer:MovieClip = _root.createEmptyMovieClip("ytplayer", 1);

// create a listener object for the MovieClipLoader to use
var ytPlayerLoaderListener:Object = {
onLoadInit: function() {
// When the player clip first loads, we start an interval to
// check for when the player is ready
loadInterval = setInterval(checkPlayerLoaded, 250);
}
};

var loadInterval:Number;


function checkPlayerLoaded():Void {
// once the player is ready, we can subscribe to events, or in the case of
// the chromeless player, we could load videos
if (ytplayer.isPlayerLoaded()) {
ytplayer.addEventListener("onStateChange", onPlayerStateChange);
ytplayer.addEventListener("onError", onPlayerError);
clearInterval(loadInterval);
}
}

function onPlayerStateChange(newState:Number) {
trace("New player state: "+ newState);
}

function onPlayerError(errorCode:Number) {
trace("An error occurred: "+ errorCode);
}

// create a MovieClipLoader to handle the loading of the player
var ytPlayerLoader:MovieClipLoader = new MovieClipLoader();
ytPlayerLoader.addListener(ytPlayerLoaderListener);

// load the player
ytPlayerLoader.loadClip("http://www.youtube.com/v/pv5zWaTEVkI", ytplayer);

может ли кто-нибудь помочь мне получить идентификатор видео (например: pv5zWaTEVkI) из канала? Или как отправить запрос из флэш-памяти, который вернет URL / идентификатор видео, а не URL-адрес канала. Любая помощь будет очень признательна, так как я скоро вернусь. Спасибо


person Community    schedule 25.04.2009    source источник


Ответы (1)


Вы получаете не веб-страницу, а RSS-канал.

Если вам просто нужен идентификатор видео YouTube, вы можете разделить полученную строку на watch?v=, а строка видео должна состоять из первых символов до '(запятая)

href='http://www.youtube.com/watch?v=aFyfbcZqdck' /><link

Вы можете потренироваться, разделив эту строку.

person Ólafur Waage    schedule 25.04.2009
comment
Спасибо, что ответили так быстро. Я как бы понимаю, к чему вы клоните, но в первую очередь он получает URL-адрес видео, переданный из RSS-канала, чтобы мигать. Затем я могу извлечь из него идентификатор видео. - person ; 25.04.2009
comment
Вы можете использовать LoadVars в сценарии действий, чтобы загрузить html в строку. А затем проанализируйте это. - person Ólafur Waage; 25.04.2009
comment
Фантастически это получилось. Совершенно не знал, что вы можете загрузить весь HTML-код веб-страницы в строку. Удалось использовать String.split для извлечения идентификатора видео. Большое вам спасибо за вашу помощь. - person ; 25.04.2009