[Docs] [txt|pdf|xml|html] [Tracker] [Email] [Diff1] [Diff2] [Nits]

Versions: 00 01 02 03 04

Network Working Group                                        C. Jennings
Internet-Draft                                                  A. Begen
Intended status:  Standards Track                                  Cisco
Expires:  September 15, 2011                              March 14, 2011


     Grouping of Adjacent Media in the Session Description Protocol
               draft-jennings-mmusic-adjacent-grouping-03

Abstract

   Applications such as multi-screen video conferencing systems or
   advertisement boards often have multiple audio and video streams that
   are organized to be rendered side by side or in a grid.  This
   specification uses the RFC 5888 Grouping Framework to define new
   semantics for grouping the media streams to be rendered side by side
   or in a grid and indicating their relative ordering.

Status of this Memo

   This Internet-Draft is submitted in full conformance with the
   provisions of BCP 78 and BCP 79.

   Internet-Drafts are working documents of the Internet Engineering
   Task Force (IETF).  Note that other groups may also distribute
   working documents as Internet-Drafts.  The list of current Internet-
   Drafts is at http://datatracker.ietf.org/drafts/current/.

   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."

   This Internet-Draft will expire on September 15, 2011.

Copyright Notice

   Copyright (c) 2011 IETF Trust and the persons identified as the
   document authors.  All rights reserved.

   This document is subject to BCP 78 and the IETF Trust's Legal
   Provisions Relating to IETF Documents
   (http://trustee.ietf.org/license-info) in effect on the date of
   publication of this document.  Please review these documents
   carefully, as they describe your rights and restrictions with respect
   to this document.  Code Components extracted from this document must
   include Simplified BSD License text as described in Section 4.e of
   the Trust Legal Provisions and are provided without warranty as



Jennings & Begen       Expires September 15, 2011               [Page 1]


Internet-Draft       Adjacent Media Grouping in SDP           March 2011


   described in the Simplified BSD License.


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . 3
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 3
   3.  Adjacent Media Grouping . . . . . . . . . . . . . . . . . . . . 3
     3.1.  "ADJ" Grouping Semantics  . . . . . . . . . . . . . . . . . 3
     3.2.  Grouping for SSRC-Multiplexed RTP Streams . . . . . . . . . 4
     3.3.  SDP Offer/Answer Model Considerations . . . . . . . . . . . 5
   4.  SDP Examples  . . . . . . . . . . . . . . . . . . . . . . . . . 5
     4.1.  Horizontal Layout . . . . . . . . . . . . . . . . . . . . . 5
     4.2.  Grid Layout . . . . . . . . . . . . . . . . . . . . . . . . 6
   5.  Security Considerations . . . . . . . . . . . . . . . . . . . . 7
   6.  IANA Considerations . . . . . . . . . . . . . . . . . . . . . . 7
     6.1.  Registration of SDP Attributes  . . . . . . . . . . . . . . 7
     6.2.  Registration of Grouping Semantics  . . . . . . . . . . . . 8
   7.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 8
   8.  References  . . . . . . . . . . . . . . . . . . . . . . . . . . 8
     8.1.  Normative References  . . . . . . . . . . . . . . . . . . . 8
     8.2.  Informative References  . . . . . . . . . . . . . . . . . . 9
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . . . 9




























Jennings & Begen       Expires September 15, 2011               [Page 2]


Internet-Draft       Adjacent Media Grouping in SDP           March 2011


1.  Introduction

   There are many situations where applications create media streams
   that are meant do be rendered adjacent to each other.  A common
   example is a multi-screen video conferencing system.  Other examples
   are several video monitors placed side by side to display signs, and
   audio streams from a linear array of microphones, or a grid of
   display for monitoring security cameras.  The Session Description
   Protocol (SDP) [RFC4566] allows negotiation of multiple media streams
   but does not have a way to describe the ordering information to
   indicate which media stream is adjacent to which one.

   This specification introduces new grouping semantics, using the SDP
   Grouping Framework defined in [RFC5888], that indicate media streams
   are adjacent, and the adjacency order is defined by the order of the
   entries in the group.


2.  Terminology

   This specification uses all the terms defined in [RFC5888] and will
   not make sense unless you have read [RFC5888].  The key words "MUST",
   "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD NOT",
   "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].


3.  Adjacent Media Grouping

3.1.  "ADJ" Grouping Semantics

   This specification defines new grouping semantics of "ADJ" that
   indicate the media streams in this group are meant to be played or
   displayed adjacently.  Furthermore, the order of media streams in the
   group indicates the adjacency order.  This only indicates the order
   the device sending the SDP believes is the preferred way to display
   the media described in this SDP.  This is a declarative SDP parameter
   and is not negotiated.

   N media streams could be in a linear horizontal layout, in which case
   we use a grid size of 1 x N. Alternatively, N media streams could be
   in a linear vertical layout, in which case we use a grid size of N x
   1.  In these configurations, the first stream in the group MUST be
   the one corresponding to the left most and top most output unit,
   respectively.  In a more general grid size of N x M, we can group K
   (where K <= N x M) media streams starting from the one corresponding
   to the top-left output unit, and then doing a continuous horizontal
   scanning of the grid row by row (i.e., scanning first the top row



Jennings & Begen       Expires September 15, 2011               [Page 3]


Internet-Draft       Adjacent Media Grouping in SDP           March 2011


   from left to right, and then the second row from left to right, and
   so on).  When we say left most, we mean from the point of view of the
   person looking at the display.

   To indicate the dimensions of the layout grid in an SDP description,
   we define a new session-level attribute.  The ABNF syntax [RFC5234]
   for the new attribute is as follows:

     media-grid-dims-line = "a=media-grid-dims:" rows "x" columns CRLF

     rows    = %x31-39 *DIGIT
     columns = %x31-39 *DIGIT


   The parameters 'rows' and 'columns' indicate the number of rows and
   columns for this media grid.  They both MUST be an integer larger
   than zero.

   If the 'media-grid-dims' attribute does not exist in the SDP
   description, then a 1 x N horizontal linear layout MUST be assumed.

   Per [RFC5888], there MAY be more than one adjacent media group in a
   single SDP description.

3.2.  Grouping for SSRC-Multiplexed RTP Streams

   [RFC5576] defines an SDP media-level attribute, called 'ssrc-group',
   for grouping the RTP streams that are SSRC multiplexed and carried in
   the same RTP session.  The grouping is based on the SSRC identifiers.
   Since SSRC-multiplexed RTP streams are defined in the same "m" line,
   the 'group' attribute cannot be used.

   This section specifies how adjacency is described with SSRC-
   multiplexed streams using the 'ssrc-group' attribute [RFC5576].

   The semantics of "ADJ" for the 'ssrc-group' attribute are the same as
   the one defined for the 'group' attribute except that the SSRC
   identifiers are used to designate the adjacency grouping
   associations:  a=ssrc-group:ADJ *(SP ssrc-id) [RFC5576].

   The SSRC identifiers for the RTP streams that are carried in the same
   RTP session MUST be unique per [RFC3550].  However, the SSRC
   identifiers are not guaranteed to be unique among different RTP
   sessions.  Thus, the 'ssrc-group' attribute MUST only be used at the
   media level [RFC5576].






Jennings & Begen       Expires September 15, 2011               [Page 4]


Internet-Draft       Adjacent Media Grouping in SDP           March 2011


3.3.  SDP Offer/Answer Model Considerations

   When offering adjacent media grouping using SDP in an Offer/Answer
   model [RFC3264], the following considerations apply.

   A node that is receiving an offer from a sender may or may not
   understand line grouping.  It is also possible that the node
   understands line grouping but it does not understand the "ADJ"
   semantics.  From the viewpoint of the sender of the offer, these
   cases are indistinguishable.

   When a node is offered a session with the "ADJ" grouping semantics
   but it does not support line grouping or the adjacent media grouping
   semantics, as per [RFC5888], the node responds to the offer either
   (1) with an answer that ignores the grouping attribute or (2) with a
   refusal to the request (e.g., 488 Not Acceptable Here or 606 Not
   Acceptable in SIP).

   In the first case, the original sender of the offer must send a new
   offer without any grouping.  In the second case, if the sender of the
   offer still wishes to establish the session, it should retry the
   request with an offer without the adjacent media grouping.  This
   behavior is specified in [RFC5888].

   The offer MUST contain the sender's desired layout.  The answer MAY
   contain the desired layout of the streams that the system sending the
   answer will be sending to the system that sent the offer.


4.  SDP Examples

   This section provides SDP examples showing how to use the adjacent
   media grouping.

4.1.  Horizontal Layout

   A video system with two screens and one audio channels sends a SIP
   offer.  The following figure shows a top-down view of the room with
   the three screen system that is sending the SIP offer.  Screen A is
   the left most screen for the user in this room but should be
   displayed as the rightmost screen for the user at the far end that
   will be viewing the video.

     Screen A      Screen B
   [----------][------------]


            User



Jennings & Begen       Expires September 15, 2011               [Page 5]


Internet-Draft       Adjacent Media Grouping in SDP           March 2011


   Assume the SDP mid values for the screens are sa and sb, for Screens
   A and B respectively.  The offer contains the following in the SDP:
      a=group:ADJ sb sa

   The complete SDP in the offer could look like:

      v=0
      o=alice 2890844526 2890844526 IN IP4 host.atlanta.example.com
      s=
      c=IN IP4 host.atlanta.example.com
      a=group:ADJ sb sa
      t=0 0
      m=audio 49101 RTP/AVP 101
      a=rtpmap:101 PCMU/8000
      m=video 49111 RTP/AVP 111
      a=rtpmap:111 H261/90000
      a=mid:sa
      m=video 49112 RTP/AVP 112
      a=rtpmap:112 H261/90000
      a=mid:sb

   There might be other media streams, such as presentation video, that
   are not part of any "ADJ" group.

   As a note to implementors, consider the case where each screen had
   two media flows that were in the same FID group.  In this case all
   the media streams are still listed in the ADJ group and the order of
   two streams in the same FID group can be arbitrarily picked as they
   will be displayed on the same device.

4.2.  Grid Layout

   The following SDP is for a system providing 6 video streams to a wall
   of screens.  The wall has 3 columns and 2 rows of screens.

















Jennings & Begen       Expires September 15, 2011               [Page 6]


Internet-Draft       Adjacent Media Grouping in SDP           March 2011


      v=0
      o=bob 2890844526 2890844526 IN IP4 host.atlanta.example.com
      s=
      c=IN IP4 host.atlanta.example.com
      a=group:ADJ 1 2 3 4 5 6
      a=media-grid-dims:2x3
      t=0 0
      m=audio 49101 RTP/AVP 101
      a=rtpmap:101 H261/90000
      a=mid:1
      m=audio 49102 RTP/AVP 102
      a=rtpmap:102 H261/90000
      a=mid:2
      m=audio 49103 RTP/AVP 103
      a=rtpmap:103 H261/90000
      a=mid:3
      m=audio 49104 RTP/AVP 104
      a=rtpmap:104 H261/90000
      a=mid:4
      m=audio 49105 RTP/AVP 105
      a=rtpmap:105 H261/90000
      a=mid:5
      m=audio 49106 RTP/AVP 106
      a=rtpmap:106 H261/90000
      a=mid:6


5.  Security Considerations

   Like all SDP, integrity of this information is important.  When
   carrying SDP in SIP, mechanisms such as Transport Layer Security
   (TLS) can provide hop by hop confidentiality and integrity.  The
   receiver SHOULD do an integrity check on SDP and follow the security
   considerations of SDP [RFC4566] to trust only SDP from trusted
   sources.  End-to-end integrity can be provided by [RFC4474].


6.  IANA Considerations

   Note to RFC Editor:  Please replace [RFC-AAAA] with the RFC number
   for this specification.

6.1.  Registration of SDP Attributes

   This document registers a new attribute name in SDP.






Jennings & Begen       Expires September 15, 2011               [Page 7]


Internet-Draft       Adjacent Media Grouping in SDP           March 2011


   SDP Attribute ("att-field"):
        Attribute name:     media-grid-dims
        Long form:          2-D media grid dimensions
        Type of name:       att-field
        Type of attribute:  Session level
        Subject to charset: No
        Purpose:            Specifies the dimensions for a media grid
        Reference:          [RFC-AAAA]
        Values:             See [RFC-AAAA]

6.2.  Registration of Grouping Semantics

   This document, following the Standards Action policy from [RFC5226],
   registers the following semantics with IANA in the "Semantics for the
   "group" SDP Attribute" registry under SDP Parameters:

   Semantics                         Token Reference
   --------------------------------- ----- -----------
   Adjacent Media                    ADJ   [RFC-AAAA]


   This document also registers the following semantics with IANA in
   "Semantics for the 'ssrc-group' SDP Attribute" registry under SDP
   Parameters:


   Token    Semantics                      Reference
   -------  -----------------------------  ---------
   RED      Adjacent Media                 [RFC-AAAA]


7.  Acknowledgments

   The authors would like to thank Flemming Andreasen, Allyn Romanow,
   Roni Even, Hakon Dahle, Ingemar Johansson, Peter Musgrave, and Geir
   Arne Sandbakken for their review comments.


8.  References

8.1.  Normative References

   [RFC5888]  Camarillo, G. and H. Schulzrinne, "The Session Description
              Protocol (SDP) Grouping Framework", RFC 5888, June 2010.

   [RFC4566]  Handley, M., Jacobson, V., and C. Perkins, "SDP: Session
              Description Protocol", RFC 4566, July 2006.




Jennings & Begen       Expires September 15, 2011               [Page 8]


Internet-Draft       Adjacent Media Grouping in SDP           March 2011


   [RFC2119]  Bradner, S., "Key words for use in RFCs to Indicate
              Requirement Levels", BCP 14, RFC 2119, March 1997.

   [RFC5234]  Crocker, D. and P. Overell, "Augmented BNF for Syntax
              Specifications: ABNF", STD 68, RFC 5234, January 2008.

   [RFC5576]  Lennox, J., Ott, J., and T. Schierl, "Source-Specific
              Media Attributes in the Session Description Protocol
              (SDP)", RFC 5576, June 2009.

   [RFC3264]  Rosenberg, J. and H. Schulzrinne, "An Offer/Answer Model
              with Session Description Protocol (SDP)", RFC 3264,
              June 2002.

8.2.  Informative References

   [RFC4474]  Peterson, J. and C. Jennings, "Enhancements for
              Authenticated Identity Management in the Session
              Initiation Protocol (SIP)", RFC 4474, August 2006.

   [RFC5226]  Narten, T. and H. Alvestrand, "Guidelines for Writing an
              IANA Considerations Section in RFCs", BCP 26, RFC 5226,
              May 2008.

   [RFC3550]  Schulzrinne, H., Casner, S., Frederick, R., and V.
              Jacobson, "RTP: A Transport Protocol for Real-Time
              Applications", STD 64, RFC 3550, July 2003.


Authors' Addresses

   Cullen Jennings
   Cisco
   170 West Tasman Drive
   San Jose, CA  95134
   USA

   Phone:  +1 408 421-9990
   Email:  fluffy@cisco.com












Jennings & Begen       Expires September 15, 2011               [Page 9]


Internet-Draft       Adjacent Media Grouping in SDP           March 2011


   Ali Begen
   Cisco
   181 Bay Street
   Toronto, ON  M5J 2T3
   Canada

   Email:  abegen@cisco.com












































Jennings & Begen       Expires September 15, 2011              [Page 10]


Html markup produced by rfcmarkup 1.129d, available from https://tools.ietf.org/tools/rfcmarkup/