SDK IMA DAI hỗ trợ việc tích hợp vào một ứng dụng trình phát video HbbTV tối thiểu. SDK IMA DAI cho phép nhu cầu của Google Ad Manager đối với luồng quảng cáo băng rộng đi kèm với luồng nội dung phát sóng. Hướng dẫn này trình bày về cách tải một tệp kê khai quảng cáo dựa trên dữ liệu sự kiện quảng cáo từ luồng phát sóng.
Để xem hoặc làm theo một mẫu tích hợp hoàn chỉnh, hãy tải Ứng dụng mẫu tuyến tính HbbTV có SDK DAI HTML5 của IMA xuống. Để hỗ trợ các thiết bị TV cũ, hướng dẫn này và ứng dụng mẫu trên GitHub có trong JavaScript ES5.
Để biết thông tin về cách tích hợp với các nền tảng không phải HbbTV khác, hãy xem SDK quảng cáo trên phương tiện truyền thông tương tác.
Điều kiện tiên quyết
Trước khi tiếp tục xem hướng dẫn này, hãy xác nhận rằng bạn có những thông tin sau:
- Để sử dụng DAI của IMA, bạn phải có tài khoản Ad Manager 360 Advanced. Nếu bạn có tài khoản Ad Manager, hãy liên hệ với người quản lý tài khoản để biết thêm thông tin chi tiết. Để biết thông tin về cách đăng ký Ad Manager, hãy truy cập vào Trung tâm trợ giúp của Ad Manager.
- Một ứng dụng HbbTV tương tác với đối tượng phát sóng để phát nội dung nghe nhìn. Để biết thêm thông tin, hãy xem đối tượng AV phát sóng HbbTV.
- Một phiên bản dash.js hỗ trợ tính năng tải trước. Bạn nên sử dụng phiên bản 4.6.0 trở lên.
- Một máy chủ web để lưu trữ ứng dụng.
- Môi trường thử nghiệm có luồng phát sóng DVB. Để biết hướng dẫn chi tiết về cách thiết lập môi trường kiểm thử, hãy xem phần Chạy ứng dụng HbbTV.
- Luồng phát sóng: Chuẩn bị một luồng phát sóng chứa dữ liệu Bảng thông tin ứng dụng (AIT) tuỳ chỉnh. Bạn cũng cần có cách truyền luồng phát sóng để TV nhận được. Bạn có thể sử dụng bộ điều biến DVB để truyền luồng phát sóng hoặc các phương thức khác.
- Máy chủ web: Lưu trữ ứng dụng HbbTV trên một máy chủ web mà TV có thể truy cập.
- Một sự kiện phát trực tiếp có loại Tệp kê khai phân phát nhóm. Để tạo sự kiện, hãy xem bài viết Thiết lập chương trình phát trực tiếp cho DAI.
Tạo luồng phát tương thích
Ứng dụng HbbTV của bạn sử dụng broadcastContainer.addStreamEventListener()
để nghe các sự kiện phát trực tiếp HbbTV trong luồng phát. Để tải và phát quảng cáo đúng cách, bạn phải thiết lập luồng phát sóng bằng các loại sự kiện sau để đưa tải trọng chuỗi JSON được liên kết vào:
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"}
Đối với những sự kiện này, hãy thêm một tải trọng chuỗi JSON bằng streamEvent.type
. Để hỗ trợ việc tải trước quảng cáo, sự kiện AD_BREAK_EVENT_ANNOUNCE
phải bao gồm streamEvent.duration
và streamEvent.offset
. Để biết thêm thông tin, hãy xem phần Theo dõi các sự kiện phát trực tiếp HbbTV.
Để thiết lập luồng phát sóng, hãy xem ví dụ về luồng truyền tải MPEG được ghép kênh.
Để sử dụng luồng ví dụ, bạn phải cập nhật URL bảng thông tin ứng dụng cho chế độ thiết lập luồng của riêng mình.
Tạo sự kiện phát trực tiếp có nhóm quảng cáo
Để phân phát quảng cáo cho ứng dụng HbbTV, bạn cần có một sự kiện phát trực tiếp phân phát nhóm. Để biết thông tin về cách thiết lập sự kiện, hãy xem bài viết Thiết lập sự kiện phát trực tiếp cho DAI. Để truy cập vào luồng mà bạn thiết lập, ứng dụng phải có các biến sau:
NETWORK_CODE
: Mã mạng Ad Manager để yêu cầu quảng cáo.CUSTOM_ASSET_KEY
: Khoá thành phần tuỳ chỉnh Ad Manager được tạo trong quá trình thiết lập luồng phát trực tiếp cho DAI.
Tạo cấu trúc tệp ứng dụng
Hướng dẫn này sử dụng cấu trúc tệp tương tự như ứng dụng mẫu IMA HbbTV. Để làm theo hướng dẫn này, hãy tạo các tệp sau:
index.html
: Chỉ mục HTML cho ứng dụng của bạn.Style.css
: Kiểu CSS cho ứng dụng của bạn.application.js
: Điểm truy cập JS chính. Quản lý trạng thái phát và điểm chèn quảng cáo.video_player.js
: Quản lý trình phát dash.js được dùng để phát quảng cáo.ads_manager.js
: Quản lý chế độ thiết lập IMA, yêu cầu phát trực tuyến và xử lý sự kiện.
ads_manager.js
thiết lập IMA DAI SDK. Các thành phần sau đây triển khai SDK IMA DAI:
PodStreamRequest
: Một đối tượng xác định yêu cầu phát trực tuyến đến các máy chủ quảng cáo của Google.StreamManager
: Một đối tượng xử lý các luồng chèn quảng cáo động và các lượt tương tác với phần phụ trợ DAI. Trình quản lý luồng phát cũng xử lý các ping theo dõi và chuyển tiếp các sự kiện về luồng phát và quảng cáo đến nhà xuất bản.
Để biết hướng dẫn chi tiết về cách thiết lập môi trường kiểm thử, hãy tham khảo hướng dẫn này về chạy ứng dụng HbbTV.
Tải SDK IMA DAI và DASH.js
Để bắt đầu phát luồng quảng cáo phát sóng, hãy tải IMA DAI SDK và dash.js vào ứng dụng của bạn. Trước thẻ application.js
, hãy thêm dash.js và khung IMA bằng cách sử dụng thẻ tập lệnh trong index.html
.
Tiếp theo, hãy tạo một lớp trình bao bọc trình phát video để khởi động và kiểm soát trình phát dash.js.