Tóm tắt nội dungLuận văn được trình bày trong 3 chương : Chương 1: Giới thiệu tổng quát nhất về chuẩn nén MPEG, lý do cần phải nén dữliệu, các nguyên tắc cơ bản được sử dụng trong chuẩn
Trang 1Trần Văn Hoan
PHÂN TÍCH DÒNG TRUYỀN TẢI MPEG
(MPEG TRANSPORT STREAM)
KHOÁ LUẬN TỐT NGHIỆP ĐẠI HỌC HỆ CHÍNH QUY
Ngành: Công nghệ điện tử viễn thông
Cán bộ hướng dẫn: TS Ngô Thái Trị
Trang 2Tóm tắt nội dung
Luận văn được trình bày trong 3 chương :
Chương 1: Giới thiệu tổng quát nhất về chuẩn nén MPEG, lý do cần phải nén dữliệu, các nguyên tắc cơ bản được sử dụng trong chuẩn nén MPEG áp dụng cho dữ liệuhình ảnh cũng như âm thanh, giới thiệu những đặc điểm chung nhất của các chuẩn nénMPEG1, 2, 4 và 7, chương này cũng chỉ ra cách hình thành dòng bit MPEG
Chương 2: Mô tả cách thức hình thành, cấu trúc của dòng cơ sở ES, lý do cần thiếtphải chia dòng cơ sở thành các gói, cách thức tạo ra các gói cơ sở đóng gói PES đồngthời phân tích cấu tạo của một gói PES
Chương 3: Phân tích cách tạo thành dòng truyền tải MPEG, hoạt động của dòngtruyền tải, phân tích chi tiết cấu tạo và nhiệm vụ của từng trường trong gói truyền tải,cuối cùng là chỉ ra những đặc điểm ưu việt của dòng truyền tải MPEG làm cho chuẩnnén này có những ứng dụng rộng rãi trong thực tế
Trang 3Mục lục
Trang phụ bìa
Tóm tắt nội dung i
Mục lục ii
Bảng các kí hiệu viết tắt iv
Mở đầu 1
Chương 1 : Tổng quan về MPEG 2
1.1 Giới thiệu 2
1.2 Ứng dụng của nén dữ liệu: 4
1.3 Mã hóa không tổn hao và mã hóa dự đoán được 5
1.4 Nguyên lí cơ bản của nén 7
1.5 Nén video 9
1.5.1 Nén trong ảnh 11
1.5.2 Nén liên ảnh 11
1.5.3 Giới thiệu về phép bù chuyển động 12 1.6 Giới thiệu về MPEG-1 13
1.7 MPEG-2 cùng với các Profile và Level 14
1.8 Giới thiệu về MPEG -4 16
1.9 Giới thiệu về MPEG-7 18
1.10 Nén âm thanh 18
1.11 Dòng bit MPEG 20
Chương 2: Dòng cơ sở (elementary stream) và dòng cơ sở đóng gói (packetized elementary stream) 22
2.1 Dòng cơ sở (elementary stream) 22
2.2 Dòng cơ sở đóng gói (packetized elementary stream) 24
2.2.1 Giới thiệu chung về dòng cơ sở đóng gói 24
2.2.2 Cú pháp dòng cơ sở đóng gói 27
2.2.3 Cấu trúc chi tiết 32
Chương 3: Dòng truyền tải 38
Trang 43.1 Giới thiệu chung về dòng truyền tải: 38
3.2 Chuẩn đồng hồ (clock references) 39
3.3 Giải mã dòng truyền tải 41
3.4 Phân tích cú pháp dòng truyền tải 43
3.5 Đặc điểm dòng truyền tải MPEG 60
3.6 Tính linh hoạt của dòng truyền tải: 61
Kết luận 62
Tài liệu tham khảo 63
Trang 5Bảng các kí hiệu viết tắt
ABU Asia-Pacific Broadcasting Union
ANSI American National Standard Institute
ATSC Advance Television System Committee
CAT Conditional Access Table
CRC Cyclical Redundancy Checking
DCT Discrete Cosine Transform
DTS Decoding Time Stamp
DVB Digital Video Broadcasting
EBU European Broadcasting Union
ES Elementary Stream
GOP Group of Picture
HDTV High-definition Television
IEC International Electrotechnical Commission
ISO International Organization for Standardization
ITU International Telecommunication Union
MPEG Moving Pictures Experts Group
NIT Network Information Table
PAT Program Association Table
PCR Program Clock Reference
PES Packetized Elementary Stream
PID Packet Identification
PMT Program Map Table
PSI Program Specific Information
PTS Presentation Time Stamp
RLC Run Length Coding
SCR System Clock Reference
SDTV Standard Definition Television
TS Transport Stream
Trang 6Mở đầu
Công nghệ số từ khi ra đời đã ngày càng thể hiện tính ưu việt và thay thế dần côngnghệ tương tự vốn không hiệu quả và lỗi thời Ngày nay việc số hóa được thực hiện trênmọi dạng thức của dữ liệu, từ văn bản tới hình ảnh và âm thanh Các mạch điện tử tíchhợp được nghiên cứu chế tạo ngày càng nhiều có hiệu năng tính toán ngày càng cao, độtin cậy ngày càng chính xác làm cho công nghệ số ngày càng phát triển
Trong xu hướng số hóa mọi dạng dữ liệu như trên thì việc số hóa tín hiệu video làmột sự tất yếu Tuy nhiên tín hiệu video được số hóa có dung lượng quá lớn dẫn đến việclưu trữ và truyền dẫn hầu như không thể thực hiện được Do đó nảy sinh nhu cầu nén tínhiệu video Nhiều chuẩn nén được ra đời là kết tinh công sức của các chuyên gia, các nhàkhoa học hàng đầu trên thế giới Trong số các chuẩn nén đó thì chuẩn MPEG là chuẩnnén phổ biến nhất, có ứng dụng rộng rãi nhất Chuẩn nén này đã được nghiên cứu, pháttriển trong nhiều năm và đã giải quyết tốt bài toán nén tín hiệu video, kết quả là có thểđáp ứng một cách rất đa dạng các yêu cầu trong thực tế
Một thành phần quan trọng bậc nhất trong chuẩn nén MPEG là dòng truyền tải
MPEG (MPEG Transport Stream) Nhờ có dòng truyền tải mà dữ liệu có thể được đưa từ
nơi phát tới nơi thu một cách dễ dàng, chính xác và an toàn Hơn nữa dòng truyền tải cònrất mềm dẻo và linh hoạt, vừa hỗ trợ tốt cho các ứng dụng hiện tại vừa đảm bảo dễ dàngcho sự phát triển trong tương lai
Nhằm mục đích tìm hiểu một cách sâu sắc về cấu tạo và hoạt động của dòng truyềntải MPEG, em đã chọn đề tài này với mong muốn có được sự hiểu biết về một chuẩn nén
có ứng dụng rộng rãi nhất trong thực tế
Em xin chân thành cảm ơn thầy Ngô Thái Trị, người đã tận tình chỉ bảo và giúp đỡ
em trong quá trình làm luận văn, thầy đã chỉ cho em phương pháp nghiên cứu và cáchtrình bày luận văn một cách khoa học Em cũng xin cảm ơn các thầy cô trong Khoa Điện
tử viễn thông đã chỉ bảo cho em trong suốt quá trình học tập Em xin cảm ơn gia đình vàbạn bè đã giúp đỡ để em có thể hoàn thành luận văn này
Hà Nội, 5/2008
Trang 7Chương 1: Giới thiệu tổng quan về MPEG
1.1 Giới thiệu:
MPEG là viết tắt của cụm từ Moving Pictures Experts Group được thành lập bởi tổ chức ISO (International Standards Organization) nhằm thiết lập chuẩn cho việc nén và
truyền tải cả dữ liệu hình ảnh và dữ liệu âm thanh
Hình 1.1: (a) tổng quan của một hệ thống có nén, bên phía nguồn sử dụng bộ nén
gọi là compressor hay coder, bên phía nhận sử dụng bộ giải nén là expander hay decoder,
(b) minh họa sự bất đối xứng trong hệ thống, bộ mã hóa luôn phải phức tạp hơn bộ giảimã
Việc nén dữ liệu là tất yếu cần thiết do hai lý do chính sau đây Thứ nhất là do lưutrữ: dữ liệu sau khi nén có dung lượng nhỏ hơn, do vậy cần ít không gian lưu trữ hơn Thứhai là do băng thông: dữ liệu sau khi nén có tốc độ bit thấp hơn nên cần băng thông ít hơn
Tỉ lệ giữa tốc độ bit của nguồn so với tốc độ bit của kênh truyền gọi là tỉ lệ nén
Compression factor hay là Coding gain.
Hệ thống truyền tải là bất đối xứng Bộ mã hóa cần phải thông minh để thích ứnglinh hoạt với phần dữ liệu cần mã hóa, còn bộ giải mã chỉ cần làm đơn giản để có thể hiểuđược thông tin của kênh truyền mang tới Điều này thích hợp cho hoạt động quảng bá khi
Bộ mã hóa
chuẩn(a)
(b)
Dữ liệu vào
Trang 8mà số lượng thiết bị mã hóa ít còn số lượng bộ giải mã là rất nhiều Với những ứng dụngkiểu điểm-điểm thì hướng thiết kế như vậy không thể hiện được tính ưu việt.
Hình 1.2: (a) MPEG định nghĩa giao thức giữa bộ mã hóa và bộ giải mã (b) Hướng
thiết kế của MPEG là cho phép tạo ra bộ mã hóa tốt hơn trong tương lai nhưng vẫn đảmbảo tương thích với bộ giải mã hiện có (c) Chi tiết thiết kế của bộ mã hóa không nhấtthiết phải công khai, đó có thể là bí mật thương mại của nhà sản xuất
Hướng tiếp cận của MPEG là hết sức đúng đắn bởi vì chuẩn nén này không chuẩnhóa bộ mã hóa hay giải mã mà là chuẩn hóa dòng bít Dòng bít đảm bảo cho sự phát triểncủa bộ mã hóa trong tương lai có thể cho chất lượng tốt hơn nhưng những bộ giải mã hiện
Bộ mã hóa Bộ giải mã Tín hiệu Video Dòng bit Tín hiệu Video
MPEG định nghĩa phần này
Bộ mã hóa không được định nghĩa bởi MPEG trừ việc phải tạo ra dòng bit chuẩn
Bộ giải mã phải có khả năng hiểu được tất cả mọi dòng bit chuẩn Không định nghĩa
Bộ mã hóa hiện tại Bộ giải mã hiện tại
Bộ mã hóa trong tương lai
Bộ mã hóa có cấu trúc bí mật
Dòng bit chuẩn
Dòng bit chuẩn
Dòng bit chuẩn
Bộ giải mã hiện tại vẫn
có khả năng làm việc
Bộ giải mã có thể làm việc được
(a)
(b)
(c)
Trang 9nay vẫn có thể làm việc được, thậm chí có thể giải mã ngay cả khi bộ mã hóa là một bímật thương mại.
MPEG hầu như không đề cập gì về cấu trúc và hoạt động của bộ giải mã, mà chỉ đưa
ra cấu trúc của dòng bít và mọi bộ giải mã đều có khả năng giải mã dòng bit chuẩn này,mặc dù một số thiết kế sẽ cho ra chất lượng tốt hơn thiết kế khác Cấu trúc của bộ giải mãkhông cần phải thể hiện ra dòng bít và do vậy nhà sản xuất có thể sử dụng những thuậttoán khác nhau, chi tiết trong công nghệ của họ không cần phải công khai cho tất cả cùngbiết Điều này tạo nên sự cạnh tranh giữa các nhà sản xuất nhằm tạo ra thiết bị tối ưu nhất
Và người sử dụng có thể có nhiều lựa chọn hơn
MPEG không những là một chuẩn nén, mà còn định nghĩa cách thức và cú pháp để
có thể kết hợp hoặc trộn lẫn audio và video để tạo nên một chương trình truyền hình sốtương đương Nhiều chương trình có thể kết hợp với nhau tạo ra một dòng kết hợp.MPEG định nghĩa cách tạo và vận chuyển dòng kết hợp này Định nghĩa này cũng nêu ranhững yêu cầu phần cứng mà bộ giải mã cần phải thỏa mãn để có thể giải mã chính xác
và người sử dụng cần gì để có thể tìm thấy chương trình của mình
Vấn đề đồng bộ ở đây là vấn đề phức tạp bởi dòng kết hợp được tạo ra bởi nhiềuchương trình không nhất thiết phải đồng bộ với nhau
1.2 Ứng dụng của nén dữ liệu:
Ứng dụng của nén dữ liệu là vô cùng rộng lớn và do vậy tổ chức ISO đã cố gắng tạo
ra một chuẩn nén có thể đáp ứng nhu cầu rộng lớn trong các ứng dụng cần nén
Chuẩn nén MPEG bao hàm tất cả từ những chuẩn cho màn hình nhỏ cỡ màn hìnhcủa máy điện thoại cho tới những ứng dụng phân giải cao phục vụ cho việc chiếu phimtrong rạp, từ những ứng dụng âm thanh mono đến âm thanh đa kênh và âm thanh vòng.Trong truyền thông, giá phải trả cho một đường truyền thường tỉ lệ với tốc độ dữliệu, và do áp lực tài chính mà người ta luôn muốn sử dụng hệ số nén cao Song luôn luônphải nhớ trong đầu rằng bản thân việc làm tăng được hệ số nén cũng luôn có cái giá phảitrả về mặt kinh tế và điều này là không thể tránh khỏi
Trong trường hợp video theo yêu cầu, công nghệ được nghiên cứu để có thể truyềntải đầy đủ băng thông của video đến người sử dụng, song nếu như vậy thì quá đắt đỏ, nếukhông nén HDTV cần quá nhiều băng thông, nếu được nén HDTV có thể truyền được qua
Trang 10kênh SDTV sẵn có với yêu cầu băng thông tương tự Việc nén này không phải là điều bătbuộc về công nghệ mà chỉ là do yêu cầu kinh tế.
Trong các studio có nhiệm vụ dựng phim, người ta cần lưu trữ những đoạn video,audio vào đĩa cứng để có thể tăng thời gian truy xuất Mặc dù hệ thống xử lý ở cấp caonhất phải sử dụng dữ liệu không nén nhưng người ta vẫn nén lại để tăng được dung lượnglưu trữ của đĩa cứng
Việc sử dụng hệ số nén như thế nào trong truyền thông có ý nghĩa rất quan trọng khi
mà phổ tần bị hạn chế trong khi nó lại cần thiết cho rất nhiều dịch vụ khác ví dụ như điệnthoại di động Do đó yêu cầu sử dụng phổ tần một cách hiệu quả là một yêu cầu bắt buộc.Truyền hình tương tự là công nghệ cũ và sử dụng phổ tần kém hiệu quả nhất do đó nó bịthay thế bởi truyền hình số là một sự tất yếu do trong thực tế phổ tần còn cần cho nhiềuviệc khác
Trên thị trường hiện nay có rất nhiều bộ giải mã cho người dùng chọn lựa được sảnxuất từ những mạch tích hợp giá rẻ Trong khi chỉ có một số ít bộ mã hóa nên việc chúng
có đắt thì cũng không quan trọng lắm Xu hướng hiện nay là thiết bị lưu trữ thì càng nàycàng rẻ còn phổ tần thì càng ngày càng đắt do vậy trong tương lai việc nén trong việc lưutrữ là không cần thiết trong khi nén để truyền thông sử dụng sóng vô tuyến sẽ càng tănglên
1.3 Mã hóa không tổn hao và mã hóa dự đoán được.
Mặc dù có nhiều công nghệ được sử dụng để nén nhưng chúng có thể được phânthành các loại sau đây
Với nén không tổn hao, đầu ra của bộ giải mã là tương ứng bit-bit so với dữ liệu gốc
Nó cũng được gọi như là một chương trình stacker sử dụng trong máy tính cá nhân đểtăng dung lượng đĩa sử dụng những bộ codec không tổn hao Sự sai lệch dù chỉ một bitvới chương trình máy tính có thể có hậu quả nghiêm trọng Bằng cách này hệ số nénthường chỉ đạt được khoảng 2:1
Chúng ta có thể nhận thấy rằng bộ mã hóa không tổn hao không thể đảm bảo một hệ
số nén cho trước và do đó đường truyền hoặc là bộ ghi sẽ phải làm việc với tốc độ dữ liệu
ra luôn biến đổi Bộ mã không tổn hao có thể đi kèm với quá trình kiểm lỗi
Trang 11Hệ số nén cao chỉ có thể đạt được với bộ nén có tổn hao Dữ liệu đi ra khỏi bộ giải
mã không phải tương ứng bit-bit với dữ liệu nguồn và so sánh giữa chúng ta sẽ thấy sựkhác nhau Nén có tổn hao không thích hợp với việc sử dụng cho dữ liệu máy tính, nhưngđược sử dụng trong chuẩn MPEG cho hệ số nén cao hơn rất nhiều so với nén không tổnhao Bộ nén có hiệu quả là bộ nén làm cho những lỗi xuất hiện ở nơi mà cơ quan thị giáchoặc thính giác của con người rất khó có thể phát hiện được Do vậy bộ codec này phảidựa trên sự hiểu biết về cảm nhận của mắt và tai người và chúng được gọi là bộ mã cảm
nhận (perceptive codec).
Trong bộ mã hóa có tổn hao, hệ số nén đạt được cao hơn nhiều Các cơ quan cảmnhận của con người cần được mô hình chính xác Bộ mã này có thể cho một hệ số nén cốđịnh Điều này thuận lợi cho việc truyền thông trong thực tế khi mà dữ liệu tốc độ cố địnhluôn luôn dễ dàng làm việc hơn là dữ liệu có tốc độ thay đổi Kết quả của việc hệ số nén
cố định là chất lượng đầu ra thay đổi theo độ phức tạp của đầu vào Bộ mã kiểu nàykhông thể móc nối vào nhau một cách tùy ý nếu chúng sử dụng những thuật toán khácnhau Do dữ liệu sau bộ giải mã không phải tương ứng bit-bit với dữ liệu nguồn do vậykhông có bộ kiểm lỗi nào trong bộ codec này và cũng không thể phân biệt được lỗi do bộ
mã hóa hay là lỗi do truyền thông
Hình 1.3: Công nghệ nén sử dụng trong truyền hình tương tự
Composite NTSC/PALL/
SECAM
Compress(lossy)
Compress
Compress(lossy)
(a)
(b)
(c)
Trang 12Dù là công nghệ số mới được chấp nhận gần đây song việc nén thì đã có từ rất lâukhi mà có công nghệ truyền hình Hình 1.3 chỉ ra những công nghệ nén sử dụng trong TVtruyền thống.
Hầu hết tín hiệu video đều có mối liên hệ không tuyến tính giữa độ sáng và mức thếcủa tín hiệu được gọi là hiện tượng gamma Gamma là công nghệ nén cảm nhận dựa trên
sự cảm nhận của con người về lỗi hình ảnh là một hàm của độ sáng Công nghệ này chophép mức độ lỗi do mã hóa 8-bit chỉ như là mã hóa tuyến tính 14-bit
Một công nghệ sử dụng lâu đời nhất là công nghệ trộn (interlace) được sử dụng
trong công nghệ tương tự để làm giảm băng thông
Việc tạo ra tín hiệu TV màu từ RGB là một minh họa của bộ mã cảm nhận Hệ thốngcảm nhận của con người không cảm thấy sự khác biệt về chất lượng mặc dù băng thôngcủa tín hiệu màu được giảm đi Điều này là do cảm nhận của mắt người về thay đổi màusắc kém hơn nhiều so với thay đổi độ sáng Hướng tiếp cận này còn được sử dụng trongchuẩn nén MPEG
1.4 Nguyên lí cơ bản của nén.
Trong hệ thống PCM, tốc độ bit được quyết định do tần số lấy mẫu và số bit trênmỗi mẫu, giá trị này thường là cố định
Ngược lại, lượng thông tin thì luôn thay đổi Với những tín hiệu thực luôn có nhữngphần có thể biết trước từ phần trước đó hoặc sau đó, một bộ giải mã có khả năng dự đoán
có thể đoán được phần này và do vậy việc gửi những dữ liệu này đi là không cần thiết, chỉ
có thông tin thực sự mới được gửi đi Nếu đặc điểm của bộ giải mã là biết trước thì phíagửi có thể bỏ qua những thông tin mà bên thu có thể tự tái tạo lại được Và do vậy thì bộ
mã hóa luôn hoạt động với một kiểu của bộ giải mã
Sự khác biệt giữa tốc độ thông tin và tốc độ dòng bit gọi là độ dư thừa Hệ thống nénđược thiết kế để làm giảm càng nhiều càng tốt sự dư thừa này trong phạm vi có thể Mộtcách làm điều này là khai thác tính chất dự đoán trước bằng thống kê Entropy hay lượngthông tin là hàm của sự khác biệt giữa giá trị của nó với giá trị được dự báo trước Hầuhết các tín hiệu có một số bậc dự đoán Tín hiệu hình sin hoàn toàn có thể đoán trước bởimọi chu kì chúng đều như nhau Theo lý thuyêt Shanon thì một tín hiệu hoàn toàn có thể
dự báo trước thì không mang thông tin Trong trường hợp sóng sin thì điều này là hoàn
Trang 13toàn đúng bởi nó biểu diễn một tần số đơn và không chiếm dải thông Ngược lại với
trường hợp trên, tín hiệu như là ồn thì hoàn toàn không thể đoán trước được.
Một điểm cần lưu ý là một bộ mã làm việc tốt với dữ liệu “sạch” có thể sẽ không
làm việc tốt nữa khi mà có ồn cộng thêm vào Hầu hết các bộ nén trong thực tế luôn đikèm với bộ tiền xử lý, một bộ giảm ồn thường được thêm vào bộ này khi mà tín hiệu ồn làkhông thể dự đoán trước được
Hình 1.4: (a) bộ mã hóa lý tưởng không tổn hao chỉ tách ra phần dư thừa của dữ
liệu, dữ liệu ban đầu không hề bị mất thông tin, với bộ mã hóa có tổn hao thì một phầnlượng thông tin sẽ bị mất đi (b) Khi hệ số nén tăng thì độ phức tạp của bộ mã phải tănglên để đảm bảo chất lượng (c) Hệ số nén cao có xu hướng làm tăng độ trễ của hệ thống.Hình a cho thấy lượng entropy cần được truyền đi Bộ mã lý tưởng cần tách ra đượcphần này và chất lượng tín hiệu được khôi phục lại là hoàn hảo Hình b cho thấy hệ sốnén càng cao thì càng phức tạp Hình c cho thấy càng nén nhiều thì trễ càng tăng
Tần số
Bậc tín hiệu
Độ phức tạp
Hệ
số né n
Chất lượng xấu
Chất lượng tốt
Độ trễ
Hệ
số né n
Chất lượng xấu
Chất lượng tốt
Mã hóa có tổn hao (a)
Trang 14Hiển nhiên rằng chúng ta cần phải cung cấp một kênh truyền đủ để có thể truyền đientropy được bộ mã hóa lấy ra Nếu dung năng kênh truyền không đủ thì bộ mã hóa sẽphải bỏ qua một phần entropy kèm theo đó là phần thông tin có ích
Một kênh truyền đơn có tốc độ thay đổi là kênh truyền có từ lâu nhưng không phổbiến lắm với các nhà cung cấp, hiện nay đã có những hệ thống mới như là ATM hỗ trợkênh có tốc độ thay đổi Truyền thông số sử dụng trong DVB là tốc độ cố định Yêu cầutốc độ biến đổi có thể được khắc phục bằng cách kết hợp một số kênh có tốc độ thay đổithành một kênh có tốc độ cố định bằng cách phân bố hợp lí tốc độ dữ liệu giữa các kênh.Khả năng tất cả các kênh truyền cùng một lúc đều đạt đỉnh entropy là rất nhỏ do vậy vớimột kênh có tốc độ cho trước thì những kênh có dữ liệu ít phức tạp, yêu cầu ít băng thông
sẽ được truyền cùng với những kênh có dữ liệu phức tạp, yêu cầu băng thông lớn Đây là
nguyên lí cơ bản của việc kết hợp các kênh
Với những nguồn thông tin được tạo nên từ những phần tử cơ bản giống nhau, ví dụnhững bản tin viết bằng tiếng Anh chẳng hạn, ta có thể tiến hành thống kê xác suất xuấthiện của từng chữ cái Mã hóa chiều dài thay đổi là mã mà sử dụng những từ mã ngắn chonhững kí tự có tần số xuất hiện cao, còn những kí tự tần số xuất hiện thấp sử dụng mã cóchiều dài lớn hơn Mã này là một loại mã không mất thông tin Mã rất nổi tiếng là mãMorse là mã sử dụng phương pháp này Chữ cái e thường xuyên xuất hiện trong tiếng
Anh vì vậy nó được biểu thị bởi một chấm đơn (single dot), còn chữ cái z ít xuất hiện và
nó được minh họa bởi một mã rất dài Hoàn toàn có thể nhận thấy là bộ mã này dựa trên
sự hiểu biết về tần số các kí tự đã được thống kê trước Nếu sử dụng mã này cho ngônngữ khác có thể sẽ không hiệu quả nữa, ví dụ như chữ cái z là rất phổ biến với tiếng Séc
Mã Huffman là mã làm việc với những số liệu thống kê của nguồn dữ liệu đã biếttrước Việc truyền thông được nghiên cứu trước, sau đó người ta sẽ dành những từ mãngắn để mô tả cho những tín hiệu có tần số xuất hiện cao, ngược lại từ mã dài sẽ chonhững tín hiệu có tần số xuất hiện thấp
1.5 Nén video
Trang 15Hình 1.5: (a) Nén trong ảnh chỉ làm việc trên 1 ảnh đơn duy nhất (b) Nén liên ảnh
làm việc với một chuỗi các ảnh
Hình 1.5a là mã hóa của một hình ảnh riêng rẽ Đây được gọi là mã hóa đơn ảnh hay
mã hóa không gian (spatial compress) Một lợi điểm của việc nén trong ảnh là có thể biên
tập trực tiếp từng ảnh một không cần liên quan tới các ảnh khác trong chuỗi Một sốchuẩn nén sử dụng nén trong ảnh là Digital Betacam, DVC, D-9 Chuẩn ISO JPEG là một
trong các chuẩn nén kiểu này Ứng dụng của chuẩn JPEG trong truyền hình là ‘Motion
JPEG’.
Hệ số nén cao hơn thu được bằng cách giảm lượng dư thừa thông tin từ ảnh này sovới ảnh trước đó Nén theo cách này là nén theo trục thời gian Được gọi là nén liên ảnh
hay inter-coding compress Nén kiểu này cho hệ số nén cao nhưng có một nhược điểm là
một ảnh chỉ có được bằng cách có ảnh trước đó cộng thêm với phần sai khác Việc canthiệp vào một ảnh riêng lẻ trong dòng bit MPEG là không thể và sự sai lệch của một ảnh
có thể kéo theo sự khôi phục không chính xác cho các ảnh tiếp theo đó
Các thuật ngữ thường được sử dụng là:
Ảnh I (Intra-picture): là ảnh chỉ sử dụng nén trong ảnh, mang thông tin về một
ảnh hoàn chỉnh Ảnh I cho phép truy cập ngẫu nhiên, có độ nén thấp nhất
Ảnh P (Predicted-picture): ảnh dự đoán trước, là ảnh được mã hóa có bù chuyển
động từ ảnh I hoặc ảnh P phía trước
Nén trong ảnh loại bỏ phần dư thừa trong một ảnh
Nén liên ảnh loại bỏ phần dư thừa giữa các ảnh (a)
(b)
Trang 16Ảnh B (Bi-directional predicted picture): ảnh dự đoán hai chiều, là ảnh được mã
hóa sử dụng bù chuyển động từ các ảnh I hoặc P trước và sau Ảnh B cho hệ số nén làcao nhất
1.5.1 Nén trong ảnh.
Đây là loại nén làm giảm độ dư thừa trong miền không gian, chỉ thực hiện nén trên
dữ liệu của một ảnh, không sử dụng thông tin của các ảnh trước hoặc sau đó
Phân tích hình ảnh TV thông thường chỉ ra rằng các thành phần tần số cao thể hiệnchi tiết của hình ảnh, và chỉ có phần nhỏ năng lượng là của các thành phần này Tronghình ảnh cũng tồn tại những vùng mà trong đó các điểm là tương tự giống nhau, nhữngđiểm như thế này nằm ở vùng tần số thấp Vùng có độ sáng như nhau nằm ở tần số bằng
0 Việc bỏ qua những vùng có tần số cao là không thể được bởi nó tạo nên độ rõ ràng,mềm mại của hình ảnh
Tuy vậy các thành phần tần số cao chỉ chiếm một phần nhỏ năng lượng nên cần it bit
để mã hóa hơn, đồng thời sai số ở những vùng có tần số cao thì con người cũng khó nhậnbiết hơn Nhờ sử dụng đặc điểm này mà việc nén trở nên có hiệu quả
1.5.2 Nén liên ảnh.
Nén liên ảnh sử dụng tính chất tương tự giữa các ảnh kế tiếp Thay vì truyền thôngtin của từng ảnh riêng rẽ, phương pháp này truyền đi sự sai khác giữa ảnh hiện tại với ảnhtrước đó bằng kiểu mã hóa vi sai
Hệ thống mô tả ở hình 1.6a bị hạn chế ở chỗ nếu kênh truyền có lỗi thì nó sẽ gây tácđộng đến mọi ảnh tiếp theo đó Để khắc phục hiện tượng này một ảnh chính xác sẽ đượctruyền đi theo chu kỳ thay vì truyền sự sai khác so với ảnh trước đó
Việc biên tập dòng bit chỉ có thể thực hiện ở tại những điểm mà ảnh I xuất hiện
Trang 17Hình 1.6: (a) Hệ thống nén liên ảnh sử dụng một ảnh trễ để so sánh sự khác biệt với
ảnh hiện tại (b) Để tránh lỗi xảy ra trên đường truyền, ảnh I được gửi đi theo chu kỳ
1.5.3 Giới thiệu về phép bù chuyển động.
Trong khi thực hiện quay một chương trình TV, một đối tượng có thể đứng yên trướcmột camera chuyển động hoặc bản thân đối tượng chuyển động trước một camera đặt cốđịnh Bù chuyển động là quá trình mà đo đạc chính xác hướng chuyển động của đối tượng
từ hình ảnh hiện tại sang hình kế tiếp, do đó mà phần chuyển động được tách riêng ra, làmgiảm độ dư thừa giữa các hình ảnh Hình 1.7 mô tả một ví dụ của chuyển động của đốitượng giữa các ảnh
Tất cả hình ảnh thì chuyển động theo trục thời gian, còn bản thân đối tượng thì di
chuyển theo trục optic flow axis Trục này sẽ chỉ ra hướng chuyển động của đối tượng từ
ảnh này sang ảnh kế tiếp
Một điều hiển nhiên là dữ liệu diễn tả sự chuyển động của đối tượng sẽ thay đổi tương
ứng với thời gian Tuy nhiên nếu nhìn theo trục optic flow axis thì hình ảnh của đối tượng
chỉ thay đổi nếu chính bản thân đối tượng đó bị biến dạng, di chuyển vào bóng tối hoặc bị
Trễ 1 ảnh
+
-Sự khác biệt Thời gian
Điểm ảnh hiện tại Điểm ảnh ở
ảnh trước đó
(a)
Gửi ảnh I Gửi sai khác D Gửi sai khác D Gửi sai khác D Gửi ảnh I
(b)
Trang 18xoay đi Do vậy dữ liệu dư thừa được loại bỏ đáng kể nếu như chúng ta biết được trụcchuyển động Khi ấy hệ số nén thu được sẽ cao hơn nhiều.
Hình 1.7: Chuyển động của đối tượng trong không gian 3 chiều sẽ theo trục optic
flow axis.
Một bộ mã hóa bù chuyển động hoạt động theo nguyên tắc sau Một ảnh tham chiếuđược gửi đi, nhưng được lưu trữ để so sánh với các ảnh khác để tìm ra vector chuyểnđộng cho những phần khác nhau trên ảnh Ảnh tham chiếu này được dịch đi theo cácvector chuyển động để loại bỏ đi phần chuyển động giữa các ảnh Ảnh này được gọi làảnh dự đoán trước Sau đó ảnh này sẽ được so sánh với ảnh thực để phát hiện ra sai số dựđoán Sai số dự đoán được truyền đi cùng với vector chuyển động Ở nơi thu, ảnh thamchiếu được lưu giữ trong bộ nhớ Nó được dịch đi bởi các vector chuyển động và cuốicùng là lỗi được sửa lại để tạo ra ảnh gốc
1.6 Giới thiệu về MPEG-1
MPEG-1 được thiết kế ban đầu nhằm mã hóa ảnh động và âm thanh thành dòng bit
có tốc độ của audio Compact Disc Kết quả tạo ra Video- CD nhưng hiện nay đã đượcthay thế bởi DVD Để có được tốc độ bít thấp MPEG-1 chỉ sử dụng tỉ lệ hình ảnh từ 24-30Hz cho kết quả là chất lượng chỉ ở mức trung bình
Để đạt được tốc độ bit này, MPEG-1 giảm tốc độ lấy mẫu bằng một nửa TV chuẩn
Cụ thể là với hệ thống 25Hz hình ảnh có kích thước là 352 × 288 điểm ảnh, còn với hệ
30Hz là 352 × 240 điểm ảnh Định dạng như vậy được gọi là common intermediate
Trục thời gian
Trục tung Trục hoành
Optic flow axis
Trang 19format (CIF) Với tín hiệu đầu vào là tín hiệu video tổng hợp, CIF có thể nhận được bằng
cách giảm tốc lấy mẫu các dòng tích cực xuống một nửa
Chuẩn nén này dường như có vẻ rất đơn sơ, song cho tốc độ bit thấp Tuy vậy nócũng được đánh giá là đã cung cấp những công cụ mã hóa quan trọng mà còn được tiếptục sử dụng trong MPEG-2 và MPEG-4 Chúng bao gồm cú pháp dòng cơ sở, bù chuyểnđộng, điều khiển tốc độ bit … Nhiều nguyên lí mã hóa của MPEG-1 được lấy ra từJPEG Chuẩn MPEG-1 cũng định ra việc mã hóa audio hai kênh
1.7 MPEG-2 cùng các Profile và Level
MPEG-2 được xem là một chuẩn có ứng dụng rất rộng lớn Ví dụ MPEG-2 hỗ trợ độphân giải cao (HD) mà MPEG-1 không có Chuẩn này càng trở nên quan trọng khi nóđược chọn làm chuẩn nén cho DVB và DVD Chuẩn MPEG-3 dự định thiết kế cho
HDTV nhưng người ta nhận thấy MPEG-2 (cùng với các mở rộng của chuẩn này) có thể
đáp ứng các yêu cầu này do vậy mà ko có chuẩn MPEG-3
Hình 1.8: Các Profile và Level trong MPEG-2
MPEG-2 được xây dựng trên cơ sở MPEG-1 với sự mở rộng về phạm vi kích thướchình ảnh và tốc độ bit Việc ghép các dòng bit với nhau cũng được giải quyết trong chuẩn
Trang 20MPEG-2 Chuẩn MPEG-2 là sự mở rộng của chuẩn MPEG-1 vì vậy một điều dễ hiểu là
bộ giải mã MPEG-2 có thể làm việc được với dòng bit của MPEG-1
Với một chuẩn duy nhất nhưng MPEG-2 có thể giải quyết được rất nhiều yêu cầuứng dụng Chuẩn này được chia nhỏ thành các Profile và Level Các Profile thể hiện độphức tạp còn các Level thể hiện kích cỡ hình ảnh hoặc độ phân giải đi kèm với Profiletương ứng Không phải tất cả các Level đều hỗ trợ mọi Profile
Một bộ giải mã MPEG-2 với Profile và Level cho trước có thể giải mã Profile vàLevel thấp hơn
Một số hệ thống nén có khả năng tạo ra tín hiệu có thể phân cấp (scaleable signal).
Quá trình này là quá trình mà sau khi cho tín hiệu đầu vào thì ta sẽ thu được tín hiệu đầu
ra gồm có một tín hiệu chính (main signal) và một tín hiệu hỗ trợ ( helper signal) Bản
thân tín hiệu chính có thể được giải mã độc lập cho chất lượng hình ảnh nhất định, nhưngnếu có thêm tín hiệu hỗ trợ thì chất lượng hình ảnh sẽ được tăng lên
Hình 1.9: (a) Bộ phân cấp theo tỉ lệ tín/tạp cho ra một tín hiệu có tỉ số tín/ồn ở mức
trung bình và một tín hiệu để giảm ồn (b) Bộ phân cấp theo không gian cho ra một tínhiệu ở mức trung bình và một tín hiệu để tăng chất lượng hình ảnh
Bộ mã hóa có khả năng phân cấp theo SNR
Hình ảnh chất lượng trung bình
Hình ảnh có chất lượng tốt hơn
Tín hiệu cơ bản
Tín hiệu tăng cường Tín hiệu vào
(a)
Bộ mã hóa có khả năng phân cấp theo không gian
Hình ảnh độ phân giải thấp
Hình ảnh độ phân giải cao
Tín hiệu cơ bản
Tín hiệu tăng cường (b)
Tín hiệu vào
Trang 21Hình 1.9a chỉ ra một bộ mã hóa MPEG, bằng cách lượng tử lại có trọng số sẽ thuđược một hình ảnh có tỉ lệ tín/tạp ở mức trung bình Tại bộ giải mã, hình ảnh này hoàntoàn có khả năng tái tạo lại, nhưng kèm theo đó chắc chắn là có ồn lượng tử lớn làm chấtlượng hình kém hơn Sự sai khác do ồn này có thể được nén và gửi đi như là tín hiệu hỗtrợ Một bộ giải mã đơn giản thì chỉ giải mã tín hiệu chính còn bộ giải mã phức tạp hơnthì có thể giải mã cả tín hiệu chính và tín hiệu hỗ trợ cho kết quả là một hình ảnh ở mức
ồn thấp Đây là nguyên lí của bộ phân cấp theo tỉ lệ tín/tạp
Hình 1.9b là nguyên lí của bộ phân cấp theo không gian Nếu chỉ cần mã hóa ở mứctrung bình thì một tí hiệu có độ phân giải trung bình được tạo ra và có thể được giải mãbằng TV có độ phân giải tiêu chuẩn SDTV Nhưng nếu gửi kèm vào đó một tín hiệu tăngcường thì một bộ giải mã thích hợp tại nơi thu có thể kết hợp cả hai tín hiệu để cho rahình ảnh có độ phân giải cao HDTV
Chuẩn MPEG-2 tăng số kênh âm thanh lên tới 5 kênh nhưng vẫn đảm bảo tươngthích với MPEG-1 Ngoài ra MPEG-2 còn có những phương pháp mã hóa âm thanh kháchiệu quả hơn nhưng không tương thích ngược với MPEG-1 Đó là chuẩn nén MPEG-2
AAC (advance audio coding).
1.8 Giới thiệu về MPEG -4
MPEG-4 sử dụng những công cụ phức tạp hơn nữa nhằm mang lại hệ số nén caohơn MPEG-2 MPEG-4 được mong đợi là sẽ có nhiều ứng dụng trong Internet vàWireless như là MPEG-2 đã có trong DVB và DVD
MPEG-4 đưa ra một số các công cụ mã hóa mới được minh họa trong hình 1.10 Ởchuẩn MPEG-1 và MPEG-2 việc bù chuyển động được thực hiện trên từng khối ảnh có
kích thước cố định gọi là macroblocks Điều này cho phép bộ mã làm việc tốt ở tốc độ đã được thiết kế, tuy nhiên các macroblocs này không phải lúc nào cũng được tính toán
chính xác với chiều chuyển động của vật thể thực Điều này làm tăng số bit dư thừa Ởchuẩn MPEG-4, đối tượng động có thể được mã hóa với hình dạng tùy ý Đối tượng động
có thể được mô tả bởi các vector chuyển động và sẽ làm giảm được nhiều dữ liệu dư thừa.Tùy theo từng Profile, đối tượng động có thể là hai chiều hoặc ba chiều, chắn sáng hay làtrong suốt Bộ giải mã phải có khả năng xắp xếp từng lớp đối tượng theo độ gần xa củađối tượng đó so với người xem thành một hình ảnh thực Mã hóa hình ảnh trong chuẩn
MPEG-4 được gọi là mã hóa xếp lớp (texture coding) và cho kết quả tốt hơn MPEG-2.
Trang 22Hình 1.10: MPEG-4 đưa ra một số các công cụ mới mà các chuẩn trước đó không
có Bao gồm mã hóa đối tượng, mã hóa dạng lưới (mesh coding), mã hóa ảnh tĩnh, thể
hiện trạng thái của khuôn mặt và cơ thể
Để tăng cường việc bù chuyển động, chuẩn MPEG-4 còn có khả năng mô tả một đốitượng di chuyển theo hướng về gần hoặc ra xa là bao nhiêu bằng cách sử dụng công nghệ
gọi là mã hóa dạng lưới (mesh coding) Bằng cách làm cong hình ảnh (warping image),
việc dự đoán hình ảnh hiện tại được tăng cường MPEG-4 cũng đưa ra cách mã hóa hìnhảnh dùng biến đổi cosin rời rạc DCT hoặc dùng wavelet
Chuẩn MPEG-2 đã hỗ trợ một số dạng phân cấp như đã mô tả ở trên, chuẩn MPEG-4còn phát triển xa hơn nữa Ngoài phân cấp theo không gian và theo tín/tạp như MPEG-2thì MPEG-4 còn hỗ trợ phân cấp theo thời gian Một dòng bit ở cấp cơ sở có tỉ lệ khunghình nhất định có thể kết hợp với một dòng bít hỗ trợ thêm để giải mã cho ra hình ảnh có
tỉ lệ khung hình cao hơn Điều này quan trọng ở chỗ nó cho phép chúng ta phát triểnnhững chương trình có tốc độ khuôn hình cao hơn so với tốc độ chuẩn của TV và phimhiện tại nhưng vẫn đảm bảo tương thích với các thiết bị truyền thống Nó cũng được ứngdụng trong mạng internet, cho phép người dùng có chất lượng hình ảnh tốt nhất ứng vớikhả năng đường truyền mà họ có
MPEG-4 còn đưa ra những chuẩn cho việc thể hiện kích thích tình cảm trên khuônmặt và cơ thể Những vector đặc biệt cho phép một hình ảnh tĩnh của khuôn mặt hoặc có
Visual object:
Part of scene which can be independently accessed and
manipulated Object coding
Video Object
Still texture object
Mesh object
Face and body animation object
Trang 23thể kèm theo cả phần cơ thể được kích thích kèm theo cả giọng nói với tốc độ bit rất thấp.Điều này rất có ý nghĩa với những hệ thống như là hệ thống giả lập hay trò chơi điện tử,khi đối tượng mà người sử dụng điều khiển di chuyển khắp màn hình Điểm bất lợi củaviệc nén theo kiểu này là tăng thêm độ phức tạp của bộ mã nhưng với sự phát triển trongcông nghệ xử lí số, mạch tích hợp giá thành ngày càng rẻ thì đây rõ ràng không phải làvấn đề quá lớn.
Như đã được mong đợi trước khi ra đời, với hệ thống công cụ rất lớn, chuẩn
MPEG-4 đã đáp ứng một cách hoàn hảo cho rất nhiều ứng dụng, cũng như là MPEG-2 đã hỗ trợcác ứng dụng khác nhau bằng cách chia ra các Profile và Level
1.9 Giới thiệu về MPEG-7
Ngày nay khi mà các dữ liệu hình ảnh và âm thanh được số hóa ngày càng trở nênphổ biến cùng với sự phát triển của máy tính và internet thì khối lượng các dữ liệu trên trởthành khổng lồ Điều đó dẫn đến việc tìm kiếm được một đoạn âm thanh hoặc hình ảnhphù hợp với sở thích của người sử dụng là vô cùng khó khăn Với những dữ liệu dạng kí
tự (như văn bản kiểu text, doc, html… ) thì đã có những giải pháp tìm kiếm hiệu quả,trang web www.google.com là một ví dụ điển hình trong lĩnh vực tìm kiếm Tuy nhiênvới dữ liệu đa phương tiện thì vấn đề là vô cùng phức tạp
MPEG-7 ra đời nhằm mục đích giải quyết vấn đề này Chuẩn này thường được gọi là
Giao diện mô tả nội dung đa phương tiện - Multimedia Content Description Interface Nó
cho phép tìm kiếm một cách nhanh chóng và hiệu quả các dữ liệu đa phương tiện theo nội
dung Ban đầu MPEG-7 được thiết kế với mục đích cung cấp thêm một chức năng bổ
sung cho các chuẩn MPEG trước đó để đưa ra thông tin về nội dung của dữ liệu Sau nàythì chức năng này trở thành tiêu chuẩn của việc mô tả nội dung đa phương tiện Nhưchúng ta đã biết, chuẩn MPEG-4 là chuẩn nén được xây dựng trên việc mã hóa đối tượng
do vậy đây là nền tảng tốt để xây dựng MPEG-7 MPEG-7 có thể được sử dụng độc lậpvới các chuẩn nén trước đó Nhưng cũng cần lưu ý là chuẩn MPEG-7 không thể thay thếhoàn toàn các chuẩn MPEG-1, MPEG-2 hay MPEG-4
1.10 Nén âm thanh
Các hệ thống nén audio được xây dựng trên cơ sở nghiên cứu về đặc tính sinh lícũng như giới hạn thính giác của con người nhằm loại bỏ thành phần thông tin dư thừatrong các tín hiệu audio
Trang 24Hệ thống thính giác con người (HAS – Human Auditory System) hoạt động như một
bộ phân tích phổ, các thành phần phổ của âm thanh được phân tích độc lập qua các bộ lọcthông dải gọi là các dải băng chuẩn Các dải băng chuẩn có độ rộng 100Hz khi tần sốdưới 500Hz còn khi tần số lớn hơn 500Hz thì độ rộng băng tỉ lệ với tần số Do vậy trênthực tế âm thanh được chia thành 25 dải băng con tương ứng với 25 bộ lọc ốc tai theo quyluật tự nhiên Các dải băng này sẽ được xử lí riêng rẽ, rồi được tổng hợp lại trên cơ sởđánh giá mức năng lượng và độ nhạy của HAS với từng băng
• Nén không tổn hao
Nén không tổn hao cho phép khôi phục lại một cách y hệt dòng bit trước khi nén.Cách nén này loại bỏ những dư thừa thống kê, những thông tin trong tín hiệu có thể dựđoán từ các mẫu trước đó Cách nén này có ưu điểm là chất lượng âm thanh tốt nhưng hệ
số nén đạt được lại quá thấp, thường chỉ giới hạn ở tỉ lệ 2:1 tùy thuộc vào độ phức tạp của
dữ liệu nguồn
Nén không tổn hao thường sử dụng các kỹ thuật sau đây:
Thuật toán vi phân: Độ sai khác giữa các mẫu tín hiệu liền nhau thường nhỏhơn nhiều so với bản thân độ lớn của mẫu tín hiệu Do vậy có một độ dư thừa thôngtin lớn Kĩ thuật DPCM lợi dụng đặc điểm này DPCM mã hóa phần khác nhau giữacác tín hiệu chứ không mã hóa bản thân mẫu tín hiệu Hệ thống ADPCM thì lại mãhóa phần khác nhau giữa mẫu thực với mẫu dự đoán cho hiệu quả nén tốt hơn nữa sovới hệ thống DPCM
Mã hóa với từ mã có độ dài thay đổi làm tăng tính hiệu quả của việc mã hóathông tin
• Nén có tổn hao
Nén có tổn hao lợi dụng đặc điểm của hệ thống HAS là không thể phân biệt mộtthành phần tần số nào đó khi có một tần số gần đó với biên độ lớn hơn được phát Bằngcách nén này hệ số nén đạt được trong khoảng từ 2:1 đến 10:1 tùy thuộc vào quá trình mãhóa và yêu cầu chất lượng của tín hiệu sau nén
Nguyên lí cơ bản của nén có tổn hao là loại bỏ đi những thành phần nằm dưới đườngcong ngưỡng âm Vì lý do này nén có tổn hao được gọi là làm mất các thành phần âm.Nén có tổn hao thường sử dụng kết hợp các kỹ thuật sau đây:
Kỹ thuật ‘che’ (masking) đối với các thành phần tín hiệu trong miền thời gian
và miền tần số Số bit lượng tử dùng để mã hóa cho mỗi băng là khác nhau
Trang 25 Chặn mức tạp âm lượng tử cho từng âm độ của tín hiệu âm thanh bằng cáchđưa ra số bit để đảm bảo mức nhiễu lượng tử nằm dưới mức giá trị cần chặn.
Mã hóa nối: sử dụng tính dư thừa trong hệ thống âm thanh đa kênh Người tanhận thấy rằng có nhiều thành phần tín hiệu giống nhau trên các kênh của một hệthống đa kênh Do đó những thành phần chung này được mã hóa riêng ra và đượcchỉ thị giải mã lặp lại trên tất cả các kênh
1.11 Dòng bit MPEG
Hình 1.11: Cấu trúc dòng bit MPEG
MPEG hỗ trợ một số loại dòng bit cho nhiều mục đích khác nhau được mô tả ở hình
1.11 Đầu ra của một bộ nén được gọi là dòng cơ sở (elementary stream) Nhiều dòng cơ
sở có thể được trộn lại để thành một dòng truyền tải (transport stream) Việc ghép kênh
này đòi hỏi những khối hoặc gói có kích thước cố định Cấu trúc của dòng truyền tải làphức tạp vì nó cần cho biết để kết hợp với một dòng cơ sở hình ảnh thì cần dòng cơ sở âm
Ghép kênh dòng truyền tải
Ghép kênh dòng truyền tải
Dòng truyền tải đơn chương trình (SPTS)
Dòng truyền tải
Trang 26thanh và dòng dữ liệu phụ thuộc nào Tất nhiên là có thể có dòng truyền tải đơn chương
trình (single program transport stream) chỉ mang dòng cơ sở của một chương trình TV.
Với một số ứng dụng nhất định thì việc sử dụng dòng truyền tải trở nên không phùhợp Mỗi gói truyền tải có kích thước nhỏ, cộng với việc nó phải có phần tiêu đề làm cho
tốn dung lượng Ở trường hợp này ta dùng dòng chương trình (program stream) Một
dòng chương trình là dòng bit ghép tín hiệu hình ảnh và âm thanh cho một chương trìnhvào với nhau Không giống như dòng truyền tải, các khối của dòng chương trình thườnglớn và có kích thước không phải là cố định
Cấu trúc chi tiết của dòng cơ sở, dòng cơ sở đóng gói và dòng truyền tải sẽ được mô
tả chi tiết trong các chương sau
Trang 27Chương 2: Dòng cơ sở (elementary stream) và dòng cơ
sở đóng gói (packetized elementary stream)
2.1 Dòng cơ sở (elementary stream).
Tín hiệu video số dạng thức CCIR-601 sau khi nén MPEG có dạng một dòng dữ liệu
video cơ sở (Elementary Stream - ES) Dòng ES chỉ chứa những thông tin cần thiết để
khôi phục lại hình ảnh ban đầu
Tương tự, tín hiệu audio số dạng thức AES/EBU (Tần số lấy mẫu 48kHz, 24bit/mẫu,
tốc độ bít 1152kbps) được mã hóa thành dòng cơ sở audio (audio ES).
Dòng cơ sở về cơ bản là tín hiệu gốc tại đầu ra của bộ mã hóa và chỉ chứa nhữngthông tin cần thiết để giúp bộ giải mã tái tạo lại hình ảnh, âm thanh ban đầu
Hình 2.1: Dòng cơ sở
Hình 2.2 sau đây mô tả cách thức tạo ra dòng cơ sở Tín hiệu video sau khi qua bộ
mã hóa hai chiều, cho kết quả là các thông tin về các vector chuyển động, bảng lượng tử,
và các dữ liệu về không gian Những dữ liệu này sau khi được mã hóa bằng các phươngthức khác nhau sẽ được trộn vào thành một dòng cơ sở duy nhất Dữ liệu sau bộ ghép
(mux) nhiều hay ít là tùy vào lượng thông tin có trong ảnh Nhưng tốc độ bit của dòng cơ
sở là không đổi nhờ qua một bộ đệm Bộ đệm này có khả năng cảm nhận tốc độ dữ liệu
đi ra để điều khiển tốc độ mã hóa dữ liệu đầu vào Tốc độ của dòng đi ra được qui định
Mã hóa Video
Mã hóa audio(AES/EBU)
(REC 601)
Dữ liệu video
Dữ liệu audio
Dòng cơ sở Elementary Stream ESDòng cơ sở Elementary Stream ES
Trang 28bởi thiết bị đồng hồ yêu cầu (demand clock) Đồng hồ này là do kênh truyền hoặc thiết bị
Mã hóa entropy
và mã hóa độ dài từ mã thay đổi
Điều khiển tốc độ Slice
Dữ liệu không gian
Bảng lượng tử
Dòng cơ sở
Khối các hệ
số DCT Macro block Slice Ảnh
Nhóm ảnh Video sequence
Tín hiệu đồng bộ I/P/B Tín hiệu định thời
Mở/ Đóng
Cỡ ảnh
Tỉ lệ khuôn hình
Đồng bộ Quét liên tuc/
xen kẽ
Loại mẫu
Tín hiệu ra
Tốc độ ảnh
Ma trận lượng tử
Level
Profile
Trang 29Đầu tiên là một tập hợp hợp các hệ số biểu diến khối DCT Sáu hoặc tám khối DCT
tạo nên một macro block Ở ảnh B và ảnh P mỗi macro block sẽ tương ứng với một vector
bù chuyển động Một số macro block sẽ tạo thành một lát ảnh (slice) biểu thị sọc ngang
của hình ảnh từ trái sang phải Tập hợp các lát ảnh tạo thành một ảnh, ảnh này thì cần biếtgiá trị cờ I/P/B để biết được loại ảnh tương ứng Một số ảnh tạo thành một nhóm ảnh
(GOP - Group of Picture) Một nhóm ảnh bắt đầu bằng ảnh I, giữa hai ảnh I liền nhau là
một số ảnh P và có thể có thêm ảnh B Một tập hợp các nhóm ảnh tạo thành đoạn dữ liệuvideo Bắt đầu mỗi chuỗi video đều có phần tiêu đề chứa những thông tin quan trọng hỗtrợ cho bộ giải mã
2.2 Dòng cơ sở đóng gói (packetized elementary stream)
2.2.1 Giới thiệu chung về dòng cơ sở đóng gói
Do dòng dữ liệu cơ sở là liên tục, có chiều dài tùy thuộc vào lượng dữ liệu đưa vào
bộ mã hóa, để có thể truyền đi với độ tin cậy cao, dòng ES được đóng gói thành dòng cơ
sở đóng gói ( Packetized Elementary Stream - PES ) Mỗi gói PES gồm một tiêu đề và dữliệu của dòng cơ sở
Hình 2.4: Dòng cơ sở đóng gói
Hình 2.5: Cấu trúc gói PES
Dòng cơ sở video là dòng bit liên tục mang thông tin về hình ảnh Trong việc lưu trữ
và truyền dẫn thì sẽ thích hợp hơn nhiều nếu sử dụng những khối dữ liệu rời rạc, do vậy
dòng cơ sở được đóng gói tạo thành dòng cơ sở đóng gói PES (packetized elementary
Đóng gói
Đóng gói
(Audio ES)
(Video ES)Dòng cơ sở video
Trang 30stream) Tương tự như vậy, dữ liệu audio cũng cần được đóng gói Cấu trúc của một gói
được mô tả trong hình 2.5 Gói được bắt đầu bằng phần tiêu đề chứa một mã bắt đầu gói
và một mã để phân biệt loại dữ liệu chứa trong gói Ngoài ra có thể có thêm một số nhãnthời gian để đồng bộ với bộ giải mã hình ảnh trong thời gian thực và đồng bộ với âmthanh
Hình 2.6 chỉ ra rằng nhãn thời gian thực chất là lấy mẫu trạng thái của một bộ đếmđược điều khiển bởi đồng hồ 90kHz Đồng hồ này có được nhờ chia tần một đồng hồ chủ
27MHz cho 300 Có hai loại nhãn thời gian là nhãn thời gian trình diễn PTS (presentation
time stamp) và nhãn thời gian giải mã DTS (decode time stamp) Nhãn thời gian trình
diễn được dùng để xác định khi nào thì hình ảnh sẽ được thể hiện trên màn ảnh, còn nhãnthời gian giải mã xác định khi nào hình ảnh được giải mã Trong mã hóa hai chiều, nhữngnhãn thời gian này có thể không khác nhau
được giải mã P1 sẽ được lưu giữ trong RAM Tại thời điểm N+2, ảnh B1 được giải mã vàthể hiện ngay trên màn hình Vì lí do này mà nó không cần nhãn thời gian giải mã Tạithời điểm N+3, thì ảnh B2 được giải mã và thể hiện Tại N+4, thì ảnh P1 mới được thểhiện Ta thấy P1 có sự khác nhau nhiều nhất của hai nhãn thời gian Cùng thời điểm nàythì ảnh P2 được giải mã và lưu trữ để giải mã ảnh B3 Quá trình giải mã và trình diễn cứthế tiếp tục
countEncoder
Trang 31Hình 2.7: Sử dụng nhãn thời gian PTS/DTS trong việc đồng bộ giải mã 2 chiều.
Trên thực tế, khoảng thời gian giữa các hình ảnh đến bộ giải mã thường là khôngđổi, do vậy sẽ là thừa nếu gói nào cũng gán thêm nhãn thời gian PTS/DTS Nhãn thời
gian có thể chiếm một khoảng 700ms trong dòng chương trình (program stream) và 100ms trong dòng truyền tải (transport stream) Vì lí do đó mà không phải mọi gói đều
có nhãn PTS/DTS Vì trong dòng bit, mỗi loại ảnh (I, B hoặc P) đều được gán một cờ đểxác định, do đó bộ giải mã có thể suy ra nhãn thời gian cho mọi ảnh trong dòng bít
Hình 2.8 chỉ ra rằng một số gói PES có thể được gom lại thành một cụm (pack) mà tiêu đề của nó có chứa phần đồng bộ và một mã tham chiếu đồng hồ hệ thống (system
clock reference code) cho phép bộ giải mã tái tạo lại đồng hồ của bộ mã hóa.
Trang 32Hình 2.8: Một số các gói PES tạo thành một cụm, phần tiêu đề cụm có chứa tham chiếu
đồng hồ (clock reference)
2.2.2 Cú pháp dòng cơ sở đóng gói
Hình 2.9: Cú pháp gói PES
1 Mã tiền tố khởi đầu (PES start code prefix): đây là mã 24-bit có giá trị là 0x000001.
Mã này xác định điểm bắt đầu của một gói PES
Tiêu đề cụm PES chứa SCR
Gói PES
Cụm
STREAM ID (1BYTE) LENGTH (2 BYTE)PES PACKET HEADERPES STUFFING BYTES
PES START CODE
PES SCRAMBLING
CONTROL
(2 BIT)
PES PRIORITY (1 BIT)
DATA ALIGNMENT INDICATOR (1 BIT)
COPYRIGHT (1 BIT) ORIGINALOR COPY
(1 BIT)
7 FLAGS (8 BIT) PES HEADERDATA
LENGTH (8 BIT)
“10”
ESCR (48 BIT)
ES RATE (24 BIT)
PES EXTENSION
PTS DTS (40 BIT)
ADDITIONAL COPY INFO (8 BIT)
DSM TRICK MODE (8 BIT)
PES CRC (16 BIT)
5 FLAGS OPTIONAL
FIELDS
PES PRIVATE DATA
PACK HEADER FIELD
PROGRAM PACKET SEQ COUNTER (16 BIT)
P- STD BUFFER (16 BIT)
PES EXTENSION FIELD
Trang 332 Nhận dạng dòng (stream ID): mã 8-bit xác định loại của dữ liệu chứa trong dòng cơ
sở
3 Độ dài gói PES (PES packet length): trường 16-bit, chỉ ra số byte của gói cơ sở đóng
gói đi sau trường này
4 Các byte tiêu đề và đệm PES:
4.1 Các byte đệm (stuffing bytes): có giá trị cố định là 0xFF, được bộ mã hóa chèn thêm
vào gói PES, đến bộ giải mã các byte này được bỏ qua
4.2 Điều khiển đảo mã PES (PES scrambling control): trường 2-bit Giá trị và ý nghĩa
được cho theo bảng sau:
4.3 Ưu tiên PES (PES priority): trường 1 bit, chỉ thị mức ưu tiên của tải tin ở trong gói
PES này Những gói có giá trị trường này là “1” sẽ được ưu tiên hơn những gói có giá trị
“0”
4.4 Chỉ thị sắp xếp dữ liệu (data alignment indicator): trường cờ 1 bit Khi cờ này có giá
trị “1” nghĩa là có sự sắp xếp dữ liệu, giá trị “0” nghĩa là không có sự sắp xếp
4.5 Bản quyền tác giả (copy right): trường 1 bit Giá trị “1” có nghĩa là dữ liệu trong gói
được bảo vệ bởi quyền tác giả, giá trị “0” có nghĩa là không được bảo vệ
4.6 Bản gốc hay là bản sao (original or copy): trường 1 bit Khi trường này mang giá trị
“1” nghĩa là nội dung của phần tải tin trong gói PES này là bản gốc Còn khi có giá trị “0”thì có nghĩa là nội dung trong đó là bản sao
4.7 Các giá trị cờ (flags):
4.7.1 Cờ nhãn thời gian (PTS DTS flags): trường 2-bit.
Giá trị “10”: nhãn thời gian trình diễn (PTS – presentation time stamp) có trong tiêu
đề của gói PES
Giá trị “11”: cả nhãn thời gian trình diễn PTS và nhãn thời gian giải mã (DTS –
decode time stamp) đều có trong tiêu đề của gói PES.
Trang 34Giá trị “00”: cả hai nhãn thời gian đều không có.
Giá trị “01”: bị cấm dùng
4.7.2 Cờ ESCR (Elementary Stream Clock Reference Flag): trường 1 bit Khi được đặt
là “1” có nghĩa là giá trị của ESCR có trong tiêu đề của gói PES Giá trị trường là “0” cónghĩa là không có ESCR trong tiêu đề của gói PES này
4.7.3 Cờ RATE (ES rate flag): trường 1 bit, thể hiện sự có mặt hay không của trường ES
rate trong tiêu đề của gói PES
4.7.4 Cờ TM (DSM trick mode flag): cờ 1 bit, thể hiện sự có mặt của trường 8-bit mô tả
hoạt động của Phương tiện lưu trữ số (DSM – Digital Storage Media)
4.7.5 Cờ ACI (additional copy information flag): cờ 1 bit, thể hiện sự có mặt của trường
thông tin thêm về loại dữ liệu (bản gốc hay là bản sao)
4.7.6 Cờ CRC (PES CRC flag) : cờ 1 bit, thể hiện sự có mặt của trường kiểm tra dư thừa vòng CRC (Cyclic Redundancy Check) trong tiêu đề của gói PES.
4.7.7 Cờ EXT (PES extension flag): cờ 1 bit, thể hiện sự có mặt của trường mở rộng (extension field) trong tiêu đề của gói PES
4.8 Chiều dài dữ liệu tiêu đề (PES header data length): trường 8-bit, chỉ định số byte
của trường tùy chọn và các byte đệm trong tiêu đề của gói PES này
4.9 Trường tùy chọn (optional field):
4.9.1 Nhãn thời gian trình diễn (PTS – Presentation Time Stamp): được sử dụng để xác
định thời điểm một đơn vị dữ liệu được thể hiện ở máy thu
4.9.2 Nhãn thời gian giải mã (DTS – Decode Time Stamp): được sử dụng để xác định
thời điểm một đơn vị dữ liệu được đưa đến bộ giải mã
4.9.3 Chuẩn đồng hồ dòng cơ sở (ESCR – Elementary Stream Clock Reference): trường 48-bit, trong đó 42-bit được dùng để biểu diễn các trường ESCR cơ sở (ESCR base) và ESCR mở rộng (ESCR extension).
4.9.4 Tốc độ dòng cơ sở (ES rate - Elementary Stream Rate): trường 24-bit, cho biết tốc
độ nhận byte của gói PES khi đến bộ giải mã Đơn vị đo của trường này là 50 bytes/giây.Giá trị trường này của các gói PES khác nhau có thể thay đổi
4.9.5 Trường DSM Trick Mode: trường 8-bit, gồm có:
4.9.5.1 Điều khiển phương thức kĩ xảo (trick mode control): cho biết thông tin về kĩ xảo
sử dụng trong dòng bit tương ứng như sau: