Tải bản đầy đủ (.docx) (83 trang)

đồ án mpeg dash – chuẩn công nghệ mới nhất hỗ trợ streaming thích ứng động qua http

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.33 MB, 83 trang )

Đồ án tốt nghiệp Đại học Mục lục
MỤC LỤC
Hoàng Đức Tú – Lớp D08VT1 1
Đồ án tốt nghiệp Đại học Danh mục hình
vẽ
DANH MỤC HÌNH VẼ
Hoàng Đức Tú – Lớp D08VT1 2
Đồ án tốt nghiệp Đại học Danh mục bảng
biểu
DANH MỤC BẢNG BIỂU
Hoàng Đức Tú – Lớp D08VT1 3
Đồ án tốt nghiệp Đại học Thuật ngữ viết tắt
THUẬT NGỮ VIẾT TẮT
Viết tắt Nghĩa Tiếng Anh Nghĩa Tiếng Việt
AVC Advanced video coding Mã hóa video nâng cao
CAT Conditional access table Bảng truy cập có điều kiện
DASHHTT
P
DASHdynamic adaptive
streaming over HTTP
Streaming thích ứng động qua
HTTP
DM DASH Metrics Thông số DASH
DRM Digital rights management Quản lý bản quyền số
ECM Entitlement control message Bản tin điều khiển quyền
HTTP Hypertext transfer protocol Giao thức truyền siêu văn bản
IDR Instantaneous decoding refresh Làm tươi giải mã tức thời
ISOBMFF ISO base media file format Định dạng tệp phương tiện cơ
sở Iso.
MPD Media Presentation Description Mô tả trình diễn phương tiện
MVC Multi-view video coding Mã hóa video multi-view


PAT Program association table Bảng liên kết chương trình
PCR Program clock reference Đồng hồ tham chiếuchương
trình
PES Packetized elementary Stream Luồng cơ bản được gói hóa
PID Packet identifier Phần tử nhận dạng gói
PMT Program map table Bảng sơ đồ chương trình
PSI Program specific information Thông tin đặc biệt chương
trình
PTS Presentation time stamp Nhãn thời gian trình diễn
SAP Stream access point Điểm truy cập luồng
SEI Supplementary enhancement
information
Thông tin nâng cao bổ sung
SVC Scalable video coding Mã hóa video mở rộng
TCP Transmission control protocol Giao thức điều khiển truyền
tải
TLS Transport layer security Bảo mật tầng giao vận
TS Transport stream Luồng giao vận
URI Uniform resource identifier Nhận dạng tài nguyên đồng
Hoàng Đức Tú – Lớp D08VT1 4
Đồ án tốt nghiệp Đại học Thuật ngữ viết tắt
nhất
URN Uniform resource name Tên tài nguyên duy nhất
URL Uniform resource locator Định vị tài nguyên duy nhất
UTC Coordinated universal time Thời gian điều phối phổ cập
UUID Universally unique identifier Nhận dạng duy nhất
Hoàng Đức Tú – Lớp D08VT1 5
Đồ án tốt nghiệp Đại học Lời mở đầu
LỜI MỞ ĐẦU
Đi cùng với sự bùng nổ của mạng IP thì các phương thức truyền video trên nền

tảng mềm dẻo này cũng phát triển vô cùng đa dạng phong phú. Đáp ứng với các nhu
cầu truyền hình ảnh âm thanh khác nhau có rất nhiều các phương thức và giao thức
khác nhau. Với một đoạn video ta có thể nhận toàn bộ dữ liệu về rồi mới bắt đầu xem,
nhưng như thế ta thường phải mất thời gian hơn để có thể có được một nội dung giải
trí. Vì thế mà các phương thức streaming ra đời, Mpeg Dash là một trong các phương
thức hỗ trợ việc đó.
Được sự gợi ý của cô Nguyễn Thu Hiên và bản thân em cũng muốn tìm hiểu,
nghiên cứu về các phương thức streaming nói chung và Mpeg Dash nói riêng, nên em
đã chọn đề tài “Mpeg Dash – chuẩn công nghệ mới nhất hỗ trợ streaming thích ứng
động qua HTTP” làm đề tài đồ án tốt nghiệp. Đồ án “Nghiên cứu về MPEG-DASH”
tập trung nghiên cứu về các đặc điểm của MPEG-DASH và tiêu chuẩn cho phương
thức này.
Nội dung chính đồ án bao gồm 3 chương:
• Chương I: Công nghệ streaming
• Chương II: Tổng quan về MPEG DASH
• Chương III: Mô hình hệ thống MPEG DASH
Do còn nhiều hạn chế về kiến thức cũng như kinh nghiệm và DASH cũng là một
công nghệ mới mẻ nên việc hoàn thành đồ án của em không tránh khỏi những thiếu
sót, em rất mong nhận được sự góp ý của thầy cô.
Sinh viên
Hoàng Đức Tú – Lớp D08VT1
Hoàng Đức Tú – Lớp D08VT1 6
Đồ án tốt nghiệp Đại học Lời mở đầu
Hoàng Đức Tú – Lớp D08VT1 7
Đồ án tốt nghiệp Đại học Chương I: Công nghệ
Streaming
CHƯƠNG I: CÔNG NGHỆ STREAMING
1.1. Tổng quan về công nghệ streaming
1.1.1. Khái niệm về công nghệ streaming
Công nghệ streaming là công nghệ cho phép các multimedia server truyền đi qua

mạng Internet (IP) các dòng dữ liệu liên tiếp có thể giải nén và hiển thị ngay lập tức
khi tới phía người dùng. Để download về một đoạn phim ngắn cũng có thể mất tới vài
phút trong khi các dữ liệu video sử dụng công nghệ streaming chỉ mất vài giây để có
thể hiển thị. Tính năng này khiến các công nghệ streaming tiết kiệm được thời gian
cho người sử dụng (thậm chí khi sử dụng modem 28.8 kbps).
1.1.2. Video Streaming
Với các định dạng file video truyên thống, dữ liệu chỉ có thể hiển thị khi đã được
download toàn bộ, vì vậy đối với các file video chất lượng cao có dung lượng lớn thì
công việc này sẽ tiêu tốn rất nhiều thời gian. Video Streaming thì khác nó tiết kiệm
thời gian cho người dùng bằng cách sử dụng các công nghệ giải nén kết hợp với player
hiển thị dữ liệu đồng thời trong lúc vẫn tiếp tục download.
Quá trình này được gọi là buffering và có thể được diễn giải như sau: thay vì được
gửi một lần duy nhất, dữ liệu Video Streaming sẽ được truyền đi thành các gói nhỏ,
ban đầu player sẽ lấy về một phần chia nhỏ đó của dữ liệu video trước khi hiển thị,
đồng thời trong lúc hiển thị các gói dữ liệu còn lại sẽ lần lượt được lấy về để kịp cho
việc hiển thị tiếp theo.
Trước khi công nghệ streaming ra đời vào năm 1995, các trang Web đơn thuần
vẫn chỉ là các trang tĩnh, nghèo nàn về hình ảnh đông và âm thanh. Tuy nhiên so sánh
với chất lượng của TV truyền thống thì chất lượng của video online là không chấp
nhận được.
Ngày nay, công nghệ Video Streaming phát triển rất nhanh, các nhà nghiên cứu và
phát triển dường như rất hứng thú trong lĩnh vực này. Chúng ta có thể hoàn toàn hy
vọng chất lượng của video streaming đạt được mức chất lượng TV truyền thống, thậm
chí bằng cả chất lượng DVD.
Với công nghệ streaming, các nhà cung cấp dịch vụ có thể tạo, phân phối và hiển
thị các Video Streaming dưới các định dạng của công nghệ streaming (như RM, MOV
và ASF). Video Streaming thường được sử dụng trong lĩnh vực giải trí hoặc dạy học,
dùng để lưu trữ các tuyển tập các file video hoặc các bài học, cung cấp cho người dùng
các tiện ích như tìm kiếm, liệt kê, và khả năng hiển thị hoặc hiển thị lại các dữ liệu
video theo yêu cầu.

Hoàng Đức Tú – Lớp D08VT1 8
Đồ án tốt nghiệp Đại học Chương I: Công nghệ
Streaming
Video Streaming được thể hiện dưới hai dạng: Video theo yêu cầu (on demand) và
Video thời gian thực (live event).
Video theo yêu cầu là các dữ liệu video được lưu trữ trên multimedia server và
được truyền đến người dùng khi có yêu cầu, người dùng có toàn quyền để hiển thị
cũng như thực hiện các thao tác (tua, dừng, nhẩyqua ) với các đoạn dữ liệu này.
Video thời gian thực là các dữ liệu video được convert trực tiếp từ các nguồn cung cấp
dữ liệu theo thời gian thực (máy camera,microphone, các thiết bị phát dữ liệu video ).
Các dữ liệu này sẽ được multimedia phát quảng bá thành các kênh người dùng sẽ chỉ
có quyền truy nhập bất kỳ kênh ưa thích nào để hiển thị dữ liệu mà không được thực
hiện các thao tác tua, dừng vv trên các dữ liệu đó (giống như TV truyền thống).
Video Streaming sử dụng các giao thức RTP, MMS hay HTTP vv để truyền dữ
liệu theo dạng streaming qua mạng Internet, đồng thời sử dụng các chuẩn nén để giảm
dung lượng dữ liệu, cung cấp khả năng nén dữ liệu tại nhiều mức nén, nhiều kích
thước hiển thị để có thể phù hợp với độ rông băng thông của nhiều mạng truyền dẫn để
tối ưu hoá việc truyền dữ liệu qua mạng. Cũng chính vì vậy việc truyền các Video
Streaming qua mạng sẽ phụ thuộc rất nhiều vào các sản phẩm phần mềm Video
Streaming Server. Trong những năm gần đây có rất nhiều các chuẩn công nghệ video
streming được phát triển với các player :
• Emblaze
• Liquid Audio
• Macromedia Shockwave
• Microsoft Windows Media
• RealNetworks RealMedia
• VDOLive
• Vosiac
• Audioactive
• Apple QuickTime

Một vấn đề lớn được đặt ra cùng với sự phát triển của các công nghệ video
streaming là sự gia tăng của các định dạng dữ liệu riêng và sự không tương thích của
chúng. Hơn 8 ứng dụng khác nhau và các plugin của chúng sẽ phải load về máy người
dùng để có thể hiển thị được tất cả các khuôn dạng của video qua Internet.
Bởi vậy các định dạng video streaming chỉ giới hạn bởi ba công ty được coi là dẫn
đầu trong công nghệ streaming với các sản phẩm: Apple với QuickTime,RealNetworks
với RealMedia, và Microsoft với Windows Media.
Hoàng Đức Tú – Lớp D08VT1 9
Đồ án tốt nghiệp Đại học Chương I: Công nghệ
Streaming
Các hãng này đều cung cấp các bộ công cụ trọn gói gồm Video Streaming Server
(lưu trữ, truyền phát dữ liệu theo các giao thức hỗ trợ ), Video Player (hiển thị dữ
liệu tại phía người dùng), và công cụ kiến tạo dữ liệu với các chuẩn nén .
1.1.3. QuickTime Player
Được phát triển bởi Apple, Quick Time là một ứng dụng có thể chạy trên nhiều
nền hệ thống (Macintosh, Unix và PC) và là chuẩn chính thức sớm nhất cho nền tảng
phần mềm về multimedia. QuickTime hỗ trợ định dạng MOV mà sử dụng công nghệ
Sorenson Video để nén các file dữ liệu audio/video và cung cấp các chuẩn nén cùng
với Player miễn phí.
QuickTimeStreaming Server sử dụng giao thức RTSP (tiêu chuẩn mang tính mở
có thể hoạt động trên nhiều hệ thống từ UNIX đến NT) và hoàn toàn miễn phí.
QuickTime hỗ trợ khá nhiều định dạng, từ các định dạng về hình ảnh như JPEG, BMP,
PICT, PNG, GIF, GIF động, các định dạng video số như AVI, AVR, định dạng
MPEG-1, OpenDML MiniDV, DVCPro, DVCam camcorder và có thể chơi được các
file MP3, MIDI. QuickTime là một công cụ rất mạnh đễ trùnh diễn multimedia và hơn
thế nữa nó còn có thể được sử dụng như một công cụ chỉnh sửa hoặc nén dữ liệu.
Trong những năm gần đây, Apple đã dành nhiều nỗ lực để phát triển một chuẩn
khác cho công nghệ streaming là QuickTime VR (QTVR). Khi ta chụp một vật thể ở
tất cả các góc độ của nó và sử dụng phần mềm để kết nối chúng lại và đưa lên mạng,
QTVR sẽ cho phép người dùng có thể tương tác bằng cách xoay chuyển vật thể, phóng

to, thu nhỏ thông qua sử dụng chuột. Công nghệ này rất thích hợp với việc đưa các
thông tin về triễn lảm bảo tàng trên mạng, các cuộc du lịch ảo, các giới thiệu về mua
bán xe cộ hoặc các sản phẩm thương mại khác vv…
1.1.4. RealPlayer
RealMedia (hay còn được goi là RealVideo hoặc ngắn gọn là Real) được phát triển
bởi RealNetworks. RealNetworks là tiên phong trong lĩnh vực về multimedia trên web
với chuẩn RM (real media) quen thuộc với người dùng trên mạng Internet. Các sản
phẩm phần mềm của Real gồm RealPlayer (phần mềm thông dụng với người duyệt
Web) và RealSystem G2 là thế hệ thứ hai của RealVideo với nhiều chức năng nổi trội
hơn thế hệ trước.
Real sử dụng công nghệ nén Real G2 được phát triển bởi RealNetwork. Hiện nay,
RealVideo là một chuẩn video thông dụng trên Internet, ngoài ra còn có thêm hai
chuẩn nữa là RealAudio (streaming audio) và RealFlash (streaming Flash animation),
tuy nhiên sẽ phải bỏ tiền ra để mua các sản phẩm Real Server Streaming. Real Server
hỗ trợ cả hai giao thức RTSP “true streaming “ và “HTTP streaming” và rất thích hợp
Hoàng Đức Tú – Lớp D08VT1 10
Đồ án tốt nghiệp Đại học Chương I: Công nghệ
Streaming
trong việc truyền phát các audio/video hoặc khuôn dạng media khác như các sản phẩm
của Macromedia Flash.
Gần đây Real có phát hành phiên bản RealProducer 8.5, công cụ tạo và nén với
các dữ liệu real media. Một trong các tính năng của nó là SVT (Scalable Video
Technology), công nghệ này cho phép các máy tính tốc độ chậm có thể hiển thị các tín
hiệu video mà không phải giải nén toàn bộ thông tin gốc. SVT quét toàn bộ dữ liệu
video và lựa chọn tỷ lệ nén tốt nhất dựa vào độ rộng của băng thông.
1.1.5. Windows Media
Windows Media (trước kia có tên gọi là NetShow) là sản phẩm của Microsoft
nhằm phục vụ việc truyền streaming media trên mạng Internet. Windows Media được
phổ biến khá rộng rãi và nay đã có version mới nhất là Windows Media 9. Mặc dùng
Windows Media Streaming Server sử dụng giao thức riêng của nó là MMS (Microsoft

Media Server Protocol) thay vì sử dụng giao thức chuẩn RTSP xong nó hoàn toàn
miễn phí và chạy được trên rất nhiều các ứng dụng nền tảng Server của Windows.
Tương tự như Real, Windows Media tập trung vào việc truyên phát audio/video
qua mạng Internet, hỗ trợ hai giao thức serverbase (MMS) và serverless (HTTP) với
định dạng tiêu chuẩn là ASF (Active Streaming Format).
Windows Media cung cấp một bộ công cụ được đóng gói hoàn chỉnh có tên là
Windows Media Techonologies. Windows Media Technologies gồm Windows Media
Tool dùng để kiến tạo các dữ liệu streaming, Windows Media Services đóng vai trò
Video Streaming Server cung cấp dữ liệu, Windows Media Player là công cụ hiển thị
dữ liệu và ngoài ra còn có Windows Media Right Manager được sử dụng để bảo vệ
chống sao chép dữ liệu.
Windows Media Server hỗ trợ công nghệ “intelligent streaming": cho phép truyền
phát dữ liệu dựa trên độ rộng băng thông Internet giữa người dùng và Server. Mặt
khác công nghê này có khả năng cung cấp việc truyền phát các luồng dữ liệu một cách
liên tục kể cả khi có băng thông của mạng bị suy giảm, khi đó Server sẽ giảm việc
truyền phát dữ liệu cho phù hợp, nếu băng thông bị giảm quá nhiều server sẽ tự động
giảm chất lượng của dữ liệu video cho đến khi chỉ còn dữ liệu audio được truyền qua
mạng.
Vào tháng 12 năm 2000, Microsoft đưa ra bộ công cụ Windows Media Encoding
v8.0, là một cải tiến đáng kể về chất lượng, hỗ trợ định dạng và tính năng. Nó bao gồm
hệ thống nén và mã hoá với chuẩn nén Windows Media Audio 8 và Video 8. Windows
Media Video 8 sử dụng công nghệ nén video tiên tiến MPEG-4 . So sánh với Windows
Media Video 7, nó tăng tỉ lệ nén tới 30 %, cung cấp chất lượng xấp xỉ chất lượng DVD
ở data rate 500 kbps (với phân giải 640 by 480, 24 hình/s ).
Hoàng Đức Tú – Lớp D08VT1 11
Đồ án tốt nghiệp Đại học Chương I: Công nghệ
Streaming
1.2. Các giao thức hỗ trợ
Các công nghệ streaming này hoạt động dựa trên một số giao thức hỗ trợ truyền tải
thời gian thực RTP, RTSP, Tải dữ liệu lũy tiến và tùy vào giao thức nó hoạt động trên

mà mỗi công nghệ có các đặc tính khác nhau. Phần tiếp theo sẽ trình bày một số đặc
tính cụ thể của từng giao thức.
1.2.1. Giao thức truyền tải thời gian thực RTP
Giao thức truyền tải thời gian thực (RTP) mô tả một phương thức đóng gói cho
việc phân phối những luồng video và audio qua mạng IP. Giao thức này đã được phát
triển năm 1996 bởi nhóm chuyên trách truyền tải audio và video của IETF.
RTP là một giao thức thời gian thực, end-to-end cho các dịch vụ mạng đa hướng
và đơn hướng. Vì RTP hoạt động qua giao thức UDP nên nó phù hợp với phân phối đa
hướng, trong khi đó tất cả các giao thức được xây dựng trên giao thức TCP chỉ phù
hợp cho truyền thông đơn hướng. Cũng bởi lý do này mà RTP được sử dụng rộng rãi
trong việc phân phối truyền thông trong trường hợp dùng IPTV, khi một nhà cung cấp
dịch vụ internet có thể điều khiển lưu lượng đa hướng cho phép trong mạng của họ và
họ có thể đạt được nhiều điều từ tỷ lệ mạng đa hướng cung cấp. Đối với dịch vụ đa
phương tiện streaming thì RTP được sử dụng cùng với RTSP, với các video hay audio
được truyền như các luồng riêng biệt.
Đặc tính RTP mô tả hai giao thức con là giao thức truyền dữ liệu (RTP) và giao
thức điều khiển RTP (RTCP) cụ thể như sau:
• RTP được sử dụng cho việc truyền số liệu đa phương tiện ứng dụng các
CODEC khác nhau cùng với các số trình tự và bước thời gian. Những số trình
tự và bước thời gian này cho phép bên thu phát hiện tổn thất gói và thực hiện
sắp xếp lại khi cần thiết và khi đồng bộ các luồng truyền thông, giữa các hoạt
động khác nhau.
• RTCP chỉ rõ thông tin điều khiển cho việc đồng bộ và chất lượng của các
tham số dịch vụ có thể được gửi. Giao thức này nên sử dụng tối đa 5% toàn
băng thông.
RTP có thể được sử dụng tùy ý với một giao thức mô tả phiên hoặc giao thức báo
hiệu như H323, giao thức điều khiển cổng phương tiện (MEGACO), (SCCP ) Skinny
Call Control Protocol , hay giao thức khởi tạo phiên (SIP).
RTP không cung cấp một cơ chế để đảm bảo việc phân phối định kỳ và cũng
không chịu bảo đảm các yêu cầu chất lượng dịch vụ hay việc phân phối hợp lệ hay

không. Hơn nữa, bản thân RTP không có các cơ chế điều khiển luồng, vì thế điều
khiển luồng và tránh xung đột không có khả năng thực hiện.
Hoàng Đức Tú – Lớp D08VT1 12
Đồ án tốt nghiệp Đại học Chương I: Công nghệ
Streaming
1.2.2. Giao thức luồng thời gian thực RTSP
Giao thức luồng thời gian thực (RTSP) là một giao thức điều khiển phiên cung cấp
khung làm việc mở rộng để điều khiển việc phân phối số liệu thời gian thực. RTSP
được phát triển vào năm 1998 bởi nhóm chuyên trách điều khiển phiên đa phương tiện
đa hướng (MMUSIC) của IETF. RTSP rất hữu ích cho việc thiết lập và điều khiển các
phiên truyền thông giữa các điểm cuối, nhưng không chịu trách nhiệm cho việc truyền
dữ truyền thông. Thay vào đó, RTSP dựa trên cơ chế phân phối trên nền RTP. Trái
ngược với HTTP, RTSP là giao thức trạng thái và cả client lẫn server đều có thể phát
các yêu cầu. Những yêu cầu này có thể được thực hiện theo ba cách khác nhau:
(1) Những kết nối cố định được sử dụng cho các giao dịch yêu cầu/ hồi đáp,
(2) Một kết nối cho một giao dịch yêu cầu/ hồi đáp hoặc
(3) Không kết nối.
Một số triển khai RTSP thông dụng là QuickTime Streaming Server (QSS) và
Darwin Streaming Server (DSS) của Apple và Helix Universal Server của
RealNetworks.
1.2.3. Tải dữ liệu lũy tiến (Progressive download)
Tải dữ liệu lũy tiến là một kỹ thuật truyền dữ liệu giữa server và client, kỹ thuật
này ngày càng phổ biến và được sử dụng rộng rãi trên internet. Tải dữ liệu lũy tiến
thông thường có thể được thực hiện bằng việc sử dụng một server HTTP hợp thức.
Người sử dụng yêu cầu nội dụng đa phương tiện được tải lũy tiến thành một bộ đệm
cục bộ. Ngay khi đủ dữ liệu thì phương tiện bắt đầu chuyển sang play. Nếu tốc độ
trình chiếu vượt quá tốc độ tải xuống thì chương trình dừng trình chiếu cho đến khi dữ
liệu được tải về.
Tải dữ liệu lũy tiến có một số nhược điểm như :
• Lãng phí băng thông nếu người sử dụng quyết định dừng xem nội dung

video, vì dữ liệu được truyền và đệm sẽ không được chơi.
• Không thích ứng tốc độ bit vì mỗi client được xem như nhau về mặt băng
thông khả dụng.
• Không hỗ trợ nguồn truyền thông trực tiếp.
1.3. Kết luận chương 1
Chương 1 đã đi vào tìm hiểu khái niệm về công nghệ streaming, ứng dụng video
streaming, các nhà cung cấp công nghệ streaming cùng các giao thức hỗ trợ cho công
nghệ này. Qua đó làm cơ sở lý thuyết để hiểu rõ hơn về công nghệ streaming thích ứng
động sẽ được tìm hiểu trong chương 2.
Hoàng Đức Tú – Lớp D08VT1 13
Đồ án tốt nghiệp Đại học Chương I: Công nghệ
Streaming
Hoàng Đức Tú – Lớp D08VT1 14
Đồ án tốt nghiệp Đại học Chương II: Tổng quan về MPEG DASH
CHƯƠNG II: TỔNG QUAN VỀ MPEG DASH
2.1. Giới thiệu DASH
Công nghệ Streaming thích ứng liên quan đến việc xử lý file nguồn trực tiếp hay
theo yêu cầu và cung cấp chúng đến một số các client căn cứ vào băng thông và mức
sử dụng CPU của chúng. Qua việc giám sát mức sử dụng CPU và/hoặc trạng thái bộ
đệm, các công nghệ streaming thích ứng có thể thay đổi các luồng khi cần thiết để đảm
bảo việc phát liên tiếp hay để nâng cao chất lượng cảm nhận.
Một điểm khác nhau cơ bản giữa các công nghệ streaming thích ứng là giao thức
streaming sử dụng. Ví dụ như streaming động dựa trên RTMP của Adobe sử dụng giao
thức RTMP độc quyền của Adobe, yêu cầu một streaming server và một kết nối gần
như không ngừng giữa player và server. Yêu cầu một streaming server có thể làm tăng
giá thành thực hiện và các gói RTMP có thể sẽ bị các tường lửa chặn.
Các kết nối gần như không ngừng nghĩa là RTMP không thể sử dụng được lợi
điểm của các server đệm như được sử dụng trong chuyển tải HTTP, như giao thức
được sử dụng bởi HTTP Live Streaming của Apple, Smooth Streaming của Microsoft,
và HTTP-based Dynamic Streaming của Adobe. Cả ba các giải pháp truyền tải này sử

dụng các server HTTP tiêu chuẩn để streaming nội dung, loại bỏ yêu cầu cần một
streaming server riêng. Hơn nữa các gói HTTP thân thiện với các tường lửa và có thể
tận dụng được lợi thế của các cơ chế đệm HTTP trên web. Khả năng này còn có thể
giảm cả băng thông sử dụng liên quan tới việc chuyển phát video và cả việc nhiều dữ
liệu có thể được cung cấp từ các bộ đệm web thay vì từ các server gốc, và cải thiện
chất lượng dịch vụ, do dữ liệu đệm thường gần với người xem hơn nên có thể lấy dễ
dàng hơn.
Trong khi hầu hết các video được stream qua web ngày nay vẫn được chuyển phát
thông qua RTMP, thì có một số ngày càng lớn các tổ chức chuyển qua chuyển phát
HTTP.
Tất cả các công nghệ streaming thích ứng dựa trên HTTP đều sử dụng một tổ hợp
các file đa phương tiện mã hóa và các file biểu hiện xác định các luồng khác nhau và
các URL tương ứng của chúng. Các trình phát tương ứng giám sát trạng thái bộ đệm
(HLS) và mức sử dụng CPU (smooth streaming và HTTP dynamic streaming) và thay
đổi các luồng khi cần thiết, xác định vị trí các luồng khác từ các URL xác định trong
các file biểu hiện. HLS sử dụng các phân đoạn Mpeg-2 Transport Stream (M2TS), lưu
trữ hàng nghìn các file M2TS nhỏ, smooth streaming và HDS sử dụng mã hóa thời
gian tìm các phân đoạn cần thiết của các luồng MP4 cơ bản tương ứng.
Hoàng Đức Tú – Lớp D08VT1 15
Đồ án tốt nghiệp Đại học Chương II: Tổng quan về MPEG DASH
DASH là một nỗ lực kết hợp các thành phần tốt nhất của tất cả các công nghệ
streaming thích ứng trên HTTP vào một chuẩn và có thể được sử dụng cho thiết bị từ
di động cho tới các OTT.
2.2. Tổng quan về MPEG DASH
2.2.1. Mô tả hệ thống
Công nghệ Streaming thích ứng động qua HTTP (DASH) xác định XML và định
dạng nhị phân cho phép cung cấp các nội dung phương tiện từ máy chủ HTTP tiêu
chuẩn đến các máy khách HTTP và lưu trữ nội dung bằng tiêu chuẩn HTTP.
DASH xác định các định dạng nhị phân và XML cho phép cung cấp nội dung từ
các server HTTP chuẩn tới các client HTTP và cho phép đệm dữ liệu bởi các bộ đệm

HTTP chuẩn.
Nội dung phần này xác định chủ yếu 2 định dạng:
Mô tả trình diễn phương tiện (MPD) là sự mô tả vể một trình diễn phương tiện,
nghĩa là một trình diễn bị chặn hoặc không bị chặn của trình diễn nội dung đa phương
tiện. Đặc biệt, nó định rõ các định dạng để nguồn thông báo các mã nhận dạng cho các
phân đoạn và cung cấp ngữ cảnh cho các nguồn được xác định trong một trình diễn
phương tiện. Các mã nhận dạng nguồn này là các HTTP-URL có thể được kết hợp với
một loạt byte.
Các định dạng xác định định dạng thân của thực thể hồi đáp HTTP đến một GET
yêu cầu HTTP GET hoặc một phần HTTP GET với phạm vi byte được chỉ định sử
dụng HTTP/1.1 như quy định tại RFC 2616 đến một nguồn được xác định trong MPD.
Dữ liệu phương tiện mã hóa hiệu quả thường được chứa trong các phân đoạn và mô tả
dữ liệu theo hoặc liên kết với các định dạng phương tiện thông dụng.
MPD cung cấp đầy đủ thông tin cho một máy khách để cung cấp một dịch vụ trực
tuyến cho người sử dụng bằng cách truy cập các phân đoạn thông qua giao thức được
quy định trong chương trình của các nguồn được xác định. Trong phần này giao thức
giả định là HTTP/1.1. Được giới thiệu như là một máy khách DASH trong phần còn lại
của 23.009-1. Tuy nhiên, phần của tiêu chuẩn này không cung cấp một đặc điểm kỹ
thuật quy chuẩn cho máy khách.
Hình 2.1 cho thấy một kiến trúc triển khai tiêu biểu trong đó các định dạng được
xác định trong tiêu chuẩn của phần này có thể được sử dụng. Các hộp với đường nét
đậm cho thấy các thiết bị được đề cập trong đặc điểm kỹ thuật này như máy chủ hoặc
xử lý các định dạng được xác định trong đặc điểm kỹ thuật này, trong khi hộp nét đứt
mang tính khái niệm hoặc trong suốt.
Hoàng Đức Tú – Lớp D08VT1 16
Đồ án tốt nghiệp Đại học Chương II: Tổng quan về MPEG DASH
Hình 2.1. Ví dụ về Hệ thống DASH tiêu biểu
Nội dung phần này giải quyết định nghĩa định dạng có thể truy cập vào giao diện
đến các DASH Client được xác định bằng các đường nét đậm. Bất kỳ định dạng khác
hoặc giao diện khác không nằm trong phạm vi của phần tiêu chuẩn này. Trong trường

hợp này giả thiết rằng các DASH Client đã truy cập đến một MPD. MPD cung cấp đầy
đủ thông tin cho DASH Client để cung cấp một dịch vụ trực tuyến cho người sử dụng
bằng cách yêu cầu các Segment từ máy chủ HTTP và tách kênh, giải mã và hiển thị bao
gồm các dòng truyền thông
.
2.2.2. Mô hình máy khách DASH
Các thiết kế định dạng được xác định trong nội dung phần này dựa trên mô hình
máy khách thông tin được trình bày trong hình 2.2. Qua đó cho thấy, cơ cấu truy nhập
DASH nhận MPD, thiết lập, yêu cầu các vấn đề và nhận các phân đoạn hoặc các phần
của phân đoạn. Đầu ra của cơ cấu này là phương tiện ở định dạng MPEG và thông tin
định thời.
Hình 2.2. Mô hình máy khách DASH
2.2.3. Mô hình dữ liệu DASH
DASH được thiết kế để hỗ trợ một mô hình phương tiện trực tuyến, cung cấp các
nội dung phương tiện cùng việc kiểm soát riêng từng máy khách. Máy khách có thể
Hoàng Đức Tú – Lớp D08VT1 17
Đồ án tốt nghiệp Đại học Chương II: Tổng quan về MPEG DASH
yêu cầu dữ liệu bằng cách sử dụng giao thức HTTP từ các máy chủ web không có tính
năng DASH. Do đó, tiêu chuẩn này không tập trung vào máy khách hoặc thủ tục máy
chủ mà chỉ đề cập đến các định dạng dữ liệu được sử dụng để cung cấp một MPD.
Việc thu thập mã hóa và các phiên bản chuyển giao của nội dung đa phương tiện
mô tả thích hợp một trình diễn phương tiện. Nội dung đa phương tiện bao gồm khoảng
thời gian của một hoặc nhiều nội dung đa phương tiện kề nhau. Mỗi khoảng thời gian
của nội dung đa phương tiện sẽ bao gồm một hoặc nhiều thành phần nội dung phương
tiện truyền thông, ví dụ các thành phần âm thanh trong các ngôn ngữ khác nhau và một
thành phần video. Mỗi thành phần nội dung đa phương tiện có một loại thành phần nội
dung đa phương tiện được chuyển giao, ví dụ như âm thanh hoặc hình ảnh.
Mỗi thành phần nội dung đa phương tiện có thể có nhiều phiên bản được mã hóa,
gọi là dòng phương tiện. Mỗi dòng phương tiện kế thừa các thuộc tính của nội dung
truyền thông, khoảng thời gian của nội dung đa phương tiện, thành phần nội dung đa

phương tiện mà từ đó nó đã được mã hóa và ngoài ra nó được nhận các thuộc tính của
quá trình mã hóa như lấy mẫu phụ, các thông số mã hóa, tỷ lệ bit mã hóa, Mô tả dữ
liệu này có liên quan đến việc lựa chọn tĩnh và động các thành phần nội dung đa
phương tiện và dòng truyền thông.
Hình 2.3. Mô hình dữ liệu mức cao của DASH
Hoàng Đức Tú – Lớp D08VT1 18
Đồ án tốt nghiệp Đại học Chương II: Tổng quan về MPEG DASH
DASH dựa trên một mô hình dữ liệu phân cấp như Hình 2.3. Một trình diễn
phương tiện DASH được mô tả bởi một tài liệu mô tả trình diễn phương tiện. Trình tự
mô tả của các khoảng thời gian trong một trình diễn phương tiện. Một khoảng thời
gian trình diễn điển hình cho một khoảng thời gian của nội dung phương tiện gồm có
ngôn ngữ, thuyết minh, phụ đề vv.
Trong một khoảng thời gian, các tài liệu được sắp xếp thành các tập thích ứng. Ví
dụ có thể có một tập thích ứng cho thành phần hình chính và một cái riêng cho thành
phần âm thanh chính. Nếu có sẵn tài liệu khác, ví dụ mô tả âm thanh hoặc phụ đề, sau
đó có thể có một tập thích ứng riêng biệt. Tài liệu cũng có thể được cung cấp dưới
hình thức ghép kênh, trong trường hợp phiên bản hoán đổi của đa thành phần có thể
được mô tả như một tập thích ứng đơn, ví dụ một tập thích ứng chứa cả âm thanh
chính và hình chính cho một chu kỳ. Mỗi thành phần ghép kênh có thể được mô tả
riêng biệt bằng một mô tả thành phần nội dung đa phương tiện.
Một tập thích ứng chứa một bộ các trình diễn, mô tả một phiên bản mã hóa chuyển
giao của một hoặc nhiều thành phần nội dung phương tiện. Một trình diễn bao gồm
một hoặc nhiều dòng phương tiện (cho mỗi thành phần nội dung phương tiện trong
ghép kênh). Một trình diễn bất kỳ trong một tập thích ứng đủ để đưa ra các thành phần
nội dung phương tiện đã chứa. Thông thường, máy khách có thể chuyển đổi từ trình
diễn này sang trình diễn khác trong một tập thích ứng để thích nghi với điều kiện mạng
hoặc các yếu tố khác. Máy khách cũng có thể bỏ qua các trình diễn dựa trên bộ mã hóa
- giải mã hoặc các công nghệ dựng hình khác chúng không hỗ trợ hoặc không phù hợp.
Trong một trình diễn, nội dung có thể được phân chia theo thời gian vào các phân
đoạn. Một URL được cung cấp cho một phân đoạn.

DASH xác định các mốc thời gian khác nhau. Một trong những tính năng quan
trọng trong DASH là các phiên bản được mã hóa các thành phần nội dung phương tiện
khác nhau chia sẻ một mốc thời gian chung. Thời gian trình diễn của đơn vị truy cập
trong nội dung phương tiện là ánh xạ tới các dòng thời gian trình bày chung toàn cầu
cho việc đồng bộ hóa các thành phần khác nhau của phương tiện và để cho phép
chuyển đổi liền mạch các phiên bản khác nhau được mã hóa của các thành phần
phương tiện giống nhau. Mốc thời gian này được gọi tắt là mốc thời gian trình diễn
phương tiện. Bản thân phân đoạn trình diễn chứa chính xác thông tin thời gian trình
diễn phương tiện cho phép đồng bộ hóa các thành phần và chuyển đổi liền mạch.
Một mốc thời gian thứ hai được sử dụng để báo hiệu cho máy khách thời gian hữu
dụng của các phân đoạn đã quy định HTTP-URL. Thời gian này được gọi là thời gian
hữu dụng phân đoạn và được cung cấp trong thời gian thực. Máy khách thường so
sánh thời gian thực với các thời gian hữu dụng phân đoạn trước khi truy cập vào các
phân đoạn tại HTTP-URL đã quy định. Đối với các dịch vụ theo yêu cầu với một
MPD tĩnh, thời gian hữu dụng của tất cả các phân đoạn giống hệt nhau. Đối với các
Hoàng Đức Tú – Lớp D08VT1 19
Đồ án tốt nghiệp Đại học Chương II: Tổng quan về MPEG DASH
dịch vụ trực tiếp khi MPD được cập nhật, thời gian hữu dụng của phân đoạn phụ thuộc
vào vị trí của phân đoạn trong mốc thời gian trình diễn phương tiện.
Các phân đoạn được chỉ định một khoảng thời gian, là thời gian của các phương
tiện chứa trong phân đoạn khi được thể hiện ở tốc độ bình thường. Thông thường tất
cả các phân đoạn trong một trình diễn có cùng hoặc thời gian gần tương tự nhau. Tuy
nhiên thời gian phân đoạn có thể khác nhau từ trình diễn này đến diễn khác. Một trình
diễn DASH có thể được xây dựng với các phân đoạn tương đối ngắn (ví dụ vài giây),
hoặc phân đoạn dài hơn bao gồm một phân đoạn duy nhất cho toàn bộ trình diễn.
Phân đoạn ngắn thường được yêu cầu trong trường hợp nội dung trực tiếp, nơi có
những hạn chế trên độ trễ giáp mối. Thời hạn của một phân đoạn thường rằng buộc
thấp hơn về độ trễ giáp mối. DASH không hỗ trợ khả năng cho phân đoạn được quá
giờ mở rộng: Một phân đoạn là một đơn vị hoàn chỉnh và rời rạc mà toàn bộ phải hữu
dụng.

Các phân đoạn có thể được chia nhỏ thành các phân đoạn con mà mỗi cái chứa
toàn bộ số lượng các đơn vị truy cập hoàn chỉnh. Cũng có thể có những hạn chế cụ thể
định dạng phương tiện ranh giới phân đoạn con, ví dụ trong định dạng tập tin phương
tiện cơ sở ISO một phân đoạn con phải chứa toàn bộ số lượng của các đoạn phim hoàn
chỉnh. Nếu một phân đoạn được chia thành các phân đoạn con được mô tả bằng một
chỉ số phân đoạn nhỏ gọn mà cung cấp phạm vi thời gian trong trình diễn và loạt byte
tương ứng trong phân đoạn bị chiếm bởi mỗi phân đoạn con. Máy khách có thể tải về
chỉ số này trước và sau đó yêu cầu vấn đề cho các phân đoạn con cá nhân.
Máy khách có thể chuyển đổi từ trình diễn này sang trình diễn khác trong một tập
thích ứng tại bất kỳ điểm nào trong phương tiện. Tuy nhiên, chuyển đổi tại các vị trí
tùy ý có thể trở nên phức tạp vì mã hóa phụ thuộc trong các trình diễn và các yếu tố
khác. Đó cũng là mong muốn để tránh tải dữ liệu 'chồng chéo' tức là phương tiện cho
Period thời gian giống nhau từ nhiều trình diễn. Thông thường, chuyển đổi là đơn giản
nhất tại một điểm truy cập ngẫu nhiên trong dòng tải mới. Nhằm hợp thức hóa các yêu
cầu liên quan đến các định nghĩa DASH chuyển đổi một khái niệm độc lập bộ mã hóa-
giải mã về điểm truy cập dòng tải và xác định các loại khác nhau của điểm truy cập
dòng tải.
Phân đoạn và phân đoạn con có thể được thực hiện trong cách mà làm cho việc
chuyển đổi đơn giản hơn. Ví dụ, trong các trường hợp đơn giản nhất mỗi phân đoạn
hoặc phân đoạn con bắt đầu với một điểm truy cập ngẫu nhiên và ranh giới của phân
đoạn hoặc phân đoạn con được sắp xếp qua các trình diễn của một tập thích ứng.
Trong trường hợp này, trình diễn chuyển đổi liên quan đến việc phát đến kết thúc một
phân đoạn con của một trình diễn và sau đó phát từ đầu phân đoạn con kế tiếp của
trình diễn mới. Mô tả trình diễn phương tiện và chỉ số phân đoạn cung cấp các chỉ dẫn
khác nhau mà các thuộc tính mô tả của trình diễn có thể làm cho chuyển đổi đơn giản
Hoàng Đức Tú – Lớp D08VT1 20
Đồ án tốt nghiệp Đại học Chương II: Tổng quan về MPEG DASH
hơn. Các hồ sơ của đặc điểm kỹ thuật này có thể yêu cầu các chỉ tiêu này được thiết
lập theo những cách nhất định làm cho việc thực hiện của khách đơn giản hơn của các
dữ liệu phương tiện tuân thủ các hạn chế được quy định.

Đối với các dịch vụ theo yêu cầu, Mô tả trình diễn phương tiện là một tài liệu tĩnh
mô tả khác nhau các khía cạnh của trình diễn phương tiện. Tất cả các phân đoạn của
trình diễn phương tiện là có sẵn trên máy chủ khi bất kỳ phân đoạn nào trong số đó có
sẵn, đối với dịch vụ trực tiếp. Tuy nhiên, Các phân đoạn trở nên hữu dụng với thời
gian như nội dung được tạo ra. Mô tả trình diễn phương tiện có thể được cập nhật
thường xuyên để phản ánh những thay đổi trong trình diễn ngoài giờ, ví dụ các phân
đoạn URL đối với các phân đoạn mới có thể được thêm vào MPD và đối với phân
đoạn cũ nếu không còn hữu dụng có thể được gỡ bỏ. Tuy nhiên, nếu các phân đoạn
URL được mô tả bằng cách sử dụng một khuôn mẫu, cập nhật này có thể không cần
thiết loại trừ đối với một số trường hợp thừa/chuyển đổi dự phòng.
Máy khách DASH thường sử dụng phương pháp HTTP GET hoặc GET từng phần
HTTP, quy định trong RFC 2616, để truy cập vào các phân đoạn hoặc các phần của
chúng. Việc sử dụng HTTP làm giao thức truyền tải vốn đã có nhiều tính năng tiên
tiến như lưu trữ, chuyển hướng hoặc xác thực. Một ví dụ khác, có thể đạt an ninh
truyền tải trong HTTP được bằng cách sử dụng HTTP trên TLS như quy định trong
RFC 2818.
2.3. Trình diễn phương tiện (Media Presentation)
Media Presentation là một tập hợp dữ liệu có thể truy cập đến máy khách DASH
để cung cấp dịch vụ trực tuyến cho người sử dụng. Một Media Presentation được mô
tả bằng một MPD bao gồm bao gồm các thông tin mới nhất của MPD.
Sau đây là một số ví dụ tiêu biểu về trình diễn phương tiện qua MPD như: khoảng
thời gian, tập thích ứng,…
2.3.1. Khoảng thời gian (Period)
Một trình diễn phương tiện bao gồm một hoặc nhiều Period. Một Period được xác
định bằng một yếu tố Period trong yếu tố MPD.
Loại Period hoặc Period thông thường hoặc Period hữu dụng ban đầu cũng như
thời gian PeriodStart của một Period thông thường được xác định như sau:
Nếu đặc trưng @start có trong Period, thì Period là một Period thông thường và
PeriodStart bằng với giá trị của đặc tính này.
Nếu thuộc tính @start không có mặt, nhưng các yếu tố Period trước đó có chứa

một thuộc tính @duration thì Period mới này cũng là một Period thông thường. Thời
gian bắt đầu của PeriodStart của Period mới là tổng thời gian bắt đầu của PeriodStart
của Period trước đó và giá trị của đặc tính @duration của Period trước.
Hoàng Đức Tú – Lớp D08VT1 21
Đồ án tốt nghiệp Đại học Chương II: Tổng quan về MPEG DASH
Nếu (i) thuộc tính @start không có mặt, và (ii) yếu tố Period là đầu tiên trong
MPD, và (iii) MPD@type là "tĩnh", thì thời gian PeriodStart được cài đặt về số 0.
Nếu (i) thuộc tính @start không có mặt, và (ii) yếu tố Period trước đó không chứa
một đặc tính thời gian @ trong MPD hoặc yếu tố Period là đầu tiên trong MPD, và (iii)
MPD@type là "động" thì Period này là một Early Available Period (xem dưới đây để
biết thêm chi tiết).
Đối với bất kỳ Period thông thường chứa sau đây: PeriodStart phản ánh thời gian
thực tế trôi qua sau khi thực hiện phương tiện của các Period trước trong Media
Presentation này liên quan đến thời gian PeriodStart của Period đầu tiên trong Media
Presentation. Thời gian kéo dài cho đến PeriodStart của Period tiếp theo hoặc đến
Period cuối cùng của Media Presentation. Hơn nữa, sự khác biệt giữa thời gian
PeriodStart của một Period và thời gian PeriodStart của Period sau, nếu đây không
phải là Period cuối cùng hoặc giá trị của MPD@media Presentation Duration, nếu đây
là Period cuối cùng thì thời gian trình diễn trong Media Presentation được
Representation bằng các Representation trong Period này.
Các Period hữu dụng ban đầu có thể được sử dụng để khởi động quảng cáo của dữ
liệu phi phương tiện khác trước khi chính dữ liệu phương tiện trở nên hữu dụng. Các
yếu tố Period tạo tài liệu các Period hữu dụng ban đầu sẽ không diễn ra trước khi bất
kỳ yếu tố Period tạo tài liệu một Period thông thường. Đối với các Period hữu dụng
ban đầu, bất kỳ nguồn nào được công bố trong cùng một yếu tố Period sẽ hữu dụng.
Như một yếu tố Period sẽ không chứa các URL đến các phân đoạn trình diễn. Dữ liệu
được chứa trong cùng một yếu tố Period không có trong Period của Media
Presentation. Chỉ khi thời gian PeriodStart được biết đến thông qua thông tin cập nhật
của MPD như một yếu tố Period trình diễn cho một Period thông thường. Tuy nhiên
một bản cập nhật của MPD có thể loại bỏ một yếu tố Period biểu thị một Period hữu

dụng ban đầu trong các cập nhật sau này của MPD miễn là không có thời gian
PeriodStart được liên kết với Period.
Để tránh điều khiển bằng tay của một yếu tố điều khiển từ xa chứa một yếu tố
Period duy nhất để xác định mốc thời gian Period, ví dụ trong trường hợp tìm kiếm thì
Period@start hoặc Period@duration của chu kỳ trước đó sẽ có trong MPD.
Bảng 2.1. Semantics of Period element
Tên phần tử hoặc Sử dụng Mô tả
Hoàng Đức Tú – Lớp D08VT1 22
Đồ án tốt nghiệp Đại học Chương II: Tổng quan về MPEG DASH
thuộc tính
Period Xác định thông tin của một Period.
@xlink:href O Xác định một sự tham khảo đến một yếu tố
Period bên ngoài.
@xlink:actuate OD
Mặc định:
onReques
t
Xác định hướng dẫn xử lý, có thể là
"onLoad" hoặc "onRequest".
Thuộc tính này sẽ không có nếu thuộc tính
@xlink:href không có mặt.
@id O Xác định một mã nhận dạng cho Period
này. Mã nhận dạng phải là duy nhất trong
phạm vi của bộ Media Presentation.
Nếu không có thì không có mã nhận dạng cho
Period.
@start O Nếu có, xác định thời gian PeriodStart của
Period. Thời gian PeriodStart được sử dụng
như một mấu chốt để xác định thời gian bắt
đầu MPD cho mỗi Media Segment cũng như

xác định thời gian trình diễn của từng đơn vị
truy cập trong mốc thời gian bộ Media
Presentation.
@duration O Nếu có, quy định cụ thể thời gian của Period
để xác định thời gian PeriodStart của Period
tiếp theo.
@bitstreamSwitching OD
Mặc
định:
false
Khi cài đặt 'true', điều này tương đương
như là AdaptationSet@bitstreamSwitching
cho mỗi Adaptation Set chứa trong Period
này được thiết lập để 'true'. Trong trường
hợp này, thuộc tính
AdaptationSet@bitstreamSwitching không
được cài 'false' cho bất kỳ Adaptation Set
nào trong Period này.
BaseURL 0…N Quy định một cơ sở URL có thể được sử
dụng cho việc tham khảo độ phân giải và
lựa chọn URL thay thế.
SegmentBase 0 1 Xác định thông tin Segment Base mặc định
Hoàng Đức Tú – Lớp D08VT1 23
Đồ án tốt nghiệp Đại học Chương II: Tổng quan về MPEG DASH
Thông tin trong yếu tố này bị mất hiệu lực
do thông tin trong
AdaptationSet.SegmentBase và
Representation.SegmentBase, nếu có mặt.
SegmentList 0 1 Xác định thông tin Segment List mặc định.
Thông tin trong yếu tố này bị mất hiệu lực

do thông tin trong
AdapationSet.SegmentList và
Representation.SegmentList, nếu có mặt.
SegmentTemplate 0 1 Xác định thông tin Segment Template mặc
định.
Thông tin trong yếu tố này bị mất hiệu lực
do thông tin trong
AdapationSet.SegmentTemplate và
Representation.SegmentTemplate, nếu có
mặt.
AdaptationSet 0 N Xác định một Adaptation Set.
Ít nhất mỗi Period phải có một Adaptation
Set. Tuy nhiên, yếu tố thực tế có thể chỉ có
trong một yếu tố điều khiển từ xa nếu xlink
sử dụng.
Subset 0 N Xác định một Subset.
Chú thích:
Các thuộc tính: M=Mandatory, O=Optional, OD=Optional với
Default Value, CM=Conditionally Mandatory (điều kiện bắt buộc)
Các phần tử: <minOccurs> <maxOccurs> (N=unbounded)
Lưu ý rằng những điều kiện duy nhất có giá trị mà không cần sử dụng xlink: href.
Nếu liên kết được sử dụng thì tất cả các đặc tính là "tùy chọn" và <minOccurs=0>
Phần tử là in đậm; thuộc tính là không tô đậm và đi trước là một @.
XML syntax
<! Period >
<xs:complexType name="PeriodType">
<xs:sequence>
Hoàng Đức Tú – Lớp D08VT1 24
Đồ án tốt nghiệp Đại học Chương II: Tổng quan về MPEG DASH
<xs:element name="BaseURL" type="BaseURLType" minOccurs="0

" maxOccurs="unbounded"/>
<xs:element name="SegmentBase" type="SegmentBaseType" minOcc
urs="0"/>
<xs:element name="SegmentList" type="SegmentListType" minOccu
rs="0"/>
<xs:element name="SegmentTemplate" type="SegmentTemplateType"
minOccurs="0"/>
<xs:element name="AdaptationSet" type="AdaptationSetType" minO
ccurs="0"
maxOccurs="unbounded"/>
<xs:element name="Subset" type="SubsetType" minOccurs="0" max
Occurs="unbounded"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0"
maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute ref="xlink:href"/>
<xs:attribute ref="xlink:actuate" default="onRequest"/>
<xs:attribute name="id" type="xs:string" />
<xs:attribute name="start" type="xs:duration"/>
<xs:attribute name="duration" type="xs:duration"/>
<xs:attribute name="bitstreamSwitching" type="xs:boolean" default="
false"/>
<xs:anyAttribute namespace="##other" processContents="lax"/>
</xs:complexType>
2.3.2. Các tập thích ứng (Adaptation Sets)
Mỗi Period bao gồm một hoặc nhiều AdaptationSet. Một AdaptationSet được mô
tả bằng một yếu tố AdaptationSet. Các yếu tố AdaptationSet chứa trong một yếu tố
Period.
Một Adaptation Set chứa các trình diễn thay thế, tức là chỉ một trình diễn trong
một Adaptation Set dự kiến sẽ xuất hiện cùng lúc. Tất cả các trình diễn trong một

Adaptation Set cho các thành phần nội dung phương tiện giống nhau do đó chứa các
luồng phương tiện, các luồng này được xem là tương đương nhau.
• Ngôn ngữ được mô tả bằng đặc tính là @lang,
Hoàng Đức Tú – Lớp D08VT1 25

×