منتِج واحد لنقل المخزن المؤقت للكاميرا لدى عدة مستهلكين

تقدّم هذه الميزة مجموعة من الطرق التي تسمح لعملاء الكاميرا بإضافة مساحات العرض للإخراج و إزالتها بشكل ديناميكي أثناء نشاط جلسة الالتقاط و استمرار بث الكاميرا. يمكن ربط مخرج جديد ببث محدد يختاره المستخدم من الكاميرا المشتركة. بعد إضافة سطح، يمكن إزالته في أي وقت.

وتتلخّص الفكرة العامة في مشاركة وحدات التخزين المؤقت المرتبطة ببث كاميرا معيّن في عدة مساحات عرض. يتتبّع عداد مرجعي داخلي المخازن المؤقتة عندما تصبح جاهزة لمزيد من المعالجة من جانب المستهلك. عندما يُكمل جميع المستهلكين مهامهم، تتم إزالة المخزن المؤقت من "قائمة الانتظار" ويُصبح متاحًا للكاميرا.

مشاركة ذاكرة التخزين المؤقت

الشكل 1: مشاركة التخزين المؤقت

يبيّن الشكل 1 سيناريو نموذجي واحد يتم فيه توصيل وحدات التخزين المؤقت التي تتم معالجتها بواسطة بث الكاميرا رقم 2 بشكلٍ ديناميكي وفصلها واحتساب المراجع وإدارتها بواسطة مكوّن تقسيم البث داخل بث إخراج مشترك مخصّص ضمن خدمة الكاميرا.

الأمثلة والمصدر

يمكن العثور على التنفيذ الأساسي لهذه الميزة في وحدة Camera3StreamSplitter. يمكن العثور على مستندات عن هذه الميزة في مرجع المطوّرين:

التنفيذ

لا يلزم تنفيذ أيّ عملية من جانب Camera HAL لأنّ هذه الميزة تتم تنفيذها من جانب إطار العمل.

التحقُّق

يجب أن يجتاز التنفيذ حالات CTS التي تغطي هذه الميزة من وحدة MultiViewTest ومكتبة JNI الأصلية لواجهة برمجة التطبيقات الأصلية.