java - DJI 视频源作为 WebRTC (Android) 的源
问题描述
我正在尝试将视频流从我的无人机(DJI Phantom 4 Pro V2.0)提供到 WebRTC 连接。我没有成功实现这一点,因为我不太了解缓冲和视频编码的工作原理。这篇文章解释了如何从无人机接收字节:
public void onReceive(byte[] videoBuffer, int size, int width, int height) {
long timestampNS = TimeUnit.MILLISECONDS.toNanos(SystemClock.elapsedRealtime());
NV21Buffer buffer = new NV21Buffer(videoBuffer, width, height, null);
VideoFrame videoFrame = new VideoFrame(buffer, 0, timestampNS);
videoSource.getCapturerObserver().onFrameCaptured(videoFrame);
videoFrame.release();
我的问题是如何设置 videoSource 和其他一切才能真正获得工作视频?我设法得到绿色条纹,就是这样。呼叫的接收端收到相同的绿色条纹,所以我猜视频传输正在工作,我只需要修复视频本身。 应用截图 - 绿色条纹来自无人机
解决方案
推荐阅读
- python - 通过按钮重新启动 Flask 应用程序
- c# - 如何使用 C# 中的命令从特定路径运行应用程序
- nix - 在 nixpkgs 中,如何在不重新编译的情况下覆盖包的文件?
- php - 使用 PHP 从 Flutter 上传多个图像并更改文件名
- python - 如何将从salesforce中提取的表格格式化为python?
- c# - 状态机 - 如何处理外部环境值?
- javascript - AngularJS REST 请求更新范围变量的值,但更改在前端不可见
- python - 有没有办法将游戏作为程序进行交互?
- ironpython - 查找每行中的 m 列中的 n 是否为空
- python - Django Rest Framework django_filters 返回空列表