Добавьте приватную переменную вверху:
private var _duration:Number = 0;
Обновить это так:
public function metaDataHandler(infoObject:Object):void
{
_duration = infoObject["duration"];
}
Теперь создайте геттер на время.
public function get duration():Number
{
return _duration;
}
Теперь вы можете сделать:
trace(Veed.duration);
Метаданные будут извлечены даже через миллисекунды после запроса, то есть, если вы попытаетесь извлечь длительность сразу после извлечения метаданных, они еще не загрузятся. Попробуйте это в качестве примера:
addEventListener(Event.ENTER_FRAME, _wait);
function _wait(e:Event):void
{
if(Veed.duration != 0)
{
trace(Veed.duration);
removeEventListener(Event.ENTER_FRAME, _wait);
}
}