protected override void OnLoad(EventArgs e) { base.OnLoad(e); try { m_factory = new MediaPlayerFactory(true); m_sourcePlayer = m_factory.CreatePlayer<IVideoPlayer>(); m_sourcePlayer.Mute = false; m_sourcePlayer.Volume = 100; m_renderPlayer = m_factory.CreatePlayer<IVideoPlayer>(); m_renderPlayer.WindowHandle = panel1.Handle; m_inputMedia = m_factory.CreateMedia<ICompositeMemoryInputMedia>(MediaStrings.IMEM); SetupVideoSourceOutput(m_sourcePlayer.CustomRendererEx); SetupAudioSourceOutput(m_sourcePlayer.CustomAudioRenderer); Predicate<LogMessage> filter = p => p.Level == LogLevel.Warning || p.Level == LogLevel.Error; m_factory.SubscribeToLogMessages(log => Console.WriteLine(log.Message), filter); Process.GetCurrentProcess().PriorityClass = ProcessPriorityClass.RealTime; } catch(Exception ex) { Console.WriteLine(ex.Message); } }