[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-server-cvs
Subject: [Server-cvs] engine/inputsource srcfinder.cpp, 1.21.2.3.20.3,
From: vijendrakumara () helixcommunity ! org
Date: 2007-06-28 14:05:35
Message-ID: 200706281405.l5SE5jxL009845 () dommarcmx ! xen ! 10east ! com
[Download RAW message or body]
Update of /cvsroot/server/engine/inputsource
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv11757
Modified Files:
Tag: SERVER_11_1
srcfinder.cpp
Log Message:
Hello,
This CR contains the changes according to updated spec.
Note : SERVER_11_1_RN : doesn’t have any changes plgnhand.h (that’s a part
of AMP).
Synopsis
========
Record-Blocking Feature Development for server
Branches: SERVER_CURRENT_RN, SERVER_11_1_RN
Suggested Reviewer: Jamie Gordon, Chytanya Karusala
Description
===========
Contain changes according to updated spec.
1. Change the datatype of variable from bool to int
2. Change the string from EnableContentRecording to ContentMarker
3. Change the condition 1: Record blocking 0:Record enable anything
else:Record enable
Added Licensing check
Fix Bug 197983: Server Do Not Record broken with Alternate Mount Points
Files Affected
==============
common/include/hxfiles.h
datatype-restrcited/rm/fileformat/rmffplin.cpp
datatype-restrcited/rm/fileformat/rmffplin.h
server/common/util/plgnhand.cpp
server/common/util/pub/plgnhand.h
server/engine/dataflow/fsmanager.cpp
server/engine/dataflow/pub/fsmanager.h
server/engine/inputsource/srcfinder.cpp
server/engine/session/source_finder.cpp
server-restricted/broadcast/transport/bcng/recv/breceiver.cpp
server-restricted/broadcast/transport/bcng/recv/strmsess.cpp
server-restricted/broadcast/transport/bcng/recv/pub/breceiver.h
server-restricted/broadcast/transport/bcng/recv/pub/strmsess.h
Testing Performed
=================
Functional Tests:
-----------------
Testing perform for various kinds of request using RealPlayer 11.
Tested on SERVER_CURRENT_RN , SERVER_11_1_RN
1. Testing for simple mount points – License is enabled
- Send a request for mount point where Contentmarker is 1
e.g rtsp://127.0.0.1/realvideo10.rm ; output: player shows
recording button disabled.
- Send a request for mount points where ContentMarker is 0
e.g rtsp://127.0.0.1/tst/realvideo10.rm ; output: player
shows recording button enabled.
2. Testing for simple mount points – Licensing is disabled
- Send a request for mount point where Contentmarker is 1
e.g rtsp://127.0.0.1/realvideo10.rm ; output: player shows
recording button enabled.
- Send a request for mount points where Contentmarker is 0
e.g rtsp://127.0.0.1/tst/realvideo10.rm ; output: player
shows recording button enabled.
3.Testing for Live Broadcast – License is enabled
- Send a request for push split e.g
Setup: encoder-receiver1-transmitter1-receiver2-player
rtsp://127.0.0.1/broadcast/source-name/broadcast/live.rm
Note: Receiver2 has entry as ContentMarker=1
Output: player shows recording button disabled.
- Send a request for push split e.g
Setup: encoder-receiver1-transmitter1-receiver2-player
rtsp://127.0.0.1/broadcast/source-name/broadcast/live.rm
Note: Receiver2 has entry as ContentMarker=0
Output: player shows recording button enabled.
4.Testing for Live Broadcast – License is disabled
- Send a request for push split e.g
Setup: encoder-receiver1-transmitter1-receiver2-player
rtsp://127.0.0.1/broadcast/source-name/broadcast/live.rm
Note: Receiver2 has entry as ContentMarker=1
Output: player shows recording button enabled.
- Send a request for push split e.g
Setup: encoder-receiver1-transmitter1-receiver2-player
rtsp://127.0.0.1/broadcast/source-name/broadcast/live.rm
Note: Receiver2 has entry as ContentMarker=0
Output: player shows recording button enabled.
Integration Tests:
n/a
Leak Tests:
n/a
Performance Tests:
n/a
Platforms Tested: win32-i386-vc7
Build verified: linux-rhel4-i686, win32-i386-vc7, sunos-5.10-sparc-server
QA Hints
========
None
Thanks and Regards
Vijendra
Index: srcfinder.cpp
===================================================================
RCS file: /cvsroot/server/engine/inputsource/srcfinder.cpp,v
retrieving revision 1.21.2.3.20.3
retrieving revision 1.21.2.3.20.4
diff -u -d -r1.21.2.3.20.3 -r1.21.2.3.20.4
--- srcfinder.cpp 21 Jun 2007 14:14:41 -0000 1.21.2.3.20.3
+++ srcfinder.cpp 28 Jun 2007 14:05:32 -0000 1.21.2.3.20.4
@@ -61,6 +61,8 @@
#include "fileformat_handler.h"
#include "asmstreamfilter.h"
#include "srcfinder.h"
+#include "defslice.h"
+
BasicSourceFinder::BasicSourceFinder(Process* pProc, Player::Session* \
pPlayerSession) : m_ulRefCount(0)
@@ -536,7 +538,6 @@
PluginHandler::FileFormat* pFFHandler =
m_pProc->pc->plugin_handler->m_file_format_handler;
- PluginHandler::FileSystem *pFSHandler = \
m_pProc->pc->plugin_handler->m_file_sys_handler; PluginHandler::Errors pluginResult \
= PluginHandler::PLUGIN_NOT_FOUND; IUnknown* pInstance = NULL;
IHXPlugin* pPlugin = NULL;;
@@ -582,20 +583,33 @@
{
theErr = pPlugin->InitPlugin(m_pProc->pc->server_context);
}
- if (HXR_OK == theErr)
+ if (HXR_OK == theErr && m_pFSManager)
{
IHXValues *pOptionInfo=NULL;
- pFSHandler->GetPluginOptions(m_pURL->full,pOptionInfo);
+ PluginHandler::FileSystem::PluginInfo* pPluginInfo=NULL;
+ m_pFSManager->GetLastPlugin( pPluginInfo );
+ if (pPluginInfo)
+ {
+ pPluginInfo->GetOptions(pOptionInfo);
+ }
ULONG32 ulValue;
- if(pOptionInfo)
+ if (pOptionInfo)
{
- if( HXR_OK == pOptionInfo->GetPropertyULONG32("EnableContentRecording", \
ulValue )) + IHXRegistry *pRegistry=NULL;
+ m_pProc->pc->server_context->QueryInterface(IID_IHXRegistry, \
(void**)&pRegistry); +
+ INT32 iLicenseContentMarker=0;
+ if (!pRegistry || pRegistry->GetIntByName(REGISTRY_CDIST_PUBLISHER, \
iLicenseContentMarker) != HXR_OK) + {
+ iLicenseContentMarker = 0;
+ }
+ if (iLicenseContentMarker && HXR_OK == \
pOptionInfo->GetPropertyULONG32("ContentMarker", ulValue)) {
IHXContentRecordability *pContRecord=NULL;
pPlugin->QueryInterface(IID_IHXContentRecordability, \
(void**)&pContRecord );
- if(pContRecord)
+ if (pContRecord)
{
- pContRecord->SetEnableContentRecording( (BOOL)ulValue );
+ pContRecord->SetContentMarker((UINT8)ulValue);
HX_RELEASE(pContRecord);
}
}
_______________________________________________
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