1

MediaElement コントロールを Slider コントロールに関連付けました。
SQL Server データベースのバイナリ フィールドからストリームを取得しています。
次の理由により、パフォーマンスの問題が発生する可能性があるのではないかと心配してい
ます
。 ) MediaElement
のソースをリセットする必要があります。位置を設定するために使用しているコードは次のとおりです。

private void ResetPlayerWithPosition(double milliseconds = 0)
{
    // _wmss is a WaveMediaStreamSource from WAVMss.dll
    // audio is of type byte[]
    this._wmss = new WaveMediaStreamSource(new MemoryStream(this.audio));
    this.playbackController.SetSource(this._wmss);
    this.playbackController.MediaOpened += (s, e) =>
    {
        this.playbackController.Position = TimeSpan.FromMilliseconds(milliseconds);
    };
}

私の懸念は、ファイルが大きくなると、位置がリセットされる前にコードがファイルが MediaElement のソースにロードされるのを待たなければならないという点で、パフォーマンスが低下することです。この場合、もう少し効率的にする方法について何か提案はありますか?

ご提案いただきありがとうございます。

4

1 に答える 1

0

これを最初に投稿してから 1 年 10 か月 14 日が経過しましたが、コメントもフォローアップの質問もありません。この間、iOS は多くの進歩を遂げ、Android はいくつかの新しいフレーバーをリリースし、HTML5 と jQuery は順調に成熟し、Microsoft は Metro 用の Silverlight を放棄しました。

サポートがまばらで、存在しなくなるため、このソリューションを放棄しました。Silverlight と引き換えに、HTML5 + jQuery ソリューションを選択しました。これにより、軽量、Web メソッド駆動型、AJAX 対応、ブラウザー + デバイス + サーバーに依存しないクロスプラットフォーム クライアントを、開発時間を短縮し、柔軟性、持続可能性、および保守性を向上させることができました。

Silverlight: 非常に革新的ではあるが非常に非効率なもう 1 つのテクノロジが休止状態に置かれました。RIP。

于 2012-10-31T23:30:13.657 に答える