//JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
            //ORIGINAL LINE: public void addRenderCallback(@NonNull IRenderCallback callback)
            public void addRenderCallback(IRenderView_IRenderCallback callback)
            {
                mRenderCallbackMap[callback] = callback;

                IRenderView_ISurfaceHolder surfaceHolder = null;

                if (mSurfaceTexture != null)
                {
                    if (surfaceHolder == null)
                    {
                        TextureRenderView texture = null;
                        mWeakRenderView.TryGetTarget(out texture);
                        surfaceHolder = new InternalSurfaceHolder(texture, mSurfaceTexture, this);
                    }
                    callback.onSurfaceCreated(surfaceHolder, mWidth, mHeight);
                }

                if (mIsFormatChanged)
                {
                    if (surfaceHolder == null)
                    {
                        TextureRenderView texture = null;
                        mWeakRenderView.TryGetTarget(out texture);
                        surfaceHolder = new InternalSurfaceHolder(texture, mSurfaceTexture, this);
                    }
                    callback.onSurfaceChanged(surfaceHolder, 0, mWidth, mHeight);
                }
            }
Example #2
0
            //JAVA TO C# CONVERTER TODO TASK: Most Java annotations will not have direct .NET equivalent attributes:
            //ORIGINAL LINE: public void addRenderCallback(@NonNull IRenderCallback callback)
            public void AddRenderCallback(IRenderView_IRenderCallback callback)
            {
                mRenderCallbackMap[callback] = callback;

                IRenderView_ISurfaceHolder surfaceHolder = null;

                if (mSurfaceHolder != null)
                {
                    if (surfaceHolder == null)
                    {
                        SurfaceRenderView t = null;
                        mWeakSurfaceView.TryGetTarget(out t);
                        surfaceHolder = new InternalSurfaceHolder(t, mSurfaceHolder);
                    }
                    callback.onSurfaceCreated(surfaceHolder, mWidth, mHeight);
                }

                if (mIsFormatChanged)
                {
                    if (surfaceHolder == null)
                    {
                        SurfaceRenderView t = null;
                        mWeakSurfaceView.TryGetTarget(out t);
                        surfaceHolder = new InternalSurfaceHolder(t, mSurfaceHolder);
                    }
                    callback.onSurfaceChanged(surfaceHolder, mFormat, mWidth, mHeight);
                }
            }
            public void OnSurfaceTextureSizeChanged(SurfaceTexture surface, int width, int height)
            {
                mSurfaceTexture  = surface;
                mIsFormatChanged = true;
                mWidth           = width;
                mHeight          = height;
                TextureRenderView texture = null;

                mWeakRenderView.TryGetTarget(out texture);
                IRenderView_ISurfaceHolder surfaceHolder = new InternalSurfaceHolder(texture, surface, this);

                foreach (IRenderView_IRenderCallback renderCallback in mRenderCallbackMap.Keys)
                {
                    renderCallback.onSurfaceChanged(surfaceHolder, 0, width, height);
                }
            }
            public void OnSurfaceTextureAvailable(SurfaceTexture surface, int width, int height)
            {
                mSurfaceTexture  = surface;
                mIsFormatChanged = false;
                mWidth           = 0;
                mHeight          = 0;
                TextureRenderView texture = null;

                mWeakRenderView.TryGetTarget(out texture);
                IRenderView_ISurfaceHolder surfaceHolder = new InternalSurfaceHolder(texture, surface, this);

                foreach (IRenderView_IRenderCallback renderCallback in mRenderCallbackMap.Keys)
                {
                    renderCallback.onSurfaceCreated(surfaceHolder, 0, 0);
                }
            }
Example #5
0
            public void SurfaceDestroyed(ISurfaceHolder holder)
            {
                mSurfaceHolder   = null;
                mIsFormatChanged = false;
                mFormat          = 0;
                mWidth           = 0;
                mHeight          = 0;
                SurfaceRenderView t = null;

                mWeakSurfaceView.TryGetTarget(out t);
                IRenderView_ISurfaceHolder surfaceHolder = new InternalSurfaceHolder(t, mSurfaceHolder);

                foreach (IRenderView_IRenderCallback renderCallback in mRenderCallbackMap.Keys)
                {
                    renderCallback.onSurfaceDestroyed(surfaceHolder);
                }
            }
            public bool OnSurfaceTextureDestroyed(SurfaceTexture surface)
            {
                mSurfaceTexture  = surface;
                mIsFormatChanged = false;
                mWidth           = 0;
                mHeight          = 0;
                TextureRenderView texture = null;

                mWeakRenderView.TryGetTarget(out texture);
                IRenderView_ISurfaceHolder surfaceHolder = new InternalSurfaceHolder(texture, surface, this);

                foreach (IRenderView_IRenderCallback renderCallback in mRenderCallbackMap.Keys)
                {
                    renderCallback.onSurfaceDestroyed(surfaceHolder);
                }

                Log.Debug(TAG, "onSurfaceTextureDestroyed: destroy: " + mOwnSurfaceTexture);
                return(mOwnSurfaceTexture);
            }
Example #7
0
            public void SurfaceChanged(ISurfaceHolder holder, [GeneratedEnum] Format format, int width, int height)
            {
                mSurfaceHolder   = holder;
                mIsFormatChanged = true;
                mFormat          = (int)format;
                mWidth           = width;
                mHeight          = height;

                // mMeasureHelper.setVideoSize(width, height);
                SurfaceRenderView t = null;

                mWeakSurfaceView.TryGetTarget(out t);
                IRenderView_ISurfaceHolder surfaceHolder = new InternalSurfaceHolder(t, mSurfaceHolder);

                foreach (IRenderView_IRenderCallback renderCallback in mRenderCallbackMap.Keys)
                {
                    renderCallback.onSurfaceChanged(surfaceHolder, (int)format, width, height);
                }
            }