Tải bản đầy đủ (.doc) (65 trang)

bài giảng truyền thông đa phương tiện

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (1.39 MB, 65 trang )

Truyền thông đa phương tiện Hoàng Tuấn Hảo
BÀI GIẢNG
TRUYỀN THÔNG ĐA PHƯƠNG TIỆN
MỤC LỤC
Chương 1 Tổng quan về truyền thông đa phương tiện 4
1.1 Truyền thông đa phương tiện 4
1.1.1 Các thành phần của hệ thống truyền thông đa phương tiện 4
1.2 Dữ liệu đa phương tiện 5
1.3 Truyền dữ liệu đa phương tiện 6
1.4 Các phương pháp truyền dữ liệu đa phương tiện 8
1.4.1 Mô hình download 8
1.4.2 Mô hình Streaming 9
1.4.3 So sánh các phương pháp truyền dữ liệu đa phương tiện 11
1.5 Các thách thức khi xây dựng một hệ thống truyền thông đa phương tiện 12
Chương 2 Các phương pháp nén dữ liệu đa phương tiện 13
2.1 Phương pháp nén ảnh 13
2.1.1 Phương pháp nén ảnh JPEG 13
2.1.1.1 Quá trình nén JPEG 14
2.1.1.2 Giải nén JPEG 20
2.2 Phương pháp nén Audio 22
2.3 Phương pháp nén Video 22
2.3.1 Khái quát về H264 23
2.3.1.1 H264 hoạt động như thế nào? 23
2.3.1.2 H264 trong thực tế 26
Chương 3 Công nghệ lưu trữ và thu hồi dữ liệu đa phương tiện 26
3.1 Cấu trúc và mô hình đĩa cứng 27
3.2 Sự lập lịch trình trên đĩa 27
3.3 Cải thiện thông lượng đĩa 28
3.4 Lưu trữ và thu nhận dữ liệu trên nhiều đĩa 28
3.4.1 Phân vùng và replication 28
3.4.2 Disk striping 28


3.4.3 Lập lịch trình cho nhiều đĩa 28
1 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
3.5 Phân miền đĩa 28
Chương 4 Truyền số liệu đa phương tiện trên mạng máy tính 29
4.1 Streaming media 29
4.1.1 Truyền dòng dữ liệu dùng giao thức TCP/UDP 29
4.1.2 Các giao thức streaming chuyên biệt 32
4.1.2.1 Giao thức RSTP (Realtime streaming protocol) 32
4.1.2.2 Giao thức Realtime Transport Protocol (RTP) 33
4.2 Kiến trúc server song song trong mạng đa phương tiện 34
4.2.1 Phân loại và các lựa chọn trong kiến trúc 34
4.2.1.1 Giới thiệu 34
4.2.1.2 Kiến trúc phân phối video song song 34
4.2.1.3 Server striping policies 37
4.2.2 Các giao thức phân phối video song song 37
4.2.2.1 Client pull và server push 37
4.2.2.2 Đồng bộ các server (inter-server synchronization) 37
4.2.2.3 Xác định và vô hiệu server hỏng 37
4.2.3 Kiến trúc Server song song cùng đẩy (concurrent-push) 37
4.2.3.1 Kiến trúc hệ thống 37
4.2.3.2 Phân tích giải thuật 38
4.2.3.3 Asynchronous Grouped Sweeping Scheme 39
4.2.3.4 Sub-Schedule Striping Scheme 39
4.2.3.5 Đánh giá hiệu năng 39
4.3 Kiến trúc multicast Streaming 42
4.3.1 Sơ lược về multicast streaming 42
4.3.1.1 Giới thiệu 42
4.3.1.2 Multicast media streaming 43
4.3.1.3 Kỹ thuật cho multicast media streaming theo yêu cầu 43

4.4 Các giao thức truyền thông đa phương tiện sử dụng trong thiết lập cuộc gọi 43
4.4.1 Giới thiệu về SIP 43
4.4.2 Các thực thể trong SIP 48
4.4.2.1 SIP User agents 49
4.4.2.2 Proxy Server 49
4.4.2.3 Redirect Server 49
2 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
4.4.2.4 Registrar Server 49
4.4.3 Các tin nhắn tạo phiên 50
4.4.3.1 Các kiểu tin nhắn (Message Type) 50
4.4.3.2 Cấu trúc của tin nhắn 51
4.4.3.3 Ví dụ một số message 52
4.4.4 Tương tác giữa các thực thể SIP 55
4.4.4.1 Tạo và ngắt phiên 55
4.4.4.2 Chuyển hướng gọi. Call Redirection 56
4.4.4.3 Call Proxying 57
4.4.5 Giao thức mô tả phiên SDP 58
4.4.6 Hệ thống máy phục vụ của SIP (SIP Servers) 59
4.4.6.1 SIP server là gì? 59
4.4.6.2 Registrar Server 59
4.4.6.3 Redirect Server 59
4.4.6.4 Proxy Server 59
Chương 5 Một số ứng dụng truyền thông đa phương tiện 64
5.1 Voice over IP 64
5.2 Video over IP 64
5.3 Video conferrencing 64
5.4 Television over IP 64
5.5 Video on demand 64
5.6 Interactive TV 64

Chương 6 Đề xuất đề tài NCKH, bài tập lớn 65
3 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
Chương 1 Tổng quan về truyền thông đa phương tiện
Giới thiệu sơ lược về truyền thông đa phương tiện, các đặc điểm của dữ liệu đa phương
tiện, và nêu ra những thách thức khi xây dựng hệ thống truyền thông đa phương tiện hiệu năng
cao – tiết kiệm tài nguyên.
1.1 Truyền thông đa phương tiện
Sự phát triển nhanh chóng của máy tính và Internet đã sinh ra nhiều dịch vụ và ứng dụng
mới. Trong đó các dịch vụ như World Wide Web đã đóng góp nhiều sự thành công và biến đổi
nhiều mặt của xã hội. Với sự cải thiện liên tục về băng thông, năng lực tính toán, và khả năng
lưu trữ các dịch vụ phát triển từ việc truyền các dữ liệu văn bản và đồ họa đơn giản sang các dữ
liệu đa phương tiện phức tạp như audio và video chất lượng cao.
Môn học truyền thông đa phương tiện bàn về hệ thống dùng để truyền các dữ liệu đa phương
tiện trên mạng mạng truyền thông như Internet hoặc trên mạng diện rộng.
- Là công nghệ truyền thông giúp người dùng trao đổi, chia sẻ thông tin đa phương tiện
trên mạng truyền thông, thông tin gồm: Dữ liệu Audio, Video thời gian thực, hình ảnh
văn bản và các dạng dữ liệu khác.
- Các ứng dụng sử dụng truyền thông đa phương tiện trên gồm: Hội thảo từ xa (video
conferencing), nói chuyện qua internet (voice over IP), truyền hình internet, truyền hình
theo yêu cầu (video on demand) …
1.1.1 Các thành phần của hệ thống truyền thông đa phương tiện
Như đã nói ở trên, môn học này bàn về việc truyền dữ liệu đa phương tiện trên hệ thống
mạng truyền thông (Internet, mạng diện rộng).
Hình 1.1 thể hiện mô hình client/server để truyền dữ liệu đa phương tiện hai đầu. Ở phía
nguồn, dữ liệu đa phương tiện được nén và lưu trữ. Qua hệ thống điều khiển từ phía server, các
dữ liệu này sẽ được gửi đi qua mạng tùy theo yêu cầu của người dùng. Giao thức ở tầng
application/transport sẽ được dùng để truyền dữ liệu tới máy khách, dữ liệu này sẽ được lưu
trong bộ đệm hoặc thiết bị lưu trữ, từ đó được giải mã và được hiển thị cho người dùng.
4 Bộ môn An Ninh Mạng - HVKTQS

Truyền thông đa phương tiện Hoàng Tuấn Hảo
Hình 1.1 Sơ đồ khối cơ bản của 1 hệ thống đa phương tiện
Đặc trưng duy nhất của mô hình hệ thống này là: Các thành phần của hệ thống sẽ thực
hiện công việc một cách tuần tự theo các bước trong quá trình truyền dữ liệu. Do đó, nếu 1 thành
phần hoạt động không tốt sẽ ảnh hưởng tới toàn bộ hệ thống.
Tóm lại, các thành phần của hệ thống truyền thông đa phương tiện bao gồm:
• Dữ liệu đa phương tiện
• Hệ thống lưu trữ
• Bộ đệm
• Mạng truyền thông
• Thiết bị xử lý, hiển thị
1.2 Dữ liệu đa phương tiện
Dữ liệu đa phương tiện cần được hiểu là nhiều loại dữ liệu sẽ được thu thập, gửi đi và hiển
thị một cách đồng thời. Có rất nhiều loại dữ liệu: đơn giản nhất là dữ liệu văn bản thô, văn bản
đã định dạng, và các dạng dữ liệu khác như ảnh đồ họa, âm thanh, video…
Ta có thể phân loại các loại dữ liệu trên ra thành 2 loại, theo ngữ cảnh của việc truyền dữ
liệu đa phương tiện.
- Loại thứ nhất: dữ liệu rời rạc (discrete media) gồm các loại dữ liệu mà khi hiển thị không
bị bó buộc chặt chẽ về thời gian. Ví dụ ta có thể nhận 1 bức ảnh từ web server để hiển thị
5 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
trong web browser. Tùy theo thông lượng mạng mà thời gian nhận bức ảnh có thể nhanh
hay chậm trước khi nó được giải mã và hiển thị.
- Loại thứ 2: dữ liệu liên tục. Dữ liệu này có một yêu cầu chặt chẽ về thời gian hiển thị và
các thông tin này được nhúng bên trong dữ liệu. Ta có thể thấy ngay ví dụ đó là dữ liệu
video, audio. Dữ liệu video thường được mã hóa theo các frame được hiển thị tuần tự với
một tần số nào đó, ví dụ 25 hình/giây (frame per second fps). Do đó để hiển thị các đối
tượng video một cách đúng đắn, thì không chỉ cần nhận dữ liệu video một cách chính xác
mà còn cần phải giải mã và hiển thị chúng theo đúng trình tự và thời điểm. Nếu không
làm được điều đó thì video hiển thị sẽ bị hỏng, chất lượng thấp. Do đó lưu lượng mạng

dành cho dữ liệu đa phương tiện có thể coi là lưu lượng cố định do sự cần thiết duy trì bộ
định thời chặt chẽ.
Từ đó ta thấy, thách thức trong truyền thông đa phương tiện nói chung và đặc biệt là
truyền thông dữ liệu đa phương tiện liên tục, đó là phải đảm bảo tính vẹn toàn của cả dữ liệu và
thời gian hiển thị (presentation timing). Hơn nữa, dữ liệu đa phương tiện thông thường là sự kết
hợp của nhiều dòng dữ liệu khác nhau và được đồng bộ với nhau. Do đó, độ phức tạp sẽ được
nhân lên nhiều lần và phải đồng bộ giữa các dòng dữ liệu với nhau.
1.3 Truyền dữ liệu đa phương tiện
Với 2 loại dữ liệu đa phương tiện đã bàn ở trên, ta chỉ tập trung vào truyền dữ liệu liên tục
trong phần còn lại của môn học. Chúng ta có thể phân lớp việc truyền dữ liệu đa phương tiện
liên tục thành 2 loại: truyền thời gian thực và truyền bán thời gian thực (soft-real-time delivery)
Truyền thời gian thực: dữ liệu phải truyền từ nguồn và hiển thị tại đích với một độ trễ cho
trước. Truyền thời gian thực thường được sử dụng để người dùng tương tác với nhau như:
Internet Phone, đàm thoại video từ xa.(Hình 1.2)
6 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
Hình 1.2 Truyền dữ liệu liên tục thời gian thực trong hội đàm video.
Truyền dữ liệu bán thời gian thực: Không cho trước thời gian trễ, thay vào đó, hệ thống
phải truyền sao cho đảm bảo tính toàn vẹn của dữ liệu và toàn vẹn thời gian hiển thị, đồng thời
giảm thời gian trễ ở mức tối đa. Ví dụ của việc truyền dữ liệu bán thời gian thực là dịch vụ video
theo yêu cầu (Video on demand) . Hệ thống này có thể có độ trễ ban đầu lớn để đổi lấy chất
lượng video mịn trong quá trình play . Hình 1.3
Hình 1.3 Truyền dữ liệu bán thời gian thực trong hệ thống VOD
7 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
1.4 Các phương pháp truyền dữ liệu đa phương tiện
Việc truyền dữ liệu trên mạng máy tính không đã được thực hiện từ lâu, và có rất nhiều
phương pháp khác nhau để áp dụng. Trong đó phương pháp download là phương pháp phổ biến
nhất để truyền dữ liệu đa phươn tiện từ server tới client.
1.4.1 Mô hình download

Mô hình download được mô tả trong hình 1.4: Client gửi 1 yêu cầu tới server để chỉ ra đối
tượng dữ liệu cần download; server sẽ lấy đối tượng dữ liệu đó (có thể từ hệ thống file nội bộ)
và truyền nó tới client qua mạng dùng một số giao thức application/transport. Có thể lấy ví dụ
trong WWW.
Hình 1.4Tương tác giữa client và server trong mô hình download.
Đặc điểm của phương pháp: Trước tiên đối tượng dữ liệu phải được nhận về toàn bộ và
lưu trong bộ đệm hoặc file trước khi được giải mã và hiển thị. Khi đối tượng dữ liệu đã được
client nhận đầy đủ thì việc giải mã và trình diễn dữ liệu đó sẽ được thực hiện như trên hệ thống
file nội bộ của client. Mô hình này hoạt động tốt trong một số ứng dụng nhưng lại không phù
hợp với dữ liệu liên tục.
Giả sử quá trình download như trong hình 1.5 , bỏ qua thời gian xử lý, thời gian từ khi bắt
đầu yêu cầu đến khi có thể hiển thị được dữ liệu được tính theo kích thước của đối tượng dữ liệu
và tốc độ truyền. Với những ứng dụng như WWW thì dữ liệu thường là văn bản HTML, hoặc
ảnh nhỏ thì độ trễ này tương đối nhỏ.
Tuy nhiên, với đối tượng dữ liệu liên tục thì độ trễ có thể sẽ rất lớn, đến mức không chấp
nhận được. Ví dụ, một dữ liệu video thời lượng 2 giờ được nén MPEG2 với tần só bit trung bình
6Mbps sẽ có kích thước khoảng 5.4GB. Và truyền đi trong mạng với tốc độ 8Mbps thì người
dùng sẽ phải chờ khoảng 1.5 giờ trước khi có thể xem video.
8 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
Hình 1.5Thời gian bắt đầu trễ trong mô hình download
Nhược điểm cơ bản của mô hình download (được thể hiện trên hình 1.6) là nó yêu cầu
phải download toàn bộ đối tượng video về thì mới bắt đầu xem được. Trong khi đối với nhiều
loại dữ liệu rời rạc thì yêu cầu này là cần thiết, thì dữ liệu liên tục như video có đặc trưng là một
phần dữ liệu của nó có thể được giải mã(decoded) và hiển thị (play back). Dữ liệu video được
cấu thành từ các frame, và ta có thể xem khi toàn bộ dữ liệu của 1 frame được client nhận về.
Hình 1.6 Thời gian trễ để download 5.4 GB video
Từ đặc điểm này mà người ta có thể cải tiến mô hình download thành mô hình Streaming
như sau:
1.4.2 Mô hình Streaming

Trong mô hình streaming, dữ liệu liên tục sẽ được phát lại trong khi quá trình nhận dữ liệu
về vẫn tiếp diễn (minh họa trong hình 1.7). Sau khi gửi yêu cầu tới server để bắt đầu quá trình
9 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
streaming client sẽ đợi gói dữ liệu đầu tiên tới và bắt đầu phát lại (play), trong khi nhận gói dữ
liệu thứ 2, và cứ như thế. Do đó, quá trình phát lại và quá trình nhận dữ liệu được thực hiện theo
dòng gần song song (pipeline).
10 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
Hình
1.7 Play từng phần dữ liệu trong mô hình streaming
So sánh với mô hình download thì cần phải đáp ứng thêm 2 yêu cầu sau để mô hình
streaming có thể hoạt động. Thứ nhất, dữ liệu đa phương tiện phải có thể chia nhỏ thành các
đoạn độc lập, các đoạn này có thể được giải mã và phát lại. Hầu hết các dữ liệu liên tục như
audio, video đều có tính chất này. Thứ hai, để bảo toàn bộ định thời trong khi hiển thị hay trình
diễn(presenting) , ta cần đảm bảo các đoạn dữ liệu sẽ được nhận về trước thời điểm dự kiến sẽ
hiển thị nó. Đây chính là yêu cầu về tính liên tục , một trong các tham số chủ đạo trong thiết kế
và đánh giá hệ thống đa phương tiện liên tục.
1.4.3 So sánh các phương pháp truyền dữ liệu đa phương tiện
• Phương pháp tải xuống (download)
• Phương pháp tải theo dòng (streaming)
Với sự phát triển nhanh của công nghệ mạng thì người ta có thể đặt ra câu hỏi rằng liệu
trong tươnng lai mạng máy trính sẽ có thể có thông lượng rất lớn khiến cho thời gian truyền sẽ
không đáng kể ngay cả khi dùng mô hình download hay không?. Đây vẫn là 1 câu hỏi hỏi hợp
11 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
lý, nhưng mô hình streaming một mặt có thể giúp cho việc playback được tiến hành sớm hơn ,
mặt khác nó còn mang đến một cải tiến khác: truyền đồng thời nhiều dòng.
Các media server thường đồng thời phục vụ nhiều clients. Khi nhiều client yêu cầu dịch
vụ cùng lúc, sẽ có 2 lựa chọn cho media server khi dùng mô hình download: Một là phục vụ các

clients một cách tuần tự hoặc phục vụ đồng thời. Nếu phục vụ tuần tự thì các client thứ 2 trở đi
trong hàng đợi sẽ phải chờ rất lâu mặc dù thông lượng mạng có thể rất lớn. Nếu phục vụ đồng
thời thì thông lượng mạng dành cho từng client sẽ giảm do đó sẽ kéo dài thời gian download.
Ngược lại, mô hình streaming sẽ không mắc phải vấn đề này, quá trình playback sẽ được
thực hiện ngay khi một đoạn dữ liệu đa phương tiện có thể giải mã (decodable) được nhận về
(Hình 1.8). Hơn nữa, dữ liệu truyền qua mạng chỉ cần với tốc độ dữ liệu của quá trình playback
(play-rate), nên thời gian chờ để bắt đầu play độc lập với số lượng client yêu cầu đồng thời miễn
sao media server và mạng không bị quá tải.
Hình 1.8 Multistream pipelining trong mô hình streaming
1.5 Các thách thức khi xây dựng một hệ thống truyền thông đa
phương tiện.
• Tính liên tục
• Các tham số biết và chưa biết
• Tương tác thời gian thực
• Hiệu quả
• Có thể mở rộng
12 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
• Tính tin cậy
Chương 2 Các phương pháp nén dữ liệu đa phương tiện
Tổng quan về nén dữ liệu đa phương tiện.
2.1 Phương pháp nén ảnh
Giới thiệu phương pháp nén ảnh JPEG.
Phương pháp nén ảnh JPEG được dùng phổ biến nhất để nén dữ liệu ảnh số. Với các hình
đồ họa đơn giản thì thường được nén phương pháp GIF, PNG.
2.1.1 Phương pháp nén ảnh JPEG
(Joint Photographic Expert Group) – Nhóm thành lập năm 1986 – phát hành chuẩn năm
1992 và năm 1994 là 1 chuẩn ISO 19018-1
Chuẩn mã hóa và giải mã JPEG
13 Bộ môn An Ninh Mạng - HVKTQS

Truyền thông đa phương tiện Hoàng Tuấn Hảo
2.1.1.1 Quá trình nén JPEG
Sơ đồ minh họa quá trình nén ảnh JPEG

Hình 2.9Quá trình nén JPEG
2.1.1.1.1 Biến đổi không gian màu
Trước hết, các điểm ảnh được biến đổi từ không gian RGB sang không gian màu YCbCr.
Không gian này gồm các thành phần: Y, Cb, Cr. Trong đó thành phần Y thể hiện độ sáng của 1
điểm, hai thành phần Cb và Cr đại diện cho màu của điểm ảnh (chia thành 2 thành phần xanh
lam (Cb) và đỏ (Cr) ). Không gian màu YCbCr cũng được dùng trong truyền hình số cũng như
trong video DVD, và tương tự với không gian màu YIQ được dùng trong video liên tục PAL,
NTSC. Việc chuyển sang không gian YCbCr có thể giúp tăng tỷ lệ nén mà không làm giảm
đáng kể chất lượng ảnh (hoặc sẽ tăng chất lượng ảnh với cùng 1 tỷ lệ nén). Việc nén hiệu quả
hơn với thông tin về độ sáng - thông tin ảnh hưởng nhiều hơn đến cảm nhận chất lượng ảnh của
người xem.
2.1.1.1.2 Chia khối
14 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
Sau khi giảm mẫu, mỗi kênh được chia thành các khối 8x8 (pixel). Nếu dữ liệu cho các
kênh không phải là một số nguyên lần các khối thì bộ mã hóa phải thêm dữ liệu cho các khối
chưa hoàn thiện:
* Thêm vào 1 số dòng (cột) với màu cố định (đen).
2.1.1.1.3 Biến đổi cosin rời rạc (DCT)
Tiếp theo, mỗi thành phần (Y, Cr, Br) của từng khối 8x8 được biến đổi sang miền tần số
dùng phép biến đổi cosin rời rạc 2 chiều.
Ví dụ 1 khối 8x8 như sau:
ứng với ảnh con (được phóng đại)
Trước khi biến đổi DCT, các giá trị được dịch bit từ khoảng dương sang khoảng xung
quanh giá trị 0. Với 8 bit cho mỗi điểm, các điểm ảnh có giá trị trong [0-255]. Để lấy điểm 0 làm
15 Bộ môn An Ninh Mạng - HVKTQS

Truyền thông đa phương tiện Hoàng Tuấn Hảo
trung tâm, ta cần trừ mỗi điểm ảnh đi 1 giá trị là 128. Các điểm ảnh sẽ nằm trong khoảng [-128,
127].
Bước tiếp theo, thực hiện biến đổi DCT theo công thức:
Trong đó :
• u là tần số không gian ngang , là số nguyên 0<=u <8
• v là tần số không gian dọc.

• g
x,y
là giá trị điểm ảnh ở tọa độ x, y
• G
u,v
là hệ số DCT tại tọa độ (u,v)
Nếu ta thực hiện phép biến đổi với ma trận trên và làm tròn các kết quả về số nguyên gần
nhất ta sẽ thu được:
16 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
Giá trị lớn nhất tập trung ở góc trái trên . Đây gọi là hệ số DC (thành phần 1 chiều). 63 hệ
số còn lại gọi là các hệ số AC.
DCT biến đổi 64 điểm ảnh thành tổ hợp tuyến tính của 64 khối với chiều ngang là u, chiều
dọc là v.
DCT tạm thời làm tăng số bit của ảnh (16bit / hệ số). Tuy nhiên, ưu điểm của DCT là nó
có xu hướng tập trung các tín hiệu vào 1 góc trong ma trận kết quả. (như thấy ở trên). Đặc điểm
này được tận dụng triệt để ở giai đoạn lượng hóa (trình bày sau) nhằm giảm số bit cho 1 hệ số
xuống 8bit hoặc nhỏ hơn. Kết quả là
2.1.1.1.4 Lượng hóa
Mắt người nhìn có thể phân biệt sự biến đổi nhỏ của độ sáng trong một khoảng rộng,
nhưng không phân biệt tốt cường độ sáng khi độ sáng dao động với tần số lớn. Đặc điểm này
cho phép ta có thể giảm lượng thông tin của các thành phần tân số cao. Việc này có thể làm đơn

17 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
giản bằng cách chia mỗi thành phần trong miền tần số cho 1 hằng số và làm tròn kết quả nhận
được. Đây là thao tác làm mất thông tin chính trong cả quá trình. Việc này làm cho hầu hết các
thành phần tần số cao bị làm tròn về 0 và các thành phần còn lại trở thành các số nguyên có giá
trị tuyệt đối nhỏ - ta có thể lưu trữ bằng 1 số lượng nhỏ các bit.
Một ma trận lượng hóa thường dùng là:
Các hệ số DCT được lượng hóa theo công thức:
Trong đó A là các hệ số DCT chưa lượng hóa, Q là ma trận lượng hóa ở trên, B là các hệ
số DCT đã được lượng hóa.
Với ví dụ trên ta thu được ma trận hệ số sau khi lượng hóa như sau:
Ví dụ, hệ số ở góc trái trên (Hệ số DC) được lượng hóa như sau:
18 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
2.1.1.1.5 Mã hóa Entropy
Mã hóa entropy là dạng đặc biệt của phương pháp nén không mất dữ liệu. Trước hết các
thành phần ảnh được sắp xếp theo thứ tự zigzag, sau đó dùng mã huffman để mã hóa.
Với các hệ số DCT đã lượng hóa ở trên, sau khi sắp theo thứ tự zigzag ta thu được:
Gọi khối thứ i là B
i
, mỗi hệ số DCT của ảnh ở vị trí (p,q ) gọi là Bi(p,q) với p = 1 7, q =
1 7. Từ đó , thứ tự của các hệ sổ ở từng khối theo sơ đồ zigzag sẽ là Bi(0,0) , Bi(0,1) , Bi(1,0),
Bi(2,0) …
Chuẩn JPEG dùng phương pháp mã hóa Huffman để mã hóa các hệ số của các khối. JPEG
dùng 1 từ mã đặc biệt (EOB) để kết thúc sớm 1 chuỗi khi các hệ số còn lại của chuỗi bằng 0.
19 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
Chuẩn JPEG cung cấp 1 bảng mã Huffman để dùng chung, tuy nhiên các chương trình nén
có thể tự sinh ra bảng Huffman cho từng ảnh được mã hóa để tối ưu hóa việc nén.
2.1.1.1.6 Tỷ lệ nén và ảnh hưởng

Trong chuẩn JPEG, tỷ lệ nén có thể thay đổi tùy theo yêu cầu bằng cách thay đổi số chia
trong quá trình lượng hóa. Với tỷ lệ nén 10:1 , ảnh sau nén và ảnh trước nén khó có thể phân
biệt bằng mắt thường. Với tỷ lệ nén 100:1 thì ảnh sau nén và anh trước nén có thể phân biệt rõ
ràng. Một tỷ lệ nén thích hợp sẽ tùy thuộc vào mục đích sử dụng bức ảnh.
2.1.1.2 Giải nén JPEG
Quá trình giải nén thực hiện ngược lại các bước ở quá trình nén.
20 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
• Giải mã huffman , thu được ma trận hệ số của từng khối:
• Nhân từng phần tử với phần tử tương ứng trong ma trận lượng hóa ta thu được:
• Biến đổi ngược cosin rời rạc IDCT thu được ảnh

Cộng thêm 128 vào giá trị của từng điểm trong khối thu được khối giải nén:
21 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
So sánh ảnh giải nén với ảnh gốc:
Lấy ảnh giải nén trừ đi ảnh gốc thu được ma trận lỗi:
Trong trường hợp này, trung bình lỗi của 1 pixel là:
2.2 Phương pháp nén Audio
Các phương pháp nén: PCM, LPC, GSM, acc (facc)
2.3 Phương pháp nén Video
Chuẩn nén mới: H264 (AVC – advance video coding hay MPEG4 – part 10), các ưu điểm
so với các chuẩn nén trước đó.
22 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
2.3.1 Khái quát về H264.
H264 là chuẩn công nghiệp trong nén video – một quá trình biến đổi dữ liệu video số về 1
định dạng chiếm ít dung lượng hơn để lưu trữ hoặc truyền đi. H264 được công bố đầu tiên năm
2003, xây dựng dựa trên các chuẩn trước đó như MPEG2, MPEG4 với mục đích tăng hiệu quả
nén, tăng tính mềm dẻo trong nén video, truyền video và lưu trữ video

2.3.1.1 H264 hoạt động như thế nào?
Việc nén H264 được thực hiện qua các quá trình: Prediction, transform, Encode để có
được dòng bit H264 (bit stream). Bộ giải mã H264 thực hiện quá trình ngược lại: decoding,
inverse transform, reconstruction.
- Quá trình mã hóa:
Prediction
Bộ mã hóa xử lý một khung video (frame) dưới dạng các khối (macroblock)16x16 pixel.
Nó xây dựng 1 bộ dự đoán khối dựa trên các dữ liệu mã hóa trước đó, các dữ liệu này có thể ở
frame hiện tại (intra prediction) hoặc ở các frame đã được mã hóa và truyền đi trước đó (inter
prediction). Bộ giải mã sẽ lấy khối hiện tại trừ đi khối dự đoán của nó để thu được 1 phần dư.
Phương pháp dự đoán của H264 mềm dẻo hơn các phương pháp dự đoán của các chuẩn
trước đó, cho phép các dự đoán chính xác và tăng cường hiệu quả nén video. Dự đoán trong
(intra prediction) dùng khối 16x16 và 4x4 để dự đoán khối từ các khối xung quanh đã được xử
lý trước đó trong cùng frame. (Như minh họa trong hình dưới đây)
23 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
Dự đoán liên khung (inter prediction) sử dụng khối có kích thước từ 4x4 đến 16x16 để dự
đoán các điểm ảnh trong khung hiện tại từ các miền tương ứng trong các khung đã được xử lý
trước đó. (Minh họa ở hình dưới)
Biến đổi và lượng hóa
Dùng phép biến đổi nguyên 4x4 hoặc 8x8 để biến đổi phần chênh lệch của khối (block)
thực và khối dự đoán của nó. Phép biến đổi này là phép biến đổi cosin rời rạc. Sau biến đổi ta
thu được 1 tập các hệ số, mỗi hệ số là trọng số ứng với 1 mẫu cơ bản ( khi ta kết hợp các mẫu
cơ bản này lại – dùng các trọng số vừa tính được , thì sẽ tái tạo lại được phần dư vừa biến đổi )
Hình sau mô tả quá trình biến đổi cosin rời rạc ngược.
24 Bộ môn An Ninh Mạng - HVKTQS
Truyền thông đa phương tiện Hoàng Tuấn Hảo
Hình 2.10Các hệ số được lượng hóa (giống phương pháp lượng hóa của JPEG).
Mã hóa dòng bit
Quá trình nén video đưa ra một số giá trị phải đưa vào mã hóa để xây dựng dòng bit đã

nén. Các giá trị đó gồm:
+ Các hệ số đã lượng hóa
+ Thông tin cho phép bộ giải mã có thể tái tạo quá trình dự đoán.
+ Thông tin về cấu trúc của dữ liệu đã nén và công cụ dùng trong quá trình mã hóa.
+ Thông tin về thứ tự đầy đủ của các frame.
Các giá trị và tham số này (gọi là các thành phần cú pháp H264) được chuyển thành dữ
liệu nhị phân và dùng phương pháp nén “variable length coding” và /hoặc “arithmetic coding”.
Dòng bit nén này có thể được lưu trữ lại hoặc truyền đi.
- Quá trình giải mã
Giải mã dòng bit
Giải lượng hóa và biến đổi ngược
Tái tạo các frame.
25 Bộ môn An Ninh Mạng - HVKTQS

×