One document matched: draft-levin-mmusic-xml-media-control-02.txt

Differences from draft-levin-mmusic-xml-media-control-01.txt



                                                               O. Levin 
   Internet Draft                                             RADVISION 
   Document: draft-levin-mmusic-xml-media-control-02           S. Olson 
                                                              Microsoft 
                                                                R. Even 
                                                                Polycom 
   Expires: September 2003                                   April 2003 
 
 
                       XML Schema for Media Control 
 
 
Status of this Memo 
 
   This document is an Internet-Draft and is in full conformance 
   with all provisions of Section 10 of RFC2026. 
 
   Internet-Drafts are working documents of the Internet Engineering 
   Task Force (IETF), its areas, and its working groups.  Note that      
   other groups may also distribute working documents as Internet-
   Drafts. 
    
   Internet-Drafts are draft documents valid for a maximum of six 
   months and may be updated, replaced, or obsoleted by other documents 
   at any time.  It is inappropriate to use Internet-Drafts as 
   reference material or to cite them other than as "work in progress." 
    
   The list of current Internet-Drafts can be accessed at 
        http://www.ietf.org/ietf/1id-abstracts.txt 
   The list of Internet-Draft Shadow Directories can be accessed at 
        http://www.ietf.org/shadow.html. 
    
    
Abstract 
    
   This document defines an XML Schema for Media Control in a tightly 
   controlled environment. The current version includes commands for 
   managing of video streams only. Implementation of this schema for 
   interactive video applications in SIP environments significantly 
   improves user experience. 
 
 
 
 
 
 
 
 
 
 
 
 
 
     
   Levin, et al.       Expires: September 2003                      1 
                       XML Schema for Media Control 
                                      
 
 
 
Table of Contents 
    
STATUS OF THIS MEMO......................................................1 

ABSTRACT...............................................................1 

INTRODUCTION...........................................................3 

BACKGROUND............................................................3 

THE VIDEO CONTROL COMMANDS..............................................3 

THE SCHEMA DEFINITION....................................................4 

ERROR HANDLING..........................................................5 

EXAMPLES...............................................................6 

THE SCHEMA APPLICATIONS..................................................7 

CONVENTIONS USED IN THIS DOCUMENT..........................................7 

IANA CONSIDERATIONS......................................................7 
 APPLICATION/MEDIA_CONTROL+XML MIME TYPE.........................................8 
 URN FOR XML SCHEMA.......................................................9 
SECURITY CONSIDERATIONS.................................................10 

AUTHOR'S ADDRESSES......................................................10 

REFERENCES............................................................10 




















     
   Levin, et al.         Expires: March 2003                        2 
                       XML Schema for Media Control 
                                      
Introduction 
   This document defines an XML Schema for Media Control in a tightly 
   controlled environment. The current version includes commands for 
   managing of video streams only. Implementation of this schema for 
   interactive video applications in SIP [7] environments significantly 
   improves user experience. Both end users and conferencing servers 
   SHOULD implement this approach. 
    
Background 
   SIP typically uses RTP [6] for transferring of real time media. 
   RTP is augmented by a control protocol (RTCP) to allow monitoring of 
   the data delivery in a manner scalable to large multicast networks. 
   An RTCP feedback mechanism [4] has been introduced in order to 
   improve basic RTCP feedback time in case of loss conditions across 
   different coding schemes. (Previously, a subset of this 
   functionality was defined for H.261 [5] only). 
   The above mentioned techniques address signaling of loss conditions 
   and the recommended recovery steps. Currently, there is no standard 
   way to express required operations on media streams as a result of 
   application logic rather then a result of loss conditions. 
   Of course, each command SHALL be validated by the remote entity 
   against current media capacity and network conditions before being 
   executed.  
    
The Video Control Commands 
   Output of a video CODEC is a frame. The frame can carry complete (in 
   time) information about a picture or about a picture segment. These 
   frames are known as ôIntraö frames. In order to save bandwidth, 
   other frames can carry only changes relative to previously sent 
   frames. Frames carrying relative information are known as ôInterö 
   frames. 
    
   Some CODECs (such as H.261 [2] and H.263 [3]), in addition to a 
   ôfullö picture, have a notion of picture slices:  MB (Macro Block) 
   and GOB (Group Of Blocks). 
    
   Based on application logic (such as a presentation of a new video 
   source), the application needs to have an ability to explicitly 
   request from a remote encoder the complete (in-time) information 
   about a ôfullö picture or a specific slice of the picture. 
    
   Additionally, in case the encoder is aware of upcoming changes in 
   the transmitted stream (that would result in synchronization lost by 
   the decoder), the encoder needs to be able to request the decoding 
   side to freeze the picture, i.e. to stop presenting the changes, 
   until a new stable image is encoded and transmitted. 
    
   In order to achieve these requirements, the following video 
   primitives are defined below: 
    
   Video Picture Fast Update Request 
   Video GOB Fast Update Request (first_GOB, no_of_GOBs) 
   Video MB Fast Update Request (first_GOB, first_MB, no_of_MBs) 
   These commands are to be sent to a remote encoder. 
     
   Levin, et al.         Expires: March 2003                        3 
                       XML Schema for Media Control 
                                      
    
   Video Picture Freeze Request 
   This command is to be sent to a remote decoder. 
    
The Schema Definition 
    
   <?xml version="1.0" encoding="utf-8" ?> 
    
   <xsd:schema id="TightMediaControl" 
   targetNamespace="urn:ietf:params:xml:ns:media_control" 
   elementFormDefault="qualified" xmlns=" 
   urn:ietf:params:xml:ns:media_control" 
   xmlns:xsd="http://www.w3.org/2001/XMLSchema"> 
         
        <xsd:element name="media_control"> 
            <xsd:complexType> 
               <xsd:sequence> 
                  <xsd:element name="vc_primitive" type="vc_primitive" 
   minOccurs="0" maxOccurs="unbounded" /> 
                  <xsd:element name="general_error" type="xs:string" 
   minOccurs="0" maxOccurs="unbounded" /> 
               </xsd:sequence> 
            </xsd:complexType> 
        </xsd:element> 
         
        <!-- Video control primitive. Each primitive is directed either 
   to a remote encode or to a remote decoder. --> 
        <xsd:complexType name="vc_primitive"> 
           <xsd:sequence> 
              <xsd:choice> 
                  <xsd:element name="to_encoder" type="to_encoder" /> 
                  <xsd:element name="to_decoder" type="to_decoder" /> 
              </xsd:choice> 
              <xsd:element name="stream_id" type="xsd:string" 
   minOccurs="0" maxOccurs="unbounded" /> 
           </xsd:sequence> 
           <xsd:attribute name="type" type="primitive_type" 
   use="optional" default="cmd" /> 
           <xsd:attribute name="stream" type="stream_type" 
   use="optional" default="all" /> 
        </xsd:complexType> 
         
        <xsd:simpleType name="primitive_type"> 
                <xsd:restriction base="xsd:string"> 
                        <xsd:enumeration value="cmd" /> 
                        <xsd:enumeration value="ind" /> 
                        <xsd:enumeration value="req" /> 
                        <xsd:enumeration value="rsp" /> 
                </xsd:restriction> 
        </xsd:simpleType> 
 
        <xsd:simpleType name="stream_type"> 
                <xsd:restriction base="xsd:string"> 
                        <xsd:enumeration value="mid" /> 
     
   Levin, et al.         Expires: March 2003                        4 
                       XML Schema for Media Control 
                                      
                        <xsd:enumeration value="all" /> 
                </xsd:restriction> 
        </xsd:simpleType> 
         
        <!-- Decoder commands: 
             Currently only picture freeze is defined. 
        --> 
        <xsd:complexType name="to_decoder"> 
           <xsd:sequence> 
              <xsd:element name="picture_freeze" /> 
           </xsd:sequence> 
        </xsd:complexType>       
         
         
        <!-- Encoder Commands: 
             Picture request 
             Group of Blocks request 
             Macro Block request 
        --> 
         
    
        <xsd:complexType name="to_encoder"> 
            <xsd:choice> 
                <xsd:element name="picture_fast_update" /> 
                <xsd:element name="gob_fast_update"> 
                    <xsd:complexType> 
                        <xsd:attribute name="first_gob" 
   type="xsd:nonNegativeInteger" use="optional" default="0" /> 
                        <xsd:attribute name="no_of_gobs" 
   type="xsd:nonNegativeInteger" use="optional" default="1" /> 
                    </xsd:complexType> 
                </xsd:element> 
                <xsd:element name="mb_fast_update"> 
                   <xsd:complexType> 
                       <xsd:attribute name="first_gob" 
   type="xsd:nonNegativeInteger" use="optional" default="0" /> 
                           <xsd:attribute name="first_mb"  
   type="xsd:nonNegativeInteger" use="optional" default="1" /> 
                       <xsd:attribute name="no_of_mbs" 
   type="xsd:nonNegativeInteger" use="optional" default="1" /> 
                   </xsd:complexType> 
                </xsd:element> 
            </xsd:choice> 
        </xsd:complexType> 
    
   </xsd:schema> 
    
Error Handling 
   Currently, only a single general error primitive is defined. It MAY 
   be used for indicating different type of errors in a free text 
   format. The general error MAY report problems in the XML document 
   parsing, inadequate level of media control support, inability to 
   perform the requested action, etc. 

     
   Levin, et al.         Expires: March 2003                        5 
                       XML Schema for Media Control 
                                      
   The error primitive MUST NOT be used for indication of errors other 
   then related to the media control parsing and the resultant 
   execution. 
   The error primitive MUST NOT be sent back as a result of getting an 
   error primitive. 
    
Examples 
    
   In the following example the ôFreezeö and the full picture ôFast 
   Updateö commands are issued towards the remote video decoder(s) and 
   remote video encoder(s) respectively for all video streams. 
    
   <?xml version="1.0" encoding="utf-8" ?> 
    
   <media_control> 
    
     <vc_primitive> 
       <to_decoder>              
         <picture_freeze> 
         </picture_freeze> 
       </to_decoder> 
     </vc_primitive> 
    
     <vc_primitive>              
       <to_encoder> 
         <picture_fast_update> 
         </picture_fast_update>          
       </to_encoder> 
     </vc_primitive> 
    
   </media_control> 
    
   If an error occurs during the parsing of the XML document, the 
   following XML document would be sent back to the originator of the 
   original Media Control document. 
    
   <?xml version="1.0" encoding="utf-8" ?> 
    
   <media_control> 
    
     <general_error> 
      Parsing error: The original XML segment is:... 
     </general_error> 
    
   </media_control> 
    
    
   The following example demonstrates the full format of the defined 
   schema. The ôFreezeö command is issued towards the remote video 
   decoder(s) to be applied to streams with ômidö [9] values ô1ö and 
   ô2ö.  The GOB ôFast Updateö command is issued towards the remote 
   video encoder to be applied to a video stream with ômidö value ô3ö. 
    

     
   Levin, et al.         Expires: March 2003                        6 
                       XML Schema for Media Control 
                                      
   <?xml version="1.0" encoding="utf-8" ?> 
    
   <media_control> 
    
     <vc_primitive stream=ômidö> 
       <to_decoder >             
         <picture_freeze> 
         </picture_freeze> 
       </to_decoder> 
    
       <stream_id>1</stream_id> 
       <stream_id>2</stream_id> 
    
     </vc_primitive> 
    
     <vc_primitive stream=ômidö>                 
       <to_encoder> 
         <mb_fast_update first_gob=ô2ö first_mb=ô3ö no_of_mbs=ô4ö>
         </mb_fast_update>               
       </to_encoder> 
    
       <stream_id>3</stream_id> 
    
     </vc_primitive> 
    
   </media_control> 
    
The Schema Applications 
    
   As the first step, the defined XML document will be conveyed using a 
   SIP INFO method [8] with the ôContent-Typeö set to 
   ôapplication/media_control+xmlö. This approach benefits from the SIP 
   built-in reliability. 
    
   The authors plan registering the defined schema with IANA according 
   to the guidelines specified in [10] and issuing a separate SIPPING 
   usage document(s). The document(s) will describe procedures for 
   conveying an XML document defined according to the Schema by means 
   of SIP INFO and SIP NOTIFY. 
    
   The authors hope that the XML schema, documented in this document, 
   will provide a base for a standard Tight Media Control protocol 
   definition within the IETF. It is expected that in future SIP will 
   define standard means for running this protocol as a part of SIP 
   architecture. 
    
Conventions used in this document 
    
   The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", 
   "SHOULD", "SHOULD NOT", "RECOMMENDED",  "MAY", and "OPTIONAL" in 
   this document are to be interpreted as described in RFC-2119 [1]. 
    
IANA Considerations 
    
     
   Levin, et al.         Expires: March 2003                        7 
                       XML Schema for Media Control 
                                      
Application/media_control+xml MIME type 
    
      MIME Media Type Name: application 
    
      MIME subtype name: media_control+xml 
    
      Required parameters: None 
    
      Optional parameters: charset 
    
        See RFC 3023 [10] for a discussion of the charset parameter on 
        XML-derived MIME types.  Since this MIME type is used 
        exclusively in SIP, the use of UTF-8 encoding is strongly 
        encouraged. 
    
      Encoding considerations: 8-bit text 
    
      Security considerations:  
    
        Security considerations specific to uses of this this MIME type 
        are discussed in RFC xxxx [[Note to RFC editor: replace xxxx 
        with the RFC number of this document when published]].  RFC 
        1874 [9] and RFC 3023 [10] discuss security issues common to 
        all uses of XML. 
    
      Interoperability considerations:  
    
        The use of this MIME body is intended to be generally 
        interoperable.  No unique considerations have been identified. 
    
      Published specification: RFC xxxx [[Note to RFC editor: replace  
   xxxx with the RFC number of this document when published]] 
    
      Applications which use this media type:  
    
        This media type is used to convey information regarding media 
        control commands and responses between SIP endpoints 
        particularly for allowing a Video Fast Update intra-frame 
        request. 
    
      Additional information: 
    
         Magic Number(s): None. 
    
         File Extension(s): None. 
    
         Macintosh File Type Code(s): None. 
    
         Object Identifier(s) or OID(s): None. 
    
      Intended usage: Limited Use 
    
      Other Information/General Comment: None. 
    
     
   Levin, et al.         Expires: March 2003                        8 
                       XML Schema for Media Control 
                                      
      Person to contact for further information: 
    
         Name: Sean Olson 
    
         E-Mail: seanol@microsoft.com 
    
         Author/Change Controller:  
    
        The specification of this MIME type is an individual submission 
        to the MMUSIC working group of the IETF. Change control of this 
        specification is under control of the IETF WG. 
    
    
URN for XML schema 
    
      URI: urn:ietf:params:xml:ns:media_control 
    
      Description:  
    
      This is the XML namespace URI for XML elements defined by 
      [RFCXXXX] to describe information exchanged between SIP endpoints 
      for media control. It is used in the 
      application/media_control+xml body type. 
    
      Registrant Contact: 
    
         Name: Sean Olson 
    
         E-Mail: seanol@microsoft.com 
    
         Author/Change Controller:  
    
        The specification of this URN sub-namespace is an individual 
        submission to the MMUSIC working group of the IETF. Change 
        control of this specification is under control of the IETF WG. 
    
      XML: 
    
            BEGIN 
              <?xml version="1.0"?> 
              <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML Basic 1.0//EN" 
                        "http://www.w3.org/TR/xhtml-basic/xhtml-
   basic10.dtd"> 
              <html xmlns="http://www.w3.org/1999/xhtml"> 
              <head> 
                <meta http-equiv="content-type" 
                   content="text/html;charset=utf-8"/> 
                <title>Namespace for Tight Media Control</title> 
              </head> 
              <body> 
                <h1>Namespace for Tight Media Control</h1> 
                <h2>application/media_control+xml</h2> 
                <p>See <a href="[[[URL of published 
   RFC]]]">RFCXXXX</a>.</p> 
     
   Levin, et al.         Expires: March 2003                        9 
                       XML Schema for Media Control 
                                      
              </body> 
              </html> 
            END 
    
Security Considerations 
 
   This document doesnÆt introduce new security requirements beyond 
   covered in [7]. 
    
Author's Addresses 
    
   Orit Levin 
   RADVISION 
   266 Harristown Road          Phone:  +1-201-689-6330 
   Glen Rock, NJ USA            Email:  orit@radvision.com 
    
   Sean Olson 
   Microsoft Corporation 
   One Microsoft Way            Phone:  +1-425-707-2846 
   Redmond, WA USA              Email:  seanol@microsoft.com 
    
   Roni Even 
   Polycom 
   94 Derech Em Hamoshavot       Phone:  +972-3-9251200 
   Petach Tikva, Israel          Email:  roni.even@polycom.co.il 
    
References 
    
   1  RFC 2119 Bradner, S., "Key words for use in RFCs to Indicate 
      Requirement Levels", BCP 14, RFC 2119, March 1997. 
   2  ITU-T Recommendation H.261 (1993), Video codec for audiovisual 
      services at p . 64 kbit/s. 
   3  ITU-T Recommendation H.263 (1998), Video coding for low bit rate 
      communication. 
   4  J. Ott et al., ôExtended RTP Profile for RTCP-based Feedback 
      (RTP/AVPF)ö, draft-ietf-avt-rtcp-feedback-03.txt, June 2002, IETF 
      Draft. Work in progress. 
   5  T. Turletti and C. Huitema, "RTP Payload Format for H.261 Video 
      Streams, RFC 2032, October 1996. 
   6  H. Schulzrinne, S. Casner, R. Frederick, and V. Jacobson, "RTP - 
      A Transport Protocol for Real-time Applications", Internet Draft, 
      draft-ietf-avt-rtp-new-11.txt, Work in Progress, November 2001. 
   7  J. Rosenberg, H. Schulzrinne, et al.  , "SIP: Session initiation 
      protocol," RFC 3261, Internet Engineering Task Force, June 2002. 
   8 S. Donovan, ôThe SIP INFO Methodö, RFC2976, Internet Engineering 
     Task Force, October 2000. 
   9 Camarillo/Holler/Eriksson/Schulzrinne, "Grouping of m lines in  
     SDP", draft-ietf-mmusic-fid-06.txt, Feb 2002, IETF Draft. Proposed 
     Standard. 
   10 M. Mealling, "The IETF XML Registry", draft-mealling-iana-xmlns-
     registry-04.txt, June 2002, IETF draft. Work in progress. 



     
   Levin, et al.         Expires: March 2003                       10 


PAFTECH AB 2003-20262026-04-24 04:14:41