ข้อความการเล่นสื่อ

แอปพลิเคชันผู้ส่ง Google Cast จะควบคุมการเล่นในอุปกรณ์ของผู้รับโดยการส่งข้อความในรูปแบบ JSON ไปยังแอปพลิเคชันของผู้รับ ในทํานองเดียวกัน ผู้รับก็จะส่งข้อความกลับไปยังผู้ส่งด้วยใน JSON ข้อความอาจเป็นคําสั่งจากผู้ส่งที่เปลี่ยนสถานะโปรแกรมเล่น การตอบกลับคําสั่งเหล่านั้นจากผู้รับ หรือโครงสร้างข้อมูลที่อธิบายสื่อสําหรับแอปพลิเคชันของผู้รับ

ตามข้อกําหนดในการให้บริการเพิ่มเติมสําหรับนักพัฒนาซอฟต์แวร์ Google Cast SDK แอปพลิเคชันสื่อแคสต์จะต้องใช้ข้อความเหล่านี้ที่ระบุไว้ที่นี่เพื่อควบคุมการเล่นสื่อบนตัวรับ ซึ่งจะช่วยให้ผู้ใช้สื่อได้รับประสบการณ์ของผู้ใช้ที่สอดคล้องกันในแพลตฟอร์มต่างๆ และดูแลให้แอปพลิเคชัน Cast รองรับกรณีการใช้งานใหม่ๆ และในอนาคต และโครงสร้างเหล่านี้ยังรองรับข้อมูลที่กําหนดเองในกรณีที่เหมาะสม และแอปพลิเคชันอาจกําหนดข้อความของตัวเองสําหรับคําสั่งที่ SDK ไม่รองรับ

เนมสเปซสําหรับข้อความเล่นสื่อจะกําหนดเป็น urn:x-cast:com.google.cast.media

หมายเหตุ: ข้อความและโครงสร้างในข้อกําหนดนี้จะมีขนาดสูงสุดโดยนัยซึ่งกําหนดโดยขนาดสูงสุดของข้อความขนส่ง ไม่มีขีดจํากัดสําหรับแต่ละช่อง ขนาดสูงสุดของข้อความขนส่งคือ 64 KByt

โครงสร้างข้อมูลเนมสเปซที่พบบ่อย

ชุดย่อยของโครงสร้างข้อมูลที่ใช้โดยอาร์ติแฟกต์เนมสเปซทั้งหมดของสื่อที่กําหนดไว้ในเนมสเปซทั่วไป

รูปภาพ

นี่คือคําอธิบายรูปภาพ ซึ่งรวมถึงข้อมูลเมตาปริมาณเล็กน้อยเพื่อให้แอปพลิเคชันผู้ส่งเลือกรูปภาพได้ ทั้งนี้ขึ้นอยู่กับวิธีการแสดงผล

ความสูงและความกว้างเป็นตัวเลือกที่ไม่บังคับสําหรับสินค้าเพียงรายการเดียวในอาร์เรย์รูปภาพ เช่น หากมีการคืนสินค้า 1 รายการ ก็ไม่จําเป็นต้องระบุ หากมีสินค้า 2 รายการที่แสดง โดยรายการหนึ่งต้องระบุความสูงและความกว้าง แต่ผู้ส่งอาจเลือกใช้ตัวเลือก "ค่าเริ่มต้น" ก็ได้หากไม่ชอบอีกรายการที่ส่งมาด้วยพารามิเตอร์ที่เฉพาะเจาะจง

ชื่อ ประเภท คำอธิบาย
URL URI URI สําหรับรูปภาพ
ความสูง จำนวนเต็ม ไม่บังคับเกี่ยวกับความสูงของรูปภาพ
กว้าง จำนวนเต็ม ไม่บังคับสําหรับความกว้างของรูปภาพ

ระดับเสียง

ระดับเสียงของสตรีมสื่อ ใช้สําหรับเอฟเฟกต์แบบเฟดเข้า/เฟดออกในสตรีมสื่อ (หมายเหตุ: ระดับเสียงของระบบ จะเปลี่ยนไปโดยใช้ API ผู้ส่ง) ต้องไม่ใช้ร่วมกับสตรีมระดับเสียงร่วมกับแถบเลื่อนระดับเสียงหรือปุ่มปรับระดับเสียงเพื่อควบคุมระดับเสียงของอุปกรณ์ ต้องส่งผ่านพารามิเตอร์ต่อไปนี้อย่างน้อย 1 รายการเพื่อเปลี่ยนระดับเสียงของสตรีม

ชื่อ ประเภท คำอธิบาย
ระดับ คู่ ไม่บังคับระดับเสียงของสตรีมปัจจุบันเป็นค่าระหว่าง 0.0 ถึง 1.0 โดยที่ 1.0 เป็นระดับเสียงสูงสุด
ปิดเสียง บูลีน ไม่บังคับ ไม่ว่าจะปิดเสียงอุปกรณ์แคสต์หรือไม่ก็ตาม โดยไม่ขึ้นอยู่กับระดับเสียง

โครงสร้างข้อมูลเนมสเปซสื่อ

ข้อความเหล่านี้จะอธิบายสถานะของโปรแกรมเล่นสื่อ เนมสเปซคือ urn:x-cast:com.google.cast.media

ข้อมูลสื่อ

โครงสร้างข้อมูลนี้อธิบายสตรีมสื่อ

ชื่อ ประเภท คำอธิบาย
รหัสเนื้อหา สตริง ตัวระบุเฉพาะบริการของเนื้อหาที่โหลดโดยโปรแกรมเล่นสื่อในปัจจุบัน นี่คือสตริงรูปแบบอิสระและมีไว้สําหรับแอปพลิเคชันเท่านั้น ในกรณีส่วนใหญ่ การดําเนินการนี้จะเป็น URL ของสื่อ แต่ผู้ส่งสามารถเลือกส่งสตริงที่ผู้รับจะตีความได้อย่างถูกต้อง ความยาวสูงสุด: 1k
ประเภทสตรีม enum
(สตริง)

อธิบายประเภทของอาร์ติแฟกต์สื่อเป็นอย่างใดอย่างหนึ่งต่อไปนี้

  • ไม่มี
  • บัฟเฟอร์
  • สด
ประเภทเนื้อหา สตริง ประเภทเนื้อหา MIME ของสื่อที่เล่น
ข้อมูลเมตา ออบเจ็กต์

ไม่บังคับ ออบเจ็กต์ข้อมูลเมตาของสื่อ ซึ่งเป็นไปตามข้อใดข้อหนึ่งต่อไปนี้

ระยะเวลา คู่ ไม่บังคับระยะเวลาของสตรีมที่เล่นอยู่เป็นวินาที
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันของผู้ส่งหรือแอปพลิเคชันผู้รับ

ข้อมูลเมตาของสื่อทั่วไป

อธิบายอาร์ติแฟกต์สื่อทั่วไป

ชื่อ ประเภท คำอธิบาย
ประเภทข้อมูลเมตา จำนวนเต็ม 0  (ค่าเดียว)
ชื่อ สตริง ไม่บังคับ คือชื่อที่สื่อความหมายของเนื้อหา โปรแกรมเล่นสามารถดึงชื่อได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
คําบรรยาย สตริง ไม่บังคับคือชื่อรองที่สื่อความหมายของเนื้อหา โปรแกรมเล่นสามารถดึงชื่อได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
รูปภาพ รูปภาพ[] ไม่บังคับ อาร์เรย์ของ URL ไปยังรูปภาพที่เชื่อมโยงกับเนื้อหา โดยค่าเริ่มต้น ผู้ส่งระบุข้อความเริ่มต้นในช่องในข้อความโหลดได้ ควรระบุขนาดที่แนะนํา
วันที่วางจําหน่าย สตริง (ISO 8601) ไม่บังคับวันที่และเวลาเผยแพร่เนื้อหา ISO 8601 โปรแกรมเล่นสามารถดึงชื่อได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด

ข้อมูลเมตาของภาพยนตร์

อธิบายอาร์ติแฟกต์สื่อภาพยนตร์

ชื่อ ประเภท คำอธิบาย
ประเภทข้อมูลเมตา จำนวนเต็ม 1  (ค่าเดียว)
ชื่อ สตริง ไม่บังคับ คือชื่อที่สื่อความหมายของเนื้อหา โปรแกรมเล่นสามารถดึงชื่อได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
คําบรรยาย สตริง ไม่บังคับคือชื่อรองที่สื่อความหมายของเนื้อหา โปรแกรมเล่นสามารถดึงชื่อได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
สตูดิโอ สตริง ไม่บังคับสําหรับสตูดิโอที่เผยแพร่เนื้อหา โปรแกรมเล่นสามารถเรียก Studio ได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุในข้อความโหลด
รูปภาพ รูปภาพ[] ไม่บังคับ อาร์เรย์ของ URL ไปยังรูปภาพที่เชื่อมโยงกับเนื้อหา โดยค่าเริ่มต้น ผู้ส่งระบุข้อความเริ่มต้นในช่องในข้อความโหลดได้ ควรระบุขนาดที่แนะนํา
วันที่วางจําหน่าย สตริง (ISO 8601) ไม่บังคับวันที่และเวลาเผยแพร่เนื้อหา ISO 8601 โปรแกรมเล่นสามารถดึงชื่อได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด

TvShowMediaMetadata

อธิบายอาร์ติแฟกต์สื่อของตอนของรายการทีวี

ชื่อ ประเภท คำอธิบาย
ประเภทข้อมูลเมตา จำนวนเต็ม 2 (ค่าเดียว)
ชื่อชุดหนังสือ สตริง ไม่บังคับ ชื่อที่สื่อความหมายของซีรีส์ทีวี โปรแกรมเล่นสามารถดึงชื่อได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
คําบรรยาย สตริง ไม่บังคับคือคําบรรยายที่สื่อความหมายของตอนของรายการทีวี โปรแกรมเล่นสามารถดึงชื่อได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
ซีซัน จำนวนเต็ม ไม่บังคับหมายเลขซีซันของรายการรายการทีวี
ตอน จำนวนเต็ม ไม่บังคับ หมายเลขตอน (ในซีซัน) ของรายการทีวี
รูปภาพ รูปภาพ[] ไม่บังคับ อาร์เรย์ของ URL ไปยังรูปภาพที่เชื่อมโยงกับเนื้อหา โดยค่าเริ่มต้น ผู้ส่งระบุข้อความเริ่มต้นในช่องในข้อความโหลดได้ ควรระบุขนาดที่แนะนํา
originalAirDate สตริง (ISO 8601) ไม่บังคับวันที่และเวลาเผยแพร่ ISO 8601 ในขณะนี้ โปรแกรมเล่นสามารถเรียกข้อมูลOriginalAirDate ได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งจะระบุไว้ในข้อความโหลด

ข้อมูลเมตาของสื่อแทร็กเพลง

อธิบายอาร์ติแฟกต์สื่อของแทร็กเพลง

ชื่อ ประเภท คำอธิบาย
ประเภทข้อมูลเมตา จำนวนเต็ม 3  (ค่าเดียว)
ชื่ออัลบั้ม สตริง ไม่บังคับ อัลบั้มหรือคอลเล็กชันที่วาดแทร็กนี้ โปรแกรมเล่นสามารถเรียกข้อมูล calendarName โดยใช้ content_id ได้อย่างอิสระ หรือผู้ส่งจะระบุไว้ในข้อความโหลดก็ได้
ชื่อ สตริง ไม่บังคับชื่อแทร็ก (เช่น ชื่อเพลง) โปรแกรมเล่นสามารถดึงชื่อได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
อัลบั้มศิลปิน สตริง ไม่บังคับชื่อศิลปินที่เชื่อมโยงกับอัลบั้มที่มีแทร็กนี้ โปรแกรมเล่นสามารถเรียกข้อมูลอัลบั้มศิลปินอย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจส่งข้อความในข้อความโหลด
ศิลปิน สตริง ไม่บังคับชื่อศิลปินที่เชื่อมโยงกับแทร็กสื่อ โปรแกรมเล่นสามารถดึงข้อมูลศิลปินได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
องค์ประกอบ สตริง ไม่บังคับ ชื่อของนักแต่งเพลงที่เชื่อมโยงกับแทร็กสื่อ โปรแกรมเล่นสามารถเรียกข้อมูลผู้ประพันธ์เพลงได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
หมายเลขแทร็ก จำนวนเต็ม ไม่บังคับ จํานวนแทร็กในอัลบั้ม
หมายเลขดิสก์ จำนวนเต็ม ไม่บังคับ จํานวนระดับเสียง (เช่น ดิสก์) ของอัลบั้ม
รูปภาพ รูปภาพ[] ไม่บังคับ อาร์เรย์ของ URL ไปยังรูปภาพที่เชื่อมโยงกับเนื้อหา โดยค่าเริ่มต้น ผู้ส่งระบุข้อความเริ่มต้นในช่องในข้อความโหลดได้ ควรระบุขนาดที่แนะนํา
วันที่วางจําหน่าย สตริง (ISO 8601) ไม่บังคับวันที่และเวลาเผยแพร่เนื้อหา ISO 8601 โปรแกรมเล่นสามารถเรียกข้อมูล relDate ได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด

ข้อมูลเมตาของรูปภาพ

อธิบายอาร์ติแฟกต์สื่อรูปภาพ

ชื่อ ประเภท คำอธิบาย
ประเภทข้อมูลเมตา จำนวนเต็ม 4  (ค่าเดียว)
ชื่อ สตริง ไม่บังคับเกี่ยวกับชื่อของรูปภาพ โปรแกรมเล่นสามารถดึงชื่อได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
ศิลปิน สตริง ไม่บังคับ ชื่อของช่างภาพ โปรแกรมเล่นสามารถดึงข้อมูลศิลปินได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
สถานที่ตั้ง สตริง ไม่บังคับเป็นสถานที่ที่ใช้ถ่ายภาพที่ถ่าย เช่น "มาดริด สเปน" โปรแกรมเล่นสามารถดึงตําแหน่งได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
latitude คู่ ไม่บังคับ: ค่าละติจูดทางภูมิศาสตร์ของสถานที่ที่ถ่ายภาพ โปรแกรมเล่นสามารถเรียกข้อมูลละติจูดได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
longitude คู่ ไม่บังคับค่าลองจิจูดทางภูมิศาสตร์สําหรับสถานที่ถ่ายภาพ โปรแกรมเล่นสามารถเรียกข้อมูลลองจิจูดโดยใช้ content_id หรือส่งจากผู้ส่งในข้อความโหลด
กว้าง จำนวนเต็ม ไม่บังคับ ความกว้างของพิกเซลของรูปภาพ โปรแกรมเล่นสามารถดึงความกว้างได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความ Load
ความสูง จำนวนเต็ม ไม่บังคับความสูงของความสูงในรูปภาพ โปรแกรมเล่นสามารถดึงความสูงได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด
วันที่สร้าง สตริง (ISO 8601) ไม่บังคับวันที่และเวลาถ่าย ISO 8601 โปรแกรมเล่นสามารถเรียกข้อมูล CreateDateTime ได้อย่างอิสระโดยใช้ content_id หรือผู้ส่งอาจระบุไว้ในข้อความโหลด

สถานะสื่อ

อธิบายสถานะปัจจุบันของอาร์ติแฟกต์สื่อที่เกี่ยวข้องกับเซสชัน

ชื่อ ประเภท คำอธิบาย
รหัสเซสชันสื่อ จำนวนเต็ม รหัสที่ไม่ซ้ํากันสําหรับการเล่นของเซสชันนี้ รหัสนี้กําหนดโดยผู้รับที่ LOAD และใช้เพื่อระบุอินสแตนซ์ที่เฉพาะเจาะจงของการเล่นได้ เช่น การเล่น "ขออยู่ที่นี่" 2 ครั้งภายในเซสชันเดียวกัน แต่ละสื่อจะมี MediaSessionId ไม่ซ้ํากัน
สื่อ ข้อมูลสื่อ ไม่บังคับ (สําหรับข้อความสถานะ) คําอธิบายแบบเต็มของเนื้อหาที่กําลังเล่น จะแสดงผลในข้อความสถานะก็ต่อเมื่อ MediaMedia มีการเปลี่ยนแปลงเท่านั้น
playbackRate จำนวนลอยตัว ระบุว่าเวลาสื่อมีความคืบหน้าหรือไม่และมีอัตราใด โดยไม่คํานึงถึงสถานะผู้เล่น เนื่องจากเวลาของสื่ออาจหยุดได้ทุกเมื่อ 1.0 เป็นเวลาปกติ 0.5 เป็นสโลว์โมชัน
สถานะรัฐ enum (สตริง)

อธิบายสถานะของโปรแกรมเล่นวิดีโออย่างใดอย่างหนึ่งต่อไปนี้

  • IDE ยังไม่ได้โหลดโปรแกรมเล่น
  • กําลังเล่น โปรแกรมเล่นกําลังเล่นเนื้อหาอยู่
  • การบัฟเฟอร์ โปรแกรมเล่นอยู่ในโหมด PLAY แต่ไม่ได้เล่นเนื้อหาอย่างสม่ําเสมอ (เวลาปัจจุบันไม่มีการเปลี่ยนแปลง)
  • หยุดชั่วคราว โปรแกรมเล่นหยุดชั่วคราว
idleReason enum (สตริง)

ไม่บังคับ หาก PlayerState เป็น IDLE และทราบเหตุผลที่ระบุ IDLE ระบบจะระบุพร็อพเพอร์ตี้นี้ หากเครื่องเล่นไม่ทํางานเนื่องจากเพิ่งเริ่มต้น จะไม่มีการให้พร็อพเพอร์ตี้นี้หากโปรแกรมเล่นอยู่ในสถานะอื่นๆ ไม่ควรระบุพร็อพเพอร์ตี้นี้ ค่าที่ใช้ได้มีดังนี้

  • ยกเลิก: ผู้ส่งขอให้หยุดเล่นโดยใช้คําสั่ง STOP
  • แทรกอยู่ ผู้ส่งส่งคําขอเล่นสื่ออื่นโดยใช้คําสั่ง "โหลด"
  • เสร็จสิ้น การเล่นสื่อเสร็จสมบูรณ์แล้ว
  • ข้อผิดพลาด สื่อถูกขัดจังหวะเนื่องจากเกิดข้อผิดพลาด เช่น หากโปรแกรมเล่นดาวน์โหลดสื่อไม่ได้เนื่องจากเครือข่ายมีปัญหา
เวลาปัจจุบัน คู่ ตําแหน่งปัจจุบันของโปรแกรมเล่นสื่อตั้งแต่เริ่มต้นเนื้อหาเป็นวินาที หากเป็นเนื้อหาสตรีมแบบสด ช่องนี้จะแสดงเวลาเป็นวินาทีนับจากจุดเริ่มต้นของเหตุการณ์ที่ผู้เล่นควรรู้จัก
supportedMediaCommands Flag

แฟล็กที่อธิบายถึงคําสั่งสื่อที่โปรแกรมเล่นสื่อรองรับมีดังนี้

  • 1 หยุดชั่วคราว
  • 2 กรอวิดีโอ
  • 4 ระดับเสียงสตรีม
  • 8 ปิดเสียงสตรีม
  • 16 ข้ามไปข้างหน้า
  • 32 ข้ามไปข้างหลัง

ชุดค่าผสมนี้รวมกันเป็นผลรวม เช่น หยุดชั่วคราว+กรอ+สตรีมระดับเสียง +ปิดเสียง == 15

ปริมาณ ระดับเสียง ปริมาณสตรีม
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันของผู้รับ

คําสั่งจากผู้ส่งไปยังผู้รับ

คําสั่งเหล่านี้จะควบคุมโปรแกรมเล่นสื่อ ออบเจ็กต์ customData ทั้งหมดในข้อความด้านล่างต้องเป็นตัวเลือก (กล่าวคือ ตัวรับควรลดระดับลงอย่างถูกต้องหากไม่ได้ส่งข้อมูล) ซึ่งจะทําให้แอปรีโมตคอนโทรลทั่วไปทํางานได้อย่างถูกต้อง

โหลด

โหลดเนื้อหาใหม่ลงในโปรแกรมเล่นสื่อ

ชื่อ ประเภท คำอธิบาย
รหัสคําขอ จำนวนเต็ม รหัสของคําขอเพื่อเชื่อมโยงคําขอและการตอบกลับ
ประเภท สตริง LOAD (ค่าเท่านั้น)
สื่อ ข้อมูลสื่อ ข้อมูลเมตา (รวมถึง contentId) ของสื่อที่จะโหลด
เล่นอัตโนมัติ บูลีน

ไม่บังคับ (ค่าเริ่มต้นเป็นจริง) หากระบุพารามิเตอร์การเล่นอัตโนมัติ โปรแกรมเล่นสื่อจะเริ่มเล่นเนื้อหาเมื่อโหลดเนื้อหาแล้ว แม้ว่าจะไม่ได้ระบุการเล่นอัตโนมัติ แต่การใช้งานโปรแกรมเล่นสื่ออาจเลือกที่จะเริ่มเล่นทันที หากเริ่มเล่นแล้ว สถานะของโปรแกรมเล่นในการตอบสนองควรตั้งค่าเป็น "การบัฟเฟอร์" มิเช่นนั้น ให้ตั้งค่าเป็น "หยุดชั่วคราว"

เวลาปัจจุบัน คู่ ไม่บังคับ วินาทีนับจากเริ่มต้นเนื้อหา หากเนื้อหาเป็นเนื้อหาสดและไม่มีการระบุตําแหน่ง สตรีมจะเริ่มต้นขึ้นในตําแหน่งถ่ายทอดสด
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันผู้ส่ง
คำตอบ ทริกเกอร์ การออกอากาศ ข้อผิดพลาด
ไม่มี การเปลี่ยนสถานะผู้รับ ข้อความการเปลี่ยนสถานะสื่อ สถานะโปรแกรมเล่นไม่ถูกต้อง
โหลดไม่สําเร็จ
ยกเลิกการโหลดแล้ว

หยุดชั่วคราว

หยุดการเล่นเนื้อหาปัจจุบันชั่วคราว ทริกเกอร์การแจ้งเตือนเหตุการณ์ "สถานะ" ให้กับแอปพลิเคชันของผู้ส่งทั้งหมด

ชื่อ ประเภท คำอธิบาย
รหัสเซสชันสื่อ จำนวนเต็ม รหัสของเซสชันสื่อที่จะหยุดชั่วคราว
รหัสคําขอ จำนวนเต็ม รหัสของคําขอ ซึ่งใช้เพื่อเชื่อมโยงคําขอ/การตอบกลับ
ประเภท สตริง หยุดชั่วคราว (ค่าเท่านั้น)
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันผู้ส่ง
คำตอบ ทริกเกอร์ การออกอากาศ ข้อผิดพลาด
ไม่มี การเปลี่ยนสถานะผู้รับ ข้อความการเปลี่ยนสถานะสื่อ สถานะโปรแกรมเล่นไม่ถูกต้อง

เรียกดู

กําหนดตําแหน่งปัจจุบันในสตรีม ทริกเกอร์การแจ้งเตือนเหตุการณ์ "สถานะ" ให้กับแอปพลิเคชันของผู้ส่งทั้งหมด หากตําแหน่งที่ระบุอยู่นอกช่วงของตําแหน่งที่ถูกต้องสําหรับเนื้อหาปัจจุบัน โปรแกรมเล่นควรเลือกตําแหน่งที่ถูกต้องให้ใกล้กับตําแหน่งที่ขอมากที่สุด

ชื่อ ประเภท คำอธิบาย
รหัสเซสชันสื่อ จำนวนเต็ม รหัสของเซสชันสื่อที่ตั้งค่าตําแหน่งของสตรีม
รหัสคําขอ จำนวนเต็ม รหัสของคําขอเพื่อเชื่อมโยงคําขอและการตอบกลับ
ประเภท สตริง SeeK (ค่าเท่านั้น)
resumeState enum (สตริง)

ไม่บังคับ หากไม่ได้ตั้งค่านี้ สถานะการเล่นจะไม่เปลี่ยนแปลง ระบบจะใช้ค่าต่อไปนี้

  • PLAYBACK_START บังคับให้สื่อเริ่มต้น
  • PLAYBACK_PAUSE บังคับให้สื่อหยุดชั่วคราว
เวลาปัจจุบัน คู่ ไม่บังคับ วินาทีนับจากเริ่มต้นเนื้อหา หากเนื้อหาเป็นเนื้อหาสดและไม่มีการระบุตําแหน่ง สตรีมจะเริ่มต้นขึ้นในตําแหน่งถ่ายทอดสด
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันผู้ส่ง
คำตอบ ทริกเกอร์ การออกอากาศ ข้อผิดพลาด
ไม่มี การเปลี่ยนสถานะผู้รับ ข้อความการเปลี่ยนสถานะสื่อ สถานะโปรแกรมเล่นไม่ถูกต้อง

หยุด

หยุดการเล่นเนื้อหาปัจจุบัน ทริกเกอร์การแจ้งเตือนเหตุการณ์ "สถานะ" ให้กับแอปพลิเคชันของผู้ส่งทั้งหมด หลังจากคําสั่งนี้ เนื้อหาจะไม่โหลดอีกต่อไปและ MediaSessionId เป็นโมฆะ

ชื่อ ประเภท คำอธิบาย
รหัสเซสชันสื่อ จำนวนเต็ม รหัสของเซสชันสื่อที่จะหยุดเนื้อหา
รหัสคําขอ จำนวนเต็ม รหัสของคําขอเพื่อเชื่อมโยงคําขอและการตอบกลับ
ประเภท สตริง STOP (ค่าเท่านั้น)
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันผู้ส่ง
คำตอบ ทริกเกอร์ การออกอากาศ ข้อผิดพลาด
ไม่มี การเปลี่ยนสถานะผู้รับ ข้อความการเปลี่ยนสถานะสื่อ สถานะโปรแกรมเล่นไม่ถูกต้อง

เล่น

เริ่มเล่นเนื้อหาที่โหลดโดยใช้การโหลด การเล่นจะดําเนินต่อไปจากตําแหน่งเวลาปัจจุบัน

ชื่อ ประเภท คำอธิบาย
รหัสเซสชันสื่อ จำนวนเต็ม รหัสของเซสชันสื่อสําหรับการเล่นเนื้อหา
รหัสคําขอ จำนวนเต็ม รหัสของคําขอเพื่อเชื่อมโยงคําขอและการตอบกลับ
ประเภท สตริง PLAY (ค่าเท่านั้น)
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันผู้ส่ง
คำตอบ ทริกเกอร์ การออกอากาศ ข้อผิดพลาด
ไม่มี การเปลี่ยนสถานะผู้รับ ข้อความการเปลี่ยนสถานะสื่อ สถานะโปรแกรมเล่นไม่ถูกต้อง

รับสถานะ

เรียกดูสถานะสื่อ

ชื่อ ประเภท คำอธิบาย
รหัสเซสชันสื่อ จำนวนเต็ม ไม่บังคับ รหัสเซสชันสื่อของสื่อที่ควรแสดงสถานะสื่อ หากไม่ได้ระบุก็จะระบุสถานะของรหัสเซสชันสื่อทั้งหมด
รหัสคําขอ จำนวนเต็ม รหัสของคําขอเพื่อเชื่อมโยงคําขอและการตอบกลับ
ประเภท สตริง GET_STATUS (ค่าเท่านั้น)
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันผู้ส่ง
คำตอบ ทริกเกอร์ การออกอากาศ ข้อผิดพลาด
ข้อความ MediaStatus ถึงผู้ส่งที่ขอ ไม่มี ไม่มี ไม่มี

ตั้งระดับเสียง

ตั้งค่าระดับเสียงของสตรีมสื่อ ใช้สําหรับเอฟเฟกต์แบบเฟดเข้า/เฟดออกในสตรีมสื่อ (หมายเหตุ: ปริมาณผู้รับจะเปลี่ยนโดยใช้ setVolume ของผู้ส่งเว็บ) ระดับเสียงของสตรีมต้องไม่ใช้ร่วมกับแถบเลื่อนระดับเสียงหรือปุ่มปรับระดับเสียงเพื่อควบคุมระดับเสียงของอุปกรณ์ การเปลี่ยนแปลงระดับเสียงของสตรีมจะไม่ทริกเกอร์ UI ใดๆ บนตัวรับ

ชื่อ ประเภท คำอธิบาย
รหัสเซสชันสื่อ จำนวนเต็ม รหัสเซสชันสื่อของสื่อที่มีการเปลี่ยนแปลงปริมาณสตรีม
รหัสคําขอ จำนวนเต็ม รหัสของคําขอเพื่อเชื่อมโยงคําขอและการตอบกลับ
ประเภท สตริง VOLUME (ค่าเท่านั้น)
ปริมาณ ระดับเสียง ปริมาณสตรีม
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันผู้ส่ง
คำตอบ ทริกเกอร์ การออกอากาศ ข้อผิดพลาด
ไม่มี การเปลี่ยนสถานะผู้รับ ข้อความการเปลี่ยนสถานะสื่อ สถานะโปรแกรมเล่นไม่ถูกต้อง

ข้อความจากผู้รับไปยังผู้ส่ง

ผู้รับจะส่งข้อความ 2 ประเภท ได้แก่

  • ข้อผิดพลาด: ข้อความ Unicast ที่ส่งเมื่อมีการตอบกลับข้อผิดพลาดเกี่ยวกับคําขอของผู้ส่ง
  • สถานะ: ประกาศข้อความ
    • ผลจากการดําเนินการที่เริ่มต้นโดยผู้ส่ง จะมี requestId ของคําขอที่ทําให้เกิดการเปลี่ยนแปลง
    • เกิดขึ้นเอง: ตัวอย่างเช่น การเปลี่ยนแปลงที่เกิดขึ้นโดยแอปพลิเคชันในฝั่งผู้รับ RequestId จะเป็น 0

ข้อผิดพลาด: สถานะผู้เล่นไม่ถูกต้อง

ส่งเมื่อดําเนินการตามคําขอของผู้ส่งไม่ได้เพราะโปรแกรมเล่นไม่อยู่ในสถานะที่ถูกต้อง เช่น หากแอปพลิเคชันยังไม่ได้สร้างองค์ประกอบสื่อ

ชื่อ ประเภท คำอธิบาย
รหัสคําขอ จำนวนเต็ม รหัสคําขอที่สร้างข้อผิดพลาดนี้
ประเภท สตริง invalid_TEAM_STATE (ค่าเท่านั้น)
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันของผู้รับ

ข้อผิดพลาด: โหลดไม่สําเร็จ

ส่งเมื่อคําขอโหลดไม่สําเร็จ สถานะของโปรแกรมเล่นจะเป็น "ไม่มีการใช้งาน"

ชื่อ ประเภท คำอธิบาย
รหัสคําขอ จำนวนเต็ม รหัสคําขอที่สร้างข้อผิดพลาดนี้
ประเภท สตริง LOAD_Failed (ค่าเท่านั้น)
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันของผู้รับ

ข้อผิดพลาด: ยกเลิกการโหลดแล้ว

ส่งเมื่อยกเลิกคําขอโหลดแล้ว (ได้รับคําขอโหลดครั้งที่ 2)

ชื่อ ประเภท คำอธิบาย
รหัสคําขอ จำนวนเต็ม รหัสคําขอที่สร้างข้อผิดพลาดนี้
ประเภท สตริง LOAD_CANCELLED (ค่าเท่านั้น)
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันของผู้รับ

ข้อผิดพลาด: คําขอไม่ถูกต้อง

ส่งเมื่อคําขอไม่ถูกต้อง (เช่น ประเภทคําขอที่ไม่รู้จัก)

ชื่อ ประเภท คำอธิบาย
รหัสคําขอ จำนวนเต็ม รหัสคําขอที่สร้างข้อผิดพลาดนี้
ประเภท สตริง invalid_REQUEST (ค่าเท่านั้น)
เหตุผล Enum (สตริง)

ค่า:

  • invalid_COMMAND ไม่รองรับคําสั่งนี้
  • DUPLICATE_REQUESTID รหัสคําขออาจซ้ํากันได้ (ผู้รับกําลังประมวลผลคําขอที่มีรหัสเดียวกัน)
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันของผู้รับ

สถานะสื่อ

ส่งหลังจากมีการเปลี่ยนแปลงสถานะหรือหลังจากส่งคําขอสถานะสื่อ ระบบจะส่งเฉพาะออบเจ็กต์ MediaStatus ที่มีการเปลี่ยนแปลงหรือขอเท่านั้น

ชื่อ ประเภท คำอธิบาย
รหัสคําขอ จำนวนเต็ม รหัสที่ใช้เพื่อเชื่อมโยงการตอบสนองต่อสถานะนี้กับคําขอที่สร้างขึ้นหรือเป็น 0 หากข้อความสถานะเกิดขึ้นเองทันที (ไม่ทริกเกอร์โดยคําขอของผู้ส่ง) แอปพลิเคชันของผู้ส่งจะสร้างรหัสคําขอที่ไม่ซ้ํากันโดยเลือกหมายเลขแบบสุ่มและเพิ่มหมายเลขอย่างต่อเนื่อง (ระบบจะไม่ใช้ 0)
ประเภท สตริง MEDIA_STATUS (ค่าเท่านั้น)
สถานะ สถานะสื่อ[] อาร์เรย์ของออบเจ็กต์สถานะสื่อ หมายเหตุ: ระบบจะแสดงองค์ประกอบสื่อใน MediaStatus เฉพาะในกรณีที่มีการเปลี่ยนแปลงเท่านั้น
ข้อมูลที่กําหนดเอง ออบเจ็กต์ ไม่บังคับ BLOB เฉพาะแอปพลิเคชันที่กําหนดโดยแอปพลิเคชันของผู้รับ