OSMFでflv bytearraysを再生できるようになりました。事前に、私はすでにnetStreamを継承し、その代わりにappendbytesを使用するplayメソッドをオーバーライドする新しいクラスを作成することで、byteArrayを再生することができました。だから、私がしたのはOSMFにそれを使用させることでした。メディア要素 2. ByteStreamLoader - -
オーバーライドnetstremasは/ playメソッド求めるLoadTraitを拡張 - 3. ByteStreamLoadTrait LoaderBaseを拡張 1. ByteStreamElement:
//manually dispatch seek event since we override seek()
dispatchEvent(new NetStatusEvent(NetStatusEvent.NET_STATUS,false,false, {code:"NetStream.Play.Seek", level:"status"}));
//look for byte position based on _seekTime value
flvStream = _sfw.getFlvStream(false);
_seekTime = parameters[1] * 1000; //netstream time in milliseconds
_flvParser.parse(flvStream, false, flvTagSeeker);
flvStream.position = _flvParserProcessed;
//append flvtag from the new byte position to end of flv byteArray
var tmp:ByteArray = new ByteArray();
flvStream.readBytes(tmp, 0, flvStream.bytesAvailable);
_flvParserProcessed = 0;
this.appendBytesAction(NetStreamAppendBytesAction.RESET_SEEK);
appendBytes(tmp)
など、それを使用して、私は、これは、これらのクラスを作成しましたこれは:
mediaPlayerSprite = new MediaPlayerSprite();
addChild(mediaPlayerSprite);
mediaPlayerSprite.media = new ByteStreamElement();
私は本当にこれを行うには最良の方法ですが、確かにわかりません。私が新しいクラスを作成したのが最善か、OSMFがbytearrayを使うために何らかのプラグインを書いていたはずです。そして、別のことは、私が本当に必要とするのは、必要に応じてプレイヤーの中にcontendually appendbytesを追加することです。だから私はまだこれを使用していないし、平均時間の間私はこれを把握するまで、私のカスタム "ByteStreamプレーヤー"に固執する理由です。
結果として得られたすべてのコードを提供できますか? –