1

次のような方法でいくつかのメソッド/イベントを処理する必要があるため、 Flash Media Playbackが一部の API をサポートしているかどうかは誰にもわかりません。javascript

  1. 遊ぶ
  2. 一時停止
  3. 止まる
  4. ストリーミングは終了しました
  5. ストリーミングが開始されました
  6. ストリーミング エラー

Grab Playerなどのすべてが必要です。しかし、ドキュメントには、それを実装する必要があると書かれています。ありがとう!!

PS 基本的な FMP の実装は次のとおりです。

  <object width="600" height="409"> <param name="movie" value="http://fpdownload.adobe.com/strobe/FlashMediaPlayback.swf"></param><param name="flashvars" value="src=http%3A%2F%2Fosmf.org%2Fvideos%2Fcathy2.flv&poster=http%3A%2F%2Fosmf.org%2Fimages%2Fposter_cathy_fmp.jpg"></param><param name="allowFullScreen" value="true"></param><param name="allowscriptaccess" value="always"></param><embed src="http://fpdownload.adobe.com/strobe/FlashMediaPlayback.swf" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="600" height="409" flashvars="src=http%3A%2F%2Fosmf.org%2Fvideos%2Fcathy2.flv&poster=http%3A%2F%2Fosmf.org%2Fimages%2Fposter_cathy_fmp.jpg"></embed></object>
4

1 に答える 1

1

Flash Media Playback は Strobe Media Playback と同じ機能をサポートしていますが、Strobe 用に存在する JavaScript API は常に探索的であったため、FMP でサポートされているとは思えません。

それでも、FMP には Strobe と同じプラグイン アーキテクチャが付属しているため、OSMF を使用して、strobe と同じ方法でプラグインを作成できるはずです。しばらく前に、Strobe の JavaScript API を拡張する目的で、Strobe 用のプラグインを作成しました。FMP でも似たようなことができるかもしれません。これが私がやった方法です:

        private function onFullScreen(event:FullScreenEvent):void
    {
        if (event.fullScreen) {
            call([this.javascriptCallback, ExternalInterface.objectID, "fullscreen", true]);
        } else {
            call([this.javascriptCallback, ExternalInterface.objectID, "fullscreen", false]);
        }
    }

    private static function call(args:Array, async:Boolean = true):void
    {       
        if (async)
        {
            var asyncTimer:Timer = new Timer(10, 1);    
            asyncTimer.addEventListener(TimerEvent.TIMER, 
                function(event:Event):void
                {
                    asyncTimer.removeEventListener(TimerEvent.TIMER, arguments.callee);
                    ExternalInterface.call.apply(ExternalInterface, args);
                }
            );  
            asyncTimer.start();
            return;
        }
        ExternalInterface.call.apply(ExternalInterface, args);
    }
}

参照: github

できればFMPを落とします。FMP のドキュメントはほぼ存在せず、Strobe での JavaScript のサポートは非​​常に優れています。興味があれば、Strobe JavaScript APIをここに文書化しました。

于 2016-09-27T07:34:21.360 に答える