亚洲精品久久久久久第一页-人妻少妇精彩视品一区二区三区-91国产自拍免费视频-免费一级a在线播放视频正片-少妇天天日天天射天天爽-国产大屁股喷水视频在线观看-操美女骚穴抽插性爱视频-亚洲 欧美 中文字幕 丝袜-成人免费无码片在线观看

自帶root權(quán)限的框架 android網(wǎng)絡(luò)框架對比( 二 )


6. 靈活的 3A 控制 3A(AF、AE、AWB)的控制在 Camera2 上得到了最大化的放權(quán),應(yīng)用層可以根據(jù)業(yè)務(wù)需求靈活配置 3A 流程并且實(shí)時(shí)獲取 3A 狀態(tài),而 Camera1 在 3A 的控制和監(jiān)控方面提供的接口則要少了很多 。例如你可以在拍照前進(jìn)行 AE 操作,并且監(jiān)聽本這次拍照是否點(diǎn)亮閃光燈 。#####3)何為HAL3?為了配合Camera2 的使用,Android Hal層Camera框架也做了相對應(yīng)的改動(dòng),也就是HAL3 。Camera1接口對應(yīng)的是調(diào)用的HAL1框架 。
3)一些概念
關(guān)于Camera2 和Hal3,有些基本概念我們得了解下~
我們先來看下Camera2 API涉及到哪些類,下面會(huì)對各個(gè)類的使用進(jìn)行講解~~
1) Pipeline
Camera2 的 API 模型被設(shè)計(jì)成一個(gè) Pipeline(管道),它按順序處理每一幀的請求并返回請求結(jié)果給客戶端 。
下面這張來自官方的圖展示了 Pipeline 的工作流程,我們會(huì)通過一個(gè)簡單的例子詳細(xì)解釋這張圖 。
為了解釋上面的示意圖,假設(shè)我們想要同時(shí)拍攝兩張不同尺寸的圖片,并且在拍攝的過程中閃光燈必須亮起來 。整個(gè)拍攝流程如下:
1.創(chuàng)建一個(gè)用于從 Pipeline 獲取圖片的 CaptureRequest 。2.修改 CaptureRequest 的閃光燈配置,讓閃光燈在拍照過程中亮起來 。3.創(chuàng)建兩個(gè)不同尺寸的 Surface 用于接收圖片數(shù)據(jù),并且將它們添加到 CaptureRequest 中 。4.發(fā)送配置好的 CaptureRequest 到 Pipeline 中等待它返回拍照結(jié)果 。
一個(gè)新的 CaptureRequest 會(huì)被放入一個(gè)被稱作 Pending Request Queue 的隊(duì)列中等待被執(zhí)行,當(dāng) In-Flight Capture Queue 隊(duì)列空閑的時(shí)候就會(huì)從 Pending Request Queue 獲取若干個(gè)待處理的 CaptureRequest,并且根據(jù)每一個(gè) CaptureRequest 的配置進(jìn)行 Capture 操作 。最后我們從不同尺寸的 Surface 中獲取圖片數(shù)據(jù)并且還會(huì)得到一個(gè)包含了很多與本次拍照相關(guān)的信息的 CaptureResult,流程結(jié)束 。
2 )Supported Hardware Level相機(jī)功能的強(qiáng)大與否和硬件息息相關(guān),不同廠商對 Camera2 的支持程度也不同,所以 Camera2 定義了一個(gè)叫做 Supported Hardware Level 的重要概念,其作用是將不同設(shè)備上的 Camera2 根據(jù)功能的支持情況劃分成多個(gè)不同級別以便開發(fā)者能夠大概了解當(dāng)前設(shè)備上 Camera2 的支持情況 。
截止到 Android P 為止,從低到高一共有 LEGACY、LIMITED、FULL 和 LEVEL_3 四個(gè)級別:
1. LEGACY :向后兼容的級別,處于該級別的設(shè)備意味著它只支持 Camera1 的功能,不具備任何 Camera2 高級特性 。2. LIMITED :除了支持 Camera1 的基礎(chǔ)功能之外,還支持部分 Camera2 高級特性的級別 。3. FULL :支持所有 Camera2 的高級特性 。4. LEVEL_3 :新增更多 Camera2 高級特性,例如 YUV 數(shù)據(jù)的后處理等 。
3 )Capture相機(jī)的所有操作和參數(shù)配置最終都是服務(wù)于圖像捕獲,例如對焦是為了讓某一個(gè)區(qū)域的圖像更加清晰,調(diào)節(jié)曝光補(bǔ)償是為了調(diào)節(jié)圖像的亮度 。因此,在 Camera2 里面所有的相機(jī)操作和參數(shù)配置都被抽象成 Capture(捕獲),所以不要簡單的把 Capture 直接理解成是拍照,因?yàn)?Capture 操作可能僅僅是為了讓預(yù)覽畫面更清晰而進(jìn)行對焦而已 。如果你熟悉 Camera1,那你可能會(huì)問 setFlashMode() 在哪? setFocusMode() 在哪? takePicture() 在哪?
告訴你,它們都是通過 Capture 來實(shí)現(xiàn)的 。
Capture 從執(zhí)行方式上又被細(xì)分為 單次模式、多次模式 和 重復(fù)模式三種,我們來一一解釋下:
? 單次模式(One-shot) :指的是只執(zhí)行一次的 Capture 操作,例如設(shè)置閃光燈模式、對焦模式和拍一張照片等 。多個(gè)一次性模式的 Capture 會(huì)進(jìn)入隊(duì)列按順序執(zhí)行 。? 多次模式(Burst) :指的是連續(xù)多次執(zhí)行指定的 Capture 操作,該模式和多次執(zhí)行單次模式的最大區(qū)別是連續(xù)多次 Capture 期間不允許插入其他任何 Capture 操作,例如連續(xù)拍攝 100 張照片,在拍攝這 100 張照片期間任何新的 Capture 請求都會(huì)排隊(duì)等待,直到拍完 100 張照片 。多組多次模式的 Capture 會(huì)進(jìn)入隊(duì)列按順序執(zhí)行 。? 重復(fù)模式(Repeating) :指的是不斷重復(fù)執(zhí)行指定的 Capture 操作,當(dāng)有其他模式的 Capture 提交時(shí)會(huì)暫停該模式,轉(zhuǎn)而執(zhí)行其他被模式的 Capture,當(dāng)其他模式的 Capture 執(zhí)行完畢后又會(huì)自動(dòng)恢復(fù)繼續(xù)執(zhí)行該模式的 Capture,例如顯示預(yù)覽畫面就是不斷 Capture 獲取每一幀畫面 。該模式的 Capture 是全局唯一的,也就是新提交的重復(fù)模式 Capture 會(huì)覆蓋舊的重復(fù)模式 Capture 。


以上關(guān)于本文的內(nèi)容,僅作參考!溫馨提示:如遇健康、疾病相關(guān)的問題,請您及時(shí)就醫(yī)或請專業(yè)人士給予相關(guān)指導(dǎo)!

「愛刨根生活網(wǎng)」www.malaban59.cn小編還為您精選了以下內(nèi)容,希望對您有所幫助: