簡體   English   中英

如何在Android Camera2上將捕獲的照片另存為jpg文件

[英]How to save captured photos as jpg files on android camera2

當我單擊捕獲按鈕時,

在Imageview上顯示相機預覽捕獲圖像。

但我想將相機預覽捕獲圖像保存為jpg格式。 在我的存儲中。

如何保存我的拍攝圖像? 在“ / sdcard / DCIM /”文件夾中。

//click button.
captureBtn.setOnClickListener(View.OnClickListener {
    view -> takePicture()
}

fun takePicture() {
   mCameraDevice?.createCaptureSession(arrayListOf(mImageReader?.surface), mSessionCallback, null)
}

private val mSessionCallback = object : CameraCaptureSession.StateCallback() {
   override fun onConfigured(cameraCaptureSession: CameraCaptureSession?) {
       if (mCameraDevice == null) {
           return
       }

       mCaptureSession = cameraCaptureSession
       val captureBuilder = mCameraDevice?.createCaptureRequest(CameraDevice.TEMPLATE_STILL_CAPTURE)
       captureBuilder?.addTarget(mImageReader!!.surface)
       mCaptureSession?.capture(captureBuilder?.build(), mCaptureCallback, null)
     }
   }


   private val mCaptureCallback = object : CameraCaptureSession.CaptureCallback() {

    override fun onCaptureProgressed(session: CameraCaptureSession?, request: CaptureRequest?, partialResult: CaptureResult?) {
        Log.d(TAG, "Partial result")
    }

    override fun onCaptureFailed(session: CameraCaptureSession?, request: CaptureRequest?, failure: CaptureFailure?) {
        Log.d(TAG, "Capture session failed")
    }

    override fun onCaptureCompleted(session: CameraCaptureSession?, request: CaptureRequest?, result: TotalCaptureResult?) {
        session?.close()
        mCaptureSession = null
        Log.d(TAG, "Capture session closed")
    }
}

此源顯示了ImageView上的相機預覽捕獲。

我要捕獲照片,保存jpg文件。

如何保存拍攝圖像?

謝謝。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM