媒体播放器快进

时间:2012-08-30 08:40:35

标签: c# wpf media-player media playback

我花了很多时间搜索,并使用所有不同的关键短语。我正在使用媒体播放器,并有一个菜单条,可以选择快进和快退。这是我目前的情况:

private void increaseRateToolStripMenuItem_Click(object sender, System.EventArgs e)
{
    if (axWindowsMediaPlayer1.playState == WMPLib.WMPPlayState.wmppsPlaying)
    {
        WMPLib.IWMPControls3 controls = (WMPLib.IWMPControls3)axWindowsMediaPlayer1.Ctlcontrols;
        if (controls.get_isAvailable("fastForward"))
        {
            controls.fastForward();
        }
    }
}

这基本上就是我一直在寻找的圈子。我从这里开始,修补,然后回到这里。这让我发疯了。从理论上讲,这听起来很简单,但我一无所获。

我上面使用的示例不在此处的MSDN示例中:http://msdn.microsoft.com/en-us/library/windows/desktop/dd564741(v=vs.85).aspx

所以我在这里问,当在C#中点击菜单项时,如何快进(和反转)视频?

1 个答案:

答案 0 :(得分:1)

这是my answerthis related question的扩展名。

根据那边的OP(请参阅我的回答评论),如果您正在播放MP4文件,这将有效,但如果您正在尝试播放AVI,那么它将无法正常工作,因为它们未被编入索引。相反,他建议您增加currentPosition属性(MSDN documentation)以实现此效果。

总而言之,代替controls.fastForward(),在某种循环中尝试controls.currentPosition += someIncrement(也许这个问题可能会帮助您实现这一目标:C# how to loop while mouse button is held down