SDK版本4.16.1.VideoFeeder的provideTranscodedVideoFeed方法,添加add...

Completed

Comments

7 comments

  • DJI Developer Support
    你是哪个机型呢?看看这篇文章是否能解决问题:M300如何获取标准的H.264码流
    0
    Comment actions Permalink
  • 闫善书

    M300和御2都试了,这个文章也看过了。就是回调没有反应。

    0
    Comment actions Permalink
  • DJI Developer Support
    先解决御2的问题,御2不需要调用getPrimaryVideoFeed,直接调用provideTranscodedVideoFeed就会出数据,甚至不需要调用assignSourceToPrimaryChannel,因为他只有一路图传。把你第一个if这个判断删除掉。御2不依靠primaryVideoFeed出数据。我觉得不出数据和你这个if有关,M300你不assignSourceToPrimaryChannel会直接走到else去。
    0
    Comment actions Permalink
  • 闫善书

    和它无关的,一开始我没有判断的,就是后来一直获取不到才加的。

    0
    Comment actions Permalink
  • DJI Developer Support
    尊敬的开发者, 您好,感谢您联系DJI 大疆创新。 你不能在onReceive回调里调用enableYuvData和setYuvDataCallback啊,这样岂不是每一帧都要打开一次。你看看这个demo你能用不。 Link:https://github.com/DJI-Mobile-SDK-Tutorials/Android-VideoStreamDecodingSample 感谢您的邮件,祝您生活愉快! Best Regards, DJI 大疆创新SDK技术支持
    0
    Comment actions Permalink
  • 闫善书

    御2获取到了,

    standardVideoFeeder.addVideoDataListener获取到的数据是什么H264格式的视频流吗?这个可以用
    mCodecManager.sendDataToDecoder转码吗?转码后的
    ByteBuffer是什么格式?
    0
    Comment actions Permalink
  • DJI Developer Support
    standardVideoFeeder = VideoFeeder.getInstance().provideTranscodedVideoFeed(); provideTranscodedVideoFeed输出得是标准H.264格式的H.264码流,sendDataToDecoder的意义是在于把DJI格式的H264或者标准格式的H264码流解码并且渲染在DJICodecManager绑定的Surface上。ByteBuffer我看在onYuvDataReceived接口的入参,那说明是YUV数据。
    0
    Comment actions Permalink

Please sign in to leave a comment.