vlc3 libvlc_media_player_wait_until_playing 用什么方法替代
时间: 2023-07-29 21:05:42 浏览: 52
如果您要等待播放器开始播放,可以使用libvlc_event_manager_wait_for_event()方法来等待VLC播放器的事件。您可以注册一个事件管理器,然后等待VLC播放器的“MediaStateChanged”事件,该事件将在播放器开始播放时触发。以下是一个简单的代码示例:
```
// 初始化VLC库
libvlc_instance_t *vlcInstance = libvlc_new(0, NULL);
// 创建一个新的媒体播放器
libvlc_media_player_t *mediaPlayer = libvlc_media_player_new(vlcInstance);
// 加载媒体文件
libvlc_media_t *media = libvlc_media_new_path(vlcInstance, "/path/to/media/file.mp4");
// 将媒体文件赋值给媒体播放器
libvlc_media_player_set_media(mediaPlayer, media);
// 注册事件管理器
libvlc_event_manager_t *eventManager = libvlc_media_player_event_manager(mediaPlayer);
// 开始播放
libvlc_media_player_play(mediaPlayer);
// 等待播放器开始播放
libvlc_event_t event;
while (true) {
if (libvlc_event_manager_wait_for_event(eventManager, &event) == 0 && event.type == libvlc_MediaPlayerMediaChanged) {
// 播放器开始播放
break;
}
}
```
请注意,这只是一个简单的示例代码,您可能需要根据自己的需求进行修改。