c# - 在 mediaElement 中设置位置(WP8.1 中的 ScrubbingEnabled 替代方案)

标签 c# wpf windows-phone-8.1

我正在尝试在视频暂停时设置视频的位置。 在 WPF 中,使用 ScrubbingEnabled 很简单 属性(property)。 但是Windows Phone 没有这样的东西。 所以我使用:

_mediaElement.Play();
_mediaElement.Position += new TimeSpan(0,0,0,0,50);//move video 50 milisecond forward
_mediaElement.Pause();

它正在“工作”,但是当我试图向后退(大约)5 毫秒时,它正在向前移动,并且没有明确的解决方案...

如何替换 Windows Phone 上的 ScrubbingEnabled 属性?

编辑

返回 5ms 的代码:

_mediaElement.Play();
_mediaElement.Position -= new TimeSpan(0,0,0,0,5);
_mediaElement.Pause();

最佳答案

即使假设您的视频以每秒 60 帧的速度运行,每 16.67 毫秒也只有一帧。所以在很多情况下,移动 5 毫秒可能什么都不做。

这也可以解释为什么当您要求它移动 50 毫秒时,它并没有移动那个精确的量,而是移动到最近帧的时间。

(如果您仅将位置移动几帧,由于数字视频压缩的工作方式,它可能不会像您预期的那样工作)

关于c# - 在 mediaElement 中设置位置(WP8.1 中的 ScrubbingEnabled 替代方案),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24824146/

相关文章:

c# - 从ViewModel更改WPF样式

c# - 该组件没有由 uri 标识的资源

c# - 在共享的 WinRT 8.1 页面上显示广告

WPF - 确定鼠标是否在 UIElement 上

Caliburn.Micro Screen.CanClose() 和 MessageDialog().ShowAsync()

c# - 如何更改在 ListView 中用作 ItemTemplate 的 UserControl 的 VisualState

c# - 关于比奈公式的小知识

c# - 基于不同XAML的样式继承

c# - 如何成功使用 existingResponse ="Auto"?

C# 从 IGrouping 中选择不同的值