我使用以下代码在我的播放列表中创建和循环播放我的视频:
private void Form1_Load(object sender, EventArgs e)
{
var pl = axWindowsMediaPlayer1.playlistCollection.newPlaylist("plList");
pl.appendItem(axWindowsMediaPlayer1.newMedia(@"C:\ABC\abc.mp4"));
pl.appendItem(axWindowsMediaPlayer1.newMedia(@"C:\XYZ\xyz.mp4"));
axWindowsMediaPlayer1.currentPlaylist = pl;
//axWindowsMediaPlayer1.settings.setMode("loop", true);
axWindowsMediaPlayer1.Ctlcontrols.play();
}
但是,我发现播放列表中的下一个项目在播放列表中当前项目结束之前播放 2 秒。然后,新项目再次播放(即项目的前 2 秒播放两次,一次在当前项目结束之前,一次在下一个项目的开头)。
如何确保仅在当前项目播放完毕后才加载下一个项目?
要求2:如何检测播放列表的结尾(即播放完所有视频后)
我试图在PlayStateChange事件中捕获它,但我无法在Media Ended或Stopped或Last状态中捕获它