gpt4 book ai didi

android - 在 Android 的 MediaRecorder 中包含音频

转载 作者:行者123 更新时间:2023-11-29 02:12:02 25 4
gpt4 key购买 nike

我在我的 Android 应用程序中集成了摄像头,可以通过移动摄像头录制视频并保存在 SD 卡中。它工作正常,但保存的 3gpp 文件没有附加音频。如果我添加音频配置,摄像头不会打开,只会看到黑屏。这是我的代码:

if(camera == null) {
camera = Camera.open();
camera.unlock();
}
recorder.setCamera(camera);
recorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setVideoEncoder(MediaRecorder.VideoEncoder.MPEG_4_SP);
recorder.setOutputFile("/sdcard/adtvworld.3gpp");
recorder.setPreviewDisplay(holder.getSurface());
recorder.prepare();

最佳答案

您需要按正确的顺序设置音源和编码器。您得到的异常是 java.lang.IllegalStateException。尝试以下操作:

if(camera == null) {
camera = Camera.open();
camera.unlock();
}
recorder.setCamera(camera);
recorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
recorder.setAudioSource(MediaRecorder.AudioSource.CAMCORDER);
recorder.setOutputFormat(MediaRecorder.OutputFormat.THREE_GPP);
recorder.setVideoEncoder(MediaRecorder.VideoEncoder.MPEG_4_SP);
recorder.setAudioEncoder(MediaRecorder.AudioEncoder.AAC);
recorder.setOutputFile("/sdcard/adtvworld.3gpp");
recorder.setPreviewDisplay(holder.getSurface());
recorder.prepare();

这段代码应该适合您。随意将 AudioEncoder 更改为 AAC 以外的其他内容,尽管它对于低 kbps 是最有效的。

关于android - 在 Android 的 MediaRecorder 中包含音频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6746980/

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