Trong cách ghép kênh gói, các gói số liệu từ các dòng sơ cấp audio, video, số liệu được đan xen vào nhau một cách tuần hoàn hoặc không tuần hoàn, gói này tiếp theo gói kia để hình thành
Trang 1Bộ mã hóa audio
Bộ mã hóa video
Số liệu khác
Số liệu hệ thống
Trang 2 Ghép kênh gói (Packet Multiplexing method) Trong cách ghép kênh gói, các gói số liệu từ các dòng sơ cấp audio, video, số liệu được đan xen vào nhau một cách tuần hoàn hoặc không tuần hoàn, gói này tiếp theo gói kia để hình thành một dòng ghép kênh
Hệ thống ghép kênh MPEG-2 thuộc loại ghép kênh gói với sơ đồ nguyên lý như ở hình 3.12
1 GHÉP KÊNH GÓI (PACKET MULTIPLEXING) MPEG:
Các dòng sơ cấp của 1
hay nhiều chương trình
Dòng ghép kênh MPEG-2
Hình 3.13: Bộ ghép kênh MPEG-2
Phần hệ thống của MPEG mô tả cách thức của dòng số video nén, audio nén
và các dòng số liệu khác được ghép chung lại với nhau để tạo ra dòng ghép kênh MPEG Một số thuật ngữ và các nguyên lý cơ bản của lớp hệ thống MPEG được trình bày dưới đây (như ở hình 3.13):
Chương trình (program): Theo ngôn ngữ phát thanh truyền hình, chương
trình thường có nghĩa là các tiết mục thông tin, giáo dục, giải trí… được các đài phát lên sóng hàng ngày Trong ngữ nghĩa của MPEG, thuật ngữ chương trình có nghĩa là một kênh (channel) hay một dịch vụ phát sóng
Trang 3(broadcast service) đơn Theo định nghĩa này thì VTV1, VTV3, … là các chương trình
Dòng sơ cấp ES (Elementary Stream): Một chương trình gồm một hay
nhiều dòng sơ cấp Chương trình truyền hình thông thường ở phương Tây bao gồm ba dòng sơ cấp: dòng video, dòng audio và dòng số liệu teletext
Dòng ghép kênh: Lớp hệ thống MPEG-2 mô tả cách thức các dòng sơ cấp
của một chương trình hay của nhiều chương trình được ghép chung với nhau tạo ra một dòng số liệu thích hợp cho lưu trữ số hay truyền dẫn số
Các thông tin cần thiết khác:
Hệ thống các nhãn thời gian (Time - Stamp TS): Sử dụng để đảm bảo các dòng sơ cấp liên hệ được phát lại một cách đồng bộ tại bộ giải mã
Các bảng thông tin dịch vụ (Service Information): Mô tả các chi tiết về thông số mạng, về các chương trình đang được ghép kênh và về bản chất của các dòng sơ cấp khác nhau
Các thông tin điều khiển việc xáo trộn (Scrambling) số liệu, các thông tin dùng để truy cập có điều kiện CA (Conditional Access)
Các kênh số liệu riêng (private data): Số liệu riêng là dòng số liệu mà nội dung của nó không được quy định bởi tiêu chuẩn MPEG
Ở MPEG đạt được sự đồng bộ thông qua việc sử dụng nhãn thời gian tần số
và chuẩn đồng hồ (Clock system CS) TS là mẫu data 33 bit chỉ báo thời gian theo đồng hồ thời gian hệ thống (system time clock STC) của một đơn vị trình diễn (presentation unit PU: là ảnh video.audio v.v.) nào đó
2 TỔNG QUÁT VỀ HỆ THỐNG GHÉP KÊNH MPEG-2:
Các hệ thống ghép kênh MPEG-2 được trình bày trên hình 3.14 Có thể phân biệt 2 loại hệ thống: hệ thống ghép kênh dòng chương trình và hệ thống ghép kênh dòng truyền tải
Bộ mã hóa video mã hóa tín hiệu video số định dạng CCIR - 601 thành dòng
sơ cấp video (video ES) có chiều dài gần như vô tận và chỉ chứa những thông tin tối cần thiết để có thể khôi phục lại hình ảnh ban đầu
Bộ mã hóa audio mã hóa tín hiệu audio số định dạng AES/EBU thành dòng
sơ cấp audio có chiều dài tùy ý (tần số lấy mẫu 48KHz, số bit mẫy 24 bit và tốc độ bit là 1152 Kbit/s)
Để có thể truyền được với tốc độ cao, các dòng video, audio được đóng gói lại thành các dòng sơ cấp PES (Packetized Elementary Stream) tương ứng với các gói
có độ dài thay đổi Mỗi gói PES bao gồm một header và một số liệu trích ra từ dòng sơ cấp Các gói PES lại được ghép với nhau tạo ra dòng chương trình PS (Program Stream) hay dòng truyền tải TS (Transport Stream)
Các lớp trong hệ thống MPEG – 2 (như hình 3.15)
Trang 4 Lớp nén: mô tả cú pháp của dòng video và audio dựa trên cấu trúc dòng data video và audio đã được trình bày ở các phần trước Các chuỗi data hay video, audio độc lập được mã hóa MPEG – 2 để tạo ra các dòng độc lập gọi
là dòng cơ bản (elementary stream ES)
Lớp hệ thống: định nghĩa tổ hợp của các dòng bit audio và video riêng biệt thành một dòng đơn để lưu trữ (dòng chương trình PS) hay truyền tải (dòng truyền tải TS), như mô tả ở hình 3.14 Hệ còn gồm cả thông tin định thời và thông tin khác cần cho giải đa hợp dòng audio, video và để đồng bộ audio – video ở phía giải mã; thông tin chuẩn đồng hồ hệ thống (system clock reference SCR) và nhãn thời gian trình diễn (presentation time stamp PTS) được chèn vào dòng bit MPEG
H.3.14: Hệ thống ghép kênh MPEG–2
Chuẩn MPEG định nghĩa một hệ thống ba dòng data có thứ bậc: dòng sơ cấp
đã đóng gói, dòng chương trình và dòng truyền tải
Dòng sơ cấp đã đóng gói PES: Qua bộ đóng gói, dòng sơ cấp được chia thành các gói có độ dài tùy ý Nội dung gói có nguồn gốc từ dòng data hay dòng audio hay dòng video đã được mã hóa MPEG – 2, như hình 3.16
Dòng chương trình: Các gói PES có nguồn gốc từ 1 hay nhiều dòng sơ cấp dùng chung gốc thời gian như là dòng audio, video, data, được ghép thành một dòng chương trình PS như các lô (pack) có tính lặp lại, như ở hình 3.27 Trong phần header của lô, SCR đảm bảo các gói audio và video được định thời Đó là tín hiệu thời gian thực chỉ báo thời gian truyền lô đó Cá lô PS có độ dài tùy ý
Số lượng và trình tự các gói trong lô không được định nghĩa, nhưng các gói
Trang 5được gửi theo trình tự thời gian Một PS có thể mang tới 32 dòng audio, 16 dòng video, 16 dòng data; tất cả đều có chung gốc thời gian PS nhạy với lỗi và được dùng trong ghi hình đa phương tiện và phân phối nội bộ, trong các ứng dụng có sai số truyền có thể bỏ qua được
Trang 6 Dòng truyền tải TS: có thể được tạo thành từ một tổ hợp 1 hay nhiều dòng PS
có gốc thời gian độc lập nhau hoặc từ một tổ hợp các PES, như ở hình 3.17 Tuy nhiên, PS không phải là một bộ con của TS, do TS không chứa tẩt cả thông tin bán ảnh chương trình Khi trích PS từ TS phải thu được vài thông tin trên thì các gói PES có nguồn gốc từ một hay nhiều dòng sơ cấp ES dùng chung gốc thời gian hay gôc thời gian khác nhau như dòng audio, video và data được ghép hợp thành một dòng truyền tải TS gồm các gói truyền tải có kích cỡ nhỏ mang tính lặp lại, như ở hình 3.19 Một hay nhiều PS có clock chuẩn khác nhau cũng có thể được ghép hợp thành một TS qua sự chuyển đổi trong gói PES Các gói TS có chiều dài cố định 188 byte và nội dung data của chúng như
mô tả ở hình 3.18 Chúng mang thông tin định thời, thông tin đồng bộ và cơ chế sửa jitter để bảo đảm truyền tải khoảng cách xa tin cậy được Hơn nữa, kích cỡ gói data cố định cho phép chuyển đổi TS thành các tế bào mạng ATM (asynchronous tranfer mode) Dòng này có sức đề kháng với lỗi nên được chỉ định cho các ứng dụng có sai số không thể bỏ qua được
Gói dài 188 byte
điều khiển xóa trộn v.v
H 3.18:Cấu trúc gói dòng truyền tải TS Header gói
TS
Trang 73 GHÉP KÊNH DÒNG CHƯƠNG TRÌNH (PROGRGAM STREAM MUX)
Trang 8
Gói PES
Mô hình hệ thống ghép kênh chỉ ra trong hình 3.20 Một dòng chương trình
là kết quả ghép kênh một vài dòng cơ sở đóng gói sử dụng cùng một hệ thống xung nhịp thời gian Chương trình có thể là một dòng video có kèm audio hoặc một chương trình nhiều kênh audio
Video PES
Program Stream (PS) Audio PES
Hình 3.20: Ghép kênh dòng chương trình
Dòng video cơ sở được chia thành các đơn vị truy cập (AU – Access Units) Mỗi AU chứa dữ liệu đã được nén của một ảnh Các anh này phân biệt bởi ảnh I, P hoặc B Mỗi video AU là một gói chương trình (Program Stream Packet), các gói này thay đổi về kích thước Ví dụ gói ảnh I lớn hơn nhiều gói ảnh B tuy nhiên đối với các đơn vị truy cập audio số (DAA – Digital Audio Access) thường có cùng kích thước và vài DAA tạo thành một gói dòng chương trình
Dòng chương trình bao gồm các gói tương đối dài nối tiếp nhau và độ dài này lại luôn thay đổi Mỗi gói bắt đầu bằng một tiêu đề (header) Mỗi lỗi xảy ra trong phần tiêu đề có thể làm mất thông tin của toàn gói Vì các gói của chương trình có thể chứa vài chục Kbyte số liệu nên sự mất mát thông tin của một gói có thể làm mất hoặc gián đoạn cả một khung ảnh
Program Stream MUX
Trang 9 Độ dài gói không cố định khiến cho bộ giải mã không dự đoán được khi nào gói chấm dứt và khi nào gói mới bắt đầu Thay vào đó, bộ giải mã đọc và dịch lại bộ thông tin về độ dài gói chứa trong mỗi tiêu đề, nếu thông tin về độ dài gói này bị lỗi, bộ giải mã sẽ mất đồng bộ và như vậy sẽ làm mất thông tin ít nhất là một gói
Vì môi trường truyền dẫn phát sóng mà chúng ta quan tâm luôn có tạp nhiễu
và sai nhầm, do đó không thể dùng dòng chương trình được mà phải dùng dòng truyền tải
4 GHÉP KÊNH DÒNG TRUYỀN TẢI (TRANSPORT STREAM MUX)
Mô hình hệ thống ghép kênh dòng truyền tải TS chỉ ra trong hình 3.22 Nếu chia các gói PES có độ dài khác nhau thành các gói TS có độ dài không đổi (mỗi gói TS được bắt đầu bằng TS header và thường có chiều dài 188 byte) và truyền các gói này đi sau khi đã cộng với dòng bít điều khiển dùng để mô tả chương trình (cũng được đóng gói thành các gói truyền tải), dòng truyền tải TS được mô tả như hình 3.23
Hình 3.22: ghép kênh dòng truyền tải
Hình 3.23: Dòng truyền tải
Trang 10Trong dòng truyền tải, các gói PES từ các dòng sơ cấp khác nhau được phân nhỏ và gán vào phần payload của gói tần số Quy trình này phải thỏa mãn hai điều kiện:
Byte đầu tiên của mỗi gói PES phải trở thành byte đầu tiên của phần payload của gói TS
Bất kỳ gói TS nào cũng chỉ mang phần dữ liệu lấy từ cùng một gói PES
Mỗi gói PES không thể phân chia dữ liệu của nó một cách chính xác vào một số nguyên gói TS Thường gặp trường hợp không đủ số liệu để lắp đầy vào payload của gói TS cuối cùng Để thỏa mãn hai điều kiện trên, người ta độn thêm phần Adaptation Field với độ dài thích hợp Có thể giảm thiểu độ dài phần Adaptation Field này bằng cách lựa chọn chiều dài gói PES hợp lý Gói PES cũng thường được chọn đủ dài để đa số các gói TS được lắp đầy bởi số liệu có ích lấy từ các gói PES, hinh 3.24
Tất cả các gói sơ cấp PES ghép kênh chung với nhau tạo nên một hay nhiều chương trình sẽ được chuyển thành các gói TS theo cùng một cách thức nêu trên Các gói TS sẽ được sắp xếp tuần tự tạo ra dòng truyền tải Các gói TS chứa thông tin dịch vụ cũng như các gói TS rỗng được sử dụng để lấp đầy kênh truyền Thứ tự các gói TS có thể sắp xếp tùy ý miễn sao đảm bảo được điều kiện các gói TS của cùng một dòng sơ cấp đóng gói PES phải được truyền theo thứ tự thời gian
Hình 3.24: Chia các gói PES thành các gói TS
a cấu trúc gói truyền tải:
Gói truyền tải có kích thước cố định và bằng 188 byte, chia thành dữ liệu tiêu đề (header) và dữ liệu có ích (payload), hình 3.25
Trang 11Payload = Tải trọng của gói truyền tải; Star indicator = Bắt đầu chỉ thị; Transport
priority = Quyền ưu tiên truyền tải; Adaptation Field = mành thích nghi
Hình 3.25: Cấu trúc gói truyền tải
Dữ liệu tiêu đề có độ dài tối thiểu bằng 4 byte và chứa những thông tin sau:
Sync Byte (8 bit): Byte đồng bộ mang giá trị không đổi bằng 0x47 dùng để đồng bộ các gói TS, byte này sẽ được nhận biết bởi bộ giải mã Giá trị 0x47 không phải là giá trị duy nhất trong gói TS và có thể xuất hiện trong các trường của gói TS Tuy nhiên, hiện tượng Sync Byte lặp đi lặp lại mỗi 188 Kbyte cùng với giá trị 0x47 của nó sẽ tạo cơ sở để nhận dạng chỗ bắt đầu của một gói TS mới
Transport Error Indication (1 bit): bit này dùng để báo hiệu có lỗi gói xảy ra trên đường truyền – khi tỉ lệ sai nhầm bit (BER) vượt quá giá trị cho phép từ khâu điều chế đến khâu giải điều chế, phân kênh Giá trị một chỉ thị rằng đang
có lỗi không thể sửa được trong gói TS hiện hành, vì vậy không nên sử dụng phần payload trong gói TS này
Payload – Unit – Star Indicator (1 bit):bit này thiết lập 1 báo cho ta biết byte đầu tiên của phần payload chính là byte đầu tiên của gói PES mới (đối với số liệu video, audio) hay là phần đầu của một bảng (đối với thông tin đặc tả chương trình PSI)
Trang 12 Transport priority (1 bit): giá trị 1 chỉ thị gói TS này có quyền ưu tiên hơn các gói khác Nếu hệ thống truyền hình số không hổ trợ việc phân phối tín hiệu có
ưu tiên thì bit này sẽ được bỏ qua ở phía thu
Packet Identifcation hay PID (13 bit): đây là thông tin để nhận dạng gói TS thuộc một dòng sơ cấp đóng gói PES hay thuộc về một PSI cụ thể nào đó Trong 213 giá trị có thể có, 17 giá trị được dành riêng cho các mục đích đặc biệt Còn lại 8175 giá trị được dùng để gán cho các dòng gói sơ cấp PES hay PSI khác nhau Như vậy có thể ghép tối đa đến hơn 8000 dòng gói sơ cấp vào một dòng truyền tải
Các dòng bit cơ sở đóng gói PES và dòng bit điều khiển như đã nói ở trên gọi
là ánh xạ dòng cơ sở – được nhận biết bởi PIDs duy nhất của chúng trong giá trị đầu của mành Hình 3.26 là ví dụ về lớp truyền tải: trong ví dụ này PID được dùng như là một chỉ số của con trỏ chỉ tới chương trình đã định sẵn giá trị của PID trong dòng truyền tải Dòng bit điều khiển chứa bảng ánh xạ chương trình, nó diễn tả ánh xạ dòng cơ sở Bảng ánh xạ cũng bao gồm: các thông tin về các PIDs của dòng truyền tải, mà chúng tạo thành chương trình, để chúng nhận diện các ứng dụng (audio, video, data) truyền trên các dòng bit này Mối quan hệ giữa các dòng bit với các thông số khác
Hình 3.26: Lớp truyền tải
Transport Scrambing Control (2 bit): chỉ thị chế độ xáo trộn dữ liệu trong phần payload Đối với hệ thống truyền hình số, Transport Scrambing Control được định nghĩa:
00: không bị xáo trộn
Trang 13 00: dự phòng
01: không có Adaptation Field, chỉ có payload
10: chỉ có Adaptation Field, không có payload
11: theo sau Adaptation Field là payload
Continuity Counter (4 bit): giá trị này sẽ tăng lên 1 theo các gói TS kế tiếp nhau thuộc về cùng một gói sơ cấp PES (cùng PID) Điều này cho phép phía giải mã sắp xếp lại các gói TS theo đúng thứ tự, cũng như phát hiện các gói TS
bị mất, sẽ dùng phương pháp che dấu lỗi để khắc phục
Sự xuất hiện của trường thích ứng (Adaptation Field) được báo hiệu nhờ thông tin và Adaptation Field Control trong header Adaptation Field bao gồm các thông tin được sử dụng cho các chức năng giải mã bậc cao hơn, sử dụng các flag (cờ hiệu) để chỉ sự hiện diện của các trường mở rộng đặc biệt ở phía sau
Trường Adaptation Field có độ dài thay đổi gồm các thông tin sau đây:
Adaptation Field Length (8 bit): chỉ thị số lượng byte theo sau trong trường Adaptation Trường Adaptation có thể được sử dụng để chứa các byte độn mang giá trị 0xFF và không được phiên dịch tại phía giải mã Nếu có các byte Adaptation Field Length cũng phải tính cả các byte đó Giá trị Adaptation Field Length lúc đó sẽ được phía giải mã sử dụng để bỏ qua trường Adaptation Field
và đến thẳng trường payload trong gói
Discontinuity Indicator (1 bit): giá trị 1 cjỉ thị sự không liên tục của chuẩn đồng hồ (clock Reference) hoặc của bô đệm liên tục hoặc của cả hai
Random Access Indicator (1 bit): giá trị 1 chỉ thị gói PES kế tiếp là đầu một chuỗi video hay đầu một frame audio
ES Priority Indicator (1 bit): giá trị 1 chỉ thị độ ưu tiên cao hơn
PCR Flag (1 bit): giá trị 1 chỉ sự hiện diện của chuẩn đồng hồ chương trình PCR PCR được dùng để đồng bộ hóa quá trình giải mã Trong một số trường hợp, thông tin này có thể được sửa đổi trong quá trình truyền, PCR phải được truyền đi tối thiểu 1 lần mỗi 100ms
OPCR Flag (1 bit): giá trị 1 chỉ sự hiện diện của một PCR gốc Thông tin này không bị sửa đổi trong quá trình truyền và có thể được dùng để thu hoặc phát lại các chương trình đơn Phía thu không cần dùng OPCR trong quá trình giải
mã
Splicing Piont Flag (1 bit): chỉ sự hiện diện củaSpilie Countdown (số đếm ngược đến điểm ráp nối)
Transport Private Data Flag (1 bit): chỉ sự hiện diện của các byte dữ liệu riêng
Adaptation Field Extension Flag (1 bit): chỉ sự hiện diện của trường mở rộng trường thích nghi