Re: [CsMain] [GSOC 2013] Video recording support
Alin Baciu <[email protected]> Sat, 27 Apr 2013 01:56:28 +0300
| Newsgroups | gmane.comp.graphics.crystalspace.general |
|---|---|
| Message-ID | <[email protected]> |
Sorry, I forgot to link it: http://www.google-melange.com/gsoc/proposal/review/google/gsoc2013/logomorph/15002 Cheers, Alin On 27/4/2013 01:12, Alin Baciu wrote: > Hello again, > > I have submitted my proposal. Any suggestions are welcome. > > Cheers, > Alin > > On 26/4/2013 17:10, Alin Baciu wrote: >> Hello, >> >> My name is Alin Baciu and I'm a 4'th year student at the Technical >> University of Cluj Napoca, Romania. >> Some might remember me from GSOC 2011 where I implemented video >> decode support. >> >> I'm considering the video recording support project for this year's GSOC. >> >> I'm still studying the sound system and figuring out how I could get >> sound data from it, but I have a basic >> flow for how video frames are to be recorded. I'm going to use theora. >> >> I'm thinking of using a render target FIFO queue. Basically, every >> few frames (considering the recording is at 30FPS) >> this will happen: >> 1. The renderer picks a render target from the front of the queue >> 2. If the target is clean (has been processed and turned into a video >> frame) the process goes on >> 2.1. If the target is dirty, that means there are no clean frames in >> the queue and either a new one is created, >> or frames will be skipped until there's one available >> 3. The scene is rendered on the target, which is then rendered on a quad >> 4. The blit buffer is queried using QueryBlitBuffer, target is marked >> as dirty and is moved at the back of the queue. >> Querying the blit buffer is important if we want an async recorder, >> since sharing textures between threads is too complicated. >> 5. A separate thread picks the first dirty target from the queue, >> converts the data from the buffer to YUV and writes it to >> a file. >> 6. The processed target is marked as clean, so the renderer can use it. >> >> What do you think? >> As far as I remember, it should be OK to share the buffer pointer >> between threads. so this should work pretty well. >> >> Cheers, >> Alin >> -- >> \------------------------/ >> Alin Baciu >> /------------------------\ >> \------------------------/ >> AwkwardGames <http://awkwardgames.wordpress.com/> >> /------------------------\ >> @Logomorph >> \------------------------/ >> >> >> ------------------------------------------------------------------------------ >> Try New Relic Now & We'll Send You this Cool Shirt >> New Relic is the only SaaS-based application performance monitoring service >> that delivers powerful full stack analytics. Optimize and monitor your >> browser, app, & servers with just a few lines of code. Try New Relic >> and get this awesome Nerd Life shirt!http://p.sf.net/sfu/newrelic_d2d_apr >> >> >> _______________________________________________ >> Crystal-main mailing list >> [email protected] >> https://lists.sourceforge.net/lists/listinfo/crystal-main >> Unsubscribe:mailto:[email protected]?subject=unsubscribe > > > ------------------------------------------------------------------------------ > Try New Relic Now & We'll Send You this Cool Shirt > New Relic is the only SaaS-based application performance monitoring service > that delivers powerful full stack analytics. Optimize and monitor your > browser, app, & servers with just a few lines of code. Try New Relic > and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr > > > _______________________________________________ > Crystal-main mailing list > [email protected] > https://lists.sourceforge.net/lists/listinfo/crystal-main > Unsubscribe: mailto:[email protected]?subject=unsubscribe ------------------------------------------------------------------------------ Try New Relic Now & We'll Send You this Cool Shirt New Relic is the only SaaS-based application performance monitoring service that delivers powerful full stack analytics. Optimize and monitor your browser, app, & servers with just a few lines of code. Try New Relic and get this awesome Nerd Life shirt! http://p.sf.net/sfu/newrelic_d2d_apr _______________________________________________ Crystal-main mailing list [email protected] https://lists.sourceforge.net/lists/listinfo/crystal-main Unsubscribe: mailto:[email protected]?subject=unsubscribe