android - 录制前视频文件大小

标签 android memory video

在我的应用程序中,我录制了两个 30 秒的视频并上传到服务器,我使用 MediaRecorder 完成了它。我想知道有什么方法可以在录制开始之前找到视频文件的大小,或者如何检测录制视频的内存不足?

最佳答案

在开始录制之前,您将无法找到视频大小。您可能真的、真的、真的粗略估计视频文件大小的上限。您可以通过了解以下知识来做到这一点:

  • 要录制的视频的分辨率
  • 视频录制的每秒帧数
  • 视频时长
  • 使用的视频编码器
  • 以及对使用编码器编码的视频文件的“典型”参数的估计

对于最后一个,有一些工具可以让您获取此类信息(例如 this )。

为什么是粗略计算?首先,因为您需要获取的数据(关于使用特定编码器编码的视频)始终只是估计的。编码器在不同的录制上的工作方式会有所不同,并且视频文件的大小可能会因许多因素而异(包括录制的颜色、录制的动态 - 该视频是静止的还是非常动态的,甚至是音频)。另外,您需要记住(根据 this )Android 我们只设置最大视频帧速率(这就是为什么您只能估计最大视频文件大小的上限)。

至于问题的内存部分:看一下this

关于android - 录制前视频文件大小,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28094925/

相关文章:

php - 使用 youtube api v3 验证视频是否存在

android - 资源 ID 在 AGP 7.0 中将不是最终的

macos - 在 silverlight 5 中以编程方式禁用硬件加速 h.264 视频解码的任何方法?

java - Apache POI with Android -- 如何创建、阅读、编写、删除 PowerPoint 演示文稿?

c++ - 研究简单的代码反汇编输出和内存映射

performance - 只读/写入内存段的最佳内存布局

PHPExcel加载函数内存不足

video - 使用 ffmpeg 将 h264(隔行扫描)上的流编码复用到 mp4

android - 我需要将笔触颜色更改为用户定义的颜色。与国家无关

android - 在 Robotium 中按下一个或完成键