0

VideoDisplay コンポーネントの source プロパティに、3 つの異なるダイナミック ライブ ストリーム アイテムを含む DynamicStreamingVideoSource オブジェクトを渡します。この XML で記述されていることを考慮してください。

src="rtmp://88.87.56.214:1935/live/fashiontv_tmo_h.stream" bitrate="19200" src="rtmp://88.87.56.214:1935/live/fashiontv_tmo_m.stream" bitrate="9000" src="rtmp://88.87.56.214:1935/live/fashiontv_tmo_l.stream" bitrate="3600"

しかし、プレーヤーは、これら 3 つのビットレートのうち、最も低いビットレートでストリームを実行します。エンドユーザーが表示できる最も高いビットレートのストリームを使用するはずではありませんでしたか? 3 つのストリームはすべて個別にテストされており、すべて視聴可能です。

ありがとう、リヴィウ

4

3 に答える 3

1

それを私が直した!!!

この返信が5.5年後であることは知っていますが、これはまだ誰かを助けることができます. 私は同じ問題を抱えていて、何時間も何時間も答えを探した後、それを修正することができました. 必要なのは、メディア プレーヤーのバッファにゼロ以外の値を設定することだけです。

例:

Spark VideoDisplay の使用:

<s:VideoDisplay id="rtmpABRVideo" width="320" height="240" initialize="rtmpABRVideo.mx_internal::videoPlayer.bufferTime=2">
  <s:DynamicStreamingVideoSource host="rtmp://localhost:1935/live" streamType="live">
    <s:DynamicStreamingVideoItem streamName="webcam_1000" bitrate="1000" />
    <s:DynamicStreamingVideoItem streamName="webcam_500" bitrate="500" />
    <s:DynamicStreamingVideoItem streamName="webcam_150" bitrate="150" />
  </s:DynamicStreamingVideoSource> 
</s:VideoDisplay>

OSMF コンポーネントの使用:

var dynResource:DynamicStreamingResource = new DynamicStreamingResource('rtmp://localhost/live');
dynResource.urlIncludesFMSApplicationInstance = false;
dynResource.streamItems = Vector.<DynamicStreamingItem>([
                                new DynamicStreamingItem("mp4:webcam_150", 150, 320, 240),
                                new DynamicStreamingItem("mp4:webcam_500", 500, 320, 240),
                                new DynamicStreamingItem("mp4:webcam_1000", 1000, 320, 240)
                          ]);

var videoElement:VideoElement = new VideoElement();
videoElement.resource = dynResource;

var mediaPlayerSprite:MediaPlayerSprite = new MediaPlayerSprite();
mediaPlayerSprite.width = 320;
mediaPlayerSprite.height = 240;
mediaPlayerSprite.media = videoElement;
mediaPlayerSprite.mediaPlayer.bufferTime = 2;

addChild(mediaPlayerSprite);

これが誰かの役に立てば幸いです!

于 2016-02-04T23:11:22.700 に答える
0

VideoDisplayコンポーネントは、送信したソースURLが何であれ表示されると確信していました。コードを見ないと、何が起こっているのかわかりません。

別のビットレートストリームを表示する場合は、VideoDisplayコンポーネントにURLを切り替えるように指示する必要があります。「オンザフライ」で自動ビットレート切り替えを実行したい場合は、クライアントではなくサーバーで実行する必要があると思います。

于 2010-07-20T18:49:08.323 に答える
0

しばらく前に、非常に理解しやすいソース コードをブログに投稿しました。

ここでチェックしてください

于 2010-07-20T19:59:45.437 に答える