การใช้งานวิดีโอฝั่งไคลเอ็นต์มีการขอสตรีมวิดีโอและโฆษณาอย่างเป็นอิสระจากกัน ส่วนการใช้งานฝั่งเซิร์ฟเวอร์ที่ใช้การแทรกโฆษณาแบบไดนามิก (Dynamic Ad Insertion หรือ DAI) นั้นแตกต่างออกไปตรงที่จะขอสตรีมเพียงสตรีมเดียวที่มีโฆษณาเชื่อมกับเนื้อหาวิดีโอในแบบไดนามิก ถ้าเกิดข้อผิดพลาดเกี่ยวกับเซิร์ฟเวอร์ สตรีมอาจถูกบล็อก ซึ่งไม่เพียงแต่จะทำให้ผู้ใช้ได้รับประสบการณ์ที่ไม่ดีเท่านั้น แต่ยังทำให้สูญเสียรายได้ด้วย
DAI ของ Ad Manager จะแสดงข้อผิดพลาด HTTP ให้ทราบเมื่อคุณสร้างสตรีมและเมื่อสตรีมกำลังทำงาน และให้คุณระบุสตรีมสำรองในกรณีที่คุณไม่ได้รับการตอบสนองที่ถูกต้องจากเซิร์ฟเวอร์
จัดการข้อผิดพลาด HTTP ที่ตรวจพบเมื่อสร้างสตรีม
ประเภทข้อผิดพลาด | คำแนะนำ |
---|---|
ข้อผิดพลาด 4XX (ยกเว้น 429) |
เมื่อเห็นข้อผิดพลาด HTTP 4XX คุณไม่ควรเปลี่ยนไปใช้สตรีมดิบแทน เนื่องจากมีแนวโน้มว่าไคลเอ็นต์จะพบข้อผิดพลาดในอินสแตนซ์เหล่านี้ ให้ตรวจดูว่าคำขอที่คุณกำลังส่งไปยังเซิร์ฟเวอร์นั้นถูกต้องและมีพารามิเตอร์ที่จำเป็นทั้งหมด |
ข้อผิดพลาด 429 หรือ 5XX | เมื่อเห็นข้อผิดพลาด HTTP 429 หรือ HTTP 5XX คุณควรเปลี่ยนไปใช้สตรีมดิบสำรองแทน โดยไม่มีการสร้างรายได้ ทั้งนี้ใน IMA SDK ข้อผิดพลาดเหล่านี้ตรวจจับได้ด้วยเครื่องจัดการข้อผิดพลาด และเปลี่ยนจากสตรีมเริ่มต้นไปใช้สตรีมสำรองได้ |
TVOS
static NSString *const kBackupContentPath =
@"http://googleimadev‑vh.akamaihd.net/i/big_buck_bunny/bbb‑,480p,720p,1080p,.mov.csmil/"
@"master.m3u8";
- (void)streamManager:(IMAStreamManager *)streamManager
didReceiveError:(NSError *)error {
NSLog(@"Error: %@", error);
[self playBackupStream];
}
- (void)playBackupStream {
NSURL *contentURL = [NSURL URLWithString:kBackupContentPath];
self.playerViewController.player = [[AVPlayer alloc] initWithURL:contentURL];
[self.playerViewController.player play];
}
รับ URL สตรีมสำรองของวิดีโอออนดีมานด์ (VOD) หรือสตรีมแบบสด
แอปของคุณควรมีกลไกเพื่อรับ URL สำรองสำหรับทั้ง VOD และสตรีมเชิงเส้นแบบสด ในกรณีของ VOD สตรีมสำรองควรเป็น ingestURL ที่ระบุไว้ในฟีด MRSS สำหรับสตรีมเชิงเส้นแบบสด สตรีมสำรองควรเป็นสตรีมเนื้อหาที่ระบุใน UI ของ Ad Manager
จัดการข้อผิดพลาด HTTP ขณะที่สตรีมกำลังทำงาน
ถ้าพบข้อผิดพลาดขณะที่สตรีมกำลังทำงาน เราไม่แนะนำให้เปลี่ยนไปใช้สตรีมดิบแทน Ad Manager จะพยายามแก้ไขข้อผิดพลาดส่วนใหญ่ที่พบ อย่างไรก็ตาม ในกรณีที่เซิร์ฟเวอร์จัดการข้อผิดพลาดไม่ได้ สตรีมจะหยุดเล่น หากสตรีมหยุด แอปควรจะเริ่มต้นสตรีมใหม่ หากข้อผิดพลาดยังอยู่ คุณควรเปลี่ยนไปใช้สตรีมดิบแทน
ตรวจสอบความถูกต้องของการใช้งานสตรีมสำรอง
คุณตรวจสอบความถูกต้องของการใช้งานสตรีมสำรองได้โดยใช้สตรีมตัวอย่างต่อไปนี้
รูปแบบสตรีม | คีย์ของชิ้นงาน |
---|---|
HLS | MSQJlB9VSgqJkGNv1mB0FA |
DASH | TrhaCde0R_uKzG_psucTww |
สตรีมเหล่านี้มีไว้เพื่อวัตถุประสงค์ในการทดสอบและจะแสดงข้อผิดพลาด HTTP 429 เสมอ
เฟลโอเวอร์อัตโนมัติของสตรีมเชิงเส้นของ DAI
ในกรณีที่สตรีมเข้ามาในระบบเป็นปริมาณมากอย่างไม่คาดคิด ซึ่งพบได้น้อยมาก เราอาจกลับไปใช้สตรีมโดยไม่มีโฆษณาสำหรับผู้ใช้บางราย ในกรณีนี้ ผู้ชมจะเห็นเนื้อหาแทนโฆษณา
ในกรณีที่แสดงสตรีมสำรองไม่ได้ (เช่น หากมีการระบุการตรวจสอบสิทธิ์หรือการส่งต่อต้นทาง) หรือหากต้องมีการยกเว้นตัวแปรสําหรับสตรีม) โค้ดตอบกลับ HTTP 429 จะแสดงขึ้นและแอปพลิเคชันควรเปลี่ยนไปใช้สตรีมดิบในเครื่องแทน