gpt4 book ai didi

Android mediarecorder 只录制质量很差的视频

转载 作者:太空宇宙 更新时间:2023-11-03 12:07:05 24 4
gpt4 key购买 nike

所以我有下面的代码来做我的录音,质量绝对糟糕。我想我的设置一定是错误的,但我已经尝试了两种方法。 “CamcorderProfile”方式再“Manual”方式,可以看到摄像机代码被注释掉了。两者给出完全相同的结果。

    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 ();

这工作得很好,但问题来了。 This是我录制时预览窗口的图片,this是我播放视频时的图片。您实际上无法分辨,因为屏幕截图太糟糕了,但是也没有一种颜色是正确的(它几乎没有颜色)我认为颜色 channel 一定存在某种问题。例如,这里是与 genymotion“虚拟相机”的另一个比较。这是 correct版本。这是 weird播放版本。

最佳答案

此属性有助于提高视频质量:

mediaRecorder.setVideoEncodingBitRate(3000000);  //you may try varying the argument value

当然在 prepare() 之前调用这个方法 :)

关于Android mediarecorder 只录制质量很差的视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27055334/

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