我已将MediaElement控件绑定到Slider控件
我从SQL Server数据库中的二进制字段获取流
我担心由于以下原因可能会出现一些性能问题:
1.我正在存储从Web服务检索的字节数组
2.任何时候我对MediaElement做任何事情(即重置位置,停止播放,恢复播放)我必须重置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的源中。如果是这种情况,是否有人有任何关于如何使其更有效率的建议?
提前感谢任何建议。
答案 0 :(得分:0)
自从我第一次发布此消息以来,已经过了1年10个月,而且甚至没有评论或后续问题。在这段时间里,iOS已经取得了很多进步,Android已经发布了一些新的口味,HTML5和jQuery已经成熟优雅,微软已经放弃了Silverlight for Metro。
我已经放弃了这个解决方案,因为支持很少,并且正在向不存在的方向发展。作为Silverlight的交换,我选择了HTML5 + jQuery解决方案。这使我能够开发轻量级,Web方法驱动,支持AJAX,浏览器+设备+服务器独立,跨平台客户端,缩短开发时间,具有更大的灵活性,可持续性和可维护性。
Silverlight:另一项高度创新但效率极低的技术已经奠定。 RIP。