From: Sweidan Omar Date: Wed, 19 Jan 2022 14:02:05 +0000 (+0000) Subject: #310 X-Git-Url: http://git.useribm.hu/?a=commitdiff_plain;h=5a4c67eefb0e5881382661cd1eafad2ad3c44a5b;p=mediacube.git #310 git-tfs-id: [http://tfs.userrendszerhaz.hu:8080/tfs/DefaultCollection]$/MediaCube;C32801 --- diff --git a/client/DxPlay/PlayerGraph.cs b/client/DxPlay/PlayerGraph.cs index beee83bc..396bcab7 100644 --- a/client/DxPlay/PlayerGraph.cs +++ b/client/DxPlay/PlayerGraph.cs @@ -6,7 +6,7 @@ using System; using System.Runtime.InteropServices; namespace DxPlay -{/*lejatsztasi sebesseg megkeresese */ +{ public class PlayerGraph : FilterGraph, IDisposable { #if DEBUG @@ -97,6 +97,7 @@ namespace DxPlay catch (Exception e) { logger.Error(e.Message); + logger.Error(e.StackTrace); throw e; } } @@ -140,7 +141,7 @@ namespace DxPlay } catch (Exception e) { - logger.Error(e); + logger.Error(e.StackTrace); graphBuilder.RemoveFilter(videoRenderer); logger.Info("Trying default VideoRenderer instead Video Mixing Renderer 9"); AddDefaultRenderer(graphBuilder, sampleGrabber); @@ -167,7 +168,7 @@ namespace DxPlay } catch (Exception e) { - logger.Error(e); + logger.Error(e.StackTrace); graphBuilder.RemoveFilter(videoRenderer); logger.Info("Trying default VideoRenderer instead Video Mixing Renderer 7"); AddDefaultRenderer(graphBuilder, sampleGrabber); @@ -240,8 +241,9 @@ namespace DxPlay { logger.Debug("Add LAVSplitter to graph"); IBaseFilter splitter = LoadSplitter(graphBuilder); - if (splitter == null) + if (splitter == null) { throw new Exception("Can not load splitter!"); + } logger.Debug("Connect SourceFilter -> LAVSplitter"); FilterGraphTools.ConnectFilters(graphBuilder, sourceFilter, "Output", splitter, "Input", true); return splitter; @@ -303,7 +305,9 @@ namespace DxPlay ILAVSplitterSettings lavSplitterSettings; splitter = FilterProvider.GetSplitter(out lavSplitterSettings); if (splitter == null) + { splitter = FilterGraphTools.AddFilterByName(graphBuilder, FilterCategory.LegacyAmFilterCategory, "LAV Splitter"); + } if (splitter != null) graphBuilder.AddFilter(splitter, "LAV Splitter"); @@ -331,7 +335,10 @@ namespace DxPlay FilterGraphTools.RemoveAllFilters(graphBuilder); } - Marshal.ReleaseComObject(this); + if (this != null) + { + Marshal.ReleaseComObject(this); + } isDisposed = true; } }