他の回答が述べたように、MMPPF (以前の Silverlight Media Framework) を使用してください。より多くの機能を備えたプレーヤーであり、カスタマイズも比較的簡単です (ビデオ チュートリアルも使用可能)。
ビットレートについては、そうです。Smooth Streaming アルゴリズムは、開始時の遅延を可能な限り低くするように設計されているため、開始時に最も低いビットレート/ビデオ チャンクが使用されます。ただし、やりたいことは可能です。
まず、次の 2 つのことを行う必要があります。
プレーヤーのOnMediaPluginRegistered
イベントにハンドラーを追加します。IAdaptiveMediaPlugin
その場合は、プラグインのインスタンスが必要かどうかを確認してください。これがサンプルです...
IAdaptiveMediaPlugin _adaptivePlugin = null;
void OnMediaPluginRegistered(object sender, Microsoft.SilverlightMediaFramework.Core.CustomEventArgs<Microsoft.SilverlightMediaFramework.Plugins.IMediaPlugin> e)
{
var adaptivePlugin = e.Value as IAdaptiveMediaPlugin;
if (adaptivePlugin == null) { return; }
if (_adaptivePlugin == null)
{
_adaptivePlugin = adaptivePlugin;
}
}
それができたら、メディア オープン イベントの 1 つ (MediaOpened など) が発生するのを待ちます。これで、IAdaptiveMediaPlugin
呼び出された のメソッドにアクセスできるようになりますSetVideoBitrateRange(...)
。
例えば:
_adaptivePlugin.SetVideoBitrateRange(minBitrate, maxBitrate, true);
それはあなたに必要なものを与えるはずです。