Android上传到服务器之前压缩视频

在上传到远程服务器之前,如何在Android中压缩视频文件?我不打算压缩文件,因为我认为这不会有多大帮助.我想压缩视频并以较低的比特率或分辨率重新编码.我们的想法是从每个设备获得标准的360х480,30FPS视频文件.通过这种方式,我可以避免使用更好的摄像头的用户上传大量视频文件.

我知道iOS使得强制视频文件分辨率相当简单. iPhone 4上录制的10秒视频:

>高(1280х720)= ~14MB = ~11Mbit / s
> 640(640х480)= ~4MB = ~3.2Mbit / s
>中(360х480)= ~1MB = ~820Kbit / s
>低(144х192)= ~208KB = ~170Kbit / s

有没有简单的方法在Android中执行此操作?我是否需要找到一些外部库,让我重新编码视频文件,然后将其保存到SD卡(或覆盖旧的视频文件),然后上传该文件?主要是在这里寻找总体方向,而不是复制和粘贴的代码,尽管任何有用的东西.

解决方法:

我有一个类似的问题.由于不同手机的不同摄像头分辨率,我不得不上传大小在5.4mb.bt的服务器中的视频,有一个问题.这些是我选择的解决方案

mediaRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));
mediaRecorder.setVideoEncodingBitRate(690000);

希望这些能帮到你

上一篇:c – 如何使用zlib轻松压缩和解压缩文件?


下一篇:java – Deflater和GZip压缩之间的区别