晚安
有人知道一种创建表面纹理的方法,就好像它是可以通过使用getSurfaceTexture()方法的TextureView获得的表面纹理一样
mTextureView.getSurfaceTexture()
我正在尝试使代码在没有预览的情况下使用Api camera2录制(仅使用按钮),但是使用我创建的surfaceTexture而不使用Textureview录制的视频通常效果很好,大约5倍秒,然后视频的其余时间就是该冻结帧。 (我使用的mPreview尺寸是通过google示例的selectOptimalSize()获得的,其中手机屏幕的尺寸用作宽度和高度)
SurfaceTexture texture = new SurfaceTexture(0);
texture.setDefaultBufferSize(mPreviewSize.getWidth(),mPreviewSize.getHeight());
mPreviewBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_RECORD);
List<Surface> surfaces = new ArrayList<>();
Surface previewSurface = new Surface(texture);
surfaces.add(previewSurface);
mPreviewBuilder.addTarget(previewSurface);
// Set up Surface for the MediaRecorder
Surface recorderSurface = mMediaRecorder.getSurface();
surfaces.add(recorderSurface);
mPreviewBuilder.addTarget(recorderSurface);