0

我正在使用 silverlight 插件来播放媒体文件。

我正在控制播放速率以提高/降低媒体播放速率。

当媒体元素处于缓冲模式时,会弹出进度条。

这是用于检查媒体是否处于缓冲模式的代码。

if(_myMediaElement.CurrentState == MediaElementState.Buffering)
{
  //Show pop_up for with buffering progress bar
}

问题:当我使用播放速率滑块控件增加播放速率并且通过使用新的时间跨度位置重置媒体元素来增加媒体位置时,媒体元素进入缓冲模式。但 _myMediaElement.CurrentState 始终显示播放模式。因此无法显示带有缓冲进度条的 pop_up。

更改播放率的代码

_myMediaElement.PlaybackRate = _playRateSliderControl.Value; // it can be 0.5, 1.0, 1.5 

增加媒体位置的代码

_myMediaElement.Position = new TimeSpan(0, 0, newPosition);

任何帮助表示赞赏

谢谢

4

1 回答 1

0

我已经修好了。当我从 1.0 增加播放率时,如果媒体元素处于缓冲过程中,我已经分配了 playrate = 1.0 并接受了另一个增加播放率值的变量。并且当缓冲完成并且媒体元素播放器播放流时,比通过增加值重置播放速率。

于 2013-07-08T04:52:47.277 回答