Tôi đang cố gắng nhúng chế độ xem đơn giản trong ứng dụng iPhone của mình để chụp nhanh nhanh. Mọi thứ hoạt động tốt nhưng tôi đang đối mặt với một số vấn đề với thời gian khởi động của máy ảnh. Trong một dự án mẫu của Apple, -startRunning
của AVCaptureSession không được thực thi trên luồng chính, những gì có vẻ là cần thiết. Tôi đang thiết lập phiên chụp trong quá trình khởi tạo của khung nhìn cũng như bắt đầu nó trong một chuỗi riêng biệt. Bây giờ tôi thêm AVCaptureVideoPreviewLayer
vào -didMoveToSuperview
. Mọi thứ đều tốt mà không có đa luồng (giao diện người dùng bị chặn trong khoảng một giây) nhưng với giao diện người dùng GCD đôi khi hoạt động, đôi khi phải mất quá nhiều thời gian để giao diện người dùng 'hủy cố định' hoặc bản xem trước được hiển thị.Làm thế nào để tránh chặn giao diện người dùng khi sử dụng camera iPhone thông qua AVFoundation?
Làm cách nào để xử lý sự chậm trễ khởi động của máy ảnh một cách đáng tin cậy mà không chặn luồng chính (bản thân độ trễ không phải là vấn đề)?
Tôi hy vọng các bạn hiểu vấn đề của tôi: D
Cảm ơn bạn trước!
BTW: Đây là proof-of-concept-dự án (không GCD) Tôi bây giờ tái sử dụng cho các ứng dụng khác của tôi: http://github.com/dariolass/QuickShotView
Cảm ơn! Chìa khóa cho tôi đã thực hiện 'startRunning' của' AVCaptureSession' và 'stopRunning' trên một chuỗi nền. – the4kman