Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
A
arcIntergration
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
马乐
arcIntergration
Commits
e4b07a73
Commit
e4b07a73
authored
Oct 17, 2023
by
马乐
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
1.修复截取视频只能截取一次问题
parent
2a27202f
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
3 changed files
with
148 additions
and
46 deletions
+148
-46
MainActivity.kt
app/src/main/java/com/intergration/test/MainActivity.kt
+54
-38
dms.kt
app/src/main/java/com/intergration/test/dms/dms.kt
+94
-7
Utils.kt
app/src/main/java/com/intergration/test/utils/Utils.kt
+0
-1
No files found.
app/src/main/java/com/intergration/test/MainActivity.kt
View file @
e4b07a73
This diff is collapsed.
Click to expand it.
app/src/main/java/com/intergration/test/dms/dms.kt
View file @
e4b07a73
...
@@ -73,7 +73,8 @@ fun ArcVisDriveEngine.initializeDms():Int{
...
@@ -73,7 +73,8 @@ fun ArcVisDriveEngine.initializeDms():Int{
ArcDMSDetectMaskType
.
MOD_DMS_CLOSE_EYE
or
ArcDMSDetectMaskType
.
MOD_DMS_CLOSE_EYE
or
ArcDMSDetectMaskType
.
MOD_DMS_YAWN
or
ArcDMSDetectMaskType
.
MOD_DMS_YAWN
or
ArcDMSDetectMaskType
.
MOD_DMS_DISTRACT
or
ArcDMSDetectMaskType
.
MOD_DMS_DISTRACT
or
ArcDMSDetectMaskType
.
MOD_DMS_DRIVER_ABNORMAL
ArcDMSDetectMaskType
.
MOD_DMS_DRIVER_ABNORMAL
or
ArcDMSDetectMaskType
.
MOD_DMS_LENS_COVERED
}
}
val
initParamDetail
=
ArcInitParamInfoDetail
()
val
initParamDetail
=
ArcInitParamInfoDetail
()
initParamDetail
.
modType
=
ArcModType
.
TYPE_DMS
initParamDetail
.
modType
=
ArcModType
.
TYPE_DMS
...
@@ -83,20 +84,106 @@ fun ArcVisDriveEngine.initializeDms():Int{
...
@@ -83,20 +84,106 @@ fun ArcVisDriveEngine.initializeDms():Int{
return
init
(
arcInfoParam
)
return
init
(
arcInfoParam
)
}
}
fun
ArcVisDriveEngine
.
setDmsAlarmParams
(
interval
:
Int
=
4
,
speedThreshold
:
Int
=
33
){
/**
* 打电话参数设置
*
* */
fun
ArcVisDriveEngine
.
setDmsAlarmCallParams
(
interval
:
Int
=
30
,
speedThreshold
:
Int
=
33
){
val
dmsAlarmParam
=
ArcDMSAlarmParam
()
val
dmsAlarmParam
=
ArcDMSAlarmParam
()
val
result
=
getDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_CALL
,
dmsAlarmParam
)
val
result
=
getDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_CALL
,
dmsAlarmParam
)
if
(
result
==
ArcErrorInfo
.
ARC_ERROR_OK
)
{
if
(
result
==
ArcErrorInfo
.
ARC_ERROR_OK
)
{
dmsAlarmParam
.
sensitivityLevel
=
ArcAlarmSensitivityLevel
.
ALARM_SENSITIVITY_MEDIUM
dmsAlarmParam
.
sensitivityLevel
=
ArcAlarmSensitivityLevel
.
ALARM_SENSITIVITY_MEDIUM
/**
* 以下设置参数仅供测试使用,实际使用请根据真实环境设置
*/
dmsAlarmParam
.
arcAlarmParam
.
interval
=
interval
dmsAlarmParam
.
arcAlarmParam
.
interval
=
interval
dmsAlarmParam
.
arcAlarmParam
.
speedThreshold
=
speedThreshold
dmsAlarmParam
.
arcAlarmParam
.
speedThreshold
=
speedThreshold
setDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_CALL
,
dmsAlarmParam
)
}
}
/**
* 抽烟参数设置
*
* */
fun
ArcVisDriveEngine
.
setDmsAlarmSmokeParams
(
interval
:
Int
=
30
,
speedThreshold
:
Int
=
33
){
val
dmsAlarmParam
=
ArcDMSAlarmParam
()
val
result
=
getDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_SMOKE
,
dmsAlarmParam
)
if
(
result
==
ArcErrorInfo
.
ARC_ERROR_OK
)
{
dmsAlarmParam
.
sensitivityLevel
=
ArcAlarmSensitivityLevel
.
ALARM_SENSITIVITY_MEDIUM
dmsAlarmParam
.
arcAlarmParam
.
interval
=
interval
dmsAlarmParam
.
arcAlarmParam
.
speedThreshold
=
speedThreshold
setDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_SMOKE
,
dmsAlarmParam
)
}
}
/**
* 闭眼睛参数设置
*
* */
fun
ArcVisDriveEngine
.
setDmsAlarmCloseEyeParams
(
interval
:
Int
=
30
,
speedThreshold
:
Int
=
33
){
val
dmsAlarmParam
=
ArcDMSAlarmParam
()
val
result
=
getDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_CLOSE_EYE
,
dmsAlarmParam
)
if
(
result
==
ArcErrorInfo
.
ARC_ERROR_OK
)
{
dmsAlarmParam
.
sensitivityLevel
=
ArcAlarmSensitivityLevel
.
ALARM_SENSITIVITY_MEDIUM
dmsAlarmParam
.
arcAlarmParam
.
interval
=
interval
dmsAlarmParam
.
arcAlarmParam
.
speedThreshold
=
speedThreshold
setDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_CLOSE_EYE
,
dmsAlarmParam
)
}
}
/**
* 打哈欠参数设置
*
* */
fun
ArcVisDriveEngine
.
setDmsAlarmYawnParams
(
interval
:
Int
=
30
,
speedThreshold
:
Int
=
33
){
val
dmsAlarmParam
=
ArcDMSAlarmParam
()
val
result
=
getDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_YAWN
,
dmsAlarmParam
)
if
(
result
==
ArcErrorInfo
.
ARC_ERROR_OK
)
{
dmsAlarmParam
.
sensitivityLevel
=
ArcAlarmSensitivityLevel
.
ALARM_SENSITIVITY_MEDIUM
dmsAlarmParam
.
arcAlarmParam
.
interval
=
interval
dmsAlarmParam
.
arcAlarmParam
.
speedThreshold
=
speedThreshold
setDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_YAWN
,
dmsAlarmParam
)
}
}
/**
* 分神参数设置
*
* */
fun
ArcVisDriveEngine
.
setDmsAlarmDistractParams
(
interval
:
Int
=
30
,
speedThreshold
:
Int
=
33
){
val
dmsAlarmParam
=
ArcDMSAlarmParam
()
val
result
=
getDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_DISTRACT
,
dmsAlarmParam
)
if
(
result
==
ArcErrorInfo
.
ARC_ERROR_OK
)
{
dmsAlarmParam
.
sensitivityLevel
=
ArcAlarmSensitivityLevel
.
ALARM_SENSITIVITY_MEDIUM
dmsAlarmParam
.
arcAlarmParam
.
interval
=
interval
dmsAlarmParam
.
arcAlarmParam
.
speedThreshold
=
speedThreshold
setDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_DISTRACT
,
dmsAlarmParam
)
}
}
/**
* 驾驶员异常参数设置
*
* */
fun
ArcVisDriveEngine
.
setDmsAlarmDriverAbnormalParams
(
interval
:
Int
=
120
,
speedThreshold
:
Int
=
33
){
val
dmsAlarmParam
=
ArcDMSAlarmParam
()
val
result
=
getDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_DRIVER_ABNORMAL
,
dmsAlarmParam
)
if
(
result
==
ArcErrorInfo
.
ARC_ERROR_OK
)
{
dmsAlarmParam
.
sensitivityLevel
=
ArcAlarmSensitivityLevel
.
ALARM_SENSITIVITY_LOW
dmsAlarmParam
.
arcAlarmParam
.
interval
=
interval
dmsAlarmParam
.
arcAlarmParam
.
speedThreshold
=
speedThreshold
setDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_DRIVER_ABNORMAL
,
dmsAlarmParam
)
}
}
/**
* 遮挡镜头参数设置
*
* */
fun
ArcVisDriveEngine
.
setDmsAlarmLensCoveredParams
(
interval
:
Int
=
60
,
speedThreshold
:
Int
=
33
){
val
dmsAlarmParam
=
ArcDMSAlarmParam
()
val
result
=
getDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_LENS_COVERED
,
dmsAlarmParam
)
if
(
result
==
ArcErrorInfo
.
ARC_ERROR_OK
)
{
dmsAlarmParam
.
sensitivityLevel
=
ArcAlarmSensitivityLevel
.
ALARM_SENSITIVITY_LOW
dmsAlarmParam
.
arcAlarmParam
.
interval
=
interval
dmsAlarmParam
.
arcAlarmParam
.
speedThreshold
=
speedThreshold
setDMSAlarmParam
(
ArcDMSAlarmType
.
ALARM_DMS_LENS_COVERED
,
dmsAlarmParam
)
}
}
}
}
fun
ArcVisDriveEngine
.
setDmsDistractScope
(
leftYaw
:
Int
=
-
20
,
rightYaw
:
Int
=
2
0
,
upPitch
:
Int
=
20
,
downPitch
:
Int
=
-
20
):
Int
{
fun
ArcVisDriveEngine
.
setDmsDistractScope
(
leftYaw
:
Int
=
-
30
,
rightYaw
:
Int
=
3
0
,
upPitch
:
Int
=
20
,
downPitch
:
Int
=
-
20
):
Int
{
val
dmsScope
=
ArcDMSDistractScope
()
val
dmsScope
=
ArcDMSDistractScope
()
var
result
=
getDMSDistractScopeParam
(
dmsScope
)
var
result
=
getDMSDistractScopeParam
(
dmsScope
)
return
if
(
result
==
ArcErrorInfo
.
ARC_ERROR_OK
)
{
return
if
(
result
==
ArcErrorInfo
.
ARC_ERROR_OK
)
{
...
@@ -182,7 +269,7 @@ fun SpmCameraDevice.startDms(engin:ArcVisDriveEngine) = callbackFlow{
...
@@ -182,7 +269,7 @@ fun SpmCameraDevice.startDms(engin:ArcVisDriveEngine) = callbackFlow{
}
}
startPictureSequence
(
PictureSequenceSource
.
GENERAL_CAMERA
,
pictureConfig
)
startPictureSequence
(
PictureSequenceSource
.
GENERAL_CAMERA
,
pictureConfig
)
awaitClose
{
awaitClose
{
LogUtils
.
dTag
(
"dms"
,
"dms detect ended"
)
LogUtils
.
e
(
"dms"
,
"dms detect ended"
)
stopPictureSequence
(
PictureSequenceSource
.
GENERAL_CAMERA
)
stopPictureSequence
(
PictureSequenceSource
.
GENERAL_CAMERA
)
engin
.
unInit
()
engin
.
unInit
()
}
}
...
...
app/src/main/java/com/intergration/test/utils/Utils.kt
View file @
e4b07a73
...
@@ -16,7 +16,6 @@ const val TTS_ENGINE = "com.iflytek.speechcloud"
...
@@ -16,7 +16,6 @@ const val TTS_ENGINE = "com.iflytek.speechcloud"
const
val
VIDEO_FOLDER
=
"sdcard/waytous/alarm/"
const
val
VIDEO_FOLDER
=
"sdcard/waytous/alarm/"
fun
SpmCameraDevice
.
recordVideo
(
prefix
:
String
){
fun
SpmCameraDevice
.
recordVideo
(
prefix
:
String
){
val
recordConfiguration
=
RecordConfiguration
.
get
(
RecordSource
.
GENERAL_CAMERA
).
apply
{
val
recordConfiguration
=
RecordConfiguration
.
get
(
RecordSource
.
GENERAL_CAMERA
).
apply
{
mLockFileNamePrefix
=
prefix
mLockFileNamePrefix
=
prefix
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment