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

List:       helix-server-cvs
Subject:    [Server-cvs] protocol/transport/rtp rtp_base.cpp,1.11,1.12
From:       dsingh () helixcommunity ! org
Date:       2007-11-28 10:57:53
Message-ID: 200711281057.lASAvx2A017455 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/server/protocol/transport/rtp
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv26403

Modified Files:
	rtp_base.cpp 
Log Message:
Synopsis
========
This CR includes changes in end-of-Frame marking in packet info and HX_ASM_SWITCH_OFF \
handling for RTP live. 

Branch: HEAD
Suggested Reviewers: Jamie Gordon

Description
===========
Frame end was decided purely on the basis of marker bit in the rtp header. But it \
should be decided depending on the payload type of each of the datatype(H.263,H.264, \
MPEG-4). The SKIMINFO_PKT_FRAMEEND bit was being set into packet info purely on the \
bases of marker bit for all of the datatypes in function \
PacketSkimmer::GetRTPPacketInfo(). All the packet skimmer classes for datatypes \
H.263, H.264 and MPEG-4 are derived from class PacketSkimmer.

Fix1:
The setting of SKIMINFO_PKT_FRAMEEND bit into packet info flag is now removed and \
being handeled in respective drived classes only based on payload types as given in \
respective RTP payload format RFCs. The changes are made in packet skimmer classes of \
H.263 and mpeg4 video only, H.264 was already having that. 

Fix2:
The HX_ASM_SWITCH_OFF bit in ASMFlags was being set unconditionaly.
Now this bit will be set if SKIMINFO_PKT_FRAMEEND bit is set in packet info flag.

After Fix2, the assertion "HX_ASSERT(pPacket->GetASMFlags())" at line 583 in file \
rtp_base.cpp starts failing. The reason is, because previously the HX_ASM_SWITCH_OFF \
bit in ASMFlags was being set unconditinaly, and the value of ASMFlags could never be \
zero, but now this is not the case. So the said assertion is removed. 

Files Affected
==============
server\datatype\common\pktskim\skimbase.cpp
server\datatype\common\pktskim\h263skim.cpp
server\datatype\common\pktskim\mp4skim.cpp
server\broadcast\transport\rtp\recv\qtstream.cpp
server\protocol\transport\rtp\rtp_base.cpp

Testing Performed
=================
Unit Tests:
-None

Integration Tests:
- Verified playing H.263, H.264 and MPEG-4 video streams on rtp live.

Leak Tests:
- None

Performance Tests:
- None

Build verified: win32-i386-vc7.

Platforms Tested: win32-i386-vc7.

QA Hints
========
-None 

Regards
-Dalvinder


Index: rtp_base.cpp
===================================================================
RCS file: /cvsroot/server/protocol/transport/rtp/rtp_base.cpp,v
retrieving revision 1.11
retrieving revision 1.12
diff -u -d -r1.11 -r1.12
--- rtp_base.cpp	13 Nov 2007 21:16:14 -0000	1.11
+++ rtp_base.cpp	28 Nov 2007 10:57:50 -0000	1.12
@@ -598,7 +598,6 @@
     ulLen = pBuffer->GetSize();
 
     HX_ASSERT(pPacket->GetStreamNumber() == m_streamNumber);
-    HX_ASSERT(pPacket->GetASMFlags());
 
     /*
      * RTP packet


_______________________________________________
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