Siêu dữ liệu và các chế độ điều khiển

Trang này mô tả khả năng hỗ trợ siêu dữ liệu, các chế độ kiểm soát chế độ cài đặt riêng lẻ và khả năng hỗ trợ dữ liệu cảm biến thô.

Hỗ trợ siêu dữ liệu

Để hỗ trợ việc lưu tệp hình ảnh thô bằng khung Android, bạn cần có siêu dữ liệu đáng kể về các đặc điểm của cảm biến. Thông tin này bao gồm các thông tin như không gian màu và chức năng đổ bóng ống kính.

Hầu hết thông tin này là một thuộc tính tĩnh của hệ thống con camera và do đó có thể được truy vấn trước khi định cấu hình bất kỳ quy trình đầu ra nào hoặc gửi bất kỳ yêu cầu nào. Các API camera mới mở rộng đáng kể thông tin do phương thức getCameraInfo cung cấp để cung cấp thông tin này cho ứng dụng.

Ngoài ra, việc kiểm soát thủ công hệ thống con camera đòi hỏi phải có thông tin phản hồi từ nhiều thiết bị về trạng thái hiện tại của chúng và các thông số thực tế được dùng để chụp một khung hình nhất định. Giá trị thực tế của các chế độ cài đặt (thời gian phơi sáng, thời lượng khung hình và độ nhạy) mà phần cứng thực sự sử dụng phải có trong siêu dữ liệu đầu ra. Điều này là cần thiết để các ứng dụng biết thời điểm xảy ra hiện tượng kẹp hoặc làm tròn, nhờ đó ứng dụng có thể bù đắp cho các chế độ cài đặt thực được dùng để chụp ảnh.

Ví dụ: nếu một ứng dụng đặt thời lượng khung hình thành 0 trong một yêu cầu, thì HAL (Lớp trừu tượng phần cứng) phải giới hạn giá trị thời lượng khung hình ở thời lượng khung hình tối thiểu thực tế cho yêu cầu đó và báo cáo thời lượng tối thiểu bị giới hạn đó trong siêu dữ liệu kết quả đầu ra.

Do đó, nếu cần triển khai một quy trình 3A tuỳ chỉnh (ví dụ: để đo sáng đúng cách cho một chuỗi ảnh HDR), thì ứng dụng cần biết các chế độ cài đặt được dùng để chụp bộ kết quả mới nhất mà ứng dụng đã nhận được để cập nhật các chế độ cài đặt cho yêu cầu tiếp theo. Do đó, API máy ảnh mới sẽ thêm một lượng lớn siêu dữ liệu động vào mỗi khung hình được chụp. Điều này bao gồm các thông số được yêu cầu và thực tế dùng để ghi lại, cũng như siêu dữ liệu bổ sung cho mỗi khung hình, chẳng hạn như dấu thời gian và đầu ra của trình tạo số liệu thống kê.

Kiểm soát theo chế độ cài đặt

Đối với hầu hết các chế độ cài đặt, bạn có thể thay đổi chúng ở mọi khung hình mà không gây ra hiện tượng giật hoặc trễ đáng kể cho luồng khung hình đầu ra. Lý tưởng nhất là tốc độ khung hình đầu ra chỉ được kiểm soát bằng trường thời lượng khung hình của yêu cầu chụp và độc lập với mọi thay đổi đối với cấu hình của các khối xử lý. Trên thực tế, một số chế độ kiểm soát cụ thể được biết là thay đổi chậm; những chế độ kiểm soát này bao gồm độ phân giải đầu ra và định dạng đầu ra của quy trình camera, cũng như các chế độ kiểm soát ảnh hưởng đến thiết bị thực, chẳng hạn như khoảng cách lấy nét của ống kính. Các yêu cầu chính xác cho từng nhóm chế độ kiểm soát sẽ được trình bày chi tiết sau.

Hỗ trợ dữ liệu cảm biến thô

Ngoài các định dạng pixel mà API cũ hỗ trợ, API mới còn bổ sung yêu cầu hỗ trợ dữ liệu cảm biến thô (Bayer RAW), cho cả ứng dụng camera nâng cao cũng như để hỗ trợ các tệp hình ảnh thô.