首页 > 解决方案 > 使用面部过滤器录制视频

问题描述

从过去两周开始,我一直在努力构建还可以录制视频的实时面部过滤器应用程序,但遗憾的是我还没有成功。目前,我正在使用 ` 来渲染实时人脸位置。我也想在录制时录制那个矩形视图。如果有人做过这种工作,请告诉我。

好吧,我可以使用类实时检测人脸,android.media.FaceDetector但问题在于记录。为了渲染我正在使用的面部位置SurfaceViewsurfaceChanged我准备了我的相机资源并将帧保存在视频文件中,但由于同时缺少这些多个任务,应用程序缺乏并且只有视频录制工作。

这是我的代码:

   @Override
    public void surfaceChanged(SurfaceHolder surfaceHolder, int format, int width, int height) {
        // We have no surface, return immediately:
        if (surfaceHolder.getSurface() == null) {
            return;
        }


//        if (!button.isChecked()) {

        mCamera.stopPreview();

        configureCamera(width, height);
        setDisplayOrientation();
        setErrorCallback();

        // Create media.FaceDetector
        float aspect = (float) previewHeight / (float) previewWidth;
        fdet = new android.media.FaceDetector(prevSettingWidth, (int) (prevSettingWidth * aspect), MAX_FACE);


        // Everything is configured! Finally start the camera preview again:
        startPreview();

//        }



        if (isRecording)
            prepareRecorder(mView.getHolder());

    }

谢谢 :)

标签: androidandroid-camerasurfaceviewface-detectionvideo-recording

解决方案


几周后,我终于找到了官方的 google sceneform-android-sdk,用于在录制视频时处理 3D 模型。您可以从Github下载工作示例。

有关 ArCore 的更多信息,请查看此处的官方文档

:)


推荐阅读