2009-06-28 26 views

Trả lời

4

Không trả lời rõ ràng câu hỏi của bạn, nhưng có một số trình phát FLV nguồn mở trong tự nhiên. Tôi sẽ tiếp cận vấn đề bằng cách lấy một trong số đó và xem cách họ xử lý video.

FPlayer sẽ là điểm xuất phát tuyệt vời. Here is the class đang thực hiện công việc. Nó là khá thẳng về phía trước, nhưng sử dụng một dự án như thế này có lẽ sẽ giúp bạn tiết kiệm thời gian.

đoạn này nên làm các trick trong một xương thời trang vô cùng trần:

var vid:Video = new Video(320, 240); 
addChild(vid); 

var nc:NetConnection = new NetConnection(); 
nc.connect(null); 

var ns:NetStream = new NetStream(nc); 
vid.attachNetStream(ns); 

var listener:Object = new Object(); 
listener.onMetaData = function(evt:Object):void {}; 
ns.client = listener; 

ns.play("externalVideo.flv"); 

from here

+0

Cảm ơn. Nhưng .. Yeah .. Không thực sự trả lời câu hỏi của tôi :) – roosteronacid

+0

đã thêm đoạn mã. –

1
var video:Video = new Video(); 
addChild(video); 

var nc:NetConnection = new NetConnection(); 
nc.connect(null); 

var ns:NetStream = new NetStream(nc); 
ns.client = {}; 
ns.client.onMetaData = ns_onMetaData; 
ns.client.onCuePoint = ns_onCuePoint; 
ns.play("http://www.helpexamples.com/flash/video/cuepoints.flv"); 

video.attachNetStream(ns); 

function ns_onMetaData(item:Object):void { 
    trace("metaData"); 
    // Resize video instance. 
    video.width = item.width; 
    video.height = item.height; 
    // Center video instance on Stage. 
    video.x = (stage.stageWidth - video.width)/2; 
    video.y = (stage.stageHeight - video.height)/2; 
} 

function ns_onCuePoint(item:Object):void { 
    trace("cuePoint"); 
    trace(item.name + "\t" + item.time); 
} 
1

Như Subha chỉ ra, nó được thực hiện bằng cách sử dụng lớp NetStream ... Tuy nhiên, lớp đó đặc biệt là khá khó khăn để làm việc với, và rất không mạch lạc với phần còn lại của ngôn ngữ ...

Tôi đặc biệt khuyên bạn nên sử dụng một số thư viện, lớp học hoặc thành phần t o quấn nó lên. Thành phần FLVPlayback trong Flash (không có bất kỳ giao diện nào), trái ngược với tất cả các thành phần tích hợp khác trong Flash, thực sự rất dễ sử dụng;)

2

Để thực hiện việc này - cắt và dán mã sau đây trong khung đầu tiên của tệp flash của bạn. Tất nhiên thay đổi tên ở cuối.

stage.displayState = StageDisplayState.FULL_SCREEN; 

var connection:NetConnection = new NetConnection(); 
var stream:NetStream; 
var video:Video = new Video(1280,960); 
var metaObj:Object = new Object(); 

function onMetaData(data:Object):void 
{ 

} 

connection.connect(null); 
stream = new NetStream(connection); 
stream.client = metaObj; 
metaObj.onMetaData = onMetaData; 
video.attachNetStream(stream); 
addChild(video); 
stream.play("name_of_flv.flv"); 
video.x = 0; 
video.y = 0; 
0
var flvPlaceHolder:MovieClip = new MovieClip();  

var vid:Video = new Video(320, 240); 
flvPlaceHolder.addChild(vid); 
addChild(flvPlaceHolder); 
flvPlaceHolder.x = stage.stageWidth/2-vid.width/2; 
flvPlaceHolder.y = stage.stageHeight/2-vid.height/2; 

var nc:NetConnection = new NetConnection(); 
nc.connect(null); 

var ns:NetStream = new NetStream(nc); 
vid.attachNetStream(ns); 

var listener:Object = new Object(); 
listener.onMetaData = function(evt:Object):void {}; 
ns.client = listener; 

ns.play("mario.flv"); 
Các vấn đề liên quan