簡體   English   中英

AVCaptureDevice的hasFlash和hasTorch屬性之間有什么區別?

[英]What is the difference between AVCaptureDevice’s hasFlash and hasTorch properties?

AVCaptureDevice具有hasFlashhasTorch屬性(以及類似的其他方法/屬性)。 閃光燈和手電筒有什么區別?

另外,是否存在僅具有上述一種設備的iOS設備?

手電筒是常亮的光。 如果您使用的是美式英語,請考慮使用手電筒。

閃光燈是拍攝照片時使用的短暫的強光。

所有較新的手機都具備。 我相信最后的iPod touch兼具兩者。 它最有可能只有較舊的設備帶有閃光燈且沒有割炬。

在iPhone設備上,兩個攝像頭都具有閃光燈:后置攝像頭具有LED攝像頭閃光燈,並且可以在手電筒模式下運行,而前置攝像頭將顯示屏用作閃光燈(短時間顯示白屏會發出足夠的光),但顯示屏不能用作火炬。

選中[device hasFlash]以從AVCaptureDevice列表中以編程方式設置LED閃光燈的開/關:

NSArray * devices = [AVCaptureDevice devicesWithMediaType:AVMediaTypeVideo];

這是不夠的,因為兩個攝像頭都將通過條件[device hasFlash],但是為前置攝像頭設置[device setTorchMode:AVCaptureTorchModeOn]可能會導致應用崩潰。 最好的方法可能是同時檢查兩個:

if ([device hasFlash] && [device hasTorch]) {
 [device lockForConfiguration:nil];
 [device setTorchMode:AVCaptureTorchModeOn]; // for example
 [device unlockForConfiguration];
}

暫無
暫無

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

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