<html>
<head>
<meta content="text/html; charset=windows-1252"
http-equiv="Content-Type">
</head>
<body bgcolor="#FFFFFF" text="#000000">
[Switched from vlc-devel because this part really is just
live555-specific]<br>
<br>
On 24/06/15 14:26, Ross Finlayson wrote:<br>
<blockquote
cite="mid:51DB4CAC-F24C-4952-9CB3-7E85CF785C89@live555.com"
type="cite">
<meta http-equiv="Content-Type" content="text/html;
charset=windows-1252">
<div>That’s odd. I tested against a MP3 stream (file), and in
that case VLC sent a “PAUSE” command when I clicked the pause
button. But it didn’t when I tried streaming from a MPEG
Transport Stream file, or from a raw H.264 file. Go figure...</div>
</blockquote>
<br>
I think it's because in the case of MP3 your server does return the
duration:<br>
<br>
a=range:npt=0-88.451<br>
<br>
But you're right that this doesn't trigger the problem. It's
because your server returns a body to GET_PARAMETER, whereas ours
doesn't, and hence yours avoids the buffering issue identified in my
patch today. If you patch your server to return an empty body
(after all, it wasn't actually asked for any parameters :-) ) then
you will see the issue:<br>
<br>
diff --git a/liveMedia/RTSPServer.cpp b/liveMedia/RTSPServer.cpp<br>
index 4a54c5b..c75325e 100644<br>
--- a/liveMedia/RTSPServer.cpp<br>
+++ b/liveMedia/RTSPServer.cpp<br>
@@ -2030,7 +2030,7 @@ void RTSPServer::RTSPClientSession<br>
// By default, we implement "GET_PARAMETER" just as a 'keep
alive', and send back a dummy response.<br>
// (If you want to handle "GET_PARAMETER" properly, you can do so
by defining a subclass of "RTSPServer"<br>
// and "RTSPServer::RTSPClientSession", and then reimplement this
virtual function in your subclass.)<br>
- setRTSPResponse(ourClientConnection, "200 OK", fOurSessionId,
LIVEMEDIA_LIBRARY_VERSION_STRING);<br>
+ setRTSPResponse(ourClientConnection, "200 OK", fOurSessionId,
"");<br>
}<br>
<br>
Reproduce: Play an RTSP mp3 from VLC, pause, wait for two
GET_PARAMETERS, then try to resume<br>
<br>
However, the fundamental problem is that VLC doesn't call your
doEventLoop() during PAUSE - working on that now.<br>
<br>
Best regards<br>
<br>
Paul<br>
<br>
<br>
<br>
</body>
</html>