我正在嘗試爲OSMF創建一個代理插件,該插件將充當分析插件,用於跟蹤某些事件。我想跟蹤視頻的當前時間。使用OSMF代理插件監聽當前時間變化
在用於代理的元件的集方法,我有以下:
proxiedElement.addEventListener(MediaElementEvent.TRAIT_ADD, _onTraitAdd);
爲DURATION_CHANGE和CURRENT_TIME_CHANGE事件然後,在_onTraitAdd
方法,我附上事件偵聽器。
private function _onTraitAdd(event:MediaElementEvent):void {
trace("adding trait");
trace(event.traitType);
if (MediaTraitType.TIME == event.traitType)
{
//Get the time trait, so we can handle the duration changed event
var timeTrait:TimeTrait = proxiedElement.getTrait(MediaTraitType.TIME) as TimeTrait;
timeTrait.addEventListener(TimeEvent.DURATION_CHANGE, _onDurationChanged);
timeTrait.addEventListener(TimeEvent.CURRENT_TIME_CHANGE, _onTimeChanged);
//debug("Media has a timeline");
}
}
的第一個事件,DURATION_CHANGE
在視頻的開始被激發,但第二個是從來沒有發射。
我應該在哪個元素上附加CURRENT_TIME_CHANGE
事件以跟蹤視頻的當前時間?
我分析了Google Analytics plugin for OSMF,聲稱每5,10或20秒追蹤一次,但是looking at the code,它不清楚它如何管理追蹤當前時間。