> > On Mar 8, 2014, at 9:17 AM, Trygve Inda <cocoa...@xericdesign.com> wrote: > >>> On 08 Mar 2014, at 04:38, Trygve Inda <cocoa...@xericdesign.com> wrote: >>>> I need to composite/tile about 20 images in a 4x5 grid to one image. >>> >>> What for? Knowing that might help finding a way to speed it up. I.e. why are >>> the images separate, where are they supposed to go in the end? Display on >>> screen? Writing to a standard image file format? Something else? >> >> The images are coming from a video file at periodic intervals and are >> destined for a jpg file consisting of multiple thumbnails stitched together. >> >> The CGImages come from an AVAssetImageGenerator. >> >> Instruments says the time spent in >> >> [imageGenerator copyCGImageAtTime:targetTime actualTime:&actualTime >> error:&error]; >> >> Is small, but the time in CGContextDrawImage is quite large. However, if I >> comment out the CGContextDrawImage line, then the time spent in >> copyCGImageAtTime it rather more significant. >> >> I imagine when I get the CGImageRef from copyCGImageAtTime, I am not >> actually getting any pixel data until it tries to draw in >> CGContextDrawImage. > > I have an app that does some transformations on images and writes them back to > jpegs, and it processes 25 images (1288◊1936 pixels) per second on my 2011 MBP > (2.2 i7), maxing all 8 cores. Almost 50% of the time is spent in > CGContextDrawImage. I played with the code a bit to use CoreImage instead, > and while it performed at roughly the same rate of 25 images per second, most > of the CPU time was now spent reading and encoding the jpegs, and CPU time was > cut in half. In my case, the spinning platter hard disk is likely the > bottleneck, and the process is fast enough either way. Since you are writing > 1 jpeg for every 20 images, using CoreImage will likely give you a noticeable > performance boost. > > Jim Crate > >
So what is the best way to use CoreImage in this case? I get the original large CGImageRef using an AVImageGenerator which grabs a frame from a video file. Thanks, Trygve _______________________________________________ Cocoa-dev mailing list (Cocoa-dev@lists.apple.com) Please do not post admin requests or moderator comments to the list. Contact the moderators at cocoa-dev-admins(at)lists.apple.com Help/Unsubscribe/Update your Subscription: https://lists.apple.com/mailman/options/cocoa-dev/archive%40mail-archive.com This email sent to arch...@mail-archive.com