2012-04-28 93 views
0

我的自定義電影播放器​​使用以下代碼播放視頻。剪輯開始播放需要很長時間,但一旦完成,您可以直接跳到最後。 我有一種感覺,我缺少一些關於緩衝區和預載工作原理的知識。有人能把我送到正確的方向嗎?flash/AS3 netstream加載/緩衝非常慢,我錯過了什麼?

private function init(e:Event = null):void { 
    connection = new NetConnection(); 
    connection.addEventListener(NetStatusEvent.NET_STATUS, doNetStatus); 
    connection.addEventListener(IOErrorEvent.IO_ERROR, doIOError); 
    connection.addEventListener(SecurityErrorEvent.SECURITY_ERROR, doSecurityError); 
    connection.connect(null); 
    stream = new NetStream(connection); 
    stream.addEventListener(AsyncErrorEvent.ASYNC_ERROR, doAsyncError); 
    stream.addEventListener(NetStatusEvent.NET_STATUS, doNetStatus); 
    stream.addEventListener(IOErrorEvent.IO_ERROR, doIOError); 
    stream.client = this; 
    video = new Video(1024, 576); 
    mc = new MovieClip(); 
    mc.addChild(video); 
    stage.addChild(mc); 
    mc.addEventListener(MouseEvent.CLICK, onClick); 
    video.attachNetStream(stream); 
    stream.bufferTime = 5; 
    stream.receiveAudio(true); 
    stream.receiveVideo(true); 
    stream.play(SITEURL + vidID +".mp4"); 
} 

這裏你可以看到在行動的玩家:http://joon.be/serve/ngjd_player.swf

回答

0

顯然,視頻的不流,因爲我需要在它們上面運行QT的FastStart。 這解決了這個問題,netstream現在按預期運行。

0

可以在admin命令PROMT運行下載qt-faststart.exe然後:

qt-faststart.exe "source.mp4" "fixed.mp4" 

大約過了15-30秒10分鐘長的視頻。 來源:https://articulate.com/support/article/mp4-movie-doesnt-begin-playing-until-it-has-fully-downloaded

我也試過這個免費的開源轉換器HandBrake Web Optimized檢查。 (花費所有10分鐘進行轉換)

+0

答案應該提供問題的解決方案,因此我刪除了實際上並非解決方案一部分的部分。 – 2017-02-16 13:00:14