0

FLVPlayback コンポーネント (Flash Pro CS3 からインポート) を使用して、flex ベースのビデオ プレーヤーを作成しています。すべてのプレーヤー コントロールのスキンを変更してリンクしましたが、すべてうまく機能しています...

ただし、ビデオがロードされたポイントを超えてシークしようとすると (プログレッシブ ダウンロードを使用している場合)、ビデオは完全にフリーズします。一時停止したり、再生したり、別の場所に移動したりすることはできなくなりました。ダウンロードされていないビデオのポイントを実際に再生できないことは理解していますが、全体が応答しなくなっているようです。インターフェースやその他の要素はまだ機能しているため、Flash Player 全体がクラッシュすることはなく、FLVPlayback コンポーネントだけがクラッシュしました。

何か案は?

4

1 に答える 1

0

そこで、シークバー スキンに組み込まれているシーク処理を動作させるのをあきらめ、ロードされた量をチェックする独自のカスタム クリック ハンドラを作成しました。点:

private function seekHandler(e:MouseEvent):void{
    if(video.source){
        var seekto:Number = (e.stageX-seekBar.x)/seekBar.width *100;
        var loaded:Number = (video.bytesLoaded/video.bytesTotal)*100;
        if(seekto > loaded){
            seekto = loaded-0.5;
        }
        video.seekPercent(seekto);
    }
}

ただし、これが FLVPlayback コンポーネントの将来のバージョンで修正されるとよいでしょう。

于 2010-03-19T12:14:54.637 に答える