10

我正在尝试使用 Intent 录制视频,视频质量很高,大小高于 5mb。

我正在使用运行 android 4.2.2 的三星 Galaxy S

这是我的代码:

            Intent i = new Intent("android.media.action.VIDEO_CAPTURE");
            // i.putExtra(android.provider.MediaStore.EXTRA_OUTPUT,
            // Uri.fromFile(FileUtils.getFileName(FileTypes.VIDEO)));
            i.putExtra(android.provider.MediaStore.EXTRA_VIDEO_QUALITY, 0);
            i.putExtra(android.provider.MediaStore.EXTRA_SIZE_LIMIT, 5242880);
            i.putExtra("android.intent.extra.durationLimit", 45);
            startActivityForResult(i, Config.RECORD_VIDEO);
4

1 回答 1

13

查看MediaStore.EXTRA_VIDEO_QUALITY的文档

它说值 0 意味着低质量。您可以将值更改为 1。

我将 5Mb 的值设置为 5491520L。

一起可以是:

import android.provider.MediaStore;
...


Intent i = new Intent(MediaStore.VIDEO_CAPTURE);
...
i.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 1);
i.putExtra(MediaStore.EXTRA_SIZE_LIMIT, 5491520L);//5*1048*1048=5MB
i.putExtra(MediaStore.EXTRA_DURATION_LIMIT,45);
startActivityForResult(i, Config.RECORD_VIDEO);
于 2014-03-09T19:32:15.713 回答