資源描述:
《在android中實現(xiàn)視頻抓拍與照片自由裁剪的編程方法》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在行業(yè)資料-天天文庫。
1、在Android中實現(xiàn)視頻抓拍與照片自由裁剪的編程方法在Android操作系統(tǒng)下可通過編程實現(xiàn)對視頻圖像進行抓拍并對圖片的裁剪與上傳功能。簡單的實現(xiàn)方法采用Android自帶有關(guān)于照片的自由裁剪,非常適用及視頻抓拍的接口功能。一、視頻抓拍1、基本類Android框架通過CameraAPI或者camerIntent的方式,支持捕捉圖像和視頻。相關(guān)的大類主要有以下幾個:(1)Camera攝像時候必須調(diào)用到的類;(2)SurfaceView提供攝像頭預(yù)覽。(3)MediaRecorder錄像時候用到的類;(
2、4)Intent如果不通過Camera對象來操控攝像頭,那么用兩個intent動作MediaStore.ACTION_IMAGE_CAPTUREorMediaStore.ACTION_VIDEO_CAPTURE也能夠?qū)崿F(xiàn)攝影和錄像。oMediaStore.ACTION_IMAGE_CAPTURE——向內(nèi)置攝像頭程序請求圖像的意圖活動類型。oMediaStore.ACTION_VIDEO_CAPTURE——向內(nèi)置攝像頭程序請求視頻的意圖活動類型。2、Manifest聲明在使用CameraAPI前,必須做
3、出使用Camera硬件的聲明。主要有下面點:(1)Camera允許:(注意,如果是通過intent意圖來操控的,則不需要下面聲明)(2)Camera特征,比如說名字(3)如果你要在SD卡中保存照片和視頻,那么就得開啟SD卡權(quán)限
4、"android.permission.WRITE_EXTERNAL_STORAGE"/>(4)錄音權(quán)限(5)如果希望在照片中插入GPS當(dāng)?shù)匦畔?,還得開啟GPS3、使用方法使用攝像頭的方法有兩種:一種是編寫代碼比較少的,快速使用攝像頭
5、的意圖Intent方法;另外一種就是自動外觀的攝像頭用戶界面,要求編寫更多的代碼。4、使用Intent快速應(yīng)用攝像頭:使用默認(rèn)配置拍攝并保存/**前置攝像頭抓拍**//*--------------------------攝像頭程序-begin--------------------------------*/camera_catch.setOnClickListener(newOnClickListener(){@OverridepublicvoidonClick(Viewsource){Inten
6、tcapture_intent=newIntent(MediaStore.ACTION_IMAGE_CAPTURE);//創(chuàng)建一個文件來保存圖片F(xiàn)ileout=newFile(capture_path);//轉(zhuǎn)換為URI地址Uriuri=Uri.fromFile(out);//設(shè)置圖片保存capture_intent.putExtra(MediaStore.EXTRA_OUTPUT,uri);//圖片質(zhì)量為高capture_intent.putExtra(MediaStore.EXTRA_VIDEO_
7、QUALITY,1);//啟動拍照意圖startActivityForResult(capture_intent,CAPTURE_REQUEST_CODE);}});}/**拍照,并保存數(shù)據(jù),通過重寫onActivityResult方法去返回處理結(jié)果給主main:RFID**/@OverrideprotectedvoidonActivityResult(intrequestCode,intresultCode,Intentdata){//重寫父類方法super.onActivityResult(req
8、uestCode,resultCode,data);if(requestCode==CAPTURE_REQUEST_CODE)//判斷是攝像頭請求{if(resultCode==RESULT_OK){//拍照圖像顯示Bitmapcapture_bm=(Bitmap)data.getExtras().get("data");p1_image.setImageBitmap(capture_bm);FilecaptureFile=newFile(capture