swift - AVAssetReader - Can not decode MOV -


i trying array of frames video. here code:

        var frames = [uiimage]()          let url    = nsbundle.mainbundle().urlforresource(name, withextension: ext, subdirectory: "assets")!         let asset  = avasset(url: url)         let reader = try avassetreader(asset: asset)         let output = avassetreadervideocompositionoutput(videotracks: asset.trackswithmediatype(avmediatypevideo), videosettings: nil)         output.videocomposition = avvideocomposition(propertiesofasset: asset)         reader.addoutput(output)         reader.startreading()          let framecount = int(asset.duration.seconds*23.973)         let context    = cicontext()          print("asset reader: \(reader.error)")         _ in 0..<framecount{             let buff        = output.copynextsamplebuffer()             if buff == nil{                  continue             }             let pixelbuffer = cmsamplebuffergetimagebuffer(buff!)! cvpixelbuffer             let ciimage     = ciimage(cvpixelbuffer: pixelbuffer)             let cgimgref    = context.createcgimage(ciimage, fromrect: cgrectmake(0, 0, cgfloat(cvpixelbuffergetwidth(pixelbuffer)), cgfloat(cvpixelbuffergetheight(pixelbuffer))))             frames.append(uiimage(cgimage: cgimgref))         } 

when try .mp4 works fine when want use .mov (i need alpha channel) says:

error domain=avfoundationerrordomain code=-11833 "cannot decode" userinfo={nslocalizedfailurereason=the decoder required media cannot found., nsunderlyingerror=0x15e77fb90 {error domain=nsosstatuserrordomain code=-12906 "(null)"}, averrormediatypekey=vide, nslocalizeddescription=cannot decode}) 

i've tried codecs available in premiere pro supports transparency , pixel formats kcvpixelformattype_32rgba, kcvpixelformattype_32bgra, kcvpixelformattype_32arg , kcvpixelformattype_32abgr still same error. suggestion?


Comments

Popular posts from this blog

amazon web services - S3 Pre-signed POST validate file type? -

c# - Check Keyboard Input Winforms -