Re: [MMUSIC] RTSP 2.0: Seek-style RAP and conditional execution

"SEVERA Mike" <Mike.Severa@alcatel-lucent.com> Tue, 03 November 2009 19:41 UTC

Return-Path: <Mike.Severa@alcatel-lucent.com>
X-Original-To: mmusic@core3.amsl.com
Delivered-To: mmusic@core3.amsl.com
Received: from localhost (localhost [127.0.0.1]) by core3.amsl.com (Postfix) with ESMTP id BA7213A690D for <mmusic@core3.amsl.com>; Tue, 3 Nov 2009 11:41:49 -0800 (PST)
X-Virus-Scanned: amavisd-new at amsl.com
X-Spam-Flag: NO
X-Spam-Score: -2.599
X-Spam-Level:
X-Spam-Status: No, score=-2.599 tagged_above=-999 required=5 tests=[BAYES_00=-2.599]
Received: from mail.ietf.org ([64.170.98.32]) by localhost (core3.amsl.com [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id e-7jUu9BxQxP for <mmusic@core3.amsl.com>; Tue, 3 Nov 2009 11:41:48 -0800 (PST)
Received: from audl952.usa.alcatel.com (audl952.usa.alcatel.com [143.209.238.159]) by core3.amsl.com (Postfix) with ESMTP id 4583D3A68D6 for <mmusic@ietf.org>; Tue, 3 Nov 2009 11:41:48 -0800 (PST)
Received: from usdalsbhs02.ad3.ad.alcatel.com (usdalsbhs02.usa.alcatel.com [172.22.216.13]) by audl952.usa.alcatel.com (ALCANET) with ESMTP id nA3Jg50Z024695; Tue, 3 Nov 2009 13:42:06 -0600
Received: from USDALSMBS01.ad3.ad.alcatel.com ([172.22.216.6]) by usdalsbhs02.ad3.ad.alcatel.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 3 Nov 2009 13:42:06 -0600
Received: from USDALSMBS06.ad3.ad.alcatel.com ([172.22.216.33]) by USDALSMBS01.ad3.ad.alcatel.com with Microsoft SMTPSVC(6.0.3790.3959); Tue, 3 Nov 2009 13:41:44 -0600
X-MimeOLE: Produced By Microsoft Exchange V6.5
Content-class: urn:content-classes:message
MIME-Version: 1.0
Content-Type: text/plain; charset="iso-8859-1"
Content-Transfer-Encoding: quoted-printable
Date: Tue, 03 Nov 2009 13:41:02 -0600
Message-ID: <83FC11A6E017DD449E0D8B10B818CF490228B253@USDALSMBS06.ad3.ad.alcatel.com>
In-Reply-To: <4AED745E.2080403@ericsson.com>
X-MS-Has-Attach:
X-MS-TNEF-Correlator:
Thread-Topic: [MMUSIC] RTSP 2.0: Seek-style RAP and conditional execution
Thread-Index: Acpa6IyvHiSvbrMHQACyVNLGEJHHhQBzhkQg
References: <4AED745E.2080403@ericsson.com>
From: SEVERA Mike <Mike.Severa@alcatel-lucent.com>
To: Magnus Westerlund <magnus.westerlund@ericsson.com>, "mmusic (E-mail)" <mmusic@ietf.org>
X-OriginalArrivalTime: 03 Nov 2009 19:41:44.0049 (UTC) FILETIME=[AC2A0610:01CA5CBD]
X-Scanned-By: MIMEDefang 2.64 on 143.209.238.34
Subject: Re: [MMUSIC] RTSP 2.0: Seek-style RAP and conditional execution
X-BeenThere: mmusic@ietf.org
X-Mailman-Version: 2.1.9
Precedence: list
List-Id: Multiparty Multimedia Session Control Working Group <mmusic.ietf.org>
List-Unsubscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=unsubscribe>
List-Archive: <http://www.ietf.org/mail-archive/web/mmusic>
List-Post: <mailto:mmusic@ietf.org>
List-Help: <mailto:mmusic-request@ietf.org?subject=help>
List-Subscribe: <https://www.ietf.org/mailman/listinfo/mmusic>, <mailto:mmusic-request@ietf.org?subject=subscribe>
X-List-Received-Date: Tue, 03 Nov 2009 19:41:49 -0000

Hi. 

I think it would be helpful to clarify the contexts in which RAPcond would be valid. For example, I don't think the described behavior makes sense if the seek point is backwards. (Something more like a time-window might be useful there, but that would be quite a different implementation.)
 
This style is also meaningless in the context of a replacment PLAY (eg end-time only), and possibly when resuming from PAUSE (especially for live or any other context where "now-" range might be used.)

Although I think it could safely be ignored in the end-of-PLAY then new PLAY case, those scenarios probably should be thought through.

And the distinction between client playback time and server current play time should be made explicit. I don't think it changes the scenarios at all, but in some cases it could mean you have more information at the client to use in deciding which seek style to use (eg a RAP exists in the jitter buffer, etc), and if so, that information could be provided in the doc's description.

Thanks,

Mike


-----Original Message-----
From: mmusic-bounces@ietf.org [mailto:mmusic-bounces@ietf.org] On Behalf Of Magnus Westerlund
Sent: Sunday, November 01, 2009 3:43 AM
To: mmusic (E-mail)
Subject: [MMUSIC] RTSP 2.0: Seek-style RAP and conditional execution

Hi,
(as document author)

During the WG last call I received this comment from two different individuals.

Logged tracker issue:
https://sourceforge.net/tracker/?func=detail&aid=2890240&group_id=23194&atid=377744

> When using seek-style RAP and repositioning in a playing media: If the 
> RAPs are far enough from each other a repositioning request may 
> actually result in a media point that is further back the current play 
> position. Thus, desired if the repositioning only happened under the 
> condition that the client will receive media closer to the desired point.
> 
> Example:
> -- Playback time is at t=15 seconds.
> -- User drags marker forward to seek to t=20 seconds
> -- Client issues the seek (PLAY with appropriate Range)
> -- Server responds starting with a RAP at t=13 seconds; our seek 
> forward has made us go backwards!
> 
> The commenters notice it that it would be desirable that the seek only 
> happen if playing point gets closer to the desired target.
> 
> Proposals to solve this could be a new seek-style that is conditional.
> Another one is too make the normal on conditional. The question is how 
> to indicate why things has happened in a certain way, and how to 
> handle the response so this is clear.

After some thought I think it makes sense to create two different seek-styles for RAP, one that is conditional and that is not. The reason is that some clients may aggressively flush its buffer or have a situation where it needs to really go to a RAP despite that the playing point was closer to the requested position than the RAP.

Thus if create a new RAP policy, which here will call RAPcond. Then it would work such that the server when receiving a request will compare the RAP closet prior to the desired point expressed in the Range header with the current play-point. If the RAP is closer, than it will 200 ok and deliver that. However, if the current playing point is closer then the server could respond with a error message. Thus indicating that it will continue with the previous request. The error class here isn't obvious, but I guess a 4xx as we have other pre-conditioned errors here.
Maybe 466 "Media precondition not meet". I don't think 412 fits the bill as it talks about the resource not being the correct one.

Feedback appreciated.

Cheers

Magnus Westerlund

IETF Transport Area Director
----------------------------------------------------------------------
Multimedia Technologies, Ericsson Research EAB/TVM
----------------------------------------------------------------------
Ericsson AB                | Phone  +46 10 7148287
Färögatan 6                | Mobile +46 73 0949079
SE-164 80 Stockholm, Sweden| mailto: magnus.westerlund@ericsson.com
----------------------------------------------------------------------
_______________________________________________
mmusic mailing list
mmusic@ietf.org
https://www.ietf.org/mailman/listinfo/mmusic