/// @endcond

        public static void Initialize()
        {
            if (isInitiate)
            {
                return;
            }
            NRDebugger.Log("[NRRgbCamera] Initialize");
            m_NativeCamera = new NativeCamera();
#if !UNITY_EDITOR
            m_NativeCamera.Create();
            m_NativeCamera.SetCaptureCallback(Capture);
#endif
            if (FramePool == null)
            {
                FramePool           = new ObjectPool();
                FramePool.InitCount = 10;
            }
            if (m_RGBFrames == null)
            {
                m_RGBFrames       = new FixedSizedQueue(FramePool);
                m_RGBFrames.Limit = 5;
            }

            m_ActiveTextures = new List <NRRGBCamTexture>();

            isInitiate = true;
            SetImageFormat(CameraImageFormat.RGB_888);
        }
        /// @endcond

        public static void Initialize()
        {
            if (CurrentState != CaptureState.UnInitialized)
            {
                return;
            }

            NRDebug.Log("[NRRgbCamera] Initialize");
            m_NativeCamera = new NativeCamera();
#if !UNITY_EDITOR
            m_NativeCamera.Create();
            m_NativeCamera.SetCaptureCallback(Capture);
#endif
            CurrentState = CaptureState.Initialized;
        }