国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 網站 > WEB開發 > 正文

8.14.創建視頻播放進度條

2024-04-27 13:52:04
字體:
來源:轉載
供稿:網友
8.14.1. 問題
我需要創建一個控制條,使用戶能夠在視頻播放時使用進度條。
8.14.2. 解決辦法
創建一個可以拖動的Sprite 對象,并且監聽任何它發出的DragEvent 事件。在DragEvent 時間處理中,在Video 對象的視頻流,NetStream 設置向前或向后的搜索總數,
8.14.3. 討論
您可以使用任何可拖動的顯示對象在播放的視頻中設定新的位置。在這個例子中,NetStream的seek 方法從視頻開頭起指定秒數的點開始播放。
+展開
-ActionScript
ns.seek((playhead.x/timeline.width) * length);

用戶打算搜索視頻中制定的秒數時,用拖動Sprite 對象在時間線區域的寬度來分配位置和在視頻中的長度。NetStream 會照顧尋找適當的幀,從這一點開始重現播放視頻流。
+展開
-ActionScript
import flash.display.Sprite;
import flash.events.MouseEvent;
import flash.events.NetStatusEvent;
import flash.media.Video;
import flash.net.NetConnection;
import flash.net.NetStream;
import mx.core.UIComponent;
public class Scrubber extends UIComponent
{
private var playhead:Sprite;
private var timeline:Sprite;
private var ns:NetStream;
private var nc:NetConnection;
private var obj:Object = {};
private var length:int;
private var vid:Video;
public function Scrubber () {
super();
playhead = new Sprite();
addChild(playhead);
playhead.graphics.beginFill(0x0000ff, 1);
playhead.graphics.drawCircle(0, 0, 5);
playhead.graphics.endFill();
playhead.addEventListener(MouseEvent.MOUSE_DOWN,
startSeek);
timeline = new Sprite();
timeline.graphics.beginFill(0xcccccc, 1);
timeline.graphics.drawRect(0, 0, 200, 10);
timeline.graphics.endFill();
addChild(timeline);
timeline.addChild(playhead);
playhead.y = 4;
vid = new Video();
addChild(vid);
vid.y = 100;
nc = new NetConnection();
nc.addEventListener(NetStatusEvent.NET_STATUS,
netStatus);
nc.connect(null);
}
private function netStatus(event:NetStatusEvent):void {
obj.onMetaData = onMetaData;
ns = new NetStream(nc);
ns.client = obj;
vid.attachNetStream(ns);
ns.play("http://localhost:3001/test.flv");
}
private function onMetaData(obj:Object):void {
length = obj.duration;
trace(length);
}
private function startSeek(mouseEvent:MouseEvent):void {
playhead.startDrag(false, timeline.getBounds(this));
addEventListener(MouseEvent.MOUSE_MOVE, seek);
playhead.addEventListener(MouseEvent.ROLL_OUT, endSeek);
playhead.addEventListener(MouseEvent.MOUSE_UP, endSeek);
}
private function seek(mouseEvent:MouseEvent):void {
ns.seek((playhead.x/timeline.width) * length);
}
private function endSeek(mouseEvent:MouseEvent):void {
removeEventListener(MouseEvent.MOUSE_MOVE, seek);
playhead.stopDrag();
}
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 常宁市| 老河口市| 达州市| 荔波县| 全州县| 中江县| 莱州市| 建水县| 皋兰县| 凤城市| 阳高县| 皮山县| 鄂温| 旌德县| 福安市| 忻州市| 山西省| 松阳县| 阳江市| 朝阳县| 天门市| 花垣县| 察雅县| 长治市| 驻马店市| 高密市| 彭泽县| 霍州市| 青海省| 河北省| 合肥市| 绥滨县| 抚顺市| 法库县| 乐业县| 中卫市| 尼木县| 陇西县| 台中县| 谷城县| 新泰市|