UXSDK FPVWidget does not working on S23 FE
已完成Hello everyone, I have a problem, I developed an application that uses the UXSDK with FPVWidget on the DJI Air 2S. And the camera simply gets very stuck, taking about almost 6 minutes to update the screen and the strangest thing is that this error doesn't happen with weaker cell phones with 4GB of RAM and it doesn't happen with the normal S23.
I also noticed that in your DJI Fly application this does not happen. Could you tell me why? Would it be because of abiFilters or is there some setting that in DJI Fly makes this optimized?
-
Based on the situation you've described, I suspect that the issue you are encountering may be related to the codecs supported by your device. You can try using `setCodecName` to set the type that your current device can use. Here is the API documentation:https://developer.dji.com/api-reference/android-api/Components/CodecManager/DJICodecManager.html?search=setcodecname&i=0djicodecmanager_setcodecname_inline -
I tried changing the codec as suggested, but there was no improvement in the issue. I attempted to use the following code inside the onCreate() method of the activity that contains the FPVWidget trying to change the video codec:
DJICodecManager codecManager = new DJICodecManager(
DroneApplication.getContext(),
(SurfaceTexture) null,
0,
0,
UsbAccessoryService.VideoStreamSource.Camera
);
codecManager.setCodecName("");DJICodecManager codecManager = new DJICodecManager(
this,
fpvWidget.getSurfaceTexture(),
fpvWidget.getWidth(),
fpvWidget.getHeight()
);
codecManager.setCodecName("");Here are my implementations in the gradle:
implementation ('com.dji:dji-uxsdk:4.15', {
exclude module: 'library-anti-distortion'
exclude module: 'fly-safe-database'
})
implementation 'com.dji:dji-sdk:4.17'
compileOnly ('com.dji:dji-sdk-provided:4.17')Here are the abiFilters:
ndk {
abiFilters 'armeabi-v7a', 'x86', 'arm64-v8a'
}I would like to highlight that in the DJI Fly app, the S23 FE device has no issues displaying the drone's camera feed. Is there anything or any optimization done in the DJI Fly app for these types of scenarios? Including codec-related optimizations? My app is developed in Java, and so far, we have not encountered similar issues; this is the first device showing this problem. I would appreciate it if you could specifically point out what you believe is present in the DJI Fly app that is not in mine.
-
The FPVWidget of UXSDK cannot utilize the `setCodecName` interface. Currently, there are two versions of UXSDK in MSDK V4: one is UXSDK and the other is UXSDK beta. The beta is the open-source version. If you are using the beta version, you can directly modify the codecManager used internally by FPVWidget with `setCodecName`. However, for UXSDK, since it is closed-source, creating a new DJICodecManager to set the codec does not take effect on FPVWidget. Additionally, setting it to "" is also ineffective. Furthermore, the AIR 2S is only supported in MSDK version 4.16, while the UXSDK version 4.15 still uses MSDK version 4.15 internally. Since DJI FLY is not a product managed by the SDK team, we are unable to directly access its internal implementation.
请先登录再写评论。
评论
5 条评论