我是android开发的新手。
我有一个在android设备上录制视频的要求。当我搜索它的时候,我没有找到任何正常工作的代码。即使是android开发人员也不会提供清晰的代码。
请,如果有人有链接或代码..与我分享..
谢谢。。
发布于 2013-11-13 15:26:02
在xml文件中放置一个按钮,用于打开摄像头进行视频录制。
在这里,我放了视频重新编码代码。
这将在您的sdcard中创建一个文件夹,或者如果没有插入sd卡,它将使用系统内存。希望你知道。我不需要对此做太多解释。
然后将下面的单击侦听器映射到您在xml中设计的按钮
Button recordButton =
(Button) findViewById(R.id.CaptureVid);
recordButton.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View arg0) {
String timestamp="1";
String timestamp = new SimpleDateFormat("MM-dd-yyyy_HH-mm-ss aa").format(Calendar.getInstance().getTime());
File filepath = Environment.getExternalStorageDirectory();
File dir = new File(filepath.getAbsolutePath()+ "/samplevideofolder/");
dir.mkdirs();
File mediaFile = new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/samplevideofolder/Video_"+timestamp+".avi");
Intent intent = new Intent(MediaStore.ACTION_VIDEO_CAPTURE);
Uri fileUri = Uri.fromFile(mediaFile);
intent.putExtra(MediaStore.EXTRA_OUTPUT, fileUri);
intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, 30);
startActivityForResult(intent, VIDEO_CAPTURE);
}
});将这段代码放在下面的某个地方,作为主类中的函数
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (requestCode == VIDEO_CAPTURE) {
if (resultCode == RESULT_OK) {
Toast.makeText(this, "Video saved to:\n" +data.getData(), Toast.LENGTH_LONG).show();
} else if (resultCode == RESULT_CANCELED) {
Toast.makeText(this, "Video recording cancelled.", Toast.LENGTH_LONG).show();
} else {
//Toast.makeText(this, "Failed to record video", Toast.LENGTH_LONG).show();
}
}
}就这样,你已经完成了视频录制..
在上面的代码中,您可以找到像这样的行。
intent.putExtra(MediaStore.EXTRA_DURATION_LIMIT, 30);这将在30秒后自动停止视频,,,如果您想录制超过30秒的视频,则不限制时间。只需注释此行即可。好的
发布于 2011-06-14 11:38:07
您可以使用Media Recorder类来执行此操作,如下所示:How can I capture a video recording on Android?
https://stackoverflow.com/questions/3324934
复制相似问题