c#vlc插件,如何查看vlc的播放状态知道它播放完没

如题,我想知道#winform里的vlc控件的播放状态,知道它是否完成了播放。

在WinForm中使用VLC控件,您可以使用VLC控件的Playing属性来检查播放状态。如果Playing属性为True,则说明VLC控件正在播放媒体。反之,如果Playing属性为False,则说明VLC控件已经停止播放。

例如,如果您使用的是AxVLCPlugin2类,可以使用如下代码来检查播放状态:

bool isPlaying = axVLCPlugin21.playlist.isPlaying;


或者使用

bool isPlaying = axVLCPlugin21.playlist.isPlaying();


当媒体播放完成后, VLC控件会自动停止播放,Playing属性会变成false。

也可以使用 VLC控件的 MediaPlayer.EndReached 事件来监听媒体是否播放完成。

例如:

axVLCPlugin21.MediaPlayer.EndReached += new EventHandler(MediaPlayer_EndReached);

private void MediaPlayer_EndReached(object sender, EventArgs e)
{
    //媒体播放完成 
}


或者使用 VLC控件的 MediaPlayer.PositionChanged 事件来监听媒体播放状态。

例如:

axVLCPlugin21.MediaPlayer.PositionChanged += new EventHandler<MediaPlayerPositionChanged>(MediaPlayer_PositionChanged);

private void MediaPlayer_PositionChanged(object sender, MediaPlayerPositionChanged e)
{
    if(e.newPosition>=1.0){
        //媒体播放完成 
    }
}