Google Meet Media API ช่วยให้คุณเข้าถึงสื่อแบบเรียลไทม์จากการประชุม Google Meet ได้ ซึ่งจะทำให้เกิดกรณีการใช้งานที่หลากหลาย เช่น แอปที่บันทึกรายการการดำเนินการ นำเสนอข้อมูลเชิงลึกแบบเรียลไทม์เกี่ยวกับการประชุมปัจจุบัน หรือสตรีมเสียงและวิดีโอไปยังแพลตฟอร์มใหม่
กรณีการใช้งาน
แอปที่ลงทะเบียนในคอนโซล Google Cloud สามารถใช้ Meet Media API เพื่อเชื่อมต่อกับการประชุมของ Meet ซึ่งจะช่วยให้แอปดำเนินการต่อไปนี้ได้
- รับชมสตรีมวิดีโอ เช่น
- ส่งสตรีมวิดีโอที่สร้างขึ้นจากการประชุมใน Meet ไปยังโมเดล AI ของคุณเอง
- กรองสตรีมสำหรับการบันทึกที่กำหนดเอง
- ใช้สตรีมเสียง เช่น
- ส่งเสียงไปยัง Gemini โดยตรงและสร้างแชทบ็อต AI สำหรับการประชุมของคุณเอง
- ส่งฟีดสตรีมเสียงที่สร้างขึ้นจากการประชุมใน Meet ไปยังบริการถอดเสียงของคุณเอง
- สร้างคำบรรยายแทนเสียงในภาษาต่างๆ
- สร้างฟีดภาษามือที่สร้างขึ้นจากโมเดลจากเสียงที่บันทึกไว้
- สร้างโมเดลการลดเสียงรบกวนของคุณเองเพื่อนำพื้นหลังและสัญญาณรบกวนออกจากการประชุม
- ใช้ข้อมูลเมตาของผู้เข้าร่วม เช่น
- ตรวจหาผู้เข้าร่วมที่อยู่ในการประชุม ซึ่งช่วยให้ได้รับข้อมูลเชิงลึกและการวิเคราะห์ที่ดีขึ้น
คำทั่วไป
- หมายเลขโปรเจ็กต์ที่อยู่ในระบบคลาวด์
- ตัวระบุ
int64
ที่สร้างขึ้นแบบแก้ไขไม่ได้สำหรับโปรเจ็กต์ Google Cloud ค่าเหล่านี้สร้างขึ้นโดย Google Cloud Console สําหรับแอปที่ลงทะเบียนแต่ละแอป - การประชุม
- อินสแตนซ์การโทรที่เซิร์ฟเวอร์สร้างขึ้นภายในพื้นที่ทำงานการประชุม โดยปกติแล้วผู้ใช้จะถือว่าสถานการณ์นี้เป็นการประชุมเดียว
- แชแนลข้อมูลแหล่งข้อมูลการประชุม
ไคลเอ็นต์ Meet Media API จะขอทรัพยากรจากเซิร์ฟเวอร์ผ่านช่องทางข้อมูลแทนที่จะขอผ่าน HTTP เช่นเดียวกับ Google Meet REST API
ระบบอาจเปิดช่องทางข้อมูลเฉพาะสําหรับทรัพยากรแต่ละประเภท เมื่อเปิดแล้ว ไคลเอ็นต์จะส่งคำขอผ่านช่องทางได้ ระบบจะส่งการอัปเดตทรัพยากรผ่านช่องทางเดียวกัน
- แหล่งที่มาของเนื้อหา (CSRC)
เมื่อใช้สตรีมสื่อเสมือน คุณจะไม่สามารถถือว่าสตรีมสื่อชี้ไปยังผู้เข้าร่วมคนเดิมเสมอไป ค่า CSRC ในส่วนหัวของแพ็กเก็ต RTP แต่ละรายการจะระบุแหล่งที่มาจริงของแพ็กเก็ต
Meet จะกำหนดค่า CSRC ที่ไม่ซ้ำกันให้กับผู้เข้าร่วมแต่ละคนในการประชุมเมื่อเข้าร่วม ค่านี้จะคงที่จนกว่าผู้ใช้จะออกจากหน้า
- แชแนลข้อมูล
แชแนลข้อมูล WebRTC ช่วยในการแลกเปลี่ยนข้อมูลแบบไม่จำกัด (ข้อความ ไฟล์ ฯลฯ) แยกจากสตรีมเสียงและวิดีโอ ช่องทางข้อมูลใช้การเชื่อมต่อเดียวกับสตรีมสื่อ ซึ่งเป็นวิธีที่มีประสิทธิภาพในการเพิ่มการแลกเปลี่ยนข้อมูลไปยังแอปพลิเคชัน WebRTC
- Interactive Connectivity Establishment (ICE)
โปรโตคอลสำหรับการสร้างการเชื่อมต่อ ค้นหาเส้นทางที่เป็นไปได้ทั้งหมดเพื่อให้คอมพิวเตอร์ 2 เครื่องสื่อสารกันได้ผ่านเครือข่ายแบบผู้ใช้ต่อผู้ใช้ (P2P) และตรวจสอบว่าคุณเชื่อมต่ออยู่เสมอ
- สตรีมสื่อ
สตรีมสื่อ WebRTC แสดงถึงกระแสข้อมูลสื่อ ซึ่งโดยปกติจะเป็นเสียงหรือวิดีโอที่บันทึกจากอุปกรณ์ เช่น กล้องหรือไมโครโฟน โดยประกอบด้วยแทร็กสตรีมสื่ออย่างน้อย 1 แทร็ก โดยแต่ละแทร็กจะแสดงแหล่งที่มาของสื่อเพียงแหล่งเดียว เช่น แทร็กวิดีโอหรือแทร็กเสียง)
- แทร็กสตรีมสื่อ
ประกอบด้วยแพ็กเก็ต RTP เดียวแบบทิศทางเดียว แทร็กสตรีมสื่ออาจเป็นเสียงหรือวิดีโอก็ได้ แต่ต้องไม่ใช่ทั้ง 2 อย่าง การเชื่อมต่อ Secure Real-time Transport Protocol (SRTP) แบบ 2 ทิศทางมักจะประกอบด้วยแทร็กสตรีมสื่อ 2 แทร็ก ได้แก่ การส่งออกจากอุปกรณ์ในเครื่องไปยังอุปกรณ์ระยะไกล และการส่งเข้าจากอุปกรณ์ระยะไกลไปยังอุปกรณ์ในเครื่อง
- พื้นที่การประชุม
สถานที่เสมือนจริงหรือออบเจ็กต์ถาวร (เช่น ห้องประชุม) ที่จัดการประชุม คุณสามารถจัดการประชุมที่ใช้งานอยู่ได้เพียง 1 รายการใน 1 พื้นที่ทำงานเท่านั้น พื้นที่ทำงานยังช่วยให้ผู้ใช้พบปะและค้นหาแหล่งข้อมูลที่แชร์ได้ด้วย
- ผู้เข้าร่วม
บุคคลที่เข้าร่วมการประชุมหรือใช้โหมดแยกหน้าจอประชุม ดูในฐานะผู้ดู หรืออุปกรณ์ห้องประชุมที่เชื่อมต่อกับการโทร เมื่อผู้เข้าร่วมเข้าร่วมการประชุม ระบบจะกำหนดรหัสที่ไม่ซ้ำกัน
- สตรีมที่เกี่ยวข้อง
มีการจำกัดจำนวนสตรีมเสียงเสมือนและสตรีมวิดีโอเสมือนที่ลูกค้าเปิดได้
ทั้งนี้ จำนวนผู้เข้าร่วมในการประชุมอาจมากกว่าจำนวนนี้ ในกรณีเหล่านี้ เซิร์ฟเวอร์ Meet จะส่งสตรีมเสียงและวิดีโอของผู้เข้าร่วมที่ถือว่า "เกี่ยวข้องมากที่สุด" ความเกี่ยวข้องจะพิจารณาจากลักษณะต่างๆ เช่น การแชร์หน้าจอและระยะเวลาล่าสุดที่ผู้เข้าร่วมพูด
- Selective Forwarding Unit (SFU)
Selective Forwarding Unit (SFU) คือคอมโพเนนต์ฝั่งเซิร์ฟเวอร์ในการประชุม WebRTC ที่จัดการการกระจายสตรีมสื่อ ผู้เข้าร่วมจะเชื่อมต่อกับ SFU เท่านั้น ซึ่งจะส่งต่อสตรีมที่เกี่ยวข้องไปยังผู้เข้าร่วมคนอื่นๆ วิธีนี้ช่วยลดการประมวลผลของไคลเอ็นต์และความต้องการแบนด์วิดท์ ซึ่งช่วยให้จัดการประชุมที่ปรับขนาดได้
- Session Description Protocol (SDP)
กลไกการส่งสัญญาณที่ WebRTC ใช้เพื่อเจรจาต่อรองการเชื่อมต่อ P2P
RFC 8866
เป็นผู้ควบคุม- คำตอบ SDP
การตอบกลับข้อเสนอ SDP คำตอบจะปฏิเสธหรือยอมรับสตรีมที่ได้รับจากคู่สนทนาระยะไกล และยังเจรจาต่อรองเกี่ยวกับสตรีมที่จะส่งกลับไปยังคู่ค้าที่เสนอด้วย โปรดทราบว่าคำตอบ SDP ไม่สามารถเพิ่มสตรีมที่มีการส่งสัญญาณจากข้อเสนอแรกได้ ตัวอย่างหนึ่งคือ หาก Peer ที่เสนอสัญญาณระบุว่ายอมรับสตรีมเสียงได้สูงสุด 3 รายการจาก Peer ระยะไกล Peer ระยะไกลนี้จะส่งสัญญาณสตรีมเสียงได้ 4 รายการ
- ข้อเสนอ SDP
SDP เริ่มต้นในขั้นตอนการเจรจาต่อรองแบบ peer-to-peer ของข้อเสนอและคำตอบ ข้อเสนอสร้างขึ้นโดยเพียร์ที่เป็นผู้เริ่มและกำหนดข้อกำหนดของเซสชันแบบเพียร์ต่อเพียร์ ไคลเอ็นต์ Meet Media API จะสร้างข้อเสนอและส่งไปยังเซิร์ฟเวอร์ Meet เสมอ
ตัวอย่างเช่น ข้อเสนออาจระบุจำนวนสตรีมเสียงหรือวิดีโอที่ผู้เสนอส่ง (หรือรับได้) และระบุว่าต้องเปิดช่องทางข้อมูลหรือไม่
- แหล่งที่มาของการซิงค์ (SSRC)
SSRC คือตัวระบุ 32 บิตที่ระบุแหล่งที่มาของสตรีมสื่อรายการเดียวภายในเซสชัน RTP (Real-time Transport Protocol) ใน WebRTC ระบบจะใช้ SSRC เพื่อแยกความแตกต่างระหว่างสตรีมสื่อต่างๆ ที่มาจากผู้เข้าร่วมคนละคน หรือแม้แต่แทร็กต่างๆ จากผู้เข้าร่วมคนเดียวกัน (เช่น กล้องที่แตกต่างกัน)
- RtpTransceiver
ตามที่อธิบายไว้ใน
RFC 8829
ตัวรับส่งสัญญาณเป็นข้อมูลทั่วไปเกี่ยวกับสตรีม RTP ในเซสชันแบบ peer-to-peerตัวรับส่งสัญญาณตัวเดียวจะแมปกับและอธิบายโดยคำอธิบายสื่อเดียวใน SDP ตัวรับส่งประกอบด้วย
RtpSender
และRtpReceiver
เนื่องจาก RTP เป็นการสื่อสารแบบ 2 ทิศทาง พาร์ทเนอร์แต่ละรายจึงมีอินสแตนซ์ตัวรับส่งสัญญาณของตัวเองสําหรับการเชื่อมต่อ RTP เดียวกัน
RtpSender
ของตัวรับส่งสัญญาณหนึ่งๆ สำหรับเพียร์ในเครื่องจะแมปกับRtpReceiver
ของตัวรับส่งสัญญาณที่เฉพาะเจาะจงในเพียร์ระยะไกล ในทางกลับกันก็จริงเช่นกันRtpSender
ของตัวรับส่งสัญญาณเดียวกันของคู่สนทนาระยะไกลจะแมปกับRtpReceiver
ของคู่สนทนาในเครื่องคำอธิบายสื่อทุกรายการจะมีตัวรับส่งสัญญาณเฉพาะของตนเอง ดังนั้น เซสชันแบบ peer-to-peer ที่มีสตรีม RTP หลายรายการจึงมีตัวรับส่งสัญญาณหลายตัวที่มี
RtpSenders
และRtpReceiver
หลายรายการสำหรับแต่ละเพียร์- สตรีมสื่อเสมือน
สตรีมสื่อเสมือนจริงคือสตรีมสื่อแบบรวมที่สร้างขึ้นโดยหน่วยการส่งต่อแบบเลือก (SFU) ในการประชุม WebRTC SFU จะมัลติเพล็กซ์สตรีมของผู้เข้าร่วมที่เลือกลงในสตรีมเสมือนขาออกจำนวนน้อยลงแทนที่จะให้ผู้เข้าร่วมแต่ละคนส่งสตรีมไปยังทุกคน วิธีนี้ทำให้โทโปโลยีการเชื่อมต่อง่ายขึ้นและลดภาระของผู้เข้าร่วม ซึ่งช่วยให้จัดการประชุมที่ปรับขนาดได้ สตรีมเสมือนแต่ละรายการอาจมีสื่อจากผู้เข้าร่วมหลายคน ซึ่ง SFU จะจัดการแบบไดนามิก
หัวข้อที่เกี่ยวข้อง
หากต้องการดูวิธีเริ่มพัฒนาไคลเอ็นต์ Meet Media API ให้ทำตามขั้นตอนในเริ่มต้นใช้งาน
หากต้องการดูวิธีตั้งค่าและเรียกใช้ตัวอย่างไคลเอ็นต์อ้างอิง Meet Media API โปรดอ่านคู่มือเริ่มต้นใช้งานไคลเอ็นต์อ้างอิง C++
ดูภาพรวมแนวคิดได้ที่Meet Media API concepts
ดูข้อมูลเพิ่มเติมเกี่ยวกับ WebRTC ได้ที่ WebRTC สำหรับผู้ที่สนใจ
ดูข้อมูลเกี่ยวกับการพัฒนาด้วย Google Workspace API รวมถึงการจัดการการตรวจสอบสิทธิ์และการให้สิทธิ์ได้ที่พัฒนาใน Google Workspace