【发布时间】:2015-01-22 17:22:58
【问题描述】:
在我的应用程序中,我录制了两个 30 秒的视频并上传到服务器,我使用 MediaRecorder 完成了它。我想知道在录制开始之前有什么方法可以找到视频文件的大小,或者如何检测内存不足来录制视频?
【问题讨论】:
在我的应用程序中,我录制了两个 30 秒的视频并上传到服务器,我使用 MediaRecorder 完成了它。我想知道在录制开始之前有什么方法可以找到视频文件的大小,或者如何检测内存不足来录制视频?
【问题讨论】:
在开始录制之前,您将无法找到视频大小。您可能真的,真的,REALLY 粗略估计视频文件大小的上限。您可以通过以下知识做到这一点:
至于最后一个,有一些工具可以让你获取这些信息(例如this)。
为什么要粗略计算?首先,因为您需要获取的数据(关于使用特定编码器编码的视频)总是只是估计的。编码器在不同的录制中会有所不同,视频文件的大小可能会因许多因素而异(包括录制的颜色、录制的动态 - 该视频是静止的还是非常动态的,甚至是音频)。另外你需要记住(根据this)Android 让我们只设置最大视频帧率(这就是为什么你只能估计最大视频文件大小的上限)。
至于问题的记忆部分:看看this。
【讨论】: