Solution:
- setTranscodingDataRate, increase the video stream bit rate, valid range [0.3, 20] Mbps.
- setLiveVideoResolution, decrease the resolution of live stream, remember to add setVideoEncodingEnabled(true) before startStream().
- setLiveVideoBitRate, increase the live video stream bit rate, remember to add setVideoEncodingEnabled(true) before startStream().
- Check your phone mode, disable power saving mode to make sure the phone mode does not restrict the hardware performance.
- Check your server's performance.
- Check your mobie device network service.
Sample Code:
DJISDKManager.getInstance().getLiveStreamManager().setLiveUrl("x");
DJISDKManager.getInstance().getLiveStreamManager().setAudioMuted(true);
DJISDKManager.getInstance().getLiveStreamManager().setVideoEncodingEnabled(true);
DJISDKManager.getInstance().getLiveStreamManager().setLiveVideoResolution(LiveVideoResolution.VIDEO_RESOLUTION_1920_1080);
DJISDKManager.getInstance().getLiveStreamManager().setLiveVideoBitRateMode(LiveVideoBitRateMode.AUTO);
int result = DJISDKManager.getInstance().getLiveStreamManager().startStream();
Theory:
The theory of live stream actually is after getting the video stream, encode again and brocast the video stream to internet server, then the server decode and play the video stream on webpage. Therfore there are 3 places that may influence the performance of live stream.
- Aircraft/app's decode and encode performance is bad.
- The performance of internet transmission is bad.
- The performance of server decode is bad.
Comments
0 comments
Please sign in to leave a comment.