One document matched: draft-xia-avt-splicing-for-mpeg2ts-ps-00.txt




AVT Working Group                                                 J. Xia
Internet-Draft                                                    H. Xia
Intended status: Informational                                  J. Zhang
Expires: September 1, 2010                                        Huawei
                                                       February 28, 2010


        Splicing for MPEG2-TS Problem Statement in RTP Sessions
                draft-xia-avt-splicing-for-mpeg2ts-ps-00

Abstract

   The base splicing related protocols, i.e., Digital Program Insertion
   Splicing API [SCTE30] and Digital Program Insertion Cueing Message
   for Cable [SCTE35], only take into account how to insert the content
   (e.g. spot advertisements of various lengths, program substitution,
   public service announcements etc.) into any MPEG-2 Output Multiplex
   in the Splicer and how to carry notification of upcoming Splicing and
   other timing information in the transport stream, but not give enough
   mechanisms to direct underlying transport protocol such as RTP how to
   work compatibly with the spliced MPEG2-TS.  This memo highlights the
   issues of what's the impact on RTP layer when performing splicing
   between the primary channel and the insertion channel.

Status of this Memo

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

   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.

   This Internet-Draft will expire on September 1, 2010.

Copyright Notice



Xia, et al.             Expires September 1, 2010               [Page 1]

Internet-Draft            seamless splicing ps             February 2010


   Copyright (c) 2010 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
   described in the BSD License.


Table of Contents

   1.  Introduction  . . . . . . . . . . . . . . . . . . . . . . . . . 3
   2.  Terminology . . . . . . . . . . . . . . . . . . . . . . . . . . 4
   3.  Use Cases . . . . . . . . . . . . . . . . . . . . . . . . . . . 5
     3.1.  Overlap between Insertion Channel and Primary Channel . . . 5
     3.2.  Gap between Insertion Channel and Primary Channel . . . . . 7
   4.  Potential Approach  . . . . . . . . . . . . . . . . . . . . . . 8
   5.  Security Considerations . . . . . . . . . . . . . . . . . . . . 8
   6.  IANA considerations . . . . . . . . . . . . . . . . . . . . . . 8
   7.  Acknowledgments . . . . . . . . . . . . . . . . . . . . . . . . 8
   8.  Normative References  . . . . . . . . . . . . . . . . . . . . . 8
   Authors' Addresses  . . . . . . . . . . . . . . . . . . . . . . . . 9
























Xia, et al.             Expires September 1, 2010               [Page 2]

Internet-Draft            seamless splicing ps             February 2010


1.  Introduction

   MPEG2 Transport Stream (MPEG2-TS) [MPEG2TS] is an encapsulation
   method and transport that multiplexes digital video and audio
   content, together with ancillary metadata, and produces a
   synchronized multiplexed stream that is tailored for transport over
   packet or cell-oriented networks.  MPEG2-TS are composed of 188 byte
   TS Packets, whose payloads may contain program information as well as
   Packetized Elementary Streams (PES), typically video and audio
   streams.  The RTP payload format for carrying TS packets in an RTP
   stream is specified in [RFC2250].

   With the expansive application of the MPEG2-TS, cable operators will
   need solutions that can efficiently manage and process an increasing
   number of ads.  Solutions that can process and splice hundreds of ads
   in a single device is Digital Program Insertion (DPI) which involve
   the splicing of a single program transport stream and advertisements
   in most cases, into a broadcast program.  The splicer will seamlessly
   insert valuable ads into primary programs.  The details for
   describing splicing configuration defined in [SCTE30] are shown in
   Figure 1.


        Primary Channel  +-----------+
             ----------->|           | Output Channel
                         |  Splicer  |---------->
              ---------->|           |
             |           +-----------+
             |                    ^
             | Insertion Channel  '
             |                    '
       +----------+               '
       |          |               '
       |  Server  | <''''''''''''''
       |          |      Signaling Connect       .
       +----------+

    ---------->  Data
    ''''''''''>  Signaling

      Figure 1:  Single Splicing Configuration


   [SCTE30] creates a standardized method for communication between
   Server and Splicer for the insertion of content into any MPEG2 output
   multiplex in the Splicer.  Based on the cue message [SCTE35], Server
   and Splicer know when and how long for a insertion channel to splice
   into the specific primary channel.



Xia, et al.             Expires September 1, 2010               [Page 3]

Internet-Draft            seamless splicing ps             February 2010


   However SCET only takes into account the splicing process on
   application layer for MPEG2-TS regardless of the underlying transport
   protocol, such as RTP.  From this viewpoint, this does not cause any
   problem for CATV operators who directly carry MPEG2-TS over cable.
   CATV operators concurrently output the ads MPEG2-TS instead of
   primary program on Splicer and return to the primary program after
   the Avail time.  The whole procedure is processed only within the
   MPEG2-TS layer and without any transport protocol limitation.  But
   IPTV operators who provide IP-based video services have to face the
   issues raised by splicing.

   In IPTV deployments, Splicer not only performs MPEG2-TS splicing but
   also needs to coordinate underlying RTP layer to compatibly with
   MPEG2-TS splicing.  By deeply detecting the timing information
   conveied in MPEG2-TS payload, Splicer can clearly know when to
   perform splicing.  However, during the certain Avail time, the number
   of insertion RTP packets, which are inserted into primary program by
   Splicer, is variable due to the different entropy coding.  In such
   case, if the splicing between Insertion channel and Primary channel
   can not be appropriately handled by Splicer at the beginning and end
   of Avail time, the RTP sequence number gap or overlay between
   Insertion channel and Primary channel maybe result in the RTP
   receiver to request unnecessary retransmission for inexistent packet
   missing or to discard the useful packets due to the reduplicate
   sequence number.  The use cases where the problems exist are briefly
   described in section Section Section 3.


2.  Terminology

   The keywords "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT",
   "SHOULD", "SHOULD NOT", "RECOMMENDED", "MAY", and "OPTIONAL" in this
   document are to be interpreted as described in [RFC2119].

   Throughout this document, the terms used have specific meanings.
   Because some of the terms that are defined in SCTE30 and SCTE35 have
   very specific technical meanings, the reader is referred to the
   original source for their definition.  For terms used in this
   document, brief definitions are given below.

   Digital Program Insertion (DPI)

      the digital splicing of MPEG programs into other MPEG programs.








Xia, et al.             Expires September 1, 2010               [Page 4]

Internet-Draft            seamless splicing ps             February 2010


   Avail

      Time space provided to cable operators by cable programming
      services during a program for use by the CATV operator; the time
      is usually sold to local advertisers or used for channel self
      promotion.

   Channel

      Channel is a synonym for a "Service" in DVB terminology, or a
      "Program" in MPEG terminology.

   Primary Channel

      The Primary Multiplex Channel carrying MPEG2-TS.  It is spliced in
      whole or in part by insertion channle.

   Insertion Channel

      The Insertion Multiplex Channel(s) that replace the Primary
      Channel in whole or in part for the duration of a splicing.

   Splicer

      The device that splices the Insertion Channel(s) into the Primary
      Channel(s).  It may receive cue messages [SCTE35].  This device
      also communicates with the Server about when and what to splice.

   Output Channel

      The Channel that is produced at the output of the Splicer

   Server

      The device that originates the Insertion Channel(s) to be spliced
      into the Primary Channel(s).  This device communicates with the
      Splicer about when and what to splice.


3.  Use Cases

   In this section, two use cases are listed to illustrate the issues
   resulting from this imperfect switch on RTP layer.

3.1.  Overlap between Insertion Channel and Primary Channel

   Figure 2 gives the overlay issue at the beginning and end of Avail
   time.



Xia, et al.             Expires September 1, 2010               [Page 5]

Internet-Draft            seamless splicing ps             February 2010


                       '                           '
      Primary Channel  '<-------Avail Time-------->'
                       '                           '
     +-----+   +-----+ '     +-----+  +-----+      ' +-----+   +-----+
     | SN1 |...| SN15| '     | SN16|  | SN17|      ' | SN18|...| SN25|
     +-----+   +-----+ '     +-----+  +-----+      ' +-----+   +-----+
        |         |    '                           '    |         |
        |         |    '                           '    |         |
        |         |    '     Insertion Channel     '    |         |
        |         |    '                           '    |         |
        |         |    ' +-----+  +-----+  +-----+ '    |         |
        |         |    ' | SN1 |  | SN2 |  | SN3 | '    |         |
        |         |    ' +-----+  +-----+  +-----+ '    |         |
        |         |    '    '        '        '    '    |         |
        |         |    '    '        '        '    '    |         |
        |         |    '    '        '        '    '    |         |
        v         v    '    v        v        v    '    v         v
     +-----+   +-----+ ' +-----+  +-----+  +-----+ ' +-----+   +-----+
     | SN1 |...| SN15| ' | SN16|  | SN17|  | SN18| ' | SN19|...| SN26|
     +-----+   +-----+ ' +-----+  +-----+  +-----+ ' +-----+   +-----+
                       '                           '
      Output Channel   '                           '


             Figure 2: Overlap at the end of insertion


   1.  Before the splicing, the stream of Output Channel on Splicer is
       from Primary Channel.

   2.  At the beginning of Avail time, The Splicer switches this
       Insertion Channel stream to the Output Channel.  In order to
       achieve seamless switch-over, Splicer needs to coordinate the RTP
       sequence number of Insertion Channel packets with pervious
       Primary Channel packets prior to delivering them to Output
       Channel.  For example, in figure 2, the RTP sequence number of
       last Primary Channel packet is SN15, the new RTP sequence number
       of next insertion packet should be changed to SN16 from SN1.

   3.  At the end of Avail time, The Splicer returns to the Primary
       Channel for direction to the Output Channel.  If the Insertion
       Channel packets delivered through Output channel are more than
       the overridden Primary Channel packets during the Avail time,
       Splicer needs to coordinate the RTP sequence number of Primary
       Channel packets with pervious Insertion Channel packets again at
       this time prior to delivering them to Output Channel.  For
       example, in figure 2, two Primary Channel packets are overridden
       by three Insertion Channel packets during the Avail time, the new



Xia, et al.             Expires September 1, 2010               [Page 6]

Internet-Draft            seamless splicing ps             February 2010


       RTP sequence number of next Primary Channel packet should be
       changed to SN19 from SN18.


3.2.  Gap between Insertion Channel and Primary Channel

   Figure 3 gives the gap issue at the beginning and end of Avail time.


                      '                           '
     Primary Channel  '<-------Avail Time-------->'
                      '                           '
    +-----+   +-----+ ' +-----+  +-----+  +-----+ ' +-----+   +-----+
    | SN1 |...| SN15| ' | SN16|  | SN17|  | SN18| ' | SN19|...| SN25|
    +-----+   +-----+ ' +-----+  +-----+  +-----+ ' +-----+   +-----+
       |         |    '                           '    |         |
       |         |    '                           '    |         |
       |         |    '     Insertion Channel     '    |         |
       |         |    '                           '    |         |
       |         |    '     +-----+  +-----+      '    |         |
       |         |    '     | SN1 |  | SN2 |      '    |         |
       |         |    '     +-----+  +-----+      '    |         |
       |         |    '        '        '         '    |         |
       |         |    '        '        '         '    |         |
       |         |    '        '        '         '    |         |
       v         v    '        v        v         '    v         v
    +-----+   +-----+ '     +-----+  +-----+      ' +-----+   +-----+
    | SN1 |...| SN15| '     | SN16|  | SN17|      ' | SN18|...| SN24|
    +-----+   +-----+ '     +-----+  +-----+      ' +-----+   +-----+
                      '                           '
     Output Channel   '                           '


             Figure 3: Gap at the end of insertion


   1.  First two steps are same as overlay issue specified in section
       Section 3.1

   2.  At the end of Avail duration, The Splicer returns to the Primary
       Channel for direction to the Output Channel.  If the Insertion
       Channel packets delivered through Output channel are less than
       the overridden Primary Channel packets during the Avail time,
       Splicer needs to coordinate the RTP sequence number of Primary
       Channel packets with pervious Insertion Channel packets again at
       this time prior to delivering them to Output Channel.  For
       example, in figure 3, three Primary Channel packets are
       overridden by two Insertion Channel packets during the Avail



Xia, et al.             Expires September 1, 2010               [Page 7]

Internet-Draft            seamless splicing ps             February 2010


       time, the new RTP sequence number of next Primary Channel packet
       should be changed to SN18 from SN19.



4.  Potential Approach

   Using a powerful Splicer for splicing is a possibility.  Splicer
   takes off the RTP header of Primary Channel packets and Insertion
   Channel packet when receiving them and performs MPEG2-TS splicing
   specified in [SCTE30], then recomposes RTP packets to carry the
   compound Output Channel MPEG2-TS packets.

   However, Splicer has to decode and encode RTP packets for primary
   program even if no splicing occur.  So the additional overhead is
   introduced on Splicer when Splicer performs unnecessary decoding and
   encoding.  If we assume Splicer to decode and encode only after
   splicing occurs, the rest RTP packets of primary program still need
   to be recomposed even if the splicing is end, i.e., the overhead
   issue still exists.

   Furthermore, a Splicer may serve more than one Primary Channel
   simultaneously, the heavy-laden Splicer may has unpredictable
   overheads when performing splicing.

   Based on the above observations, a more efficient splicing mechanism
   on RTP layer can be justified that would be part of the RTP/RTCP base
   protocol.


5.  Security Considerations


6.  IANA considerations


7.  Acknowledgments

   The authors would like to thank all colleagues for their review and
   comments of this draft.


8.  Normative References

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

   [RFC3550]  Schulzrinne, H., Casner, S., Frederick, R., and V.



Xia, et al.             Expires September 1, 2010               [Page 8]

Internet-Draft            seamless splicing ps             February 2010


              Jacobson, "RTP: A Transport Protocol for Real-Time
              Applications", STD 64, RFC 3550, July 2003.

   [RFC2250]  Hoffman, D., Fernando, G., Goyal, V., and M. Civanlar,
              "RTP Payload Format for MPEG1/MPEG2 Video", RFC 2250,
              January 1998.

   [SCTE30]   "Digital Program Insertion Splicing API", 2001.

   [SCTE35]   "Digital Program Insertion Cueing Message for Cable",
              2004.

   [MPEG2TS]  "Generic Coding of Moving Pictures and Associated Audio
              Information: Systems", 2006.


Authors' Addresses

   Jinwei Xia
   Huawei
   Hui Hong Mansion
   Nanjing, Baixia District  210001
   China

   Phone: +86-025-84565890
   Email: xiajinwei@huawei.com


   Hui Xia
   Huawei
   Site B,Floor 12F,Huihong Mansion, No.91 Baixia Rd.
   Nanjing, Jiangsu  21001
   China

   Phone: +86-25-84565868


   Jinhui Zhang
   Huawei
   Site B,Floor 12F,Huihong Mansion, No.91 Baixia Rd.
   Nanjing, Jiangsu  21001
   China

   Phone: +86-25-84565866







Xia, et al.             Expires September 1, 2010               [Page 9]



PAFTECH AB 2003-20262026-04-24 06:47:59