desc:TODO开关摄像头

main
xiaowusky 1 year ago
parent 32e82b0873
commit b531e9da31

@ -80,7 +80,8 @@ class HomeActivity : NoOptionsActivity() {
cameraSwitch.performClick()
}
cameraSwitch.setOnCheckedChangeListener { buttonView, isChecked ->
if (isChecked) RecordHelper.startRecording() else RecordHelper.stopRecording()
// if (isChecked) RecordHelper.startRecording() else RecordHelper.stopRecording()
if (isChecked) onCameraOpen() else onCameraClose()
}
itemSetting.post {
@ -99,34 +100,56 @@ class HomeActivity : NoOptionsActivity() {
}
}
private fun onCameraOpen() {
// 启动录制编码
RecordHelper.startRecording()
// TODO 开启GPIO
setForCamera()
}
private fun onCameraClose() {
// 暂停录制编码
RecordHelper.stopRecording()
// TODO 关闭GPIO
// 关闭视频播放
mClient?.stop()
mClient = null
AppData.setCameraData(false)
changeViewStatus()
}
private var lastUpdateTime = 0L
/**
* 设置摄像头
*/
private fun setForCamera() {
mClient?.stop()
mClient = EasyPlayerClient(
this@HomeActivity,
mBinding.surface,
null
) {
RecordHelper.onFrameAvailable(mBinding.surface, it)
val currentTimeMillis = System.currentTimeMillis()
if (currentTimeMillis - lastUpdateTime > 1000) {
lastUpdateTime = currentTimeMillis
if (!AppData.hasCameraData()) {
AppData.setCameraData(true)
changeViewStatus()
closeLoadingDialog()
if (mBinding.cameraSwitch.isChecked) {
mClient?.stop()
mClient = EasyPlayerClient(
this@HomeActivity,
mBinding.surface,
null
) {
RecordHelper.onFrameAvailable(mBinding.surface, it)
val currentTimeMillis = System.currentTimeMillis()
if (currentTimeMillis - lastUpdateTime > 1000) {
lastUpdateTime = currentTimeMillis
if (!AppData.hasCameraData()) {
AppData.setCameraData(true)
changeViewStatus()
closeLoadingDialog()
}
watchCamera(DELAY_TIME_CHECK_CAMERA)
}
watchCamera(DELAY_TIME_CHECK_CAMERA)
}
mClient?.play(CAMERA_URL)
// 第一次很慢所以10秒
watchCamera(DELAY_TIME_OPEN_CAMERA)
showLoadingDialog(R.string.connecting_camera)
}
mClient?.play(CAMERA_URL)
// 第一次很慢所以10秒
watchCamera(DELAY_TIME_OPEN_CAMERA)
showLoadingDialog(R.string.connecting_camera)
}
/**
@ -265,16 +288,6 @@ class HomeActivity : NoOptionsActivity() {
Process.killProcess(Process.myPid())
}
override fun onPause() {
super.onPause()
mClient?.pause()
}
override fun onResume() {
super.onResume()
mClient?.resume()
}
override fun onBackPressed() {
// super.onBackPressed()
}

@ -53,7 +53,10 @@ object LztekUtil {
fun setRtspUrl(str: String?) {
this.rtspUrl = str
rtspUrl?.let { PushHelper.setPushUrl(it) }
rtspUrl?.let {
PushHelper.setPushUrl(it)
PushHelper.startStream(true)
}
}
private fun getStorageCardPath(): String? {

Loading…
Cancel
Save