Android MediaRecorder API会继续裁剪视频比特率

前端之家收集整理的这篇文章主要介绍了Android MediaRecorder API会继续裁剪视频比特率前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我正在使用MediaRecorder API一段时间,我认为所有问题都在我身后,但我想我错了.

我正在使用MediaRecorder API将视频录制到文件中.
当我使用高质量的setProfile时,我获得了良好的质量,但是当我尝试手动设置参数时(如下面的代码中),质量很差(因为某种原因,比特率被裁剪).
我想用1fps获得720p.

我一直收到以下警告:
WARN / AuthorDriver(268):视频编码比特率设置为480000 bps

我正在运行的代码

m_MediaRecorder.setVideoSource(MediaRecorder.VideoSource.CAMERA);
m_MediaRecorder.setOutputFormat(MediaRecorder.OutputFormat.MPEG_4);
m_MediaRecorder.setVideoSize(1280,720);
m_MediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
m_MediaRecorder.setVideoFrameRate(1);
m_MediaRecorder.setVideoEncodingBitRate(8000000);

任何的想法?
非常感谢.

解决方法

找到解决方案……但非常奇怪.
在设置压缩类型之前设置比特率以某种方式解决了问题.
唯一的问题是它是谷歌代码中的错误还是其他我不理解的错误.

原版的:

m_MediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
m_MediaRecorder.setVideoFrameRate(1);
m_MediaRecorder.setVideoEncodingBitRate(8000000);

解:

m_MediaRecorder.setVideoEncodingBitRate(8000000);
m_MediaRecorder.setVideoEncoder(MediaRecorder.VideoEncoder.H264);
m_MediaRecorder.setVideoFrameRate(1);

猜你在找的Android相关文章