iphone - Capturing the output of a video file for frame by frame processing -
i trying grab individual frames video file (7 seconds long) , running huge memory issues.
i loading asset avurlasset creating avassetreader , accompanying avassetreadertrackoutput (with pixel format kcvpixelformattype_32bgra). seems work fine except massive memory hit ends getting app shutdown os instantly.
as call [myavassetreader startreading] memory spikes 25 megs , gets worse there.
even if call [myavassetreader startreading] [myavassetreader cancelreading] , [myavassetreader release] 25 megs never released. gets worse once go loop gathering frames:
cmsamplebufferref sample = [output copynextsamplebuffer]; while( sample != null ) { cvimagebufferref imagebuffer = cmsamplebuffergetimagebuffer( sample ); // lock image buffer cvpixelbufferlockbaseaddress( imagebuffer, 0 ); // stuff imagebuffer // unlock image buffer cvpixelbufferunlockbaseaddress( imagebuffer, 0 ); // done sample cfrelease( sample ); sample = [output copynextsamplebuffer]; } any clues how free memory avassetreader using?
Comments
Post a Comment