我想在上传到服务器之前压缩视频文件。我经历了这个链接 How to compress a video to maximum level android,但我没有得到答案。任何人都可以帮助我吗?
答案 0 :(得分:3)
试一试
mediaRecorder.setProfile(CamcorderProfile.get(CamcorderProfile.QUALITY_HIGH));
mediaRecorder.setVideoEncodingBitRate(690000 );
答案 1 :(得分:0)
我们可以在android中使用ffmpeg压缩视频。
为了在android中集成FFmpeg,我们可以使用预编译的库,如ffmpeg-android。
您可以使用以下命令压缩视频
String[] command = {"-y", "-i", inputFileAbsolutePath, "-s", "160x120", "-r", "25", "-vcodec", "mpeg4", "-b:v", "150k", "-b:a", "48000", "-ac", "2", "-ar", "22050", outputFileAbsolutePath};
下面,
<强> -y 强>
无需询问即覆盖输出文件。
<强> -i 强>
ffmpeg从-i选项
指定的任意数量的输入“文件”中读取<强> -s 强>
视频输出尺寸
<强> -r 强>
设置帧速率
<强> -vcodec 强>
设置视频编解码器。
<强> -b:v 强>
设置视频比特率
<强> -b:一个强>
设置音频比特率
<强> -ac 强>
设置音频通道数。
<强> -ar 强>
设置音频流的采样率(如果已编码)
有关在android中使用ffmpeg编辑视频的详细说明和代码,请查看我博客上的ffmpeg视频编辑器教程链接,其中包括使用ffmpeg压缩视频 -
https://androidlearnersite.wordpress.com/2017/03/17/ffmpeg-video-editor/
答案 2 :(得分:-1)
您必须使用ffmpeg lib压缩视频: -
ffmpeg -i input.mp4 -acodec mp2 output.mp4