rtsp切换修改
This commit is contained in:
parent
1ee8a7f916
commit
480c546506
|
|
@ -2,28 +2,28 @@ C/C++ Structured Logx
|
||||||
v
|
v
|
||||||
tC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\additional_project_files.txtC
|
tC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\additional_project_files.txtC
|
||||||
A
|
A
|
||||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint Ï»€ÃÉ3 òÐæ›Á3u
|
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ¼èƶË3 òÐæ›Á3u
|
||||||
s
|
s
|
||||||
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\android_gradle_build.json Ï»€ÃÉ3¶
|
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\android_gradle_build.json ¼èƶË3¶
|
||||||
þÐæ›Á3z
|
þÐæ›Á3z
|
||||||
x
|
x
|
||||||
vC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\android_gradle_build_mini.json л€ÃÉ3® §Ñæ›Á3g
|
vC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\android_gradle_build_mini.json ¼èƶË3® §Ñæ›Á3g
|
||||||
e
|
e
|
||||||
cC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build.ninja л€ÃÉ3ìÅ ÍÏæ›Á3k
|
cC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build.ninja ¼èƶË3ìÅ ÍÏæ›Á3k
|
||||||
i
|
i
|
||||||
gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build.ninja.txt л€ÃÉ3p
|
gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build.ninja.txt ¼èƶË3p
|
||||||
n
|
n
|
||||||
lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build_file_index.txt л€ÃÉ3
V ®Ñæ›Á3q
|
lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\build_file_index.txt ¼èƶË3
V ®Ñæ›Á3q
|
||||||
o
|
o
|
||||||
mC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\compile_commands.json л€ÃÉ3µ ÉÏæ›Á3u
|
mC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\compile_commands.json ¼èƶË3µ ÉÏæ›Á3u
|
||||||
s
|
s
|
||||||
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\compile_commands.json.bin л€ÃÉ3 ñ ÉÏæ›Á3{
|
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\compile_commands.json.bin ¼èƶË3 ñ ÉÏæ›Á3{
|
||||||
y
|
y
|
||||||
wC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\metadata_generation_command.txt л€ÃÉ3
|
wC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\metadata_generation_command.txt ¼èƶË3
|
||||||
° ªÑæ›Á3n
|
° ªÑæ›Á3n
|
||||||
l
|
l
|
||||||
jC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\prefab_config.json л€ÃÉ3
( ¬Ñæ›Á3s
|
jC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\prefab_config.json ¼èƶË3
( ¬Ñæ›Á3s
|
||||||
q
|
q
|
||||||
oC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\symbol_folder_index.txt л€ÃÉ3
n Ñæ›Á3Z
|
oC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\arm64-v8a\symbol_folder_index.txt ¼èƶË3
n Ñæ›Á3Z
|
||||||
X
|
X
|
||||||
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt л€ÃÉ3
¨ ÃÖ<C383>˜Á3
|
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt ¼èƶË3
¨ ÃÖ<C383>˜Á3
|
||||||
|
|
@ -2,28 +2,28 @@ C/C++ Structured Logz
|
||||||
x
|
x
|
||||||
vC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\additional_project_files.txtC
|
vC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\additional_project_files.txtC
|
||||||
A
|
A
|
||||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ñЂœÉ3 ‰×©œÁ3w
|
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint <EFBFBD>鯶Ë3 ‰×©œÁ3w
|
||||||
u
|
u
|
||||||
sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\android_gradle_build.json ñЂœÉ3¾
|
sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\android_gradle_build.json <EFBFBD>鯶Ë3¾
|
||||||
‹×©œÁ3|
|
‹×©œÁ3|
|
||||||
z
|
z
|
||||||
xC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\android_gradle_build_mini.json ñЂœÉ3¶ “שœÁ3i
|
xC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\android_gradle_build_mini.json <EFBFBD>鯶Ë3¶ “שœÁ3i
|
||||||
g
|
g
|
||||||
eC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build.ninja ñЂœÉ3¤Æ ÑÖ©œÁ3m
|
eC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build.ninja <EFBFBD>鯶Ë3¤Æ ÑÖ©œÁ3m
|
||||||
k
|
k
|
||||||
iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build.ninja.txt ñЂœÉ3r
|
iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build.ninja.txt <EFBFBD>鯶Ë3r
|
||||||
p
|
p
|
||||||
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build_file_index.txt ñЂœÉ3
V –שœÁ3s
|
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\build_file_index.txt <EFBFBD>鯶Ë3
V –שœÁ3s
|
||||||
q
|
q
|
||||||
oC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\compile_commands.json ñЂœÉ3Ð ÎÖ©œÁ3w
|
oC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\compile_commands.json <EFBFBD>鯶Ë3Ð ÎÖ©œÁ3w
|
||||||
u
|
u
|
||||||
sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\compile_commands.json.bin ñЂœÉ3 š ÎÖ©œÁ3}
|
sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\compile_commands.json.bin <EFBFBD>鯶Ë3 š ÎÖ©œÁ3}
|
||||||
{
|
{
|
||||||
yC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\metadata_generation_command.txt ñЂœÉ3
|
yC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\metadata_generation_command.txt <EFBFBD>鯶Ë3
|
||||||
º ”שœÁ3p
|
º ”שœÁ3p
|
||||||
n
|
n
|
||||||
lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\prefab_config.json ñЂœÉ3
( •שœÁ3u
|
lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\prefab_config.json <EFBFBD>鯶Ë3
( •שœÁ3u
|
||||||
s
|
s
|
||||||
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\symbol_folder_index.txt òЂœÉ3
p •שœÁ3Z
|
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\armeabi-v7a\symbol_folder_index.txt <EFBFBD>鯶Ë3
p •שœÁ3Z
|
||||||
X
|
X
|
||||||
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt òЂœÉ3
¨ ÃÖ<C383>˜Á3
|
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt <EFBFBD>鯶Ë3
¨ ÃÖ<C383>˜Á3
|
||||||
|
|
@ -2,28 +2,28 @@ C/C++ Structured Logr
|
||||||
p
|
p
|
||||||
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\additional_project_files.txtC
|
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\additional_project_files.txtC
|
||||||
A
|
A
|
||||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ®Ò‚œÉ3 ÑùÊ›Á3o
|
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint —êÆ¶Ë3 ÑùÊ›Á3o
|
||||||
m
|
m
|
||||||
kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\android_gradle_build.json ®Ò‚œÉ3ž
|
kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\android_gradle_build.json —êÆ¶Ë3ž
|
||||||
×ùÊ›Á3t
|
×ùÊ›Á3t
|
||||||
r
|
r
|
||||||
pC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\android_gradle_build_mini.json ®Ò‚œÉ3– ñùÊ›Á3a
|
pC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\android_gradle_build_mini.json —êÆ¶Ë3– ñùÊ›Á3a
|
||||||
_
|
_
|
||||||
]C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build.ninja ¯Ò‚œÉ3ÎÅ æøÊ›Á3e
|
]C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build.ninja —êÆ¶Ë3ÎÅ æøÊ›Á3e
|
||||||
c
|
c
|
||||||
aC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build.ninja.txt ¯Ò‚œÉ3j
|
aC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build.ninja.txt —êÆ¶Ë3j
|
||||||
h
|
h
|
||||||
fC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build_file_index.txt ¯Ò‚œÉ3
V öùÊ›Á3k
|
fC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\build_file_index.txt —êÆ¶Ë3
V öùÊ›Á3k
|
||||||
i
|
i
|
||||||
gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json ¯Ò‚œÉ3¬ áøÊ›Á3o
|
gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json —êÆ¶Ë3¬ áøÊ›Á3o
|
||||||
m
|
m
|
||||||
kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json.bin ¯Ò‚œÉ3 è áøÊ›Á3u
|
kC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\compile_commands.json.bin —êÆ¶Ë3 è áøÊ›Á3u
|
||||||
s
|
s
|
||||||
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\metadata_generation_command.txt ¯Ò‚œÉ3
|
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\metadata_generation_command.txt —êÆ¶Ë3
|
||||||
’ óùÊ›Á3h
|
’ óùÊ›Á3h
|
||||||
f
|
f
|
||||||
dC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\prefab_config.json ¯Ò‚œÉ3
( ôùÊ›Á3m
|
dC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\prefab_config.json —êÆ¶Ë3
( ôùÊ›Á3m
|
||||||
k
|
k
|
||||||
iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\symbol_folder_index.txt ¯Ò‚œÉ3
h öùÊ›Á3Z
|
iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86\symbol_folder_index.txt —êÆ¶Ë3
h öùÊ›Á3Z
|
||||||
X
|
X
|
||||||
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt ¯Ò‚œÉ3
¨ ÃÖ<C383>˜Á3
|
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt —êÆ¶Ë3
¨ ÃÖ<C383>˜Á3
|
||||||
|
|
@ -2,28 +2,28 @@ C/C++ Structured Logu
|
||||||
s
|
s
|
||||||
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\additional_project_files.txtC
|
qC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\additional_project_files.txtC
|
||||||
A
|
A
|
||||||
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ÚÓ‚œÉ3 ‹å©œÁ3r
|
?com.android.build.gradle.internal.cxx.io.EncodedFileFingerPrint ”ëÆ¶Ë3 ‹å©œÁ3r
|
||||||
p
|
p
|
||||||
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\android_gradle_build.json ÛÓ‚œÉ3ª
|
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\android_gradle_build.json ”ëÆ¶Ë3ª
|
||||||
<20>婜Á3w
|
<20>婜Á3w
|
||||||
u
|
u
|
||||||
sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\android_gradle_build_mini.json ÛÓ‚œÉ3¢ •婜Á3d
|
sC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\android_gradle_build_mini.json ”ëÆ¶Ë3¢ •婜Á3d
|
||||||
b
|
b
|
||||||
`C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build.ninja ÛÓ‚œÉ3ÝÅ ×䩜Á3h
|
`C:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build.ninja ”ëÆ¶Ë3ÝÅ ×䩜Á3h
|
||||||
f
|
f
|
||||||
dC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build.ninja.txt ÛÓ‚œÉ3m
|
dC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build.ninja.txt ”ëÆ¶Ë3m
|
||||||
k
|
k
|
||||||
iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build_file_index.txt ÛÓ‚œÉ3
V —婜Á3n
|
iC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\build_file_index.txt ”ëÆ¶Ë3
V —婜Á3n
|
||||||
l
|
l
|
||||||
jC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\compile_commands.json ÛÓ‚œÉ3± Ó䩜Á3r
|
jC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\compile_commands.json ”ëÆ¶Ë3± Ó䩜Á3r
|
||||||
p
|
p
|
||||||
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\compile_commands.json.bin ÛÓ‚œÉ3 í Ó䩜Á3x
|
nC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\compile_commands.json.bin ”ëÆ¶Ë3 í Ó䩜Á3x
|
||||||
v
|
v
|
||||||
tC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\metadata_generation_command.txt ÛÓ‚œÉ3
|
tC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\metadata_generation_command.txt •ëÆ¶Ë3
|
||||||
¡ •婜Á3k
|
¡ •婜Á3k
|
||||||
i
|
i
|
||||||
gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\prefab_config.json ÛÓ‚œÉ3
( –婜Á3p
|
gC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\prefab_config.json •ëÆ¶Ë3
( –婜Á3p
|
||||||
n
|
n
|
||||||
lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\symbol_folder_index.txt ÛÓ‚œÉ3
k —婜Á3Z
|
lC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\.cxx\Debug\p1g6s634\x86_64\symbol_folder_index.txt •ëÆ¶Ë3
k —婜Á3Z
|
||||||
X
|
X
|
||||||
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt ÛÓ‚œÉ3
¨ ÃÖ<C383>˜Á3
|
VC:\Users\24171\OneDrive\Desktop\msdk\400apiqwq\ams\Opencv\libcxx_helper\CMakeLists.txt •ëÆ¶Ë3
¨ ÃÖ<C383>˜Á3
|
||||||
|
|
@ -25,7 +25,10 @@
|
||||||
"variantName": "debug",
|
"variantName": "debug",
|
||||||
"isDebuggableEnabled": true,
|
"isDebuggableEnabled": true,
|
||||||
"validAbiList": [
|
"validAbiList": [
|
||||||
"ARM64_V8A"
|
"ARMEABI_V7A",
|
||||||
|
"ARM64_V8A",
|
||||||
|
"X86",
|
||||||
|
"X86_64"
|
||||||
],
|
],
|
||||||
"buildTargetSet": [
|
"buildTargetSet": [
|
||||||
"opencv_jni_shared"
|
"opencv_jni_shared"
|
||||||
|
|
@ -132,7 +135,6 @@
|
||||||
"rootBuildGradleFolder": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams",
|
"rootBuildGradleFolder": "C:\\Users\\24171\\OneDrive\\Desktop\\msdk\\400apiqwq\\ams",
|
||||||
"sdkFolder": "D:\\androidstudio\\sdk",
|
"sdkFolder": "D:\\androidstudio\\sdk",
|
||||||
"isBuildOnlyTargetAbiEnabled": true,
|
"isBuildOnlyTargetAbiEnabled": true,
|
||||||
"ideBuildTargetAbi": "arm64-v8a,armeabi-v7a,armeabi",
|
|
||||||
"isCmakeBuildCohabitationEnabled": false,
|
"isCmakeBuildCohabitationEnabled": false,
|
||||||
"isPrefabEnabled": false
|
"isPrefabEnabled": false
|
||||||
},
|
},
|
||||||
|
|
|
||||||
|
|
@ -4,3 +4,6 @@ generate_cxx_metadata
|
||||||
[gap of 15ms]
|
[gap of 15ms]
|
||||||
generate_cxx_metadata completed in 29ms
|
generate_cxx_metadata completed in 29ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata 14ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -19,3 +19,10 @@ generate_cxx_metadata
|
||||||
[gap of 37ms]
|
[gap of 37ms]
|
||||||
generate_cxx_metadata completed in 118ms
|
generate_cxx_metadata completed in 118ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata
|
||||||
|
[gap of 19ms]
|
||||||
|
create-invalidation-state 47ms
|
||||||
|
[gap of 36ms]
|
||||||
|
generate_cxx_metadata completed in 102ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -12,3 +12,17 @@ generate_cxx_metadata
|
||||||
[gap of 27ms]
|
[gap of 27ms]
|
||||||
generate_cxx_metadata completed in 89ms
|
generate_cxx_metadata completed in 89ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata
|
||||||
|
[gap of 17ms]
|
||||||
|
create-invalidation-state 43ms
|
||||||
|
[gap of 26ms]
|
||||||
|
generate_cxx_metadata completed in 86ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata
|
||||||
|
[gap of 13ms]
|
||||||
|
create-invalidation-state 42ms
|
||||||
|
[gap of 27ms]
|
||||||
|
generate_cxx_metadata completed in 82ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,3 +11,6 @@ generate_cxx_metadata
|
||||||
[gap of 33ms]
|
[gap of 33ms]
|
||||||
generate_cxx_metadata completed in 112ms
|
generate_cxx_metadata completed in 112ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata 19ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 1164482061
|
"memoizedHashCode": 967786548
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -25,7 +25,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 596000089
|
"memoizedHashCode": 399304576
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -39,6 +39,6 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -788628757
|
"memoizedHashCode": -985324270
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -4,3 +4,9 @@ generate_cxx_metadata
|
||||||
[gap of 14ms]
|
[gap of 14ms]
|
||||||
generate_cxx_metadata completed in 29ms
|
generate_cxx_metadata completed in 29ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata
|
||||||
|
create-invalidation-state 13ms
|
||||||
|
[gap of 13ms]
|
||||||
|
generate_cxx_metadata completed in 28ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 1226785352
|
"memoizedHashCode": -1485904816
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -25,7 +25,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -100804716
|
"memoizedHashCode": 1481472412
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -39,6 +39,6 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -1454981464
|
"memoizedHashCode": 127295664
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -1,3 +1,6 @@
|
||||||
# C/C++ build system timings
|
# C/C++ build system timings
|
||||||
generate_cxx_metadata 16ms
|
generate_cxx_metadata 16ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata 18ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1,3 +1,9 @@
|
||||||
# C/C++ build system timings
|
# C/C++ build system timings
|
||||||
generate_cxx_metadata 24ms
|
generate_cxx_metadata 24ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata 17ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata 13ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -14,3 +14,35 @@ generate_cxx_metadata
|
||||||
write-metadata-json-to-file 13ms
|
write-metadata-json-to-file 13ms
|
||||||
generate_cxx_metadata completed in 146ms
|
generate_cxx_metadata completed in 146ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata
|
||||||
|
[gap of 35ms]
|
||||||
|
create-invalidation-state 86ms
|
||||||
|
[gap of 44ms]
|
||||||
|
write-metadata-json-to-file 13ms
|
||||||
|
generate_cxx_metadata completed in 178ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata
|
||||||
|
[gap of 29ms]
|
||||||
|
create-invalidation-state 81ms
|
||||||
|
[gap of 37ms]
|
||||||
|
write-metadata-json-to-file 17ms
|
||||||
|
generate_cxx_metadata completed in 165ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata
|
||||||
|
[gap of 72ms]
|
||||||
|
create-invalidation-state 116ms
|
||||||
|
[gap of 53ms]
|
||||||
|
write-metadata-json-to-file 16ms
|
||||||
|
generate_cxx_metadata completed in 260ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata
|
||||||
|
[gap of 35ms]
|
||||||
|
create-invalidation-state 122ms
|
||||||
|
[gap of 45ms]
|
||||||
|
write-metadata-json-to-file 17ms
|
||||||
|
generate_cxx_metadata completed in 221ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 120348848
|
"memoizedHashCode": 1702625976
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -25,7 +25,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -349159684
|
"memoizedHashCode": 1233117444
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -39,6 +39,6 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -1759975876
|
"memoizedHashCode": -177698748
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -7,3 +7,9 @@ generate_cxx_metadata
|
||||||
[gap of 14ms]
|
[gap of 14ms]
|
||||||
generate_cxx_metadata completed in 28ms
|
generate_cxx_metadata completed in 28ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata 15ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
generate_cxx_metadata 14ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -1438516690
|
"memoizedHashCode": 143760438
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -25,7 +25,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 958909078
|
"memoizedHashCode": -1753781090
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -39,6 +39,6 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -611600693
|
"memoizedHashCode": 970676435
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -11,6 +11,6 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -735102328
|
"memoizedHashCode": -931797841
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -13,3 +13,8 @@ create_cxx_tasks
|
||||||
[gap of 14ms]
|
[gap of 14ms]
|
||||||
create_cxx_tasks completed in 148ms
|
create_cxx_tasks completed in 148ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model 44ms
|
||||||
|
create_cxx_tasks completed in 48ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -27,3 +27,17 @@ create_cxx_tasks
|
||||||
[gap of 12ms]
|
[gap of 12ms]
|
||||||
create_cxx_tasks completed in 126ms
|
create_cxx_tasks completed in 126ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 12ms
|
||||||
|
create-ARMEABI_V7A-model 10ms
|
||||||
|
[gap of 26ms]
|
||||||
|
create-module-model 14ms
|
||||||
|
[gap of 16ms]
|
||||||
|
create-ARM64_V8A-model 12ms
|
||||||
|
[gap of 17ms]
|
||||||
|
create-initial-cxx-model completed in 116ms
|
||||||
|
[gap of 16ms]
|
||||||
|
create_cxx_tasks completed in 132ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1050,3 +1050,310 @@ create_cxx_tasks
|
||||||
[gap of 60ms]
|
[gap of 60ms]
|
||||||
create_cxx_tasks completed in 196ms
|
create_cxx_tasks completed in 196ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 14ms
|
||||||
|
[gap of 16ms]
|
||||||
|
create-ARMEABI_V7A-model 10ms
|
||||||
|
create-X86-model 10ms
|
||||||
|
create-X86_64-model 10ms
|
||||||
|
create-module-model 17ms
|
||||||
|
create-ARMEABI_V7A-model 10ms
|
||||||
|
create-X86-model 10ms
|
||||||
|
create-X86_64-model 15ms
|
||||||
|
create-initial-cxx-model completed in 140ms
|
||||||
|
[gap of 60ms]
|
||||||
|
create_cxx_tasks completed in 200ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 18ms
|
||||||
|
[gap of 10ms]
|
||||||
|
create-ARMEABI_V7A-model 13ms
|
||||||
|
create-ARM64_V8A-model 11ms
|
||||||
|
[gap of 11ms]
|
||||||
|
create-X86_64-model 10ms
|
||||||
|
create-module-model 14ms
|
||||||
|
[gap of 17ms]
|
||||||
|
create-ARM64_V8A-model 10ms
|
||||||
|
create-X86-model 11ms
|
||||||
|
create-X86_64-model 10ms
|
||||||
|
create-initial-cxx-model completed in 142ms
|
||||||
|
[gap of 15ms]
|
||||||
|
create_cxx_tasks completed in 157ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 12ms
|
||||||
|
[gap of 41ms]
|
||||||
|
create-module-model 10ms
|
||||||
|
[gap of 38ms]
|
||||||
|
create-initial-cxx-model completed in 101ms
|
||||||
|
[gap of 41ms]
|
||||||
|
create_cxx_tasks completed in 142ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 13ms
|
||||||
|
[gap of 49ms]
|
||||||
|
create-module-model 13ms
|
||||||
|
create-variant-model 10ms
|
||||||
|
[gap of 10ms]
|
||||||
|
create-ARM64_V8A-model 10ms
|
||||||
|
create-X86-model 11ms
|
||||||
|
create-X86_64-model 12ms
|
||||||
|
create-initial-cxx-model completed in 131ms
|
||||||
|
[gap of 49ms]
|
||||||
|
create_cxx_tasks completed in 180ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 14ms
|
||||||
|
create-variant-model 10ms
|
||||||
|
[gap of 24ms]
|
||||||
|
create-X86_64-model 10ms
|
||||||
|
create-module-model 14ms
|
||||||
|
[gap of 42ms]
|
||||||
|
create-initial-cxx-model completed in 117ms
|
||||||
|
create_cxx_tasks completed in 126ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 17ms
|
||||||
|
[gap of 16ms]
|
||||||
|
create-ARMEABI_V7A-model 12ms
|
||||||
|
create-ARM64_V8A-model 11ms
|
||||||
|
create-X86-model 14ms
|
||||||
|
create-X86_64-model 11ms
|
||||||
|
create-module-model 13ms
|
||||||
|
create-variant-model 10ms
|
||||||
|
create-ARMEABI_V7A-model 10ms
|
||||||
|
[gap of 10ms]
|
||||||
|
create-X86-model 13ms
|
||||||
|
create-X86_64-model 10ms
|
||||||
|
create-initial-cxx-model completed in 154ms
|
||||||
|
[gap of 76ms]
|
||||||
|
create_cxx_tasks completed in 231ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 23ms
|
||||||
|
[gap of 10ms]
|
||||||
|
create-ARMEABI_V7A-model 12ms
|
||||||
|
create-ARM64_V8A-model 12ms
|
||||||
|
create-X86_64-model 10ms
|
||||||
|
create-module-model 17ms
|
||||||
|
create-ARMEABI_V7A-model 10ms
|
||||||
|
create-ARM64_V8A-model 11ms
|
||||||
|
create-X86_64-model 11ms
|
||||||
|
create-initial-cxx-model completed in 146ms
|
||||||
|
[gap of 10ms]
|
||||||
|
create_cxx_tasks completed in 156ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 24ms
|
||||||
|
[gap of 11ms]
|
||||||
|
create-variant-model 25ms
|
||||||
|
create-ARMEABI_V7A-model 14ms
|
||||||
|
create-ARM64_V8A-model 13ms
|
||||||
|
create-X86-model 27ms
|
||||||
|
create-X86_64-model 13ms
|
||||||
|
create-module-model 19ms
|
||||||
|
create-variant-model 45ms
|
||||||
|
create-ARMEABI_V7A-model 18ms
|
||||||
|
create-ARM64_V8A-model 17ms
|
||||||
|
create-X86-model 35ms
|
||||||
|
create-X86_64-model 53ms
|
||||||
|
create-initial-cxx-model completed in 340ms
|
||||||
|
[gap of 91ms]
|
||||||
|
create_cxx_tasks completed in 433ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 16ms
|
||||||
|
[gap of 12ms]
|
||||||
|
create-ARMEABI_V7A-model 10ms
|
||||||
|
[gap of 19ms]
|
||||||
|
create-X86_64-model 11ms
|
||||||
|
create-module-model 10ms
|
||||||
|
[gap of 34ms]
|
||||||
|
create-initial-cxx-model completed in 114ms
|
||||||
|
[gap of 37ms]
|
||||||
|
create_cxx_tasks completed in 152ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model 70ms
|
||||||
|
[gap of 33ms]
|
||||||
|
create_cxx_tasks completed in 103ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 10ms
|
||||||
|
[gap of 42ms]
|
||||||
|
create-module-model 10ms
|
||||||
|
[gap of 34ms]
|
||||||
|
create-initial-cxx-model completed in 96ms
|
||||||
|
[gap of 10ms]
|
||||||
|
create_cxx_tasks completed in 106ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 22ms
|
||||||
|
create-variant-model 16ms
|
||||||
|
create-ARMEABI_V7A-model 13ms
|
||||||
|
create-ARM64_V8A-model 32ms
|
||||||
|
create-X86-model 10ms
|
||||||
|
create-X86_64-model 11ms
|
||||||
|
create-module-model 18ms
|
||||||
|
create-variant-model 36ms
|
||||||
|
create-ARMEABI_V7A-model 20ms
|
||||||
|
create-ARM64_V8A-model 20ms
|
||||||
|
create-X86-model 30ms
|
||||||
|
create-X86_64-model 13ms
|
||||||
|
create-initial-cxx-model completed in 264ms
|
||||||
|
[gap of 66ms]
|
||||||
|
create_cxx_tasks completed in 332ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model
|
||||||
|
[gap of 32ms]
|
||||||
|
create-cmake-model 10ms
|
||||||
|
[gap of 29ms]
|
||||||
|
create-module-model completed in 71ms
|
||||||
|
create-variant-model 49ms
|
||||||
|
create-ARMEABI_V7A-model 40ms
|
||||||
|
create-ARM64_V8A-model 40ms
|
||||||
|
create-X86-model 13ms
|
||||||
|
create-X86_64-model 12ms
|
||||||
|
create-module-model 18ms
|
||||||
|
create-variant-model 17ms
|
||||||
|
create-ARMEABI_V7A-model 35ms
|
||||||
|
create-ARM64_V8A-model 32ms
|
||||||
|
create-X86-model 45ms
|
||||||
|
create-X86_64-model 54ms
|
||||||
|
create-initial-cxx-model completed in 449ms
|
||||||
|
[gap of 129ms]
|
||||||
|
create_cxx_tasks completed in 579ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 17ms
|
||||||
|
[gap of 14ms]
|
||||||
|
create-ARMEABI_V7A-model 12ms
|
||||||
|
[gap of 21ms]
|
||||||
|
create-X86_64-model 12ms
|
||||||
|
create-module-model 13ms
|
||||||
|
create-ARMEABI_V7A-model 12ms
|
||||||
|
[gap of 16ms]
|
||||||
|
create-X86_64-model 11ms
|
||||||
|
create-initial-cxx-model completed in 138ms
|
||||||
|
[gap of 96ms]
|
||||||
|
create_cxx_tasks completed in 236ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 11ms
|
||||||
|
[gap of 10ms]
|
||||||
|
create-ARMEABI_V7A-model 10ms
|
||||||
|
create-ARM64_V8A-model 10ms
|
||||||
|
[gap of 14ms]
|
||||||
|
create-module-model 16ms
|
||||||
|
[gap of 25ms]
|
||||||
|
create-X86-model 11ms
|
||||||
|
create-initial-cxx-model completed in 116ms
|
||||||
|
create_cxx_tasks completed in 124ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
[gap of 43ms]
|
||||||
|
create-module-model 11ms
|
||||||
|
[gap of 42ms]
|
||||||
|
create-initial-cxx-model completed in 96ms
|
||||||
|
[gap of 35ms]
|
||||||
|
create_cxx_tasks completed in 131ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 17ms
|
||||||
|
create-variant-model 12ms
|
||||||
|
create-ARMEABI_V7A-model 11ms
|
||||||
|
create-ARM64_V8A-model 12ms
|
||||||
|
create-X86-model 21ms
|
||||||
|
create-X86_64-model 10ms
|
||||||
|
create-module-model 24ms
|
||||||
|
[gap of 11ms]
|
||||||
|
create-ARMEABI_V7A-model 12ms
|
||||||
|
create-ARM64_V8A-model 14ms
|
||||||
|
create-X86-model 15ms
|
||||||
|
create-initial-cxx-model completed in 183ms
|
||||||
|
[gap of 11ms]
|
||||||
|
create_cxx_tasks completed in 194ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 14ms
|
||||||
|
create-variant-model 10ms
|
||||||
|
create-ARMEABI_V7A-model 10ms
|
||||||
|
[gap of 26ms]
|
||||||
|
create-module-model 17ms
|
||||||
|
[gap of 18ms]
|
||||||
|
create-ARM64_V8A-model 10ms
|
||||||
|
create-X86-model 11ms
|
||||||
|
create-X86_64-model 12ms
|
||||||
|
create-initial-cxx-model completed in 137ms
|
||||||
|
[gap of 121ms]
|
||||||
|
create_cxx_tasks completed in 258ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 16ms
|
||||||
|
create-variant-model 10ms
|
||||||
|
create-ARMEABI_V7A-model 10ms
|
||||||
|
create-ARM64_V8A-model 10ms
|
||||||
|
create-X86-model 11ms
|
||||||
|
create-X86_64-model 11ms
|
||||||
|
create-module-model 18ms
|
||||||
|
create-variant-model 10ms
|
||||||
|
create-ARMEABI_V7A-model 14ms
|
||||||
|
[gap of 10ms]
|
||||||
|
create-X86-model 11ms
|
||||||
|
create-X86_64-model 10ms
|
||||||
|
create-initial-cxx-model completed in 154ms
|
||||||
|
[gap of 14ms]
|
||||||
|
create_cxx_tasks completed in 168ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 14ms
|
||||||
|
[gap of 30ms]
|
||||||
|
create-X86-model 10ms
|
||||||
|
create-module-model 14ms
|
||||||
|
create-variant-model 10ms
|
||||||
|
[gap of 24ms]
|
||||||
|
create-X86_64-model 11ms
|
||||||
|
create-initial-cxx-model completed in 123ms
|
||||||
|
[gap of 48ms]
|
||||||
|
create_cxx_tasks completed in 172ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,3 +8,13 @@ create_cxx_tasks
|
||||||
create-initial-cxx-model completed in 91ms
|
create-initial-cxx-model completed in 91ms
|
||||||
create_cxx_tasks completed in 97ms
|
create_cxx_tasks completed in 97ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model
|
||||||
|
create-module-model 17ms
|
||||||
|
[gap of 36ms]
|
||||||
|
create-module-model 11ms
|
||||||
|
[gap of 39ms]
|
||||||
|
create-initial-cxx-model completed in 103ms
|
||||||
|
create_cxx_tasks completed in 112ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -15,3 +15,8 @@ create_cxx_tasks
|
||||||
[gap of 17ms]
|
[gap of 17ms]
|
||||||
create_cxx_tasks completed in 188ms
|
create_cxx_tasks completed in 188ms
|
||||||
|
|
||||||
|
# C/C++ build system timings
|
||||||
|
create_cxx_tasks
|
||||||
|
create-initial-cxx-model 57ms
|
||||||
|
create_cxx_tasks completed in 64ms
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -11,7 +11,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 106932290
|
"memoizedHashCode": -89763223
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -25,7 +25,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 899120393
|
"memoizedHashCode": 702424880
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -39,7 +39,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 439376348
|
"memoizedHashCode": 242680835
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -53,7 +53,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -828571640
|
"memoizedHashCode": -1025267153
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -67,7 +67,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -259859609
|
"memoizedHashCode": -456555122
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -81,7 +81,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 105050649
|
"memoizedHashCode": -91644864
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -95,7 +95,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 412191883
|
"memoizedHashCode": 215496370
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -109,7 +109,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -145955837
|
"memoizedHashCode": -342651350
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -123,7 +123,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 522846916
|
"memoizedHashCode": 326151403
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -137,7 +137,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 1227308109
|
"memoizedHashCode": 1030612596
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -151,7 +151,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -1204845117
|
"memoizedHashCode": -1401540630
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -165,7 +165,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -636133086
|
"memoizedHashCode": -832828599
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 0,
|
"level_": 0,
|
||||||
|
|
@ -179,7 +179,7 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": 269616977
|
"memoizedHashCode": 72921464
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"level_": 2,
|
"level_": 2,
|
||||||
|
|
@ -193,6 +193,6 @@
|
||||||
"fieldsDescending": {}
|
"fieldsDescending": {}
|
||||||
},
|
},
|
||||||
"memoizedSize": -1,
|
"memoizedSize": -1,
|
||||||
"memoizedHashCode": -1573934875
|
"memoizedHashCode": -1770630388
|
||||||
}
|
}
|
||||||
]
|
]
|
||||||
|
|
@ -90,8 +90,8 @@ open class ConnectionActivity : BaseActivity() {
|
||||||
}
|
}
|
||||||
if (TextUtils.isEmpty(PreferenceUtils.getInstance().mqttServerUri)){
|
if (TextUtils.isEmpty(PreferenceUtils.getInstance().mqttServerUri)){
|
||||||
PreferenceUtils.getInstance().mqttServerUri =
|
PreferenceUtils.getInstance().mqttServerUri =
|
||||||
"tcp://192.168.20.90:2883"
|
//"tcp://192.168.20.90:2883"
|
||||||
//"tcp://broker.emqx.io"
|
"tcp://broker.emqx.io"
|
||||||
}
|
}
|
||||||
|
|
||||||
if (TextUtils.isEmpty(PreferenceUtils.getInstance().mqttUserName)){
|
if (TextUtils.isEmpty(PreferenceUtils.getInstance().mqttUserName)){
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,4 @@
|
||||||
package com.aros.apron.activity
|
package com.aros.apron.activity
|
||||||
|
|
||||||
import android.annotation.SuppressLint
|
import android.annotation.SuppressLint
|
||||||
import android.graphics.Color
|
import android.graphics.Color
|
||||||
import android.graphics.drawable.ColorDrawable
|
import android.graphics.drawable.ColorDrawable
|
||||||
|
|
@ -7,13 +6,11 @@ import android.os.Build
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.os.Handler
|
import android.os.Handler
|
||||||
import android.os.Looper
|
import android.os.Looper
|
||||||
import android.util.Log
|
|
||||||
import android.view.View
|
import android.view.View
|
||||||
import android.view.Window
|
import android.view.Window
|
||||||
import android.view.WindowManager
|
import android.view.WindowManager
|
||||||
import android.widget.Button
|
import android.widget.Button
|
||||||
import android.widget.TextView
|
import android.widget.TextView
|
||||||
import android.widget.Toast
|
|
||||||
import androidx.annotation.RequiresApi
|
import androidx.annotation.RequiresApi
|
||||||
import androidx.constraintlayout.widget.ConstraintLayout
|
import androidx.constraintlayout.widget.ConstraintLayout
|
||||||
import androidx.core.view.GravityCompat
|
import androidx.core.view.GravityCompat
|
||||||
|
|
@ -38,7 +35,6 @@ import com.aros.apron.manager.MediaManager
|
||||||
import com.aros.apron.manager.MissionV3Manager
|
import com.aros.apron.manager.MissionV3Manager
|
||||||
import com.aros.apron.manager.OSDManager
|
import com.aros.apron.manager.OSDManager
|
||||||
import com.aros.apron.manager.PayloadWidgetManager
|
import com.aros.apron.manager.PayloadWidgetManager
|
||||||
import com.aros.apron.manager.SpeakerManager
|
|
||||||
import com.aros.apron.manager.StickManager
|
import com.aros.apron.manager.StickManager
|
||||||
import com.aros.apron.manager.StreamManager
|
import com.aros.apron.manager.StreamManager
|
||||||
import com.aros.apron.manager.WirelessLinkManager
|
import com.aros.apron.manager.WirelessLinkManager
|
||||||
|
|
@ -48,29 +44,21 @@ import com.aros.apron.tools.DroneHelper
|
||||||
import com.aros.apron.tools.LogUtil
|
import com.aros.apron.tools.LogUtil
|
||||||
import com.aros.apron.tools.MqttManager
|
import com.aros.apron.tools.MqttManager
|
||||||
import com.aros.apron.tools.PreferenceUtils
|
import com.aros.apron.tools.PreferenceUtils
|
||||||
import com.aros.apron.tools.Utils
|
|
||||||
import com.dji.wpmzsdk.manager.WPMZManager
|
import com.dji.wpmzsdk.manager.WPMZManager
|
||||||
import com.google.gson.Gson
|
import com.google.gson.Gson
|
||||||
import com.iflytek.aikit.core.AiHelper
|
|
||||||
import com.iflytek.aikit.core.BaseLibrary
|
|
||||||
import com.iflytek.aikit.core.CoreListener
|
|
||||||
import com.iflytek.aikit.core.ErrType
|
|
||||||
import com.iflytek.aikit.core.LogLvl
|
|
||||||
import dji.sdk.keyvalue.key.CameraKey
|
|
||||||
import dji.sdk.keyvalue.key.DJIKey
|
import dji.sdk.keyvalue.key.DJIKey
|
||||||
import dji.sdk.keyvalue.key.FlightControllerKey
|
import dji.sdk.keyvalue.key.FlightControllerKey
|
||||||
import dji.sdk.keyvalue.key.GimbalKey
|
|
||||||
import dji.sdk.keyvalue.key.KeyTools
|
import dji.sdk.keyvalue.key.KeyTools
|
||||||
import dji.sdk.keyvalue.value.common.CameraLensType
|
import dji.sdk.keyvalue.value.common.CameraLensType
|
||||||
import dji.sdk.keyvalue.value.common.ComponentIndexType
|
import dji.sdk.keyvalue.value.common.ComponentIndexType
|
||||||
import dji.sdk.keyvalue.value.common.EmptyMsg
|
import dji.sdk.keyvalue.value.common.EmptyMsg
|
||||||
import dji.sdk.keyvalue.value.flightassistant.VisionAssistDirection
|
import dji.sdk.keyvalue.value.flightassistant.VisionAssistDirection
|
||||||
|
import dji.sdk.keyvalue.value.flightcontroller.LEDsSettings
|
||||||
import dji.v5.common.callback.CommonCallbacks
|
import dji.v5.common.callback.CommonCallbacks
|
||||||
import dji.v5.common.callback.CommonCallbacks.CompletionCallback
|
import dji.v5.common.callback.CommonCallbacks.CompletionCallback
|
||||||
import dji.v5.common.error.IDJIError
|
import dji.v5.common.error.IDJIError
|
||||||
import dji.v5.common.utils.GeoidManager
|
import dji.v5.common.utils.GeoidManager
|
||||||
import dji.v5.manager.KeyManager
|
import dji.v5.manager.KeyManager
|
||||||
import dji.v5.manager.aircraft.virtualstick.VirtualStickManager
|
|
||||||
import dji.v5.manager.datacenter.MediaDataCenter
|
import dji.v5.manager.datacenter.MediaDataCenter
|
||||||
import dji.v5.manager.interfaces.ICameraStreamManager
|
import dji.v5.manager.interfaces.ICameraStreamManager
|
||||||
import dji.v5.manager.interfaces.ICameraStreamManager.AvailableCameraUpdatedListener
|
import dji.v5.manager.interfaces.ICameraStreamManager.AvailableCameraUpdatedListener
|
||||||
|
|
@ -116,6 +104,7 @@ import io.reactivex.rxjava3.functions.Consumer
|
||||||
import org.eclipse.paho.client.mqttv3.MqttException
|
import org.eclipse.paho.client.mqttv3.MqttException
|
||||||
import org.greenrobot.eventbus.Subscribe
|
import org.greenrobot.eventbus.Subscribe
|
||||||
import org.greenrobot.eventbus.ThreadMode
|
import org.greenrobot.eventbus.ThreadMode
|
||||||
|
import org.opencv.android.OpenCVLoader
|
||||||
import org.opencv.objdetect.Dictionary
|
import org.opencv.objdetect.Dictionary
|
||||||
import org.opencv.objdetect.Objdetect
|
import org.opencv.objdetect.Objdetect
|
||||||
import java.util.concurrent.TimeUnit
|
import java.util.concurrent.TimeUnit
|
||||||
|
|
@ -153,9 +142,6 @@ open class MainActivity : BaseActivity() {
|
||||||
private var gimbalAdjustDone: TextView? = null
|
private var gimbalAdjustDone: TextView? = null
|
||||||
private var btn_test: Button? = null
|
private var btn_test: Button? = null
|
||||||
private var btn_test1: Button? = null
|
private var btn_test1: Button? = null
|
||||||
private var btn_test2: Button? = null
|
|
||||||
private var btn_test3: Button? = null
|
|
||||||
|
|
||||||
|
|
||||||
private var gimbalFineTuneWidget: GimbalFineTuneWidget? = null
|
private var gimbalFineTuneWidget: GimbalFineTuneWidget? = null
|
||||||
private var lastDevicePosition = ComponentIndexType.UNKNOWN
|
private var lastDevicePosition = ComponentIndexType.UNKNOWN
|
||||||
|
|
@ -188,18 +174,32 @@ open class MainActivity : BaseActivity() {
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
private var cameraManager: ICameraStreamManager =
|
private var cameraManager: ICameraStreamManager = MediaDataCenter.getInstance().cameraStreamManager
|
||||||
MediaDataCenter.getInstance().cameraStreamManager
|
|
||||||
|
|
||||||
private var startArucoType = 0 //1执行机库二维码识别 2执行备降点二维码识别
|
private var startArucoType = 0 //1执行机库二维码识别 2执行备降点二维码识别
|
||||||
private var dictionary: Dictionary? = null
|
private var dictionary: Dictionary? = null
|
||||||
override fun useEventBus(): Boolean {
|
override fun useEventBus(): Boolean {
|
||||||
return true
|
return true
|
||||||
}
|
}
|
||||||
|
|
||||||
override fun onResume() {
|
override fun onResume() {
|
||||||
super.onResume()
|
super.onResume()
|
||||||
|
|
||||||
|
|
||||||
|
while (!OpenCVLoader.initLocal()) {
|
||||||
|
LogUtil.log("qwq", "opencv 初始化失败,阻塞等待重试...")
|
||||||
|
try {
|
||||||
|
Thread.sleep(300) // 休眠 300ms 再试,防止 CPU 爆炸
|
||||||
|
} catch (e: InterruptedException) {
|
||||||
|
LogUtil.log("qwq", "初始化被中断,跳出循环")
|
||||||
|
break
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
LogUtil.log("qwq", "opencv 初始化完成,继续执行后续代码")
|
||||||
|
|
||||||
dictionary = Objdetect.getPredefinedDictionary(Objdetect.DICT_6X6_250)
|
dictionary = Objdetect.getPredefinedDictionary(Objdetect.DICT_6X6_250)
|
||||||
|
|
||||||
compositeDisposable = CompositeDisposable()
|
compositeDisposable = CompositeDisposable()
|
||||||
compositeDisposable!!.add(
|
compositeDisposable!!.add(
|
||||||
systemStatusListPanelWidget!!.closeButtonPressed()
|
systemStatusListPanelWidget!!.closeButtonPressed()
|
||||||
|
|
@ -228,15 +228,14 @@ open class MainActivity : BaseActivity() {
|
||||||
runOnUiThread { onCameraSourceUpdated(result.devicePosition, result.lensType) }
|
runOnUiThread { onCameraSourceUpdated(result.devicePosition, result.lensType) }
|
||||||
})
|
})
|
||||||
)
|
)
|
||||||
compositeDisposable!!.add(
|
compositeDisposable!!.add(ObservableInMemoryKeyedStore.getInstance()
|
||||||
ObservableInMemoryKeyedStore.getInstance()
|
.addObserver(UXKeys.create(GlobalPreferenceKeys.GIMBAL_ADJUST_CLICKED))
|
||||||
.addObserver(UXKeys.create(GlobalPreferenceKeys.GIMBAL_ADJUST_CLICKED))
|
.observeOn(ui())
|
||||||
.observeOn(ui())
|
.subscribe { broadcastValues: BroadcastValues? ->
|
||||||
.subscribe { broadcastValues: BroadcastValues? ->
|
isGimableAdjustClicked(
|
||||||
isGimableAdjustClicked(
|
broadcastValues!!
|
||||||
broadcastValues!!
|
)
|
||||||
)
|
})
|
||||||
})
|
|
||||||
ViewUtil.setKeepScreen(this, true)
|
ViewUtil.setKeepScreen(this, true)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -250,7 +249,7 @@ open class MainActivity : BaseActivity() {
|
||||||
}
|
}
|
||||||
|
|
||||||
//endregion
|
//endregion
|
||||||
private fun hideOtherPanels(widget: View?) {
|
private fun hideOtherPanels(widget: View?) {
|
||||||
val panels = arrayOf<View>(
|
val panels = arrayOf<View>(
|
||||||
simulatorControlWidget!!
|
simulatorControlWidget!!
|
||||||
)
|
)
|
||||||
|
|
@ -363,7 +362,7 @@ open class MainActivity : BaseActivity() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun updateViewVisibility(
|
private fun updateViewVisibility(
|
||||||
devicePosition: ComponentIndexType,
|
devicePosition: ComponentIndexType,
|
||||||
lensType: CameraLensType
|
lensType: CameraLensType
|
||||||
) {
|
) {
|
||||||
|
|
@ -402,7 +401,7 @@ open class MainActivity : BaseActivity() {
|
||||||
/**
|
/**
|
||||||
* Swap the video sources of the FPV and secondary FPV widgets.
|
* Swap the video sources of the FPV and secondary FPV widgets.
|
||||||
*/
|
*/
|
||||||
private fun swapVideoSource() {
|
private fun swapVideoSource() {
|
||||||
val primarySource = primaryFpvWidget!!.widgetModel.getCameraIndex()
|
val primarySource = primaryFpvWidget!!.widgetModel.getCameraIndex()
|
||||||
val secondarySource = secondaryFPVWidget!!.widgetModel.getCameraIndex()
|
val secondarySource = secondaryFPVWidget!!.widgetModel.getCameraIndex()
|
||||||
//两个source都存在的情况下才进行切换
|
//两个source都存在的情况下才进行切换
|
||||||
|
|
@ -422,7 +421,6 @@ open class MainActivity : BaseActivity() {
|
||||||
val devicePosition: ComponentIndexType,
|
val devicePosition: ComponentIndexType,
|
||||||
val lensType: CameraLensType
|
val lensType: CameraLensType
|
||||||
)
|
)
|
||||||
|
|
||||||
override fun onBackPressed() {
|
override fun onBackPressed() {
|
||||||
if (mDrawerLayout!!.isDrawerOpen(GravityCompat.END)) {
|
if (mDrawerLayout!!.isDrawerOpen(GravityCompat.END)) {
|
||||||
mDrawerLayout!!.closeDrawers()
|
mDrawerLayout!!.closeDrawers()
|
||||||
|
|
@ -457,111 +455,44 @@ open class MainActivity : BaseActivity() {
|
||||||
initDJIManager()
|
initDJIManager()
|
||||||
initCameraStream()
|
initCameraStream()
|
||||||
initView()
|
initView()
|
||||||
initSDK()
|
|
||||||
}
|
|
||||||
|
|
||||||
private fun initSDK() {
|
|
||||||
AiHelper.getInst().setLogInfo(LogLvl.VERBOSE, 1, "/sdcard/iflytek/aikit/aeeLog.txt")
|
|
||||||
//设定初始化参数
|
|
||||||
val params = BaseLibrary.Params.builder()
|
|
||||||
.appId("753fd711") //您的应用ID,可从控制台查看
|
|
||||||
.apiKey("35099a7d31abf2259f5ee58cbf8b6791") //您的APIKEY,可从控制台查看
|
|
||||||
.apiSecret("ZTdiMDIwYzEwNTA1NjllYjJlYjdmYWFi") //您的APISECRET,可从控制台查看
|
|
||||||
.workDir(Utils.getSDCardPath() + "/DJIDemo/cache") //SDK的工作目录,需要确保有读写权限。一般用于存放离线能力资源,日志存放目录等使用。
|
|
||||||
.build()
|
|
||||||
//初始化SDK
|
|
||||||
Thread {
|
|
||||||
AiHelper.getInst().initEntry(this@MainActivity.applicationContext, params)
|
|
||||||
}.start()
|
|
||||||
AiHelper.getInst().registerListener(coreListener) // 注册SDK 初始化状态监听
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
//授权结果回调
|
|
||||||
private val coreListener = CoreListener { type, code ->
|
|
||||||
Log.i(TAG, "core listener code:$code")
|
|
||||||
runOnUiThread {
|
|
||||||
when (type) {
|
|
||||||
ErrType.AUTH -> {
|
|
||||||
if (code == 0) {
|
|
||||||
LogUtil.log(TAG, "SDK授权成功")
|
|
||||||
} else {
|
|
||||||
LogUtil.log(TAG, "SDK授权失败,授权码为:$code")
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
ErrType.HTTP -> Toast.makeText(
|
|
||||||
this@MainActivity, "SDK状态:HTTP认证结果$code",
|
|
||||||
Toast.LENGTH_SHORT
|
|
||||||
).show()
|
|
||||||
|
|
||||||
else -> Toast.makeText(
|
|
||||||
this@MainActivity, "SDK状态:其他错误$code",
|
|
||||||
Toast.LENGTH_SHORT
|
|
||||||
).show()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun initView() {
|
private fun initView() {
|
||||||
fpvParentView = findViewById(R.id.fpv_holder)
|
fpvParentView = findViewById( R.id.fpv_holder)
|
||||||
mDrawerLayout = findViewById(R.id.root_view)
|
mDrawerLayout = findViewById( R.id.root_view)
|
||||||
topBarPanel = findViewById(R.id.panel_top_bar)
|
topBarPanel = findViewById( R.id.panel_top_bar)
|
||||||
settingWidget = topBarPanel?.settingWidget
|
settingWidget = topBarPanel?.settingWidget
|
||||||
primaryFpvWidget = findViewById(R.id.widget_primary_fpv)
|
primaryFpvWidget = findViewById( R.id.widget_primary_fpv)
|
||||||
fpvInteractionWidget = findViewById(R.id.widget_fpv_interaction)
|
fpvInteractionWidget = findViewById( R.id.widget_fpv_interaction)
|
||||||
secondaryFPVWidget = findViewById(R.id.widget_secondary_fpv)
|
secondaryFPVWidget = findViewById( R.id.widget_secondary_fpv)
|
||||||
systemStatusListPanelWidget = findViewById(R.id.widget_panel_system_status_list)
|
systemStatusListPanelWidget = findViewById( R.id.widget_panel_system_status_list)
|
||||||
simulatorControlWidget = findViewById(R.id.widget_simulator_control)
|
simulatorControlWidget = findViewById( R.id.widget_simulator_control)
|
||||||
lensControlWidget = findViewById<LensControlWidget>(R.id.widget_lens_control)
|
lensControlWidget = findViewById<LensControlWidget>( R.id.widget_lens_control)
|
||||||
ndviCameraPanel = findViewById(R.id.panel_ndvi_camera)
|
ndviCameraPanel = findViewById( R.id.panel_ndvi_camera)
|
||||||
visualCameraPanel = findViewById(R.id.panel_visual_camera)
|
visualCameraPanel = findViewById( R.id.panel_visual_camera)
|
||||||
autoExposureLockWidget = findViewById(R.id.widget_auto_exposure_lock)
|
autoExposureLockWidget = findViewById( R.id.widget_auto_exposure_lock)
|
||||||
focusModeWidget = findViewById(R.id.widget_focus_mode)
|
focusModeWidget = findViewById( R.id.widget_focus_mode)
|
||||||
focusExposureSwitchWidget = findViewById(R.id.widget_focus_exposure_switch)
|
focusExposureSwitchWidget = findViewById( R.id.widget_focus_exposure_switch)
|
||||||
pfvFlightDisplayWidget = findViewById(R.id.widget_fpv_flight_display_widget)
|
pfvFlightDisplayWidget = findViewById( R.id.widget_fpv_flight_display_widget)
|
||||||
focalZoomWidget = findViewById(R.id.widget_focal_zoom)
|
focalZoomWidget = findViewById( R.id.widget_focal_zoom)
|
||||||
cameraControlsWidget = findViewById(R.id.widget_camera_controls)
|
cameraControlsWidget = findViewById( R.id.widget_camera_controls)
|
||||||
horizontalSituationIndicatorWidget =
|
horizontalSituationIndicatorWidget =
|
||||||
findViewById(R.id.widget_horizontal_situation_indicator)
|
findViewById(R.id.widget_horizontal_situation_indicator)
|
||||||
// gimbalAdjustDone = findViewById<TextView>( R.id.fpv_gimbal_ok_btn)
|
// gimbalAdjustDone = findViewById<TextView>( R.id.fpv_gimbal_ok_btn)
|
||||||
gimbalFineTuneWidget = findViewById(R.id.setting_menu_gimbal_fine_tune)
|
gimbalFineTuneWidget = findViewById( R.id.setting_menu_gimbal_fine_tune)
|
||||||
btn_test = findViewById(R.id.btn_test)
|
btn_test = findViewById( R.id.btn_test)
|
||||||
btn_test1 = findViewById(R.id.btn_test1)
|
btn_test1 = findViewById( R.id.btn_test1)
|
||||||
btn_test2 = findViewById(R.id.btn_test2)
|
|
||||||
btn_test3 = findViewById(R.id.btn_test3)
|
|
||||||
btn_test?.setOnClickListener {
|
btn_test?.setOnClickListener {
|
||||||
|
// MissionManager.getInstance().test()
|
||||||
|
FlightManager.getInstance().startPropellerRotation(null)
|
||||||
}
|
}
|
||||||
btn_test1?.setOnClickListener {
|
btn_test1?.setOnClickListener {
|
||||||
|
FlightManager.getInstance().stopPropellerRotation(null)
|
||||||
|
|
||||||
}
|
|
||||||
btn_test2?.setOnClickListener {
|
|
||||||
|
|
||||||
|
|
||||||
}
|
|
||||||
btn_test3?.setOnClickListener {
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
MediaDataCenter.getInstance().cameraStreamManager.setVisionAssistViewDirection(
|
|
||||||
VisionAssistDirection.DOWN, object : CommonCallbacks.CompletionCallback {
|
|
||||||
override fun onSuccess() {
|
|
||||||
LogUtil.log(TAG, "开启成功")
|
|
||||||
}
|
|
||||||
|
|
||||||
override fun onFailure(p0: IDJIError) {
|
|
||||||
LogUtil.log(TAG, "开启失败" + p0)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
|
|
||||||
|
|
||||||
initClickListener()
|
initClickListener()
|
||||||
MediaDataCenter.getInstance().cameraStreamManager.addAvailableCameraUpdatedListener(
|
MediaDataCenter.getInstance().cameraStreamManager.addAvailableCameraUpdatedListener(
|
||||||
availableCameraUpdatedListener
|
availableCameraUpdatedListener
|
||||||
|
|
@ -588,9 +519,11 @@ open class MainActivity : BaseActivity() {
|
||||||
DJINetworkManager.getInstance().addNetworkStatusListener(networkStatusListener)
|
DJINetworkManager.getInstance().addNetworkStatusListener(networkStatusListener)
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun isGimableAdjustClicked(broadcastValues: BroadcastValues) {
|
private fun isGimableAdjustClicked(broadcastValues: BroadcastValues) {
|
||||||
if (mDrawerLayout!!.isDrawerOpen(GravityCompat.END)) {
|
if (mDrawerLayout!!.isDrawerOpen(GravityCompat.END)) {
|
||||||
mDrawerLayout!!.closeDrawers()
|
mDrawerLayout!!.closeDrawers()
|
||||||
}
|
}
|
||||||
|
|
@ -600,7 +533,7 @@ open class MainActivity : BaseActivity() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun initClickListener() {
|
private fun initClickListener() {
|
||||||
secondaryFPVWidget!!.setOnClickListener { v: View? -> swapVideoSource() }
|
secondaryFPVWidget!!.setOnClickListener { v: View? -> swapVideoSource() }
|
||||||
if (settingWidget != null) {
|
if (settingWidget != null) {
|
||||||
settingWidget!!.setOnClickListener { v: View? -> toggleRightDrawer() }
|
settingWidget!!.setOnClickListener { v: View? -> toggleRightDrawer() }
|
||||||
|
|
@ -619,7 +552,7 @@ open class MainActivity : BaseActivity() {
|
||||||
// }
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
private fun toggleRightDrawer() {
|
private fun toggleRightDrawer() {
|
||||||
mDrawerLayout!!.openDrawer(GravityCompat.END)
|
mDrawerLayout!!.openDrawer(GravityCompat.END)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -642,23 +575,17 @@ open class MainActivity : BaseActivity() {
|
||||||
}
|
}
|
||||||
|
|
||||||
private val handler: Handler = Handler(Looper.getMainLooper())
|
private val handler: Handler = Handler(Looper.getMainLooper())
|
||||||
private var initTimes = 0
|
private var initTimes=0
|
||||||
|
|
||||||
|
|
||||||
private fun initDJIManager() {
|
private fun initDJIManager() {
|
||||||
//如果没有云台修改这里
|
//如果没有云台修改这里
|
||||||
// 初始化 OpenCV
|
// 初始化 OpenCV
|
||||||
|
|
||||||
val isFlightControllerConnect =
|
val isFlightControllerConnect =
|
||||||
KeyManager.getInstance().getValue(DJIKey.create(FlightControllerKey.KeyConnection))
|
KeyManager.getInstance().getValue(DJIKey.create(FlightControllerKey.KeyConnection))
|
||||||
val isCameraConnect =
|
// val isCameraConnect =
|
||||||
KeyManager.getInstance()
|
// KeyManager.getInstance().getValue(KeyTools.createKey(CameraKey.KeyConnection, ComponentIndexType.PORT_1))
|
||||||
.getValue(KeyTools.createKey(CameraKey.KeyConnection, ComponentIndexType.PORT_1))
|
// LogUtil.log(TAG,isCameraConnect.toString())
|
||||||
val isGimbal = KeyManager.getInstance()
|
|
||||||
.getValue(KeyTools.createKey(GimbalKey.KeyConnection, ComponentIndexType.PORT_1))
|
|
||||||
// LogUtil.log(TAG,isCameraConnect.toString())
|
|
||||||
|
|
||||||
//全装在初始化
|
|
||||||
if ((isFlightControllerConnect == null || !isFlightControllerConnect)) {
|
if ((isFlightControllerConnect == null || !isFlightControllerConnect)) {
|
||||||
handler.postDelayed({
|
handler.postDelayed({
|
||||||
initDJIManager()
|
initDJIManager()
|
||||||
|
|
@ -666,53 +593,72 @@ open class MainActivity : BaseActivity() {
|
||||||
} else {
|
} else {
|
||||||
initTimes++
|
initTimes++
|
||||||
LogUtil.log(TAG, "初始化$initTimes")
|
LogUtil.log(TAG, "初始化$initTimes")
|
||||||
|
MissionV3Manager.getInstance().initMissionManager()
|
||||||
|
FlightManager.getInstance().initFlightInfo()
|
||||||
|
BatteryManager.getInstance().initBatteryInfo()
|
||||||
|
StickManager.getInstance().initStickInfo()
|
||||||
|
GimbalManager.getInstance().initGimbalInfo()
|
||||||
|
AlternateLandingManager.getInstance().initAlterLandingInfo()
|
||||||
|
OSDManager.getInstance().initOsd()
|
||||||
|
FlightTaskProgressManager.getInstance().initFlightTaskProgress()
|
||||||
|
MediaManager.getInstance().init()
|
||||||
|
StreamManager.getInstance().initStreamManager()
|
||||||
|
LEDsSettingsManager.getInstance().initLEDsInfo()
|
||||||
|
//负载
|
||||||
|
PayloadWidgetManager.getInstance().initPayloadInfo()
|
||||||
|
//初始化上报
|
||||||
|
LTEManager.getInstance().initLTEInfo()
|
||||||
|
WirelessLinkManager.getInstance().initWirelessLink()
|
||||||
|
CameraManager.getInstance().initCameraInfo()
|
||||||
|
|
||||||
LogUtil.log(TAG, "自定义推流方式:" + PreferenceUtils.getInstance().customStreamType)
|
|
||||||
|
MediaDataCenter.getInstance().cameraStreamManager.setVisionAssistViewDirection(
|
||||||
|
VisionAssistDirection.DOWN,object:CommonCallbacks.CompletionCallback{
|
||||||
|
override fun onSuccess() {
|
||||||
|
LogUtil.log(TAG,"开启成功")
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onFailure(p0: IDJIError) {
|
||||||
|
LogUtil.log(TAG,"开启失败"+p0)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
val leDsSettings = LEDsSettings()
|
||||||
|
leDsSettings.setNavigationLEDsOn(false)
|
||||||
|
KeyManager.getInstance().setValue<LEDsSettings?>(
|
||||||
|
KeyTools.createKey<LEDsSettings?>(FlightControllerKey.KeyLEDsSettings),
|
||||||
|
leDsSettings,
|
||||||
|
object : CompletionCallback {
|
||||||
|
override fun onSuccess() {
|
||||||
|
LogUtil.log(TAG, "夜航灯关闭成功")
|
||||||
|
}
|
||||||
|
|
||||||
|
override fun onFailure(idjiError: IDJIError) {
|
||||||
|
LogUtil.log(TAG, "夜航灯关闭失败")
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
|
LogUtil.log(TAG,"自定义推流方式:"+PreferenceUtils.getInstance().customStreamType)
|
||||||
Handler().postDelayed(Runnable {
|
Handler().postDelayed(Runnable {
|
||||||
|
if (PreferenceUtils.getInstance().customStreamType==1){
|
||||||
|
StreamManager.getInstance()
|
||||||
|
.startLiveWithRTSP()
|
||||||
|
}else if (PreferenceUtils.getInstance().customStreamType==2){
|
||||||
|
StreamManager.getInstance()
|
||||||
|
.startLiveWithCustom()
|
||||||
|
}else {
|
||||||
|
StreamManager.getInstance()
|
||||||
|
.startLiveWithCustom()
|
||||||
|
}
|
||||||
|
|
||||||
|
}, 5000)
|
||||||
MissionV3Manager.getInstance().initMissionManager()
|
LogUtil.log(TAG,"推流类型:"+PreferenceUtils.getInstance().customStreamType)
|
||||||
FlightManager.getInstance().initFlightInfo()
|
|
||||||
BatteryManager.getInstance().initBatteryInfo()
|
|
||||||
StickManager.getInstance().initStickInfo()
|
|
||||||
AlternateLandingManager.getInstance().initAlterLandingInfo()
|
|
||||||
OSDManager.getInstance().initOsd()
|
|
||||||
FlightTaskProgressManager.getInstance().initFlightTaskProgress()
|
|
||||||
MediaManager.getInstance().init()
|
|
||||||
StreamManager.getInstance().initStreamManager()
|
|
||||||
|
|
||||||
GimbalManager.getInstance().initGimbalInfo()
|
|
||||||
//负载
|
|
||||||
PayloadWidgetManager.getInstance().initPayloadInfo()
|
|
||||||
//初始化上报
|
|
||||||
LTEManager.getInstance().initLTEInfo()
|
|
||||||
WirelessLinkManager.getInstance().initWirelessLink()
|
|
||||||
CameraManager.getInstance().initCameraInfo()
|
|
||||||
//tts
|
|
||||||
SpeakerManager.getInstance().initMegaphoneInfo()
|
|
||||||
LEDsSettingsManager.getInstance().initLEDsInfo()
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
if (PreferenceUtils.getInstance().customStreamType == 1) {
|
|
||||||
StreamManager.getInstance()
|
|
||||||
.startLiveWithRTSP()
|
|
||||||
|
|
||||||
} else if (PreferenceUtils.getInstance().customStreamType == 2) {
|
|
||||||
StreamManager.getInstance()
|
|
||||||
.startLiveWithCustom()
|
|
||||||
} else {
|
|
||||||
StreamManager.getInstance()
|
|
||||||
.startLiveWithCustom()
|
|
||||||
}
|
|
||||||
|
|
||||||
}, 5000)
|
|
||||||
LogUtil.log(TAG, "推流类型:" + PreferenceUtils.getInstance().customStreamType)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
@SuppressLint("SuspiciousIndentation")
|
@SuppressLint("SuspiciousIndentation")
|
||||||
private fun initCameraStream() {
|
private fun initCameraStream() {
|
||||||
|
|
||||||
|
|
@ -720,25 +666,25 @@ open class MainActivity : BaseActivity() {
|
||||||
ComponentIndexType.FPV,
|
ComponentIndexType.FPV,
|
||||||
ICameraStreamManager.FrameFormat.YUV420_888
|
ICameraStreamManager.FrameFormat.YUV420_888
|
||||||
) { frameData, _, _, width, height, _ ->
|
) { frameData, _, _, width, height, _ ->
|
||||||
Movement.getInstance().isVtx = true
|
Movement.getInstance().isVtx=true
|
||||||
//检测到图传
|
//检测到图传
|
||||||
streamReceive = true
|
streamReceive=true
|
||||||
// if (shouldExecute) {
|
// if (shouldExecute) {
|
||||||
if (startArucoType == 1) {
|
if (startArucoType == 1) {
|
||||||
ApronArucoDetect.getInstance()?.detectArucoTags(
|
ApronArucoDetect.getInstance()?.detectArucoTags(
|
||||||
height,
|
height,
|
||||||
width,
|
width,
|
||||||
frameData,
|
frameData,
|
||||||
dictionary
|
dictionary
|
||||||
)
|
)
|
||||||
} else if (startArucoType == 2) {
|
} else if (startArucoType == 2) {
|
||||||
AlternateArucoDetect.getInstance()?.detectArucoTags(
|
AlternateArucoDetect.getInstance()?.detectArucoTags(
|
||||||
height,
|
height,
|
||||||
width,
|
width,
|
||||||
frameData,
|
frameData,
|
||||||
dictionary
|
dictionary
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
// }
|
// }
|
||||||
// shouldExecute = !shouldExecute
|
// shouldExecute = !shouldExecute
|
||||||
}
|
}
|
||||||
|
|
@ -792,7 +738,7 @@ open class MainActivity : BaseActivity() {
|
||||||
ApronArucoDetect.getInstance().setDetectedBigMarkers()
|
ApronArucoDetect.getInstance().setDetectedBigMarkers()
|
||||||
DroneHelper.getInstance().setGimbalPitchDegree()
|
DroneHelper.getInstance().setGimbalPitchDegree()
|
||||||
//每次触发识别二维码时,为避免获取控制权失败,使多次获取控制权
|
//每次触发识别二维码时,为避免获取控制权失败,使多次获取控制权
|
||||||
DroneHelper.getInstance().isVirtualStickEnable = false
|
DroneHelper.getInstance().isVirtualStickEnable=false
|
||||||
DroneHelper.getInstance().setVerticalModeToVelocity()
|
DroneHelper.getInstance().setVerticalModeToVelocity()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
@ -831,48 +777,24 @@ open class MainActivity : BaseActivity() {
|
||||||
)
|
)
|
||||||
DroneHelper.getInstance().setGimbalPitchDegree()
|
DroneHelper.getInstance().setGimbalPitchDegree()
|
||||||
//每次触发识别二维码时,为避免获取控制权失败,使多次获取控制权
|
//每次触发识别二维码时,为避免获取控制权失败,使多次获取控制权
|
||||||
DroneHelper.getInstance().isVirtualStickEnable = false
|
DroneHelper.getInstance().isVirtualStickEnable=false
|
||||||
DroneHelper.getInstance().setVerticalModeToVelocity()
|
DroneHelper.getInstance().setVerticalModeToVelocity()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
FLAG_DOWN_LAND -> {
|
FLAG_DOWN_LAND ->
|
||||||
VirtualStickManager.getInstance().setVirtualStickAdvancedModeEnabled(false)
|
KeyManager.getInstance().performAction<EmptyMsg>(
|
||||||
|
KeyTools.createKey<EmptyMsg, EmptyMsg>(FlightControllerKey.KeyStartAutoLanding),
|
||||||
VirtualStickManager.getInstance().disableVirtualStick(object : CompletionCallback {
|
object : CommonCallbacks.CompletionCallbackWithParam<EmptyMsg?> {
|
||||||
override fun onSuccess() {
|
override fun onSuccess(emptyMsg: EmptyMsg?) {
|
||||||
LogUtil.log(TAG, "控制取消成功")
|
startArucoType = 0
|
||||||
VirtualStickManager.getInstance().setVirtualStickAdvancedModeEnabled(false)
|
LogUtil.log(TAG, "自动降落调用成功")
|
||||||
|
}
|
||||||
KeyManager.getInstance().performAction<EmptyMsg>(
|
|
||||||
KeyTools.createKey<EmptyMsg, EmptyMsg>(FlightControllerKey.KeyStartAutoLanding),
|
|
||||||
object : CommonCallbacks.CompletionCallbackWithParam<EmptyMsg?> {
|
|
||||||
override fun onSuccess(emptyMsg: EmptyMsg?) {
|
|
||||||
startArucoType = 0
|
|
||||||
LogUtil.log(TAG, "自动降落调用成功")
|
|
||||||
}
|
|
||||||
override fun onFailure(error: IDJIError) {
|
|
||||||
LogUtil.log(TAG, "自动降落调用失败${error.description()}")
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
override fun onFailure(error: IDJIError) {
|
|
||||||
LogUtil.log(TAG, "拖动控制权取消成功")
|
|
||||||
KeyManager.getInstance().performAction<EmptyMsg>(
|
|
||||||
KeyTools.createKey<EmptyMsg, EmptyMsg>(FlightControllerKey.KeyStartAutoLanding),
|
|
||||||
object : CommonCallbacks.CompletionCallbackWithParam<EmptyMsg?> {
|
|
||||||
override fun onSuccess(emptyMsg: EmptyMsg?) {
|
|
||||||
startArucoType = 0
|
|
||||||
LogUtil.log(TAG, "自动降落调用成功")
|
|
||||||
}
|
|
||||||
override fun onFailure(error: IDJIError) {
|
|
||||||
LogUtil.log(TAG, "自动降落调用失败${error.description()}")
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
})
|
|
||||||
}
|
|
||||||
|
|
||||||
|
override fun onFailure(error: IDJIError) {
|
||||||
|
LogUtil.log(TAG, "自动降落调用失败${error.description()}")
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
FLAG_STOP_ARUCO ->
|
FLAG_STOP_ARUCO ->
|
||||||
startArucoType = 0
|
startArucoType = 0
|
||||||
|
|
@ -882,6 +804,9 @@ open class MainActivity : BaseActivity() {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
private fun setViewVisibilityWithCleanMode() {
|
private fun setViewVisibilityWithCleanMode() {
|
||||||
if (PreferenceUtils.getInstance().isCleanMode) {
|
if (PreferenceUtils.getInstance().isCleanMode) {
|
||||||
fpvInteractionWidget?.visibility = View.GONE
|
fpvInteractionWidget?.visibility = View.GONE
|
||||||
|
|
|
||||||
|
|
@ -43,6 +43,43 @@ public abstract class BaseManager {
|
||||||
public String TAG = getClass().getSimpleName();
|
public String TAG = getClass().getSimpleName();
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 推送psdkmovement
|
||||||
|
* @param
|
||||||
|
*/
|
||||||
|
public void sendpsdkinfo2Server(){
|
||||||
|
try {
|
||||||
|
if (MqttManager.getInstance().mqttAndroidClient.isConnected()) {
|
||||||
|
MessageReply messageReply = new MessageReply();
|
||||||
|
MessageReply.Data data=new MessageReply.Data();
|
||||||
|
data.setResult(0);
|
||||||
|
messageReply.setData(data);
|
||||||
|
MqttMessage mqttMessage = new MqttMessage(new Gson().toJson(messageReply).getBytes("UTF-8"));
|
||||||
|
mqttMessage.setQos(0);
|
||||||
|
MqttManager.getInstance().mqttAndroidClient.publish(AMSConfig.UP_UAV_SERVICES_REPLY, mqttMessage);
|
||||||
|
} else {
|
||||||
|
LogUtil.log(TAG, "回复失败:mqtt 未连接");
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
LogUtil.log(TAG, "回复异常:" + e.toString());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
/**
|
||||||
|
* 推送psdkreply
|
||||||
|
* @param
|
||||||
|
*/
|
||||||
|
public void sendpsdkreply2server(){
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 响应reply
|
* 响应reply
|
||||||
* @param entity
|
* @param entity
|
||||||
|
|
|
||||||
|
|
@ -5,6 +5,8 @@ import android.os.Handler;
|
||||||
import android.os.Looper;
|
import android.os.Looper;
|
||||||
import android.util.Log;
|
import android.util.Log;
|
||||||
|
|
||||||
|
import androidx.annotation.NonNull;
|
||||||
|
|
||||||
import com.aros.apron.app.ApronApp;
|
import com.aros.apron.app.ApronApp;
|
||||||
import com.aros.apron.base.BaseManager;
|
import com.aros.apron.base.BaseManager;
|
||||||
import com.aros.apron.constant.AMSConfig;
|
import com.aros.apron.constant.AMSConfig;
|
||||||
|
|
@ -37,6 +39,14 @@ import org.eclipse.paho.client.mqttv3.IMqttDeliveryToken;
|
||||||
import org.eclipse.paho.client.mqttv3.MqttCallbackExtended;
|
import org.eclipse.paho.client.mqttv3.MqttCallbackExtended;
|
||||||
import org.eclipse.paho.client.mqttv3.MqttMessage;
|
import org.eclipse.paho.client.mqttv3.MqttMessage;
|
||||||
|
|
||||||
|
import dji.sdk.keyvalue.key.FlightControllerKey;
|
||||||
|
import dji.sdk.keyvalue.key.KeyTools;
|
||||||
|
import dji.sdk.keyvalue.value.common.ComponentIndexType;
|
||||||
|
import dji.sdk.keyvalue.value.flightcontroller.LEDsSettings;
|
||||||
|
import dji.v5.common.callback.CommonCallbacks;
|
||||||
|
import dji.v5.common.error.IDJIError;
|
||||||
|
import dji.v5.manager.KeyManager;
|
||||||
|
|
||||||
public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
|
public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
|
||||||
|
|
||||||
private String TAG = "MqttCallBack";
|
private String TAG = "MqttCallBack";
|
||||||
|
|
@ -56,15 +66,12 @@ public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// 心跳检测
|
// 心跳检测
|
||||||
private volatile long lastDrControlTime = 0;
|
private volatile long lastDrControlTime = 0;
|
||||||
private final Handler vsHandler = new Handler(Looper.getMainLooper());
|
private final Handler vsHandler = new Handler(Looper.getMainLooper());
|
||||||
private Runnable vsTimeoutCheck;
|
private Runnable vsTimeoutCheck;
|
||||||
private static final long TIMEOUT_MS = 500; // 500ms 无数据触发
|
private static final long TIMEOUT_MS = 500; // 500ms 无数据触发
|
||||||
|
|
||||||
|
|
||||||
/** 每次收到控制指令都调 */
|
/** 每次收到控制指令都调 */
|
||||||
private void resetVirtualStickHeartbeat() {
|
private void resetVirtualStickHeartbeat() {
|
||||||
lastDrControlTime = System.currentTimeMillis();
|
lastDrControlTime = System.currentTimeMillis();
|
||||||
|
|
@ -108,257 +115,270 @@ public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
|
||||||
}
|
}
|
||||||
MessageDown message = new Gson().fromJson(jsonString, MessageDown.class);
|
MessageDown message = new Gson().fromJson(jsonString, MessageDown.class);
|
||||||
//LogUtil.log(TAG,message.getMethod());
|
//LogUtil.log(TAG,message.getMethod());
|
||||||
switch (message.getMethod()) {
|
|
||||||
case Constant.PILOT_ON:
|
if(topic.equals(AMSConfig.DOWN_UAV_PSDK_EVENT)){
|
||||||
|
//负载设置控件
|
||||||
|
|
||||||
|
}else {
|
||||||
|
switch (message.getMethod()) {
|
||||||
|
case Constant.PILOT_ON:
|
||||||
// LogUtil.log(TAG, "收到:遥控器是否开机" + jsonString);
|
// LogUtil.log(TAG, "收到:遥控器是否开机" + jsonString);
|
||||||
SystemManager.getInstance().checkRemoteControlPowerStatus(message);
|
SystemManager.getInstance().checkRemoteControlPowerStatus(message);
|
||||||
break;
|
break;
|
||||||
case Constant.AIRCRAFT_ON:
|
case Constant.AIRCRAFT_ON:
|
||||||
// LogUtil.log(TAG, "收到:飞机是否开机" + jsonString);
|
// LogUtil.log(TAG, "收到:飞机是否开机" + jsonString);
|
||||||
SystemManager.getInstance().checkAircraftPowerStatus(message);
|
SystemManager.getInstance().checkAircraftPowerStatus(message);
|
||||||
break;
|
break;
|
||||||
case Constant.MEDIA_UPLOAD_COMPLETE:
|
case Constant.MEDIA_UPLOAD_COMPLETE:
|
||||||
LogUtil.log(TAG, "收到:文件上传是否结束" + jsonString);
|
LogUtil.log(TAG, "收到:文件上传是否结束" + jsonString);
|
||||||
SystemManager.getInstance().aircraftStoredReply(message);
|
SystemManager.getInstance().aircraftStoredReply(message);
|
||||||
break;
|
break;
|
||||||
case Constant.OPEN_SLOW_PROPELLER_ROTATION:
|
case Constant.OPEN_SLOW_PROPELLER_ROTATION:
|
||||||
LogUtil.log(TAG, "收到:开启低速转浆" + jsonString);
|
LogUtil.log(TAG, "收到:开启低速转浆" + jsonString);
|
||||||
FlightManager.getInstance().startPropellerRotation(message);
|
FlightManager.getInstance().startPropellerRotation(message);
|
||||||
break;
|
break;
|
||||||
case Constant.CLOSE_SLOW_PROPELLER_ROTATION:
|
case Constant.CLOSE_SLOW_PROPELLER_ROTATION:
|
||||||
LogUtil.log(TAG, "收到:停止低速转浆" + jsonString);
|
LogUtil.log(TAG, "收到:停止低速转浆" + jsonString);
|
||||||
FlightManager.getInstance().stopPropellerRotation(message);
|
FlightManager.getInstance().stopPropellerRotation(message);
|
||||||
break;
|
break;
|
||||||
case Constant.LIVE_START_PUSH:
|
case Constant.LIVE_START_PUSH:
|
||||||
LogUtil.log(TAG, "收到:开始直播" + jsonString);
|
LogUtil.log(TAG, "收到:开始直播" + jsonString);
|
||||||
StreamManager.getInstance().startLive(message);
|
StreamManager.getInstance().startLive(message);
|
||||||
break;
|
break;
|
||||||
case Constant.LIVE_SET_QUALITY:
|
case Constant.LIVE_SET_QUALITY:
|
||||||
LogUtil.log(TAG, "收到:设置直播清晰度" + jsonString);
|
LogUtil.log(TAG, "收到:设置直播清晰度" + jsonString);
|
||||||
StreamManager.getInstance().setLiveStreamQuality(message);
|
StreamManager.getInstance().setLiveStreamQuality(message);
|
||||||
break;
|
break;
|
||||||
case Constant.LIVE_LENS_CHANGE:
|
case Constant.LIVE_LENS_CHANGE:
|
||||||
LogUtil.log(TAG, "收到:切换直播镜头" + jsonString);
|
LogUtil.log(TAG, "收到:切换直播镜头" + jsonString);
|
||||||
CameraManager.getInstance().setCameraVideoStreamSource(message);
|
CameraManager.getInstance().setCameraVideoStreamSource(message);
|
||||||
break;
|
break;
|
||||||
case Constant.FLIGHTTASK_EXECUTE:
|
case Constant.FLIGHTTASK_EXECUTE:
|
||||||
LogUtil.log(TAG, "收到:航线" + jsonString);
|
LogUtil.log(TAG, "收到:航线" + jsonString);
|
||||||
//关闭避障
|
//关闭避障
|
||||||
PerceptionManager.getInstance().setPerceptionEnable(false);
|
PerceptionManager.getInstance().setPerceptionEnable(false);
|
||||||
PerceptionManager.getInstance().setObstacleAvoidanceHorizontalEnabled(false);
|
PerceptionManager.getInstance().setObstacleAvoidanceHorizontalEnabled(false);
|
||||||
//设置modecode
|
//设置modecode
|
||||||
Movement.getInstance().setMode_code(1);
|
Movement.getInstance().setMode_code(1);
|
||||||
sendFlightTaskProgress2Server();
|
sendFlightTaskProgress2Server();
|
||||||
//设置标志为
|
//设置标志为
|
||||||
Movement.getInstance().setFlightmode(1);
|
Movement.getInstance().setFlightmode(1);
|
||||||
MissionV3Manager.getInstance().taskExecute(message);
|
MissionV3Manager.getInstance().taskExecute(message);
|
||||||
break;
|
break;
|
||||||
case Constant.FLIGHTTASK_PAUSE:
|
case Constant.FLIGHTTASK_PAUSE:
|
||||||
LogUtil.log(TAG, "收到:航线暂停" + jsonString);
|
LogUtil.log(TAG, "收到:航线暂停" + jsonString);
|
||||||
MissionV3Manager.getInstance().pauseMission(message);
|
MissionV3Manager.getInstance().pauseMission(message);
|
||||||
break;
|
break;
|
||||||
case Constant.FLIGHTTASK_RECOVERY:
|
case Constant.FLIGHTTASK_RECOVERY:
|
||||||
LogUtil.log(TAG, "收到:航线继续" + jsonString);
|
LogUtil.log(TAG, "收到:航线继续" + jsonString);
|
||||||
clearVirtualStickHeartbeat();
|
clearVirtualStickHeartbeat();
|
||||||
MissionV3Manager.getInstance().resumeMission(message);
|
MissionV3Manager.getInstance().resumeMission(message);
|
||||||
break;
|
break;
|
||||||
case Constant.RETURN_HOME:
|
case Constant.RETURN_HOME:
|
||||||
LogUtil.log(TAG, "收到:返航" + jsonString);
|
LogUtil.log(TAG, "收到:返航" + jsonString);
|
||||||
//自动返航 (如果调用方法失败了 这个设置就有一个问题但是为了方便看懂我就放这里了没放成功的回调里面)
|
//自动返航 (如果调用方法失败了 这个设置就有一个问题但是为了方便看懂我就放这里了没放成功的回调里面)
|
||||||
Movement.getInstance().setMode_code(9);
|
Movement.getInstance().setMode_code(9);
|
||||||
sendFlightTaskProgress2Server();
|
sendFlightTaskProgress2Server();
|
||||||
FlightManager.getInstance().startGoHome(message);
|
FlightManager.getInstance().startGoHome(message);
|
||||||
break;
|
break;
|
||||||
case Constant.RETURN_HOME_CANCEL:
|
case Constant.INBOUND:
|
||||||
LogUtil.log(TAG, "收到:取消返航" + jsonString);
|
LogUtil.log(TAG, "收到:服务端响应入库" + jsonString);
|
||||||
FlightManager.getInstance().stopGoHome(message);
|
ApronExecutionStatus.getInstance().setServerReplyDockIn(true);
|
||||||
break;
|
break;
|
||||||
case Constant.CLOSE_DOOR:
|
case Constant.RETURN_HOME_CANCEL:
|
||||||
LogUtil.log(TAG, "收到:服务端响应关舱门" + jsonString);
|
LogUtil.log(TAG, "收到:取消返航" + jsonString);
|
||||||
|
FlightManager.getInstance().stopGoHome(message);
|
||||||
|
break;
|
||||||
|
case Constant.CLOSE_DOOR:
|
||||||
|
LogUtil.log(TAG, "收到:服务端响应关舱门" + jsonString);
|
||||||
// ApronExecutionStatus.getInstance().setServerReplyDockIn(true);
|
// ApronExecutionStatus.getInstance().setServerReplyDockIn(true);
|
||||||
break;
|
break;
|
||||||
case Constant.OPEN_DOOR:
|
case Constant.OPEN_DOOR:
|
||||||
LogUtil.log(TAG, "收到:服务端响应开舱门" + jsonString);
|
LogUtil.log(TAG, "收到:服务端响应开舱门" + jsonString);
|
||||||
ApronExecutionStatus.getInstance().setServerReplyDockOpen(true);
|
ApronExecutionStatus.getInstance().setServerReplyDockOpen(true);
|
||||||
break;
|
break;
|
||||||
case Constant.TASK_FAIL:
|
case Constant.TASK_FAIL:
|
||||||
LogUtil.log(TAG, "收到:服务端响应TaskFail" + jsonString);
|
LogUtil.log(TAG, "收到:服务端响应TaskFail" + jsonString);
|
||||||
ApronExecutionStatus.getInstance().setServerReplyTaskFail(true);
|
ApronExecutionStatus.getInstance().setServerReplyTaskFail(true);
|
||||||
break;
|
break;
|
||||||
case Constant.INBOUND:
|
|
||||||
LogUtil.log(TAG, "收到:服务端响应入库" + jsonString);
|
|
||||||
ApronExecutionStatus.getInstance().setServerReplyDockIn(true);
|
|
||||||
break;
|
|
||||||
case Constant.TAKEOFF_TO_POINT:
|
|
||||||
LogUtil.log(TAG, "收到:一键起飞" + jsonString);
|
|
||||||
//设置modecode
|
|
||||||
Movement.getInstance().setMode_code(1);
|
|
||||||
sendFlightTaskProgress2Server();
|
|
||||||
//设置标志为指令飞行
|
|
||||||
Movement.getInstance().setFlightmode(2);
|
|
||||||
TakeoffProgressScheduler.getInstance().startReporting();
|
|
||||||
|
|
||||||
TakeOffToPointManager.getInstance().taskExecute(message);
|
case Constant.TAKEOFF_TO_POINT:
|
||||||
break;
|
LogUtil.log(TAG, "收到:一键起飞" + jsonString);
|
||||||
case Constant.FLY_TO_POINT:
|
//设置modecode
|
||||||
LogUtil.log(TAG, "收到:飞向目标点" + jsonString);
|
Movement.getInstance().setMode_code(1);
|
||||||
FlyToPointManager.getInstance().taskExecute(message);
|
sendFlightTaskProgress2Server();
|
||||||
break;
|
//设置标志为指令飞行
|
||||||
case Constant.FLY_TO_POINT_STOP:
|
Movement.getInstance().setFlightmode(2);
|
||||||
LogUtil.log(TAG, "收到:结束 flyto 飞向目标点任务" + jsonString);
|
TakeoffProgressScheduler.getInstance().startReporting();
|
||||||
FlyToPointManager.getInstance().stopMission(message);
|
|
||||||
break;
|
TakeOffToPointManager.getInstance().taskExecute(message);
|
||||||
case Constant.FLY_TO_POINT_STOP_UPDATE:
|
break;
|
||||||
LogUtil.log(TAG, "收到:更新 flyto 目标点" + jsonString);
|
case Constant.FLY_TO_POINT:
|
||||||
break;
|
LogUtil.log(TAG, "收到:飞向目标点" + jsonString);
|
||||||
case Constant.FLIGHT_AUTHORITY_GRAB:
|
FlyToPointManager.getInstance().taskExecute(message);
|
||||||
LogUtil.log(TAG, "收到:飞行控制权抢夺" + jsonString);
|
break;
|
||||||
StickManager.getInstance().enableVirtualStick(message);
|
case Constant.FLY_TO_POINT_STOP:
|
||||||
break;
|
LogUtil.log(TAG, "收到:结束 flyto 飞向目标点任务" + jsonString);
|
||||||
case Constant.PAYLOAD_AUTHORITY_GRAB:
|
FlyToPointManager.getInstance().stopMission(message);
|
||||||
LogUtil.log(TAG, "收到:负载控制权抢夺" + jsonString);
|
break;
|
||||||
GimbalManager.getInstance().payloadAuthorityGrab(message);
|
case Constant.FLY_TO_POINT_STOP_UPDATE:
|
||||||
break;
|
LogUtil.log(TAG, "收到:更新 flyto 目标点" + jsonString);
|
||||||
case Constant.DRC_MODE_ENTER:
|
break;
|
||||||
LogUtil.log(TAG, "收到:进入指令飞行控制模式" + jsonString);
|
case Constant.FLIGHT_AUTHORITY_GRAB:
|
||||||
StickManager.getInstance().setVirtualStickModeEnabled(message);
|
LogUtil.log(TAG, "收到:飞行控制权抢夺" + jsonString);
|
||||||
break;
|
StickManager.getInstance().enableVirtualStick(message);
|
||||||
|
break;
|
||||||
|
case Constant.PAYLOAD_AUTHORITY_GRAB:
|
||||||
|
LogUtil.log(TAG, "收到:负载控制权抢夺" + jsonString);
|
||||||
|
GimbalManager.getInstance().payloadAuthorityGrab(message);
|
||||||
|
break;
|
||||||
|
case Constant.DRC_MODE_ENTER:
|
||||||
|
LogUtil.log(TAG, "收到:进入指令飞行控制模式" + jsonString);
|
||||||
|
StickManager.getInstance().setVirtualStickModeEnabled(message);
|
||||||
|
break;
|
||||||
//退出控制权时,要自动触发续飞航线
|
//退出控制权时,要自动触发续飞航线
|
||||||
case Constant.DRC_MODE_EXIT:
|
case Constant.DRC_MODE_EXIT:
|
||||||
LogUtil.log(TAG, "收到:退出指令飞行控制模式" + jsonString);
|
LogUtil.log(TAG, "收到:退出指令飞行控制模式" + jsonString);
|
||||||
//清理这个时间戳循环
|
//清理这个时间戳循环
|
||||||
clearVirtualStickHeartbeat();
|
clearVirtualStickHeartbeat();
|
||||||
StickManager.getInstance().disableVirtualStick(message);
|
StickManager.getInstance().disableVirtualStick(message);
|
||||||
break;
|
break;
|
||||||
case Constant.DRONE_CONTROL:
|
case Constant.DRONE_CONTROL:
|
||||||
LogUtil.log(TAG, "收到:DRC-飞行控制" + jsonString);
|
LogUtil.log(TAG, "收到:DRC-飞行控制" + jsonString);
|
||||||
resetVirtualStickHeartbeat();
|
resetVirtualStickHeartbeat();
|
||||||
StickManager.getInstance().sendVirtualStickAdvancedParam(message);
|
StickManager.getInstance().sendVirtualStickAdvancedParam(message);
|
||||||
break;
|
break;
|
||||||
case Constant.DRONE_EMERGENCY_STOP:
|
case Constant.DRONE_EMERGENCY_STOP:
|
||||||
LogUtil.log(TAG, "收到:DRC-飞行器急停" + jsonString);
|
LogUtil.log(TAG, "收到:DRC-飞行器急停" + jsonString);
|
||||||
FlightManager.getInstance().emergencyHover(message);
|
FlightManager.getInstance().emergencyHover(message);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_MODE_SWITCH:
|
case Constant.CAMERA_MODE_SWITCH:
|
||||||
LogUtil.log(TAG, "收到:负载控制—切换相机模式" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—切换相机模式" + jsonString);
|
||||||
CameraManager.getInstance().setCameraMode(message);
|
CameraManager.getInstance().setCameraMode(message);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_PHOTO_TAKE:
|
case Constant.CAMERA_PHOTO_TAKE:
|
||||||
LogUtil.log(TAG, "收到:负载控制—开始拍照" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—开始拍照" + jsonString);
|
||||||
CameraManager.getInstance().startShootPhoto(message);
|
CameraManager.getInstance().startShootPhoto(message);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_PHOTO_STOP:
|
case Constant.CAMERA_PHOTO_STOP:
|
||||||
LogUtil.log(TAG, "收到:负载控制—停止拍照" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—停止拍照" + jsonString);
|
||||||
CameraManager.getInstance().stopShootPhoto(message);
|
CameraManager.getInstance().stopShootPhoto(message);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_RECORDING_START:
|
case Constant.CAMERA_RECORDING_START:
|
||||||
LogUtil.log(TAG, "收到:负载控制—开始录像" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—开始录像" + jsonString);
|
||||||
CameraManager.getInstance().startRecordVideo(message);
|
CameraManager.getInstance().startRecordVideo(message);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_RECORDING_STOP:
|
case Constant.CAMERA_RECORDING_STOP:
|
||||||
LogUtil.log(TAG, "收到:负载控制—停止录像" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—停止录像" + jsonString);
|
||||||
CameraManager.getInstance().stopRecordVideo(message);
|
CameraManager.getInstance().stopRecordVideo(message);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_SCREEN_DRAG:
|
case Constant.CAMERA_SCREEN_DRAG:
|
||||||
LogUtil.log(TAG, "收到:负载控制—画面拖动控制" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—画面拖动控制" + jsonString);
|
||||||
GimbalManager.getInstance().camera_screen_drag(message);
|
GimbalManager.getInstance().camera_screen_drag(message);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_AIM:
|
case Constant.CAMERA_AIM:
|
||||||
LogUtil.log(TAG, "收到:负载控制—双击成为 AIM" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—双击成为 AIM" + jsonString);
|
||||||
CameraManager.getInstance().tapZoomAtTarget(message);
|
CameraManager.getInstance().tapZoomAtTarget(message);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_FOCAL_LENGTH_SET:
|
case Constant.CAMERA_FOCAL_LENGTH_SET:
|
||||||
LogUtil.log(TAG, "收到:负载控制—变焦" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—变焦" + jsonString);
|
||||||
CameraManager.getInstance().setCameraZoomRatios(message);
|
CameraManager.getInstance().setCameraZoomRatios(message);
|
||||||
break;
|
break;
|
||||||
case Constant.GIMBAL_RESET:
|
case Constant.GIMBAL_RESET:
|
||||||
LogUtil.log(TAG, "收到:负载控制—重置云台" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—重置云台" + jsonString);
|
||||||
GimbalManager.getInstance().gimbalReset(message);
|
GimbalManager.getInstance().gimbalReset(message);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_LOOK_AT:
|
case Constant.CAMERA_LOOK_AT:
|
||||||
LogUtil.log(TAG, "收到:负载控制—Look At" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—Look At" + jsonString);
|
||||||
GimbalManager.getInstance().gimbalLookAt(message);
|
GimbalManager.getInstance().gimbalLookAt(message);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_SCREEN_SPLIT:
|
case Constant.CAMERA_SCREEN_SPLIT:
|
||||||
LogUtil.log(TAG, "收到:负载控制—分屏" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—分屏" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.PHOTO_STORAGE_SET:
|
case Constant.PHOTO_STORAGE_SET:
|
||||||
SystemManager.getInstance().checkRemoteControlPowerStatus(message);
|
SystemManager.getInstance().checkRemoteControlPowerStatus(message);
|
||||||
// LogUtil.log(TAG, "收到:负载控制—照片存储设置" + jsonString);
|
// LogUtil.log(TAG, "收到:负载控制—照片存储设置" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.VIDEO_STORAGE_SET:
|
case Constant.VIDEO_STORAGE_SET:
|
||||||
SystemManager.getInstance().checkRemoteControlPowerStatus(message);
|
SystemManager.getInstance().checkRemoteControlPowerStatus(message);
|
||||||
// LogUtil.log(TAG, "收到:负载控制—视频存储设置" + jsonString);
|
// LogUtil.log(TAG, "收到:负载控制—视频存储设置" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_EXPOSURE_MODE_SET:
|
case Constant.CAMERA_EXPOSURE_MODE_SET:
|
||||||
LogUtil.log(TAG, "收到:负载控制—相机曝光模式设置" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—相机曝光模式设置" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_EXPOSURE_SET:
|
case Constant.CAMERA_EXPOSURE_SET:
|
||||||
LogUtil.log(TAG, "收到:负载控制—相机曝光值调节" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—相机曝光值调节" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_FOCUS_MODE_SET:
|
case Constant.CAMERA_FOCUS_MODE_SET:
|
||||||
LogUtil.log(TAG, "收到:负载控制—相机对焦模式" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—相机对焦模式" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_FOCUS_MODE_VALUE_SET:
|
case Constant.CAMERA_FOCUS_MODE_VALUE_SET:
|
||||||
LogUtil.log(TAG, "收到:负载控制—相机对焦值设置" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—相机对焦值设置" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_POINT_FOCUS_ACTION:
|
case Constant.CAMERA_POINT_FOCUS_ACTION:
|
||||||
LogUtil.log(TAG, "收到:负载控制—点对焦" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—点对焦" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.IR_METERING_MODE_SET:
|
case Constant.IR_METERING_MODE_SET:
|
||||||
LogUtil.log(TAG, "收到:负载控制—红外测温模式设置" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—红外测温模式设置" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.IR_METERING_POINT_SET:
|
case Constant.IR_METERING_POINT_SET:
|
||||||
LogUtil.log(TAG, "收到:负载控制—红外测温点设置" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—红外测温点设置" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.IR_METERING_AREA_SET:
|
case Constant.IR_METERING_AREA_SET:
|
||||||
LogUtil.log(TAG, "收到:负载控制—红外测温区域设置" + jsonString);
|
LogUtil.log(TAG, "收到:负载控制—红外测温区域设置" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.POI_MODE_ENTER:
|
case Constant.POI_MODE_ENTER:
|
||||||
LogUtil.log(TAG, "收到:飞行控制—进入 POI 环绕模式" + jsonString);
|
LogUtil.log(TAG, "收到:飞行控制—进入 POI 环绕模式" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.POI_MODE_EXIT:
|
case Constant.POI_MODE_EXIT:
|
||||||
LogUtil.log(TAG, "收到:飞行控制—退出 POI 环绕模式" + jsonString);
|
LogUtil.log(TAG, "收到:飞行控制—退出 POI 环绕模式" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.POI_CIRCLE_SPEED_SET:
|
case Constant.POI_CIRCLE_SPEED_SET:
|
||||||
LogUtil.log(TAG, "收到:飞行控制—POI 环绕速度设置" + jsonString);
|
LogUtil.log(TAG, "收到:飞行控制—POI 环绕速度设置" + jsonString);
|
||||||
break;
|
break;
|
||||||
case Constant.CAMERA_FRAME_ZOOM:
|
case Constant.CAMERA_FRAME_ZOOM:
|
||||||
LogUtil.log(TAG, "收到:框选变焦" + jsonString);
|
LogUtil.log(TAG, "收到:框选变焦" + jsonString);
|
||||||
CameraManager.getInstance().camera_frame_zoom(message);
|
CameraManager.getInstance().camera_frame_zoom(message);
|
||||||
break;
|
break;
|
||||||
case Constant.SPEAKER_AUDIO_PLAY_START:
|
case Constant.SPEAKER_AUDIO_PLAY_START:
|
||||||
LogUtil.log(TAG, "收到:喊话器-开始播放音频" + jsonString);
|
LogUtil.log(TAG, "收到:喊话器-开始播放音频" + jsonString);
|
||||||
SpeakerProgressReporter.getInstance().startAudioReport(2);
|
SpeakerProgressReporter.getInstance().startAudioReport(2);
|
||||||
SpeakerManager.getInstance().speakerAudioPlayStart(message);
|
SpeakerManager.getInstance().speakerAudioPlayStart(message);
|
||||||
break;
|
break;
|
||||||
case Constant.SPEAKER_TTS_PLAY_START:
|
case Constant.SPEAKER_TTS_PLAY_START:
|
||||||
LogUtil.log(TAG, "收到:喊话器-开始播放TTS文本" + jsonString);
|
LogUtil.log(TAG, "收到:喊话器-开始播放TTS文本" + jsonString);
|
||||||
SpeakerProgressReporter.getInstance().startTTSReport(2);
|
SpeakerProgressReporter.getInstance().startTTSReport(2);
|
||||||
SpeakerManager.getInstance().speakerTTSPlayStart(message,0);
|
SpeakerManager.getInstance().speakerTTSPlayStart(message, 0);
|
||||||
break;
|
break;
|
||||||
case Constant.SPEAKER_REPLAY:
|
case Constant.SPEAKER_REPLAY:
|
||||||
LogUtil.log(TAG, "收到:喊话器-重新播放" + jsonString);
|
LogUtil.log(TAG, "收到:喊话器-重新播放" + jsonString);
|
||||||
SpeakerManager.getInstance().speakerReply(message);
|
SpeakerManager.getInstance().speakerReply(message);
|
||||||
break;
|
break;
|
||||||
case Constant.SPEAKER_PLAY_STOP:
|
case Constant.SPEAKER_PLAY_STOP:
|
||||||
LogUtil.log(TAG, "收到:喊话器-停止播放" + jsonString);
|
LogUtil.log(TAG, "收到:喊话器-停止播放" + jsonString);
|
||||||
|
|
||||||
SpeakerManager.getInstance().speakerStop(message);
|
|
||||||
break;
|
|
||||||
case Constant.SPEAKER_PLAY_MODE_SET:
|
|
||||||
LogUtil.log(TAG, "收到:喊话器-设置播放模式" + jsonString);
|
|
||||||
SpeakerManager.getInstance().speakerPlayModeSet(message);
|
|
||||||
break;
|
|
||||||
case Constant.SPEAKER_PLAY_VOLUME_SET:
|
|
||||||
LogUtil.log(TAG, "收到:喊话器-设置音量" + jsonString);
|
|
||||||
SpeakerManager.getInstance().speakerPlayVolumeSet(message);
|
|
||||||
break;
|
|
||||||
case Constant.DRC_SPEAKER_TTS_SET:
|
|
||||||
LogUtil.log(TAG, "收到:喊话器-TTS喊话设置" + jsonString);
|
|
||||||
SpeakerManager.getInstance().speakerTTSPlayStart(message,1);
|
|
||||||
break;
|
|
||||||
|
|
||||||
|
SpeakerManager.getInstance().speakerStop(message);
|
||||||
|
break;
|
||||||
|
case Constant.SPEAKER_PLAY_MODE_SET:
|
||||||
|
LogUtil.log(TAG, "收到:喊话器-设置播放模式" + jsonString);
|
||||||
|
SpeakerManager.getInstance().speakerPlayModeSet(message);
|
||||||
|
break;
|
||||||
|
case Constant.SPEAKER_PLAY_VOLUME_SET:
|
||||||
|
LogUtil.log(TAG, "收到:喊话器-设置音量" + jsonString);
|
||||||
|
SpeakerManager.getInstance().speakerPlayVolumeSet(message);
|
||||||
|
break;
|
||||||
|
case Constant.DRC_SPEAKER_TTS_SET:
|
||||||
|
LogUtil.log(TAG, "收到:喊话器-TTS喊话设置" + jsonString);
|
||||||
|
SpeakerManager.getInstance().speakerTTSPlayStart(message, 1);
|
||||||
|
break;
|
||||||
|
case Constant.UAV_LIVE_FPV:
|
||||||
|
LogUtil.log(TAG, "收到:切换推流fpv" + jsonString);
|
||||||
|
StreamManager.getInstance().switchptsp(ComponentIndexType.FPV,message);
|
||||||
|
break;
|
||||||
|
case Constant.UAV_LIVE_CAMERA:
|
||||||
|
LogUtil.log(TAG, "收到:切换推流camera" + jsonString);
|
||||||
|
StreamManager.getInstance().switchptsp(ComponentIndexType.PORT_1,message);
|
||||||
|
break;
|
||||||
|
|
||||||
// //获取控制权
|
// //获取控制权
|
||||||
// case 60007:
|
// case 60007:
|
||||||
|
|
@ -701,6 +721,7 @@ public class MqttCallBack extends BaseManager implements MqttCallbackExtended {
|
||||||
// }
|
// }
|
||||||
// break;
|
// break;
|
||||||
|
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -75,5 +75,21 @@ public class AMSConfig {
|
||||||
*/
|
*/
|
||||||
public static String DOWN_UAV_EVENT_REPLY = "nest/uav_event_reply";
|
public static String DOWN_UAV_EVENT_REPLY = "nest/uav_event_reply";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 负载信息发送的topic
|
||||||
|
*/
|
||||||
|
|
||||||
|
public static String DOWN_UAV_PSDK_MOVEMENT = "nest/uav_psdk_movement";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 负载信息操作的topic
|
||||||
|
*/
|
||||||
|
public static String DOWN_UAV_PSDK_EVENT = "nest/uav_psdk_event";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 收到负载的回复
|
||||||
|
*/
|
||||||
|
|
||||||
|
public static String DOWN_UAV_PSDK_REPLAY = "nest/uav_psdk_reply";
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -322,6 +322,12 @@ public class Constant {
|
||||||
*/
|
*/
|
||||||
public static final String DRC_SPEAKER_TTS_SET="drc_speaker_tts_set";
|
public static final String DRC_SPEAKER_TTS_SET="drc_speaker_tts_set";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 推流切换fpv
|
||||||
|
*/
|
||||||
|
public static final String UAV_LIVE_FPV="uav_live_fpv";
|
||||||
|
/**
|
||||||
|
* 推流切换camera
|
||||||
|
*/
|
||||||
|
public static final String UAV_LIVE_CAMERA="uav_live_camera";
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -1015,6 +1015,7 @@ public class FlightManager extends BaseManager {
|
||||||
if (!isDebugMode) {
|
if (!isDebugMode) {
|
||||||
//这里可能也会触发备降点关舱门的逻辑
|
//这里可能也会触发备降点关舱门的逻辑
|
||||||
if (!PreferenceUtils.getInstance().getNeedTriggerAlterArucoLand()) {
|
if (!PreferenceUtils.getInstance().getNeedTriggerAlterArucoLand()) {
|
||||||
|
LogUtil.log(TAG,"");
|
||||||
// 发送无人机入库消息到服务器********************待修改************************
|
// 发送无人机入库消息到服务器********************待修改************************
|
||||||
ApronExecutionStatus.getInstance().setAircraftWaitShutDown(false);
|
ApronExecutionStatus.getInstance().setAircraftWaitShutDown(false);
|
||||||
DockStorageManager.getInstance().sendDockStorageMsg2Server();
|
DockStorageManager.getInstance().sendDockStorageMsg2Server();
|
||||||
|
|
|
||||||
|
|
@ -174,6 +174,7 @@ public class FlyToPointManager extends BaseManager {
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(@NonNull IDJIError error) {
|
public void onFailure(@NonNull IDJIError error) {
|
||||||
sendFailMsg2Server(message,"指点航线上传失败:"+ Utils.getIDJIErrorMsg(error));
|
sendFailMsg2Server(message,"指点航线上传失败:"+ Utils.getIDJIErrorMsg(error));
|
||||||
|
sendEvent2Server("指点航线上传失败:"+ Utils.getIDJIErrorMsg(error),2);
|
||||||
//待机
|
//待机
|
||||||
Movement.getInstance().setMode_code(0);
|
Movement.getInstance().setMode_code(0);
|
||||||
sendFlightTaskProgress2Server();
|
sendFlightTaskProgress2Server();
|
||||||
|
|
@ -210,6 +211,7 @@ public class FlyToPointManager extends BaseManager {
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(@NonNull IDJIError error) {
|
public void onFailure(@NonNull IDJIError error) {
|
||||||
sendFailMsg2Server(message,"指点航线执行失败:" + new Gson().toJson(error));
|
sendFailMsg2Server(message,"指点航线执行失败:" + new Gson().toJson(error));
|
||||||
|
sendEvent2Server("指点航线执行失败:" + new Gson().toJson(error),2);
|
||||||
//待机
|
//待机
|
||||||
Movement.getInstance().setMode_code(0);
|
Movement.getInstance().setMode_code(0);
|
||||||
sendFlightTaskProgress2Server();
|
sendFlightTaskProgress2Server();
|
||||||
|
|
|
||||||
|
|
@ -342,6 +342,19 @@ public class MissionV3Manager extends BaseManager {
|
||||||
PreferenceUtils.getInstance().setAlternatePointLat(message.getData().getAlternate_land_point().getLatitude() + "");
|
PreferenceUtils.getInstance().setAlternatePointLat(message.getData().getAlternate_land_point().getLatitude() + "");
|
||||||
PreferenceUtils.getInstance().setAlternatePointSecurityHeight(message.getData().getAlternate_land_point().getSafe_land_height() + "");
|
PreferenceUtils.getInstance().setAlternatePointSecurityHeight(message.getData().getAlternate_land_point().getSafe_land_height() + "");
|
||||||
|
|
||||||
|
//设置全局返航高度
|
||||||
|
KeyManager.getInstance().setValue(KeyTools.createKey(FlightControllerKey.KeyGoHomeHeight), message.getData().getRth_altitude(), new CommonCallbacks.CompletionCallback() {
|
||||||
|
@Override
|
||||||
|
public void onSuccess() {
|
||||||
|
LogUtil.log(TAG,"设置全局返航高度成功");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFailure(@NonNull IDJIError idjiError) {
|
||||||
|
LogUtil.log(TAG,"设置全局返航高度失败");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
|
||||||
Movement.getInstance().setTask_current_step(5);
|
Movement.getInstance().setTask_current_step(5);
|
||||||
|
|
||||||
|
|
||||||
|
|
@ -357,6 +370,7 @@ public class MissionV3Manager extends BaseManager {
|
||||||
boolean statusOk = verifyAircraftStatus(message);
|
boolean statusOk = verifyAircraftStatus(message);
|
||||||
//4.信号收敛(等待GPS搜星)
|
//4.信号收敛(等待GPS搜星)
|
||||||
if (statusOk) {
|
if (statusOk) {
|
||||||
|
sendEvent2Server("条件满足进入自建和下发航线",1);
|
||||||
verifyGpsAndMissionState(message);
|
verifyGpsAndMissionState(message);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
@ -441,10 +455,11 @@ public class MissionV3Manager extends BaseManager {
|
||||||
LogUtil.log(TAG,"isMissionStateValid"+isMissionStateValid+"isPlaneMessageValid"+isPlaneMessageValid+"isGpsQualityValid"+isGpsQualityValid);
|
LogUtil.log(TAG,"isMissionStateValid"+isMissionStateValid+"isPlaneMessageValid"+isPlaneMessageValid+"isGpsQualityValid"+isGpsQualityValid);
|
||||||
// if (isMissionStateValid && isPlaneMessageValid && isGpsQualityValid) {
|
// if (isMissionStateValid && isPlaneMessageValid && isGpsQualityValid) {
|
||||||
|
|
||||||
//sendEvent2Server("卫星数量"+GPSSatelliteCount,1);
|
sendEvent2Server("卫星数量"+GPSSatelliteCount+"gps是否ok"+GPSSatelliteCountValid,1);
|
||||||
if (isGpsQualityValid||GPSSatelliteCountValid) {
|
if (isGpsQualityValid||GPSSatelliteCountValid) {
|
||||||
//5.下载航线
|
//5.下载航线
|
||||||
downLoadKMZFile(message);
|
downLoadKMZFile(message);
|
||||||
|
sendEvent2Server("执行下载航线成功",1);
|
||||||
verifyGpsAndMissionStateSuccess = true;
|
verifyGpsAndMissionStateSuccess = true;
|
||||||
} else {
|
} else {
|
||||||
|
|
||||||
|
|
@ -586,7 +601,6 @@ public class MissionV3Manager extends BaseManager {
|
||||||
public void onProgressUpdate(Double progress) {
|
public void onProgressUpdate(Double progress) {
|
||||||
sendEvent2Server("航线上传进度:" + progress, 1);
|
sendEvent2Server("航线上传进度:" + progress, 1);
|
||||||
Movement.getInstance().setTask_current_step(17);
|
Movement.getInstance().setTask_current_step(17);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -1,37 +1,16 @@
|
||||||
package com.aros.apron.manager;
|
package com.aros.apron.manager;
|
||||||
|
|
||||||
|
|
||||||
import static com.aros.apron.tools.Utils.getIDJIErrorMsg;
|
|
||||||
|
|
||||||
import android.os.Handler;
|
|
||||||
import android.text.TextUtils;
|
|
||||||
import android.util.Log;
|
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
|
|
||||||
import com.aros.apron.base.BaseManager;
|
import com.aros.apron.base.BaseManager;
|
||||||
import com.aros.apron.constant.AMSConfig;
|
|
||||||
import com.aros.apron.entity.MessageReply;
|
|
||||||
import com.aros.apron.entity.Movement;
|
|
||||||
import com.aros.apron.entity.PayloadInfo;
|
import com.aros.apron.entity.PayloadInfo;
|
||||||
import com.aros.apron.tools.LogUtil;
|
import com.aros.apron.tools.LogUtil;
|
||||||
import com.aros.apron.tools.MqttManager;
|
|
||||||
import com.aros.apron.tools.Utils;
|
|
||||||
import com.google.gson.Gson;
|
import com.google.gson.Gson;
|
||||||
import com.google.gson.GsonBuilder;
|
import com.google.gson.GsonBuilder;
|
||||||
|
|
||||||
import org.eclipse.paho.android.service.MqttAndroidClient;
|
|
||||||
import org.eclipse.paho.client.mqttv3.MqttMessage;
|
|
||||||
|
|
||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
import dji.sdk.keyvalue.key.FlightControllerKey;
|
import dji.sdk.keyvalue.key.FlightControllerKey;
|
||||||
import dji.sdk.keyvalue.key.KeyTools;
|
import dji.sdk.keyvalue.key.KeyTools;
|
||||||
import dji.sdk.keyvalue.value.payload.CustomizeRcButtonConfig;
|
|
||||||
import dji.sdk.keyvalue.value.payload.WidgetType;
|
|
||||||
import dji.sdk.keyvalue.value.payload.WidgetValue;
|
|
||||||
import dji.v5.common.callback.CommonCallbacks;
|
import dji.v5.common.callback.CommonCallbacks;
|
||||||
import dji.v5.common.error.IDJIError;
|
import dji.v5.common.error.IDJIError;
|
||||||
import dji.v5.manager.KeyManager;
|
import dji.v5.manager.KeyManager;
|
||||||
|
|
@ -45,7 +24,7 @@ import dji.v5.manager.aircraft.payload.listener.PayloadWidgetInfoListener;
|
||||||
import dji.v5.manager.interfaces.IPayloadManager;
|
import dji.v5.manager.interfaces.IPayloadManager;
|
||||||
|
|
||||||
|
|
||||||
public class PayloadWidgetManager {
|
public class PayloadWidgetManager extends BaseManager {
|
||||||
private String TAG = this.getClass().getSimpleName();
|
private String TAG = this.getClass().getSimpleName();
|
||||||
|
|
||||||
private List<PayloadInfo> payloadInfos = new ArrayList<>();
|
private List<PayloadInfo> payloadInfos = new ArrayList<>();
|
||||||
|
|
@ -61,7 +40,6 @@ public class PayloadWidgetManager {
|
||||||
return PayloadWidgetHolder.INSTANCE;
|
return PayloadWidgetHolder.INSTANCE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
// 使用GsonBuilder配置Gson实例以允许序列化特殊浮点数值
|
// 使用GsonBuilder配置Gson实例以允许序列化特殊浮点数值
|
||||||
Gson gson = new GsonBuilder()
|
Gson gson = new GsonBuilder()
|
||||||
.serializeSpecialFloatingPointValues() // 这是关键
|
.serializeSpecialFloatingPointValues() // 这是关键
|
||||||
|
|
@ -75,29 +53,37 @@ public class PayloadWidgetManager {
|
||||||
if (payloadManager != null) {
|
if (payloadManager != null) {
|
||||||
IPayloadManager iPayloadManager = payloadManager.get(PayloadIndexType.PORT_1);
|
IPayloadManager iPayloadManager = payloadManager.get(PayloadIndexType.PORT_1);
|
||||||
if (iPayloadManager != null) {
|
if (iPayloadManager != null) {
|
||||||
//可以把负载设备控件打印
|
PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).pullWidgetInfoFromPayload(new CommonCallbacks.CompletionCallback() {
|
||||||
PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).addPayloadWidgetInfoListener(new PayloadWidgetInfoListener() {
|
|
||||||
@Override
|
@Override
|
||||||
public void onPayloadWidgetInfoUpdate(PayloadWidgetInfo info) {
|
public void onSuccess() {
|
||||||
LogUtil.log(TAG, "左侧负载控件信息:" + info.toString());
|
//可以把负载设备控件打印
|
||||||
|
PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).addPayloadWidgetInfoListener(new PayloadWidgetInfoListener() {
|
||||||
|
@Override
|
||||||
|
public void onPayloadWidgetInfoUpdate(PayloadWidgetInfo info) {
|
||||||
|
LogUtil.log(TAG, "左侧负载控件信息:" + info.toString());
|
||||||
|
//如果负载为空
|
||||||
|
if(info.getConfigInterfaceWidgetList()==null||info.getMainInterfaceWidgetList()==null){
|
||||||
|
PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).pullWidgetInfoFromPayload(new CommonCallbacks.CompletionCallback() {
|
||||||
|
@Override
|
||||||
|
public void onSuccess() {
|
||||||
|
LogUtil.log(TAG,"负载重复拉取成功");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFailure(@NonNull IDJIError idjiError) {
|
||||||
|
LogUtil.log(TAG,"负载重复拉取失败");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onFailure(@NonNull IDJIError idjiError) {
|
||||||
|
LogUtil.log(TAG,"负载第一次拉取失败");
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
|
|
||||||
PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).addPayloadDataListener(new PayloadDataListener() {
|
|
||||||
@Override
|
|
||||||
public void onDataFromPayloadUpdate(byte[] data) {
|
|
||||||
LogUtil.log(TAG, "onDataFromPayloadUpdate:" + data.toString());
|
|
||||||
}
|
|
||||||
});
|
|
||||||
PayloadCenter.getInstance().getPayloadManager().get(PayloadIndexType.PORT_1).addPayloadBasicInfoListener(new PayloadBasicInfoListener() {
|
|
||||||
@Override
|
|
||||||
public void onPayloadBasicInfoUpdate(PayloadBasicInfo info) {
|
|
||||||
LogUtil.log(TAG, "addPayloadBasicInfoListener:" + info.toString());
|
|
||||||
}
|
|
||||||
});
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
} else {
|
} else {
|
||||||
LogUtil.log(TAG, "监听LEFT_OR_MAIN PSDK数据失败:设备未连接");
|
LogUtil.log(TAG, "监听LEFT_OR_MAIN PSDK数据失败:设备未连接");
|
||||||
}
|
}
|
||||||
|
|
@ -109,6 +95,21 @@ public class PayloadWidgetManager {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
// //设置三方负载控件
|
// //设置三方负载控件
|
||||||
// public void setWidget(MQMessage message) {
|
// public void setWidget(MQMessage message) {
|
||||||
// Boolean isConnect = KeyManager.getInstance().getValue(KeyTools.createKey(FlightControllerKey.KeyConnection));
|
// Boolean isConnect = KeyManager.getInstance().getValue(KeyTools.createKey(FlightControllerKey.KeyConnection));
|
||||||
|
|
|
||||||
|
|
@ -41,7 +41,7 @@ public class PerceptionManager extends BaseManager {
|
||||||
|
|
||||||
public void setPerceptionEnable(boolean perceptionEnable) {
|
public void setPerceptionEnable(boolean perceptionEnable) {
|
||||||
if (PreferenceUtils.getInstance().getCloseObsEnable() && perceptionEnable) {
|
if (PreferenceUtils.getInstance().getCloseObsEnable() && perceptionEnable) {
|
||||||
LogUtil.log(TAG, "全局避障关闭,不开启避障");
|
//LogUtil.log(TAG, "全局避障关闭,不开启避障");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -56,7 +56,7 @@ public class PerceptionManager extends BaseManager {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess() {
|
public void onSuccess() {
|
||||||
if (perceptionEnable) {
|
if (perceptionEnable) {
|
||||||
LogUtil.log(TAG, "避障开启");
|
//LogUtil.log(TAG, "避障开启");
|
||||||
} else {
|
} else {
|
||||||
closePerceptionSuccess = true;
|
closePerceptionSuccess = true;
|
||||||
//LogUtil.log(TAG, "避障关闭");
|
//LogUtil.log(TAG, "避障关闭");
|
||||||
|
|
@ -102,7 +102,7 @@ public class PerceptionManager extends BaseManager {
|
||||||
perceptionManager.setObstacleAvoidanceEnabled(perceptionEnable ? true:false, PerceptionDirection.HORIZONTAL, new CommonCallbacks.CompletionCallback() {
|
perceptionManager.setObstacleAvoidanceEnabled(perceptionEnable ? true:false, PerceptionDirection.HORIZONTAL, new CommonCallbacks.CompletionCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess() {
|
public void onSuccess() {
|
||||||
LogUtil.log(TAG, "开启水平避障");
|
//LogUtil.log(TAG, "开启水平避障");
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
|
|
||||||
|
|
@ -55,7 +55,7 @@ public class StreamManager extends BaseManager {
|
||||||
public void onLiveStreamStatusUpdate(LiveStreamStatus status) {
|
public void onLiveStreamStatusUpdate(LiveStreamStatus status) {
|
||||||
if (status != null) {
|
if (status != null) {
|
||||||
Movement.getInstance().setLiveStatus(status.isStreaming() ? 1 : 0);
|
Movement.getInstance().setLiveStatus(status.isStreaming() ? 1 : 0);
|
||||||
Log.d(TAG, "推流状态"+status.isStreaming()+"帧率:" + status.getFps() + "--" + "码率:" + status.getVbps()+"---"+"延迟:"+status.getRtt());
|
Log.d(TAG, "推流状态" + status.isStreaming() + "帧率:" + status.getFps() + "--" + "码率:" + status.getVbps() + "---" + "延迟:" + status.getRtt());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -68,7 +68,7 @@ public class StreamManager extends BaseManager {
|
||||||
}
|
}
|
||||||
|
|
||||||
public void startLive(MessageDown message) {
|
public void startLive(MessageDown message) {
|
||||||
sendMsg2Server(message);
|
sendMsg2Server(message);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
@ -80,9 +80,9 @@ sendMsg2Server(message);
|
||||||
} else {
|
} else {
|
||||||
ILiveStreamManager liveStreamManager = MediaDataCenter.getInstance().getLiveStreamManager();
|
ILiveStreamManager liveStreamManager = MediaDataCenter.getInstance().getLiveStreamManager();
|
||||||
if (liveStreamManager.isStreaming()) {
|
if (liveStreamManager.isStreaming()) {
|
||||||
if (message.getData().getVideo_quality()==0||message.getData().getVideo_quality()==4){
|
if (message.getData().getVideo_quality() == 0 || message.getData().getVideo_quality() == 4) {
|
||||||
liveStreamManager.setLiveStreamQuality(StreamQuality.ORIGINAL);
|
liveStreamManager.setLiveStreamQuality(StreamQuality.ORIGINAL);
|
||||||
}else {
|
} else {
|
||||||
liveStreamManager.setLiveStreamQuality(StreamQuality.find(message.getData().getVideo_quality()));
|
liveStreamManager.setLiveStreamQuality(StreamQuality.find(message.getData().getVideo_quality()));
|
||||||
}
|
}
|
||||||
sendMsg2Server(message);
|
sendMsg2Server(message);
|
||||||
|
|
@ -114,7 +114,7 @@ sendMsg2Server(message);
|
||||||
// if (value != null && (value == CameraType.ZENMUSE_H20T ||
|
// if (value != null && (value == CameraType.ZENMUSE_H20T ||
|
||||||
// value == CameraType.ZENMUSE_H20N || value == CameraType.ZENMUSE_H20)
|
// value == CameraType.ZENMUSE_H20N || value == CameraType.ZENMUSE_H20)
|
||||||
// || value == CameraType.ZENMUSE_H30 || value == CameraType.ZENMUSE_H30T) {
|
// || value == CameraType.ZENMUSE_H30 || value == CameraType.ZENMUSE_H30T) {
|
||||||
liveStreamManager.setCameraIndex(ComponentIndexType.PORT_1);
|
liveStreamManager.setCameraIndex(ComponentIndexType.PORT_1);
|
||||||
// } else {
|
// } else {
|
||||||
// liveStreamManager.setCameraIndex(ComponentIndexType.FPV);
|
// liveStreamManager.setCameraIndex(ComponentIndexType.FPV);
|
||||||
// }
|
// }
|
||||||
|
|
@ -125,13 +125,13 @@ sendMsg2Server(message);
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess() {
|
public void onSuccess() {
|
||||||
LogUtil.log(TAG, "自定义推流启动成功");
|
LogUtil.log(TAG, "自定义推流启动成功");
|
||||||
isLiveStreamAlreadyStart=true;
|
isLiveStreamAlreadyStart = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(@NonNull IDJIError error) {
|
public void onFailure(@NonNull IDJIError error) {
|
||||||
LogUtil.log(TAG, "第"+startLiveFailTimes+"次开始推流失败:"+new Gson().toJson(error));
|
LogUtil.log(TAG, "第" + startLiveFailTimes + "次开始推流失败:" + new Gson().toJson(error));
|
||||||
if (!isLiveStreamAlreadyStart){
|
if (!isLiveStreamAlreadyStart) {
|
||||||
new Handler().postDelayed(new Runnable() {
|
new Handler().postDelayed(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
|
@ -149,18 +149,312 @@ sendMsg2Server(message);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
private int isliveindex = 1; //1代表port 2代表fpv
|
||||||
|
|
||||||
|
public void switchptsp(ComponentIndexType ComponentIndex, MessageDown message) {
|
||||||
|
isLiveStreamAlreadyStart = false;
|
||||||
|
sendMsg2Server(message);
|
||||||
|
LogUtil.log(TAG, "收到回复" + message.toString());
|
||||||
|
if (ComponentIndex == ComponentIndexType.PORT_1 && isliveindex == 2) {
|
||||||
|
ILiveStreamManager liveStreamManager = MediaDataCenter.getInstance().getLiveStreamManager();
|
||||||
|
LogUtil.log(TAG, "自定义RTSP推流:" + PreferenceUtils.getInstance().getRtspUserName()
|
||||||
|
+ "--" + PreferenceUtils.getInstance().getRtspPort() + "--" + PreferenceUtils.getInstance().getRtspPassWord());
|
||||||
|
|
||||||
|
LiveStreamSettings.Builder streamSettingBuilder = new LiveStreamSettings.Builder();
|
||||||
|
|
||||||
|
LiveStreamSettings streamSettings = streamSettingBuilder.setLiveStreamType(LiveStreamType.RTSP)
|
||||||
|
.setRtspSettings(new RtspSettings.Builder().setPassWord(PreferenceUtils.getInstance().getRtspPassWord()).
|
||||||
|
setPort(Integer.parseInt(PreferenceUtils.getInstance().getRtspPort())).
|
||||||
|
setUserName(PreferenceUtils.getInstance().getRtspUserName()).build()).build();
|
||||||
|
|
||||||
|
liveStreamManager.setLiveStreamSettings(streamSettings);
|
||||||
|
|
||||||
|
|
||||||
|
CameraType value = KeyManager.getInstance().getValue(KeyTools.createKey(CameraKey.KeyCameraType, ComponentIndexType.PORT_1));
|
||||||
|
|
||||||
|
liveStreamManager.setCameraIndex(ComponentIndex);
|
||||||
|
|
||||||
|
liveStreamManager.setLiveStreamQuality(StreamQuality.FULL_HD);
|
||||||
|
liveStreamManager.setLiveVideoBitrateMode(LiveVideoBitrateMode.AUTO);
|
||||||
|
isliveindex = 1;
|
||||||
|
|
||||||
|
|
||||||
|
} else if (ComponentIndex == ComponentIndexType.FPV && isliveindex == 1) {
|
||||||
|
ILiveStreamManager liveStreamManager = MediaDataCenter.getInstance().getLiveStreamManager();
|
||||||
|
LogUtil.log(TAG, "自定义RTSP推流:" + PreferenceUtils.getInstance().getRtspUserName()
|
||||||
|
+ "--" + PreferenceUtils.getInstance().getRtspPort() + "--" + PreferenceUtils.getInstance().getRtspPassWord());
|
||||||
|
|
||||||
|
LiveStreamSettings.Builder streamSettingBuilder = new LiveStreamSettings.Builder();
|
||||||
|
|
||||||
|
LiveStreamSettings streamSettings = streamSettingBuilder.setLiveStreamType(LiveStreamType.RTSP)
|
||||||
|
.setRtspSettings(new RtspSettings.Builder().setPassWord(PreferenceUtils.getInstance().getRtspPassWord()).
|
||||||
|
setPort(Integer.parseInt(PreferenceUtils.getInstance().getRtspPort())).
|
||||||
|
setUserName(PreferenceUtils.getInstance().getRtspUserName()).build()).build();
|
||||||
|
|
||||||
|
liveStreamManager.setLiveStreamSettings(streamSettings);
|
||||||
|
|
||||||
|
|
||||||
|
CameraType value = KeyManager.getInstance().getValue(KeyTools.createKey(CameraKey.KeyCameraType, ComponentIndexType.PORT_1));
|
||||||
|
|
||||||
|
liveStreamManager.setCameraIndex(ComponentIndex);
|
||||||
|
|
||||||
|
liveStreamManager.setLiveStreamQuality(StreamQuality.FULL_HD);
|
||||||
|
liveStreamManager.setLiveVideoBitrateMode(LiveVideoBitrateMode.AUTO);
|
||||||
|
isliveindex = 2;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// if (ComponentIndex==ComponentIndexType.PORT_1&&isliveindex==2){
|
||||||
|
// Boolean isAircraftConnected = KeyManager.getInstance().getValue(DJIKey.create(ProductKey.KeyConnection));
|
||||||
|
// if (isAircraftConnected == null || !isAircraftConnected) {
|
||||||
|
// LogUtil.log(TAG, "飞行器未连接");
|
||||||
|
// } else {
|
||||||
|
// if (PreferenceUtils.getInstance().getRtspUserName()!=null&&
|
||||||
|
// PreferenceUtils.getInstance().getRtspPort()!=null&&
|
||||||
|
// PreferenceUtils.getInstance().getRtspPassWord()!=null
|
||||||
|
// ){
|
||||||
|
// ILiveStreamManager liveStreamManager = MediaDataCenter.getInstance().getLiveStreamManager();
|
||||||
|
// LogUtil.log(TAG, "自定义RTSP推流:" + PreferenceUtils.getInstance().getRtspUserName()
|
||||||
|
// +"--"+PreferenceUtils.getInstance().getRtspPort()+"--"+PreferenceUtils.getInstance().getRtspPassWord());
|
||||||
|
//
|
||||||
|
// LiveStreamSettings.Builder streamSettingBuilder = new LiveStreamSettings.Builder();
|
||||||
|
//
|
||||||
|
// LiveStreamSettings streamSettings = streamSettingBuilder.setLiveStreamType(LiveStreamType.RTSP)
|
||||||
|
// .setRtspSettings(new RtspSettings.Builder().setPassWord(PreferenceUtils.getInstance().getRtspPassWord()).
|
||||||
|
// setPort(Integer.parseInt(PreferenceUtils.getInstance().getRtspPort())).
|
||||||
|
// setUserName(PreferenceUtils.getInstance().getRtspUserName()).build()).build();
|
||||||
|
//
|
||||||
|
// liveStreamManager.setLiveStreamSettings(streamSettings);
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// CameraType value = KeyManager.getInstance().getValue(KeyTools.createKey(CameraKey.KeyCameraType, ComponentIndexType.PORT_1));
|
||||||
|
//
|
||||||
|
// liveStreamManager.setCameraIndex(ComponentIndex);
|
||||||
|
//
|
||||||
|
// liveStreamManager.setLiveStreamQuality(StreamQuality.FULL_HD);
|
||||||
|
// liveStreamManager.setLiveVideoBitrateMode(LiveVideoBitrateMode.AUTO);
|
||||||
|
//
|
||||||
|
// if (!liveStreamManager.isStreaming()) {
|
||||||
|
// liveStreamManager.startStream(new CommonCallbacks.CompletionCallback() {
|
||||||
|
// @Override
|
||||||
|
// public void onSuccess() {
|
||||||
|
// startLiveFailTimes=0;
|
||||||
|
// LogUtil.log(TAG, "自定义RTSP推流启动成功");
|
||||||
|
// isliveindex=1;
|
||||||
|
// isLiveStreamAlreadyStart=true;
|
||||||
|
// sendEvent2Server("切换视频流成功",1);
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// @Override
|
||||||
|
// public void onFailure(@NonNull IDJIError error) {
|
||||||
|
// LogUtil.log(TAG, "第"+startLiveFailTimes+"次开始RTSP推流失败:"+new Gson().toJson(error));
|
||||||
|
// if (!isLiveStreamAlreadyStart){
|
||||||
|
// new Handler().postDelayed(new Runnable() {
|
||||||
|
// @Override
|
||||||
|
// public void run() {
|
||||||
|
// if (startLiveFailTimes < 10) {
|
||||||
|
// startLiveFailTimes++;
|
||||||
|
// switchptsp(ComponentIndex, message);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }, 3000);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// }else{
|
||||||
|
// liveStreamManager.stopStream(new CommonCallbacks.CompletionCallback() {
|
||||||
|
// @Override
|
||||||
|
// public void onSuccess() {
|
||||||
|
// new Handler().postDelayed(new Runnable() {
|
||||||
|
// @Override
|
||||||
|
// public void run() {
|
||||||
|
// liveStreamManager.startStream(new CommonCallbacks.CompletionCallback() {
|
||||||
|
// @Override
|
||||||
|
// public void onSuccess() {
|
||||||
|
// startLiveFailTimes=0;
|
||||||
|
// LogUtil.log(TAG, "自定义RTSP推流启动成功");
|
||||||
|
// isliveindex=1;
|
||||||
|
// sendEvent2Server("切换视频流成功",1);
|
||||||
|
// isLiveStreamAlreadyStart=true;
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// @Override
|
||||||
|
// public void onFailure(@NonNull IDJIError error) {
|
||||||
|
// LogUtil.log(TAG, "第"+startLiveFailTimes+"次开始RTSP推流失败:"+new Gson().toJson(error));
|
||||||
|
// if (!isLiveStreamAlreadyStart){
|
||||||
|
// new Handler().postDelayed(new Runnable() {
|
||||||
|
// @Override
|
||||||
|
// public void run() {
|
||||||
|
// if (startLiveFailTimes < 10) {
|
||||||
|
// startLiveFailTimes++;
|
||||||
|
// switchptsp(ComponentIndex, message);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }, 3000);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
// },2000);
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// @Override
|
||||||
|
// public void onFailure(@NonNull IDJIError error) {
|
||||||
|
// LogUtil.log(TAG, "第"+startLiveFailTimes+"次开始RTSP推流失败:"+new Gson().toJson(error));
|
||||||
|
// if (!isLiveStreamAlreadyStart){
|
||||||
|
// new Handler().postDelayed(new Runnable() {
|
||||||
|
// @Override
|
||||||
|
// public void run() {
|
||||||
|
// if (startLiveFailTimes < 10) {
|
||||||
|
// startLiveFailTimes++;
|
||||||
|
// switchptsp(ComponentIndex, message);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }, 3000);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
// }else{
|
||||||
|
// LogUtil.log(TAG,"RTSP配置参数有误");
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// }else if(ComponentIndex==ComponentIndexType.FPV&&isliveindex==1){
|
||||||
|
// Boolean isAircraftConnected = KeyManager.getInstance().getValue(DJIKey.create(ProductKey.KeyConnection));
|
||||||
|
// if (isAircraftConnected == null || !isAircraftConnected) {
|
||||||
|
// LogUtil.log(TAG, "飞行器未连接");
|
||||||
|
// } else {
|
||||||
|
// if (PreferenceUtils.getInstance().getRtspUserName()!=null&&
|
||||||
|
// PreferenceUtils.getInstance().getRtspPort()!=null&&
|
||||||
|
// PreferenceUtils.getInstance().getRtspPassWord()!=null
|
||||||
|
// ){
|
||||||
|
// ILiveStreamManager liveStreamManager = MediaDataCenter.getInstance().getLiveStreamManager();
|
||||||
|
// LogUtil.log(TAG, "自定义RTSP推流:" + PreferenceUtils.getInstance().getRtspUserName()
|
||||||
|
// +"--"+PreferenceUtils.getInstance().getRtspPort()+"--"+PreferenceUtils.getInstance().getRtspPassWord());
|
||||||
|
//
|
||||||
|
// LiveStreamSettings.Builder streamSettingBuilder = new LiveStreamSettings.Builder();
|
||||||
|
//
|
||||||
|
// LiveStreamSettings streamSettings = streamSettingBuilder.setLiveStreamType(LiveStreamType.RTSP)
|
||||||
|
// .setRtspSettings(new RtspSettings.Builder().setPassWord(PreferenceUtils.getInstance().getRtspPassWord()).
|
||||||
|
// setPort(Integer.parseInt(PreferenceUtils.getInstance().getRtspPort())).
|
||||||
|
// setUserName(PreferenceUtils.getInstance().getRtspUserName()).build()).build();
|
||||||
|
//
|
||||||
|
// liveStreamManager.setLiveStreamSettings(streamSettings);
|
||||||
|
//
|
||||||
|
//
|
||||||
|
// CameraType value = KeyManager.getInstance().getValue(KeyTools.createKey(CameraKey.KeyCameraType, ComponentIndexType.PORT_1));
|
||||||
|
//
|
||||||
|
// liveStreamManager.setCameraIndex(ComponentIndex);
|
||||||
|
//
|
||||||
|
// liveStreamManager.setLiveStreamQuality(StreamQuality.FULL_HD);
|
||||||
|
// liveStreamManager.setLiveVideoBitrateMode(LiveVideoBitrateMode.AUTO);
|
||||||
|
//
|
||||||
|
// if (!liveStreamManager.isStreaming()) {
|
||||||
|
// liveStreamManager.startStream(new CommonCallbacks.CompletionCallback() {
|
||||||
|
// @Override
|
||||||
|
// public void onSuccess() {
|
||||||
|
// startLiveFailTimes=0;
|
||||||
|
// LogUtil.log(TAG, "自定义RTSP推流启动成功");
|
||||||
|
// isliveindex=2;
|
||||||
|
// isLiveStreamAlreadyStart=true;
|
||||||
|
// sendEvent2Server("切换视频流成功",1);
|
||||||
|
//
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// @Override
|
||||||
|
// public void onFailure(@NonNull IDJIError error) {
|
||||||
|
// LogUtil.log(TAG, "第"+startLiveFailTimes+"次开始RTSP推流失败:"+new Gson().toJson(error));
|
||||||
|
// if (!isLiveStreamAlreadyStart){
|
||||||
|
// new Handler().postDelayed(new Runnable() {
|
||||||
|
// @Override
|
||||||
|
// public void run() {
|
||||||
|
// if (startLiveFailTimes < 10) {
|
||||||
|
// startLiveFailTimes++;
|
||||||
|
// switchptsp(ComponentIndex, message);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }, 3000);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// }else{
|
||||||
|
// liveStreamManager.stopStream(new CommonCallbacks.CompletionCallback() {
|
||||||
|
// @Override
|
||||||
|
// public void onSuccess() {
|
||||||
|
// new Handler().postDelayed(new Runnable() {
|
||||||
|
// @Override
|
||||||
|
// public void run() {
|
||||||
|
// liveStreamManager.startStream(new CommonCallbacks.CompletionCallback() {
|
||||||
|
// @Override
|
||||||
|
// public void onSuccess() {
|
||||||
|
// startLiveFailTimes=0;
|
||||||
|
// LogUtil.log(TAG, "自定义RTSP推流启动成功");
|
||||||
|
// isLiveStreamAlreadyStart=true;
|
||||||
|
// isliveindex=2;
|
||||||
|
// sendEvent2Server("切换视频流成功",1);
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// @Override
|
||||||
|
// public void onFailure(@NonNull IDJIError error) {
|
||||||
|
// LogUtil.log(TAG, "第"+startLiveFailTimes+"次开始RTSP推流失败:"+new Gson().toJson(error));
|
||||||
|
// if (!isLiveStreamAlreadyStart){
|
||||||
|
// new Handler().postDelayed(new Runnable() {
|
||||||
|
// @Override
|
||||||
|
// public void run() {
|
||||||
|
// if (startLiveFailTimes < 10) {
|
||||||
|
// startLiveFailTimes++;
|
||||||
|
// switchptsp(ComponentIndex, message);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }, 3000);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
// },2000);
|
||||||
|
// }
|
||||||
|
// @Override
|
||||||
|
// public void onFailure(@NonNull IDJIError error) {
|
||||||
|
// LogUtil.log(TAG, "第"+startLiveFailTimes+"次开始RTSP推流失败:"+new Gson().toJson(error));
|
||||||
|
// if (!isLiveStreamAlreadyStart){
|
||||||
|
// new Handler().postDelayed(new Runnable() {
|
||||||
|
// @Override
|
||||||
|
// public void run() {
|
||||||
|
// if (startLiveFailTimes < 10) {
|
||||||
|
// startLiveFailTimes++;
|
||||||
|
// switchptsp(ComponentIndex, message);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }, 3000);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// });
|
||||||
|
// }
|
||||||
|
// }else{
|
||||||
|
// LogUtil.log(TAG,"RTSP配置参数有误");
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
//
|
||||||
|
// }
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public void startLiveWithRTSP() {
|
public void startLiveWithRTSP() {
|
||||||
Boolean isAircraftConnected = KeyManager.getInstance().getValue(DJIKey.create(ProductKey.KeyConnection));
|
Boolean isAircraftConnected = KeyManager.getInstance().getValue(DJIKey.create(ProductKey.KeyConnection));
|
||||||
if (isAircraftConnected == null || !isAircraftConnected) {
|
if (isAircraftConnected == null || !isAircraftConnected) {
|
||||||
LogUtil.log(TAG, "飞行器未连接");
|
LogUtil.log(TAG, "飞行器未连接");
|
||||||
} else {
|
} else {
|
||||||
if (PreferenceUtils.getInstance().getRtspUserName()!=null&&
|
if (PreferenceUtils.getInstance().getRtspUserName() != null &&
|
||||||
PreferenceUtils.getInstance().getRtspPort()!=null&&
|
PreferenceUtils.getInstance().getRtspPort() != null &&
|
||||||
PreferenceUtils.getInstance().getRtspPassWord()!=null
|
PreferenceUtils.getInstance().getRtspPassWord() != null
|
||||||
){
|
) {
|
||||||
ILiveStreamManager liveStreamManager = MediaDataCenter.getInstance().getLiveStreamManager();
|
ILiveStreamManager liveStreamManager = MediaDataCenter.getInstance().getLiveStreamManager();
|
||||||
LogUtil.log(TAG, "自定义RTSP推流:" + PreferenceUtils.getInstance().getRtspUserName()
|
LogUtil.log(TAG, "自定义RTSP推流:" + PreferenceUtils.getInstance().getRtspUserName()
|
||||||
+"--"+PreferenceUtils.getInstance().getRtspPort()+"--"+PreferenceUtils.getInstance().getRtspPassWord());
|
+ "--" + PreferenceUtils.getInstance().getRtspPort() + "--" + PreferenceUtils.getInstance().getRtspPassWord());
|
||||||
|
|
||||||
LiveStreamSettings.Builder streamSettingBuilder = new LiveStreamSettings.Builder();
|
LiveStreamSettings.Builder streamSettingBuilder = new LiveStreamSettings.Builder();
|
||||||
|
|
||||||
LiveStreamSettings streamSettings = streamSettingBuilder.setLiveStreamType(LiveStreamType.RTSP)
|
LiveStreamSettings streamSettings = streamSettingBuilder.setLiveStreamType(LiveStreamType.RTSP)
|
||||||
|
|
@ -168,32 +462,34 @@ sendMsg2Server(message);
|
||||||
setPort(Integer.parseInt(PreferenceUtils.getInstance().getRtspPort())).
|
setPort(Integer.parseInt(PreferenceUtils.getInstance().getRtspPort())).
|
||||||
setUserName(PreferenceUtils.getInstance().getRtspUserName()).build()).build();
|
setUserName(PreferenceUtils.getInstance().getRtspUserName()).build()).build();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
liveStreamManager.setLiveStreamSettings(streamSettings);
|
liveStreamManager.setLiveStreamSettings(streamSettings);
|
||||||
|
|
||||||
|
|
||||||
CameraType value = KeyManager.getInstance().getValue(KeyTools.createKey(CameraKey.KeyCameraType, ComponentIndexType.PORT_1));
|
CameraType value = KeyManager.getInstance().getValue(KeyTools.createKey(CameraKey.KeyCameraType, ComponentIndexType.PORT_1));
|
||||||
|
|
||||||
// if (value != null && (value == CameraType.ZENMUSE_H20T ||
|
// if (value != null && (value == CameraType.ZENMUSE_H20T ||
|
||||||
// value == CameraType.ZENMUSE_H20N || value == CameraType.ZENMUSE_H20)
|
// value == CameraType.ZENMUSE_H20N || value == CameraType.ZENMUSE_H20)
|
||||||
// || value == CameraType.ZENMUSE_H30 || value == CameraType.ZENMUSE_H30T) {
|
// || value == CameraType.ZENMUSE_H30 || value == CameraType.ZENMUSE_H30T) {
|
||||||
liveStreamManager.setCameraIndex(ComponentIndexType.PORT_1);
|
liveStreamManager.setCameraIndex(ComponentIndexType.PORT_1);
|
||||||
// } else {
|
// } else {
|
||||||
// liveStreamManager.setCameraIndex(ComponentIndexType.FPV);
|
// liveStreamManager.setCameraIndex(ComponentIndexType.FPV);
|
||||||
// }
|
// }
|
||||||
liveStreamManager.setLiveStreamQuality(StreamQuality.FULL_HD);
|
liveStreamManager.setLiveStreamQuality(StreamQuality.FULL_HD);
|
||||||
liveStreamManager.setLiveVideoBitrateMode(LiveVideoBitrateMode.AUTO);
|
liveStreamManager.setLiveVideoBitrateMode(LiveVideoBitrateMode.AUTO);
|
||||||
|
|
||||||
if (!liveStreamManager.isStreaming()) {
|
if (!liveStreamManager.isStreaming()) {
|
||||||
liveStreamManager.startStream(new CommonCallbacks.CompletionCallback() {
|
liveStreamManager.startStream(new CommonCallbacks.CompletionCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess() {
|
public void onSuccess() {
|
||||||
LogUtil.log(TAG, "自定义RTSP推流启动成功");
|
LogUtil.log(TAG, "自定义RTSP推流启动成功");
|
||||||
isLiveStreamAlreadyStart=true;
|
isliveindex = 1;
|
||||||
|
isLiveStreamAlreadyStart = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(@NonNull IDJIError error) {
|
public void onFailure(@NonNull IDJIError error) {
|
||||||
LogUtil.log(TAG, "第"+startLiveFailTimes+"次开始RTSP推流失败:"+new Gson().toJson(error));
|
LogUtil.log(TAG, "第" + startLiveFailTimes + "次开始RTSP推流失败:" + new Gson().toJson(error));
|
||||||
if (!isLiveStreamAlreadyStart){
|
if (!isLiveStreamAlreadyStart) {
|
||||||
new Handler().postDelayed(new Runnable() {
|
new Handler().postDelayed(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
|
@ -206,7 +502,7 @@ sendMsg2Server(message);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}else{
|
} else {
|
||||||
liveStreamManager.stopStream(new CommonCallbacks.CompletionCallback() {
|
liveStreamManager.stopStream(new CommonCallbacks.CompletionCallback() {
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess() {
|
public void onSuccess() {
|
||||||
|
|
@ -217,13 +513,14 @@ sendMsg2Server(message);
|
||||||
@Override
|
@Override
|
||||||
public void onSuccess() {
|
public void onSuccess() {
|
||||||
LogUtil.log(TAG, "自定义RTSP推流启动成功");
|
LogUtil.log(TAG, "自定义RTSP推流启动成功");
|
||||||
isLiveStreamAlreadyStart=true;
|
isliveindex = 1;
|
||||||
|
isLiveStreamAlreadyStart = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(@NonNull IDJIError error) {
|
public void onFailure(@NonNull IDJIError error) {
|
||||||
LogUtil.log(TAG, "第"+startLiveFailTimes+"次开始RTSP推流失败:"+new Gson().toJson(error));
|
LogUtil.log(TAG, "第" + startLiveFailTimes + "次开始RTSP推流失败:" + new Gson().toJson(error));
|
||||||
if (!isLiveStreamAlreadyStart){
|
if (!isLiveStreamAlreadyStart) {
|
||||||
new Handler().postDelayed(new Runnable() {
|
new Handler().postDelayed(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
|
@ -237,13 +534,13 @@ sendMsg2Server(message);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
},2000);
|
}, 2000);
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public void onFailure(@NonNull IDJIError error) {
|
public void onFailure(@NonNull IDJIError error) {
|
||||||
LogUtil.log(TAG, "第"+startLiveFailTimes+"次开始RTSP推流失败:"+new Gson().toJson(error));
|
LogUtil.log(TAG, "第" + startLiveFailTimes + "次开始RTSP推流失败:" + new Gson().toJson(error));
|
||||||
if (!isLiveStreamAlreadyStart){
|
if (!isLiveStreamAlreadyStart) {
|
||||||
new Handler().postDelayed(new Runnable() {
|
new Handler().postDelayed(new Runnable() {
|
||||||
@Override
|
@Override
|
||||||
public void run() {
|
public void run() {
|
||||||
|
|
@ -257,8 +554,8 @@ sendMsg2Server(message);
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}else{
|
} else {
|
||||||
LogUtil.log(TAG,"RTSP配置参数有误");
|
LogUtil.log(TAG, "RTSP配置参数有误");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -177,9 +177,7 @@ public class TakeOffToPointManager extends BaseManager {
|
||||||
boolean isGpsQualityValid = (quality == 4 || quality == 5 || quality == 10);
|
boolean isGpsQualityValid = (quality == 4 || quality == 5 || quality == 10);
|
||||||
boolean GPSSatelliteCountValid=GPSSatelliteCount>15;
|
boolean GPSSatelliteCountValid=GPSSatelliteCount>15;
|
||||||
|
|
||||||
|
|
||||||
LogUtil.log(TAG,"isMissionStateValid"+isMissionStateValid+"isPlaneMessageValid"+isPlaneMessageValid+"isGpsQualityValid"+isGpsQualityValid);
|
LogUtil.log(TAG,"isMissionStateValid"+isMissionStateValid+"isPlaneMessageValid"+isPlaneMessageValid+"isGpsQualityValid"+isGpsQualityValid);
|
||||||
|
|
||||||
// if (isMissionStateValid && isPlaneMessageValid && isGpsQualityValid) {
|
// if (isMissionStateValid && isPlaneMessageValid && isGpsQualityValid) {
|
||||||
if (GPSSatelliteCountValid||isGpsQualityValid) {
|
if (GPSSatelliteCountValid||isGpsQualityValid) {
|
||||||
//5.生成航线
|
//5.生成航线
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue