如何流的WebRTC的摄像机输出到原生Android的SDK Wikitude

问题描述 投票:1回答:1

在我的WebRTC应用我发送拍摄的视频流到远程浏览器。我的目标是现在,我想在对Android的部分相同的视频流增加一些AR东西与wikitude(我使用Wikitude 7.2.1兼容的原因),并显示在显示屏上(它目前只显示摄像机输出)。我知道,我不能随便打开另一个摄像头实例,因为已经的WebRTC使用了一个,所以我需要通过从的WebRTC VideoCapturer输出(或可替代一些表面的内容是输出过于渲染?)到Wikitude SDK,但是,我有困难,这样做。

我已经看到,输入插件的外部摄像机输入wikitude需要使用像这样的ImageAvaibleListener一个ImageReader:

mWikitudeCamera2.start(new ImageReader.OnImageAvailableListener() { ... }

并在WikitudeCamera2方面:

 mManager.openCamera(getCamera(), cameraStateCallback, null);
 mImageReader = ImageReader.newInstance(mFrameWidth, mFrameHeight, ImageFormat.YUV_420_888, 2);
 mImageReader.setOnImageAvailableListener(onImageAvailableListener, null);

该图像读取表面然后获取附接至实际的摄像机的输出:

CaptureRequest.Builder builder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_RECORD);
builder.addTarget(mImageReader.getSurface()); 

然而,因为我需要使用从的WebRTC提供CameraCapturer我不能够做到这一点。

有没有办法摆脱也许是的WebRTC的SurfaceViewRender相机流,或者使它对另一个(也许假的?)SurfaceView并附加的图象读。或者一些其他的方式来传递被sended到客户端wikitude而不使用的图像读取器的输出?或者通常一些其他的方式,我能得到这个工作,我还没有想到过。我真的很感激一些帮助,因为即时通讯停留在那一部分的现在。

android webrtc wikitude
1个回答
0
投票

你是在正确的道路上,但不幸的是,由于Wikitude的SDK在消费相机API,这是不可能的(但,SDK 8.2),以通过web视图/的WebRTC访问相同的数据流。你必须坚持的ImageReader方法现在找到一种方法来处理在本地环境的框架。

最好的祝福

© www.soinside.com 2019 - 2024. All rights reserved.