我有以下代码来进行录音,但质量非常糟糕。我认为我的设置可能有问题,但我已经尝试了两种方式。一种是“CamcorderProfile”的方式,另一种是手动的方式。你可以看到camcorder代码被注释掉了。但两种方法都给出了完全相同的结果。
Camera _camera = Camera.Open (1);
_camera.Unlock ();
recorder = new MediaRecorder ();
recorder.SetCamera (_camera);
recorder.SetAudioSource (AudioSource.Mic);
recorder.SetVideoSource (VideoSource.Camera);
recorder.SetOutputFormat (OutputFormat.Default);
recorder.SetAudioEncoder (AudioEncoder.Default);
recorder.SetVideoEncoder (VideoEncoder.Default);
//CamcorderProfile p = CamcorderProfile.Get(0, CamcorderQuality.High);
//recorder.SetProfile(p);
recorder.SetOutputFile (path);
recorder.SetPreviewDisplay(video.Holder.Surface);
recorder.Prepare ();
recorder.Start ();
这个工具的使用很顺利,但是问题出在这里。 这 是录制时预览窗口的图片,而这 是播放回放视频时的图片。虽然截图很糟糕,但实际上所有颜色都不正确(几乎没有颜色)。我认为可能有一些颜色通道的问题。例如,这里再与Genymotion“dummy camera”进行比较。这是正确的版本。这是奇怪的回放版本。