我想在Android中压缩视频并上传。压缩之前,我想显示不同的宽度和高度以及估计的大小,然后用户选择一个。
for example:
240 estimated Size =~20 MB
480 estimated Size =~40 MB
640 estimated Size =~90 MB
720 estimated Size =~130 MB
1080 estimated Size =~180 MB
现在,我正在寻找用于计算估计大小的公式。 我从Android中的MediaMetadataRetriever获取宽度,高度和比特率
retriever = new MediaMetadataRetriever();
retriever.setDataSource(path, new HashMap<String, String>());
width = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_VIDEO_WIDTH);
height = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_VIDEO_HEIGHT);
rotation = retriever.extractMetadata(MediaMetadataRetriever.METADATA_KEY_VIDEO_ROTATION);
答案 0 :(得分:0)
我找到了。 从比特率和持续时间计算文件大小,我们可以使用:
(bitrate() / 8 * duration() / 1000/1000)
例如
file size=((17305731/8)*(4655000/1000/1000))=10,069,772= 9.6 MB