public ISARVolumeControl createSARVolumeControl() { ISARVolumeControl lresult = null; do { try { if (checkICaptureManagerControl()) { break; } object lUnknown; mICaptureManagerControl.createMisc( typeof(CaptureManagerLibrary.ISARVolumeControl).GUID, out lUnknown); if (lUnknown == null) { break; } var lSARVolumeControl = lUnknown as CaptureManagerLibrary.ISARVolumeControl; if (lSARVolumeControl == null) { break; } lresult = new SARVolumeControl(lSARVolumeControl); } catch (Exception exc) { LogManager.getInstance().write(exc.Message); } } while (false); return(lresult); }
public MainWindow() { InitializeComponent(); try { mCaptureManager = new CaptureManager("CaptureManager.dll"); } catch (Exception) { mCaptureManager = new CaptureManager(); } LogManager.getInstance().WriteDelegateEvent += MainWindow_WriteDelegateEvent; if (mCaptureManager == null) { return; } mSourceControl = mCaptureManager.createSourceControl(); if (mSourceControl == null) { return; } mSinkControl = mCaptureManager.createSinkControl(); if (mSinkControl == null) { return; } mISessionControl = mCaptureManager.createSessionControl(); if (mISessionControl == null) { return; } mISARVolumeControl = mCaptureManager.createSARVolumeControl(); if (mISARVolumeControl == null) { return; } mRVolume.ValueChanged += (s, ev) => { if (mSARSinkOutputNode != null) { mISARVolumeControl.setChannelVolume(mSARSinkOutputNode, 0, (float)ev.NewValue); } }; mLVolume.ValueChanged += (s, ev) => { if (mSARSinkOutputNode != null) { mISARVolumeControl.setChannelVolume(mSARSinkOutputNode, 1, (float)ev.NewValue); } }; XmlDataProvider lXmlDataProvider = (XmlDataProvider)this.Resources["XmlSources"]; if (lXmlDataProvider == null) { return; } XmlDocument doc = new XmlDocument(); string lxmldoc = ""; mCaptureManager.getCollectionOfSources(ref lxmldoc); doc.LoadXml(lxmldoc); lXmlDataProvider.Document = doc; mSinkControl.createSinkFactory(Guid.Empty, out mSARSinkFactory); }