Re: mng_display_gotime() and large files

"Gerard Juyn" <gjuyn-qWit8jRvyhVmR6Xm/[email protected]> Sun, 25 Jul 2004 09:01:09 +0200
Newsgroups gmane.comp.graphics.mng.general
Organization Triple-T
Message-ID <410376D5.28358.2725E19F@localhost>
Hi,

> I  want  to  use  libmng for playing own large files (rezolution up to
> 1024x768  and  playtime up to 30-50 min). File structure is much IHDR,
> IDAT, IEND sections.

I would suggest sticking to mpeg or the likes, as that's much more suited for 
this kind of thing.

> Whether  there  is  a  way  to  limit  a memory allocation, but to use
> mng_display_gotime()?

This is just not possible currently. It would require knowledge of the input-
stream, eg. which byte-location corresponds with what "time", and would 
require some callback-function to return to a specific point in the input-stream, 
and also making the assumption that it would be possible to restart at that 
point without restoring the output-canvas to some "known" state.

You might be able to do it all outside libmng by the use of SAVE chunks and 
the accompanying callback, and keep an app-controlled array of the 
necessary info. (may not even need SAVE, if you keep track of IHDR's).

Then wheneveer the user wants to jump to a specific time, just reset your 
input-stream to the right IHDR, and start feeding libmng from that point, making 
sure the last chunk read before doing this is always the IEND.

eg. you don't have to feed everythin into libmng in the order that it's contained 
on disk, as long as it's still a valid MNG stream. Your application and MNG 
streams seem simple enough to warrent this.

Gerard


--
Send the message body "help" to [email protected]