เอกสารนี้ระบุ API ของ USB Video Class Extension Unit (XU) ที่รองรับซึ่งระบบการประชุมของ Google Meet ใช้ในการเปิดใช้ฟีเจอร์กล้องอัจฉริยะ วัตถุประสงค์ในการสร้างข้อกําหนดนี้คือเพื่อชี้แนะแนวทางปฏิบัติเพื่อเปิดใช้ฟีเจอร์เหล่านี้ และเพื่อให้พาร์ทเนอร์ของเราปรับขนาดและทดสอบแบบไม่พร้อมกันได้ดียิ่งขึ้น
โปรดดูรายละเอียดเกี่ยวกับการเปลี่ยนแปลงล่าสุดในเอกสารนี้ที่บันทึกประจำรุ่น
สถานที่ตรวจหาเชื้อไวรัส
เพื่อช่วยพาร์ทเนอร์ในการตรวจสอบการปฏิบัติตามข้อกำหนดนี้ เราจึงจัดเตรียมห้องทดสอบในอุปกรณ์ Chromebox สำหรับการประชุมที่ตั้งค่าเป็นโหมดนักพัฒนาซอฟต์แวร์
เปิดใช้การเขียนลงในระบบไฟล์
เพิ่มบรรทัดต่อไปนี้ลงใน
/etc/chrome_dev.conf
--enable-logging
--log-level=0
รีสตาร์ทอุปกรณ์ เชื่อมต่อกล้องกับแป้นพิมพ์ USB แล้วกด Ctrl-Alt-X
ระบบจะตรวจสอบการปฏิบัติตามข้อกำหนดของกล้องที่ใช้งานอยู่และบันทึกลงใน /home/chronos/user/log/chrome
รูปแบบ Little-endian
USB เป็นอุปกรณ์มาตรฐานขนาดเล็ก ในเอกสารนี้
- ตัวเลขหลายไบต์จะปรากฏในรูปแบบ Big Endian (และส่งในรูปแบบ Little Endian)
- อาร์เรย์ไบต์อยู่ในเลย์เอาต์หน่วยความจําแบบ Little Endian
เช่น 0x12345678
เหมือนกับ [0x78, 0x56, 0x34, 0x12]
GUID ของหน่วยขยาย
ยูนิตส่วนขยายที่รองรับข้อกำหนดการควบคุม Meet XU นี้ต้องใช้ GUID นี้
หน่วยของส่วนขยาย | GUID |
---|---|
XU สำหรับการควบคุมอุปกรณ์ต่อพ่วง | {74D7E924-49C9-4A45-98A3-8A9F60061E83} |
ตัวเลือก XU ของการควบคุมอุปกรณ์ต่อพ่วง
ตัวเลือกเหล่านี้คือตัวเลือก XU ของการควบคุมอุปกรณ์ต่อพ่วงที่กําหนดไว้
ตัวเลือกการควบคุม | ค่า |
---|---|
GOOGXU_FRAME_STRATEGY |
0x |
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 |
ประเภทคำขอควบคุม
ประเภทคำขอควบคุมจะระบุไว้ในบทที่ 4: คำขอเฉพาะคลาสของข้อกำหนดคลาส 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) | กล้องจะติดตามผู้คนในห้องอย่างต่อเนื่องตามการเอียงของเฟรม หมายเหตุ: โหมดนี้จะปิดใช้ PTZ |
แยกเฟรม | กล้องจะสร้างมุมมองวิดีโอได้มากเท่าที่ต้องการ ระบบจะจัดเรียงฟีดเป็นไทล์ในสตรีมเดียวหรือสร้างสตรีมวิดีโอแยกกันสำหรับแต่ละมุมมอง โดยขึ้นอยู่กับตัวเลือกฟีดการจัดเฟรมอัตโนมัติ หมายเหตุ: โหมดนี้จะปิดใช้ PTZ |
มุมมองแบบไดนามิก | กล้องอย่างน้อย 1 ตัวจะพยายามแสดงมุมมองที่ดีที่สุดของห้อง โดยสามารถตัดสินใจว่าจะคอมโพสหลายฟีดเป็นฟีดเดียวหรือไม่ หรือจะให้มุมมอง "น่าสนใจ" ของห้องปัจจุบัน วัตถุประสงค์ของมุมมองนี้คือเพื่อให้ผู้เข้าร่วมในสายเห็นภาพผู้เข้าร่วมในห้องประชุมได้อย่างเท่าเทียมที่สุด หมายเหตุ:
|
การให้น้ำหนักพิเศษกับการจัดเฟรมอัตโนมัติ
ฟีเจอร์ | คำอธิบาย |
---|---|
ผู้นำเสนอที่มีความเสี่ยงสูง (การติดตามผู้พูด) | กล้องจะพยายามจัดเฟรมคนที่กำลังพูดอยู่ในห้องให้ดีที่สุด ในกรณีนี้ กล้องควรเอนเอียงไปทางผู้นำเสนอ เช่น CEO ในห้องประชุมกำลังนำเสนองาน |
การทำงานร่วมกัน (การติดตามห้อง) |
กล้องจะพยายามจัดเฟรมผู้เข้าร่วมทุกคนในห้องให้ดีที่สุด ในกรณีนี้ กล้องควรจับภาพผู้เข้าร่วมทุกคนอย่างเท่าเทียม การประชุมส่วนใหญ่ควรใช้กลยุทธ์นี้ |
ฟีดที่ใช้การจัดเฟรมอัตโนมัติ
ฟีเจอร์ | คำอธิบาย |
---|---|
สตรีมเดียว | กล้องจะส่งสตรีมวิดีโอเดียวไปยังอุปกรณ์โฮสต์ |
หลายสตรีม (กำลังดำเนินการ) |
กล้องจะแยกสตรีมออกและสร้างสตรีมวิดีโอหลายรายการเพื่อส่งไปยังโฮสต์ หมายเหตุ: ข้อกำหนดเฉพาะทั้งหมดและลักษณะการทำงานที่คาดไว้ของฟีเจอร์นี้อยู่ระหว่างรอการตรวจสอบและยังไม่รองรับจนกว่าจะมีการแก้ไขเอกสารนี้ในภายหลัง |
ค่าบิตแมปของโหมดการจัดเฟรมอัตโนมัติ
ยกเว้นสถานะเริ่มต้นของ None
ที่แสดงโดยอาร์เรย์ไบต์ว่าง แต่ละบิตในอาร์เรย์ไบต์แสดงโหมดกล้องที่แตกต่างกัน ซึ่งเป็นการผสมผสานที่เฉพาะเจาะจงของกลยุทธ์การจัดเฟรมอัตโนมัติ ความลำเอียงของการจัดเฟรมอัตโนมัติ และฟีดการจัดเฟรมอัตโนมัติ
ดัชนีบิต | CAZ | เฟรมแยก | ไดนามิก | - |
---|---|---|---|---|
ลำโพง | D1 - |
- - |
D5 D6 |
สตรีมเดียว สตรีมหลายรายการ |
ห้อง | D2 - |
D3 D4 |
D7 D8 |
สตรีมเดียว สตรีมหลายรายการ |
โหมดเฟรม | ค่าโหมดเฟรม (ไบต์ที่มีนัยสำคัญน้อยที่สุด) |
---|---|
None |
0x00 |
CAZ, Speaker, Single-Stream |
0x |
CAZ, Room, Single-Stream |
0x02 |
Split-Frame, Room, Single-Stream |
0x04 |
Split-Frame, Room, Multi-Stream |
0x08 |
Dynamic, Speaker, Single-Stream |
0x10 |
Dynamic, Speaker, Multi-Stream |
20x20 |
Dynamic, Room, Single-Stream |
0x40 |
Dynamic, Room, Multi-Stream |
0x80 |
การควบคุม: 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
ตามด้วยไบต์ 0 7 ตัว)
คำสั่ง SET_CUR
ใช้เพื่อส่งบิตแมปเพื่อบอกให้กล้องเปิดใช้โหมดกล้องเดี่ยวโหมดใด
ตัวเลือกการควบคุม | 1 | |||
---|---|---|---|---|
การดำเนินการ | GET / SET |
|||
wLength |
8 | |||
ออฟเซ็ต | ช่อง | ขนาด | ค่า | คำอธิบาย |
0 | bActiveMode |
8 | บิตแมป | ตั้งค่าหรือเปลี่ยนกลับโหมดกล้องทำงาน |
หมายเหตุ:
|
ลักษณะการทํางานของคำขอประเภทที่รองรับมีดังนี้
ออฟเซ็ต | 0 | คำอธิบาย |
---|---|---|
GET_CUR |
รับโหมดกล้องจัดเฟรมอัตโนมัติ | |
GET_MIN |
ขึ้นอยู่กับกล้อง | |
GET_MAX |
พึ่งพากล้อง | |
GET_RES |
แสดงบิตมาสก์ความยาว 8 ไบต์ของโหมดกล้องที่รองรับ | |
GET_LEN |
0x0008 | ความยาว |
GET_INFO |
0x0B | อัปเดตอัตโนมัติ / เขียน / อ่าน |
GET_DEF |
0x00 0x00 0x00 0x00 0x00 0x00 0x00 0x00 |
ค่าเริ่มต้น |
SET_CUR |
ตั้งค่าโหมดการจัดเฟรมแบบแอ็กทีฟของกล้อง |
การควบคุม: GOOGXU_REFRAME
การควบคุมนี้ใช้เพื่อเรียกใช้การจัดเฟรมแบบช็อตเดียว หรือที่เรียกว่า OTAZ เมื่อ OTAZ เริ่มทำงาน มุมมองกล้องจะสแนปไปยังมุมมองที่ดีที่สุดของห้อง หลังจากนั้น ลูกค้าจะควบคุมค่า PTZ ได้อีกครั้ง หากระบบไม่รองรับการจัดเฟรมแบบช็อตเดียว กล้องไม่ควรกำหนดการควบคุมนี้
ตัวเลือกการควบคุม | 2 | |||
---|---|---|---|---|
การดำเนินการ | SET |
|||
wLength |
1 | |||
ออฟเซ็ต | ช่อง | ขนาด | ค่า | คำอธิบาย |
0 | bReframe |
1 | ตัวเลข | 0x01 ดำเนินการตามคำขอเปลี่ยนเฟรม |
ลักษณะการทํางานของคำขอประเภทที่รองรับมีดังนี้
ออฟเซ็ต | 0 | คำอธิบาย |
---|---|---|
GET_MIN |
0x00 | |
GET_MAX |
0x | |
GET_RES |
0x | |
GET_LEN |
0x0001 | |
GET_INFO |
0x02 | เขียนเท่านั้น |
GET_DEF |
0x00 | |
SET_CUR |
ตั้งค่าคำขอสำหรับการจัดเฟรมแบบช็อตเดียว |
การนับจำนวนผู้เข้าพัก
การนับจำนวนผู้เข้าร่วม (OC) คือฟีเจอร์ที่ใช้ประเมินจำนวนผู้เข้าร่วมในห้องประชุม แม้ว่ามุมมองของกล้องจะถูกครอบตัดก็ตาม
ตารางนี้แสดงลักษณะการทำงานที่คาดไว้ของการควบคุม 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 จะเปิดใช้ฟีเจอร์นี้ หากระบบไม่รองรับฟีเจอร์นี้ กล้องไม่ควรกำหนดการควบคุมนี้
ตัวเลือกการควบคุม | 3 | |||
---|---|---|---|---|
การดำเนินการ | GET / SET |
|||
wLength |
1 | |||
ออฟเซ็ต | ช่อง | ขนาด | ค่า | คำอธิบาย |
0 | bOccupancy |
1 | บูลีน | ตั้งค่าฟังก์ชันการนับการเข้าใช้ 0x00 ปิดฟังก์ชัน 0x01 เปิดฟังก์ชัน |
ลักษณะการทํางานของคำขอประเภทที่รองรับมีดังนี้
ออฟเซ็ต | 0 | คำอธิบาย |
---|---|---|
GET_CUR |
แสดงผลหากเปิดการนับการเข้าใช้ไว้ | |
GET_MIN |
0x00 | |
GET_MAX |
0x | |
GET_RES |
0x | |
GET_LEN |
0x0001 | |
GET_INFO |
0x0B | อัปเดตอัตโนมัติ / เขียน / อ่าน |
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 | อัปเดตอัตโนมัติ / อ่าน |
GET_DEF |
0x0000 |
การตรวจวัดระยะไกลและการวินิจฉัยอุปกรณ์
การควบคุมเหล่านี้มีไว้เพื่อส่งเสริมแนวทางปฏิบัติในการแก้ไขข้อบกพร่องที่ดียิ่งขึ้นด้วยฮาร์ดแวร์ของ Meet และมักจะไม่แสดงต่อผู้ใช้
การควบคุม: GOOGXU_STATUS_INFO
การควบคุมนี้ใช้เพื่อค้นหาข้อมูลจากกล้องโฮสต์เพื่อแชร์กับพาร์ทเนอร์สำหรับการแก้ไขข้อบกพร่อง
ตัวเลือกการควบคุม | 5 | |||
---|---|---|---|---|
การดำเนินการ | GET |
|||
wLength |
8 | |||
ออฟเซ็ต | ช่อง | ขนาด | ค่า | คำอธิบาย |
0 | bNumCameras |
1 | ตัวเลข | จำนวนกล้องเสริมที่แนบอยู่กับกล้องหลักซึ่งอาจส่งผลต่อสตรีมกล้องที่ส่งกลับไปยังโฮสต์ |
1 | bIsMoving |
1 | บิตแมป | 0 เมื่อกล้องไม่ได้ทำงาน และไม่เป็น 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 | 0x | 0x01 0x00 0x00 0x00 0x00 0x00 |
|
GET_LEN |
0x08 | 0x00 | 0x0008 | |
GET_INFO |
0x09 | อัปเดตอัตโนมัติ / อ่าน | ||
GET_DEF |
0x00 | 0x00 | 0x00 0x00 0x00 0x00 0x00 0x00 |
การควบคุม: GOOGXU_STATUS_RESET
การควบคุมนี้ใช้เพื่อส่งคำขอรีเซ็ตไปยังกล้อง การตั้งค่าเป็นค่า 1 (1) จะส่งคําขอให้กล้องรีเซ็ต กล้องจะแสดงผลเป็นศูนย์ (0) หากไม่มีคำขอรีสตาร์ทกล้องนับตั้งแต่การรีเซ็ตครั้งล่าสุด และคำขอหนึ่ง (1) หากรีเซ็ต การรีเซ็ตต้องทริกเกอร์การรีบูตกล้อง (จำเป็นสำหรับอุปกรณ์ที่ชาร์จเองซึ่งการบังคับให้ยกเลิกการเชื่อมต่อ USB เพื่อจำลองการเสียบปลั๊กใหม่นั้นไม่เป็นประโยชน์)
ตัวเลือกการควบคุม | 6 | |||
---|---|---|---|---|
การดำเนินการ | GET / SET |
|||
wLength |
1 | |||
ออฟเซ็ต | ช่อง | ขนาด | ค่า | คำอธิบาย |
0 | bResetRequest |
1 | บูลีน | ส่งคำขอรีเซ็ตไปยังโฮสต์และกล้องที่เชื่อมต่อ แสดงผล 0x01 หากมีคำขอรีเซ็ตนับจากการรีเซ็ตครั้งล่าสุด หากไม่ใช่ 0x00 |
การทำงานของประเภทคำขอที่รองรับมีดังนี้
ออฟเซ็ต | 0 | คำอธิบาย |
---|---|---|
GET_MIN |
0x00 | |
GET_MAX |
0x | |
GET_RES |
0x | |
GET_LEN |
0x0001 | |
GET_INFO |
0x03 | เขียน / อ่าน |
GET_DEF |
0x00 |
ค่าที่กำหนดล่วงหน้าของ PTZ
ใช้เพื่อกำหนดค่าและคืนค่าขอบเขตการมองเห็นของกล้องไปยังตำแหน่งที่กำหนดไว้ล่วงหน้า
การควบคุม: GOOGXU_PRESETS
การควบคุมนี้ใช้เพื่อตั้งค่าการเลื่อน เอียง และซูม (PTZ) ของกล้องเป็นการกำหนดค่าที่กำหนดล่วงหน้า
Preset Action
ใช้เพื่อระบุการดำเนินการที่ต้องการของคำสั่ง การตั้งค่าค่า 1 (1) ใช้เพื่อจับคู่ค่าการแพน การเอียง และการซูมปัจจุบันกับดัชนีที่กำหนดไว้ล่วงหน้า การตั้งค่าเป็น 2 (2) ควรเปลี่ยนการแพน การวางแนว และซูมของกล้องเป็นค่าที่แมปไว้ก่อนหน้านี้สำหรับดัชนีที่ระบุ หรือพิกัดเริ่มต้นของโรงงาน (หากไม่ได้แมปไว้ก่อนหน้านี้) การตั้งค่าค่าเป็น 3 จะรีเซ็ตดัชนีเป็นพิกัดเริ่มต้น
Preset Index
จะใช้เพื่อระบุพิกัด PTZ ที่แมปกับดัชนี
Preset index
ของ 0 (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 | รองรับค่าที่กำหนดล่วงหน้าสูงสุด N ค่า |
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 การควบคุมการแพนและเอียง (แบบสัมพัทธ์) ของข้อมูลจำเพาะคลาส UVC 1.5
หัวข้อที่เกี่ยวข้อง
- ไดรเวอร์ Linux USB Video Class (UVC)
- ชุดเอกสาร Video Class v1.5
- ข้อกำหนดของ USB 2.0
- ศูนย์ช่วยเหลือของ ฮาร์ดแวร์ของ Google Meet
- ส่วนฮาร์ดแวร์ของ Google Meet ในศูนย์ช่วยเหลือสำหรับผู้ดูแลระบบ Google Workspace
บันทึกประจำรุ่น
บันทึกประจำรุ่นเหล่านี้ระบุถึงการปรับปรุงและฟีเจอร์ใหม่ในการแก้ไขแต่ละครั้งของเอกสารนี้
21 พ.ค. 2024
- นำสคริปต์ทดสอบออกเพื่อใช้เครื่องมือทดสอบ CfM ใหม่ ซึ่งจะทดสอบ
SET
และรองรับการตรวจสอบกล้องซีรีส์ 1 ด้วย - ช่องที่ชี้แจงใน
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
การเผยแพร่ครั้งแรก