HLS ในการย้ายข้อมูล Shaka Player

ภาพรวม

SDK ตัวรับสัญญาณเว็บของ Cast รองรับการเล่นเนื้อหาโดยใช้โปรโตคอลการสตรีมเว็บหลายโปรโตคอล SDK จะโหลดโปรแกรมเล่นเพื่อจัดการการเล่นเนื้อหาตามโปรโตคอลที่ใช้ ในกรณีของเนื้อหา HLS ระบบจะโหลดไลบรารีโปรแกรมเล่นสื่อ (MPL) ในกรณีที่เป็นเนื้อหา DASH ระบบจะโหลด Shaka Player ขึ้นมา

ในอนาคต ทีมวิศวกรของ Cast SDK และทีม Shaka Player จะร่วมมือกันเพื่อเพิ่มการรองรับการเล่นเนื้อหา HLS บน Shaka Player MPL จะไม่ได้รับการอัปเดตที่สำคัญอีกต่อไป เราขอแนะนำให้เลือกใช้ Shaka Player สำหรับการเล่นเนื้อหา HLS ของแอปพลิเคชัน

สิทธิประโยชน์ของ Shaka Player

ในการเปลี่ยนโปรแกรมเล่น แอปพลิเคชันจะใช้ประโยชน์จากข้อดีต่อไปนี้

  • เซสชันสตรีมมิงที่มีประสิทธิภาพมากขึ้นสำหรับผู้ใช้ โดยมีการปรับปรุงด้านเวลาที่ใช้ในการโหลดและเวลาในการตอบสนอง
  • ใช้ฟีเจอร์ HLS ล่าสุดอย่างต่อเนื่อง
  • เพิ่มความชัดเจนในการวิเคราะห์สาเหตุที่แท้จริงสำหรับปัญหาความเข้ากันได้กับเนื้อหาของโปรแกรมเล่น เนื่องจาก Shaka Player เป็นโอเพนซอร์สของ Shaka Player
  • ฐานของโค้ดโปรแกรมเล่นแบบโอเพนซอร์สช่วยให้พาร์ทเนอร์ร่วมให้ข้อมูลแก่ Shaka Player Project ได้
  • ลดเวลาการแก้ไขข้อบกพร่องของฟีเจอร์และข้อบกพร่องได้อย่างมาก เนื่องจากรอบการเผยแพร่ของ Shaka Player ทำขึ้นบ่อยครั้งและไม่ได้ขึ้นอยู่กับการเผยแพร่ SDK ของ Web Receiver
  • ควบคุมสภาพแวดล้อมการเล่นได้มากขึ้นจาก shakaVersion API
  • เพิ่มการรองรับการเล่นจาก Google ด้วยทรัพยากรด้านวิศวกรรมที่เน้นการเล่น HLS บน Shaka Player ตามที่เห็นในแผนกลยุทธ์

ไทม์ไลน์

SDK ของเว็บรีซีฟเวอร์จะเปลี่ยนไปใช้ Shaka Player เป็นโปรแกรมเล่นเริ่มต้นสำหรับการเล่นเนื้อหา HLS โดยจะแบ่งเป็นช่วงๆ เพื่อแนะนำพาร์ทเนอร์ตลอดขั้นตอนการย้ายข้อมูล

ระยะ วันที่เริ่มต้น ภาพรวม
1 ต.ค. 2022 Cast Web Receiver SDK มี API ให้เลือกใช้เพื่อเล่นเนื้อหา HLS บน Shaka Player
2 ครึ่งปีหลังของปี 2024 SDK เว็บตัวรับสัญญาณของ Cast เปลี่ยนโปรแกรมเล่นเริ่มต้นเป็น Shaka Player สำหรับการเล่นเนื้อหา HLS

ทีมวิศวกรของ Web Receiver SDK ใช้แนวทางที่ขับเคลื่อนด้วยประสิทธิภาพและจะดำเนินการต่อในเฟสถัดไปเฉพาะเมื่อประสิทธิภาพของ Shaka Player เทียบเท่ากับประสิทธิภาพพื้นฐานของ MPL เราจะประกาศการเปลี่ยนแปลงเหล่านี้ใน cast-sdk-announcements google group และอัปเดตใน คู่มือนี้

เลือกใช้

ตั้งแต่ CAF เวอร์ชัน 3.0.0105 เป็นต้นไป จะมีการกำหนดค่าระดับแอปพลิเคชันเพื่อเลือกใช้ Shaka Player สำหรับการเล่น HLS นอกจากนี้ เวอร์ชันนี้ยังมี API ให้เลือกโหลด Shaka Player เวอร์ชันที่รองรับด้วย แฟล็กเหล่านี้จะมีในคลาส CastReceiverOptions ผ่านพร็อพเพอร์ตี้ useShakaForHls และ shakaVersion และจะได้รับการประเมินเมื่อเริ่มใช้ CastReceiverContext แอปพลิเคชันที่เลือกใช้ Shaka สำหรับ HLS ควรตั้งค่าเวอร์ชัน Shaka Player อย่างน้อย 4.3.4 เพื่อใช้ประโยชน์จากการปรับปรุง HLS ล่าสุด หากต้องการเลือกใช้ ให้ทำตามข้อมูลโค้ดด้านล่าง

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = true;

context.start(castReceiverOptions);

ตรวจสอบเนื้อหา

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

  • ประเภทสตรีม: สด หรือ VOD
  • รูปแบบคอนเทนเนอร์: TS, MP4 หรือสตรีมพื้นฐาน
  • เนื้อหาที่มีความไม่ต่อเนื่องหรือโฆษณาแบบฝัง
  • เล่นบนอุปกรณ์ประเภทต่างๆ ต่อไปนี้: จออัจฉริยะ, ดองเกิล Chromecast, อุปกรณ์ Android TV, ทีวีที่มี Chromecast Built-In, ลำโพงอัจฉริยะ

หากคุณพบข้อผิดพลาดหรือลักษณะการทำงานที่ไม่คาดคิด ให้รายงานข้อบกพร่อง เมื่อคุณตรวจสอบได้ว่าเนื้อหาไม่ได้เล่นล้มเหลวที่ร้ายแรงในเนื้อหาแล้ว ให้ส่งการเปลี่ยนแปลงไปยังสภาพแวดล้อมการใช้งานจริง

เลือกไม่ใช้

Web Receiver SDK จะเปลี่ยนไปเป็นโมเดลการเลือกไม่ใช้สำหรับการเล่นเนื้อหา Shaka Player HLS ตามไทม์ไลน์ พร็อพเพอร์ตี้ useShakaForHls จะเปลี่ยนค่าเริ่มต้นจาก false เป็น true เมื่อถึงเวลานั้น แอปพลิเคชันจะเลือกใช้ MPL สำหรับการเล่น HLS ได้ด้วยการตั้งค่าพร็อพเพอร์ตี้นี้เป็น false ด้วยตนเอง เมื่อ CastReceiverContext เริ่มทำงาน SDK ของ Web Receiver จะเปลี่ยนกลับไปเป็นการโหลด MPL แทน Shaka Player ดูตัวอย่างวิธีเลือกไม่ใช้ได้ที่ด้านล่างนี้

const context = cast.framework.CastReceiverContext.getInstance();

let castReceiverOptions = new cast.framework.CastReceiverOptions();
castReceiverOptions.useShakaForHls = false;

context.start(castReceiverOptions);

รายงานปัญหา

เราขอแนะนำให้พาร์ทเนอร์รายงานปัญหาที่พบเมื่อเล่นเนื้อหา HLS ดังที่ได้กล่าวไว้ก่อนหน้านี้ MPL จะไม่ได้รับการอัปเดตที่สำคัญอีกต่อไป หากพบปัญหากับ MPL ให้ทำตามขั้นตอนในส่วนเลือกใช้ของคำแนะนำเพื่อตรวจสอบว่าการเปลี่ยนไปใช้ Shaka Player จะเลิกบล็อกปัญหาของคุณหรือไม่ ทำตามขั้นตอนด้านล่างหากยังคงพบปัญหาอยู่หรือพบปัญหาอื่นเมื่อเปลี่ยนผู้เล่น

  1. ลองตั้งค่า shakaVersion เป็น Branch เวอร์ชันอื่นเพื่อแก้ปัญหา ตัวอย่างเช่น หากพบปัญหาในสาขา 4.3 ให้ลองตั้งค่าเป็นรุ่นล่าสุดในเวอร์ชัน 4.2.x หรือ 3.3.x ตรวจสอบบันทึกประจำรุ่น Shaka Player เพื่อค้นหารายการที่มีการอัปเดตที่เกี่ยวข้องมากที่สุด โปรดทราบว่า shakaVersion API มีเวอร์ชันต่ำสุดและสูงสุดที่รองรับตามที่อธิบายไว้ในเอกสารอ้างอิง หากคุณพบว่ามีการถดถอย ให้รายงานปัญหาในเครื่องมือติดตามปัญหาของ Shaka Player
  2. ลองเปลี่ยนพารามิเตอร์การกำหนดค่าโปรแกรมเล่น Shaka Player กำหนดค่าได้ผ่านออบเจ็กต์ PlayerConfiguration SDK ของ WebReceiver จะกำหนดชุดค่าเริ่มต้นและเปิดใช้แอปพลิเคชันเพื่อแก้ไขการกำหนดค่านี้ผ่านพร็อพเพอร์ตี้ shakaConfig ในออบเจ็กต์ PlaybackConfig ระบบจะประเมินผลการโหลดเมื่อสร้างอินสแตนซ์โปรแกรมเล่น ดูข้อมูลเพิ่มเติมใน

    การกำหนดค่าแอปพลิเคชันและตัวเลือก ค่าเริ่มต้นที่ SDK เว็บรีซีฟเวอร์กำหนดคือค่าที่แนะนำ

  3. ดูว่ามีการรายงานปัญหาในเครื่องมือติดตามปัญหาเกี่ยวกับ Shaka Player หรือเครื่องมือติดตามปัญหา Cast แสดงความคิดเห็นเกี่ยวกับข้อบกพร่องและเพิ่มข้อมูลที่เกี่ยวข้อง หากคำอธิบายดังกล่าวอธิบายถึงปัญหาของคุณ

  4. ทดสอบเนื้อหาของคุณในเว็บไซต์สาธิต Shaka Player หากพบว่าปัญหาเกิดขึ้นซ้ำในเว็บไซต์สาธิตสำหรับเนื้อหาของคุณ ให้รายงานข้อบกพร่องด้วยโปรเจ็กต์ Shaka Player

  5. รายงานข้อบกพร่องในเครื่องมือติดตามปัญหาการแคสต์หากพบปัญหาเฉพาะกับ Shaka Player บนอุปกรณ์ปลายทางการแคสต์

คำถามที่พบบ่อย

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

ฉันควรย้ายข้อมูลไปยัง Shaka Player ไหม

เราขอแนะนำให้พาร์ทเนอร์ที่ใช้เนื้อหา HLS เริ่มขั้นตอนการย้ายข้อมูลโดยเร็วที่สุด ด้วยเหตุนี้ แอปของคุณจะมอบประสบการณ์การสตรีมที่มีประสิทธิภาพมากขึ้นให้แก่ผู้ใช้ ดูสิทธิประโยชน์เพิ่มเติมได้ในส่วนสิทธิประโยชน์ของ Shaka Player ของคู่มือนี้ พาร์ทเนอร์ควรตรวจสอบว่าแอปทำงานอย่างถูกต้องโดยใช้ Shaka Player เพื่อให้การเปลี่ยนเป็นไปอย่างราบรื่น แอปบางแอปอาจมีความเสี่ยงต่อเมื่อ SDK เว็บรีซีฟเวอร์เป็นโมเดลการเลือกไม่ใช้ หากพาร์ทเนอร์ไม่ยืนยันว่าเนื้อหาของตนเล่นอย่างถูกต้องบน Shaka Player ล่วงหน้า

คาดหวังว่าจะใช้ความพยายามในระดับใดเมื่อเปลี่ยนผู้เล่น

พาร์ทเนอร์จะต้องทดสอบแอปพลิเคชันและเนื้อหาในสภาพแวดล้อมการทดสอบเพื่อให้มั่นใจว่าประสบการณ์ของผู้ใช้นั้นคล้ายกันหรือดีขึ้นเมื่อเทียบกับ HLS โดยพาร์ทเนอร์จะต้องเลือกใช้ฟีเจอร์นี้ในสภาพแวดล้อมภายในและทดสอบอย่างละเอียดว่าเนื้อหาของตนเล่นโดยใช้ Shaka Player ได้ ดูรายละเอียดว่าควรมุ่งเน้นด้านใดของเนื้อหาในการตรวจสอบเนื้อหา เมื่อตรวจสอบแล้ว พาร์ทเนอร์จะต้องเพิ่มธงให้เลือกเข้าร่วมในสภาพแวดล้อมของแอปพลิเคชันที่ใช้งานจริงเพื่อเริ่มใช้ประโยชน์จากสิทธิประโยชน์ที่ Shaka Player มอบให้ ในระดับสูง มีการเปลี่ยนแปลงการพัฒนาซอฟต์แวร์เพียงเล็กน้อย และส่วนใหญ่แล้วจะมีข้อกำหนดสำหรับ QA เพื่อให้พาร์ทเนอร์ของเราย้ายข้อมูลได้สำเร็จ

แอปพลิเคชันของฉันจะใช้ HLS เพื่อสตรีมเนื้อหาในเร็วๆ นี้ ฉันควรทำอย่างไร

การผสานรวมใหม่ควรเลือกใช้ Shaka Player สำหรับการเล่น แอปพลิเคชันของคุณจะได้รับการสนับสนุนได้ดียิ่งขึ้นในระยะยาว รวมถึงยังใช้ประโยชน์จากฟีเจอร์ HLS ใหม่และการปรับปรุงประสิทธิภาพอีกด้วย หากการผสานรวมใหม่พบปัญหา ให้รายงานข้อบกพร่องโดยเร็วที่สุดเพื่อให้ทีมวิศวกรมีเวลาเพียงพอในการแก้ไขปัญหา หากใบสมัครมีกำหนดเวลาที่แน่นอน ให้รวมข้อมูลนั้นไว้ในรายงานข้อบกพร่อง รวมถึงผลกระทบที่จะจัดลำดับความสำคัญตามนั้น ทีมวิศวกรของเราจะพยายามมอบโซลูชัน ที่จะสนับสนุนผู้ใช้ของคุณได้อย่างเพียงพอ

จะเกิดอะไรขึ้นหากเนื้อหาหรือแอปของฉันใช้กับ Shaka Player ไม่ได้

คุณควรรายงานข้อบกพร่องกับโปรเจ็กต์ Shaka Player หรือโปรเจ็กต์แคสต์ (ดูรายงานปัญหา) ทีมวิศวกรของ Cast SDK กำลังตรวจสอบอุปกรณ์ติดตามเหล่านี้อย่างเต็มที่และจะทำงานร่วมกับคุณเพื่อแก้ไขปัญหาทั้งหมดที่เกิดขึ้น ยิ่งตรวจพบปัญหาเหล่านี้เร็วเท่าไร ก็ยิ่งใช้เวลาในการแก้ไขปัญหามากขึ้นเท่านั้น

MPL ไม่ได้รับการอัปเดตที่สำคัญอีกต่อไป นั่นหมายความว่าอย่างไร

ก่อนหน้านี้ MPL ได้นำฟีเจอร์ HLS ใหม่ๆ มาใช้ และแพตช์ข้อบกพร่องที่สำคัญผ่านการอัปเดตที่สำคัญ เนื่องจากตอนนี้ MPL จะไม่ได้รับ MPL อีกต่อไป จะไม่มีการเพิ่มฟีเจอร์ HLS ใหม่ไปยังโปรแกรมเล่น ในทำนองเดียวกัน ปัญหาที่รายงานสำหรับการเล่น HLS ใน MPL จะไม่ได้รับการแก้ไขในรูปแบบ MPL ปัญหาเหล่านี้ควรแก้ไขได้โดยการเปลี่ยนไปเล่น Shaka Player หากปัญหายังคงอยู่ ให้ยื่นข้อบกพร่องพร้อมปัญหาที่เกี่ยวข้องที่พบใน Shaka Player พาร์ทเนอร์ควรเลิกใช้ MPL

เนื้อหาของฉันใช้โปรโตคอล Smooth Streaming จะส่งผลต่อแอปพลิเคชันของฉันอย่างไร

ไบนารี MPL จะยังคงโฮสต์และเข้าถึงได้โดยแอปพลิเคชันตัวรับสัญญาณ อย่างไรก็ตาม คำขอฟีเจอร์และการแก้ไขข้อบกพร่องใดๆ ที่เกี่ยวข้องกับ Smooth Streaming จะไม่รองรับเนื่องจากข้อมูลจำเพาะของ Smooth Streaming ไม่ได้อัปเดตมากว่า 4 ปี เราขอแนะนำให้ย้ายเนื้อหาไปใช้โปรโตคอลสตรีมมิง DASH หรือ HLS เพื่อรับข้อมูลอัปเดตเกี่ยวกับประสิทธิภาพและการสนับสนุนเนื้อหาของคุณต่อไป

เนื้อหาของฉันไม่ได้ใช้โปรโตคอล HLS หรือ Smooth Stream การเปลี่ยนแปลงนี้จะส่งผลต่อแอปพลิเคชันของฉันอย่างไร

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