Kích hoạt sự kiện

Một phần của tài liệu (Luận văn thạc sĩ) Nghiên cứu mô hình truyền hình lai ghép HbbTV và xây dựng ứng dụng minh họa (Trang 65 - 67)

Khi phía phát muốn gửi bất kỳ báo hiệu nào đến người dùng, thông tin kích hoạt sự kiện sẽ được chèn vào dòng truyền MPEG2. Dòng thông tin đặc biệt này chính là dòng thành phần được định nghĩa tham chiếu trong đối tượng

56

StreamEventMessage ở trên. Thông tin kích hoạt sự kiện cho biết sự kiện nào đang được kích hoạt thông qua mã nhận diện sự kiện và dữ liệu kèm theo nếu có. Thông tin được truyền theo cấu trúc section, như sau:

Bảng 4.13: Cấu trúc DSMCC_section [9]

Cú Pháp Số bit

Giải thích

DSMCC_section() {

table_id 8 0x3D, cấu trúc mang thông tin mô tả dòng (Stream Descriptors)

section_syntax_indicator 1 1

private_indicator 1 0

reserved 2

dsmcc_section_length 12 Chiều dài phần phía sau (byte)

table_id_extension 16 Mã sự kiện được kích hoạt (event_id)

reserved 2

version_number 5 Báo kích hoạt sự kiện cho đầu thu thông qua cập nhật phiên bản

current_next_indicator 1 1

section_number 8

last_section_number 8 StreamEventDescriptor() { 8

descriptorTag 8 0x1A: Stream Event descriptor

descriptorLength 8

eventId 16 Mã nhận diện sự kiện

reserved 31

eventNPT 33 bỏ qua (=0)

privateDataByte() }

dữ liệu kèm theo sự kiện, đầu thu không phân tích dữ liệu này, ứng dụng sẽ thực hiện khi cần.

CRC_32 32

}

Việc tách riêng định nghĩa sự kiện với dòng báo hiệu sự kiện giúp dễ dàng sử dụng lại các sự kiện được định nghĩa. Các dòng báo hiệu sự kiện có thể mang những sự kiện có cùng eventId, thậm chí các sự kiện trong đó được báo hiệu tại những thời điểm khác nhau kèm theo dữ liệu khác nhau. Điều này cho phép một

57

ứng dụng sử dụng một eventId cho nhiều sự kiện có đặc tính giống nhau. Chẳng hạn trong một trận đấu, có thể sử dụng một eventId để báo hiệu mỗi khi bàn thắng được ghi, một eventId khác báo hiệu đá phạt trực tiếp, và một eventId khác nữa báo kết thúc trận đấu. Như vậy trong thời gian trận đấu diễn ra, ứng dụng chỉ cần quan tâm đến 3 nhóm sự kiện này. Trong một số trường hợp, báo hiệu sự kiện không có dữ liệu kèm theo.

Khai báo dòng sự kiện

Cũng như mọi dòng thành phần khác, để đầu thu có thể nhận diện, dòng thành phần mang thông tin kích hoạt sự kiện phải được khai báo trong PMT của kênh xác định. Thông tin khai báo theo cấu trúc sau:

Bảng 4.14: Cấu trúc khai báo loại dòng thành phần [10] Số

bit

Diễn giải

stream_type 8 0xC, cho biết đây là dòng mang stream descriptors (ISO/IEC 13818-6)

resevered 3

elementary_PID 13 Mã nhận diện gói của dòng

resevered 4

es_info_len 12 chiều dài thông tin bên dưới (byte) descriptors

stream_identifier_descriptor

tag 8 0x52 (stream_identifier_descriptor)

length 8 1 (byte cho field component_tag)

component_tag 8 Gán nhãn nhận diện dòng để tham chiếu (tag) trong đối tượng StreamEventMessage trong OC

Một phần của tài liệu (Luận văn thạc sĩ) Nghiên cứu mô hình truyền hình lai ghép HbbTV và xây dựng ứng dụng minh họa (Trang 65 - 67)