已删除并重新要求清晰和更好的解释。
下面是我的应用程序的代码,并附有图像。视频帧速率很好,但是帧质量非常低,并且比特率似乎很低,但是编辑比特率不会改变视频源,这让我认为这是另一个问题。有人以前遇到过这个问题吗?
private int videoQuality = 100000;
private int videoFramerate = 30;
private void setupMediaRecorder() throws IOException {
mediaRecorder.setVideoSource(MediaRecorder.VideoSource.SURFACE);
mediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
mediaRecorder.setOutputFile(videoFileName); //timestamp.mp4
mediaRecorder.setVideoEncodingBitRate(videoQuality);
mediaRecorder.setVideoFrameRate(videoFramerate);
mediaRecorder.setVideoSize(videoSize.getWidth(), videoSize.getHeight());
mediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.DEFAULT);
mediaRecorder.setOrientationHint(totalRotation);
mediaRecorder.prepare();
}
预览截图
录音截图
录音- Action 截图
最佳答案
原来 1000000 比特率太低,改为 10000000 看起来不错。
关于java - Camera2 和 Mediarecorder 输出高质量预览但低质量 mp4,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48738072/