Re: [CsMain] [GSOC 2013] Video recording support

Alin Baciu <[email protected]> Sat, 27 Apr 2013 01:12:06 +0300
Newsgroups gmane.comp.graphics.crystalspace.general
Message-ID <[email protected]>
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