# Client-Side Ad Insertion (CSAI)

นอกเหนือจากการใช้ Ad tag URL เดียว ByteArk Player SDK for Android รองรับการแสดงโฆษณาในรูปแบบ Client-Side Ad Insertion (CSAI) โดยสามารถแทรกโฆษณาในตำแหน่งเวลาที่กำหนดผ่าน ByteArkAdsInsertionSetting ซึ่งเหมาะกับ Use case ที่ต้องการ Insert โฆษณาในตำแหน่งเฉพาะเจาะจง โดยเฉพาะใน Live streaming

# การตั้งค่า

val adsInsertionSetting = ByteArkAdsInsertionSettingBuilder.Builder()
  .withAdsUrl("https://example.com/vast/tag.xml")
  .withDefaultKeyName("midroll")
  .withDefaultOffset(30_000L)  // โฆษณาเริ่มที่นาทีที่ 30 วินาที
  .build()
val playerBuilder = ByteArkPlayerBuilder.Builder()
  .withContext(this)
  .withControl()
  .withAds()
  .withAdsInsertionSetting(adsInsertionSetting)
  .build()
1
2
3
4
5
6
7
8
9
10
11
12
Builder method Type Description
withAdsUrl(adsUrl: String) String URL ของ Ad tag
withDefaultKeyName(key: String) String Key ที่ใช้ระบุตำแหน่งโฆษณา
withDefaultOffset(offset: Long) Long Offset เริ่มต้น (มิลลิวินาที)

# ความแตกต่างจาก Advertisement (VAST/VMAP)

รูปแบบ คำอธิบาย
Advertisement ใช้ Ad tag เดียวที่กำหนดผ่าน VAST/VMAP โดย Google IMA SDK จะจัดการตำแหน่งโฆษณาเอง
Client-Side Ad Insertion (CSAI) กำหนด Offset เวลาเองได้อย่างยืดหยุ่น เหมาะกับ Live streaming ที่ต้องการแทรกโฆษณาในตำแหน่งเฉพาะ