idnits 2.17.1 draft-ietf-avt-rtp-jpeg2000-beam-07.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 1185. -- Found old boilerplate from RFC 3979, Section 5, paragraph 1 on line 1196. -- Found old boilerplate from RFC 3979, Section 5, paragraph 2 on line 1203. -- Found old boilerplate from RFC 3979, Section 5, paragraph 3 on line 1209. 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 (July 20, 2007) is 6125 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: January 21, 2008 Sony 6 July 20, 2007 8 Payload Format for JPEG 2000 Video: Extensions for Scalability and Main 9 Header Recovery 10 draft-ietf-avt-rtp-jpeg2000-beam-07 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 January 21, 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 sampling: A list of values specifying the color space of the 470 payload data. 472 Acceptable values: 474 RGB: standard Red, Green, Blue color space. 476 BGR: standard Blue, Green, Red color space. 478 RGBA: standard Red, Green, Blue, Alpha color space. 480 BGRA: standard Blue, Green, Red, Alpha color space. 482 YCbCr-4:4:4: standard YCbCr color space, no subsampling. 484 YCbCr-4:2:2: standard YCbCr color space, Cb and Cr are 485 subsampled horizontally by 1/2. 487 YCbCr-4:2:0: standard YCbCr color space, Cb and Cr are 488 subsampled horizontally and vertically by 1/2. 490 YCbCr-4:1:1: standard YCbCr color space, Cb and Cr are 491 subsampled vertically by 1/4 493 GRAYSCALE: basically a single component image of just 494 multilevels of grey. 496 EXTENSION VALUE: Additional color samplings can be registered 497 with and current listing of registered color samplings at: 498 Color Sampling Registration Authority. Please refer to RTP 499 Format for Uncompressed Video. [9] 501 Optional parameters: 503 interlace: interlace scanning. If payload is in interlace 504 format, the acceptable value is "1", otherwise, the value 505 should be "0". Each complete image forms vertically half the 506 display. tp value MUST properly specify the field the image 507 represents odd(tp=1), or even(tp=2). If this option is not 508 present, the payload MUST be in progressive format and tp MUST 509 be set to 0. 511 width: A parameter describing the maximum width of the video 512 stream. This parameter MUST appear when height is present. 513 Acceptable values: - an integer value between 0 - 514 4,294,967,295. 516 height: A parameter describing the maximum height of the video 517 stream. This parameter MUST appear when width is present. 518 Acceptable values: - an integer value between 0 - 519 4,294,967,295. 521 The receiver MUST ignore any unspecified parameters outside of this 522 list and in [1] . 524 Additional parameters for this extension: 526 mhc : Main Header Compensation. this option is used when sender 527 and/or receiver is utilizing the Main Header compensation 528 technique as specified in this document. Acceptable values 529 when using the Main Header compensation technique is "1", 530 otherwise, it should be "0". 532 This is a list of options to be included when the sender or 533 receiver is utilizing the Priority Table(s) as specified in 534 this document. 536 pt : Priority Table. this option is followed by a comma-separated 537 list of predefined priority table definitions to be used by 538 sender or receiver. 540 The option appearing front most in the option line is the most 541 important and next ones are of decreasing importance. 543 Acceptable values: 545 progression : this table follows the progression ordering 546 of the codestream. 548 layer : this table follows the layer ordering of the 549 codestream. 551 resolution : this table follows the resolution ordering of 552 the codestream. 554 component : this table follows the component ordering of 555 the codestream. 557 default : this table follows the ordering of the 558 codestream. 560 Encoding considerations: 562 This media type is framed and binary, see Section 4.8 in [7] 564 Security considerations: 566 see security considerations section Section 5 of this document. 568 Interoperability considerations: 570 JPEG 2000 video stream is a sequence of JPEG 2000 still images. 571 An implementation in compliant with [3] can decode and attempt to 572 display the encoded JPEG 2000 video stream. 574 Published specification: ISO/IEC 15444-1 | ITU-T Rec. T.800 576 Applications which use this media type: 578 video streaming and communication 580 Person and email address to contact for further information: 582 Eisaburo Itakura, Satoshi Futemma, Andrew Leung 583 Email: {itakura|satosi-f} @ sm . sony . co . jp, andrew @ ualberta 584 . net 586 Intended usage: Restriction 588 Restrictions on Usage: 590 This media type depends on RTP framing, and hence is only 591 defined for the transfer via RTP [4]. Transport within other 592 framing protocols is not defined at the time. 594 Author/Change Controller: 596 Author: 598 Eisaburo Itakura, Satoshi Futemma, Andrew Leung 599 Email: {itakura|satosi-f} @ sm . sony . co . jp, andrew @ 600 ualberta . net 602 Change controller: 604 IETF Audio/Video Transport Working Group delegated from the 605 IESG 607 7.2. SDP Parameters 609 In addition to SDP Parameters section in [1]: 611 The media type video/jpeg2000 string is mapped to fields in the 612 Session Description Protocol (SDP) [5] as follows: 614 o The media name in the "m=" line of SDP MUST be video. 616 o The encoding name in the "a=rtpmap" line of SDP MUST be jpeg2000 617 (the MIME subtype). 619 o The clock rate in the "a=rtpmap" line SHOULD be 90000. Senders 620 that wish to use a non-90kHz rate SHOULD also offer the same 621 stream using a 90kHz timestamp rate with a different RTP payload 622 type allowing graceful fallback to 90kHz for compatibility. 624 o The OPTIONAL parameters "mhc" or "pt" MUST be included in the 625 "a=fmtp" line of SDP. 627 These parameters are expressed as a media type string, in the form of 628 a semicolon separated list of parameter=value pairs. 630 Therefore, an example of media representation in SDP is as follows: 632 m=video 49170/2 RTP/AVP 98 633 a=rtpmap:98 jpeg2000/90000 634 a=fmtp:98 mhc=1;pt=default; sampling=YCbCr-4:2:0; width=128; 635 height=128 637 An example for using non-90kHz timestamp is as follows: 639 m=video 49170/2 RTP/AVP 98 99 640 a=rtpmap:98 jpeg2000/27000000 641 a=rtpmap:99 jpeg2000/90000 642 a=fmtp:98 mhc=1;pt=default; sampling=YCbCr-4:2:0; width=128; 643 height=128 644 a=fmtp:99 mhc=1;pt=default; sampling=YCbCr-4:2:0; width=128; 645 height=128 647 8. Usage with the SDP Offer/Answer Model 649 In addition to SDP Offer/Answer section in RFC XXXY [1]: 651 When offering JPEG 2000 over RTP using SDP in an Offer/Answer model 652 [6], the following rules and limitations apply: 654 o All parameters MUST have an acceptable value for that parameter. 656 o All parameters MUST correspond to the parameters of the payload. 658 o The parameters "mhc" or "pt" MUST appear in the offer and answer. 659 If the parameter "mhc" or "pt" is not in the answer, senders 660 should not process the header according to this document. 662 o For the "pt" option: 664 * Senders should send a complete list indicating which option are 665 available to the receiver. The receiver should answer with 666 their preference from the offer list. 668 o In a multicast environment: 670 * Senders should send out one option for priority-table- 671 definition for everyone in the group. 673 * If a single client in the group do not support the extensions 674 outlined in this document, senders SHOULD NOT use additional 675 techniques outlined in this document. 677 This is highly recommended for multicast streams where not all 678 receivers are of the same type. 680 8.1. Examples 682 Offer/Answer example exchanges are provided. 684 8.1.1. Example 1 686 Alice offers Main Header Compensation functionality, YCbCr 422 color 687 space, interlace image with 720-pixel width and 480-pixel height and 688 several priority-table options (default, progression, layer, 689 resolution, component) as below: 691 v=0 692 o=alice 2890844526 2890844526 IN IP4 host.example 693 s= 694 c=IN IP4 host.example 695 t=0 0 696 m=video 49170 RTP/AVP 98 697 a=rtpmap:98 jpeg2000/90000 698 a=fmtp:98 mhc=1; sampling=YCbCr-4:2:2; interlace=1; 699 pt=default,progression,layer,resolution, component; 700 width=720;height=480 702 Bob accepts Main Header Compensation functionality, YCbCr-4:2:2 color 703 space, interlace image, default mapping table and replies: 705 v=0 706 o=bob 2890844730 2890844731 IN IP4 host.example 707 s= 708 c=IN IP4 host.example 709 t=0 0 710 m=video 49920 RTP/AVP 98 711 a=rtpmap:98 jpeg2000/90000 712 a=fmtp:98 mhc=1; sampling=YCbCr-4:2:2;interlace=1; 713 pt=default;width=720;height=480 715 8.1.2. Example 2 717 Alice offers Main Header Compensation, YCbCr 420 color space, 718 progressive image with 320-pixel width and 240-pixel height and layer 719 priority-table options as below: 721 v=0 722 o=alice 2890844526 2890844526 IN IP4 host.example 723 s= 724 c=IN IP4 host.example 725 t=0 0 726 m=video 49170 RTP/AVP 98 727 a=rtpmap:98 jpeg2000/90000 728 a=fmtp:98 mhc=1; sampling=YCbCr-4:2:0; 729 pt=layer;width=320;height=240 731 Bob does not accept Main Header Compensation functionality but 732 accepts YCbCr-4:2:0 color space,layer based priority mapping and 733 replies: 735 v=0 736 o=bob 2890844730 2890844731 IN IP4 host.example 737 s= 738 c=IN IP4 host.example 739 t=0 0 740 m=video 49920 RTP/AVP 98 741 a=rtpmap:98 jpeg2000/90000 742 a=fmtp:98 mhc=0; sampling=YCbCr-4:2:0; 743 pt=layer;width=320;height=240 745 8.1.3. Example 3 747 Alice offers 27 MHz timestamp, Main Header Compensation, YCbCr 420 748 color space, progressive image with 320-pixel width and 240-pixel 749 height and layer priority-table options as below: 751 v=0 752 o=alice 2890844526 2890844526 IN IP4 host.example 753 s= 754 c=IN IP4 host.example 755 t=0 0 756 m=video 49170 RTP/AVP 98 99 757 a=rtpmap:98 jpeg2000/27000000 758 a=rtpmap:99 jpeg2000/90000 759 a=fmtp:98 mhc=1; sampling=YCbCr-4:2:0; 760 pt=layer;width=320;height=240 761 a=fmtp:99 mhc=1; sampling=YCbCr-4:2:0; 762 pt=layer;width=320;height=240 764 Bob can accept payload type with 27 MHz timestamp, and does not 765 accept Main Header Compensation functionality but accepts YCbCr-4:2:0 766 color space,layer based priority mapping and replies: 768 v=0 769 o=bob 2890844730 2890844731 IN IP4 host.example 770 s= 771 c=IN IP4 host.example 772 t=0 0 773 m=video 49920 RTP/AVP 98 774 a=rtpmap:98 jpeg2000/27000000 775 a=fmtp:98 mhc=0; sampling=YCbCr-4:2:0; 776 pt=layer;width=320;height=240 778 9. References 780 9.1. Normative References 782 [1] Futemma, "RTP Payload Format for JPEG 2000 Video Streams", 783 RFC XXXY, April 2007. 785 [2] Bradner, "Key words for use in RFCs to Indicate Requirement 786 Levels", RFC 2119, March 1997. 788 [3] ISO/IEC JTC1/SC29, ISO/IEC 15444-1 | ITU-T Rec. T.800, 789 "Information Technology - JPEG 2000 Image Coding System - Part 790 1: Core Coding System", December 2000. 792 [4] Schulzrinne, Casner, Frederick, and Jacobson, "RTP: A Transport 793 Protocol for Real Time Applications", RFC 3550, STD 64, 794 July 2003. 796 [5] Handley and Jacobson, "SDP: Session Description Protocol", 797 RFC 4566, July 2006. 799 [6] Rosenberg and Schulzrinne, "An Offer/Answer Model with Session 800 Description Protocol (SDP)", RFC 3264, June 2002. 802 [7] Freed and Klensin, "Media Type Specifications and Registration 803 Procedures", RFC 4288, December 2005. 805 [8] Casner, "Media Type Registration of RTP Payload Formats", 806 RFC 4855, February 2007. 808 9.2. Informative References 810 [9] Perkins and Gharai, "RTP Payload Format for Uncompressed Video", 811 RFC 4175, September 2005. 813 Appendix A. Sample Headers in Detail 815 0 1 2 3 816 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 817 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 818 |tp |MHF|mh_id|T| priority | tile number | 819 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 820 |reserved | fragment offset | 821 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 823 Figure 2 825 First Packet: This packet will have the whole main header. 210 bytes 827 0 1 2 3 828 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 829 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 830 |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| 831 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 832 |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| 833 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 834 |FF4FFF51002F000 .... | 835 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 837 Figure 3 839 Second Packet: This packet will have a tile header and the first tile 840 part LLband 1500 bytes 842 0 1 2 3 843 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 844 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 845 |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| 846 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 847 |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| 848 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 849 |FF90 000A 0000 0000 2DB3 0001 FF93 | 850 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 852 Figure 4 854 Third Packet: This packet will have the next part in the tile, no 855 tile header 1500 bytes 857 0 1 2 3 858 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 859 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 860 |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| 861 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 862 |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| 863 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 864 |E841 4526 4556 9850 C2EA .... | 865 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 867 Figure 5 869 Fourth Packet: Last packet for the image 290 bytes 871 0 1 2 3 872 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 873 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 874 |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| 875 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 876 |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| 877 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 878 |A55D 8B73 3B25 25C7 B9EB .... 2FBEB153| 879 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 881 Figure 6 883 First Packet: This packet will have the whole main header. 210 bytes 885 0 1 2 3 886 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 887 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 888 |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| 889 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 890 |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| 891 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 892 |FF4FFF51002F000 .... | 893 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 895 Figure 7 897 Second Packet: This packet will have a first tile part (tile 0) 1400 898 bytes 900 0 1 2 3 901 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 902 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 903 |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| 904 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 905 |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| 906 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 907 |FF90 000A 0000 0000 0578 0001 FF93 .... | 908 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 910 Figure 8 912 Third Packet: This packet will have a second tile part (tile 1) 1423 913 bytes 915 0 1 2 3 916 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 917 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 918 |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| 919 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 920 |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| 921 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 922 |FF90 000A 0001 0000 058F 0001 FF93 .... | 923 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 925 Figure 9 927 Fourth Packet: This packet will have a third tile part (tile 2) 1355 928 bytes 930 0 1 2 3 931 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 932 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 933 |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| 934 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 935 |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| 936 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 937 |FF90 000A 0002 0000 054B 0001 FF93 .... | 938 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 940 Figure 10 942 Fifth Packet: This packet will have a fourth tile part (tile 3) 1290 943 bytes 945 0 1 2 3 946 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 947 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 948 |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| 949 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 950 |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| 951 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 952 |FF90 000A 0003 0000 050A 0001 FF93 .... | 953 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 955 Figure 11 957 First Packet: This packet will have the first part of the main 958 header. 110 bytes 960 0 1 2 3 961 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 962 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 963 |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| 964 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 965 |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| 966 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 967 |FF4FFF51002F000 .... | 968 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 970 Figure 12 972 Second Packet: This packet has the second part of the header. 1400 973 bytes 975 0 1 2 3 976 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 977 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 978 |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| 979 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 980 |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| 981 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 982 |FF6400FF .... | 983 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 985 Figure 13 987 Third Packet: This packet has two tiles, tile 0 and tile 1 1400 bytes 989 0 1 2 3 990 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 991 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 992 |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| 993 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 994 |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| 995 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 996 |FF90 000A 0000 0000 02BC 0001 FF93 ... | 997 |FF90 000A 0001 0000 02BC 0001 FF93 ... | 998 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1000 Figure 14 1002 Fourth Packet: This packet has one tile, tile 2 1395 bytes 1004 0 1 2 3 1005 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 1006 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1007 |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| 1008 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1009 |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| 1010 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1011 |FF90 000A 0002 0000 0573 0001 FF93 .... | 1012 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1014 Figure 15 1016 First packet: This packet will have the whole main header for the odd 1017 field 210 bytes 1019 0 1 2 3 1020 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 1021 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1022 |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| 1023 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1024 |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| 1025 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1026 |FF4FFF51002F000 .... | 1027 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1029 Figure 16 1031 Second packet: This packet will have the first part of the odd 1032 field's tile 1400 bytes 1034 0 1 2 3 1035 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 1036 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1037 |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| 1038 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1039 |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| 1040 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1041 |FF90 000A 0000 0000 0578 0001 FF93 .... | 1042 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1044 Figure 17 1046 Third packet: This packet will have the second part of the odd 1047 field's tile 1400 bytes 1049 0 1 2 3 1050 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 1051 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1052 |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| 1053 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1054 |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| 1055 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1056 |7F04 E708 27D9 D11D 22CB ... | 1057 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1059 Figure 18 1061 Fourth packet: This packet will have the third part of the odd 1062 field's tile 1300 bytes 1064 0 1 2 3 1065 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 1066 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1067 |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| 1068 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1069 |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| 1070 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1071 |98BD EC9B 2826 DC62 D4AB ... | 1072 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1074 Figure 19 1076 Fifth packet: This packet will have the whole main header for the 1077 even field 1079 0 1 2 3 1080 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 1081 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1082 |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| 1083 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1084 |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| 1085 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1086 |FF4FFF51002F000 .... | 1087 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1089 Figure 20 1091 Sixth packet: This packet will have the first part of the odd field's 1092 tile 1400 bytes 1094 0 1 2 3 1095 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 1096 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1097 |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| 1098 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1099 |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| 1100 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1101 |FF90 000A 0000 0000 0578 0001 FF93 .... | 1102 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1104 Figure 21 1106 Seventh packet: This packet will have the second part of the odd 1107 field's tile 1400 bytes 1109 0 1 2 3 1110 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 1111 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1112 |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| 1113 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1114 |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| 1115 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1116 |626C 42F0 166B 6BD0 F8E1 ... | 1117 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1119 Figure 22 1121 Eighth packet: This packet will have the third part of the odd 1122 field's tile 1300 bytes 1124 0 1 2 3 1125 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 1126 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1127 |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| 1128 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1129 |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| 1130 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1131 |8114 41D5 18AB 4A1B ... | 1132 +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+ 1134 Figure 23 1136 Authors' Addresses 1138 Andrew Leung 1139 Sony Corporation 1140 1-7-1 Konan 1141 Minato-ku 1142 Tokyo 108-0075 1143 Japan 1145 Phone: +81 3 6748-2111 1146 Email: andrew @ ualberta . net 1147 URI: http://www.sony.net/ 1149 Satoshi Futemma 1150 Sony Corporation 1151 1-7-1 Konan 1152 Minato-ku 1153 Tokyo 108-0075 1154 Japan 1156 Phone: +81 3 6748-2111 1157 Email: satosi-f @ sm . sony . co . jp 1158 URI: http://www.sony.net/ 1160 Eisaburo Itakura 1161 Sony Corporation 1162 1-7-1 Konan 1163 Minato-ku 1164 Tokyo 108-0075 1165 Japan 1167 Phone: +81 3 6748-2111 1168 Email: itakura @ sm . sony . co . jp 1169 URI: http://www.sony.net/ 1171 Full Copyright Statement 1173 Copyright (C) The IETF Trust (2007). 1175 This document is subject to the rights, licenses and restrictions 1176 contained in BCP 78, and except as set forth therein, the authors 1177 retain all their rights. 1179 This document and the information contained herein are provided on an 1180 "AS IS" basis and THE CONTRIBUTOR, THE ORGANIZATION HE/SHE REPRESENTS 1181 OR IS SPONSORED BY (IF ANY), THE INTERNET SOCIETY, THE IETF TRUST AND 1182 THE INTERNET ENGINEERING TASK FORCE DISCLAIM ALL WARRANTIES, EXPRESS 1183 OR IMPLIED, INCLUDING BUT NOT LIMITED TO ANY WARRANTY THAT THE USE OF 1184 THE INFORMATION HEREIN WILL NOT INFRINGE ANY RIGHTS OR ANY IMPLIED 1185 WARRANTIES OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE. 1187 Intellectual Property 1189 The IETF takes no position regarding the validity or scope of any 1190 Intellectual Property Rights or other rights that might be claimed to 1191 pertain to the implementation or use of the technology described in 1192 this document or the extent to which any license under such rights 1193 might or might not be available; nor does it represent that it has 1194 made any independent effort to identify any such rights. Information 1195 on the procedures with respect to rights in RFC documents can be 1196 found in BCP 78 and BCP 79. 1198 Copies of IPR disclosures made to the IETF Secretariat and any 1199 assurances of licenses to be made available, or the result of an 1200 attempt made to obtain a general license or permission for the use of 1201 such proprietary rights by implementers or users of this 1202 specification can be obtained from the IETF on-line IPR repository at 1203 http://www.ietf.org/ipr. 1205 The IETF invites any interested party to bring to its attention any 1206 copyrights, patents or patent applications, or other proprietary 1207 rights that may cover technology that may be required to implement 1208 this standard. Please address the information to the IETF at 1209 ietf-ipr@ietf.org. 1211 Acknowledgment 1213 Funding for the RFC Editor function is provided by the IETF 1214 Administrative Support Activity (IASA).