问题描述
我有一个在 Xamarin iOS 中使用 VLC 媒体播放器绑定的应用程序 当我播放实例化一个 MediaPlayer 对象时,并按如下方式播放一个媒体项:
var media = new Media(libVLC,new Uri(mediaItem.MediaUri));
await media.Parse();
Player.Play(media);
播放器运行良好。 但是一旦我想播放下一个媒体项目,即我使用同一个播放器播放一个新的媒体实例, 媒体播放器阻止了我的用户界面。它只是挂在那里,没有任何错误消息。
我很想使用 MediaList,但正如前面提到的 here,功能有限,如果我想播放列表中的特定项目,我将无法播放。
请问有人可以帮忙吗?
解决方法
我相信这已在 Discord 聊天中解决了。
问题代码未包含在 Q 中(请始终包含完整的重现代码),但结果证明是 LibVLC 回调问题。从 LibVLC 事件回调到 LibVLC 时,请使用线程池调度程序。