android.view.SurfaceHolder#Callback ( )源码实例Demo

下面列出了android.view.SurfaceHolder#Callback ( ) 实例代码,或者点击链接到github查看源代码,也可以在右侧发表评论。

private void setUpSurfaceHolder() {
    if (surfaceView != null) {
        surfaceHolderCallback = new SurfaceHolder.Callback() {
            @Override
            public void surfaceCreated(SurfaceHolder holder) {
                if (fullscreenVideoMediaPlayer != null) {
                    fullscreenVideoMediaPlayer.setDisplay(surfaceHolder);
                }
            }

            @Override
            public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
            }

            @Override
            public void surfaceDestroyed(SurfaceHolder holder) {
                if (fullscreenVideoMediaPlayer != null && isMediaPlayerPrepared) {
                    fullscreenVideoMediaPlayer.pause();
                }
            }
        };
        surfaceHolder = surfaceView.getHolder();
        surfaceHolder.addCallback(surfaceHolderCallback);
    }
}
 
源代码2 项目: android_9.0.0_r45   文件: WallpaperService.java
void reportSurfaceDestroyed() {
    if (mSurfaceCreated) {
        mSurfaceCreated = false;
        mSurfaceHolder.ungetCallbacks();
        SurfaceHolder.Callback callbacks[] = mSurfaceHolder.getCallbacks();
        if (callbacks != null) {
            for (SurfaceHolder.Callback c : callbacks) {
                c.surfaceDestroyed(mSurfaceHolder);
            }
        }
        if (DEBUG) Log.v(TAG, "onSurfaceDestroyed("
                + mSurfaceHolder + "): " + this);
        onSurfaceDestroyed(mSurfaceHolder);
    }
}
 
源代码3 项目: phoenix   文件: AutoFitSurfaceView.java
public AutoFitSurfaceView(@NonNull Context context, SurfaceHolder.Callback callback) {
    super(context);

    this.surfaceHolder = getHolder();

    this.surfaceHolder.addCallback(callback);
    this.surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
}
 
源代码4 项目: phoenix   文件: AutoFitSurfaceView.java
public AutoFitSurfaceView(@NonNull Context context, SurfaceHolder.Callback callback) {
    super(context);

    this.surfaceHolder = getHolder();

    this.surfaceHolder.addCallback(callback);
    this.surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
}
 
源代码5 项目: sandriosCamera   文件: Camera1Manager.java
@Override
public void openCamera(final Integer cameraId,
                       final CameraOpenListener<Integer, SurfaceHolder.Callback> cameraOpenListener) {
    this.currentCameraId = cameraId;
    backgroundHandler.post(new Runnable() {
        @Override
        public void run() {
            try {
                camera = Camera.open(cameraId);
                prepareCameraOutputs();
                if (cameraOpenListener != null) {
                    uiHandler.post(new Runnable() {
                        @Override
                        public void run() {
                            cameraOpenListener.onCameraOpened(cameraId, previewSize, currentInstance);
                        }
                    });
                }
            } catch (Exception error) {
                Log.d(TAG, "Can't open camera: " + error.getMessage());
                if (cameraOpenListener != null) {
                    uiHandler.post(new Runnable() {
                        @Override
                        public void run() {
                            cameraOpenListener.onCameraOpenError();
                        }
                    });
                }
            }
        }
    });
}
 
源代码6 项目: sandriosCamera   文件: AutoFitSurfaceView.java
public AutoFitSurfaceView(@NonNull Context context, SurfaceHolder.Callback callback) {
    super(context);

    this.surfaceHolder = getHolder();

    this.surfaceHolder.addCallback(callback);
    this.surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);
}
 
源代码7 项目: VideoMeeting   文件: VideoStream.java
public synchronized void setSurfaceView(SurfaceView view) {
        mSurfaceView = view;
        if (mSurfaceHolderCallback != null && mSurfaceView != null && mSurfaceView.getHolder() != null) {
            mSurfaceView.getHolder().removeCallback(mSurfaceHolderCallback);
        }
        if (mSurfaceView != null && mSurfaceView.getHolder() != null) {
            mSurfaceHolderCallback = new SurfaceHolder.Callback() {
                @Override
                public void surfaceDestroyed(SurfaceHolder holder) {
//                    mSurfaceReady = false;
                    stopPreview();
                    L.d("Surface destroyed !");
                }

                @Override
                public void surfaceCreated(SurfaceHolder holder) {
//                    mSurfaceReady = true;
                    createCamera(holder);
                    startPreview();
                }

                @Override
                public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
                    L.d("Surface Changed !");
                }
            };
            mSurfaceView.getHolder().addCallback(mSurfaceHolderCallback);
//            mSurfaceReady = true;
        }
    }
 
源代码8 项目: phoenix   文件: Camera1Lifecycle.java
@Override
public void onCameraOpened(Integer cameraId, Size previewSize, SurfaceHolder.Callback surfaceCallback) {
    mCameraView.updateUiForMediaAction(mCameraConfigProvider.getMediaAction());
    mCameraView.updateCameraPreview(previewSize, new AutoFitSurfaceView(mContext, surfaceCallback));
    mCameraView.updateCameraSwitcher(getNumberOfCameras());
}
 
源代码9 项目: phoenix   文件: Camera1Controller.java
@Override
public void onCameraOpened(Integer cameraId, Size previewSize, SurfaceHolder.Callback surfaceCallback) {
    cameraView.updateUiForMediaAction(configurationProvider.getMediaAction());
    cameraView.updateCameraPreview(previewSize, new AutoFitSurfaceView(context, surfaceCallback));
    cameraView.updateCameraSwitcher(getNumberOfCameras());
}
 
源代码10 项目: sandriosCamera   文件: Camera2ControllerAPI24.java
@Override
public void onCameraOpened(Integer openedCameraId, Size previewSize, SurfaceHolder.Callback surfaceTextureListener) {
    cameraView.updateUiForMediaAction(CameraConfiguration.MEDIA_ACTION_BOTH);
    cameraView.updateCameraPreview(previewSize, new AutoFitSurfaceView(cameraView.getActivity(), surfaceTextureListener));
    cameraView.updateCameraSwitcher(camera2Manager.getNumberOfCameras());
}
 
源代码11 项目: sandriosCamera   文件: Camera1Controller.java
@Override
public void onCameraOpened(Integer cameraId, Size previewSize, SurfaceHolder.Callback surfaceCallback) {
    cameraView.updateUiForMediaAction(configurationProvider.getMediaAction());
    cameraView.updateCameraPreview(previewSize, new AutoFitSurfaceView(cameraView.getActivity(), surfaceCallback));
    cameraView.updateCameraSwitcher(getNumberOfCameras());
}
 
源代码12 项目: octoandroid   文件: MjpegViewDefault.java
MjpegViewDefault(SurfaceView surfaceView, SurfaceHolder.Callback callback) {
    this.mSurfaceView = surfaceView;
    this.mSurfaceHolderCallback = callback;
    init();
}
 
源代码13 项目: PTVGlass   文件: ChronometerDrawerTest.java
@Override
public void addCallback(SurfaceHolder.Callback callback) {
    // Nothing to do here.
}
 
源代码14 项目: PTVGlass   文件: ChronometerDrawerTest.java
@Override
public void removeCallback(SurfaceHolder.Callback callback) {
    // Nothing to do here.
}
 
源代码15 项目: PTVGlass   文件: TimerDrawerTest.java
@Override
public void addCallback(SurfaceHolder.Callback callback) {
    // Nothing to do here.
}
 
源代码16 项目: PTVGlass   文件: TimerDrawerTest.java
@Override
public void removeCallback(SurfaceHolder.Callback callback) {
    // Nothing to do here.
}
 
源代码17 项目: gdk-timer-sample   文件: TimerDrawerTest.java
@Override
public void addCallback(SurfaceHolder.Callback callback) {
    // Nothing to do here.
}
 
源代码18 项目: gdk-timer-sample   文件: TimerDrawerTest.java
@Override
public void removeCallback(SurfaceHolder.Callback callback) {
    // Nothing to do here.
}