0

FLVPlayback コンポーネントのインスタンスに、存在しないソースまたは何らかの理由で再生できないソースが渡されたかどうかを検出する方法について、私は完全に途方に暮れています。

考えられるすべてのイベントにハンドラーをアタッチしました...具体的には...

        videoPlayer.addEventListener(VideoEvent.COMPLETE, vidEnd);
        videoPlayer.addEventListener(VideoEvent.READY, vidStart);
        videoPlayer.addEventListener(VideoEvent.PLAYHEAD_UPDATE, vidMoved);         
        videoPlayer.addEventListener(HTTPStatusEvent.HTTP_STATUS, httpStatusHandler);           
        videoPlayer.addEventListener(IOErrorEvent.IO_ERROR, ioErrorHandler);

しかし、クリップが見つからないか破損している場合、それらはどれも起動しません。

私もこれを試しました:

            try{
                videoPlayer.source = "http://localhost:18888/" + folder + "/" + nextUrl;
            }catch(e:VideoError){
                trace("http://localhost:18888/" + folder + "/" + nextUrl + " couldn't be found");
                playNextItem();
            }

しかし、それもうまくいきません。私は完全に困惑しています。これを行う正しい方法は何ですか?

ティア

4

1 に答える 1

2

可能であれば、FLVPlaybackは使用しないでください。これは、舞台裏で「魔法の」ことを実行しすぎて、少しバグがあるためです。VideoPlayerこれは基本的に、クラスの単なるラッパーです。

FLVPlaybackを使用する必要がある場合は、でラップされているVideoPlayerにアクセスしてFLVPlayback.getVideoPlayerから、を聞いてVideoState.STATE_CHANGE監視することができますVideoPlayer.state。の場合VideoState.CONNECTION_ERRORは、ビデオフィードをロードまたは再生できないことを意味します。

于 2011-09-23T05:05:45.683 に答える