[cairo] Recording Surfaces (was Re: virtual surfaces and composition)

Henry (Yu) Song henry.song at samsung.com
Wed Dec 9 14:25:35 PST 2015


HW-accelerated surface (xlib, xcb, GL) is in general faster than image surface.  If your app is single thread, I don’t see any benefit of recording surface if you just want to render to an image surface.

But if you see any benefits in multithreaded rendering, you can achieve parallel rendering with 2 ways

(1) records in one thread and plays back in other thread 
(2) renders to same image surface from two different threads



On 12/9/15, 2:10 PM, "cairo on behalf of Lawrence D'Oliveiro" <cairo-bounces at cairographics.org on behalf of ldo at geek-central.gen.nz> wrote:

>On Wed, 09 Dec 2015 21:41:32 +0000, Henry (Yu) Song wrote:
>
>> On 12/9/15, 1:34 PM, "cairo on behalf of Lawrence D'Oliveiro"
>> <cairo-bounces at cairographics.org on behalf of
>> ldo at geek-central.gen.nz> wrote:
>> 
>>> On Wed, 09 Dec 2015 21:29:02 +0000, Henry (Yu) Song wrote:
>>>  
>>>> On 12/9/15, 1:26 PM, "cairo on behalf of Lawrence D'Oliveiro"
>>>> <cairo-bounces at cairographics.org on behalf of
>>>> ldo at geek-central.gen.nz> wrote:
>>>>  
>>>>> However, when I scaled up the pattern, it looked blurred. Which
>>>>> surprised me, because I thought it would be
>>>>> resolution-independent.  
>>>>
>>>> That is the expected behavior.  It is same as your draw the circle
>>>> to an image surface, and paint the image surface to another with
>>>> scaling.  
>>>
>>>What is the point of using a recording surface over an image surface,
>>>then?
>>
>> (1) A recording surface can be played back on other types of surfaces
>> - xlib, xcb, quartz, gl, you name it
>> 
>> (2) enable parallel rendering - image you recording in one thread and
>> playback on other thread, for example
>> 
>> (3) you can record once, and playback many times if you want
>
>How is any of that better than using an image surface?
>-- 
>cairo mailing list
>cairo at cairographics.org
>http://lists.cairographics.org/mailman/listinfo/cairo


More information about the cairo mailing list