IMA DAI SDK, minimal bir HbbTV video oynatıcı uygulamasına entegrasyonu destekler. IMA DAI SDK, yayın içeriği akışına eşlik edecek geniş bant reklam akışı için Google Ad Manager talebini etkinleştirir. Bu kılavuzda, yayın akışındaki reklam etkinliği verilerine dayalı olarak reklam manifesti yükleme ele alınmaktadır.
Tamamlanmış bir örnek entegrasyonu görüntülemek veya takip etmek için IMA HTML5 DAI SDK'sı ile HbbTV Doğrusal Örnek Uygulaması'nı indirin. Eski TV cihazlarını desteklemek için bu kılavuz ve GitHub örnek uygulaması ES5 JavaScript'te yazılmıştır.
HbbTV dışındaki diğer platformlarla entegrasyon hakkında bilgi edinmek için Interactive Media Ads SDK'ları başlıklı makaleyi inceleyin.
Ön koşullar
Bu kılavuza devam etmeden önce aşağıdakilere sahip olduğunuzdan emin olun:
- IMA DAI'yi kullanmak için Ad Manager 360 Advanced hesabınız olmalıdır. Ad Manager hesabınız varsa daha fazla bilgi için hesap yöneticinizle iletişime geçin. Ad Manager'a kaydolma hakkında bilgi edinmek için Ad Manager Yardım Merkezi'ni ziyaret edin.
- Medya oynatma için yayın nesnesi ile etkileşime geçen bir HbbTV uygulaması. Daha ayrıntılı bilgi için HbbTV Yayın AV nesnesi bölümüne bakın.
- Ön yüklemeyi destekleyen bir dash.js sürümü. 4.6.0 veya sonraki bir sürümü kullanmanızı öneririz.
- Uygulamayı barındıracak bir web sunucusu.
- DVB yayın akışı içeren bir test ortamı. Test ortamınızı ayarlamayla ilgili ayrıntılı talimatlar için HbbTV uygulaması çalıştırma başlıklı makaleyi inceleyin.
- Yayın Akışı: Özel Uygulama Bilgileri Tablosu (AIT) verileri içeren bir yayın akışı hazırlayın. Ayrıca, TV'nin alabilmesi için yayın akışını iletmeniz gerekir. Yayın akışını iletmek için DVB modülatör veya başka yöntemler kullanabilirsiniz.
- Web sunucusu: HbbTV uygulamasını TV'nin erişebileceği bir web sunucusunda barındırın.
- Kapsül yayınlama manifesti türüne sahip bir canlı yayın etkinliği. Etkinliği oluşturmak için DAI için canlı yayın oluşturma başlıklı makaleyi inceleyin.
Uyumlu bir yayın akışı oluşturma
HbbTV uygulamanız, yayın akışınızdaki HbbTV yayın etkinliklerini dinlemek için broadcastContainer.addStreamEventListener()
kullanır. Reklamları düzgün bir şekilde yükleyip oynatmak için yayın akışınızı, ilişkili JSON dizesi yükü içerecek şekilde aşağıdaki etkinlik türleriyle ayarlamanız gerekir:
AD_BREAK_EVENT_ANNOUNCE
-{"type":"adBreakAnnounce", "pod_id":1,"duration":90, "offset":10}
AD_BREAK_EVENT_START
-{"type":"adBreakStart"}
AD_BREAK_EVENT_END
-{"type":"adBreakEnd"}
Bu etkinlikler için streamEvent.type
ile bir JSON dizesi yükü ekleyin. Reklam ön yüklemeyi desteklemek için AD_BREAK_EVENT_ANNOUNCE
etkinliği streamEvent.duration
ve streamEvent.offset
içermelidir. Daha fazla bilgi için HbbTV yayın etkinliklerini dinleme başlıklı makaleyi inceleyin.
Yayın akışınızı ayarlamak için çoklu MPEG aktarma akışı örneğine bakın.
Örnek yayını kullanmak için kendi yayın ayarlarınıza göre uygulama bilgileri tablosu URL'sini güncellemeniz gerekir.
Canlı yayın etkinliği yayınlayan kapsül oluşturma
HbbTV uygulamanıza reklam yayınlamak için canlı yayın sunan bir kapsüle ihtiyacınız vardır. Etkinliği ayarlama hakkında bilgi edinmek için DAI için canlı yayın oluşturma başlıklı makaleyi inceleyin. Uygulamanın, oluşturduğunuz akışa erişebilmesi için aşağıdaki değişkenlere sahip olması gerekir:
NETWORK_CODE
: Reklam isteğinde bulunmaya yönelik Ad Manager ağ kodu.CUSTOM_ASSET_KEY
: DAI için canlı yayın oluşturma işlemi sırasında oluşturulan Ad Manager özel öğe anahtarı.
Uygulama dosyası yapısını oluşturma
Bu kılavuzda, IMA HbbTV örnek uygulamasına benzer bir dosya yapısı kullanılmaktadır. Bu kılavuzu takip etmek için aşağıdaki dosyaları oluşturduğunuzdan emin olun:
index.html
: Uygulamanızın HTML dizini.Style.css
: Uygulamanız için CSS stili.application.js
: Ana JS giriş noktası. Oynatma durumunu ve reklam aralarını yönetir.video_player.js
: Reklam oynatmak için kullanılan dash.js oynatıcıyı yönetir.ads_manager.js
: IMA kurulumunu, yayın isteğini ve etkinlik işlemeyi yönetir.
ads_manager.js
, IMA DAI SDK'sını kurar. Aşağıdaki bileşenler IMA DAI SDK'sını uygular:
PodStreamRequest
: Google'ın reklam sunucularına bir akış isteği tanımlayan bir nesne.StreamManager
: Dinamik reklam ekleme akışlarını ve DAI arka ucuyla etkileşimleri yöneten bir nesne. Yayın yöneticisi, izleme ping'lerini de yönetir ve yayın ile reklam etkinliklerini yayıncıya iletir.
Test ortamınızı ayarlamayla ilgili ayrıntılı talimatlar için HbbTV uygulaması çalıştırma konulu bu kılavuza bakın.
IMA DAI SDK'sını ve DASH.js'yi yükleme
Yayın reklam akışı oynatmaya başlamak için IMA DAI SDK'sını ve dash.js'yi uygulamanıza yükleyin. application.js
etiketinden önce, index.html
içinde komut dosyası etiketleri kullanarak dash.js ve IMA çerçevesini ekleyin.
<script src="https://cdn.jsdelivr.net/npm/dashjs@latest/dist/dash.all.min.js"></script> <script src="//imasdk.googleapis.com/js/sdkloader/ima3_dai.js"></script>
Ardından, dash.js oynatıcısını başlatmak ve kontrol etmek için bir video oynatıcı sarmalayıcı sınıfı oluşturun.