camera2_frame_queue_dst_ops स्ट्रक्चर का रेफ़रंस
#include <
camera2.h
>
डेटा फ़ील्ड |
|
int(* | dequeue_frame )(const struct camera2_frame_queue_dst_ops *q, size_t entries, size_t data_bytes, camera_metadata_t **buffer) |
int(* | cancel_frame )(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
int(* | enqueue_frame )(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
पूरी जानकारी
फ़्रेम आउटपुट कतार प्रोटोकॉल:
फ़्रेमवर्क में सूची और उसका कॉन्टेंट सेव होता है. शुरू में, सूची खाली होती है.
- जब डिवाइस, आउटपुट मेटाडेटा फ़्रेम भरने के लिए तैयार हो जाता है, तो उसे ज़रूरी साइज़ के मेटाडेटा बफ़र को सूची से हटाना होगा.
- इसके बाद, यह मेटाडेटा बफ़र को भर देगा और enqueue_frame का इस्तेमाल करके, फ़्रेम की सूची में डाल देगा. फ़्रेम का मालिकाना हक, फ़्रेमवर्क के पास चला जाता है.
- गड़बड़ी, पाइपलाइन को फ़्लश करने या बंद करने के अनुरोध के मामले में, डिवाइस को cancel_frame को कॉल करके, फ़्रेम की सूची से हटाए गए उन फ़्रेम को फ़्रेमवर्क में वापस भेजना होगा जिन पर असर पड़ा है.
फ़ील्ड का दस्तावेज़
int(* cancel_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
int(* dequeue_frame)(const struct camera2_frame_queue_dst_ops *q, size_t entries, size_t data_bytes, camera_metadata_t **buffer) |
फ़्रेमवर्क से भरने के लिए, खाली मेटाडेटा बफ़र पाएं. नए मेटाडेटा बफ़र में, मेटाडेटा की एंट्री की संख्या के साथ-साथ data_bytes के बराबर अतिरिक्त स्टोरेज भी होगा. यहां से हटाए गए फ़्रेम, cancel_frame या enqueue_frame में से किसी एक के ज़रिए फ़्रेमवर्क में वापस भेजे जाने चाहिए.
int(* enqueue_frame)(const struct camera2_frame_queue_dst_ops *q, camera_metadata_t *buffer) |
इस स्ट्रक्चर का दस्तावेज़, इस फ़ाइल से जनरेट किया गया था:
- hardware/libhardware/include/hardware/ camera2.h