[prev in list] [next in list] [prev in thread] [next in thread]
List: helix-filesystem-dev
Subject: [Filesystem-dev] CN: [Nokia-private-dev] CR: Enabling HD Streaming
From: <girish.shetty () nokia ! com>
Date: 2011-04-18 17:13:50
Message-ID: 16EDD0D433A1D0498F4A33532517B6B2018E04 () 008-AM1MPN1-015 ! mgdnok ! nokia ! com
[Download RAW message or body]
Thanks Qiang, this is checked in to Cayenns_210, Brizo_420 and Head.
I had missed a change in the original diff
-#define MEM_CACHE_TRIM_THRESHOLD_DENOM 4
+#ifdef SYMBIAN
+#define MEM_CACHE_TRIM_THRESHOLD_DENOM 10
+#else
+#define MEM_CACHE_TRIM_THRESHOLD_DENOM 4
+#endif
Regards
Girish
From: ext Qiang Luo [mailto:qluo@real.com]
Sent: Wednesday, April 13, 2011 7:23 PM
To: Shetty Girish (Nokia-SD/SiliconValley)
Cc: filesystem-dev@helixcommunity.org; protocol-dev@helixcommunity.org; com=
mon-dev@helixcommunity.org; clientapps-dev@helixcommunity.org; nokia-privat=
e-dev@helixcommunity.org; Baheti Shubham (Nokia-SD/SiliconValley)
Subject: Re: [Nokia-private-dev] CR: Enabling HD Streaming through http fil=
esystem
Looks good.
I'm sure other platforms (say, android) can also benefit with this change i=
n http streaming of high bit-rate contents.
Qiang
On 4/13/2011 5:18 PM, girish.shetty@nokia.com<mailto:girish.shetty@nokia.co=
m> wrote:
"Nokia submits this code under the terms of a commercial contribution agree=
ment with RealNetworks, and I am authorized to contribute this code under s=
aid agreement."
Modified by: Shubham.Baheti@nokia.com<mailto:girish.shetty@nokia.com>
Reviewed by:
Date: 04/13/2011
Project: SymbianMmf_wm, Symbian_client_apps
Error Id: NA
Synopsis: Enabling HD Streaming through http filesystem
Overview:
Currently, when we stream HD contents through http, we get continuous buffe=
ring after every 2-3 seconds of data.
This is caused by not prerolling/buffering enough data by the filesystem be=
fore giving the data back to the player.
And also, HTTP Buffer Ahead Amount and HTTP Memory Cache Size defined curre=
ntly is not suffeciant enough for reading and buffering enough data from th=
e 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 I=
P Packet)
And also increased MAX BUFFER before Process Idle to 1 MB compare to earlie=
r 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 co=
ntroller.
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, he=
lix-client-symbian-4
Platforms and profiles functionality verified: armv5
Branch: 210CayS, 420Brizo, HEAD
Diff: <attached>
[Attachment #3 (text/html)]
<html xmlns:v="urn:schemas-microsoft-com:vml" \
xmlns:o="urn:schemas-microsoft-com:office:office" \
xmlns:w="urn:schemas-microsoft-com:office:word" \
xmlns:x="urn:schemas-microsoft-com:office:excel" \
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml" \
xmlns="http://www.w3.org/TR/REC-html40"> <head>
<meta http-equiv="Content-Type" content="text/html; charset=us-ascii">
<meta name="Generator" content="Microsoft Word 12 (filtered medium)">
<style><!--
/* Font Definitions */
@font-face
{font-family:Calibri;
panose-1:2 15 5 2 2 2 4 3 2 4;}
@font-face
{font-family:Tahoma;
panose-1:2 11 6 4 3 5 4 4 2 4;}
/* Style Definitions */
p.MsoNormal, li.MsoNormal, div.MsoNormal
{margin:0in;
margin-bottom:.0001pt;
font-size:11.0pt;
font-family:"Calibri","sans-serif";
color:black;}
a:link, span.MsoHyperlink
{mso-style-priority:99;
color:blue;
text-decoration:underline;}
a:visited, span.MsoHyperlinkFollowed
{mso-style-priority:99;
color:purple;
text-decoration:underline;}
pre
{mso-style-priority:99;
mso-style-link:"HTML Preformatted Char";
margin:0in;
margin-bottom:.0001pt;
font-size:10.0pt;
font-family:"Courier New";
color:black;}
span.HTMLPreformattedChar
{mso-style-name:"HTML Preformatted Char";
mso-style-priority:99;
mso-style-link:"HTML Preformatted";
font-family:"Courier New";}
span.EmailStyle19
{mso-style-type:personal;
font-family:"Calibri","sans-serif";
color:windowtext;}
span.EmailStyle20
{mso-style-type:personal;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.EmailStyle21
{mso-style-type:personal;
font-family:"Calibri","sans-serif";
color:#1F497D;}
span.EmailStyle22
{mso-style-type:personal-reply;
font-family:"Calibri","sans-serif";
color:#1F497D;}
.MsoChpDefault
{mso-style-type:export-only;
font-size:10.0pt;}
@page WordSection1
{size:8.5in 11.0in;
margin:1.0in 1.0in 1.0in 1.0in;}
div.WordSection1
{page:WordSection1;}
--></style><!--[if gte mso 9]><xml>
<o:shapedefaults v:ext="edit" spidmax="1026" />
</xml><![endif]--><!--[if gte mso 9]><xml>
<o:shapelayout v:ext="edit">
<o:idmap v:ext="edit" data="1" />
</o:shapelayout></xml><![endif]-->
</head>
<body bgcolor="white" lang="EN-US" link="blue" vlink="purple">
<div class="WordSection1">
<p class="MsoNormal"><span style="color:#1F497D">Thanks Qiang, this is checked in to \
Cayenns_210, Brizo_420 and Head.<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D"><o:p> </o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D">I had missed a change in the original \
diff<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D"><o:p> </o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D">-#define \
MEM_CACHE_TRIM_THRESHOLD_DENOM \
4<o:p></o:p></span></p> <p class="MsoNormal"><span style="color:#1F497D">+#ifdef \
SYMBIAN<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D">+#define \
MEM_CACHE_TRIM_THRESHOLD_DENOM \
10<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D">+#else<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D">+#define \
MEM_CACHE_TRIM_THRESHOLD_DENOM \
4<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D">+#endif<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D"><o:p> </o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D">Regards<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D">Girish<o:p></o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D"><o:p> </o:p></span></p> <p class="MsoNormal"><span \
style="color:#1F497D"><o:p> </o:p></span></p> <div>
<div style="border:none;border-top:solid #B5C4DF 1.0pt;padding:3.0pt 0in 0in 0in">
<p class="MsoNormal"><b><span \
style="font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext">From:</span></b><span \
style="font-size:10.0pt;font-family:"Tahoma","sans-serif";color:windowtext"> \
ext Qiang Luo [mailto:qluo@real.com] <br>
<b>Sent:</b> Wednesday, April 13, 2011 7:23 PM<br>
<b>To:</b> Shetty Girish (Nokia-SD/SiliconValley)<br>
<b>Cc:</b> filesystem-dev@helixcommunity.org; protocol-dev@helixcommunity.org; \
common-dev@helixcommunity.org; clientapps-dev@helixcommunity.org; \
nokia-private-dev@helixcommunity.org; Baheti Shubham (Nokia-SD/SiliconValley)<br> \
<b>Subject:</b> Re: [Nokia-private-dev] CR: Enabling HD Streaming through http \
filesystem<o:p></o:p></span></p> </div>
</div>
<p class="MsoNormal"><o:p> </o:p></p>
<p class="MsoNormal">Looks good.<br>
<br>
I'm sure other platforms (say, android) can also benefit with this change in http \
streaming of high bit-rate contents.<br> <br>
Qiang<br>
<br>
On 4/13/2011 5:18 PM, <a \
href="mailto:girish.shetty@nokia.com">girish.shetty@nokia.com</a> wrote: \
<o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">"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."</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Modified by: \
<u>Shubham.Baheti<a href="mailto:girish.shetty@nokia.com"><span \
style="color:windowtext">@nokia.com</span></a></u></span><o:p></o:p></p> <p \
class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Reviewed by: \
</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Date: \
04/1</span><span style="font-size:10.0pt;font-family:"Courier \
New";color:#1F497D">3</span><span \
style="font-size:10.0pt;font-family:"Courier \
New"">/2011</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Project: \
SymbianMmf_wm, Symbian_client_apps</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Error Id: \
NA</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Synopsis: Enabling \
HD Streaming through http filesystem</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <pre>Overview: <o:p></o:p></pre>
<pre> <o:p></o:p></pre>
<pre>Currently, when we stream HD contents through http, we get continuous buffering \
after every 2-3 seconds of data.<o:p></o:p></pre> <pre>This is caused by not \
prerolling/buffering enough data by the filesystem before giving the data back to the \
player.<o:p></o:p></pre> <pre>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.<o:p></o:p></pre> <pre> <o:p></o:p></pre>
<pre>There is also a bug in the HTTP parser, for the Key Value pair which comes as \
part of the HTTP response.<o:p></o:p></pre> <pre>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.<o:p></o:p></pre> <pre> <o:p></o:p></pre>
<pre> <o:p></o:p></pre>
<pre>Solution: <o:p></o:p></pre>
<pre> <o:p></o:p></pre>
<pre>Increased TCP read buffer size from 1.5K to 64K (which is the MAX size of IP \
Packet)<o:p></o:p></pre> <pre>And also increased MAX BUFFER before Process Idle to 1 \
MB compare to earlier value of 64 KB<o:p></o:p></pre> <pre> <o:p></o:p></pre>
<pre>All these changes are protected under SYMBIAN flag, so that it won’t break \
the functionality of other platforms.<o:p></o:p></pre> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Also, taken care of a \
possible memory leak in case of error case in base controller.</span><o:p></o:p></p> \
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Files added: \
</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New"">NONE</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <pre>Files modified: <o:p></o:p></pre>
<pre> <o:p></o:p></pre>
<pre>/cvsroot/clientapps/symbiancommon/config/R1_Mobile_4_0_Factory.cfg \
<o:p></o:p></pre> <pre>/cvsroot/clientapps/symbianMmf/common/hxmmfbasectrl.cpp \
<o:p></o:p></pre> <pre>/cvsroot/common/include/hxnet.h<o:p></o:p></pre>
<pre>/cvsroot/filesystem/http/httpfsys.cpp<o:p></o:p></pre>
<pre>/cvsroot/protocol/http/httppars.cpp<o:p></o:p></pre>
<pre> \
\
<o:p></o:p></pre> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Image size and heap use \
impact: Negligible</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Module release testing \
(STIF): </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Test case(s) \
added: No </span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Memory leak check \
performed: NA</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Platforms and profiles \
build verified: helix-client-s60-52-mmf-mdf-dsp, \
helix-client-symbian-4</span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Platforms and profiles \
functionality verified: armv5 </span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Branch: 210CayS, \
420Brizo, HEAD </span><o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier New"">Diff: \
<attached></span><o:p></o:p></p> <p class="MsoNormal"><span \
style="font-size:10.0pt;font-family:"Courier \
New""> </span><o:p></o:p></p> <p class="MsoNormal"> <o:p></o:p></p>
<p class="MsoNormal"><span style="font-size:12.0pt;font-family:"Times New \
Roman","serif""><o:p> </o:p></span></p> </div>
</body>
</html>
_______________________________________________
Filesystem-dev mailing list
Filesystem-dev@helixcommunity.org
http://lists.helixcommunity.org/mailman/listinfo/filesystem-dev
--===============0561642796==--
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic