android - 录制视频时设置 durationLimit 或 sizeLimit 的替代方法?

标签 android video camera android-camera-intent

我想实现的是用户只能录制 30 秒或特定大小的视频。

我尝试使用下面的那些(单独或一起使用)

public static final java.lang.String EXTRA_SIZE_LIMIT = "android.intent.extra.sizeLimit";
public static final java.lang.String EXTRA_DURATION_LIMIT = "android.intent.extra.durationLimit";

结果

  1. EXTRA_SIZE_LIMIT 不适用于三星手机。在 HTC 上,它的工作非常不准确。您必须将 EXTRA_VIDEO_QUALITY 设置为 0,这意味着质量低(这太糟糕了),如果您将其设置为“1”,它将无法工作。

  2. EXTRA_DURATION_LIMIT 不适用于 HTC 手机。除了 HTC,我尝试过的所有品牌都没有任何问题。

所以我想知道是否还有其他方法可以在 Android 上录制视频时设置时长或大小限制?

最佳答案

Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
    intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0); //Low Quality
    intent.putExtra(MediaStore.EXTRA_SIZE_LIMIT,2097152L);  //2MB
    intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT,30); //30Seconds
    startActivityForResult(intent, CAPTURE_VIDEO_ACTIVITY_REQUEST_CODE);

您可以使用这种方式通过键“EXTRA_SIZE_LIMIT”和“EXTRA_DURATION_LIMIT”设置视频大小或持续时间。

这很好用。

关于android - 录制视频时设置 durationLimit 或 sizeLimit 的替代方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14501881/

相关文章:

android - list 合并错误 - 工具 :replace not working

javascript - 根据两个选择框更新html视频,加载但不播放视频

video - 修复损坏的 .MP4 文件。这可能是一个 3gp 文件

java - 具有多个 MenuItem 的 ActionBarSherlock?

android - ADWORDS 通用应用广告系列 : 'new playstore app not shown in app list'

android - 如何在布局中将 View 居中而不与其他 View 重叠

android - 如何使用 MediaCodec、MediaExtractor 或 MediaMetadataRetriever 确定视频文件的帧率?

android - 如何使用 intent 设置相机分辨率?

ios - 无法在触摸模式下启动 iPhone X 闪光灯

c++ - 如何使用 OpenCV 3.4.2 将相机设置为自动曝光?