Pracuję nad prostą aplikacją, w której muszę włączyć tryb lampy błyskowej w aparacie fotograficznym, aby był stale włączony nie tylko podczas robienia zdjęć. A trybem działania powinien być aparat, a nie nagrywanie wideo. Czy to możliwe ? Jeśli tak, to w jaki sposób. Proszę o pomoc przy pomocy koduOtwieranie aparatu z trybem lampy błyskowej
Odpowiedz
Możesz użyć poniższej metody do włączania i wyłączania lampy błyskowej.
- (void)toggleFlashlight
{
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if (device.torchMode == AVCaptureTorchModeOff)
{
// Create an AV session
AVCaptureSession *session = [[AVCaptureSession alloc] init];
// Create device input and add to current session
AVCaptureDeviceInput *input = [AVCaptureDeviceInput deviceInputWithDevice:device error: nil];
[session addInput:input];
// Create video output and add to current session
AVCaptureVideoDataOutput *output = [[AVCaptureVideoDataOutput alloc] init];
[session addOutput:output];
// Start session configuration
[session beginConfiguration];
[device lockForConfiguration:nil];
// Set torch to on
[device setTorchMode:AVCaptureTorchModeOn];
[device unlockForConfiguration];
[session commitConfiguration];
// Start the session
[session startRunning];
// Keep the session around
[self setAVSession:session];
[output release];
}
else
{
[AVSession stopRunning];
[AVSession release],
AVSession = nil;
}
}
Można również użyć następującej metody wraz z wyświetlaczem aparatu,
- (void) toggleFlashlight {
// check if flashlight available
Class captureDeviceClass = NSClassFromString(@"AVCaptureDevice");
if (captureDeviceClass != nil) {
AVCaptureDevice *device = [AVCaptureDevice defaultDeviceWithMediaType:AVMediaTypeVideo];
if ([device hasTorch] && [device hasFlash]){
[device lockForConfiguration:nil];
if (device.torchMode == AVCaptureTorchModeOff)
{
[device setTorchMode:AVCaptureTorchModeOn];
[device setFlashMode:AVCaptureFlashModeOn];
}
else
{
[device setTorchMode:AVCaptureTorchModeOff];
[device setFlashMode:AVCaptureFlashModeOff];
}
[device unlockForConfiguration];
}
}
}
@ Kod_cracker, czy tego szukasz? – iDev
Należy sprawdzić, czy urządzenie ma funkcję palnika ;-) 'BOOL deviceHasFlash = ([urządzenie hasTorch] && [device hasFlash]);' – atxe
@atxe, To prawda. To powinno być sprawdzone. Ale ponieważ planował użyć trybu flash, zakładam, że to już jest sprawdzone. – iDev
Służy do szybkiego 4
func toggleFlash() {
guard let device = AVCaptureDevice.default(for: AVMediaType.video)
else {return}
if device.hasTorch {
do {
try device.lockForConfiguration()
if device.torchMode == AVCaptureDevice.TorchMode.on {
device.torchMode = AVCaptureDevice.TorchMode.off
//AVCaptureDevice.TorchModeAVCaptureDevice.TorchMode.off
} else {
do {
try device.setTorchModeOn(level: 1.0)
} catch {
print(error)
}
}
device.unlockForConfiguration()
} catch {
print(error)
}
}
}
- 1. Włączanie lampy błyskowej podczas nagrywania wideo
- 2. Włączanie i wyłączanie lampy błyskowej
- 3. .NET: Jak utworzyć miniaturę z lampy błyskowej
- 4. Jak wyzwalać funkcje javascript z lampy błyskowej?
- 5. Jakie pozwolenie jest mi potrzebne do korzystania z lampy błyskowej w podglądzie kamery?
- 6. Jak dodać znak nowej linii do błędu lampy błyskowej?
- 7. UIViewController - przełącznik przedstawiony kontroler widoku bez lampy błyskowej do prezentacji?
- 8. Symfony - Ustawianie lampy błyskowej i sprawdzanie w TWIG
- 9. Czy istnieje sposób wyłączenia lampy błyskowej/migania na iPadzie/iPhonie po uruchomieniu przycisku onclick?
- 10. Java FileWriter z trybem dołączania
- 11. Kadrowanie aparatu z Androidem
- 12. Otwieranie pliku z Java
- 13. Problem z trybem krajobrazu z paskiem nawigacyjnym
- 14. Przełączanie między trybem wyświetlania i trybem edycji w MVVM?
- 15. Różnica między "Trybem przeglądarki" a "Trybem dokumentu" w Internet Explorerze
- 16. Jakie są różnice między trybem binarnym MD5 a trybem tekstowym?
- 17. Jaka jest różnica między trybem pracy roota a trybem roju?
- 18. Przeprowadzka z Wiimote do aparatu?
- 19. Jak przycinać obrazy z aparatu
- 20. Widok powierzchni aparatu z Androidem
- 21. Aparaty aparatu Android z przycięciem
- 22. otwieranie html z google drive
- 23. jak pracować z trybem RegexIterator :: REPLACE?
- 24. Minimalizuj okno z trybem NoResize na
- 25. Otwieranie Findera z terminala z wybranym plikiem
- 26. Bezpieczna transakcja między aplikacji mobilnej i lampy
- 27. Idiomatyczne lampy dwukierunkowe z dalszym stanem bez utraty
- 28. Panda Fillna z wielu kolumn z trybem każdej kolumny
- 29. Otwieranie pliku pdf
- 30. OpenCV VideoCapture nie otwieranie
Ten link może mieć pomóc Ci. [Jak uzyskać dostęp do lampy błyskowej] [1] [1]: http://stackoverflow.com/questions/4233100/how-to-access-camera-flash-with-xcode- uiimagepickercontroller –