Android   发布时间:2022-04-28  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了android – 为什么FPS与原始相机应用程序不一样大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我测试了原装相机应用程序(视频模式)附带三星Galaxy Tab 8.9.保存的前置摄像头视频能够达到24 fps,640×480. (通过在转移到 Windows机器后查看视频文件属性)

但是,当我写前置Camera代码进行测试时.

@H_714_4@mCamera2.setPreviewCallBACkWithBuffer(new PreviewCallBACk() { public void onPreviewFrame(byte[] data,Camera camera) { // image processing code placed here. } });

我可以实现的最大结果是(没有将视频保存到磁盘.我只是测量onviewFrame触发率的回调函数)

> 15 fps
> 320×240,800×600

我希望性能与三星原装相机应用程序相同.我可以知道我错过了某种技巧吗?

解决方法

您看到这些结果的原因是您的回调是获取视频的样本而不是实际视频.

当摄像机将其输出转储到文件系统时,它@L_607_10@非常低级别的写入操作,将数据从摄像机的视频缓冲区复制到文件系统,而不会触及JVm.这是保持视频高质量和低延迟所必需的,并确保平滑的最终视频.如果您需要对实际视频进行​​视频处理,最好在视频录制完成后再进行.

预览回调仅仅是为您提供实际视频捕获的样本,而不是整个视频捕获 – 因为大多数15fps视频仍然看起来流畅,预览回调只会给您一个较低分辨率,较低fps预览版本的实际视频被捕获.即使是内置的三星捕获应用程序也只会显示预览版本,因为这是所有的预览界面.

除了文件系统转储或低级字节数组数据结构(例如使用JNI包装器)之外,在Android中获取准确的视频录制基准@R_674_8351@.这很容易,但尝试直接进行操作会阻止来自摄像头的输入读取,无论如何都会打破你的基准测试.

大佬总结

以上是大佬教程为你收集整理的android – 为什么FPS与原始相机应用程序不一样全部内容,希望文章能够帮你解决android – 为什么FPS与原始相机应用程序不一样所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。