Danh sách Segment (Segment list)

Một phần của tài liệu đồ án mpeg dash – chuẩn công nghệ mới nhất hỗ trợ streaming thích ứng động qua http (Trang 47 - 50)

Danh sách Segment được định nghĩa bởi một hoặc nhiều phần tử SegmentList. Chính mỗi phần tử SegmentList chứa một danh sách các phần tử SegmentURL cho một danh sách liên tiếp các Segment URLs. Mỗi Segment URLs có thể chứa các phân đoạn đa phương tiện URL và có thể một loạt byte. Các phần tử Segment URL cũng có thể chứa Index Segment.

Bảng 2.8. Ý nghĩa của phần tử SegmentList Tên phần tử hay

thuộc tính

Sử dụng Mô tả

SegmentList Chỉ định thông tin Segment.

@xlink:href O Chỉ định một tham chiếu từ bên ngoài phần tử SegmentList.

@xlink:actuate OD

default:“o

nRequest"

Chỉ định các thiết lập xử lý, có thể là một trong hai "onload" hoặc "onRequest".

MultipleSegment Base

Information

Multiple Segment dựa trên thông tin được định nghĩa trong SegmentBase Information.

SegmentURL 0…N Chỉ định một Media Segment URL và có thể

chỉ định Index Segment URL.

@media O Kết hợp với các thuộc tính @mediaRange xác định HTTP-URL cho Media Segment.

Nó được định dạng như một <absolute-URI> theo RFC 3986, khoản 4,3, với một chương trình cố định "http" hay "https" hoặc như là một <relative-ref> theo RFC 3986, khoản 4,2.

Nếu không có, sau đó bất kỳ yếu tố baseUrl được ánh xạ đến các thuộc tính @media và các thuộc tính phạm vi sẽ có mặt.

@mediaRange O Quy định cụ thể phạm vi byte trong tài nguyên được xác định bởi các @media tương ứng với Media Segment.

Phạm vi byte phải được thể hiện và được định dạng như là một byte-spec được định nghĩa trong RFC 2616, khoản 14.35.1. Bị hạn chế một biểu thức duy nhất xác định một phạm vi tiếp giáp của byte.

Nếu không có mặt, cho Segment Media là toàn bộ nguồn tài nguyên được tham chiếu bởi thuộc tính @media.

@index O Trong kết hợp với thuộc tính @indexRange chỉ định HTTP-URL cho Index Segment. Nó sẽ được định dạng như một <absolute- URI> theo RFC 3986, Khoản 4.3, với 1 chương trình được cố định

bởi “http” hoặc “https” hoặc như

một <relative-ref> theoRFC 3986, Khoản 4.2. Nếu không có và @indexRange không có, sau đó không có thông tin Index Segment được cung cấp cho Media Segment này.

Nếu không có và @indexRange không có, sau đó thuộc tính @media được ánh xạ

đến @index. Nếu thuộc tính @media không có mặt, sau đó bất kỳ phần tử BaseURL được ánh xạ đến thuộc tính @index và thuộc tính

@indexRange sẽ có mặt.

@indexRange O Quy định cụ thể phạm vi byte trong tài nguyên được xác định bằng @index tương ứng cho Index Segment. Nếu @index không có mặt, nó xác định phạm vi byte của Segment Index trong Media Segment.

Phạm vi byte phải được thể hiện và được định dạng như là một byte-spec được định nghĩa

trong RFC 2616, khoản 14.35.1. Bị hạn chế một biểu thức duy nhất xác định một phạm vi tiếp giáp của byte.

Nếu không có mặt, cho Index Segment là toàn bộ nguồn tài nguyên được tham chiếu bởi thuộc tính @index. (adsbygoogle = window.adsbygoogle || []).push({});

Chú thích:

Các thuộc tính: M=Mandatory, O=Optional, OD=Optional với giá trị mặc định, CM=Conditionally Mandatory (điều kiện bắt buột)

Các phần tử: <minOccurs>...<maxOccurs> (N=unbounded)

Lưu ý rằng điều kiện chỉ giữ mà không cần sử dụng @xlink:href. Nếu liên kết được sử dụng, sau đó tất cả các thuộc tính "tùy chọn" và <minOccurs=0>

Phần tử là tô đậm; thuộc tính là không tô đậm và đi trước là một @.

Cú pháp XML

<!-- Segment List -->

<xs:complexType name="SegmentListType">

<xs:complexContent>

<xs:extension base="MultipleSegmentBaseType">

<xs:sequence>

<xs:element name="SegmentURL" type="SegmentURLType" minOccurs="0" ma xOccurs="unbounded"/>

</xs:sequence>

<xs:attribute ref="xlink:href"/>

<xs:attribute ref="xlink:actuate" default="onRequest"/>

</xs:extension>

</xs:complexContent> </xs:complexType> <!-- Segment URL -->

<xs:complexType name="SegmentURLType">

<xs:sequence>

<xs:any namespace="##other" processContents="lax" minOccurs="0" max Occurs="unbounded"/>

<xs:attribute name="media" type="xs:anyURI"/>

<xs:attribute name="mediaRange" type="xs:string"/>

<xs:attribute name="index" type="xs:anyURI"/>

<xs:attribute name="indexRange" type="xs:string"/>

<xs:anyAttribute namespace="##other" processContents="lax"/>

</xs:complexType>

Một phần của tài liệu đồ án mpeg dash – chuẩn công nghệ mới nhất hỗ trợ streaming thích ứng động qua http (Trang 47 - 50)