【发布时间】:2015-09-21 10:36:25
【问题描述】:
我正在从相机录制低质量视频并将其上传到服务器。问题是录制的视频采用 3gp 格式。即使我给出带有 mp4 扩展路径的 EXTRA_OUTPUT 标志,它仍然会记录在 3gp 中。
实际上,在 iOS 设备上,这个 3gp 视频没有播放,我不想使用 ffmpeg 将其转换为 mp4,因为它有开销,而且转换需要时间。
这是我正在使用的代码:-
ContentValues values = new ContentValues();
String fileName = System.currentTimeMillis() + ".mp4";
values.put(MediaStore.Video.Media.TITLE, fileName);
values.put(MediaStore.Video.Media.MIME_TYPE, "video/mp4");
try {
Uri videoUriFromCamera = getContentResolver().insert(
MediaStore.Video.Media.EXTERNAL_CONTENT_URI, values);
Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
intent.putExtra(MediaStore.EXTRA_VIDEO_QUALITY, 0);
intent.putExtra(MediaStore.EXTRA_OUTPUT, videoUriFromCamera);
if (videoSize != -1)
intent.putExtra(MediaStore.EXTRA_SIZE_LIMIT, videoSize);
if (videoDuration != -1)
intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, videoDuration);
startActivityForResult(intent, ACTION_REQUEST_VIDEO_FROM_CAMERA);
} catch (Exception e) {
e.printStackTrace();
Toast.makeText(VideoPickActivity.this, "SD-Card not available", Toast.LENGTH_LONG).show();
}
有什么方法或标志可以让我使用默认相机意图以 mp4 格式或任何其他格式录制低质量视频?
【问题讨论】:
标签: android