[prev in list] [next in list] [prev in thread] [next in thread] 

List:       helix-server-cvs
Subject:    [Server-cvs] broadcast/app/scalable-mcast pplyfobj.cpp,1.8,1.9
From:       atin () helixcommunity ! org
Date:       2009-10-14 22:23:28
Message-ID: 200910142334.n9ENXXGV022197 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/server/broadcast/app/scalable-mcast
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv17980/server/broadcast/app/scalable-mcast

Modified Files:
	pplyfobj.cpp 
Log Message:
Synopsis
========
Streaming multi-rate RealMedia files via scalable multicast is broken in the
v13.x server. It works on v12.

Branches: SERVER_13_0, SERVER_CURRENT
Reviewed by: jgordon


Description
===========
Adding the StreamGroupCount header to the RealMedia stream description caused
the generated SDP to have descriptions for only the Stream groups and not the
individual streams present. Due to this when scalable multicast is used each
stream (of a multi-rate file) is supposed to be on a seperate port and it
requires that the stream description of each stream be present in the SDP, but
this was not the case, so the connection got terminated with a Geebnral Error
by the client since it thought the SDP file was invalid.

Fix
---
Simple add a "ScalableMulticast" header in the Optional Stream headers from
inside CPurePlaySDPFileObject::CreateSDPFile() (pplyplin) and from inside
SDPMediaDescGenerator::Generate() (hxsdp) whenever the stream group count is
checked, also now check for not having a scalable multicast session.


Files Affected
==============
server/broadcast/app/scalable-mcast/pplyfobj.cpp
protocol/sdp/sdpmdgen.cpp


Testing Performed
=================
Unit Tests:
N/A

Integration Tests:
(1) test with multi-rate rm in scalable and back-channel multicast.
(2) make sure that multi-rate 3gp still works.

Leak Tests:
N/A

Performance Tests:
N/A

Platforms Tested: sunos-5.10-sparc-server
Build verified: sunos-5.10-sparc-server

QA Hints
========
None.



Index: pplyfobj.cpp
===================================================================
RCS file: /cvsroot/server/broadcast/app/scalable-mcast/pplyfobj.cpp,v
retrieving revision 1.8
retrieving revision 1.9
diff -u -d -r1.8 -r1.9
--- pplyfobj.cpp	20 Jul 2005 21:46:35 -0000	1.8
+++ pplyfobj.cpp	14 Oct 2009 22:23:26 -0000	1.9
@@ -1434,6 +1434,7 @@
 	// thing with <version>
 	// <session id> <version> in o= line
 	ppHeaders[1]->SetPropertyULONG32("LastModified", HX_GET_TICKCOUNT());
+	ppHeaders[1]->SetPropertyULONG32("ScalableMulticast", 1);
 
 	// now the file header
 	m_pPump->GetFileHeader(pHeader);


_______________________________________________
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