[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-server-cvs
Subject: [Server-cvs] engine/session/pub clientsession.h,1.83,1.84
From: yuxinliu () helixcommunity ! org
Date: 2011-09-28 5:22:08
Message-ID: 201109280621.p8S6L4Us028349 () mailer ! progressive-comp ! com
[Download RAW message or body]
Update of /cvsroot/server/engine/session/pub
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv13920/pub
Modified Files:
clientsession.h
Log Message:
Synopsis
========
This CR fixes PR 269469: clipBegin fails for non-first clip in SSPL file
Branch : SERVER_CURRENT_RN
Reviewed by: Chytanya
Description:
==========
When having a Helix Playlist file which specifies a specific start position of a \
piece of content in the playlist, this works fine for the first piece of content \
however is ignored for any subsequent request.
The cause of the problem:
When server switch source from first clip to second clip, it need to seek second clip \
according to its ClipBin time. But I find it will fail at CQTFileFormat::Seek because \
of NO_STREAM_SET.
My fix is:
I add a new interface SwitchDoneSeek in hxswitch.h, and then move seek code into new \
function ClientSession::SwitchDoneSeek. It will be called by \
BasePacketShim::Resubscribe to make sure streams will be subscribed first before \
CSessionSourceControl::DoInternalSeek is called.
Files affected:
=========
server/engine/inputsource/base_shim.cpp
server/engine/session/clientsession.cpp
server/engine/session/pub/clientsession.h
server-restricted/protocol/http-ctrl/fcsgethandler.cpp
server-restricted/protocol/http-ctrl/pub/fcsgethandler.h
server/include/hxswitch.h
server-restricted/datatype/playlist/playlist_control.cpp
server-restricted/datatype/playlist/pub/playlist_control.h
Testing Performed:
================
Unit Tests:
Using VLC to connect to server like this: rtsp://192.168.8.38/test.hpl, now It begin \
playback at each of the designated points. The content of test.hpl:
<smil xmlns="http://www.w3.org/2001/SMIL20/Language">
<head>
<meta name="title" content="Travel - H264"/>
<meta name="copyright" content="(c) 2010"/>
</head>
<body>
<video id="Slow_Boat" src="/3gp/Venice-h264.3gp" clipBegin="25">
</video>
<video id="Desert_Race" src="/3gp/Desertrace-h264.3gp" clipBegin="15">
</video>
<video id="Riders" src="/3gp/Riders-h264.3gp" clipBegin="20">
</video>
</body>
</smil>
Note: you can add <Vare ForceMDP="1"> to enable MDP for testing.
Leak Tests: None
Performance Tests: N/A
Platforms Tested: linux-rhel5-x86_64, win-x86-vc10
Builds Verified: linux-rhel5-x86_64, win-x86-vc10
QA Hints
Index: clientsession.h
===================================================================
RCS file: /cvsroot/server/engine/session/pub/clientsession.h,v
retrieving revision 1.83
retrieving revision 1.84
diff -u -d -r1.83 -r1.84
--- clientsession.h 12 Apr 2011 22:36:51 -0000 1.83
+++ clientsession.h 28 Sep 2011 05:22:05 -0000 1.84
@@ -328,6 +328,7 @@
/* IID_IHXSwitchResponse */
STDMETHOD (SwitchDone)(THIS_ HX_RESULT status);
+ STDMETHOD (SwitchDoneSeek)();
#else
inline HXBOOL IsSwitchable() { return FALSE; }
#endif //HELIX_FEATURE_SERVER_FCS
_______________________________________________
Server-cvs mailing list
Server-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/server-cvs
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic