问题描述
我想为 kotlin 制作 Objectron 但出现此错误 -> Logcat img
这就是我运行相机的方式:
override fun onResume() {
super.onResume()
converter = ExternalTextureConverter(eglManager!!.context)
converter!!.setFlipY(FLIP_FRAMES_VERTICALLY)
converter!!.setConsumer(processor)
if (PermissionHelper.cameraPermissionsGranted(this)) {
startCamera()
}
}
private fun startCamera() {
cameraHelper = CameraXPreviewHelper()
cameraHelper!!.setonCameraStartedListener { surfaceTexture: SurfaceTexture? ->
previewFrameTexture = surfaceTexture
// Make the display view visible to start showing the preview. This triggers the
// SurfaceHolder.Callback added to (the holder of) previewdisplayView.
previewdisplayView!!.visibility = View.VISIBLE
}
cameraHelper!!.startCamera(this,CAMERA_FACING,/*surfaceTexture=*/null)
}
这是用于查看相机:
private fun setupPreviewdisplayView() {
previewdisplayView!!.visibility = View.GONE
val viewGroup = findViewById<ViewGroup>(R.id.preview_display_layout)
viewGroup.addView(previewdisplayView)
previewdisplayView!!
.holder
.addCallback(
object : SurfaceHolder.Callback {
override fun surfaceCreated(holder: SurfaceHolder) {
processor!!.videoSurfaceOutput.setSurface(holder.surface)
}
override fun surfaceChanged(
holder: SurfaceHolder,format: Int,width: Int,height: Int
) {
val viewSize = Size(width,height)
val displaySize =
cameraHelper!!.computedisplaySizefromViewSize(viewSize)
converter!!.setSurfaceTextureAndAttachToGLContext(
previewFrameTexture,displaySize.width,displaySize.height
)
}
override fun surfaceDestroyed(holder: SurfaceHolder) {
processor!!.videoSurfaceOutput.setSurface(null)
}
})
}
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)