<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD>
<META content="text/html; charset=utf-8" http-equiv=Content-Type>
<STYLE type=text/css>
BLOCKQUOTE{margin-Top: 0px; margin-Bottom: 0px; margin-Left: 2em}
</STYLE>
<!-- flashmail style begin -->
<STYLE type=text/css>
body {border-width:0;margin:0}
img {border:0;margin:0;padding:0}
</STYLE>
<BASE target=_blank><!-- flashmail style end -->
<META name=GENERATOR content="MSHTML 9.00.8112.16599"></HEAD>
<BODY
style="LINE-HEIGHT: 1.5; BORDER-RIGHT-WIDTH: 0px; MARGIN: 12px; FONT-FAMILY: 微软雅黑; BORDER-TOP-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; COLOR: #000000; FONT-SIZE: 10.5pt; BORDER-LEFT-WIDTH: 0px"
marginheight="0" marginwidth="0"><STATIONERY>
<DIV>When I use safari connect to live555 and request treansport stream, at each
time of "getStreamParameters", like the following:</DIV>
<BLOCKQUOTE style="MARGIN-RIGHT: 0px" dir=ltr>
<DIV> <STRONG> ++fClientSessionId;<BR> Port
clientRTPPort(0), clientRTCPPort(0), serverRTPPort(0),
serverRTCPPort(0);<BR> netAddressBits destinationAddress =
0;<BR> u_int8_t destinationTTL =
0;<BR> Boolean isMulticast =
False;<BR> void* streamToken;<BR> <SPAN
style="FONT-SIZE: 16pt">subsession->getStreamParameters(fClientSessionId,
0, clientRTPPort,clientRTCPPort, -1,0,0,
\<BR> destinationAddress,destinationTTL, isMulticast,
serverRTPPort,serverRTCPPort, streamToken);</SPAN></STRONG></DIV></BLOCKQUOTE>
<DIV dir=ltr>it will do the proces:</DIV>
<BLOCKQUOTE style="MARGIN-RIGHT: 0px" dir=ltr>
<DIV dir=ltr><STRONG>FramedSource*
MPEG2TransportFileServerMediaSubsession<BR> ::createNewStreamSource(unsigned
clientSessionId, unsigned& estBitrate) </STRONG></DIV></BLOCKQUOTE>
<DIV>but the privious <STRONG>FramedSource </STRONG>create by
<STRONG>createNewStreamSource </STRONG>have not been destroyed, and I have
played the opened file point:</DIV>
<BLOCKQUOTE style="MARGIN-RIGHT: 0px" dir=ltr>
<DIV style="TEXT-INDENT: 2em"><BR><STRONG>ByteStreamFileSource
*ByteStreamFileSource::createNew(UsageEnvironment& env, char const*
fileName,<BR> unsigned
preferredFrameSize,<BR> unsigned playTimePerFrame)
{<BR> FILE* fid = OpenInputFile(env, fileName);<BR> if (fid ==
NULL) return NULL;</STRONG></DIV>
<DIV><STRONG></STRONG> </DIV>
<DIV style="TEXT-INDENT: 2em"><STRONG> <SPAN
style="FONT-SIZE: 16pt">printf("==========================fid is %p\n",
fid);</SPAN></STRONG></DIV>
<DIV><STRONG></STRONG> </DIV>
<DIV style="TEXT-INDENT: 2em"><STRONG> ByteStreamFileSource*
newSource<BR> = new ByteStreamFileSource(env, fid,
preferredFrameSize, playTimePerFrame);<BR> newSource->fFileSize =
GetFileSize(fileName, fid);</STRONG></DIV>
<DIV><STRONG></STRONG> </DIV>
<DIV style="TEXT-INDENT: 2em"><STRONG> return
newSource;<BR>} </STRONG></DIV></BLOCKQUOTE>
<DIV style="TEXT-INDENT: 2em" dir=ltr>the output result is different with each
other, I think this is a bug, as time go long, it will occupy all the fd, isn't
it?<BR></DIV>
<DIV style="FONT-FAMILY: Verdana; COLOR: #c0c0c0; FONT-SIZE: 10pt"
align=left>2014-12-17</DIV>
<DIV style="FONT-FAMILY: Verdana; COLOR: #c0c0c0; FONT-SIZE: 10pt">
<HR
style="BORDER-BOTTOM: 0px; BORDER-LEFT: 0px; WIDTH: 122px; HEIGHT: 1px; BORDER-TOP: #c0c0c0 1px solid; BORDER-RIGHT: 0px"
id=SignNameHR align=left>
</DIV>
<DIV style="FONT-FAMILY: Verdana; COLOR: #c0c0c0; FONT-SIZE: 10pt"><SPAN
id=_FlashSignName>u8818test</SPAN> </DIV></STATIONERY></BODY></HTML>