1

注意:我正在使用 Monodroid,期待 C# 代码。

调用 _recorder.Start() 时,我遇到了这个错误。

代码:

private void IniciarGrabacion()
{
    try
    {
        CamcorderProfile camProfile = CamcordeProfile.Get(CamcorderQuality.High);
        String outputFile = "/sdcard/trompiz.mp4";
        _camera.Unlock ();
        _recorder = new MediaRecorder();
        _recorder.SetCamera(_camera);
        _recorder.SetAudioSource(AudioSource.Default);
        _recorder.SetVideoSource(VideoSource.Camera);
        _recorder.SetProfile(camProfile);
        _recorder.SetOutputFile(outputFile);
        _recorder.SetPreviewDisplay(_preview.Holder.Surface);
        _recorder.Prepare();
        _recorder.Start(); // HERE IS WHERE THE ERROR APPEARS
    }
    catch(Exception ex)
    {
        string error = "Error starting Recording: " + ex.Message;
        Log.Debug("ERROR",error);
        Toast.MakeText(Application, error, ToastLength.Long).Show();
    }
}

outputFile 是硬编码的,因为我仍在测试。我可以确认它存在,因为它是被创建的。

4

1 回答 1

0

我只是想出了问题。这与如何处理相机无关。这是配置文件设置。

CamcorderProfile camProfile = CamcordeProfile.Get(CamcorderQuality.High);

可能是设备错误,但我无法将其设置为高。为了让它工作,我把它改成了LOW。

CamcorderProfile camProfile = CamcordeProfile.Get(CamcorderQuality.Low);

我有 Zenithink C93 Z283 (H6_2f)

我希望这可以帮助其他任何与之抗争的人......

现在我必须看看如何以高质量录制。我知道我可以,因为本机相机应用程序记录很高......

于 2013-03-06T21:00:37.353 回答