Signaling End-Of-Stream in RTSP (or RTCP) - PowerPoint PPT Presentation

About This Presentation
Title:

Signaling End-Of-Stream in RTSP (or RTCP)

Description:

Work triggered by the awkwardness of 'BYE' Tasked to create Strawman proposal in Vienna. Lately this work has been 'energized' by the desire for server to 'push' ... – PowerPoint PPT presentation

Number of Views:208
Avg rating:3.0/5.0
Slides: 9
Provided by: osamaal8
Learn more at: https://www.ietf.org
Category:

less

Transcript and Presenter's Notes

Title: Signaling End-Of-Stream in RTSP (or RTCP)


1
Signaling End-Of-Stream in RTSP(or RTCP)
IETF-58 MMUSIC WG
In IETF I-D database draft-ietf-zeng-rtsp-end-of-
stream-00.txt (on mmusic mailing list
draft-ietf-zeng-mmusic-end-of-stream-01.txt)
  • Thomas Zeng
  • P. Greg Sherwood
  • PacketVideo Corp, Nov, 2003

2
Background
  • Work triggered by the awkwardness of BYE
  • Tasked to create Strawman proposal in Vienna
  • Lately this work has been energized by the
    desire for server to push different types of
    information to client
  • END_OF_STREAM with ending packet number
  • Session descriptions (and their updates)
  • Error events
  • Another background Sean Sheedy had a announce
    based EOS draft a few years ago, and Ron
    Frederick had mentioned Stream done event in
    the RTSP bake-off report as well (about 3 years
    ago)
  • http//www.ietf.org/proceedings/00jul/00july-131.h
    tm

3
Background (contd)
  • BYE RTCP packet has been widely used for
    streaming server to announce EOS event
  • EOS the end of stream is reached and/or play
    request has been fulfilled.
  • Drawbacks of using BYE
  • BYE de-allocates SSRC, thus preventing re-play
    w/o SETUP again
  • BYE packet may be unreliable (e.g., when
    carried over UDP)
  • BYE cannot not be aggregated
  • If BYE is not used and server does nothing to
    signal EOS, then
  • Clients rely on the close Range to figure out
    when RTP packets are over
  • If no end range, which is the case for live
    streaming (or end range is provided in PLAY
    response but server has to end early due to
    error)
  • The clients transport handler will know if no
    RTP packet is forth-coming, but the cost can be
    one or more of the following
  • extra delay and/or erroneous requests for
    re-transmission
  • even re-buffering if video has low frame rate

4
Strawman Proposal Using RTSP
  • As an extension to RTSP, use a S-gtC method w/ a
    feature tag
  • Recent suggestion is to use ANNOUNCE instead of a
    new method name
  • This method announces EOS event, with optional
    information on actual range served and the
    sequence number(s) of the ending RTP packet(s)
  • MUST include Notice header ( a new header) for
    event type
  • Do we need SDP as body of this method?
  • Request URL can be either aggregate or
    non-aggregate URI
  • Opportunity exists to generalize this as a method
    for server to push other kind of info to client
  • Need to work out how server can initiate
    connection to client

5
Example of RTSP conversation
  • S-gtC ANNOUNCE rtsp//foo.com/bar.avi/streamid0
    RTSP/1.0
  • CSeq 10
  • Session 12345678
  • Notice End-Of-Stream
  • Reason 2000 End of range reached
  • Range npt0-200 bytes0-200000
  • RTP-Info url//foo.com/bar.avi/streamid
    0seq45102
  • C-gtS RTSP/1.0 200 OK
  • CSeq 10
  • Session 12345678
  • / Second play can reuse SSRC /
  • C-gtS PLAY rtsp//foo.com/bar.avi/streamid0
    RTSP/1.0
  • Supported method.eos
  • CSeq 110
  • Session 12345678
  • Range 0-200

6
Strawman Proposal Using RTCP
  • Define a new RTCP packet type (type 205), which
    has format similar to BYE (but added ending seq
    no. per SSRC), except it does not mean leaving
    the RTP session
  • Instead, it means I am going to stop sending RTP
    packet until you issue a new PLAY
  • RTCP extension really belongs to AVT WG !
  • 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
  • ----------------------
    ----------
  • V2P SC PTEOS205
    length
  • ----------------------
    ---------- ----
  • SSRC/CSRC
    repeat
  • ----------------------
    ---------- SC times
  • extended RTP sequence number
  • ----------------------
    ---------- ----
  • ...

  • (opt) length reason for
    EOS ...
  • ----------------------
    ----------

7
Pros and Cons of The Two Proposals
RTSP END_OF_STREAM RTCP EOS Packet
Works for non-persistent RTSP connection ? No, unless server can initiate connection (TBD) Yes
Aggregatable? Yes No
Reliable? Yes, assuming RTSP over TCP No, unless RTP/AVP/TCP is used
Works for non-RTP transport (e.g., Mpeg2 transport) Yes No
Scalable in multicast transports? No Yes
8
What Next
  • Propose to expand the scope of this draft to
    cover ANNOUNCE as an extension to RTSP core spec
  • Pushes events such as EOS
  • Pushes Session Descriptions as did RFC2326
  • Change name of draft to rtsp-announce-
  • Work out how server contact client host
  • Dual-roled host client to upstream, server to
    downstream
  • Acceptable as MMUSIC WG work item?
  • ANNOUNCE has been taken out of RTSP core spec
    (rfc2326bis)
Write a Comment
User Comments (0)
About PowerShow.com