APIهای واحد برنامه افزودنی کلاس ویدیوی USB سخت افزار Google Meet

این سند، APIهای پشتیبانی‌شده‌ی واحد توسعه‌ی کلاس ویدیوی USB (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 است. در این سند آمده است:

  • اعداد چند بایتی به صورت big-endian ظاهر می‌شوند (و به صورت little-endian منتقل می‌شوند).
  • آرایه‌های بایتی در طرح حافظه little-endian قرار دارند.

برای مثال، 0x12345678 همان [0x78, 0x56, 0x34, 0x12] است.

راهنمای واحد توسعه

واحدهای افزونه‌ای که از این مشخصات کنترل Meet XU پشتیبانی می‌کنند باید از این GUID استفاده کنند.

واحد توسعه راهنما
کنترل محیطی 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

نوع درخواست کنترل

انواع درخواست‌های کنترل در فصل ۴: درخواست‌های خاص کلاس از مشخصات کلاس UVC 1.5 تعریف شده‌اند.

عملیات کنترل UVC
GET GET_CUR ، GET_MIN ، GET_MAX ، GET_RES ، GET_LEN ، GET_INFO ، GET_DEF
SET SET_CUR

حالت‌های دوربین

حالت‌های دوربین برای قاب‌بندی افراد در اتاق جلسه استفاده می‌شوند و tuple زیر هستند:

  • استراتژی (نمای دوربین)
  • تعصب (بلندگو یا اتاق)
  • فیدها (یک یا چند جریان)

هر بُعد می‌تواند مقادیری را که در بخش‌های بعدی توضیح داده شده است، بپذیرد.

استراتژی قاب‌بندی خودکار

در تمام حالت‌های کادربندی خودکار به جز حالت «هیچکدام»، حرکت افقی، عمودی و بزرگنمایی دستی غیرفعال هستند.

ویژگی توضیحات
هیچکدام دوربین تمام ویژگی‌های کادربندی هوشمند را غیرفعال می‌کند و به مشتری اجازه می‌دهد تا آزادانه مقادیر PTZ را کنترل کند.
توجه: وقتی روی این استراتژی کادربندی تنظیم می‌شود، دوربین در موقعیت فعلی حرکت افقی، عمودی و زوم خود باقی می‌ماند.
قاب‌بندی پیوسته (CAZ) بر اساس سوگیری قاب‌بندی، دوربین به طور مداوم افراد حاضر در اتاق را ردیابی می‌کند.
فریم‌های تقسیم‌شده دوربین به تعداد مورد نیاز، ویدیوهایی با نمای کلی ایجاد می‌کند. بر اساس گزینه فیدهای قاب‌بندی خودکار ، دوربین یا آنها را در قالب کاشی‌هایی در یک جریان واحد ترکیب می‌کند یا برای هر نمایش، جریان‌های ویدیویی جداگانه‌ای ایجاد می‌کند.
نمای پویا یک یا چند دوربین تلاش می‌کنند تا بهترین دید را از اتاق ارائه دهند. این دوربین می‌تواند تصمیم بگیرد که آیا چندین تصویر را در یک تصویر ترکیب کند یا یک نمای "جالب" از اتاق فعلی ارائه دهد.
هدف از این دیدگاه، ارائه منصفانه‌ترین دیدگاه از شرکت‌کنندگان حاضر در اتاق تماس است.
فروشنده ترجیحی سیستم دوربین از منطق خود برای تعیین بهترین نمای اتاق استفاده می‌کند. استراتژی فریم‌بندی اساسی بدون اطلاع قبلی قابل تغییر است. به عنوان مثال، اگر تعداد افراد حاضر در اتاق تغییر کند، یا دوربین بتواند تفاوت بین یک "ارائه‌دهنده با ریسک بالا" در مقابل یک جلسه "همکاری" را تشخیص دهد، سیستم آزاد است که استراتژی فریم‌بندی را مطابق با صلاحدید خود در این حالت تطبیق دهد یا تغییر دهد. در این حالت، فراخوانی getCur باید VENDOR_PREFERRED را برگرداند، و نه حالت فریم‌بندی اساسی که توسط سیستم انتخاب شده است.

سوگیری قاب‌بندی خودکار

ویژگی توضیحات
ارائه دهنده با ریسک بالا (ردیابی گوینده) دوربین تلاش می‌کند تا به بهترین شکل، فردی را که در اتاق صحبت می‌کند، در قاب تصویر نشان دهد.
در این سناریو، دوربین باید به سمت ارائه دهنده متمایل باشد. به عنوان مثال، مدیرعامل در اتاق هیئت مدیره در حال ارائه مطلب.
همکاری
(ردیابی اتاق)
دوربین تلاش می‌کند تا به بهترین شکل ممکن تمام شرکت‌کنندگان حاضر در اتاق را در قاب خود جای دهد. در این سناریو، دوربین باید با هر شرکت‌کننده به طور عادلانه رفتار کند.

فیدهای قاب‌بندی خودکار

ویژگی توضیحات
تک جریانی دوربین یک جریان ویدیویی واحد را به دستگاه میزبان ارسال می‌کند.
چند جریانی
(در حال انجام)
دوربین جریان را تقسیم می‌کند و چندین جریان ویدیویی برای ارسال به میزبان ایجاد می‌کند.
توجه: مشخصات کامل و رفتار مورد انتظار این ویژگی در حال بررسی است و تا نسخه‌های بعدی این سند پشتیبانی نمی‌شود .

مقادیر بیت‌مپ حالت فریم‌بندی خودکار

به جز حالت پیش‌فرض None که توسط یک آرایه بایت خالی نمایش داده می‌شود، هر بیت در آرایه بایت، حالت دوربین متفاوتی را نشان می‌دهد که ترکیبی خاص از Auto-framing strategy ، Auto-framing bias و Auto-framing feeds است.

فیدهای قاب‌بندی خودکار کاز فریم تقسیم شده پویا فروشنده ترجیحی سوگیری قاب‌بندی خودکار
تک جریانی دی۱
دی۲
-
دی۳
دی۵
دی۷
D9 (بلندگو یا اتاق) بلندگو
اتاق
چند جریانی -
-
-
دی۴
دی۶
دی۸
- بلندگو
اتاق
حالت‌های فریم مقدار حالت فریم (بایت کم‌اهمیت‌تر)
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 باید 0x00000000000000085 (یعنی 0b10000101 و به دنبال آن هفت بایت صفر) را برگرداند.

دستور SET_CUR برای ارسال بیت‌مپ‌ها استفاده می‌شود تا به دوربین بگوید کدام حالت دوربین SINGLE را فعال کند.

انتخابگر کنترل ۱
عملیات GET / SET
wLength ۸
افست میدان اندازه ارزش توضیحات
0 bActiveMode ۸ بیت‌مپ تنظیم یا بازگرداندن حالت دوربین فعال
یادداشت‌ها:

رفتار انواع درخواست‌های پشتیبانی‌شده به شرح زیر است:

افست 0 توضیحات
GET_CUR حالت دوربین کادربندی فعال (Active Frameing) را فعال کنید
GET_MIN وابسته به دوربین
GET_MAX وابسته به دوربین
GET_RES یک ماسک بیتی به طول ۸ بایت از حالت‌های دوربین پشتیبانی‌شده را برمی‌گرداند.
GET_LEN 0x0008 طول
GET_INFO 0x0B به‌روزرسانی خودکار / نوشتن / خواندن
GET_DEF ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
مقدار پیش‌فرض
SET_CUR حالت دوربین کادربندی فعال را تنظیم کنید

کنترل: GOOGXU_REFRAME

این کنترل برای فعال کردن قاب‌بندی تک‌شات، که با نام OTAZ نیز شناخته می‌شود، استفاده می‌شود. وقتی OTAZ فعال می‌شود، نمای دوربین به بهترین نمای اتاق تبدیل می‌شود. پس از آن، کلاینت دوباره توانایی کنترل مقادیر PTZ را به دست می‌آورد. اگر قاب‌بندی تک‌شات پشتیبانی نمی‌شود، دوربین نباید این کنترل را تعریف کند.

انتخابگر کنترل ۲
عملیات SET
wLength ۱
افست میدان اندازه ارزش توضیحات
0 bReframe ۱ شماره 0x01 اجرای درخواست تغییر فریم

رفتار انواع درخواست‌های پشتیبانی‌شده به شرح زیر است:

افست 0 توضیحات
GET_MIN 0x00
GET_MAX 0x01
GET_RES 0x01
GET_LEN 0x0001
GET_INFO 0x02 فقط بنویس
GET_DEF 0x00
SET_CUR درخواست فریمینگ تک‌شات را تنظیم کنید

شمارش اشغال

شمارش تعداد افراد حاضر در اتاق جلسه (OC) قابلیتی است که برای تخمین تعداد شرکت‌کنندگان در اتاق جلسه، علی‌رغم نمای کراپ‌شده دوربین، استفاده می‌شود.

این جدول رفتار مورد انتظار از کنترل‌های اورکلاک و تعامل آنها با جریان ویدیوی دوربین و نشانگر LED دوربین را نشان می‌دهد.

چه زمانی شمارش اشغال انجام می‌شود؟ و جریان ویدیوی دوربین عبارت است از: نشانگر 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) این ویژگی را فعال می‌کند. اگر این ویژگی پشتیبانی نشود، دوربین نباید این کنترل را تعریف کند.

انتخابگر کنترل ۳
عملیات GET / SET
wLength ۱
افست میدان اندازه ارزش توضیحات
0 bOccupancy ۱ بولی تنظیم تابع شمارش تعداد افراد اشغال شده
0x00 خاموش کردن عملکرد
0x01 روشن کردن عملکرد

رفتار انواع درخواست‌های پشتیبانی‌شده به شرح زیر است:

افست 0 توضیحات
GET_CUR در صورت روشن بودن شمارش تعداد نفرات، برگردید
GET_MIN 0x00
GET_MAX 0x01
GET_RES 0x01
GET_LEN 0x0001
GET_INFO 0x0B به‌روزرسانی خودکار / نوشتن / خواندن
GET_DEF 0x00
SET_CUR فعال یا غیرفعال کردن ویژگی شمارش اشغال

کنترل: GOOGXU_OCCUPANCY_COUNTING_READ

این کنترل برای خواندن تعداد شرکت‌کنندگان در یک اتاق که توسط دوربین گزارش شده است، زمانی که شمارش تعداد افراد فعال است، استفاده می‌شود. هنگامی که شمارش تعداد افراد غیرفعال است، دوربین باید این کنترل را غیرفعال کند. اگر شمارش تعداد افراد پشتیبانی نمی‌شود، دوربین نباید این کنترل را تعریف کند.

انتخابگر کنترل ۴
عملیات GET
wLength ۲
افست میدان اندازه ارزش توضیحات
0 bNumPeople ۲ شماره تعداد ساکنین شناسایی‌شده در دید. (فقط خواندنی)

رفتار انواع درخواست‌های پشتیبانی‌شده به شرح زیر است:

افست 0 توضیحات
GET_CUR تعداد سرنشینان شناسایی شده را برگردانید
GET_MIN 0x0000
GET_MAX 0x00FF
GET_RES 0x0001
GET_LEN 0x0002
GET_INFO 0x09 به‌روزرسانی خودکار / خواندن
GET_DEF 0x0000

تله‌متری و تشخیص دستگاه

این کنترل‌ها برای تشویق شیوه‌های اشکال‌زدایی بهتر با سخت‌افزار Meet در نظر گرفته شده‌اند و معمولاً کاربرپسند نیستند.

کنترل: GOOGXU_STATUS_INFO

این کنترل برای پرس و جو اطلاعات از دوربین میزبان و به اشتراک گذاری آن با شرکا برای اشکال زدایی استفاده می شود.

انتخابگر کنترل ۵
عملیات GET
wLength ۸
افست میدان اندازه ارزش توضیحات
0 bNumCameras ۱ شماره تعداد ماهواره‌های اضافی متصل به دوربین اصلی که ممکن است بر جریان دوربین که به میزبان بازگردانده می‌شود، تأثیر بگذارند.
۱ bIsMoving ۱ بیت‌مپ وقتی دوربین بیکار است، ۰ و وقتی مقادیر PTZ آن تغییر می‌کند، غیر صفر است. فروشندگان می‌توانند محورها یا موتورهای مختلف را به بیت‌های مختلف نگاشت کنند.
۲ Undef ۶ نامشخص در آینده تمدید شود.

رفتار انواع درخواست‌های پشتیبانی‌شده به شرح زیر است:

افست 0 ۱ ۲ توضیحات
GET_MIN 0x00 0x00 ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰
GET_MAX 0xFF 0xFF ۰xFF ۰xFF ۰xFF
۰xFF ۰xFF ۰xFF
GET_RES 0x01 0x01 ۰x۰۱ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰
GET_LEN 0x08 0x00 0x0008
GET_INFO 0x09 به‌روزرسانی خودکار / خواندن
GET_DEF 0x00 0x00 ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰

کنترل: GOOGXU_SATELLITE_INFO

این کنترل برای پرس‌وجو از دستگاه‌های ماهواره‌ای که به این سیستم دوربین متصل هستند، استفاده می‌شود.

انتخابگر کنترل 0x0A
عملیات GET
wLength ۲۰
افست میدان اندازه ارزش توضیحات
0 bSatelliteList ۲۰ بیت‌مپ فهرست انواع ماهواره‌های متصل به سیستم. شامل چهار اسلات ۵ بایتی جداگانه است. هر یک از اسلات‌ها به شرح زیر است:
افست توضیحات
0 مقدار برای این نوع ماهواره.
۱-۲ شناسه فروشنده این نوع ماهواره.
۳-۴ شناسه محصول برای این نوع ماهواره.

رفتار انواع درخواست‌های پشتیبانی‌شده به شرح زیر است:

افست 0 توضیحات
GET_MIN ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
GET_MAX ۰xFF ۰xFF ۰xFF ۰xFF ۰xFF
۰xFF ۰xFF ۰xFF ۰xFF ۰xFF
۰xFF ۰xFF ۰xFF ۰xFF ۰xFF
۰xFF ۰xFF ۰xFF ۰xFF ۰xFF
GET_RES ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
GET_LEN 0x14 ۲۰ بایت
GET_INFO 0x09 به‌روزرسانی خودکار / خواندن
GET_DEF ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰
۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰ ۰x۰۰

کنترل: GOOGXU_STATUS_RESET

این کنترل برای صدور درخواست تنظیم مجدد به دوربین استفاده می‌شود. تنظیم مقدار یک (1) درخواست تنظیم مجدد دوربین را می‌دهد. اگر از آخرین تنظیم مجدد درخواستی برای راه‌اندازی مجدد دوربین نشده باشد، دوربین صفر (0) و اگر در حال تنظیم مجدد باشد، یک (1) را برمی‌گرداند. تنظیم مجدد باید باعث راه‌اندازی مجدد دوربین شود. (این مورد برای دستگاه‌های خودپرداز که در آن‌ها قطع اتصال USB برای شبیه‌سازی اتصال داغ مفید نیست، مورد نیاز است.)

انتخابگر کنترل ۶
عملیات GET / SET
wLength ۱
افست میدان اندازه ارزش توضیحات
0 bResetRequest ۱ بولی درخواست تنظیم مجدد را به میزبان و دوربین‌های متصل ارسال کنید.
اگر درخواست بازنشانی از آخرین بازنشانی صادر شده باشد، مقدار 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 برای تعیین مختصات PTZ نگاشت‌شده به شاخص استفاده می‌شود. Preset index صفر (0) به مختصات خانه نگاشت می‌شود و باید موقعیت پیش‌فرض دوربین در هنگام بیدار شدن باشد، زمانی که GOOGXU_FRAME_STRATEGY روی NONE تنظیم شده باشد.

انتخابگر کنترل ۷
عملیات SET
wLength ۲
افست میدان اندازه ارزش توضیحات
0 bPresetAction ۱ شماره 0x01: ذخیره تنظیمات از پیش تعیین‌شده
0x02: بازیابی تنظیمات از پیش تعیین‌شده
0x03: تنظیم پیش‌فرض را به حالت پیش‌فرض برمی‌گرداند. (پیش‌فرض باید یک مختصات از پیش تعیین‌شده معتبر باشد.)
۱ bPresetIndex ۱ شماره شاخص از پیش تعیین‌شده‌ی فعال. 0~N-1
که در آن 0 به عنوان موقعیت شروع پیش‌فرض دوربین در نظر گرفته می‌شود و N-1 یک ثابت تعریف شده توسط فروشنده برای تعداد تنظیمات از پیش تعیین شده است.

رفتار انواع درخواست‌های پشتیبانی‌شده به شرح زیر است:

افست 0 ۱ توضیحات
GET_MIN 0x00 0x00
GET_MAX 0x03 ن-۱ حداکثر تعداد ایستگاه از پیش تنظیم شده پشتیبانی می‌شود
GET_RES 0x01 0x01
GET_LEN 0x02 0x00 0x0002
GET_INFO 0x02 فقط بنویس
GET_DEF 0x00 0x00

نقشه برداری کمکی پن و تیلت

بعضی از دوربین‌ها اجزای خاصی دارند، مانند موتورهای دوربین‌های مکانیکی یا قابلیت‌های PTZ دیجیتال. برای این موارد، از کنترل‌های استاندارد V4L2 برای چرخش افقی، عمودی و زوم استفاده کنید.

کنترل: GOOGXU_PAN_TILT_ABSOLUTE (منسوخ شده)

کنترل‌های کمکی نقشه‌برداری Pan و Tilt در فصل 4 تعریف شده‌اند: درخواست‌های خاص کلاس، بخش 4.2.2.1.14 کنترل PanTilt (مطلق) از مشخصات کلاس UVC 1.5 .

کنترل: GOOGXU_PAN_TILT_RELATIVE (منسوخ شده)

کنترل‌های کمکی نقشه‌برداری Pan و Tilt در فصل 4 تعریف شده‌اند: درخواست‌های خاص کلاس، بخش 4.2.2.1.15 کنترل PanTilt (نسبی) از مشخصات کلاس UVC 1.5 .

یادداشت‌های انتشار

این یادداشت‌های انتشار، بهبودها و ویژگی‌های جدید را در هر ویرایش از این سند منعکس می‌کنند.

۱۳ آگوست ۲۰۲۵

۲۷ ژانویه ۲۰۲۵

۲۱ مه ۲۰۲۴

۱۵ نوامبر ۲۰۲۳

اسکریپت تست به‌روزرسانی شده برای بررسی و تفسیر حالت‌های فریم‌بندی معتبر. نمایش بایت‌ها شفاف‌سازی شده.

۲۱ ژوئیه ۲۰۲۳

اسکریپت آزمایشی برای شرکا اضافه شد تا پیاده‌سازی‌ها را برای انطباق با این مشخصات اعتبارسنجی کند.

۲۵ مه ۲۰۲۳

نکته‌ی GOOGXU_PRESETS در مورد تعداد ایستگاه‌های از پیش تنظیم شده اصلاح شد. باید N باشد، نه N-1.

۱۷ آوریل ۲۰۲۳

انتشار اولیه.