示例#1
0
        private object getSwitcher(
            object aEncoderNode)
        {
            object lresult = null;

            do
            {
                if (aEncoderNode == null)
                {
                    break;
                }

                ISwitcherNodeFactory lSwitcherNodeFactory = null;

                if (!mStreamControl.createStreamControlNodeFactory(ref lSwitcherNodeFactory))
                {
                    break;
                }

                if (lSwitcherNodeFactory == null)
                {
                    break;
                }

                lSwitcherNodeFactory.createSwitcherNode(aEncoderNode, out lresult);
            } while (false);

            return(lresult);
        }
示例#2
0
        private object getSwitcher()
        {
            object lresult = null;

            do
            {
                object RenderNode = null;

                List <object> lRenderOutputNodesList = new List <object>();

                if (mEVRMultiSinkFactory != null)
                {
                    mEVRMultiSinkFactory.createOutputNodes(
                        IntPtr.Zero,
                        m_EVRDisplay.Surface.texture,
                        1,
                        out lRenderOutputNodesList);
                }

                if (lRenderOutputNodesList.Count == 1)
                {
                    RenderNode = lRenderOutputNodesList[0];
                }

                ISwitcherNodeFactory lSwitcherNodeFactory = null;

                if (!mStreamControl.createStreamControlNodeFactory(ref lSwitcherNodeFactory))
                {
                    break;
                }

                if (lSwitcherNodeFactory == null)
                {
                    break;
                }

                lSwitcherNodeFactory.createSwitcherNode(RenderNode, out lresult);
            } while (false);

            return(lresult);
        }