يوضّح هذا المستند واجهات برمجة التطبيقات المتوافقة مع وحدة إضافة فئة الفيديو عبر الناقل التسلسلي العام (XU) التي تستخدمها أنظمة مؤتمرات Google Meet لتفعيل ميزات الكاميرا الذكية. والغرض من إنشاء هذه المواصفات هو التأثير في الممارسات من أجل تفعيل هذه الميزات والسماح للشركاء بإجراء اختبارات أفضل وقابلة للتوسّع بشكل غير متزامن.
للحصول على تفاصيل حول آخر التغييرات التي أُجريت على هذا المستند، انتقِل إلى ملاحظات الإصدار.
مرفق الاختبار
لمساعدة الشركاء في التأكّد من التوافق مع هذه المواصفات، نوفّر لهم أداة اختبار في أجهزة Chromebox for Meetings التي تم ضبطها على وضع مطور البرامج.
فعِّل
الكتابة إلى نظام الملفات.
أضِف الأسطر التالية إلى
/etc/chrome_dev.conf:
--enable-logging
--log-level=0
أعِد تشغيل الجهاز، ثم وصِّل الكاميرا ولوحة مفاتيح USB، واضغط على Ctrl-Alt-X، وسيتم اختبار امتثال الكاميرا النشطة للمواصفات وتسجيل النتائج في /var/log/chrome/chrome (في حال استخدام صورة موقَّعة، سيتم تسجيل النتائج في /home/chronos/user/log/chrome).
طريقة ترتيب البايتات من الأصغر إلى الأكبر
إنّ USB هو معيار little-endian. في هذا المستند:
- تظهر الأرقام المتعددة البايتات بترتيب كبير البايتات أولاً (ويتم إرسالها بترتيب صغير البايتات أولاً).
- تكون مصفوفات البايت بتنسيق little-endian في الذاكرة.
على سبيل المثال، 0x12345678 هو نفسه [0x78, 0x56, 0x34, 0x12].
المعرّف الفريد العام لوحدة الإضافة
يجب أن تستخدم وحدات الإضافة المتوافقة مع مواصفات التحكّم في Meet XU معرّف GUID هذا.
| وحدة الإضافة | GUID |
|---|---|
| Peripheral Control XU | {74D7E924-49C9-4A45-98A3-8A9F60061E83} |
أدوات اختيار وحدة التحكم الخارجية XU
هذه هي أدوات اختيار XU المحدّدة لأجهزة التحكّم الطرفية.
| أدوات اختيار عناصر التحكّم | القيمة |
|---|---|
GOOGXU_FRAME_STRATEGY |
0x01 |
GOOGXU_REFRAME |
0x02 |
GOOGXU_OCCUPANCY_COUNTING_TOGGLE |
0x03 |
GOOGXU_OCCUPANCY_COUNTING_READ |
0x04 |
GOOGXU_STATUS_INFO |
0x05 |
GOOGXU_STATUS_RESET |
0x06 |
GOOGXU_PRESETS |
0x07 |
GOOGXU_PAN_TILT_ABSOLUTE |
0x08 |
GOOGXU_PAN_TILT_RELATIVE |
0x09 |
GOOGXU_SATELLITE_INFO |
0x0A |
نوع طلب التحكّم
يتم تحديد أنواع طلبات التحكّم في الفصل 4: الطلبات الخاصة بالفئة من مواصفات فئة UVC 1.5.
| العملية | التحكّم في UVC |
|---|---|
GET |
GET_CUR، GET_MIN، GET_MAX، GET_RES، GET_LEN، GET_INFO، GET_DEF |
SET |
SET_CUR |
أوضاع الكاميرا
تُستخدَم أوضاع الكاميرا لتأطير الأفراد في غرفة الاجتماعات، وهي tuple
مما يلي:
- الاستراتيجية (شاشة الكاميرا)
- الانحياز (المتحدث أو الغرفة)
- الخلاصات (بث واحد أو عدة بثات)
يمكن أن تأخذ كل سمة القيم الموضّحة في الأقسام التالية.
استراتيجية التعديل التلقائي لإطار الفيديو
في جميع أوضاع ضبط الإطارات التلقائية باستثناء "بلا"، يتم إيقاف ميزات التحريك والإمالة والتكبير/التصغير اليدوية.
| الميزة | الوصف |
|---|---|
| بدون | توقف الكاميرا جميع ميزات ضبط الإطار الذكي وتسمح للعميل بالتحكّم بحرية في قيم تحريك الكاميرا وإمالتها وتكبيرها/تصغيرها. ملاحظة: عند ضبط استراتيجية تحديد الإطار هذه، تظل الكاميرا في موضعها الحالي للعرض الشامل والإمالة والتكبير/التصغير. |
| الإبقاء داخل الإطار (CAZ) | استنادًا إلى تحيّز التأطير، تتتبّع الكاميرا باستمرار الأشخاص في الغرفة. |
| تقسيم الإطارات | تنشئ الكاميرا عددًا من طرق عرض الفيديو حسب الحاجة. استنادًا إلى الخيار خلاصات الضبط التلقائي للإطار، يتم إما دمجها في مربعات في بث واحد أو إنشاء بث فيديو منفصل لكل طريقة عرض. |
| العرض الديناميكي | تحاول كاميرا واحدة أو أكثر تقديم أفضل عرض للغرفة. يمكنه تحديد ما إذا كان سيجمع عدة خلاصات في خلاصة واحدة أو سيقدّم عرضًا "مثيرًا للاهتمام" للغرفة الحالية. الغرض من طريقة العرض هذه هو توفير طريقة عرض أكثر إنصافًا للمشاركين في المكالمة. |
| الإعدادات المفضّلة للمورّدين | يستخدم نظام الكاميرا منطقًا خاصًا لتحديد أفضل طريقة لعرض الغرفة. تخضع استراتيجية التأطير الأساسية للتغيير بدون إشعار. على سبيل المثال، إذا تغيّر عدد الأشخاص في الغرفة، أو إذا كان بإمكان الكاميرا رصد الفرق بين اجتماع "مقدّم العرض المهم" واجتماع "التعاون"، يمكن للنظام تكييف استراتيجية تأطير الصورة أو تغييرها حسب ما يراه مناسبًا في هذا الوضع. عندما يكون الجهاز في هذا الوضع، يجب أن يؤدي طلب getCur إلى عرض VENDOR_PREFERRED، وليس وضع تحديد الإطارات الأساسي الذي اختاره النظام. |
التحيّز في التعديل التلقائي لإطار الفيديو
| الميزة | الوصف |
|---|---|
| مقدّم العرض المهم (تتبُّع المُحاضر) | تحاول الكاميرا عرض الشخص الذي يتحدث بشكل نشط في الغرفة بأفضل طريقة ممكنة. في هذا السيناريو، يجب أن تركّز الكاميرا على مقدّم العرض. على سبيل المثال، المدير التنفيذي في غرفة اجتماعات يقدّم عرضًا تقديميًا. |
| التعاون (تتبُّع الغرفة) |
تحاول الكاميرا تحديد جميع المشاركين في الغرفة بأفضل طريقة. في هذه الحالة، يجب أن تعامل الكاميرا كل مشارك بشكل عادل. |
خلاصات التعديل التلقائي لإطار الفيديو
| الميزة | الوصف |
|---|---|
| Single-Stream | ترسل الكاميرا مجموعة بث فيديو واحدة إلى الجهاز المضيف. |
| البث المتزامن (قيد التطوير) |
تقسّم الكاميرا مجموعة البث وتنشئ مجموعات بث فيديو متعددة لإرسالها إلى المضيف. ملاحظة: إنّ المواصفات الكاملة والسلوك المتوقّع لهذه الميزة في انتظار المراجعة، ولا تتوفّر حتى يتم إجراء مراجعات لاحقة لهذا المستند. |
قيم الصورة النقطية لوضع الضبط التلقائي للإطار
باستثناء الحالة التلقائية None التي يمثّلها مصفوفة بايت فارغة، يمثّل كل جزء من البايت في مصفوفة البايت وضعًا مختلفًا للكاميرا، وهو عبارة عن مجموعة معيّنة من استراتيجية الضبط التلقائي للإطار والضبط التلقائي للإطار وخلاصات الضبط التلقائي للإطار.
| خلاصات التعديل التلقائي لإطار الفيديو | CAZ | إطار مقسّم | ديناميكية | الإعدادات المفضّلة للمورّدين | التحيّز في التعديل التلقائي لإطار الفيديو |
|---|---|---|---|---|---|
| البث الفردي | D1 D2 |
- D3 |
D5 D7 |
D9 (مكبّر الصوت أو الغرفة) | مكبّر الصوت الغرفة |
| البث المتزامن | - - |
- D4 |
D6 D8 |
- | مكبّر الصوت الغرفة |
| أوضاع الإطار | قيمة وضع الإطار (وحدة البايت الأقل أهمية) |
|---|---|
None |
0x0000 |
CAZ, Speaker, Single-Stream |
0x0001 |
CAZ, Room, Single-Stream |
0x0002 |
Split-Frame, Room, Single-Stream |
0x0004 |
Split-Frame, Room, Multi-Stream |
0x0008 |
Dynamic, Speaker, Single-Stream |
0x0010 |
Dynamic, Speaker, Multi-Stream |
0x0020 |
Dynamic, Room, Single-Stream |
0x0040 |
Dynamic, Room, Multi-Stream |
0x0080 |
Vendor-preferred, Single-Stream |
0x0100 |
التحكّم: GOOGXU_FRAME_STRATEGY
يُستخدم عنصر التحكّم هذا للحصول على أو ضبط أوضاع تأطير الكاميرا كما هو موضّح في قيم الصورة النقطية لوضع التأطير التلقائي. يتم تمثيل كل وضع كبت في الصورة النقطية الخاصة به. يعرض الأمر GET_RES قناع بت بطول 8 بايت
بقيمة صفر (0) أو واحد (1) للإشارة على التوالي إلى ما إذا كانت الميزة
غير متوافقة أو متوافقة مع الجهاز. على سبيل المثال، إذا كانت الكاميرا تتوافق مع CAZ, Speaker, Single-Stream وSplit-Frame, Room, Single-Stream وDynamic, Room, Multi-Stream فقط، بدون أي أوضاع أخرى، يجب أن تعرض GET_RES القيمة 0x000000000000000085 (أي 0b10000101 متبوعة بسبعة بايتات صفرية).
يُستخدَم الأمر SET_CUR لإرسال صور نقطية لإخبار الكاميرا بوضع SINGLE الذي يجب تفعيله.
| أداة اختيار عنصر التحكّم | 1 | |||
|---|---|---|---|---|
| العملية | GET / SET |
|||
wLength |
8 | |||
| إزاحة | الحقل | الحجم | القيمة | الوصف |
| 0 | bActiveMode |
8 | صورة نقطية | ضبط "وضع الكاميرا النشطة" أو الرجوع إليه |
ملاحظات:
|
||||
في ما يلي سلوك أنواع الطلبات المتوافقة:
| إزاحة | 0 | الوصف |
|---|---|---|
GET_CUR |
الحصول على وضع "الإبقاء داخل الإطار" في الكاميرا | |
GET_MIN |
يعتمد على الكاميرا | |
GET_MAX |
يعتمد على الكاميرا | |
GET_RES |
تعرض هذه السمة قناع بت طويلًا من 8 بايت لأوضاع الكاميرا المتوافقة | |
GET_LEN |
0x0008 | الطول |
GET_INFO |
0x0B | AutoUpdate / Write / Read |
GET_DEF |
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 |
القيمة التلقائية |
SET_CUR |
ضبط وضع "الكاميرا ذات الإطارات النشطة" |
التحكّم: GOOGXU_REFRAME
يتم استخدام عنصر التحكّم هذا لتفعيل ميزة "تحديد موضع اللقطة لمرة واحدة"، المعروفة أيضًا باسم OTAZ. عندما يتم تفعيل ميزة "التكبير/التصغير التلقائي"، يتم ضبط شاشة الكاميرا تلقائيًا على أفضل عرض للغرفة. بعد ذلك، يستعيد العميل القدرة على التحكّم في قيم PTZ. إذا لم يكن إطار اللقطة الواحدة متاحًا، يجب ألا تحدّد الكاميرا عنصر التحكّم هذا.
| أداة اختيار عنصر التحكّم | 2 | |||
|---|---|---|---|---|
| العملية | SET |
|||
wLength |
1 | |||
| إزاحة | الحقل | الحجم | القيمة | الوصف |
| 0 | bReframe |
1 | العدد | 0x01 تنفيذ طلب إعادة التنسيق |
في ما يلي سلوك أنواع الطلبات المتوافقة:
| إزاحة | 0 | الوصف |
|---|---|---|
GET_MIN |
0x00 | |
GET_MAX |
0x01 | |
GET_RES |
0x01 | |
GET_LEN |
0x0001 | |
GET_INFO |
0x02 | الكتابة فقط |
GET_DEF |
0x00 | |
SET_CUR |
ضبط طلب ميزة "التقاط صورة واحدة" |
احتساب عدد الأشخاص في المكان
ميزة "احتساب معدل الإشغال" (OC) هي ميزة تُستخدَم لتقدير عدد المشاركين في غرفة الاجتماعات، على الرغم من عرض الكاميرا بشكل مقتطع.
يعرض هذا الجدول السلوك المتوقّع لعناصر التحكّم في OC وتفاعلاتها مع بث الفيديو المباشر عبر الكاميرا ومؤشر LED الخاص بالكاميرا.
| عندما تكون ميزة "احتساب معدل الإشغال" | & the camera video stream is: | يجب أن يكون مؤشر LED للكاميرا | يجب أن يكون GOOGXU_OCCUPANCY_COUNTING_TOGGLE GET_CUR |
يجب أن يكون GOOGXU_OCCUPANCY_COUNTING_READ GET_CUR |
|---|---|---|---|---|
| مفعّل | لا يتم البث ولم يتم كتم الصوت | مفعّل | 0x01 |
عدد الأشخاص في مجال الرؤية الكامل للكاميرا |
| مفعّل | البث | مفعّل | 0x01 |
عدد الأشخاص في مجال الرؤية الكامل للكاميرا |
| مفعّل | كتم الصوت | إيقاف | 0x01 |
غير مفعّل |
| غير مفعّل | لا يتم البث ولم يتم كتم الصوت | إيقاف | 0x00 |
غير مفعّل |
| غير مفعّل | البث | مفعّل | 0x00 |
غير مفعّل |
| غير مفعّل | كتم الصوت | إيقاف | 0x00 |
غير مفعّل |
التحكّم: GOOGXU_OCCUPANCY_COUNTING_TOGGLE
يُستخدم عنصر التحكّم هذا لتفعيل ميزة احتساب عدد الأشخاص في غرفة أو إيقافها. يؤدي ضبط القيمة على صفر (0) إلى إيقاف هذه الميزة، بينما يؤدي ضبطها على واحد (1) إلى تفعيلها. إذا كانت هذه الميزة غير متاحة، يجب ألا تحدّد الكاميرا عنصر التحكّم هذا.
| أداة اختيار عنصر التحكّم | 3 | |||
|---|---|---|---|---|
| العملية | GET / SET |
|||
wLength |
1 | |||
| إزاحة | الحقل | الحجم | القيمة | الوصف |
| 0 | bOccupancy |
1 | منطقي | ضبط وظيفة احتساب معدل الإشغال 0x00 إيقاف الوظيفة 0x01 تفعيل الوظيفة |
في ما يلي سلوك أنواع الطلبات المتوافقة:
| إزاحة | 0 | الوصف |
|---|---|---|
GET_CUR |
عرض ما إذا كان احتساب معدل الإشغال مفعَّلاً | |
GET_MIN |
0x00 | |
GET_MAX |
0x01 | |
GET_RES |
0x01 | |
GET_LEN |
0x0001 | |
GET_INFO |
0x0B | AutoUpdate / Write / Read |
GET_DEF |
0x00 | |
SET_CUR |
تفعيل ميزة احتساب معدل الإشغال أو إيقافها |
التحكّم: GOOGXU_OCCUPANCY_COUNTING_READ
يتم استخدام عنصر التحكّم هذا لقراءة عدد المشاركين في غرفة معيّنة كما تعرضه الكاميرا عند تفعيل ميزة احتساب معدل الإشغال. عند إيقاف ميزة "احتساب عدد الأشخاص"، يجب أن توقف الكاميرا عنصر التحكّم هذا. إذا لم يكن احتساب عدد الأشخاص متاحًا، يجب ألا تحدّد الكاميرا عنصر التحكّم هذا.
| أداة اختيار عنصر التحكّم | 4 | |||
|---|---|---|---|---|
| العملية | GET |
|||
wLength |
2 | |||
| إزاحة | الحقل | الحجم | القيمة | الوصف |
| 0 | bNumPeople |
2 | العدد | عدد الأشخاص الذين تم رصدهم في إطار العرض (للقراءة فقط) |
في ما يلي سلوك أنواع الطلبات المتوافقة:
| إزاحة | 0 | الوصف |
|---|---|---|
GET_CUR |
عرض عدد الأشخاص الذين تم رصدهم | |
GET_MIN |
0x0000 | |
GET_MAX |
0x00FF | |
GET_RES |
0x0001 | |
GET_LEN |
0x0002 | |
GET_INFO |
0x09 | AutoUpdate / Read |
GET_DEF |
0x0000 |
قياس الجهاز عن بُعد وبيانات التشخيص
تهدف عناصر التحكّم هذه إلى تشجيع أفضل ممارسات تصحيح الأخطاء باستخدام أجهزة Meet، وهي عادةً غير متاحة للمستخدمين.
التحكّم: GOOGXU_STATUS_INFO
يُستخدَم عنصر التحكّم هذا لطلب معلومات من كاميرا الجهاز المضيف ومشاركتها مع الشركاء لأغراض تصحيح الأخطاء.
| أداة اختيار عنصر التحكّم | 5 | |||
|---|---|---|---|---|
| العملية | GET |
|||
wLength |
8 | |||
| إزاحة | الحقل | الحجم | القيمة | الوصف |
| 0 | bNumCameras |
1 | العدد | عدد الأجهزة الإضافية المتصلة بالكاميرا الرئيسية والتي قد تؤثر في بث الكاميرا الذي يتم إرجاعه إلى الجهاز المضيف |
| 1 | bIsMoving |
1 | صورة نقطية | تكون القيمة 0 عندما تكون الكاميرا غير نشطة، وقيمة غير صفرية عندما تتغير قيم PTZ. يمكن للمورّدين ربط محاور أو محركات مختلفة بأجزاء مختلفة. |
| 2 | Undef |
6 | Undef | سيتم تمديدها في المستقبل. |
في ما يلي سلوك أنواع الطلبات المتوافقة:
| إزاحة | 0 | 1 | 2 | الوصف |
|---|---|---|---|---|
GET_MIN |
0x00 | 0x00 | 0x00 0x00 0x00 0x00 0x00 0x00 |
|
GET_MAX |
0xFF | 0xFF | 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF |
|
GET_RES |
0x01 | 0x01 | 0x01 0x00 0x00 0x00 0x00 0x00 |
|
GET_LEN |
0x08 | 0x00 | 0x0008 | |
GET_INFO |
0x09 | AutoUpdate / Read | ||
GET_DEF |
0x00 | 0x00 | 0x00 0x00 0x00 0x00 0x00 0x00 |
التحكّم: GOOGXU_SATELLITE_INFO
يُستخدَم عنصر التحكّم هذا للاستعلام عن الأجهزة الفرعية المتصلة بنظام الكاميرا هذا.
| أداة اختيار عنصر التحكّم | 0x0A | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| العملية | GET |
|||||||||||
wLength |
20 | |||||||||||
| إزاحة | الحقل | الحجم | القيمة | الوصف | ||||||||
| 0 | bSatelliteList |
20 | صورة نقطية | قائمة بأنواع الأقمار الصناعية المرتبطة بالنظام. تتضمّن أربع خانات منفصلة بحجم 5 بايت. يتم وصف كل خانة على النحو التالي:
|
في ما يلي سلوك أنواع الطلبات المتوافقة:
| إزاحة | 0 | الوصف |
|---|---|---|
GET_MIN |
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 |
|
GET_MAX |
0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF 0xFF |
|
GET_RES |
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 |
|
GET_LEN |
0x14 | 20 بايت |
GET_INFO |
0x09 | AutoUpdate / Read |
GET_DEF |
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 |
التحكّم: GOOGXU_STATUS_RESET
يُستخدَم عنصر التحكّم هذا لإرسال طلب إعادة ضبط إلى الكاميرا. يؤدي ضبط القيمة على واحد (1) إلى طلب إعادة ضبط الكاميرا. تعرض الكاميرا القيمة صفر (0) إذا لم يتم طلب إعادة تشغيلها منذ آخر عملية إعادة ضبط، وتعرض القيمة واحد (1) إذا كانت تتم إعادة ضبطها. يجب أن تؤدي عملية إعادة الضبط إلى إعادة تشغيل الكاميرا. (هذا الإجراء ضروري للأجهزة التي تعمل بالطاقة الذاتية والتي لا يفيد فيها فرض قطع اتصال USB لمحاكاة التوصيل السريع).
| أداة اختيار عنصر التحكّم | 6 | |||
|---|---|---|---|---|
| العملية | GET / SET |
|||
wLength |
1 | |||
| إزاحة | الحقل | الحجم | القيمة | الوصف |
| 0 | bResetRequest |
1 | منطقي | إصدار طلب إعادة ضبط إلى المضيف والكاميرات المرتبطةتعرض القيمة 0x01 إذا تم إصدار طلب إعادة ضبط منذ آخر عملية إعادة ضبط، وإلا تعرض القيمة 0x00. |
في ما يلي سلوك أنواع الطلبات المتوافقة:
| إزاحة | 0 | الوصف |
|---|---|---|
GET_MIN |
0x00 | |
GET_MAX |
0x01 | |
GET_RES |
0x01 | |
GET_LEN |
0x0001 | |
GET_INFO |
0x03 | الكتابة / القراءة |
GET_DEF |
0x00 |
إعدادات مسبقة لكاميرات PTZ
يُستخدَم لضبط مجال رؤية الكاميرا واستعادته إلى موضع مُحدَّد مسبقًا.
التحكّم: GOOGXU_PRESETS
يُستخدَم عنصر التحكّم هذا لضبط قيم العرض الشامل والإمالة والتكبير/التصغير (PTZ) للكاميرا على إعداد مسبق.
يُستخدَم Preset Action لتحديد الإجراء المقصود من الأمر. يتم استخدام القيمة 1 لربط قيم التحريك والإمالة والتكبير/التصغير الحالية بفهرس إعداد مسبق. يجب أن يؤدي ضبط القيمة على 2 إلى نقل الكاميرا إلى القيم التي تم ربطها سابقًا بالمؤشر المقدَّم، أو إلى الإحداثيات التلقائية للمصنع (إذا لم يتم الربط سابقًا). يؤدي ضبط القيمة على ثلاثة (3) إلى إعادة ضبط الفهرس على الإحداثيات الأصلية التلقائية.
يُستخدَم Preset Index لتحديد إحداثيات التحريك والإمالة والتكبير/التصغير التي تم ربطها بالفهرس.
يتم ربط قيمة Preset index التي تبلغ صفرًا (0) بإحداثيات الوضع الأساسي، ويجب أن يكون هذا الوضع هو الوضع التلقائي للكاميرا عند تنشيطها عندما تكون قيمة GOOGXU_FRAME_STRATEGY هي NONE.
| أداة اختيار عنصر التحكّم | 7 | |||
|---|---|---|---|---|
| العملية | SET |
|||
wLength |
2 | |||
| إزاحة | الحقل | الحجم | القيمة | الوصف |
| 0 | bPresetAction |
1 | العدد | 0x01: حفظ الإعداد المُسبَق 0x02: استعادة الإعداد المُسبَق 0x03: إعادة ضبط الإعداد المُسبَق على الإعداد التلقائي (يجب أن تكون القيمة التلقائية إحداثيات مضبوطة مسبقًا وصالحة). |
| 1 | bPresetIndex |
1 | العدد | فهرس الإعداد المُسبَق النشط 0~N-1 حيث يُعدّ 0 موضع البدء التلقائي للكاميرا وN-1 هو ثابت يحدّده المورّد لعدد الإعدادات المُسبقة. |
في ما يلي سلوك أنواع الطلبات المتوافقة:
| إزاحة | 0 | 1 | الوصف |
|---|---|---|---|
GET_MIN |
0x00 | 0x00 | |
GET_MAX |
0x03 | N-1 | الحد الأقصى لعدد الإعدادات المُسبقة المتاحة |
GET_RES |
0x01 | 0x01 | |
GET_LEN |
0x02 | 0x00 | 0x0002 |
GET_INFO |
0x02 | للكتابة فقط | |
GET_DEF |
0x00 | 0x00 |
ربط الخريطة بوظيفتَي التحريك والإمالة
تحتوي بعض الكاميرات على مكوّنات خاصة، مثل المحركات الخاصة بالكاميرات الميكانيكية أو إمكانات PTZ الرقمية. بالنسبة إلى هذه الكاميرات، استخدِم عناصر التحكّم العادية في V4L2 لتحريك الكاميرا أفقيًا وعموديًا وتكبير الصورة وتصغيرها.
التحكّم: GOOGXU_PAN_TILT_ABSOLUTE (متوقّف نهائيًا)
يتم تحديد عناصر التحكّم في الربط الإضافي الخاصة بالتحريك والإمالة في الفصل 4: الطلبات الخاصة بالفئة، القسم 4.2.2.1.14 التحكّم في التحريك والإمالة (المطلق) من مواصفات الفئة UVC 1.5.
التحكّم: GOOGXU_PAN_TILT_RELATIVE (متوقّف نهائيًا)
يتم تحديد عناصر التحكّم في العرض الشامل والإمالة في الفصل 4: الطلبات الخاصة بالفئة، القسم 4.2.2.1.15، عناصر التحكّم في العرض الشامل والإمالة (النسبية) ضمن مواصفات الفئة 1.5 من UVC.
مواضيع ذات صلة
- برنامج تشغيل Linux USB Video Class (UVC)
- مجموعة مستندات Video Class v1.5
- مواصفات USB 2.0
- مركز مساعدة Google Meet Hardware
- قسم "أجهزة Google Meet" في مركز مساعدة مشرفي Google Workspace
ملاحظات الإصدار
تعرض ملاحظات الإصدار هذه التحسينات والميزات الجديدة في كل مراجعة من مراجعات هذا المستند.
13 أغسطس 2025
- تم تصحيح تفاصيل مركز الاختبار.
27 يناير 2025
- تمّت إضافة استراتيجية ضبط الإطار
Vendor-preferredإلىGOOGXU_FRAME_STRATEGY. - تمت إضافة عنصر تحكّم جديد:
GOOGXU_SATELLITE_INFO.
21 مايو 2024
- تمت إزالة نص الاختبار البرمجي لصالح أداة اختبار "مؤتمراتي مع Google" الجديدة،
التي تستخدم
SETوتتيح أيضًا التحقّق من صحة كاميرات Series One. - تم توضيح الحقول في
GOOGXU_STATUS_INFO. - تم توضيح سلوك
GOOGXU_STATUS_RESET. - تم إيقاف
GOOGXU_PAN_TILT_ABSOLUTEوGOOGXU_PAN_TILT_RELATIVE.
15 تشرين الثاني (نوفمبر) 2023
تم تعديل نص الاختبار البرمجي للتحقّق من أوضاع العرض الصالحة وتفسيرها. تم توضيح تمثيلات وحدات البايت.
21 يوليو 2023
تمت إضافة نص برمجي اختباري للشركاء للتحقّق من صحة عمليات التنفيذ بما يتوافق مع هذه المواصفات.
25 أيار (مايو) 2023
تمت إضافة
GOOGXU_PRESETS
ملاحظة بشأن عدد الإعدادات المُسبقة. يجب أن يكون N، وليس N-1.
17 نيسان (أبريل) 2023
الإصدار الأوّلي.