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

List:       helix-filesystem-cvs
Subject:    [Filesystem-cvs] http httpfsys.cpp,1.88.2.19,1.88.2.20
From:       girish2080 () helixcommunity ! org
Date:       2011-04-18 16:51:02
Message-ID: 201104181650.p3IGoqtF025525 () mailer ! progressive-comp ! com
[Download RAW message or body]

Update of /cvsroot/filesystem/http
In directory cvs01.internal.helixcommunity.org:/tmp/cvs-serv8022

Modified Files:
      Tag: hxclient_2_1_0_cayennes
	httpfsys.cpp 
Log Message:
"Nokia submits this code under the terms of a commercial contribution agreement with \
RealNetworks, and I am authorized to contribute this code under said agreement."  
Modified by:  Shubham.Baheti@nokia.com
 
Reviewed by:  
 
Date:  04/13/2011
 
Project:  SymbianMmf_wm, Symbian_client_apps
 
Error Id:  EpicID<307190: 417-72523 Browser 8.1 for SR1.11>
 
Synopsis:  Enabling HD Streaming through http filesystem
 
Overview:  

Currently, when we stream HD contents through http, we get continuous buffering after \
every 2-3 seconds of data. This is caused by not prerolling/buffering enough data by \
the filesystem before giving the data back to the player. And also, HTTP Buffer Ahead \
Amount and HTTP Memory Cache Size defined currently is not suffeciant enough for \
reading and buffering enough data from the server.

There is also a bug in the HTTP parser, for the Key Value pair which comes as part of \
the HTTP response. When the client select HD content, server redirects with a new URI \
(for the HD content), which contains ‘,’ as part of the URI and current parser uses \
‘,’ as the delimiter for the next Value.


Solution:  

Increased TCP read buffer size from 1.5K to 64K (which is the MAX size of IP Packet)
And also increased MAX BUFFER before Process Idle to 1 MB compare to earlier value of \
64 KB

All these changes are protected under SYMBIAN flag, so that it won’t break the \
functionality of other platforms.

Also, taken care of a possible memory leak in case of error case in base controller.

Files added:  
NONE
 
Files modified:  

/cvsroot/clientapps/symbiancommon/config/R1_Mobile_4_0_Factory.cfg 
/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp 
/cvsroot/common/include/hxnet.h
/cvsroot/filesystem/http/httpfsys.cpp
/cvsroot/protocol/http/httppars.cpp
                           
Image size and heap use impact:  Negligible
 
Module release testing (STIF): 
 
Test case(s) added:  No  
 
Memory leak check performed:  NA
 
Platforms and profiles build verified:  helix-client-s60-52-mmf-mdf-dsp, \
helix-client-symbian-4  
Platforms and profiles functionality verified:  armv5 
 
Branch:  210CayS, 420Brizo, HEAD 

Diff: <attached>




Index: httpfsys.cpp
===================================================================
RCS file: /cvsroot/filesystem/http/httpfsys.cpp,v
retrieving revision 1.88.2.19
retrieving revision 1.88.2.20
diff -u -d -r1.88.2.19 -r1.88.2.20
--- httpfsys.cpp	14 Apr 2011 18:15:19 -0000	1.88.2.19
+++ httpfsys.cpp	18 Apr 2011 16:50:59 -0000	1.88.2.20
@@ -226,15 +226,20 @@
 #define MIN_MEM_CACHE_SIZE	0x00000000
 #endif	// HELIX_FEATURE_HTTP_MEMCACHE
 
-#define MEM_CACHE_TRIM_THRESHOLD_DENOM	    4	    // Denominator indicating fraction \
                of the
-						    // mem cache capacity that needs to be
-						    // present in direct path of data read
-						    // to avoid trimming the memory to make
-						    // room for additional data.
-						    // It also indicates the fraction by which
-						    // the mem-cache will be trimmed when
-						    // more room is needed.
-						    // Must be >= 2  (>= 50% of mem cache capacity).
+// Denominator indicating fraction of the
+// mem cache capacity that needs to be
+// present in direct path of data read
+// to avoid trimming the memory to make
+// room for additional data.
+// It also indicates the fraction by which
+// the mem-cache will be trimmed when
+// more room is needed.
+// Must be >= 2  (>= 50% of mem cache capacity).
+#ifdef SYMBIAN
+#define MEM_CACHE_TRIM_THRESHOLD_DENOM	    10
+#else
+#define MEM_CACHE_TRIM_THRESHOLD_DENOM	    4
+#endif
 						    
 #define DFLT_MEM_CACHE_CONTIG_LENGTH_TRIM_THRESHOLD (DFLT_MEM_CACHE_SIZE / \
MEM_CACHE_TRIM_THRESHOLD_DENOM)  #define DFLT_MEM_CACHE_TRIM_SIZE		    \
(DFLT_MEM_CACHE_SIZE / MEM_CACHE_TRIM_THRESHOLD_DENOM)


_______________________________________________
Filesystem-cvs mailing list
Filesystem-cvs@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/filesystem-cvs


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

Configure | About | News | Add a list | Sponsored by KoreLogic