<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML><HEAD><TITLE>Re: [Live-devel] key frames (I-frames) in the recorded AVI</TITLE>
<META http-equiv=Content-Type content="text/html; charset=iso-8859-1">
<STYLE type=text/css>BLOCKQUOTE {
        PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
DL {
        PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
UL {
        PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
OL {
        PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
LI {
        PADDING-BOTTOM: 0px; PADDING-TOP: 0px
}
</STYLE>

<META content="MSHTML 6.00.6000.17092" name=GENERATOR></HEAD>
<BODY bgColor=#ffffff>
<DIV><FONT face=Arial size=2>Ross,</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Please find the files attached. The new class 
AVIFileIndex is responsible for maintaining AVI index copy in 
memory.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>One thing that should be taken into 
account. The </FONT><FONT face=Arial size=2>memory allocated by 
AVIFileIndex for index grows as video is being received and recorded, 
because index section should be added to the very end of AVI file, just 
before closure. Although size of index data is very small comparing to 
video data, it still could potentionally exhaust all available memory after the 
very long recording (many hours).</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>I decided to not set any checks or limits 
within AVIFileIndex class methods, because anyway AVI 1.0 index will not work 
for the files greater than 2 GB. The checks for the recording time (or better 
for the recorded size) should be done at the end-user side. When needed, 
the old AVIFileSink object can be closed and the new AVIFileSink 
object created to continue recording to another file name. This will 
free up all the memory allocated for index.</FONT></DIV>
<DIV><FONT face=Arial size=2></FONT> </DIV>
<DIV><FONT face=Arial size=2>Kind regards,</FONT></DIV>
<DIV><FONT face=Arial size=2>Dmitriy Petrenko</FONT></DIV>
<BLOCKQUOTE 
style="PADDING-RIGHT: 0px; PADDING-LEFT: 5px; MARGIN-LEFT: 5px; BORDER-LEFT: #000000 2px solid; MARGIN-RIGHT: 0px">
  <DIV style="FONT: 10pt arial">----- Original Message ----- </DIV>
  <DIV 
  style="BACKGROUND: #e4e4e4; FONT: 10pt arial; font-color: black"><B>From:</B> 
  <A title=finlayson@live555.com href="mailto:finlayson@live555.com">Ross 
  Finlayson</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>To:</B> <A title=live-devel@ns.live555.com 
  href="mailto:live-devel@ns.live555.com">LIVE555 Streaming Media - development 
  & use</A> </DIV>
  <DIV style="FONT: 10pt arial"><B>Sent:</B> Wednesday, December 15, 2010 4:04 
  AM</DIV>
  <DIV style="FONT: 10pt arial"><B>Subject:</B> Re: [Live-devel] key frames 
  (I-frames) in the recorded AVI file</DIV>
  <DIV><BR></DIV>
  <BLOCKQUOTE cite="" type="cite"><FONT face=Arial size=-1>I have implemented 
    some functionality related to AVI indecies in AVIFileSink class. It is yet 
    pretty basic. But after all, it feets my needs for the video 
    recording. If you (or somebody else) likes I can share the source code 
    here.</FONT></BLOCKQUOTE>
  <DIV><BR></DIV>
  <DIV>Thanks.  Yes, please send us your new "AVIFileSink.cpp" and 
  "AVIFileSink.hh" classes, and I'll look into including these changes in the 
  next release of the software.</DIV><X-SIGSEP><PRE>-- 
</PRE></X-SIGSEP>
  <DIV><BR>Ross Finlayson<BR>Live Networks, 
Inc.<BR>http://www.live555.com/</DIV>
  <P>
  <HR>

  <P></P>_______________________________________________<BR>live-devel mailing 
  list<BR>live-devel@lists.live555.com<BR>http://lists.live555.com/mailman/listinfo/live-devel<BR></BLOCKQUOTE></BODY></HTML>