หน้านี้จะอธิบายวิธีตั้งค่าและเรียกใช้ตัวอย่างโดยใช้การติดตั้งใช้งานไคลเอ็นต์อ้างอิง C++ ไคลเอ็นต์ การติดตั้งใช้งาน หากต้องการดูข้อมูลเกี่ยวกับไคลเอ็นต์ TypeScript แทน โปรดดูคู่มือเริ่มต้นใช้งานฉบับย่อของไคลเอ็นต์อ้างอิง TypeScript
ข้อกำหนดเบื้องต้น
คุณต้องมีข้อกำหนดเบื้องต้นต่อไปนี้จึงจะเรียกใช้คู่มือเริ่มต้นใช้งานฉบับย่อนี้ได้
- คุณได้โคลนที่เก็บ GitHub แล้ว
- โปรเจ็กต์ Google Cloud ที่เปิดใช้ Google Meet REST API แล้ว
- บัญชี Google Workspace
เปิดใช้ Meet REST API
ก่อนที่จะใช้ Google API คุณต้องเปิด API เหล่านั้นในโปรเจ็กต์ Google Cloud คุณสามารถเปิด API อย่างน้อย 1 รายการในโปรเจ็กต์ Google Cloud เดียวได้คอนโซล Google Cloud
เปิดใช้ Meet REST API ในคอนโซล Google Cloud
ยืนยันว่าคุณกำลังเปิดใช้ Meet REST API ในโปรเจ็กต์ที่อยู่ในระบบคลาวด์ที่ถูกต้อง แล้วคลิกถัดไป
ยืนยันว่าคุณกำลังเปิดใช้ Meet REST API แล้วคลิกเปิดใช้
gcloud CLI
หากจำเป็น ให้ตั้งค่าโปรเจ็กต์ Cloud ปัจจุบันเป็นโปรเจ็กต์ที่คุณสร้างขึ้นโดยใช้คำสั่งต่อไปนี้
gcloud config set project PROJECT_IDแทนที่ PROJECT_ID ด้วยรหัสโปรเจ็กต์ ของโปรเจ็กต์ที่อยู่ในระบบคลาวด์ที่คุณสร้างขึ้น
เปิดใช้ Meet REST API โดยใช้คำสั่งต่อไปนี้
gcloud services enable meet.googleapis.com
สร้างไคลเอ็นต์ C++
การติดตั้งใช้งาน C++ สร้างขึ้นด้วย Generate Ninja (GN) ดูข้อมูลเพิ่มเติมได้ที่เอกสารประกอบของ WebRTC
สร้างรหัสผ่านจาก Git at Google และกำหนดค่า Git
จากอินเทอร์เฟซบรรทัดคำสั่ง (CLI) ให้เปลี่ยน
<samples_location>เป็นไดเรกทอรีที่มีตัวอย่าง แล้วเรียกใช้คำสั่งต่อไปนี้ ซึ่งจะทำหน้าที่ดังนี้- เปลี่ยนไดเรกทอรีที่ใช้งานอยู่เป็นไดเรกทอรีหลัก
- สร้างไดเรกทอรีชื่อ
srcในไดเรกทอรีหลัก - เปลี่ยนไดเรกทอรีที่ใช้งานอยู่เป็น
src - โคลน https://chromium.googlesource.com/chromium/tools/depot_tools.git ลงในไดเรกทอรี src/ จาก Git
- เพิ่มไดเรกทอรี
~/src/depot_toolsลงในรายการตำแหน่งที่เชลล์ค้นหาคำสั่งที่เรียกใช้งานได้ชั่วคราว - เปลี่ยนไดเรกทอรีที่ใช้งานอยู่เป็นไดเรกทอรี cpp ในตำแหน่งตัวอย่าง
- เรียกใช้สคริปต์ของ Shell
./build.sh
cd ~ mkdir src cd src git clone https://chromium.googlesource.com/chromium/tools/depot_tools.git export PATH=~/src/depot_tools:$PATH cd <samples_location>/cpp sh ./build.sh
สร้างโทเค็น OAuth
หากต้องการเชื่อมต่อกับ Meet Media API แอปของคุณต้องใช้ OAuth เพื่อสร้างโทเค็นเพื่อการเข้าถึง ดูข้อมูลเพิ่มเติมเกี่ยวกับการเข้าถึง Google API ด้วย OAuth ได้ที่ การใช้ OAuth 2.0 เพื่อเข้าถึง Google API
คุณสามารถใช้ OAuth 2.0 Playground เพื่อสร้างโทเค็นได้ เมื่อใช้ Playground โปรดตรวจสอบว่าคุณได้ทำสิ่งต่อไปนี้
- ใช้รหัสไคลเอ็นต์และข้อมูลเข้าสู่ระบบลับจากโปรเจ็กต์ที่อยู่ในระบบคลาวด์
- ขอขอบเขตที่ถูกต้อง scopes
- ลงชื่อเข้าใช้บัญชี Google และยอมรับการเข้าถึง
เมื่อเสร็จแล้ว ให้คลิกปุ่ม Exchange authorization code for tokens แล้วคัดลอกโทเค็นเพื่อการเข้าถึงที่สร้างขึ้น
เริ่มการประชุม
เริ่มการประชุมโดยใช้บัญชีผู้ใช้เดียวกับที่ ใช้สร้างโทเค็น OAuth คัดลอกรหัสการประชุม ตอนนี้คุณพร้อมที่จะเรียกใช้ตัวอย่างแล้ว
ตัวอย่างแอป
ที่เก็บ GitHub repository มี ตัวอย่างสำหรับการรับสื่อและข้อมูลเมตาของผู้เข้าร่วมจากการประชุม
ตัวอย่างเหล่านี้จะรวบรวมข้อมูลตามระยะเวลาที่ระบุ (ค่าเริ่มต้นคือ 3 วินาที) และเขียนข้อมูลที่รวบรวมไว้ลงในไฟล์
ไฟล์เสียงอยู่ในรูปแบบ PCM16 ไฟล์วิดีโออยู่ในรูปแบบ YUV420p คุณสามารถเล่นไฟล์เหล่านี้ได้โดยใช้ไลบรารี เช่น FFmpeg
เนื่องจากความละเอียดของวิดีโออาจเปลี่ยนแปลงระหว่างการประชุม ตัวอย่างจึงรวมความละเอียดไว้ในชื่อไฟล์วิดีโอ
ไฟล์ข้อมูลเมตาของผู้เข้าร่วมจะเป็นไฟล์ข้อความที่มนุษย์อ่านได้
ตัวอย่างสื่อของผู้ใช้รายเดียว
ตัวอย่างสื่อของผู้ใช้รายเดียวเป็นแอปพื้นฐานที่เน้นการรวบรวมเสียงและวิดีโอ ตัวอย่างนี้ไม่ได้ระบุว่าผู้เข้าร่วมคนใดเป็นผู้สร้างข้อมูลเสียงและวิดีโอ ดังนั้น การใช้ตัวอย่างนี้ในการประชุมที่มีผู้เข้าร่วมมากกว่า 1 คนอาจทำให้เอาต์พุตเสียหาย
หากต้องการเรียกใช้ตัวอย่างสื่อของผู้ใช้รายเดียว ให้เรียกใช้คำสั่งต่อไปนี้
Linux
$ sh ./run_multi.sh -- \
--meeting_space_id MEETING_SPACE_ID \
--oauth_token OAUTH_TOKEN
โดยค่าเริ่มต้น ระบบจะบันทึกไฟล์เสียงเดียวไว้ที่ /tmp/test_output_audio.pcm
เนื่องจากสตรีมวิดีโออาจมีความละเอียดเปลี่ยนแปลงระหว่างการประชุม ระบบจึงอาจสร้างไฟล์วิดีโอหลายไฟล์ ชื่อไฟล์วิดีโอจะมีตัวนับที่เพิ่มขึ้นและความละเอียดของไฟล์นั้นๆ ตัวอย่างเช่น หากความละเอียดของสตรีมวิดีโอเปลี่ยนจาก 320x180 เป็น 240x135 แล้วกลับมาเป็น 320x180 ระบบจะสร้างไฟล์วิดีโอต่อไปนี้
/tmp/test_output_video_0_320x180.pcm/tmp/test_output_video_1_240x135.pcm/tmp/test_output_video_2_320x180.pcm
(ไม่บังคับ) ใช้ FFmpeg เพื่อเล่นไฟล์เอาต์พุตใน Linux และ Mac
FFmpeg สามารถใช้เพื่อเล่นไฟล์เสียงและวิดีโอที่สร้างขึ้นได้ ตัวอย่างคำสั่ง
Linux และ Mac
# Audio
$ ffplay -f s16le -ar 48k -af aformat=channel_layouts=mono \
/tmp/test_output_audio.pcm
# Video
#
# `video_size` must match the resolution in the video filename (320x180 in
# this example).
$ ffplay -f rawvideo -pixel_format yuv420p -video_size 320x180 \
/tmp/test_output_video_0_320x180.yuv
ตัวเลือก
คุณสามารถระบุตัวเลือกต่อไปนี้เมื่อเรียกใช้ตัวอย่าง
| ตัวเลือก | คำอธิบาย |
|---|---|
--output_file_prefix PREFIX |
ระบุคำนำหน้าสำหรับไฟล์เอาต์พุต ค่าเริ่มต้นคือ /tmp_test_output_ |
--collection_duration DURATION |
ระบุระยะเวลาที่จะรวบรวมสื่อ ค่าเริ่มต้นคือ 30s |
--join_timeout TIMEOUT |
ระบุระยะเวลารอให้แอปเข้าร่วมการประชุม ค่าเริ่มต้นคือ 2m |
--meet_api_url URL |
ระบุ URL สำหรับ Meet Media API ค่าเริ่มต้นคือ https://meet.googleapis.com/v2alpha/ |