gpt4 book ai didi

Android 视频预览和视频录制

转载 作者:行者123 更新时间:2023-11-30 03:44:30 26 4
gpt4 key购买 nike

大家好,我需要录制一段特定持续时间的视频,效果很好。但是我需要在开始实际的视频录制之前添加 30 秒的延迟,但同时我需要显示相机预览。我想知道如何实现它。通过相机对象初始化的代码是:

mCamera = Camera.open();
surfaceHolder = recorderView.getHolder();
surfaceHolder.addCallback(this);
surfaceHolder.setType(SurfaceHolder.SURFACE_TYPE_PUSH_BUFFERS);

My Recorder 对象初始化如下:

File file = new File(path, filename);
mrec = new MediaRecorder();
mCamera.lock();
mCamera.unlock();
mrec.setCamera(mCamera);
mrec.setVideoSource(MediaRecorder.VideoSource.CAMERA);
mrec.setAudioSource(MediaRecorder.AudioSource.MIC);
mrec.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mrec.setVideoEncoder(MediaRecorder.VideoEncoder.MPEG_4_SP);
mrec.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);
mrec.setVideoSize(320, 240);
mrec.setPreviewDisplay(surfaceHolder.getSurface());
mrec.setOutputFile(path + filename);
mrec.prepare();

我在前 30 秒使用倒数计时器,在它的 onfinsh 实现中我调用 mrec.start() 开始实际录制,直到我没有获得相机预览.在启动记录器之前也有大约一两秒的延迟。

最佳答案

这两行:

mCamera.unlock();
mrec.setCamera(mCamera);

停止相机预览。您必须推迟它们(以及它们之后的所有设置)直到 30 秒过去。

我也不喜欢它,但它就是这样工作的。

关于Android 视频预览和视频录制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15221119/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com