idnits 2.17.1 draft-ietf-avt-rtp-jpeg2000-beam-08.txt: Checking boilerplate required by RFC 5378 and the IETF Trust (see https://trustee.ietf.org/license-info): ---------------------------------------------------------------------------- ** It looks like you're using RFC 3978 boilerplate. You should update this to the boilerplate described in the IETF Trust License Policy document (see https://trustee.ietf.org/license-info), which is required now. -- Found old boilerplate from RFC 3978, Section 5.1 on line 17. -- Found old boilerplate from RFC 3978, Section 5.5, updated by RFC 4748 on line 1190. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 1201. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 1208. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 1214. Checking nits according to https://www.ietf.org/id-info/1id-guidelines.txt: ---------------------------------------------------------------------------- No issues found here. Checking nits according to https://www.ietf.org/id-info/checklist : ---------------------------------------------------------------------------- No issues found here. Miscellaneous warnings: ---------------------------------------------------------------------------- == The copyright year in the IETF Trust Copyright Line does not match the current year -- The document seems to lack a disclaimer for pre-RFC5378 work, but may have content which was first submitted before 10 November 2008. If you have contacted all the original authors and they are all willing to grant the BCP78 rights to the IETF Trust, then this is fine, and you can ignore this comment. If not, you may need to add the pre-RFC5378 disclaimer. (See the Legal Provisions document at https://trustee.ietf.org/license-info for more information.) -- The document date (Sep 6, 2007) is 6048 days in the past. Is this intentional? Checking references for intended status: Proposed Standard ---------------------------------------------------------------------------- (See RFCs 3967 and 4897 for information about using normative references to lower-maturity documents in RFCs) -- Possible downref: Non-RFC (?) normative reference: ref. '1' -- Possible downref: Non-RFC (?) normative reference: ref. '3' ** Obsolete normative reference: RFC 4566 (ref. '5') (Obsoleted by RFC 8866) ** Obsolete normative reference: RFC 4288 (ref. '7') (Obsoleted by RFC 6838) Summary: 3 errors (**), 0 flaws (~~), 1 warning (==), 9 comments (--). Run idnits with the --verbose option for more detailed information about the items above. -------------------------------------------------------------------------------- 2 Audio Video Transport A. Leung 3 Internet-Draft S. Futemma 4 Intended status: Standards Track E. Itakura 5 Expires: March 9, 2008 Sony 6 Sep 6, 2007 8 Payload Format for JPEG 2000 Video: Extensions for Scalability and Main 9 Header Recovery 10 draft-ietf-avt-rtp-jpeg2000-beam-08 12 Status of this Memo 14 By submitting this Internet-Draft, each author represents that any 15 applicable patent or other IPR claims of which he or she is aware 16 have been or will be disclosed, and any of which he or she becomes 17 aware will be disclosed, in accordance with Section 6 of BCP 79. 19 Internet-Drafts are working documents of the Internet Engineering 20 Task Force (IETF), its areas, and its working groups. Note that 21 other groups may also distribute working documents as Internet- 22 Drafts. 24 Internet-Drafts are draft documents valid for a maximum of six months 25 and may be updated, replaced, or obsoleted by other documents at any 26 time. It is inappropriate to use Internet-Drafts as reference 27 material or to cite them other than as "work in progress." 29 The list of current Internet-Drafts can be accessed at 30 http://www.ietf.org/ietf/1id-abstracts.txt. 32 The list of Internet-Draft Shadow Directories can be accessed at 33 http://www.ietf.org/shadow.html. 35 This Internet-Draft will expire on March 9, 2008. 37 Copyright Notice 39 Copyright (C) The IETF Trust (2007). 41 Abstract 43 This memo describes extended uses for payload header in RFC document: 44 "RTP Payload Format for JPEG 2000 Video Streams." For better support 45 of JPEG 2000 features such as scalability and includes a main header 46 recovery method. 48 This memo must be accompanied with a complete implementation of "RTP 49 Payload Format for JPEG 2000 Video Streams." That document is a 50 complete description of the payload header and signaling, this 51 document only describes additional processing for the payload header. 52 There is an additional media type and SDP marker signaling for 53 implementations of this document. 55 Table of Contents 57 1. Introduction . . . . . . . . . . . . . . . . . . . . . . . . . 4 58 1.1. History . . . . . . . . . . . . . . . . . . . . . . . . . 4 59 1.2. Description of the Mechanisms . . . . . . . . . . . . . . 4 60 1.2.1. Main Header Compensation . . . . . . . . . . . . . . . 4 61 1.2.2. Priority Table . . . . . . . . . . . . . . . . . . . . 4 62 1.3. Motivations for Priority Field coding . . . . . . . . . . 5 63 1.3.1. Scenario: Just enough resolution . . . . . . . . . . . 5 64 1.3.2. Scenario: Multiple clients, single source . . . . . . 5 65 1.4. Conventions Used in This Document . . . . . . . . . . . . 6 66 2. Payload Format Enhanced Processing . . . . . . . . . . . . . . 7 67 2.1. Enhanced Processing Markers . . . . . . . . . . . . . . . 7 68 3. Priority Mapping Table . . . . . . . . . . . . . . . . . . . . 9 69 3.1. Packet Number Based Ordering . . . . . . . . . . . . . . . 9 70 3.2. Progression Based Ordering . . . . . . . . . . . . . . . . 9 71 3.3. Layer Based Ordering . . . . . . . . . . . . . . . . . . . 10 72 3.4. Resolution Based Ordering . . . . . . . . . . . . . . . . 10 73 3.5. Component Based Ordering . . . . . . . . . . . . . . . . . 11 74 4. JPEG 2000 Main Header Compensation Scheme . . . . . . . . . . 12 75 4.1. Sender Processing . . . . . . . . . . . . . . . . . . . . 12 76 4.2. Receiver Processing . . . . . . . . . . . . . . . . . . . 12 77 5. Security Consideration . . . . . . . . . . . . . . . . . . . . 14 78 6. Congestion Control . . . . . . . . . . . . . . . . . . . . . . 15 79 7. IANA Consideration . . . . . . . . . . . . . . . . . . . . . . 16 80 7.1. Media Type Registration . . . . . . . . . . . . . . . . . 16 81 7.2. SDP Parameters . . . . . . . . . . . . . . . . . . . . . . 19 82 8. Usage with the SDP Offer/Answer Model . . . . . . . . . . . . 21 83 8.1. Examples . . . . . . . . . . . . . . . . . . . . . . . . . 21 84 8.1.1. Example 1 . . . . . . . . . . . . . . . . . . . . . . 21 85 8.1.2. Example 2 . . . . . . . . . . . . . . . . . . . . . . 22 86 8.1.3. Example 3 . . . . . . . . . . . . . . . . . . . . . . 23 87 9. References . . . . . . . . . . . . . . . . . . . . . . . . . . 24 88 9.1. Normative References . . . . . . . . . . . . . . . . . . . 24 89 9.2. Informative References . . . . . . . . . . . . . . . . . . 24 90 Appendix A. Sample Headers in Detail . . . . . . . . . . . . . . 25 91 Authors' Addresses . . . . . . . . . . . . . . . . . . . . . . . . 33 92 Intellectual Property and Copyright Statements . . . . . . . . . . 34 94 1. Introduction 96 This document is an extension of: "RTP Payload Format for JPEG 2000 97 Video Streams" [1]. These are additional mechanisms that can be used 98 with certain parts of the header in [1] to support JPEG 2000 features 99 such as scalability and a main header compensation method. These 100 mechanisms are described in detail in this document. 102 1.1. History 104 In the development of RFC XXXY [1], there was an issue of IPR claims 105 on certain mechanisms with main header compensation, priority table 106 usage, etc. in RFC XXXY [1]. As these are not "essential" to the 107 core RTP format of RFC XXXY [1] and only describes a mechanism, it 108 was decided that splitting these mechanisms from the core JPEG 2000 109 RTP format in to a separate document. This is the document 110 describing the IPR related mechanisms for main header recover and 111 priority table usage. 113 1.2. Description of the Mechanisms 115 1.2.1. Main Header Compensation 117 JPEG 2000's scalable coding scheme allows for decompressing truncated 118 or partial data streams but only when the main header is present. If 119 the header is lost, the data is useless. With JPEG 2000 video 120 coding, coding parameters between frames will rarely change and 121 previous headers may be used in newly received data which the header 122 have been lost. 124 Compensation of the main header that has been lost is very simple 125 with this procedure. In the case of JPEG 2000 video, it is very 126 common that encode parameters will not vary greatly between 127 successive frames. Even if the RTP packet including the main header 128 of a frame has been dropped, decoding may be performed by using the 129 main header of a prior frame. 131 1.2.2. Priority Table 133 JPEG 2000 codestream has rich functionality built into it so decoders 134 can easily handle scalable delivery or progressive transmission. 135 Progressive transmission allows images to be reconstructed with 136 increasing pixel accuracy or spatial resolution. This feature allows 137 the reconstruction of images with different resolutions and pixel 138 accuracy, for different target devices. A single image source can 139 provide a codestream that is easily processed for smaller image 140 display devices. 142 JPEG 2000 packets contain all compressed image data from a specific: 143 layer, component, resolution level, and/or precinct. The order in 144 which these JPEG 2000 packets are found in the codestream is called: 145 progression order. The ordering of the JPEG 2000 packets can 146 progress along four axes: layer, component, resolution and precinct 147 (or position). 149 Providing a priority field to indicate the importance of data 150 contained in a given RTP packet can aid in usage of JPEG 2000 151 progressive and scalable functions. 153 1.3. Motivations for Priority Field coding 155 JPEG 2000 coding scheme allows one to reorder the codestream in many 156 ways. Even when the coding scheme is determined and arranged by the 157 encoder, a decoder can still re-arrange the code stream on the fly to 158 suit decode parameters such as: re-arranging from resolution 159 progressive to quality progressive. 161 Using the priority field coding, the decoder gains insight into the 162 codestream without access to the full codestream and exposes features 163 of JPEG 2000 to a higher level. 165 A few of the scenarios are presented below the authors have thought 166 of to utilize this field. The priority field allows more information 167 about the image to be sent without more signaling between sender and 168 receivers to leverage JPEG 2000 capabilities. 170 1.3.1. Scenario: Just enough resolution 172 The scenario is when rapid scene access is more important than higher 173 quality. By using the priority field, the receiver can decode for 174 its own quality level. If the sender cannot determine the receiver's 175 resolution, the receiver can select which parts of the codestream to 176 decode/load by using the priority field. 178 1.3.2. Scenario: Multiple clients, single source 180 In a multicast environment, there are clients with better visual 181 capability than others (i.e. TV conference vs. Mobile). The 182 respective clients can use the priority field to determine which 183 packets are vital for their own visual presentation. The sender will 184 have to do work on the priority field to optimally serve all the 185 clients while only managing a single visual stream. 187 1.4. Conventions Used in This Document 189 The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 190 "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this 191 document are to be interpreted as described in RFC2119. [2]. 193 RFC-Editor Note: The RFC Editor is requested to replace all 194 occurences of RFC XXXY with the RFC number 195 draft-ietf-avt-rtp-jpeg2000 receives. At that time, please remove 196 this note. 198 2. Payload Format Enhanced Processing 200 2.1. Enhanced Processing Markers 202 This section of the document describes additional usage in the values 203 of mh_id and priority fields and interpretation which differ from RFC 204 XXXY [1]. Implementions of this document should follow RFC XXXY [1] 205 first then add additional header processing as described in this 206 document. Implementations following this document are expected to 207 interoperate with implementations of [1] and this document as well. 209 The RTP payload header format for JPEG 2000 video stream is as 210 follows: 212 0 1 2 3 213 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 214 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 215 |tp |MHF|mh_id|T| priority | tile number | 216 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 217 |reserved | fragment offset | 218 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 220 Figure 1: RTP payload header format for JPEG 2000 222 mh_id (Main Header Identification) : 3 bits 224 Main header identification value. This is used for JPEG 2000 main 225 header recovery. 227 The initial value of mh_id is random, and may take any value 228 between 1-7, but MUST NOT be 0. 230 The same mh_id value is used as long as the coding parameters 231 described in the main header remains unchanged between frames. 233 The mh_id value MUST be incremented by 1 every time a new main 234 header is transmitted. Once the mh_id value becomes greater than 235 7, it SHOULD roll over to 1. 237 When mh_id is 0, it has special usage for the receiver. This 238 special usage is described in Section 4.2 of this document. 240 Senders should follow Section 4.1 of this document for proper 241 mh_id assignment and usage. 243 priority : 8 bits 245 The priority field indicates the importance of the JPEG 2000 246 packet included in the payload. Typically, a higher priority is 247 set in the packets containing JPEG 2000 packets containing the 248 lower sub-bands. 250 Special values of priority: 252 0: This is reserved for payload which contain a header (main or 253 tile part header.) This is considered the most important. 255 1 to 255: These values decrease in importance as the values 256 increase. (i.e. 1 is more important than 2, etc.) Applying 257 priority values should correlate directly to JPEG 2000 258 codestream in importance. 260 The lower the priority value is the higher the importance. A 261 priority value of 0 is the highest importance and 255 is the 262 lowest importance. We define the priority value 0 as a special 263 priority value for the headers (the main header or tile-part 264 header). If any headers (the main header or tile-part header) are 265 packed into the RTP payload, the sender MUST set the priority 266 value to 0. 268 Assignment of the values are described in Section 3 270 3. Priority Mapping Table 272 For the progression order, the priority value for each JPEG 2000 273 packet is given by the priority mapping table. 275 This document specify several commonly-used priority mapping tables, 276 pre-defined priority mapping tables: packet number based (default), 277 progression-based, layer-based, resolution-based, position-based, and 278 component-based. 280 Packet number priority mapping is REQUIRED to be supported by clients 281 implementing this specification. Other priority mapping tables 282 (progression, layer, resolution, and component based) are OPTIONAL to 283 implementations of this specification. 285 Rules that all implementations of this specification MUST follow in 286 all priority modes: 288 o When there is a header in the packet with a JPEG 2000 packet, the 289 sender MUST set the payload packet priority value to 0. 291 o When there are multiple JPEG 2000 packets in the same RTP payload 292 packet, the sender MUST set the payload packet priority value to 293 the lowest JPEG 2000 packet. (i.e. if JPEG 2000 packets with 294 priority: 5,6,7 are packed into a single payload, the priority 295 value will be 5.) 297 3.1. Packet Number Based Ordering 299 Packet number based ordering assigns the payload packet priority 300 value from the "JPEG 2000 packet value". (note: JPEG 2000 codestreams 301 are stored in units of packets and each packet has a value .) This 302 method is the default method for assigning priority value. All 303 implementations of this specification MUST support this method. 305 If the JPEG 2000 codestream packet value is greater than 255, the 306 sender MUST set the payload priority value to 255. 308 3.2. Progression Based Ordering 310 The sender will assign the payload packet priority value only based 311 on layer, resolution, and component ordering of the codestream. 313 This is similar to the packet number based assignment but will not 314 take into account the precinct number or position in the JPEG 2000 315 codestream. 317 For example: 319 If the codestream is ordered in LRCP (Layer, Resolution, Component, 320 Position) 322 All the packets in: 324 layer.........0 325 resolution....0 326 component.....0 328 then the packet priority value : 1 330 All the packets in: 332 layer.........0 333 resolution....0 334 component.....1 336 then the packet priority value : 2 338 All the packets in: 340 layer.........0 341 resolution....0 342 component.....2 344 then the packet priority value : 3 346 3.3. Layer Based Ordering 348 Layer-based priority mapping table simplifies the default mapping to 349 just matching JPEG 2000 packets together from the same layer. 351 For example: 353 All the packets in layer 0 : packet priority value : 1 354 All the packets in layer 1 : packet priority value : 2 355 All the packets in layer 2 : packet priority value : 3 356 ... 357 All the packets in layer n : packet priority value : n+1 358 All the packets in layer 255 : packet priority value : 255 360 3.4. Resolution Based Ordering 362 Resolution-based priority mapping table is similar to the layer based 363 order but for JPEG 2000 packets of the same resolution 365 For example: 367 All the packets in resolution 0 : packet priority value : 1 368 All the packets in resolution 1 : packet priority value : 2 369 All the packets in resolution 2 : packet priority value : 3 370 ... 371 All the packets in resolution n : packet priority value : n+1 372 All the packets in resolution 255 : packet priority value : 255 374 3.5. Component Based Ordering 376 Component-based priority mapping table is mapping together JPEG 2000 377 components of the same component 379 For example: 381 All the packets in component 0 : packet priority value : 1 382 All the packets in component 1 : packet priority value : 2 383 All the packets in component 2 : packet priority value : 3 384 ... 385 All the packets in component n : packet priority value : n+1 386 All the packets in component 255 : packet priority value : 255 388 4. JPEG 2000 Main Header Compensation Scheme 390 The mh_id field of the payload header is used to indicate whether the 391 encoding parameters of the main header are the same as the encoding 392 parameters of the previous frame. The same value is set in mh_id of 393 the RTP packet in the same frame. The mh_id and encode parameters 394 are not associated with each other as 1:1 but they are used to 395 indicate whether the encode parameters of the previous frame are the 396 same or not in the event of a lost header. 398 The mh_id field value SHOULD be saved from previous frames to be used 399 to recover the current frame's main header. If the mh_id of the 400 current frame has the same value as the mh_id value of the previous 401 frame, the previous frame's main header MAY be used to decode the 402 current frame, in case of a lost header in the current frame. 404 The sender MUST increment mh_id when parameters in the header change 405 and send a new main header accordingly. 407 The receiver MAY use the mh_id and MAY retain the header for such 408 compensation. 410 4.1. Sender Processing 412 The sender MUST transmit RTP packets with the same mh_id value if the 413 encoder parameters of the current frame are the same as the previous 414 frame. The encoding parameters are the fixed information marker 415 segment (SIZ marker) and functional marker segments (COD, COC, RGN, 416 QCD, QCC, and POC) specified in JPEG 2000 Part 1 Annex A [3]. 418 An initial value of mh_id MUST be selected randomly between 1 and 7 419 for security reasons. 421 If the encode parameters changes, the sender transmitting RTP packets 422 MUST increment the mh_id value by one, but when mh_id value becomes 423 greater than 7, a sender MUST set mh_id value back to 1. 425 4.2. Receiver Processing 427 When the receiver receives the main header completely, the RTP 428 sequence number, the mh_id and main header should be saved. Only the 429 last main header that was received completely SHOULD be saved. When 430 the mh_id value is 0, the receiver SHOULD NOT save the header. 432 When the main header is not received, the receiver may compare the 433 current payload header's mh_id value with the previous saved mh_id 434 value. If the values match, decoding may be performed by using the 435 previously saved main header. 437 If the mh_id field is set to 0, the receiver MUST NOT save the main 438 header and MUST NOT compensate for lost headers. 440 If the mh_id value changes, receivers SHOULD save the current header 441 and save the new mh_id value. The old saved header should be deleted 442 from storage. 444 5. Security Consideration 446 Please refer to section 6 of RFC XXXY [1] for Security Considerations 447 regarding this RTP format. 449 6. Congestion Control 451 Please refer to section 7 of RFC XXXY [1] for Congestion Control 452 regarding this RTP format. 454 7. IANA Consideration 456 7.1. Media Type Registration 458 This document extends the associated media type from RFC XXXY[1]: 459 Here is the complete original for reference. 461 This registration uses the template defined in [7] and follows [8]. 463 Type name: video 465 Subtype name: jpeg2000 467 Required parameters: 469 rate: The RTP timestamp clock rate. The default rate is 90000, 470 but other rates MAY be specified. Rates below 1000 Hz SHOULD 471 NOT be used. 473 sampling: A list of values specifying the color space of the 474 payload data. 476 Acceptable values: 478 RGB: standard Red, Green, Blue color space. 480 BGR: standard Blue, Green, Red color space. 482 RGBA: standard Red, Green, Blue, Alpha color space. 484 BGRA: standard Blue, Green, Red, Alpha color space. 486 YCbCr-4:4:4: standard YCbCr color space, no subsampling. 488 YCbCr-4:2:2: standard YCbCr color space, Cb and Cr are 489 subsampled horizontally by 1/2. 491 YCbCr-4:2:0: standard YCbCr color space, Cb and Cr are 492 subsampled horizontally and vertically by 1/2. 494 YCbCr-4:1:1: standard YCbCr color space, Cb and Cr are 495 subsampled vertically by 1/4 497 GRAYSCALE: basically a single component image of just 498 multilevels of grey. 500 EXTENSION VALUE: Additional color samplings can be 501 registered with and current listing of registered color 502 samplings at: Color Sampling Registration Authority. 503 Please refer to RTP Format for Uncompressed Video. [9] 505 Optional parameters: 507 interlace: interlace scanning. If payload is in interlace 508 format, the acceptable value is "1", otherwise, the value 509 should be "0". Each complete image forms vertically half the 510 display. tp value MUST properly specify the field the image 511 represents odd(tp=1), or even(tp=2). If this option is not 512 present, the payload MUST be in progressive format and tp MUST 513 be set to 0. 515 width: A parameter describing the maximum width of the video 516 stream. This parameter MUST appear when height is present. 517 Acceptable values: - an integer value between 0 - 518 4,294,967,295. 520 height: A parameter describing the maximum height of the video 521 stream. This parameter MUST appear when width is present. 522 Acceptable values: - an integer value between 0 - 523 4,294,967,295. 525 The receiver MUST ignore any unspecified parameters outside of this 526 list and in [1] . 528 Additional parameters for this extension: 530 mhc : Main Header Compensation. this option is used when sender 531 and/or receiver is utilizing the Main Header compensation 532 technique as specified in this document. Acceptable values 533 when using the Main Header compensation technique is "1", 534 otherwise, it should be "0". 536 This is a list of options to be included when the sender or 537 receiver is utilizing the Priority Table(s) as specified in 538 this document. 540 pt : Priority Table. this option is followed by a comma-separated 541 list of predefined priority table definitions to be used by 542 sender or receiver. 544 The option appearing front most in the option line is the most 545 important and next ones are of decreasing importance. 547 Acceptable values: 549 progression : this table follows the progression ordering 550 of the codestream. 552 layer : this table follows the layer ordering of the 553 codestream. 555 resolution : this table follows the resolution ordering of 556 the codestream. 558 component : this table follows the component ordering of 559 the codestream. 561 default : this table follows the ordering of the 562 codestream. 564 Encoding considerations: 566 This media type is framed and binary, see Section 4.8 in [7] 568 Security considerations: 570 see security considerations section Section 5 of this document. 572 Interoperability considerations: 574 JPEG 2000 video stream is a sequence of JPEG 2000 still images. 575 An implementation in compliant with [3] can decode and attempt to 576 display the encoded JPEG 2000 video stream. 578 Published specification: ISO/IEC 15444-1 | ITU-T Rec. T.800 580 Applications which use this media type: 582 video streaming and communication 584 Person and email address to contact for further information: 586 Eisaburo Itakura, Satoshi Futemma, Andrew Leung 587 Email: {itakura|satosi-f} @ sm . sony . co . jp, andrew @ ualberta 588 . net 590 Intended usage: Restriction 592 Restrictions on Usage: 594 This media type depends on RTP framing, and hence is only 595 defined for the transfer via RTP [4]. Transport within other 596 framing protocols is not defined at the time. 598 Author/Change Controller: 600 Author: 602 Eisaburo Itakura, Satoshi Futemma, Andrew Leung 603 Email: {itakura|satosi-f} @ sm . sony . co . jp, andrew @ 604 ualberta . net 606 Change controller: 608 IETF Audio/Video Transport Working Group delegated from the 609 IESG 611 7.2. SDP Parameters 613 In addition to SDP Parameters section in [1]: 615 The media type video/jpeg2000 string is mapped to fields in the 616 Session Description Protocol (SDP) [5] as follows: 618 o The media name in the "m=" line of SDP MUST be video. 620 o The encoding name in the "a=rtpmap" line of SDP MUST be jpeg2000 621 (the MIME subtype). 623 o The clock rate in the "a=rtpmap" line is set according to the 624 "rate" parameter. Senders that wish to use a non-90kHz rate 625 SHOULD also offer the same stream using a 90kHz timestamp rate 626 with a different RTP payload type allowing graceful fallback to 627 90kHz for compatibility. 629 o The OPTIONAL parameters "mhc" or "pt" MUST be included in the 630 "a=fmtp" line of SDP. 632 These parameters are expressed as a media type string, in the form of 633 a semicolon separated list of parameter=value pairs. 635 Therefore, an example of media representation in SDP is as follows: 637 m=video 49170/2 RTP/AVP 98 638 a=rtpmap:98 jpeg2000/90000 639 a=fmtp:98 rate=90000;mhc=1;pt=default; sampling=YCbCr-4:2:0; 640 width=128; height=128 642 An example for using non-90kHz timestamp is as follows: 644 m=video 49170/2 RTP/AVP 98 99 645 a=rtpmap:98 jpeg2000/27000000 646 a=rtpmap:99 jpeg2000/90000 647 a=fmtp:98 rate=27000000;mhc=1;pt=default; sampling=YCbCr-4:2:0; 648 width=128; height=128 649 a=fmtp:99 rate=90000;mhc=1;pt=default; sampling=YCbCr-4:2:0; 650 width=128; height=128 652 8. Usage with the SDP Offer/Answer Model 654 In addition to SDP Offer/Answer section in RFC XXXY [1]: 656 When offering JPEG 2000 over RTP using SDP in an Offer/Answer model 657 [6], the following rules and limitations apply: 659 o All parameters MUST have an acceptable value for that parameter. 661 o All parameters MUST correspond to the parameters of the payload. 663 o The parameters "mhc" or "pt" MUST appear in the offer and answer. 664 If the parameter "mhc" or "pt" is not in the answer, senders 665 should not process the header according to this document. 667 o For the "pt" option: 669 * Senders should send a complete list indicating which option are 670 available to the receiver. The receiver should answer with 671 their preference from the offer list. 673 o In a multicast environment: 675 * Senders should send out one option for priority-table- 676 definition for everyone in the group. 678 * If a single client in the group do not support the extensions 679 outlined in this document, senders SHOULD NOT use additional 680 techniques outlined in this document. 682 This is highly recommended for multicast streams where not all 683 receivers are of the same type. 685 8.1. Examples 687 Offer/Answer example exchanges are provided. 689 8.1.1. Example 1 691 Alice offers Main Header Compensation functionality, YCbCr 422 color 692 space, interlace image with 720-pixel width and 480-pixel height and 693 several priority-table options (default, progression, layer, 694 resolution, component) as below: 696 v=0 697 o=alice 2890844526 2890844526 IN IP4 host.example 698 s= 699 c=IN IP4 host.example 700 t=0 0 701 m=video 49170 RTP/AVP 98 702 a=rtpmap:98 jpeg2000/90000 703 a=fmtp:98 rate=90000;mhc=1; sampling=YCbCr-4:2:2; interlace=1; 704 pt=default,progression,layer,resolution, component; 705 width=720;height=480 707 Bob accepts Main Header Compensation functionality, YCbCr-4:2:2 color 708 space, interlace image, default mapping table and replies: 710 v=0 711 o=bob 2890844730 2890844731 IN IP4 host.example 712 s= 713 c=IN IP4 host.example 714 t=0 0 715 m=video 49920 RTP/AVP 98 716 a=rtpmap:98 jpeg2000/90000 717 a=fmtp:98 rate=90000;mhc=1; sampling=YCbCr-4:2:2;interlace=1; 718 pt=default;width=720;height=480 720 8.1.2. Example 2 722 Alice offers Main Header Compensation, YCbCr 420 color space, 723 progressive image with 320-pixel width and 240-pixel height and layer 724 priority-table options as below: 726 v=0 727 o=alice 2890844526 2890844526 IN IP4 host.example 728 s= 729 c=IN IP4 host.example 730 t=0 0 731 m=video 49170 RTP/AVP 98 732 a=rtpmap:98 jpeg2000/90000 733 a=fmtp:98 rate=90000;mhc=1; sampling=YCbCr-4:2:0; 734 pt=layer;width=320;height=240 736 Bob does not accept Main Header Compensation functionality but 737 accepts YCbCr-4:2:0 color space,layer based priority mapping and 738 replies: 740 v=0 741 o=bob 2890844730 2890844731 IN IP4 host.example 742 s= 743 c=IN IP4 host.example 744 t=0 0 745 m=video 49920 RTP/AVP 98 746 a=rtpmap:98 jpeg2000/90000 747 a=fmtp:98 rate=90000;mhc=0; sampling=YCbCr-4:2:0; 748 pt=layer;width=320;height=240 750 8.1.3. Example 3 752 Alice offers 27 MHz timestamp, Main Header Compensation, YCbCr 420 753 color space, progressive image with 320-pixel width and 240-pixel 754 height and layer priority-table options as below: 756 v=0 757 o=alice 2890844526 2890844526 IN IP4 host.example 758 s= 759 c=IN IP4 host.example 760 t=0 0 761 m=video 49170 RTP/AVP 98 99 762 a=rtpmap:98 jpeg2000/27000000 763 a=rtpmap:99 jpeg2000/90000 764 a=fmtp:98 rate=27000000;mhc=1; sampling=YCbCr-4:2:0; 765 pt=layer;width=320;height=240 766 a=fmtp:99 rate=90000;mhc=1; sampling=YCbCr-4:2:0; 767 pt=layer;width=320;height=240 769 Bob can accept payload type with 27 MHz timestamp, and does not 770 accept Main Header Compensation functionality but accepts YCbCr-4:2:0 771 color space,layer based priority mapping and replies: 773 v=0 774 o=bob 2890844730 2890844731 IN IP4 host.example 775 s= 776 c=IN IP4 host.example 777 t=0 0 778 m=video 49920 RTP/AVP 98 779 a=rtpmap:98 jpeg2000/27000000 780 a=fmtp:98 rate=27000000;mhc=0; sampling=YCbCr-4:2:0; 781 pt=layer;width=320;height=240 783 9. References 785 9.1. Normative References 787 [1] Futemma, "RTP Payload Format for JPEG 2000 Video Streams", 788 RFC XXXY, April 2007. 790 [2] Bradner, "Key words for use in RFCs to Indicate Requirement 791 Levels", RFC 2119, March 1997. 793 [3] ISO/IEC JTC1/SC29, ISO/IEC 15444-1 | ITU-T Rec. T.800, 794 "Information Technology - JPEG 2000 Image Coding System - Part 795 1: Core Coding System", December 2000. 797 [4] Schulzrinne, Casner, Frederick, and Jacobson, "RTP: A Transport 798 Protocol for Real Time Applications", RFC 3550, STD 64, 799 July 2003. 801 [5] Handley and Jacobson, "SDP: Session Description Protocol", 802 RFC 4566, July 2006. 804 [6] Rosenberg and Schulzrinne, "An Offer/Answer Model with Session 805 Description Protocol (SDP)", RFC 3264, June 2002. 807 [7] Freed and Klensin, "Media Type Specifications and Registration 808 Procedures", RFC 4288, December 2005. 810 [8] Casner, "Media Type Registration of RTP Payload Formats", 811 RFC 4855, February 2007. 813 9.2. Informative References 815 [9] Perkins and Gharai, "RTP Payload Format for Uncompressed Video", 816 RFC 4175, September 2005. 818 Appendix A. Sample Headers in Detail 820 0 1 2 3 821 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 822 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 823 |tp |MHF|mh_id|T| priority | tile number | 824 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 825 |reserved | fragment offset | 826 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 828 Figure 2 830 First Packet: This packet will have the whole main header. 210 bytes 832 0 1 2 3 833 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 834 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 835 |0 0|1 1|1 0 1|1|0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 836 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 837 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 838 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 839 |FF4FFF51002F000 .... | 840 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 842 Figure 3 844 Second Packet: This packet will have a tile header and the first tile 845 part LLband 1500 bytes 847 0 1 2 3 848 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 849 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 850 |0 0|1 1|1 0 1|0|0 0 0 0 0 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 851 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 852 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0| 853 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 854 |FF90 000A 0000 0000 2DB3 0001 FF93 | 855 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 857 Figure 4 859 Third Packet: This packet will have the next part in the tile, no 860 tile header 1500 bytes 862 0 1 2 3 863 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 864 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 865 |0 0|0 0|1 0 1|0|0 0 0 0 0 0 1 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 866 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 867 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 1 0 1 1 1 0| 868 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 869 |E841 4526 4556 9850 C2EA .... | 870 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 872 Figure 5 874 Fourth Packet: Last packet for the image 290 bytes 876 0 1 2 3 877 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 878 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 879 |0 0|0 0|1 0 1|0|0 0 0 0 0 0 1 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 880 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 881 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 0 1 0 1 0| 882 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 883 |A55D 8B73 3B25 25C7 B9EB .... 2FBEB153| 884 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 886 Figure 6 888 First Packet: This packet will have the whole main header. 210 bytes 890 0 1 2 3 891 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 892 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 893 |0 0|1 1|0 0 1|1|0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 894 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 895 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 896 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 897 |FF4FFF51002F000 .... | 898 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 900 Figure 7 902 Second Packet: This packet will have a first tile part (tile 0) 1400 903 bytes 905 0 1 2 3 906 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 907 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 908 |0 0|0 0|0 0 1|0|0 0 0 0 0 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 909 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 910 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0| 911 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 912 |FF90 000A 0000 0000 0578 0001 FF93 .... | 913 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 915 Figure 8 917 Third Packet: This packet will have a second tile part (tile 1) 1423 918 bytes 920 0 1 2 3 921 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 922 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 923 |0 0|0 0|0 0 1|0|0 0 0 0 0 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1| 924 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 925 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 1 0 1 0| 926 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 927 |FF90 000A 0001 0000 058F 0001 FF93 .... | 928 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 930 Figure 9 932 Fourth Packet: This packet will have a third tile part (tile 2) 1355 933 bytes 935 0 1 2 3 936 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 937 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 938 |0 0|0 0|0 0 1|0|0 0 0 0 0 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0| 939 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 940 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 0 1 1 0 0 1| 941 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 942 |FF90 000A 0002 0000 054B 0001 FF93 .... | 943 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 945 Figure 10 947 Fifth Packet: This packet will have a fourth tile part (tile 3) 1290 948 bytes 950 0 1 2 3 951 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 952 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 953 |0 0|0 0|0 0 1|0|0 0 0 0 0 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1| 954 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 955 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 1 0 0 1 0 0 1 0 0| 956 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 957 |FF90 000A 0003 0000 050A 0001 FF93 .... | 958 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 960 Figure 11 962 First Packet: This packet will have the first part of the main 963 header. 110 bytes 965 0 1 2 3 966 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 967 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 968 |0 0|0 1|0 0 0|1|0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 969 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 970 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 971 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 972 |FF4FFF51002F000 .... | 973 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 975 Figure 12 977 Second Packet: This packet has the second part of the header. 1400 978 bytes 980 0 1 2 3 981 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 982 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 983 |0 0|1 0|0 0 0|1|0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 984 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 985 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 1 1 0| 986 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 987 |FF6400FF .... | 988 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 990 Figure 13 992 Third Packet: This packet has two tiles, tile 0 and tile 1 1400 bytes 994 0 1 2 3 995 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 996 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 997 |0 0|0 0|0 0 0|1|0 0 0 0 0 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 998 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 999 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 0 0 1 1 0| 1000 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1001 |FF90 000A 0000 0000 02BC 0001 FF93 ... | 1002 |FF90 000A 0001 0000 02BC 0001 FF93 ... | 1003 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1005 Figure 14 1007 Fourth Packet: This packet has one tile, tile 2 1395 bytes 1009 0 1 2 3 1010 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1011 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1012 |0 0|0 0|0 0 0|0|0 0 0 0 0 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0| 1013 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1014 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 0 1 0 1 1 1 1 0| 1015 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1016 |FF90 000A 0002 0000 0573 0001 FF93 .... | 1017 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1019 Figure 15 1021 First packet: This packet will have the whole main header for the odd 1022 field 210 bytes 1024 0 1 2 3 1025 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1026 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1027 |0 1|1 1|0 1 0|1|0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 1028 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1029 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 1030 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1031 |FF4FFF51002F000 .... | 1032 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1034 Figure 16 1036 Second packet: This packet will have the first part of the odd 1037 field's tile 1400 bytes 1039 0 1 2 3 1040 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1041 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1042 |0 1|0 0|0 1 0|1|0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 1043 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1044 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0| 1045 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1046 |FF90 000A 0000 0000 0578 0001 FF93 .... | 1047 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1049 Figure 17 1051 Third packet: This packet will have the second part of the odd 1052 field's tile 1400 bytes 1054 0 1 2 3 1055 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1056 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1057 |0 1|0 0|0 1 0|1|0 0 0 0 0 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 1058 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1059 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 1 0 1 0| 1060 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1061 |7F04 E708 27D9 D11D 22CB ... | 1062 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1064 Figure 18 1066 Fourth packet: This packet will have the third part of the odd 1067 field's tile 1300 bytes 1069 0 1 2 3 1070 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1071 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1072 |0 1|0 0|0 1 0|1|0 0 0 0 0 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 1073 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1074 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 0 0 0 0 1 0| 1075 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1076 |98BD EC9B 2826 DC62 D4AB ... | 1077 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1079 Figure 19 1081 Fifth packet: This packet will have the whole main header for the 1082 even field 1084 0 1 2 3 1085 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1086 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1087 |1 0|1 1|0 1 1|1|0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 1088 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1089 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 1090 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1091 |FF4FFF51002F000 .... | 1092 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1094 Figure 20 1096 Sixth packet: This packet will have the first part of the odd field's 1097 tile 1400 bytes 1099 0 1 2 3 1100 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1101 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1102 |1 0|0 0|0 1 0|1|0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 1103 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1104 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 1 0 0 1 0| 1105 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1106 |FF90 000A 0000 0000 0578 0001 FF93 .... | 1107 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1109 Figure 21 1111 Seventh packet: This packet will have the second part of the odd 1112 field's tile 1400 bytes 1114 0 1 2 3 1115 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1116 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1117 |1 0|0 0|0 1 0|1|0 0 0 0 0 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 1118 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1119 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 0 0 1 0 0 1 0 1 0| 1120 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1121 |626C 42F0 166B 6BD0 F8E1 ... | 1122 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1124 Figure 22 1126 Eighth packet: This packet will have the third part of the odd 1127 field's tile 1300 bytes 1129 0 1 2 3 1130 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 1131 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1132 |1 0|0 0|0 1 0|1|0 0 0 0 0 0 0 1|0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0| 1133 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1134 |0 0 0 0 0 0 0 0|0 0 0 0 0 0 0 0 0 0 0 0 1 0 1 1 1 1 0 0 0 0 1 0| 1135 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1136 |8114 41D5 18AB 4A1B ... | 1137 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1139 Figure 23 1141 Authors' Addresses 1143 Andrew Leung 1144 Sony Corporation 1145 1-7-1 Konan 1146 Minato-ku 1147 Tokyo 108-0075 1148 Japan 1150 Phone: +81 3 6748-2111 1151 Email: andrew @ ualberta . net 1152 URI: http://www.sony.net/ 1154 Satoshi Futemma 1155 Sony Corporation 1156 1-7-1 Konan 1157 Minato-ku 1158 Tokyo 108-0075 1159 Japan 1161 Phone: +81 3 6748-2111 1162 Email: satosi-f @ sm . sony . co . jp 1163 URI: http://www.sony.net/ 1165 Eisaburo Itakura 1166 Sony Corporation 1167 1-7-1 Konan 1168 Minato-ku 1169 Tokyo 108-0075 1170 Japan 1172 Phone: +81 3 6748-2111 1173 Email: itakura @ sm . sony . co . jp 1174 URI: http://www.sony.net/ 1176 Full Copyright Statement 1178 Copyright (C) The IETF Trust (2007). 1180 This document is subject to the rights, licenses and restrictions 1181 contained in BCP 78, and except as set forth therein, the authors 1182 retain all their rights. 1184 This document and the information contained herein are provided on an 1185 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 1186 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 1187 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 1188 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 1189 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 1190 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 1192 Intellectual Property 1194 The IETF takes no position regarding the validity or scope of any 1195 Intellectual Property Rights or other rights that might be claimed to 1196 pertain to the implementation or use of the technology described in 1197 this document or the extent to which any license under such rights 1198 might or might not be available; nor does it represent that it has 1199 made any independent effort to identify any such rights. Information 1200 on the procedures with respect to rights in RFC documents can be 1201 found in BCP 78 and BCP 79. 1203 Copies of IPR disclosures made to the IETF Secretariat and any 1204 assurances of licenses to be made available, or the result of an 1205 attempt made to obtain a general license or permission for the use of 1206 such proprietary rights by implementers or users of this 1207 specification can be obtained from the IETF on-line IPR repository at 1208 http://www.ietf.org/ipr. 1210 The IETF invites any interested party to bring to its attention any 1211 copyrights, patents or patent applications, or other proprietary 1212 rights that may cover technology that may be required to implement 1213 this standard. Please address the information to the IETF at 1214 ietf-ipr@ietf.org. 1216 Acknowledgment 1218 Funding for the RFC Editor function is provided by the IETF 1219 Administrative Support Activity (IASA).