无法设置媒体录像机的视频质量。视频会产生闪烁的视频

吉涅什·in那
mMediaRecorder = new MediaRecorder();
    // Step 1: Unlock and set camera to MediaRecorder
    mCamera.unlock();
    mMediaRecorder.setCamera(mCamera);
    // Step 2: Set sources
    // activate this for recording with sound\

    mMediaRecorder.setAudioSource(MediaRecorder.AudioSource.MIC);
    mMediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);

    mMediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);

    mMediaRecorder.setVideoSize(getMaxSupportedVideoSize().width,getMaxSupportedVideoSize().height);

    mMediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
    mMediaRecorder.setAudioEncoder(MediaRecorder.AudioEncoder.AMR_NB);

    // Step 4: Set output file
    mMediaRecorder.setOutputFile(getOutputMediaFile("movie"));

    // Step 4: Set output file
    mMediaRecorder.setOutputFile(getOutputMediaFile("movie"));


    // Step 5: Set the preview output
    mMediaRecorder.setPreviewDisplay(mPreview.getHolder().getSurface());

    mMediaRecorder.setOrientationHint(90);

上面的代码可以正常工作,但是,视频质量与我通过本机android摄像机拍摄的视频不一样,与媒体本机相比,我使用媒体录制器录制的视频质量较差,我该如何提高视频质量。

如果有人知道,请帮帮我。

维斯隆

我不是Java / Android开发人员,我使用的是Xamarin和C#,但我遇到的问题大致相同,我的解决方案应直接适用(即使语法几乎相同)。

我发现,如果您正在使用setCamera(并且在启动mediaRecorder之前正在预览相机看到的内容),那么它将无法让您更改上的质量设置mediaRecorder

然后,当您调用时mediaRecorder.start(),它崩溃或死机或显示垃圾。

基本上,只要摄像机正在预览,就不会允许MediaRecorder以与摄像机已经不同的质量开始录制。你需要

  1. 停止相机预览,
  2. 带走其预览表面
  3. 将摄像机分配给MediaRecorder(使用setCamera
  4. 用您需要的质量设置MediaRecorder
  5. 然后重新附加预览图

然后,当您开始录制时,一切都会正常进行。

因此,根据您的情况,在致电之前,请mediaRecorder.setCamera()尝试以下操作:

mCamera.stopPreview(); mCamera.setPreviewDisplay(null);

然后往下走,做你的

mRecorder.setCamera()

那是我的解决方案。现在,我可以将视频质量设置为720p(或1080p),并且效果很好。

但是,当您停止录制时,预览也将停止。

您可能需要恢复您的

mCamera.setPreviewDisplay(mPreview.getHolder().getSurface())

还原到之前的状态,然后重新启动实际的预览。

我希望它也对您有用:)

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

filepicker.io使用录像机时视频滞后

来自分类Dev

Tkinter视频的闪烁视频

来自分类Dev

使用Javascript监控WebRTC视频(媒体)流质量

来自分类Dev

ffmpeg复杂的过滤器会降低视频质量

来自分类Dev

ffmpeg淡入淡出效果会降低视频质量

来自分类Dev

播放 YouTube 视频后无法正确设置相关视频

来自分类Dev

设置jw播放器youtube视频播放质量

来自分类Dev

设置jw播放器youtube视频播放质量

来自分类Dev

avconv转换质量很差的视频

来自分类Dev

avconv转换质量很差的视频

来自分类Dev

媒体录像机启动时应用程序崩溃?

来自分类Dev

HTML5视频闪烁

来自分类Dev

FireFox 视频闪烁白框

来自分类Dev

网络摄像头录像机

来自分类Dev

iOS Swift-无法使用媒体库中的视频

来自分类Dev

从视频捕获卡中保存最高质量的视频

来自分类Dev

更改视频质量和视频比特率

来自分类Dev

摄像机2:无法全屏录制视频?

来自分类Dev

最佳DVD视频设置

来自分类Dev

合并视频和照片后视频绿色闪烁

来自分类Dev

JS视频| DOMException:无法启动视频源

来自分类Dev

Licode Erizo.Stream视频帧质量

来自分类Dev

使用ffmpeg提高webm视频的质量

来自分类Dev

使用ffmpeg编码:视频质量下降

来自分类Dev

是否有衡量视频质量的工具?

来自分类Dev

以较低的质量加载Youtube iFrame API视频

来自分类Dev

使用ffmpeg提高webm视频的质量

来自分类Dev

更改PHP或JavaScript中的视频质量

来自分类Dev

以全高清质量下载Android视频