1、Information technology High efficiency coding and media delivery in heterogeneous environments Part 3: 3D audio AMENDMENT 4: Carriage of system data Technologies de linformation Codage haute efficacit et livraison des medias dans des environnements htrognes Partie 3: Audio 3D AMENDEMENT 4: Transport
2、 de donnes systme INTERNATIONAL STANDARD ISO/IEC 23008-3 First edition 2015-10-15 Reference number ISO/IEC 23008-3:2015/Amd.4:2016(E) AMENDMENT 4 2016-11-01 ISO/IEC 2016 ii ISO/IEC 2016 All rights reserved COPYRIGHT PROTECTED DOCUMENT ISO/IEC 2016, Published in Switzerland All rights reserved. Unles
3、s otherwise specified, no part of this publication may be reproduced or utilized 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 ad
4、dress below or ISOs member body in the country of the requester. ISO copyright office Ch. de Blandonnet 8 CP 401 CH-1214 Vernier, Geneva, Switzerland Tel. +41 22 749 01 11 Fax +41 22 749 09 47 copyrightiso.org www.iso.org ISO/IEC 23008-3:2015/Amd.4:2016(E) ISO/IEC 23008-3:2015/Amd.4:2016(E) Foreword
5、 ISO (the International Organization for Standardization) and IEC (the International Electrotechnical Commission) form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of International Standards through technical comm
6、ittees established by the respective organization to deal with particular fields of technical activity. ISO and IEC technical committees collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the
7、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 those intended for its further maintenance are described in the ISO/IEC Directives, Part 1. In particular the different approval cri
8、teria 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 www.iso.org/directives). Attention is drawn to the possibility that some of the elements of this document may be the subject of pa
9、tent 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 the document will be in the Introduction and/or on the ISO list of patent declarations received (see www.iso.org/patents). Any trade
10、 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 terms and expressions related to conformit y assessment, as well as information about ISOs adherence to the World Trade Organization
11、 (WTO) principles in the Technical Barriers to Trade (TBT) see the following URL www.iso.org/iso/foreword.html. The committee responsible for this document is ISO/IEC JTC 1, Information technology, SC 29, Coding of audio, picture, multimedia and hypermedia information. ISO/IEC 2016 All rights reserv
12、ed iii Information technology High efficiency coding and media delivery in heterogeneous environments Part 3: 3D audio AMENDMENT 4: Carriage of system data Clause 18 Add the following: 18.6 Carriage of system metadata for the interaction with system engine The system data is encapsulated in an MHAS
13、Packet as part of an MHAS audio data stream. 18.6.1 Syntax For the MHAS Packet with MHASPacketType of PACTYP _SYSMETA, SysMetaPayload is defined as shown in Table AMD.1. If a packet with MHASPacketType of PACTYP _SYSMETA is present in the MPEG-H 3D Audio MHAS stream, MHAS Packets of type PACTYP_MPEG
14、H3DAFRAME shall also be present in the stream. The total bitrate associated with all packets of type PACTYP _SYSMETA shall not be greater than 1 % of the audio bitrate, averaged over a 5 s time window. For example, if the nominal audio bitrate is 512 kb/s and one PACTYP _SYSMETA MHAS Packet of lengt
15、h 256 bytes is transmitted each second, the bitrate associated with these packets is 0.4 % of the audio bitrate. Table AMD.1 Syntax of SysMetaPayload Syntax No. of bits Mnemonic SysMetaPayload () sysType 8 uimsbfif (sysType=0) t35Code; 1640 uimsbfelse if (sysType=0xFF) uuid; 128 uimsbfshortUuid; 8 u
16、imsbfsysData; var*8 uimsbf 18.6.2 Semantics sysType This element indicates corresponding reference of the system data as shown in Table AMD.2. This field takes either a dynamically assigned value (see below under shortUUID) or one of two reserved values. ISO/IEC 23008-3:2015/Amd.4:2016(E) ISO 2016 A
17、ll rights reserved 1 ISO/IEC 23008-3:2015/Amd.4:2016(E) Table AMD.2 Value of sysType Value Corresponding References 0 ITU T.35 ID follows 1-254 sysType is UUID short form (no additional ID follows). See uuid and shortUuid field semantics below. 255 Full UUID and its short form follow t35Code For sys
18、Type value 0, this field shall be the “country code” field (1 or 2 bytes) followed by the “manufacturer code” field (1 or more bytes) as defined by ITU T.35 2. The length is variable, but cannot be less than 2 bytes. uuid A binary encoding of UUID as defined in IETF RFC 4122 1 . shortUuid For sysTyp
19、e values 1-254, the sysType value is the short form value of the UUID corresponding to the previous field, uuid. The long form identifier of the system type, uuid, is dynamically mapped to this short form identifier, shortUuid, and this short form identifier can occur later in the same stream to ref
20、er to the associ- ated UUID. This technique saves identifier overhead. The sysType value 255 both provides sysData associated with a UUID, and establishes a mapping between a shortUuid and the full uuid, such that the sysType field in subsequent packets may be equal to shortUuid to indicate that the
21、 sysData in those packets is associated with this previously mapped uuid. The value 0 or 255 shall not be used for shortUuid. Note that the system for which the system metadata applies is responsible for ensuring that the frequency of establishment, and the expiry period (if any), of mappings betwee
22、n short form and long form identifiers are appropriate to the application. sysData The variable length system data payload. Its length is the bytes that remain from the MHAS Packet length after the preceding fields in SysMetaPayload(). 18.6.3 Processing at the MPEG-H 3D Audio Decoder MPEG-H 3D Audio
23、 decoder should extract the MHAS Packet with PACTYP_SYSMETA and, if sysType, t35Code, uuid and shortUuid that occur in the SysMetaPayload() are understood, deliver the complete packet (including the MHAS header) in binary to a system engine known to handle such a sysType. If the sysType, t35Code, uu
24、id and shortUuid fields in the SysMetaPayload() are not understood, the Audio decoder should discard the Packet. Both the length and value of the uuid and t35Code fields of interest to the decoder are pre-known to the decoder. For t35Code, there is the possibility of a length overrun (e.g. checking
25、for a length of 4 bytes when it is only 3 bytes long). Decoders should ensure the comparison length does not exceed the MHAS Packet length. Any overrun on the comparison length will spill harmlessly into the sysData and the comparison will always fail in such conditions due to the progressive nature
26、 of the t35Code encoding. That is, if all the bytes match in t35Code then it is a match regardless of the sysData contents.2 ISO 2016 All rights reserved ISO/IEC 23008-3:2015/Amd.4:2016(E) 2 Updates to MHAS Table 139 replace: Syntax No. of bits Mnemonic MHASPacketPayload(MHASPacketType) switch (MHAS
27、PacketType) case PACTYP_SYNC:0xA5; /* syncword*/ 8 uimsbfbreak;case PACTYP_MPEGH3DACFG:mpegh3daConfig();break;case PACTYP_MPEGH3DAFRAME:mpegh3daFrame();break;case PACTYP_FILLDATA:for (i=0; i MHASPacketLength; i+) mhas_fill_data_byte(i) ; 8 bslbfbreak;case PACTYP_SYNCGAP:syncSpacingLength = escapedVa
28、lue(16,24,24); 16,40,64 uimsbfbreak;case PACTYP_MARKER:for (i=0; i MHASPacketLength; i+) marker_byte(i); 8 bslbfbreak;case PACTYP_CRC16:mhasParity16Data; 16 bslbfbreak;case PACTYP_CRC32:mhasParity32Data; 32 bslbfbreak;case PACTYP_DESCRIPTOR:for (i=0; i MHASPacketLength; i+) mhas_descriptor_data_byte
29、(i); 8 bslbfbreak;case PACTYP_USERINTERACTION:mpegh3daElementInteraction();break;case PACTYP_LOUDNESS_DRC:mpegh3daLoudnessDrcInterface(); ISO 2016 All rights reserved 3 ISO/IEC 23008-3:2015/Amd.4:2016(E) Syntax No. of bits Mnemonicbreak;case PACTYP_BUFFERINFO:mhas_buffer_fullness_present 1 uimsbfif
30、(mhas_buffer_fullness_present)mhas_buffer_fullness = escapedVal- ue(15,24,32); 15,39,71 uimsbfbreak;ByteAlign(); with: Syntax No. of bits Mnemonic MHASPacketPayload(MHASPacketType) switch (MHASPacketType) case PACTYP_SYNC:0xA5; /* syncword*/ 8 uimsbfbreak;case PACTYP_MPEGH3DACFG:mpegh3daConfig();bre
31、ak;case PACTYP_MPEGH3DAFRAME:mpegh3daFrame();break;case PACTYP_AUDIOSCENEINFO:mae_AudioSceneInfo();break;case PACTYP_FILLDATA:for (i=0; i MHASPacketLength; i+) mhas_fill_data_byte(i); 8 bslbfbreak;case PACTYP_SYNCGAP:syncSpacingLength = escapedValue(16,24,24); 16,40,64 uimsbfbreak;case PACTYP_MARKER
32、:for (i=0; i MHASPacketLength; i+) marker_byte(i); 8 bslbfbreak;case PACTYP_CRC16:mhasParity16Data; 16 bslbfbreak;case PACTYP_CRC32:4 ISO 2016 All rights reserved ISO/IEC 23008-3:2015/Amd.4:2016(E) Syntax No. of bits MnemonicmhasParity32Data; 32 bslbfbreak;case PACTYP_GLOBAL_CRC16:global_CRC_type; 2
33、 bslbfnumProtectedPackets; 6 bslbfmhasParity16Data; 16 bslbfbreak;case PACTYP_ GLOBAL_CRC32:global_CRC_type; 2 bslbfnumProtectedPackets; 6 bslbfmhasParity32Data; 32 bslbfbreak;case PACTYP_DESCRIPTOR:for (i=0; i MHASPacketLength; i+) mhas_descriptor_data_byte(i); 8 bslbfbreak;case PACTYP_USERINTERACT
34、ION:mpegh3daElementInteraction();break;case PACTYP_LOUDNESS_DRC:mpegh3daLoudnessDrcInterface();break;case PACTYP_BUFFERINFO:mhas_buffer_fullness_present 1 uimsbfif (mhas_buffer_fullness_present)mhas_buffer_fullness = escapedVal- ue(15,24,32); 15,39,71 uimsbfbreak;case PACTYP_AUDIOTRUNCATION:audioTru
35、ncationInfo();break;case PACTYP_SYSMETA:SysMetaPayload ();break;ByteAlign(); ISO 2016 All rights reserved 5 ISO/IEC 23008-3:2015/Amd.4:2016(E) Table 141 replace: MHASPacketType Value PACT YP_FILLDATA 0 PACTYP_MPEGH3DACFG 1 PACTYP_MPEGH3DAFRAME 2 /* reserved for ISO use */ 3-5 PACT YP_ SY NC 6 PACT Y
36、P_ SY NCGAP 7 PACTYP_MARKER 8 PACT YP_CRC16 9 PACT YP_CRC32 10 PACT YP_DESCRIPTOR 11 PACTYP_USERINTERACTION 12 PACTYP_LOUDNESS_DRC 13 PACTYP_BUFFERINFO 14 /* reserved for ISO use */ 15-127 /* reserved for use outside of ISO scope */ 128-261 /* reserved for ISO use */ 262-389 /* reserved for use outs
37、ide of ISO scope */ 390-517 NOTE: Application-specific MHASPacketType values are mandated to be in the space reserved for use outside of ISO scope. These are skipped by a decoder as a minimum of structure is required by the decoder to skip these extensions. with: MHASPacketType Value PACT YP_FILLDAT
38、A 0 PACTYP_MPEGH3DACFG 1 PACTYP_MPEGH3DAFRAME 2 PACTYP_AUDIOSCENEINFO 3 /* reserved for ISO use */ 4-5 PACT YP_ SY NC 6 PACT YP_ SY NCGAP 7 PACTYP_MARKER 8 PACT YP_CRC16 9 PACT YP_CRC32 10 PACT YP_DESCRIPTOR 11 PACTYP_USERINTERACTION 12 PACTYP_LOUDNESS_DRC 13 PACTYP_BUFFERINFO 14 PACTYP_GLOBAL_CRC16
39、 15 PACTYP_GLOBAL_CRC32 16 PACTYP_AUDIOTRUNCATION 17 PACT YP_ SYSMETA 18 /* reserved for ISO use */ 19-127 NOTE: Application-specific MHASPacketType values are mandated to be in the space reserved for use outside of ISO scope. These are skipped by a decoder as a minimum of structure is required by t
40、he decoder to skip these extensions.6 ISO 2016 All rights reserved ISO/IEC 23008-3:2015/Amd.4:2016(E) MHASPacketType Value /* reserved for use outside of ISO scope */ 128-261 /* reserved for ISO use */ 262-389 /* reserved for use outside of ISO scope */ 390-517 NOTE: Application-specific MHASPacketT
41、ype values are mandated to be in the space reserved for use outside of ISO scope. These are skipped by a decoder as a minimum of structure is required by the decoder to skip these extensions. 3 References 1 IETF RFC 4122, A Universally Unique IDentifier (UUID) URN Namespace, July 2005 2 ITU T.35, Procedure for the Allocation of ITU-T Defined Codes for Non-standard Facilities, February 2000 ISO 2016 All rights reserved 7 ISO/IEC 23008-3:2015/Amd.4:2016(E) ISO/IEC 2016 All rights reserved ICS 35.040.40 Price based on 7 pages