Windows Phone 8暂停视频无法恢复(音频确实)

时间:2013-05-13 11:47:49

标签: c# windows-phone-8 mediaelement

在我的应用程序中,我有fullscreen MediaElement可以再现全屏视频。

当我暂停视频时,我无法恢复它(with MediaElement1.Play()),因为只有音频恢复。

似乎视频没有正确重绘,因为我试图在它前面加button并且如果我hold the button(所以我想我强迫背景中的媒体元素重绘) 视频开始显示。

这似乎可以通过以下事实得到证实:

Application.Current.Host.Settings.EnableFrameRateCounter = true;

即使没有按钮利用,视频播放也能正常恢复。

如果有人可以提供帮助,我将非常感激。非常感谢阅读和评论。

2 个答案:

答案 0 :(得分:1)

我以另一种方式解决了这个问题。 我注意到视频在单击“播放”按钮两次后恢复,所以我使用DispatcherTimer稍后再调用MyPlayer.Play()一次

 DispatcherTimer dt = new DispatcherTimer();

    public MainPage()
    {
        InitializeComponent();
        dt.Interval = new TimeSpan(0, 0, 0, 1);
        dt.Tick += new EventHandler(Ticked);
    }

   private void Ticked(object sender, EventArgs e)
    {
        MyPlayer.Play();
        dt.Stop();
    }
 private void Button_Click_1(object sender, RoutedEventArgs e)
    {
        MyPlayer.Play();
        dt.Start();
    }

答案 1 :(得分:0)

我找到了一个可能的,丑陋的解决方法:

video_timer = new System.Threading.Timer(x=>refresh_video(), null, TimeSpan.FromSeconds(0), TimeSpan.FromSeconds(1 / 60.0));

private void refresh_video()
{
    Dispatcher.BeginInvoke(delegate() { MediaElement1.InvalidateArrange(); });
}

因为它可行,所以我会选择这个,但我真的很喜欢更好的解决方案。