使用面部滤镜录制视频

Record video with face filter

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

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

这是我的代码:

   @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());

    }

谢谢:)

终于在数周后,我找到官方 google sceneform-android-sdk 用于在录制时处理 3D 模型 videos.You 可以从 Github 下载工作示例。

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

:)