我有一个带有多个VLC播放器的WPF应用程序(使用LibVLCSharp.WPF)。对于每个玩家,我创建一个LibVLC
的新实例,并订阅Log
事件。
public Player()
{
InitializeComponent();
_libVLC = new LibVLC();
_mediaPlayer = new MediaPlayer(_libVLC);
// we need the VideoView to be fully loaded before setting a MediaPlayer on it.
VideoView.Loaded += (sender, e) => VideoView.MediaPlayer = _mediaPlayer;
_libVLC.Log += MediaPlayerOnLog;
}
问题在于每个日志都由所有订阅者处理,因此我不知道哪个玩家造成了哪个日志。
示例:如果我尝试在某位玩家上玩rtsp://test
,则会收到所有玩家的日志
[10:52:43.792错误] LibVLCSharp.Shared.MediaPlayer-mediaPlayer 1 live555:无法与rtsp:// test:554 /
连接[10:52:43.793错误] LibVLCSharp.Shared.MediaPlayer-mediaPlayer 2 live555:无法与rtsp:// test:554 /
连接[10:52:43.793错误] LibVLCSharp.Shared.MediaPlayer-mediaPlayer 3 live555:无法与rtsp:// test:554 /
连接[10:52:43.793错误] LibVLCSharp.Shared.MediaPlayer-mediaPlayer 4 live555:无法与rtsp:// test:554 /
连接
每个玩家都有记录吗?
答案 0 :(得分:0)
您可以通过MediaPlayerOnLog
方法在日志中添加特定文本吗?
类似$"Player {playerId} : {message}"