【问题标题】:Use Front Camera and Back Camera into single video使用前置摄像头和后置摄像头合成单个视频
【发布时间】:2019-09-23 14:48:37
【问题描述】:

我正在处理一个项目,我想使用 Camera2 同时使用前置和后置摄像头录制视频。 在这种情况下,我希望将一台摄像头设为全屏,然后将另一台设为角落的小缩略图。

我知道如何同时打开两个摄像头,并且知道如何从单个摄像头录制视频。 我的猜测是我需要一些如何创建自己的SurfaceView,然后在该视图之上写入两个相机缓冲区并将其发送到MediaRecorder

对于这类问题很难找到任何高质量的答案,希望有人能指出我正确的方向。

【问题讨论】:

    标签: android camera mediarecorder


    【解决方案1】:

    不,您必须将来自摄像机的两个帧排列在合成图像中,并将其传递给 MediaCodec。对于从两个源接收到的每一对帧,必须重复此操作。

    【讨论】:

    • 是的,我就是这么想的。人们如何以有效的方式做到这一点?我总是可以制作和 rgb 的 Yuv 图像,然后将它们直接写到 MediaRecorder 的表面画布上,但肯定有比这更好的方法吗?
    • 如果您想使用 RGB,请查看grafika 示例代码。通常,我更喜欢在 YUV 颜色空间中工作。
    • 我也想去 YUV,它可能会更高效,但是你如何以可控的方式在表面上写这样的图像?有例子吗?
    • 你不需要在表面上写这些图像;你在内存中构建它们。预览表面或纹理照常工作,而您的处理会合并独立于预览的帧。
    • 很好,但是如何从两个提要构建图像?
    猜你喜欢
    • 2018-02-14
    • 2014-09-28
    • 2016-03-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-11-05
    • 1970-01-01
    相关资源
    最近更新 更多