Em 18-02-2011 08:31, Laurent Pinchart escreveu:
> It's a trade-off between memory and speed. Preallocating still image capture 
> buffers will give you better snapshot performances, at the expense of memory.
> 
> The basic problems we have here is that taking snapshots is slow with the 
> current API if we need to stop capture, free buffers, change the format, 
> allocate new buffers (and perform cache management operations) and restart 
> the 
> stream. To fix this we're considering a way to preallocate still image 
> capture 
> buffers, but I'm open to proposals for other ways to solve the issue :-)

>From the above operations, considering that CMA is used to reserve a
non-shared memory with enough space for the new buffer size/qtd, I don't
think that the most expensive operation would be to realloc the memory.

The logic to stop/start streaming seems to be the most consuming one, as driver
will need to wait for the current I/O operation to complete, and this can
take hundreds of milisseconds (the duration of one frame).

How much time would CMA need to free and re-allocate the buffers for, let's
say, something in the range of 1-10 MB, on a pre-allocated, non shared memory
space?

Cheers
Mauro
--
To unsubscribe from this list: send the line "unsubscribe linux-media" in
the body of a message to majord...@vger.kernel.org
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to