1、BSI Standards Publication BS ISO/IEC 23008-10:2015 Information technology High efficiency coding and media delivery in heterogeneous environments Part 10: MPEG Media Transport Forward Error Correction (FEC) codesBS ISO/IEC 23008-10:2015 BRITISH STANDARD National foreword This British Standard is the
2、 UK implementation of ISO/IEC 23008-10:2015. The UK participation in its preparation was entrusted to Technical Committee IST/37, Coding of picture, audio, multimedia and hypermedia information. A list of organizations represented on this committee can be obtained on request to its secretary. This p
3、ublication does not purport to include all the necessary provisions of a contract. Users are responsible for its correct application. The British Standards Institution 2015. Published by BSI Standards Limited 2015 ISBN 978 0 580 83300 7 ICS 35.040 Compliance with a British Standard cannot confer imm
4、unity from legal obligations. This British Standard was published under the authority of the Standards Policy and Strategy Committee on 31 May 2015. Amendments/corrigenda issued since publication Date T e x t a f f e c t e dInformation technology High efficiency coding and media delivery in heteroge
5、neous environments Part 10: MPEG Media Transport Forward Error Correction (FEC) codes Technologies de linformation Codage haute efficacit et livraison des medias dans des environnements htrognes Partie 10: Codes de correction derreur anticipe pour le transport des medias MPEG INTERNATIONAL STANDARD
6、ISO/IEC 23008-10 Reference number ISO/IEC 23008-10:2015(E) First edition 2015-04-15 ISO/IEC 2015 BS ISO/IEC 23008-10:2015ii ISO/IEC 2015 All rights reserved COPYRIGHT PROTECTED DOCUMENT ISO/IEC 2015 All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or uti
7、lized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address below or ISOs member body in the country of the requester. ISO copyri
8、ght office Case postale 56 CH-1211 Geneva 20 Tel. + 41 22 749 01 11 Fax + 41 22 749 09 47 E-mail copyrightiso.org Web www.iso.org Published in Switzerland ISO/IEC 23008-10:2015(E)BS ISO/IEC 23008-10:2015ISO/IEC 23008-10:2015(E)Foreword iv Introduction v 1 Scope . 1 2 Normative references 1 3 Terms,
9、definitions, symbols, and abbreviated terms . 1 3.1 Terms and definitions . 1 3.2 Symbols and abbreviated terms. 2 3.3 Conventions . 2 4 Overview . 2 5 FEC Code Points 3 6 Specification for Reed-Solomon Codes 3 6.1 Introduction 3 6.2 Generator matrix . 4 7 Specification for Structured Low-Density Pa
10、rity-Check (S-LDPC) Codes .4 7.1 Introduction 4 7.2 Structured LDPC Codes 5 7.3 Creating Parity-Check Matrix . 5 7.4 Encoding Algorithm 6 7.5 Decoding Algorithm 7 7.6 Base matrix 7 8 Specification 6330 code and RaptorQ LA code.11 8.1 Introduction .11 8.2 6330 code .12 8.3 RaptorQ LA 12 8.3.1 RaptorQ
11、 LA First Encoding Step Intermediate symbol generation .13 8.3.2 Layer-Aware RaptorQ Second Encoding Step 15 8.3.3 Layer-Aware RaptorQ Decoding 15 9 Specification for FireFort Low Density Generate Matrix (FireFort-LDGM) codes16 9.1 Introduction .16 9.2 FireFort Low Density Generator Matrix (FireFort
12、-LDGM) Codes 16 9.2.1 Definition .16 9.2.2 FF-LDGM-Specific Elements 17 9.2.3 Parity Check Matrix of FF-LDGM Scheme 18 9.2.4 Creating a Sparse Matrix 18 9.2.5 Creating a Punctured Sparse Matrix 22 9.2.6 Source symbol division scheme .24 9.2.7 Structured interleaving and de-interleaving scheme 25 9.2
13、.8 FF-LDGM code Encoding Algorithm .25 9.2.9 FF-LDGM code Decoding Algorithm .26 9.3 Layer-Aware FireFort-LDGM (LA FireFort-LDGM) Codes .26 9.3.1 Specification of the LA FF-LDGM Scheme .26 9.3.2 Encoding Algorithm .27 9.3.3 Decoding Algorithm .27 10 Specification for FEC code algorithms in SMPTE 202
14、2-1.27 Bibliography .28 ISO/IEC 2015 All rights reserved iii Contents PageBS ISO/IEC 23008-10:2015ISO/IEC 23008-10:2015(E) Foreword ISO (the International Organization for Standardization) and IEC (the International Electrotechnical Commission) form the specialized system for worldwide standardizati
15、on. National bodies that are members of ISO or IEC participate in the development of International Standards through technical committees established by the respective organization to deal with particular fields of technical activity. ISO and IEC technical committees collaborate in fields of mutual
16、interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the work. In the field of information technology, ISO and IEC have established a joint technical committee, ISO/IEC JTC 1. The procedures used to develop this document and t
17、hose intended for its further maintenance are described in the ISO/IEC Directives, Part 1. In particular the different approval criteria needed for the different types of document should be noted. This document was drafted in accordance with the editorial rules of the ISO/IEC Directives, Part 2 (see
18、 www.iso.org/directives). Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights. Details of any patent rights identified during the development of t
19、he document will be in the Introduction and/or on the ISO list of patent declarations received (see www.iso.org/patents). Any trade name used in this document is information given for the convenience of users and does not constitute an endorsement. For an explanation on the meaning of ISO specific t
20、erms and expressions related to conformity assessment, as well as information about ISOs adherence to the WTO principles in the Technical Barriers to Trade (TBT) see the following URL: Foreword - Supplementary information The committee responsible for this document is ISO/IEC JTC 1, Information tech
21、nology, SC 29, Coding of audio, picture, multimedia and hypermedia information. ISO/IEC 23008 consists of the following parts, under the general title Information technology High efficiency coding and media delivery in heterogeneous environments: Part 1: MPEG media transport (MMT) Part 2: High effic
22、iency video coding (HEVC) Part 3: 3D Audio Part 10: MPEG Media Transport Forward Error Correction (FEC) codes Part 11: MPEG Media Transport Composition Informationiv ISO/IEC 2015 All rights reservedBS ISO/IEC 23008-10:2015ISO/IEC 23008-10:2015(E) Introduction This part of ISO/IEC 23008 specifies app
23、lication level forward error correction (FEC) codes which can be used with application level-forward error correction (AL-FEC) framework of ISO/IEC 23008-1 MPEG Media Transport (MMT) to provide reliable delivery in IP network and non IP network environments that are prone to packet losses. ISO/IEC 2
24、015 All rights reserved vBS ISO/IEC 23008-10:2015 ISO/IEC 23008-10:2015(E)BS ISO/IEC 23008-10:2015Information technology High efficiency coding and media delivery in heterogeneous environments Part 10: MPEG Media Transport Forward Error Correction (FEC) codes 1 Scope This part of ISO/IEC 23008 speci
25、fies application level forward error correction (FEC) codes which can be used with AL-FEC framework of ISO/IEC 23008-1 MPEG Media Transport to provide reliable delivery in IP network and non IP network environments that are prone to packet losses. 2 Normative references The following documents, in w
26、hole or in part, are normatively referenced in this document and are indispensable for its application. For dated references, only the edition cited applies. For undated references, the latest edition of the referenced document (including any amendments) applies. ISO/IEC 23008-1, Information technol
27、ogy High efficiency coding and media delivery in heterogeneous environments Part 1: MPEG media transport (MMT) IETF RFC 5170, Low Density Parity Check (LDPC) Staircase and Triangle Forward Error Correction (FEC) Schemes, June 2008 IETF RFC 5510, Reed-Solomon Forward Error Correction (FEC) Schemes, A
28、pril 2009 IETF RFC 6330, RaptorQ Forward Error Correction Scheme for Object Delivery, August 2011 SMPTE2022-1, Forward Error Correction for Real-Time Video/Audio Transport Over IP Networks 3 Terms, definitions, symbols, and abbreviated terms For the purposes of this document, the following terms and
29、 definitions apply. 3.1 Terms and definitions 3.1.1 code rate ratio between the number of source symbols and the number of encoding symbols 3.1.2 encoding symbol unit of data generated by the encoding process 3.1.3 encoding symbol block set of encoding symbols from the encoding process of a source s
30、ymbol block 3.1.4 3FEC code algorithm for encoding data such that the encoded data flow is resilient to data loss INTERNATIONAL ST ANDARD ISO/IEC 23008-10:2015(E) ISO/IEC ISO pub-date year All rights reserved 1BS ISO/IEC 23008-10:2015ISO/IEC 23008-10:2015(E) 3.1.5 FEC payload ID identifier that iden
31、tifies the contents of a MMT packet with respect to the MMT FEC scheme 3.1.6 repair symbol encoding symbol that is not a source symbol 3.1.7 repair symbol block set of repair symbols which can be used to recover lost source symbols 3.1.8 source symbol unit of data used during the encoding process 3.
32、1.9 source symbol block set of source symbols which is used to generate repair symbol block by FEC code 3.1.10 systematic code any error correction code in which the source symbols are part of output encoded symbols 3.2 Symbols and abbreviated terms For the purpose of this document, the symbols and
33、abbreviated terms given below apply. AL-FEC application layer (level) forward error correction FEC forward error correction LA layer aware LA-FEC layer aware forward error correction LDGM low density generator matrix LDPC low density parity check MMT MPEG media transport RS Reed-Solomon S-LDPC struc
34、tured low density parity check 3.3 Conventions The following conventions apply in this document: The Big Endian number representation scheme is used. 4 Overview This part of ISO/IEC 23008 specifies application level forward error correction (FEC) codes. All codes specified in this part are systemati
35、c codes. This specification defines six FEC code algorithms which each FEC code algorithm shall generate a repair symbol block from a source symbol block as shown in Figure 1. The source symbol block consists 2 ISO/IEC 2015 All rights reservedBS ISO/IEC 23008-10:2015ISO/IEC 23008-10:2015(E) of K sou
36、rce symbols of size T (in bytes) and the repair symbol block consists of P repair symbols of size T (in bytes). Figure 1 Input and Output of FEC code 5 FEC Code Points Table 1 specifies the code points for the FEC code algorithms specified in this part of ISO/IEC 23008. The FEC code algorithms thems
37、elves are specified in Clauses 6 to 10. Table 1 FEC Code Algorithms and Its Code Point Code Point FEC Code Algorithm 0 Reserved for ISO use 1 RS code (sub-Clause 6) 2 S_LDPC code (sub-Clause 7) 3 6330 code (sub-Clause 8.2) 4 RaptorQ LA code (sub-Clause 8.3) 5 FireFort-LDGM code (sub-Clause 9) 6 FEC
38、code algorithm in SMPTE 2022-1 (sub-Clause 10) 7 255 Reserved for ISO use NOTE When one of the FEC code algorithms specified in this specification is used for MMT AL-FEC framework, fec_code_id_for_repair_flow field as defined in ISO/IEC 23008-1:2014 Annex C.6 is set to its corresponding code point a
39、s specified in Table 1. 6 Specification for Reed-Solomon Codes 6.1 Introduction In this clause, the following notations are used. K: number of source symbols in a source symbol block P: number of repair symbols in a repair symbol block ISO/IEC 2015 All rights reserved 3BS ISO/IEC 23008-10:2015ISO/IE
40、C 23008-10:2015(E) G = I; A: a systematic generator matrix for K+P, K-RS code where I is the identity matrix of order K and A is a K P matrix. A (N, K) ReedSolomon code is a linear block code of length N (over Galois Field F) with dimension K and minimum Hamming distance N K + 1. The ReedSolomon cod
41、e is optimal in the sense that the minimum distance has the maximum value possible for a linear code of size (N, K); this is known as the Singleton bound. Such a code is also called a maximum distance separable (MDS) code. The clause 8 of IETF RFC5510 gives full specification of the RS code for the
42、erasure channel and especially, the clause 8.2.1 of IETF RFC5510 gives encoding principle for RS encoding algorithm. The generate matrix G perfectly characterizes the RS code. In this specification, it specifies only the case when m = 8 (over GF(2 8 ) with the generator matrix given in the sub-claus
43、e 6.2. Therefore, an encoding symbol block shall be generated from a source symbol block by the given generator matrix in the sub- clause 6.2 and this FEC code shall output the repair symbol block of the encoding symbol block. 6.2 Generator matrix The generator matrix G has the form G = I; A where I
44、 is an identity matrix of size K and A is a K P matrix, (K + P) 255. Let be the root of the polynomial 1 + x 2+ x 3+ x 4+ x 8which is the primitive polynomial of degree 8 given in sub-clause 8.1 of IETF RFC5510. The non-zero elements of the finite filed GF(2 8 ) are generated by a primitive element
45、and the elements of GF(2 8 ) are represented by bytes (group of 8 bits), using the polynomial base representation, with ( 7 , 6 , 5 , 4 , 3 , 2 , , 1) as a basis. The root is thus represented as: = 00000010. For RS code specified in this specification, the matrix A is a Cauchy matrix which shall hav
46、e entries A i,j= 1/(x i+ y j ) for 0 i K and 0 j P where x iand y jare elements in GF(2 8 ) and are defined as: x i= 254 i , and y j= j . Therefore, the matrix A is given by NOTE Any submatrix of the Cauchy matrix is invertible. 7 Specification for Structured Low-Density Parity-Check (S-LDPC) Codes
47、7.1 Introduction A Low-Density-Parity-Check (LDPC) code is a linear block code defined by its parity-check matrix. In this specification, we use a special case of LDPC codes, called structured LDPC (S-LDPC) codes, which have an efficient encoding algorithm and adopted as an FEC code in standardizati
48、ons such as IEEE 802.16e and 801.11n. In this document, we use the following notations. K: number of source symbols in a source symbol block4 ISO/IEC 2015 All rights reservedBS ISO/IEC 23008-10:2015ISO/IEC 23008-10:2015(E) K: number of source symbols in an extended source symbol block P: number of repair symbols in a repair symbol block P: number of repair symbols in an extended repair symbol block S(i): the i-th source symbol in a source