Siêu dữ liệu và Kiểm soát

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

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

Hầu hết thông tin này là 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ỳ đường dẫn đầu ra nào hoặc gửi bất kỳ yêu cầu nào. API máy ảnh mới mở rộng đáng kể thông tin được cung cấp bởi phương thức getCameraInfo() để cung cấp thông tin này cho ứng dụng.

Ngoài ra, việc điều khiển thủ công hệ thống con camera yêu cầu phản hồi từ các loại 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 sử dụng để chụp một khung hình nhất định. Các giá trị thực tế của các điều khiển (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 đưa vào siêu dữ liệu đầu ra. Điều này rất cần thiết để các ứng dụng biết khi nào việc kẹp hoặc làm tròn diễn ra và để ứng dụng có thể bù đắp cho các cài đặt thực được sử dụng để chụp ảnh.

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

Vì vậy, nếu một ứng dụng cần triển khai quy trình 3A tùy chỉnh (ví dụ: để đo chính xác một lần chụp HDR), thì ứng dụng đó cần biết các cài đặt được sử dụng để ghi lại nhóm kết quả mới nhất mà nó nhận được nhằm cập nhật cài đặt cho yêu cầu tiếp theo. Do đó, API máy ảnh mới bổ sung một lượng siêu dữ liệu động đáng kể vào mỗi khung hình được chụp. Điều này bao gồm các tham số được yêu cầu và thực tế được sử dụng để chụp, cũng như siêu dữ liệu bổ sung trên mỗi khung hình 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 cài đặt

Đối với hầu hết các cài đặt, kỳ vọng là chúng có thể được thay đổi ở 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ỉ nên được kiểm soát bởi 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 khối xử lý. Trong thực tế, một số biện pháp kiểm soát cụ thể được biết là chậm thay đổi; chúng bao gồm độ phân giải đầu ra và định dạng đầu ra của quy trình máy ảnh, cũng như các điều khiển ảnh hưởng đến các thiết bị vật lý, 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 bộ điều khiển 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 được 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 máy ảnh nâng cao cũng như hỗ trợ các tệp hình ảnh thô.