WindowsMediaPlayer播放时间

时间:2013-04-12 14:58:25

标签: c# winforms axwindowsmediaplayer

我有一个aXWindowsMediaPlayer的窗体,应该使用方法aXWindowsMediaPlayer.Url = <video/image file location>每5秒播放一个随机视频/图片。 这适用于图片,但是当视频较长时,它只会播放5秒而不是全长,对于较短的视频,它会播放完整的视频,而其他秒则会显示黑屏。 / p>

有没有办法将mediaPlayer配置为只播放完整长度的视频时转到下一张图片/视频?

EDIT1:

类似的东西:

    Timer_TickEvent()//Every 5 seconds it chooses a random given URL
    {
       axWindowsMediaPlayer1.URL = <Random URL>;
       if(<Random URL> == 'A video?')
       {
             timer.Enabled = false;
             PlayVideoLength();
       }
    }
    Private void PlayVideoLength()
    {
     if('<Random URL.Length> ?' == 'the length of the played video in axWindowsMediaPlayer1 ?')
     {
          Timer.enabled = true;
     }
    }

这段代码显然无法正常工作。这是我想要它做的一个想法。

1 个答案:

答案 0 :(得分:0)

您可以找到您的网址是带有 IWMPMedia :: getItemInfo getType 的视频/音频/图片媒体。

而不是在axWindowsMediaPlayer组件中设置Url:

 MyMediaComponent.Url = <MyMediaUrl>;

您可以使用以下网址创建新内容:

WMPLib.IWMPMedia MyNewMedia = MyMediaComponent.newMedia(<MyMediaUrl>);

我认为您可以通过以下方式获取媒体类型:

MyNewMedia.getType();

您可以找到msdn文档here

当您找到媒体类型时,您可以在设置网址之前测试媒体类型!

/* It is just a suggestion, this code don't work! */
if ( MyNewMedia.getType() == <A photo MEDIA code>)
{
    // Set the URL for show the picture
    MyMediaComponent.Url = <MyMediaUrl>;
    return;
}

//else

// This media is not a picture!

希望我的想法能帮助你。