[英]How to setup camera preview with camera2 API for both photo and video at once?
我的應用程序提供了一個攝像頭,允許用戶拍照或錄制視頻。 我無法知道用戶將選擇哪個動作。 所以我需要為這兩個動作提供相機預覽。 使用舊的相機API完全沒有問題,但我不確定camera2 API。
我已經仔細查看了兩個Google示例: Camera2Basic和Camera2Video ,我注意到,為了拍照,預覽構建器使用CameraDevice.TEMPLATE_PREVIEW :
mPreviewRequestBuilder = mCameraDevice.createCaptureRequesT(CameraDevice.TEMPLATE_PREVIEW);
對於視頻錄制,它使用CameraDevice.TEMPLATE_RECORD ;
mPreviewBuilder = mCameraDevice.createCaptureRequest(CameraDevice.TEMPLATE_RECORD);
我已經檢查了CameraDevice類中所有模板的描述,但仍然不確定在我的情況下什么是正確的方法。 我曾嘗試將TEMPLATE_PREVIEW設置為視頻錄制,但它工作正常,但我是否理解正確,在這種情況下,視頻的質量可能會更低? 文檔中的原因說明如下:
具體而言,這意味着高幀率優先於最高質量的后處理。
模板只有各種CaptureRequest設置的默認值。 每個模板都針對某些特定用例。
但為簡單起見,在開始錄制之前預覽TEMPLATE_PREVIEW應該沒問題; 我建議在實際錄制時切換到TEMPLATE_RECORD。 一旦用戶停止錄制,然后切換回TEMPLATE_PREVIEW。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.