我想上传视频到服务器,当我从画廊捕捉视频或从摄像机记录视频时,服务器响应我该错误,但当我上传大小为2 MB的视频时,它上传成功。如何压缩视频以减小大小?我从face book上传了视频,我手机上的视频大小是140MB,但face book对视频进行了处理,并将其大小减少到1.35MB
发布于 2015-03-26 10:19:46
有两种方法可以做到这一点:
不幸的是,我从来没有尝试过用140MB的视频做到这一点。这就是为什么我向你推荐了第一个库(FFmpeg 4android)。
顺便说一下,试着在你的服务器上增加你的UPLOAD_LIMIT。但这不是问题所在,即使你把它增加到10MB,你仍然需要压缩它。不要试图将UPLOAD_LIMIT增加到140MB,这肯定会导致HTTP超时。
否则,您需要启用分块上传。
让我们来看看这个讨论:
Android: OutOfMemoryError while uploading video - how best to chunk?
发布于 2020-06-23 12:16:59
您可以尝试使用ffmpeg将其重新编码为较低的码率,例如:
如果您尝试将140MB转换为1MB,则
通过将目标大小(以位为单位)除以视频长度(以秒为单位)来计算所需的码率。例如,对于1MB的目标大小,其是800000比特和300秒的视频,使用大约26667比特/秒(即27kbit/s)的比特率:
ffmpeg -i input.mp4 -b 27k output.mp4
通过设置Constant Rate Factor可能值得的其他选项,它降低了平均比特率,但保留了更好的质量。将CRF在18到24之间变化。
ffmpeg -i input.mp4 -vcodec libx264 -crf 20 output.mp4
快乐编码:)
https://stackoverflow.com/questions/29263797
复制