react-native-skia-webgpu-video 0.1.0-beta.3 → 0.1.0-beta.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +39 -32
- package/android/BUILD_VALIDATION.md +1 -1
- package/android/CMakeLists.txt +3 -2
- package/android/cpp/ExportHintSession.cpp +114 -0
- package/android/cpp/ExportHintSession.h +35 -0
- package/android/cpp/VideoEncoderHostObject.cpp +76 -101
- package/android/cpp/VideoEncoderHostObject.h +14 -9
- package/android/cpp/VideoFrame.cpp +3 -5
- package/android/cpp/cpp-adapter.cpp +7 -4
- package/android/src/main/java/com/azzapp/rnskv/GLFrameExtractor.java +3 -9
- package/android/src/main/java/com/azzapp/rnskv/VideoCompositionDecoder.java +8 -11
- package/android/src/main/java/com/azzapp/rnskv/VideoEncoder.java +68 -28
- package/docs/FRAME_PIXEL_FORMAT.md +1 -1
- package/docs/MIGRATION.md +1 -1
- package/docs/UPSTREAM_NOTES.md +15 -2
- package/lib/module/canvas.js +3 -5
- package/lib/module/canvas.js.map +1 -1
- package/lib/module/exportFrames.js +6 -8
- package/lib/module/exportFrames.js.map +1 -1
- package/lib/module/exportTarget.js +183 -40
- package/lib/module/exportTarget.js.map +1 -1
- package/lib/module/exportVideoComposition.js +53 -12
- package/lib/module/exportVideoComposition.js.map +1 -1
- package/lib/module/frameInterop.js +9 -12
- package/lib/module/frameInterop.js.map +1 -1
- package/lib/module/gpu.js +0 -2
- package/lib/module/gpu.js.map +1 -1
- package/lib/module/gpuDevice.js +12 -0
- package/lib/module/gpuDevice.js.map +1 -1
- package/lib/module/previewLifecycle.js +0 -1
- package/lib/module/previewLifecycle.js.map +1 -1
- package/lib/module/yuvBlit.js +28 -21
- package/lib/module/yuvBlit.js.map +1 -1
- package/lib/typescript/src/canvas.d.ts.map +1 -1
- package/lib/typescript/src/exportFrames.d.ts +3 -2
- package/lib/typescript/src/exportFrames.d.ts.map +1 -1
- package/lib/typescript/src/exportTarget.d.ts +53 -14
- package/lib/typescript/src/exportTarget.d.ts.map +1 -1
- package/lib/typescript/src/exportVideoComposition.d.ts +2 -1
- package/lib/typescript/src/exportVideoComposition.d.ts.map +1 -1
- package/lib/typescript/src/frameInterop.d.ts.map +1 -1
- package/lib/typescript/src/gpu.d.ts.map +1 -1
- package/lib/typescript/src/gpuDevice.d.ts +5 -1
- package/lib/typescript/src/gpuDevice.d.ts.map +1 -1
- package/lib/typescript/src/previewLifecycle.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +10 -5
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/yuvBlit.d.ts +16 -14
- package/lib/typescript/src/yuvBlit.d.ts.map +1 -1
- package/package.json +6 -6
- package/patches/react-native-skia+3.7.4.patch +146 -0
- package/scripts/skia-canvas-patch.json +22 -258
- package/src/canvas.ts +3 -7
- package/src/exportFrames.ts +8 -9
- package/src/exportTarget.ts +217 -56
- package/src/exportVideoComposition.ts +87 -26
- package/src/frameInterop.ts +9 -11
- package/src/gpu.ts +0 -2
- package/src/gpuDevice.ts +26 -1
- package/src/previewLifecycle.ts +0 -1
- package/src/types.ts +10 -5
- package/src/yuvBlit.ts +43 -28
- package/android/cpp/EncoderTargets.cpp +0 -226
- package/android/cpp/EncoderTargets.h +0 -70
- package/patches/react-native-skia+3.7.1.patch +0 -502
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getVideoCanvas","Platform","AlphaType","BlendMode","ColorType","Skia","getVideoGpuDevice","createNativeVideoGpuFrame","nativeVideoTextureUsage","rgbaVideoTextureUsage","frameByteSize","releaseVideoMemory","reserveVideoMemory","blitNv12Frame","blitYuvFrame","releaseYuvImports","yuvFrameOrigin","uploadAndroidRgba","OS","getCache","runtime","globalThis","__rnskwgpuFrames","images","Map","stage","canvas","width","height","format","uploadTexture","uploadReservation","cpuPixels","cpuReservation","cpuBytesPerRow","pendingSources","yuvImports","clearEntry","cache","producer","entry","get","image","dispose","reservation","delete","clearSurfaceView","clearCpuPixels","clearStagingSurface","flush","destroy","drainNativeCopies","Error","drawColor","Color","Clear","clearVideoFrameImages","releaseStagingSurface","length","some","source","needsDrain","owned","nativeSource","release","sourceReleased","frame","shift","keys","releaseVideoFrameImage","producerId","undefined","id","texture","kind","size","imageFromVideoFrame","existing","releasedSources","has","add","copyPending","ownsSurfaceView","sourceDrained","releaseSource","importFailed","bytes","key","rgbaPixels","requiredRgbaBytes","copyRgbaPixels","required","bytesPerRow","Number","isSafeInteger","copyPixelsTo","pixels","Uint8Array","data","byteLength","Data","fromBytes","Image","MakeRasterImage","colorType","RGBA_8888","alphaType","Opaque","device","uploadRgba","extentLimit","limits","maxTextureDimension2D","createTexture","usage","label","error","ArrayBuffer","buffer","Surface","MakeFromGPUTexture","queue","writeTexture","offset","rowsPerImage","depthOrArrayLayers","nativeBuffer","region","rotation","nv12","origin","x","y","pixelFormat","copyExternalImageToTexture","mirrored","flipY","premultipliedAlpha","makeImageSnapshot","set","WeakSet","push","ownVideoFrames","frames","visited","Set","failed","value","producers","Object","values","previous","entries","crop","pending"],"sourceRoot":"../../src","sources":["frameInterop.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["getVideoCanvas","Platform","AlphaType","BlendMode","ColorType","Skia","getVideoGpuDevice","createNativeVideoGpuFrame","nativeVideoTextureUsage","rgbaVideoTextureUsage","frameByteSize","releaseVideoMemory","reserveVideoMemory","blitNv12Frame","blitYuvFrame","releaseYuvImports","yuvFrameRegion","uploadAndroidRgba","OS","getCache","runtime","globalThis","__rnskwgpuFrames","images","Map","stage","canvas","width","height","format","uploadTexture","uploadReservation","cpuPixels","cpuReservation","cpuBytesPerRow","pendingSources","yuvImports","clearEntry","cache","producer","entry","get","image","dispose","reservation","delete","clearSurfaceView","clearCpuPixels","clearStagingSurface","flush","destroy","drainNativeCopies","Error","drawColor","Color","Clear","clearVideoFrameImages","releaseStagingSurface","length","some","source","needsDrain","owned","nativeSource","release","sourceReleased","frame","shift","keys","releaseVideoFrameImage","producerId","undefined","id","texture","kind","size","imageFromVideoFrame","existing","releasedSources","has","add","copyPending","ownsSurfaceView","sourceDrained","releaseSource","importFailed","bytes","key","rgbaPixels","requiredRgbaBytes","copyRgbaPixels","required","bytesPerRow","Number","isSafeInteger","copyPixelsTo","pixels","Uint8Array","data","byteLength","Data","fromBytes","Image","MakeRasterImage","colorType","RGBA_8888","alphaType","Opaque","device","uploadRgba","extentLimit","limits","maxTextureDimension2D","createTexture","usage","label","error","ArrayBuffer","buffer","Surface","MakeFromGPUTexture","queue","writeTexture","offset","rowsPerImage","depthOrArrayLayers","nativeBuffer","region","rotation","nv12","upright","pixelFormat","copyExternalImageToTexture","mirrored","flipY","premultipliedAlpha","makeImageSnapshot","set","WeakSet","push","ownVideoFrames","frames","visited","Set","failed","value","producers","Object","values","previous","entries","crop","pending"],"sourceRoot":"../../src","sources":["frameInterop.ts"],"mappings":";;AAAA,SAASA,cAAc,QAAQ,aAAU;AACzC,SAASC,QAAQ,QAAQ,cAAc;AACvC,SAASC,SAAS,EAAEC,SAAS,EAAEC,SAAS,EAAEC,IAAI,QAAQ,mBAAmB;AAIzE,SACEC,iBAAiB,EACjBC,yBAAyB,EACzBC,uBAAuB,EACvBC,qBAAqB,QAChB,gBAAa;AACpB,SACEC,aAAa,EACbC,kBAAkB,EAClBC,kBAAkB,QACb,aAAU;AACjB,SACEC,aAAa,EACbC,YAAY,EACZC,iBAAiB,EACjBC,cAAc,QACT,cAAW;AAoDlB;AACA;AACA,MAAMC,iBAAiB,GAAGhB,QAAQ,CAACiB,EAAE,KAAK,SAAS;AAEnD,MAAMC,QAAQ,GAAGA,CAAA,KAAa;EAC5B,SAAS;;EACT,MAAMC,OAAO,GAAGC,UAEf;EACD,IAAI,CAACD,OAAO,CAACE,gBAAgB,EAAE;IAC7BF,OAAO,CAACE,gBAAgB,GAAG;MACzBC,MAAM,EAAE,IAAIC,GAAG,CAAC,CAAC;MACjBC,KAAK,EAAE,IAAI;MACXC,MAAM,EAAE,IAAI;MACZC,KAAK,EAAE,CAAC;MACRC,MAAM,EAAE,CAAC;MACTC,MAAM,EAAE,IAAI;MACZC,aAAa,EAAE,IAAI;MACnBC,iBAAiB,EAAE,CAAC;MACpBC,SAAS,EAAE,IAAI;MACfC,cAAc,EAAE,CAAC;MACjBC,cAAc,EAAE,CAAC;MACjBC,cAAc,EAAE,EAAE;MAClBC,UAAU,EAAE,IAAIZ,GAAG,CAAC;IACtB,CAAC;EACH;EACA,OAAOJ,OAAO,CAACE,gBAAgB;AACjC,CAAC;AAED,MAAMe,UAAU,GAAGA,CAACC,KAAY,EAAEC,QAAgB,KAAK;EACrD,SAAS;;EACT,MAAMC,KAAK,GAAGF,KAAK,CAACf,MAAM,CAACkB,GAAG,CAACF,QAAQ,CAAC;EACxC,IAAIC,KAAK,EAAE;IACTA,KAAK,CAACE,KAAK,EAAEC,OAAO,CAAC,CAAC;IACtBH,KAAK,CAACE,KAAK,GAAG,IAAI;IAClB/B,kBAAkB,CAAC6B,KAAK,CAACI,WAAW,CAAC;IACrCN,KAAK,CAACf,MAAM,CAACsB,MAAM,CAACN,QAAQ,CAAC;EAC/B;AACF,CAAC;;AAED;AACA;AACA,MAAMO,gBAAgB,GAAIR,KAAY,IAAK;EACzC,SAAS;;EACTA,KAAK,CAACZ,MAAM,GAAG,IAAI;EACnBY,KAAK,CAACb,KAAK,EAAEkB,OAAO,CAAC,CAAC;EACtBL,KAAK,CAACb,KAAK,GAAG,IAAI;AACpB,CAAC;AAED,MAAMsB,cAAc,GAAIT,KAAY,IAAK;EACvC,SAAS;;EACTA,KAAK,CAACN,SAAS,GAAG,IAAI;EACtBrB,kBAAkB,CAAC2B,KAAK,CAACL,cAAc,CAAC;EACxCK,KAAK,CAACL,cAAc,GAAG,CAAC;EACxBK,KAAK,CAACJ,cAAc,GAAG,CAAC;AAC1B,CAAC;AAED,MAAMc,mBAAmB,GAAIV,KAAY,IAAK;EAC5C,SAAS;;EACTA,KAAK,CAACb,KAAK,EAAEwB,KAAK,CAAC,IAAI,CAAC;EACxBH,gBAAgB,CAACR,KAAK,CAAC;EACvBA,KAAK,CAACR,aAAa,EAAEoB,OAAO,CAAC,CAAC;EAC9BZ,KAAK,CAACR,aAAa,GAAG,IAAI;EAC1BnB,kBAAkB,CAAC2B,KAAK,CAACP,iBAAiB,CAAC;EAC3CO,KAAK,CAACP,iBAAiB,GAAG,CAAC;EAC3BgB,cAAc,CAACT,KAAK,CAAC;EACrBA,KAAK,CAACX,KAAK,GAAGW,KAAK,CAACV,MAAM,GAAG,CAAC;EAC9BU,KAAK,CAACT,MAAM,GAAG,IAAI;AACrB,CAAC;;AAED;AACA;AACA;AACA,MAAMsB,iBAAiB,GAAIb,KAAY,IAAW;EAChD,SAAS;;EACT,IAAI,CAACA,KAAK,CAACb,KAAK,IAAI,CAACa,KAAK,CAACZ,MAAM,EAC/B,MAAM,IAAI0B,KAAK,CAAC,2CAA2C,CAAC;EAC9Dd,KAAK,CAACZ,MAAM,CAAC2B,SAAS,CAAChD,IAAI,CAACiD,KAAK,CAAC,WAAW,CAAC,EAAEnD,SAAS,CAACoD,KAAK,CAAC;EAChEjB,KAAK,CAACb,KAAK,CAACwB,KAAK,CAAC,IAAI,CAAC;AACzB,CAAC;;AAED;AACA;AACA;AACA,OAAO,MAAMO,qBAAqB,GAAGA,CAACC,qBAAqB,GAAG,KAAK,KAAW;EAC5E,SAAS;;EACT,MAAMnB,KAAK,GAAGnB,QAAQ,CAAC,CAAC;EACxB,IAAImB,KAAK,CAACH,cAAc,CAACuB,MAAM,EAAE;IAC/B;IACA,IAAIpB,KAAK,CAACH,cAAc,CAACwB,IAAI,CAAEC,MAAM,IAAKA,MAAM,CAACC,UAAU,CAAC,EAAE;MAC5DV,iBAAiB,CAACb,KAAK,CAAC;MACxB,KAAK,MAAMsB,MAAM,IAAItB,KAAK,CAACH,cAAc,EAAEyB,MAAM,CAACC,UAAU,GAAG,KAAK;IACtE;IACA,OAAOvB,KAAK,CAACH,cAAc,CAACuB,MAAM,EAAE;MAClC,MAAME,MAAM,GAAGtB,KAAK,CAACH,cAAc,CAAC,CAAC,CAAE;MACvCyB,MAAM,CAACE,KAAK,EAAEnB,OAAO,CAAC,CAAC;MACvBiB,MAAM,CAACE,KAAK,GAAG,IAAI;MACnBF,MAAM,CAACG,YAAY,EAAEC,OAAO,CAAC,CAAC;MAC9BJ,MAAM,CAACG,YAAY,GAAG,IAAI;MAC1B,IAAI,CAACH,MAAM,CAACK,cAAc,EAAE;QAC1BL,MAAM,CAACM,KAAK,CAACvB,OAAO,GAAG,CAAC;QACxBiB,MAAM,CAACK,cAAc,GAAG,IAAI;MAC9B;MACAtD,kBAAkB,CAACiD,MAAM,CAAChB,WAAW,CAAC;MACtCN,KAAK,CAACH,cAAc,CAACgC,KAAK,CAAC,CAAC;IAC9B;EACF;EACArB,gBAAgB,CAACR,KAAK,CAAC;EACvB,KAAK,MAAMC,QAAQ,IAAID,KAAK,CAACf,MAAM,CAAC6C,IAAI,CAAC,CAAC,EAAE/B,UAAU,CAACC,KAAK,EAAEC,QAAQ,CAAC;EACvE,IAAIkB,qBAAqB,EAAE;IACzBT,mBAAmB,CAACV,KAAK,CAAC;IAC1B;IACAvB,iBAAiB,CAACuB,KAAK,CAACF,UAAU,CAAC;EACrC;AACF,CAAC;;AAED;AACA,OAAO,MAAMiC,sBAAsB,GAAIH,KAAiB,IAAW;EACjE,SAAS;;EACT;EACA;EACA,IACEA,KAAK,CAACI,UAAU,KAAKC,SAAS,IAC9BL,KAAK,CAACM,EAAE,KAAKD,SAAS,IACrBL,KAAK,CAACO,OAAO,EAA0BC,IAAI,KAAK,YAAY,EAE7D;EACF,MAAMnC,QAAQ,GAAG2B,KAAK,CAACI,UAAU,IAAIJ,KAAK,CAACM,EAAE,IAAI,CAAC,CAAC;EACnD,MAAMlC,KAAK,GAAGnB,QAAQ,CAAC,CAAC;EACxB,MAAMqB,KAAK,GAAGF,KAAK,CAACf,MAAM,CAACkB,GAAG,CAACF,QAAQ,CAAC;EACxC,IAAIC,KAAK,IAAIA,KAAK,CAACgC,EAAE,MAAMN,KAAK,CAACM,EAAE,IAAI,CAAC,CAAC,CAAC,EAAEnC,UAAU,CAACC,KAAK,EAAEC,QAAQ,CAAC;EACvE;EACA;EACA,IAAI,CAACD,KAAK,CAACH,cAAc,CAACuB,MAAM,EAC9B3C,iBAAiB,CAACuB,KAAK,CAACF,UAAU,EAAEG,QAAQ,CAAC;EAC/C,IAAID,KAAK,CAACf,MAAM,CAACoD,IAAI,KAAK,CAAC,EAAEnB,qBAAqB,CAAC,IAAI,CAAC;AAC1D,CAAC;;AAED;AACA;AACA;AACA;AACA,OAAO,MAAMoB,mBAAmB,GAAIV,KAAiB,IAAqB;EACxE,SAAS;;EACT,MAAM5B,KAAK,GAAGnB,QAAQ,CAAC,CAAC;EACxB,MAAMoB,QAAQ,GAAG2B,KAAK,CAACI,UAAU,IAAIJ,KAAK,CAACM,EAAE;EAC7C,IAAIjC,QAAQ,KAAKgC,SAAS,IAAIL,KAAK,CAACM,EAAE,KAAKD,SAAS,EAAE;IACpD,MAAMM,QAAQ,GAAGvC,KAAK,CAACf,MAAM,CAACkB,GAAG,CAACF,QAAQ,CAAC;IAC3C,IAAIsC,QAAQ,EAAEL,EAAE,KAAKN,KAAK,CAACM,EAAE,IAAIK,QAAQ,CAACnC,KAAK,EAAE;MAC/C;MACA;MACA;MACA,IAAI,CAACmC,QAAQ,CAACC,eAAe,CAACC,GAAG,CAACb,KAAK,CAAC,EAAE;QACxCA,KAAK,CAACvB,OAAO,GAAG,CAAC;QACjBkC,QAAQ,CAACC,eAAe,CAACE,GAAG,CAACd,KAAK,CAAC;MACrC;MACA,OAAOW,QAAQ,CAACnC,KAAK;IACvB;EACF;EACA,IAAIE,WAAW,GAAG,CAAC;EACnB,IAAIF,KAAqB,GAAG,IAAI;EAChC,IAAIuC,WAAW,GAAG,KAAK;EACvB,IAAIC,eAAe,GAAG,KAAK;EAC3B,IAAInB,YAAqC,GAAG,IAAI;EAChD,IAAIoB,aAAa,GAAG,KAAK;EACzB,IAAIC,aAAa,GAAG,IAAI;EACxB,IAAIC,YAAY,GAAG,KAAK;EACxB,IAAI;IACF,IAAI/C,KAAK,CAACH,cAAc,CAACuB,MAAM,EAAE;MAC/B;MACA;MACA;MACA,IACEpB,KAAK,CAACH,cAAc,CAACwB,IAAI,CACtBC,MAAM,IACLA,MAAM,CAACM,KAAK,KAAKA,KAAK,IACrBA,KAAK,CAACM,EAAE,KAAKD,SAAS,IACrBX,MAAM,CAACM,KAAK,CAACM,EAAE,KAAKN,KAAK,CAACM,EAAE,IAC5BZ,MAAM,CAACM,KAAK,CAACI,UAAU,KAAKJ,KAAK,CAACI,UACxC,CAAC,EAEDc,aAAa,GAAG,KAAK;MACvB,MAAM,IAAIhC,KAAK,CACb,gFACF,CAAC;IACH;IACA,MAAMqB,OAAO,GAAGP,KAAK,CAACO,OAA0C;IAChE,IAAI,CAACA,OAAO,EAAE,OAAO,IAAI;IACzB,IAAIA,OAAO,CAACC,IAAI,KAAK,YAAY,EAAE,OAAOD,OAAO,CAAC/B,KAAK;IACvD,IAAI+B,OAAO,CAACC,IAAI,KAAK,MAAM,IAAID,OAAO,CAACC,IAAI,KAAK,eAAe,EAAE;MAC/D,MAAM,IAAItB,KAAK,CACb,2DACF,CAAC;IACH;IACA,MAAMkC,KAAK,GAAG5E,aAAa,CAACwD,KAAK,CAACvC,KAAK,EAAEuC,KAAK,CAACtC,MAAM,CAAC;IACtD;IACA;IACA,MAAM2D,GAAG,GAAGhD,QAAQ,IAAI,CAAC,CAAC;IAC1B,IAAI,CAACD,KAAK,CAACf,MAAM,CAACwD,GAAG,CAACQ,GAAG,CAAC,IAAIjD,KAAK,CAACf,MAAM,CAACoD,IAAI,IAAI,EAAE,EAAE;MACrD,MAAM,IAAIvB,KAAK,CACb,0DACF,CAAC;IACH;IACA,IAAIoC,UAA0C,GAAG,IAAI;IACrD,IAAIC,iBAAiB,GAAG,CAAC;IACzB,IAAIC,cAAc,GAAG,KAAK;IAC1B,IAAIjB,OAAO,CAACC,IAAI,KAAK,MAAM,EAAE;MAC3B,MAAMiB,QAAQ,GAAGlB,OAAO,CAACmB,WAAW,GAAG1B,KAAK,CAACtC,MAAM;MACnD,IACE,CAACiE,MAAM,CAACC,aAAa,CAACrB,OAAO,CAACmB,WAAW,CAAC,IAC1C,CAACC,MAAM,CAACC,aAAa,CAACH,QAAQ,CAAC,IAC/BlB,OAAO,CAACmB,WAAW,GAAG1B,KAAK,CAACvC,KAAK,GAAG,CAAC,IACpCV,iBAAiB,KACfwD,OAAO,CAACmB,WAAW,GAAG,UAAU,IAAInB,OAAO,CAACmB,WAAW,GAAG,CAAC,KAAK,CAAC,CAAE,EACtE;QACA,MAAM,IAAIxC,KAAK,CAAC,kCAAkC,CAAC;MACrD;MACAqC,iBAAiB,GAAGE,QAAQ;MAC5B;MACA;MACA;MACAD,cAAc,GACZzE,iBAAiB,IAAI,OAAOwD,OAAO,CAACsB,YAAY,KAAK,UAAU;MACjE,IAAI,CAACL,cAAc,EAAE;QACnB,MAAMM,MAAM,GAAG,IAAIC,UAAU,CAACxB,OAAO,CAACyB,IAAI,CAAC;QAC3C,IAAIF,MAAM,CAACG,UAAU,GAAGR,QAAQ,EAC9B,MAAM,IAAIvC,KAAK,CAAC,kCAAkC,CAAC;QACrD,IAAInC,iBAAiB,EAAE;UACrB;UACAuE,UAAU,GAAG,IAAIS,UAAU,CAACxB,OAAO,CAACyB,IAAI,EAAE,CAAC,EAAEP,QAAQ,CAAC;QACxD,CAAC,MAAM;UACL;UACA/C,WAAW,GAAGhC,kBAAkB,CAC9BoF,MAAM,CAACG,UAAU,EACjB,mBACF,CAAC;UACD,MAAMD,IAAI,GAAG7F,IAAI,CAAC+F,IAAI,CAACC,SAAS,CAACL,MAAM,CAAC;UACxC,IAAI;YACFtD,KAAK,GAAGrC,IAAI,CAACiG,KAAK,CAACC,eAAe,CAChC;cACE5E,KAAK,EAAEuC,KAAK,CAACvC,KAAK;cAClBC,MAAM,EAAEsC,KAAK,CAACtC,MAAM;cACpB4E,SAAS,EAAEpG,SAAS,CAACqG,SAAS;cAC9BC,SAAS,EAAExG,SAAS,CAACyG;YACvB,CAAC,EACDT,IAAI,EACJzB,OAAO,CAACmB,WACV,CAAC;UACH,CAAC,SAAS;YACRM,IAAI,CAACvD,OAAO,CAAC,CAAC;UAChB;QACF;MACF;IACF;IACA,IAAI8B,OAAO,CAACC,IAAI,KAAK,eAAe,IAAIc,UAAU,IAAIE,cAAc,EAAE;MACpE,MAAMkB,MAAM,GAAGtG,iBAAiB,CAAC,CAAC;MAClC,MAAMuG,UAAU,GAAGpC,OAAO,CAACC,IAAI,KAAK,MAAM;MAC1C,IAAImC,UAAU,IAAI5F,iBAAiB,EAAE;QACnC,MAAM6F,WAAW,GAAGF,MAAM,CAACG,MAAM,CAACC,qBAAqB;QACvD,IACE,CAACnB,MAAM,CAACC,aAAa,CAACgB,WAAW,CAAC,IAClCA,WAAW,IAAI,CAAC,IAChB5C,KAAK,CAACvC,KAAK,GAAGmF,WAAW,IACzB5C,KAAK,CAACtC,MAAM,GAAGkF,WAAW,EAE1B,MAAM,IAAI1D,KAAK,CACb,qDACF,CAAC;MACL;MACA,MAAMvB,MAAM,GACVgF,UAAU,IAAI5F,iBAAiB,GAAG,YAAY,GAAG,YAAY;MAC/D2B,WAAW,GAAGhC,kBAAkB,CAAC0E,KAAK,EAAE,mBAAmB,CAAC;MAC5D,IACE,CAAChD,KAAK,CAACR,aAAa,IACpBQ,KAAK,CAACX,KAAK,KAAKuC,KAAK,CAACvC,KAAK,IAC3BW,KAAK,CAACV,MAAM,KAAKsC,KAAK,CAACtC,MAAM,IAC7BU,KAAK,CAACT,MAAM,KAAKA,MAAM,EACvB;QACAmB,mBAAmB,CAACV,KAAK,CAAC;QAC1BA,KAAK,CAACP,iBAAiB,GAAGnB,kBAAkB,CAC1C0E,KAAK,EACLuB,UAAU,GACN,kCAAkC,GAClC,oCACN,CAAC;QACD,IAAI;UACF;UACA;UACAvE,KAAK,CAACR,aAAa,GAAG8E,MAAM,CAACK,aAAa,CAAC;YACzCtC,IAAI,EAAE;cAAEhD,KAAK,EAAEuC,KAAK,CAACvC,KAAK;cAAEC,MAAM,EAAEsC,KAAK,CAACtC;YAAO,CAAC;YAClDC,MAAM;YACN;YACA;YACA;YACAqF,KAAK,EACHL,UAAU,IAAI5F,iBAAiB,GAC3BR,qBAAqB,GACrBD,uBAAuB;YAC7B2G,KAAK,EAAEN,UAAU,GACb,yBAAyB,GACzB;UACN,CAAC,CAAC;UACFvE,KAAK,CAACX,KAAK,GAAGuC,KAAK,CAACvC,KAAK;UACzBW,KAAK,CAACV,MAAM,GAAGsC,KAAK,CAACtC,MAAM;UAC3BU,KAAK,CAACT,MAAM,GAAGA,MAAM;QACvB,CAAC,CAAC,OAAOuF,KAAK,EAAE;UACd,IAAI;YACFpE,mBAAmB,CAACV,KAAK,CAAC;UAC5B,CAAC,CAAC,MAAM;YACN;UAAA;UAEF,MAAM8E,KAAK;QACb;MACF;MACA,IAAI1B,cAAc,IAAIjB,OAAO,CAACC,IAAI,KAAK,MAAM,EAAE;QAC7C,IACE,CAACpC,KAAK,CAACN,SAAS,IAChBM,KAAK,CAACN,SAAS,CAACmE,UAAU,KAAKV,iBAAiB,IAChDnD,KAAK,CAACJ,cAAc,KAAKuC,OAAO,CAACmB,WAAW,EAC5C;UACA7C,cAAc,CAACT,KAAK,CAAC;UACrBA,KAAK,CAACL,cAAc,GAAGrB,kBAAkB,CACvC6E,iBAAiB,EACjB,8BACF,CAAC;UACD,IAAI;YACFnD,KAAK,CAACN,SAAS,GAAG,IAAIiE,UAAU,CAC9B,IAAIoB,WAAW,CAAC5B,iBAAiB,CACnC,CAAC;YACDnD,KAAK,CAACJ,cAAc,GAAGuC,OAAO,CAACmB,WAAW;UAC5C,CAAC,CAAC,OAAOwB,KAAK,EAAE;YACd,IAAI;cACFrE,cAAc,CAACT,KAAK,CAAC;YACvB,CAAC,CAAC,MAAM;cACN;YAAA;YAEF,MAAM8E,KAAK;UACb;QACF;QACA;QACA;QACA;QACA3C,OAAO,CAACsB,YAAY,CAAEzD,KAAK,CAACN,SAAS,CAACsF,MAAM,CAAC;QAC7C9B,UAAU,GAAGlD,KAAK,CAACN,SAAS;MAC9B,CAAC,MAAM;QACL;QACA;QACAe,cAAc,CAACT,KAAK,CAAC;MACvB;MACAQ,gBAAgB,CAACR,KAAK,CAAC;MACvB;MACA;MACA;MACAA,KAAK,CAACb,KAAK,GAAGpB,IAAI,CAACkH,OAAO,CAACC,kBAAkB,CAAClF,KAAK,CAACR,aAAc,CAAC;MACnE,IAAI,CAACQ,KAAK,CAACb,KAAK,EAAE,MAAM,IAAI2B,KAAK,CAAC,kCAAkC,CAAC;MACrE8B,eAAe,GAAG,IAAI;MACtB5C,KAAK,CAACZ,MAAM,GAAG1B,cAAc,CAACsC,KAAK,CAACb,KAAK,CAAC;MAC1C,IAAI+D,UAAU,IAAIf,OAAO,CAACC,IAAI,KAAK,MAAM,EAAE;QACzC;QACA;QACAO,WAAW,GAAG,IAAI;QAClB2B,MAAM,CAACa,KAAK,CAACC,YAAY,CACvB;UAAEjD,OAAO,EAAEnC,KAAK,CAACR;QAAe,CAAC,EACjC0D,UAAU,EACV;UACEmC,MAAM,EAAE,CAAC;UACT/B,WAAW,EAAEnB,OAAO,CAACmB,WAAW;UAChCgC,YAAY,EAAE1D,KAAK,CAACtC;QACtB,CAAC,EACD;UAAED,KAAK,EAAEuC,KAAK,CAACvC,KAAK;UAAEC,MAAM,EAAEsC,KAAK,CAACtC,MAAM;UAAEiG,kBAAkB,EAAE;QAAE,CACpE,CAAC;MACH,CAAC,MAAM,IAAIpD,OAAO,CAACC,IAAI,KAAK,eAAe,EAAE;QAC3CX,YAAY,GAAGxD,yBAAyB,CAACkE,OAAO,CAACqD,YAAY,CAAC;QAC9D,MAAMC,MAAM,GAAGtD,OAAO,CAACsD,MAAM;QAC7B,MAAMC,QAAQ,GAAGvD,OAAO,CAACuD,QAAQ,IAAI,CAAC;QACtC,MAAMC,IAAI,GAAG,CAACF,MAAM,IAAItD,OAAO,CAAC5C,MAAM,KAAK,MAAM;QACjD,IAAIqG,OAAiD,GAAG,IAAI;QAC5D,IAAIH,MAAM,EAAE;UACV;UACA;UACA;UACA;UACA;UACA;UACAG,OAAO,GAAGlH,cAAc,CAAC+G,MAAM,EAAEC,QAAQ,EAAEjE,YAAY,CAAC;QAC1D,CAAC,MAAM,IAAIkE,IAAI,EAAE;UACf,IACElE,YAAY,CAACpC,KAAK,KAAKuC,KAAK,CAACvC,KAAK,IAClCoC,YAAY,CAACnC,MAAM,KAAKsC,KAAK,CAACtC,MAAM,EAEpC,MAAM,IAAIwB,KAAK,CAAC,yCAAyC,CAAC;QAC9D,CAAC,MAAM;QACL;QACA;QACA;QACAW,YAAY,CAACpC,KAAK,KAAKuC,KAAK,CAACvC,KAAK,IAClCoC,YAAY,CAACnC,MAAM,KAAKsC,KAAK,CAACtC,MAAM,IACpCmC,YAAY,CAACoE,WAAW,KAAK,OAAO,EACpC;UACA,MAAM,IAAI/E,KAAK,CACb,wDACF,CAAC;QACH;QACA;QACA;QACA6B,WAAW,GAAG,IAAI;QAClB,IAAI8C,MAAM,EAAE;UACV;UACA;UACAjH,YAAY,CACV8F,MAAM,EACNtE,KAAK,CAACF,UAAU,EAChBmD,GAAG,EACHxB,YAAY,EACZiE,QAAQ,EACRE,OAAO,EACP5F,KAAK,CAACR,aACR,CAAC;QACH,CAAC,MAAM,IAAImG,IAAI,EAAE;UACf;UACApH,aAAa,CAAC+F,MAAM,EAAE7C,YAAY,EAAEzB,KAAK,CAACR,aAAc,CAAC;QAC3D,CAAC,MAAM;UACL;UACA8E,MAAM,CAACa,KAAK,CAACW,0BAA0B,CACrC;YACExE,MAAM,EAAEG,YAAY;YACpBiE,QAAQ,EAAE,CAAC;YACXK,QAAQ,EAAE,KAAK;YACfC,KAAK,EAAE;UACT,CAAC,EACD;YAAE7D,OAAO,EAAEnC,KAAK,CAACR,aAAc;YAAEyG,kBAAkB,EAAE;UAAM,CAAC,EAC5D;YAAE5G,KAAK,EAAEuC,KAAK,CAACvC,KAAK;YAAEC,MAAM,EAAEsC,KAAK,CAACtC;UAAO,CAC7C,CAAC;QACH;MACF;MACA;MACA;MACAc,KAAK,GAAGJ,KAAK,CAACb,KAAK,CAAC+G,iBAAiB,CAAC,CAAC;MACvClG,KAAK,CAACb,KAAK,CAACwB,KAAK,CAAC,IAAI,CAAC;MACvBkC,aAAa,GAAG,IAAI;IACtB;IACA,IAAI,CAACzC,KAAK,EAAE,MAAM,IAAIU,KAAK,CAAC,mCAAmC,CAAC;IAChE;IACA;IACA;IACA,IAAI8B,eAAe,EAAE;MACnBpC,gBAAgB,CAACR,KAAK,CAAC;MACvB4C,eAAe,GAAG,KAAK;IACzB;IACAnB,YAAY,EAAEC,OAAO,CAAC,CAAC;IACvBD,YAAY,GAAG,IAAI;IACnBG,KAAK,CAACvB,OAAO,GAAG,CAAC;IACjByC,aAAa,GAAG,KAAK;IACrB/C,UAAU,CAACC,KAAK,EAAEiD,GAAG,CAAC;IACtBjD,KAAK,CAACf,MAAM,CAACkH,GAAG,CAAClD,GAAG,EAAE;MACpBf,EAAE,EAAEN,KAAK,CAACM,EAAE,IAAI,CAAC,CAAC;MAAE9B,KAAK;MAAEE,WAAW;MACtCkC,eAAe,EAAE,IAAI4D,OAAO,CAAC,CAACxE,KAAK,CAAC;IACtC,CAAC,CAAC;IACF,OAAOxB,KAAK;EACd,CAAC,CAAC,OAAO0E,KAAK,EAAE;IACd/B,YAAY,GAAG,IAAI;IACnB,IAAIJ,WAAW,IAAI,CAACE,aAAa,EAAE;MACjC,IAAI;QACFhC,iBAAiB,CAACb,KAAK,CAAC;MAC1B,CAAC,CAAC,MAAM;QACNA,KAAK,CAACH,cAAc,CAACwG,IAAI,CAAC;UACxB5E,YAAY;UACZD,KAAK,EAAEpB,KAAK;UACZE,WAAW;UACXsB,KAAK;UACLL,UAAU,EAAE,IAAI;UAChBI,cAAc,EAAE;QAClB,CAAC,CAAC;QACFF,YAAY,GAAG,IAAI;QACnBrB,KAAK,GAAG,IAAI;QACZE,WAAW,GAAG,CAAC;QACfwC,aAAa,GAAG,KAAK;MACvB;IACF;IACA,IAAI;MACF;MACA,IAAIA,aAAa,IAAIF,eAAe,EAAE;QACpCpC,gBAAgB,CAACR,KAAK,CAAC;QACvB4C,eAAe,GAAG,KAAK;MACzB;MACAxC,KAAK,EAAEC,OAAO,CAAC,CAAC;MAChBD,KAAK,GAAG,IAAI;MACZ/B,kBAAkB,CAACiC,WAAW,CAAC;IACjC,CAAC,CAAC,MAAM;MACNN,KAAK,CAACH,cAAc,CAACwG,IAAI,CAAC;QACxB5E,YAAY;QACZD,KAAK,EAAEpB,KAAK;QACZE,WAAW;QACXsB,KAAK;QACLL,UAAU,EAAE,KAAK;QACjBI,cAAc,EAAE;MAClB,CAAC,CAAC;MACFF,YAAY,GAAG,IAAI;MACnBqB,aAAa,GAAG,KAAK;IACvB;IACA,MAAMgC,KAAK;EACb,CAAC,SAAS;IACR,IAAIhC,aAAa,EAAE;MACjB,IAAI;QACFrB,YAAY,EAAEC,OAAO,CAAC,CAAC;QACvBD,YAAY,GAAG,IAAI;QACnBG,KAAK,CAACvB,OAAO,GAAG,CAAC;MACnB,CAAC,CAAC,OAAOyE,KAAK,EAAE;QACd9E,KAAK,CAACH,cAAc,CAACwG,IAAI,CAAC;UACxB5E,YAAY;UACZD,KAAK,EAAE,IAAI;UACXlB,WAAW,EAAE,CAAC;UACdsB,KAAK;UACLL,UAAU,EAAE,KAAK;UACjBI,cAAc,EAAE;QAClB,CAAC,CAAC;QACF,IAAI,CAACoB,YAAY,EAAE,MAAM+B,KAAK;MAChC;IACF;EACF;AACF,CAAC;;AAED;AACA;AACA,OAAO,MAAMwB,cAAc,GACzBC,MAAkC,IACH;EAC/B,SAAS;;EACT,MAAM/E,KAAiC,GAAG,CAAC,CAAC;EAC5C,MAAMgF,OAAO,GAAG,IAAIC,GAAG,CAAa,CAAC;EACrC,MAAMC,MAAM,GAAG;IAAEC,KAAK,EAAE,KAAK;IAAE7B,KAAK,EAAE7C;EAAqB,CAAC;EAC5D,IAAI;IACF;IACA;IACA;IACA,MAAM2E,SAAS,GAAG,IAAI1H,GAAG,CAAqB,CAAC;IAC/C,KAAK,MAAM0C,KAAK,IAAIiF,MAAM,CAACC,MAAM,CAACP,MAAM,CAAC,EAAE;MACzC,IAAK3E,KAAK,CAACO,OAAO,EAA0BC,IAAI,KAAK,YAAY,EAC/D;MACF,MAAMnC,QAAQ,GAAG2B,KAAK,CAACI,UAAU,IAAIJ,KAAK,CAACM,EAAE,IAAI,CAAC,CAAC;MACnD,MAAM6E,QAAQ,GAAGH,SAAS,CAACzG,GAAG,CAACF,QAAQ,CAAC;MACxC,IACE8G,QAAQ,IACRA,QAAQ,KAAKnF,KAAK,KACjBA,KAAK,CAACM,EAAE,KAAKD,SAAS,IACrB8E,QAAQ,CAAC7E,EAAE,KAAKD,SAAS,IACzB8E,QAAQ,CAAC7E,EAAE,KAAKN,KAAK,CAACM,EAAE,CAAC,EAC3B;QACA,MAAM,IAAIpB,KAAK,CACb,oGACF,CAAC;MACH;MACA8F,SAAS,CAACT,GAAG,CAAClG,QAAQ,EAAE2B,KAAK,CAAC;IAChC;IACA,KAAK,MAAM,CAACqB,GAAG,EAAErB,KAAK,CAAC,IAAIiF,MAAM,CAACG,OAAO,CAACT,MAAM,CAAC,EAAE;MACjDC,OAAO,CAAC9D,GAAG,CAACd,KAAK,CAAC;MAClB,MAAMxB,KAAK,GAAGkC,mBAAmB,CAACV,KAAK,CAAC;MACxC,IAAIxB,KAAK,EACPoB,KAAK,CAACyB,GAAG,CAAC,GAAG;QACX5D,KAAK,EAAEuC,KAAK,CAACvC,KAAK;QAClBC,MAAM,EAAEsC,KAAK,CAACtC,MAAM;QACpBoG,QAAQ,EAAE9D,KAAK,CAAC8D,QAAQ;QACxBuB,IAAI,EAAErF,KAAK,CAACqF,IAAI;QAChB;QACA;QACA/E,EAAE,EACAN,KAAK,CAACM,EAAE,KACNN,KAAK,CAACO,OAAO,EAA0BC,IAAI,KAAK,YAAY,GAC1DH,SAAS,GACT,CAAC,CAAC,CAAC;QACTD,UAAU,EACRJ,KAAK,CAACI,UAAU,IAChBJ,KAAK,CAACM,EAAE,KACNN,KAAK,CAACO,OAAO,EAA0BC,IAAI,KAAK,YAAY,GAC1DH,SAAS,GACT,CAAC,CAAC,CAAC;QACTE,OAAO,EAAE;UAAEC,IAAI,EAAE,YAAY;UAAEhC;QAAM;MACvC,CAAC;IACL;IACA,OAAOoB,KAAK;EACd,CAAC,CAAC,OAAOsD,KAAK,EAAE;IACd4B,MAAM,CAACC,KAAK,GAAG,IAAI;IACnBD,MAAM,CAAC5B,KAAK,GAAGA,KAAK;IACpB,KAAK,MAAMlD,KAAK,IAAIiF,MAAM,CAACC,MAAM,CAACtF,KAAK,CAAC,EAAE;MACxC,IAAI;QACFO,sBAAsB,CAACH,KAAK,CAAC;MAC/B,CAAC,CAAC,MAAM;QACN;MAAA;IAEJ;IACA,MAAMkD,KAAK;EACb,CAAC,SAAS;IACR;IACA,MAAMoC,OAAO,GAAGrI,QAAQ,CAAC,CAAC,CAACgB,cAAc;IACzC,KAAK,MAAM+B,KAAK,IAAIiF,MAAM,CAACC,MAAM,CAACP,MAAM,CAAC,EAAE;MACzC,IAAIC,OAAO,CAAC/D,GAAG,CAACb,KAAK,CAAC,EAAE;MACxB;MACA,IAAI;QACF,IACE,CAACsF,OAAO,CAAC7F,IAAI,CACVC,MAAM,IACLA,MAAM,CAACM,KAAK,KAAKA,KAAK,IACrBA,KAAK,CAACM,EAAE,KAAKD,SAAS,IACrBX,MAAM,CAACM,KAAK,CAACM,EAAE,KAAKN,KAAK,CAACM,EAAE,IAC5BZ,MAAM,CAACM,KAAK,CAACI,UAAU,KAAKJ,KAAK,CAACI,UACxC,CAAC,EAEDJ,KAAK,CAACvB,OAAO,GAAG,CAAC;MACrB,CAAC,CAAC,OAAOyE,KAAK,EAAE;QACd;QACA;QACAoC,OAAO,CAACb,IAAI,CAAC;UACX7E,KAAK,EAAE,IAAI;UACXlB,WAAW,EAAE,CAAC;UACdsB,KAAK;UACLL,UAAU,EAAE,KAAK;UACjBI,cAAc,EAAE;QAClB,CAAC,CAAC;QACF,IAAI,CAAC+E,MAAM,CAACC,KAAK,EAAED,MAAM,CAAC5B,KAAK,GAAGA,KAAK;QACvC4B,MAAM,CAACC,KAAK,GAAG,IAAI;MACrB;IACF;IACA,IAAID,MAAM,CAACC,KAAK,EAAE,MAAMD,MAAM,CAAC5B,KAAK;EACtC;AACF,CAAC","ignoreList":[]}
|
package/lib/module/gpu.js
CHANGED
|
@@ -101,7 +101,6 @@ export const createVideoGpuScope = options => {
|
|
|
101
101
|
} catch (error) {
|
|
102
102
|
// No texture has been exposed or submitted to any consumer yet.
|
|
103
103
|
try {
|
|
104
|
-
resource.canvas?.dispose();
|
|
105
104
|
resource.canvas = null;
|
|
106
105
|
resource.surface?.dispose();
|
|
107
106
|
resource.surface = null;
|
|
@@ -189,7 +188,6 @@ export const createVideoGpuScope = options => {
|
|
|
189
188
|
try {
|
|
190
189
|
resource.image?.dispose();
|
|
191
190
|
resource.image = null;
|
|
192
|
-
resource.canvas?.dispose();
|
|
193
191
|
resource.canvas = null;
|
|
194
192
|
resource.surface?.dispose();
|
|
195
193
|
resource.surface = null;
|
package/lib/module/gpu.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Skia","GPUTextureUsage","getVideoCanvas","releaseVideoMemory","reserveVideoMemory","getVideoGpuDevice","createVideoGpuScope","options","device","maxResources","maxPendingJobs","Number","isSafeInteger","Error","resources","pending","Set","state","pendingCount","jobGeneration","jobFailure","undefined","hasJobFailure","closing","disposal","ensureCapacity","length","drainGpu","Promise","all","generation","resource","surface","flush","queue","onSubmittedWorkDone","drain","createTexture","opts","format","skia","bytesPerPixel","bytes","width","height","includes","required","RENDER_ATTACHMENT","TEXTURE_BINDING","usage","COPY_SRC","COPY_DST","reservation","label","texture","size","Surface","MakeFromGPUTexture","canvas","image","Image","MakeImageFromGPUTexture","push","error","dispose","destroy","createBuffer","descriptor","buffer","track","start","job","resolve","tracked","then","delete","add","failure","hasFailure","i","splice"],"sourceRoot":"../../src","sources":["gpu.ts"],"mappings":"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
|
|
1
|
+
{"version":3,"names":["Skia","GPUTextureUsage","getVideoCanvas","releaseVideoMemory","reserveVideoMemory","getVideoGpuDevice","createVideoGpuScope","options","device","maxResources","maxPendingJobs","Number","isSafeInteger","Error","resources","pending","Set","state","pendingCount","jobGeneration","jobFailure","undefined","hasJobFailure","closing","disposal","ensureCapacity","length","drainGpu","Promise","all","generation","resource","surface","flush","queue","onSubmittedWorkDone","drain","createTexture","opts","format","skia","bytesPerPixel","bytes","width","height","includes","required","RENDER_ATTACHMENT","TEXTURE_BINDING","usage","COPY_SRC","COPY_DST","reservation","label","texture","size","Surface","MakeFromGPUTexture","canvas","image","Image","MakeImageFromGPUTexture","push","error","dispose","destroy","createBuffer","descriptor","buffer","track","start","job","resolve","tracked","then","delete","add","failure","hasFailure","i","splice"],"sourceRoot":"../../src","sources":["gpu.ts"],"mappings":"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","ignoreList":[]}
|
package/lib/module/gpuDevice.js
CHANGED
|
@@ -39,8 +39,20 @@ export const createNativeVideoGpuFrame = pointer => {
|
|
|
39
39
|
if (!nativeWebGPU) throw new Error("React Native WebGPU is missing from the native app");
|
|
40
40
|
return nativeWebGPU.createVideoFrameFromNativeBuffer(pointer);
|
|
41
41
|
};
|
|
42
|
+
|
|
43
|
+
/** Android: a canvas context presenting to a native window that is not a
|
|
44
|
+
* view, such as an encoder's input Surface. */
|
|
45
|
+
export const createNativeWindowGpuContext = (window, width, height) => {
|
|
46
|
+
"worklet";
|
|
47
|
+
|
|
48
|
+
if (typeof nativeWebGPU?.MakeWebGPUCanvasContextFromNativeWindow !== "function") throw new Error("React Native WebGPU cannot present to a native window; 0.19.0 or later is required");
|
|
49
|
+
return nativeWebGPU.MakeWebGPUCanvasContextFromNativeWindow(window, width, height);
|
|
50
|
+
};
|
|
42
51
|
export const nativeVideoTextureUsage = GPUTextureUsage.RENDER_ATTACHMENT | GPUTextureUsage.TEXTURE_BINDING | GPUTextureUsage.COPY_SRC;
|
|
43
52
|
|
|
53
|
+
// An encoder's input window only receives copies of the frames Skia drew.
|
|
54
|
+
export const encoderWindowTextureUsage = GPUTextureUsage.RENDER_ATTACHMENT | GPUTextureUsage.COPY_DST;
|
|
55
|
+
|
|
44
56
|
// CPU RGBA uploads additionally need COPY_DST. Keep the native-buffer blit's
|
|
45
57
|
// descriptor unchanged: that path renders into its destination attachment.
|
|
46
58
|
export const rgbaVideoTextureUsage = nativeVideoTextureUsage | GPUTextureUsage.COPY_DST;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["Platform","Skia","GPUBufferUsage","GPUShaderStage","GPUTextureUsage","importDevice","installWebGPU","RNSkiaVideoModule","sharedDevice","getNativeDevice","nativeWebGPU","globalThis","RNWebGPU","OS","configureNativeBufferInterop","features","supported","Boolean","createVideoFrameFromNativeBuffer","has","error","Error","message","includes","getVideoGpuDevice","createNativeVideoGpuFrame","pointer","nativeVideoTextureUsage","RENDER_ATTACHMENT","TEXTURE_BINDING","COPY_SRC","
|
|
1
|
+
{"version":3,"names":["Platform","Skia","GPUBufferUsage","GPUShaderStage","GPUTextureUsage","importDevice","installWebGPU","RNSkiaVideoModule","sharedDevice","getNativeDevice","nativeWebGPU","globalThis","RNWebGPU","OS","configureNativeBufferInterop","features","supported","Boolean","createVideoFrameFromNativeBuffer","has","error","Error","message","includes","getVideoGpuDevice","createNativeVideoGpuFrame","pointer","createNativeWindowGpuContext","window","width","height","MakeWebGPUCanvasContextFromNativeWindow","nativeVideoTextureUsage","RENDER_ATTACHMENT","TEXTURE_BINDING","COPY_SRC","encoderWindowTextureUsage","COPY_DST","rgbaVideoTextureUsage","videoShaderStages","vertex","VERTEX","fragment","FRAGMENT","videoUniformBufferUsage","UNIFORM"],"sourceRoot":"../../src","sources":["gpuDevice.ts"],"mappings":";;AAAA;AACA,SAASA,QAAQ,QAAQ,cAAc;AACvC,SAASC,IAAI,QAAQ,mBAAmB;AACxC,SACEC,cAAc,EACdC,cAAc,EACdC,eAAe,EACfC,YAAY,EACZC,aAAa,QACR,qBAAqB;AAE5B,OAAOC,iBAAiB,MAAM,wBAAqB;;AAEnD;AACA;AACA;AACA;AACA,MAAMC,YAAY,GAAGH,YAAY,CAACJ,IAAI,CAACQ,eAAe,CAAC,CAAC,CAAC;AACzD,MAAMC,YAAY,GAAGC,UAAU,CAACC,QAAQ;;AAExC;AACA;AACA;AACA;AACA,IACEZ,QAAQ,CAACa,EAAE,KAAK,SAAS,IACzBN,iBAAiB,CAACO,4BAA4B,EAC9C;EACA,MAAMC,QAAQ,GAAGP,YAAY,CAACO,QAA2C;EACzE,MAAMC,SAAS,GAAGC,OAAO,CACvB,OAAOP,YAAY,EAAEQ,gCAAgC,KAAK,UAAU,IACpE,OAAOH,QAAQ,EAAEI,GAAG,KAAK,UAAU,IACnCJ,QAAQ,CAACI,GAAG,CAAC,wCAAwC,CAAC,IACtDJ,QAAQ,CAACI,GAAG,CAAC,sBAAsB,CACrC,CAAC;EACD,IAAI;IACFZ,iBAAiB,CAACO,4BAA4B,CAACE,SAAS,CAAC;EAC3D,CAAC,CAAC,OAAOI,KAAK,EAAE;IACd,IACE,CAACJ,SAAS,IACV,EAAEI,KAAK,YAAYC,KAAK,CAAC,IACzB,CAACD,KAAK,CAACE,OAAO,CAACC,QAAQ,CAAC,4CAA4C,CAAC,EAErE,MAAMH,KAAK;IACbb,iBAAiB,CAACO,4BAA4B,CAAC,KAAK,CAAC;EACvD;AACF;AAEA,OAAO,MAAMU,iBAAiB,GAAGA,CAAA,KAAiB;EAChD,SAAS;;EACTlB,aAAa,CAAC,CAAC;EACf,OAAOE,YAAY;AACrB,CAAC;AAED,OAAO,MAAMiB,yBAAyB,GACpCC,OAAe,IACM;EACrB,SAAS;;EACT,IAAI,CAAChB,YAAY,EACf,MAAM,IAAIW,KAAK,CAAC,oDAAoD,CAAC;EACvE,OAAOX,YAAY,CAACQ,gCAAgC,CAACQ,OAAO,CAAC;AAC/D,CAAC;;AAED;AACA;AACA,OAAO,MAAMC,4BAA4B,GAAGA,CAC1CC,MAAc,EACdC,KAAa,EACbC,MAAc,KACM;EACpB,SAAS;;EACT,IACE,OAAOpB,YAAY,EAAEqB,uCAAuC,KAAK,UAAU,EAE3E,MAAM,IAAIV,KAAK,CACb,oFACF,CAAC;EACH,OAAOX,YAAY,CAACqB,uCAAuC,CACzDH,MAAM,EACNC,KAAK,EACLC,MACF,CAAC;AACH,CAAC;AAED,OAAO,MAAME,uBAAuB,GAClC5B,eAAe,CAAC6B,iBAAiB,GACjC7B,eAAe,CAAC8B,eAAe,GAC/B9B,eAAe,CAAC+B,QAAQ;;AAE1B;AACA,OAAO,MAAMC,yBAAyB,GACpChC,eAAe,CAAC6B,iBAAiB,GAAG7B,eAAe,CAACiC,QAAQ;;AAE9D;AACA;AACA,OAAO,MAAMC,qBAAqB,GAChCN,uBAAuB,GAAG5B,eAAe,CAACiC,QAAQ;;AAEpD;AACA,OAAO,MAAME,iBAAiB,GAAG;EAC/BC,MAAM,EAAErC,cAAc,CAACsC,MAAM;EAC7BC,QAAQ,EAAEvC,cAAc,CAACwC;AAC3B,CAAC;AACD,OAAO,MAAMC,uBAAuB,GAClC1C,cAAc,CAAC2C,OAAO,GAAG3C,cAAc,CAACmC,QAAQ","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["releaseVideoFrameImage","releaseVideoMemory","disposePreviewResources","resources","failure","failed","error","undefined","surface","flush","afterDraw","images","length","dispose","shift","frames","frame","canvas","reservation","native","runtime","globalThis","__rnskwgpuPreviewQuarantine","push"],"sourceRoot":"../../src","sources":["previewLifecycle.ts"],"mappings":";;AACA,SAASA,sBAAsB,QAAQ,mBAAgB;AACvD,SAASC,kBAAkB,QAAQ,aAAU;AAa7C;AACA;AACA;AACA,OAAO,MAAMC,uBAAuB,GAAIC,SAA2B,IAAK;EACtE,SAAS;;EACT,MAAMC,OAAO,GAAG;IAAEC,MAAM,EAAE,KAAK;IAAEC,KAAK,EAAEC;EAAqB,CAAC;EAC9D,IAAI;IACFJ,SAAS,CAACK,OAAO,EAAEC,KAAK,CAAC,IAAI,CAAC;IAC9BN,SAAS,CAACO,SAAS,GAAG,CAAC;IACvBP,SAAS,CAACO,SAAS,GAAG,IAAI;IAC1B,OAAOP,SAAS,CAACQ,MAAM,EAAEC,MAAM,EAAE;MAC/BT,SAAS,CAACQ,MAAM,CAAC,CAAC,CAAC,EAAEE,OAAO,CAAC,CAAC;MAC9BV,SAAS,CAACQ,MAAM,CAACG,KAAK,CAAC,CAAC;IAC1B;IACA,OAAOX,SAAS,CAACY,MAAM,EAAEH,MAAM,EAAE;MAC/B,MAAMI,KAAK,GAAGb,SAAS,CAACY,MAAM,CAAC,CAAC,CAAE;MAClCf,sBAAsB,CAACgB,KAAK,CAAC;MAC7BA,KAAK,CAACH,OAAO,GAAG,CAAC;MACjBV,SAAS,CAACY,MAAM,CAACD,KAAK,CAAC,CAAC;IAC1B;IACAX,SAAS,CAACc,MAAM,
|
|
1
|
+
{"version":3,"names":["releaseVideoFrameImage","releaseVideoMemory","disposePreviewResources","resources","failure","failed","error","undefined","surface","flush","afterDraw","images","length","dispose","shift","frames","frame","canvas","reservation","native","runtime","globalThis","__rnskwgpuPreviewQuarantine","push"],"sourceRoot":"../../src","sources":["previewLifecycle.ts"],"mappings":";;AACA,SAASA,sBAAsB,QAAQ,mBAAgB;AACvD,SAASC,kBAAkB,QAAQ,aAAU;AAa7C;AACA;AACA;AACA,OAAO,MAAMC,uBAAuB,GAAIC,SAA2B,IAAK;EACtE,SAAS;;EACT,MAAMC,OAAO,GAAG;IAAEC,MAAM,EAAE,KAAK;IAAEC,KAAK,EAAEC;EAAqB,CAAC;EAC9D,IAAI;IACFJ,SAAS,CAACK,OAAO,EAAEC,KAAK,CAAC,IAAI,CAAC;IAC9BN,SAAS,CAACO,SAAS,GAAG,CAAC;IACvBP,SAAS,CAACO,SAAS,GAAG,IAAI;IAC1B,OAAOP,SAAS,CAACQ,MAAM,EAAEC,MAAM,EAAE;MAC/BT,SAAS,CAACQ,MAAM,CAAC,CAAC,CAAC,EAAEE,OAAO,CAAC,CAAC;MAC9BV,SAAS,CAACQ,MAAM,CAACG,KAAK,CAAC,CAAC;IAC1B;IACA,OAAOX,SAAS,CAACY,MAAM,EAAEH,MAAM,EAAE;MAC/B,MAAMI,KAAK,GAAGb,SAAS,CAACY,MAAM,CAAC,CAAC,CAAE;MAClCf,sBAAsB,CAACgB,KAAK,CAAC;MAC7BA,KAAK,CAACH,OAAO,GAAG,CAAC;MACjBV,SAAS,CAACY,MAAM,CAACD,KAAK,CAAC,CAAC;IAC1B;IACAX,SAAS,CAACc,MAAM,GAAG,IAAI;IACvBd,SAAS,CAACK,OAAO,EAAEK,OAAO,CAAC,CAAC;IAC5BV,SAAS,CAACK,OAAO,GAAG,IAAI;IACxBP,kBAAkB,CAACE,SAAS,CAACe,WAAW,IAAI,CAAC,CAAC;IAC9Cf,SAAS,CAACe,WAAW,GAAG,CAAC;EAC3B,CAAC,CAAC,OAAOZ,KAAK,EAAE;IACdF,OAAO,CAACC,MAAM,GAAG,IAAI;IACrBD,OAAO,CAACE,KAAK,GAAGA,KAAK;EACvB;EACA,IAAI;IACFH,SAAS,CAACgB,MAAM,EAAEN,OAAO,CAAC,CAAC;IAC3BV,SAAS,CAACgB,MAAM,GAAG,IAAI;EACzB,CAAC,CAAC,OAAOb,KAAK,EAAE;IACd,IAAI,CAACF,OAAO,CAACC,MAAM,EAAED,OAAO,CAACE,KAAK,GAAGA,KAAK;IAC1CF,OAAO,CAACC,MAAM,GAAG,IAAI;EACvB;EACA,IAAID,OAAO,CAACC,MAAM,EAAE;IAClB,MAAMe,OAAO,GAAGC,UAEf;IACD,CAACD,OAAO,CAACE,2BAA2B,KAAK,EAAE,EAAEC,IAAI,CAACpB,SAAS,CAAC;EAC9D;EACA,OAAOC,OAAO;AAChB,CAAC","ignoreList":[]}
|
package/lib/module/yuvBlit.js
CHANGED
|
@@ -45,36 +45,42 @@ const sourceColorSpace = {
|
|
|
45
45
|
transfer: "srgb"
|
|
46
46
|
};
|
|
47
47
|
|
|
48
|
-
/**
|
|
49
|
-
*
|
|
50
|
-
*
|
|
51
|
-
*
|
|
52
|
-
export const
|
|
48
|
+
/** A decoder buffer's crop rectangle once the buffer is turned clockwise for
|
|
49
|
+
* display: the blit samples that upright region, and draws it at the size of
|
|
50
|
+
* its target, which a capped or explicit frame size makes smaller. Throws
|
|
51
|
+
* unless the rectangle lies in the buffer. */
|
|
52
|
+
export const yuvFrameRegion = (region, rotation, buffer) => {
|
|
53
53
|
"worklet";
|
|
54
54
|
|
|
55
55
|
const turned = rotation === 90 || rotation === 270;
|
|
56
|
-
if (rotation !== 0 && !turned && rotation !== 180 || region.x < 0 || region.y < 0 || region.
|
|
56
|
+
if (rotation !== 0 && !turned && rotation !== 180 || region.x < 0 || region.y < 0 || region.width <= 0 || region.height <= 0 || region.x + region.width > buffer.width || region.y + region.height > buffer.height) {
|
|
57
57
|
throw new Error("Native video buffer region or YUV layout mismatch");
|
|
58
58
|
}
|
|
59
|
-
const
|
|
59
|
+
const width = turned ? region.height : region.width;
|
|
60
|
+
const height = turned ? region.width : region.height;
|
|
61
|
+
if (rotation === 90) return {
|
|
62
|
+
x: buffer.height - region.y - region.height,
|
|
63
|
+
y: region.x,
|
|
60
64
|
width,
|
|
61
65
|
height
|
|
62
|
-
} = buffer;
|
|
63
|
-
if (rotation === 90) return {
|
|
64
|
-
x: height - region.y - region.height,
|
|
65
|
-
y: region.x
|
|
66
66
|
};
|
|
67
67
|
if (rotation === 180) return {
|
|
68
|
-
x: width - region.x - region.width,
|
|
69
|
-
y: height - region.y - region.height
|
|
68
|
+
x: buffer.width - region.x - region.width,
|
|
69
|
+
y: buffer.height - region.y - region.height,
|
|
70
|
+
width,
|
|
71
|
+
height
|
|
70
72
|
};
|
|
71
73
|
if (rotation === 270) return {
|
|
72
74
|
x: region.y,
|
|
73
|
-
y: width - region.x - region.width
|
|
75
|
+
y: buffer.width - region.x - region.width,
|
|
76
|
+
width,
|
|
77
|
+
height
|
|
74
78
|
};
|
|
75
79
|
return {
|
|
76
80
|
x: region.x,
|
|
77
|
-
y: region.y
|
|
81
|
+
y: region.y,
|
|
82
|
+
width,
|
|
83
|
+
height
|
|
78
84
|
};
|
|
79
85
|
};
|
|
80
86
|
const getYuvBlit = device => {
|
|
@@ -227,12 +233,13 @@ const importYuvBuffer = (device, blit, handle, rotation) => {
|
|
|
227
233
|
};
|
|
228
234
|
|
|
229
235
|
/**
|
|
230
|
-
* Draws the upright `
|
|
231
|
-
*
|
|
232
|
-
*
|
|
233
|
-
* frame's lease or `source`, as
|
|
236
|
+
* Draws the upright `region` of a decoder buffer (see yuvFrameRegion) into
|
|
237
|
+
* the whole of `target`, converting YUV to RGB and scaling it to the target's
|
|
238
|
+
* size; the buffer is imported on its first frame. Submits the draw: the
|
|
239
|
+
* caller waits for it before releasing the frame's lease or `source`, as
|
|
240
|
+
* after copyExternalImageToTexture.
|
|
234
241
|
*/
|
|
235
|
-
export const blitYuvFrame = (device, imports, producer, source, rotation,
|
|
242
|
+
export const blitYuvFrame = (device, imports, producer, source, rotation, region, target) => {
|
|
236
243
|
"worklet";
|
|
237
244
|
|
|
238
245
|
const blit = getYuvBlit(device);
|
|
@@ -261,7 +268,7 @@ export const blitYuvFrame = (device, imports, producer, source, rotation, origin
|
|
|
261
268
|
const turned = rotation === 90 || rotation === 270;
|
|
262
269
|
const frameWidth = turned ? source.height : source.width;
|
|
263
270
|
const frameHeight = turned ? source.width : source.height;
|
|
264
|
-
const mapping = [width / frameWidth, height / frameHeight,
|
|
271
|
+
const mapping = [region.width / frameWidth, region.height / frameHeight, region.x / frameWidth, region.y / frameHeight];
|
|
265
272
|
if (mapping.some((value, i) => value !== entry.mapping[i])) {
|
|
266
273
|
device.queue.writeBuffer(entry.uniforms, 0, new Float32Array(mapping));
|
|
267
274
|
entry.mapping = mapping;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["createNativeVideoGpuFrame","videoShaderStages","videoUniformBufferUsage","maxImportsPerProducer","shader","sourceColorSpace","primaries","transfer","yuvFrameOrigin","region","rotation","buffer","frame","turned","x","y","width","height","Error","getYuvBlit","device","runtime","globalThis","__rnskwgpuYuvBlit","layout","createBindGroupLayout","label","entries","binding","visibility","fragment","externalTexture","sampler","type","vertex","pipelineLayout","createPipelineLayout","bindGroupLayouts","createSampler","magFilter","minFilter","module","createShaderModule","code","pipelines","Map","getPipeline","blit","format","pipeline","get","createRenderPipeline","entryPoint","targets","primitive","topology","set","releaseYuvImport","entry","wrapper","destroy","uniforms","source","release","releaseYuvImports","imports","producer","key","undefined","length","shift","delete","importYuvBuffer","handle","createNativeBufferExternalTexture","mirrored","createBuffer","size","usage","bindGroup","createBindGroup","resource","mapping","error","blitYuvFrame","origin","target","index","findIndex","push","splice","frameWidth","frameHeight","some","value","i","queue","writeBuffer","Float32Array","beginAccess","encoder","createCommandEncoder","pass","beginRenderPass","colorAttachments","view","createView","loadOp","clearValue","r","g","b","a","storeOp","setPipeline","setBindGroup","draw","end","submit","finish","endAccess","fence","blitNv12Frame","wholeFrame","external","importExternalTexture"],"sourceRoot":"../../src","sources":["yuvBlit.ts"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["createNativeVideoGpuFrame","videoShaderStages","videoUniformBufferUsage","maxImportsPerProducer","shader","sourceColorSpace","primaries","transfer","yuvFrameRegion","region","rotation","buffer","turned","x","y","width","height","Error","getYuvBlit","device","runtime","globalThis","__rnskwgpuYuvBlit","layout","createBindGroupLayout","label","entries","binding","visibility","fragment","externalTexture","sampler","type","vertex","pipelineLayout","createPipelineLayout","bindGroupLayouts","createSampler","magFilter","minFilter","module","createShaderModule","code","pipelines","Map","getPipeline","blit","format","pipeline","get","createRenderPipeline","entryPoint","targets","primitive","topology","set","releaseYuvImport","entry","wrapper","destroy","uniforms","source","release","releaseYuvImports","imports","producer","key","undefined","length","shift","delete","importYuvBuffer","handle","createNativeBufferExternalTexture","mirrored","createBuffer","size","usage","bindGroup","createBindGroup","resource","mapping","error","blitYuvFrame","target","index","findIndex","push","splice","frameWidth","frameHeight","some","value","i","queue","writeBuffer","Float32Array","beginAccess","encoder","createCommandEncoder","pass","beginRenderPass","colorAttachments","view","createView","loadOp","clearValue","r","g","b","a","storeOp","setPipeline","setBindGroup","draw","end","submit","finish","endAccess","fence","blitNv12Frame","wholeFrame","external","importExternalTexture"],"sourceRoot":"../../src","sources":["yuvBlit.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../../../src/canvas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE7D,sFAAsF;AACtF,eAAO,MAAM,cAAc,GAAI,SAAS,SAAS,KAAG,
|
|
1
|
+
{"version":3,"file":"canvas.d.ts","sourceRoot":"","sources":["../../../src/canvas.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAE7D,sFAAsF;AACtF,eAAO,MAAM,cAAc,GAAI,SAAS,SAAS,KAAG,QAcnD,CAAC"}
|
|
@@ -50,8 +50,9 @@ export declare const importExportFrame: (frame: VideoFrame, imports?: ExportFram
|
|
|
50
50
|
export declare const releaseExportFrames: (imports: ExportFrameImports) => void;
|
|
51
51
|
/** The export counterpart of ownVideoFrames on iOS: decoded frames are drawn
|
|
52
52
|
* in place, and a producer's previous frame is released once its next one is
|
|
53
|
-
* imported, since
|
|
54
|
-
* frames, or every frame after a first failed
|
|
53
|
+
* imported, since the export waits for the GPU to complete a frame before it
|
|
54
|
+
* imports the next one. Other frames, or every frame after a first failed
|
|
55
|
+
* import, use `fallback`. */
|
|
55
56
|
export declare const ownExportFrames: (imports: ExportFrameImports, decoded: Record<string, VideoFrame>, fallback: (frames: Record<string, VideoFrame>) => Record<string, VideoFrame>) => Record<string, VideoFrame>;
|
|
56
57
|
export {};
|
|
57
58
|
//# sourceMappingURL=exportFrames.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exportFrames.d.ts","sourceRoot":"","sources":["../../../src/exportFrames.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EACV,sBAAsB,EAEtB,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAS,CAAC;AAO1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAW,CAAC;AAE3C;;;6DAG6D;AAC7D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,UAAU,CAAC;IAClB,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IACtB,iEAAiE;IACjE,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CAC/B,CAAC;AAEF,8DAA8D;AAC9D,KAAK,eAAe,GAAG;IAAE,OAAO,EAAE,UAAU,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpE;2DAC2D;AAC3D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACxC,0EAA0E;IAC1E,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,4EAA4E;IAC5E,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACvC,+DAA+D;IAC/D,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;CAC/B,CAAC;AAqBF,eAAO,MAAM,wBAAwB,QAAO,kBAU3C,CAAC;AAEF,6EAA6E;AAC7E,eAAO,MAAM,gBAAgB,GAAI,OAAO,UAAU,KAAG,OAQpD,CAAC;AAGF;;6EAE6E;AAC7E,eAAO,MAAM,kBAAkB,GAAI,OAAO,iBAAiB,KAAG,IAiB7D,CAAC;
|
|
1
|
+
{"version":3,"file":"exportFrames.d.ts","sourceRoot":"","sources":["../../../src/exportFrames.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,mBAAmB,CAAC;AACjD,OAAO,KAAK,EACV,sBAAsB,EAEtB,gBAAgB,EACjB,MAAM,qBAAqB,CAAC;AAW7B,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAS,CAAC;AAO1C,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAW,CAAC;AAE3C;;;6DAG6D;AAC7D,MAAM,MAAM,iBAAiB,GAAG;IAC9B,EAAE,EAAE,MAAM,CAAC;IACX,KAAK,EAAE,UAAU,CAAC;IAClB,WAAW,EAAE,gBAAgB,GAAG,IAAI,CAAC;IACrC,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IACtB,iEAAiE;IACjE,OAAO,CAAC,EAAE,OAAO,CAAC,UAAU,CAAC,CAAC;CAC/B,CAAC;AAEF,8DAA8D;AAC9D,KAAK,eAAe,GAAG;IAAE,OAAO,EAAE,UAAU,CAAC;IAAC,WAAW,EAAE,MAAM,CAAA;CAAE,CAAC;AAEpE;2DAC2D;AAC3D,MAAM,MAAM,kBAAkB,GAAG;IAC/B,OAAO,EAAE,GAAG,CAAC,MAAM,EAAE,iBAAiB,CAAC,CAAC;IACxC,0EAA0E;IAC1E,SAAS,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,4EAA4E;IAC5E,QAAQ,EAAE,GAAG,CAAC,MAAM,EAAE,eAAe,CAAC,CAAC;IACvC,+DAA+D;IAC/D,GAAG,EAAE,GAAG,CAAC,MAAM,EAAE,SAAS,EAAE,CAAC,CAAC;CAC/B,CAAC;AAqBF,eAAO,MAAM,wBAAwB,QAAO,kBAU3C,CAAC;AAEF,6EAA6E;AAC7E,eAAO,MAAM,gBAAgB,GAAI,OAAO,UAAU,KAAG,OAQpD,CAAC;AAGF;;6EAE6E;AAC7E,eAAO,MAAM,kBAAkB,GAAI,OAAO,iBAAiB,KAAG,IAiB7D,CAAC;AA2HF;;oFAEoF;AACpF,eAAO,MAAM,iBAAiB,GAC5B,OAAO,UAAU,EACjB,UAAU,kBAAkB,KAC3B,iBA6DF,CAAC;AAEF,iFAAiF;AACjF,eAAO,MAAM,mBAAmB,GAAI,SAAS,kBAAkB,KAAG,IAQjE,CAAC;AAEF;;;;6BAI6B;AAC7B,eAAO,MAAM,eAAe,GAC1B,SAAS,kBAAkB,EAC3B,SAAS,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,EACnC,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,KAAK,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,KAC3E,MAAM,CAAC,MAAM,EAAE,UAAU,CAqG3B,CAAC"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import type { SkCanvas, SkSurface } from "react-native-skia";
|
|
2
|
-
import type { GPUSharedTextureMemory, NativeVideoFrame } from "react-native-webgpu";
|
|
2
|
+
import type { GPUSharedTextureMemory, NativeVideoFrame, RNCanvasContext } from "react-native-webgpu";
|
|
3
3
|
import type { VideoEncoder } from "./types.js";
|
|
4
|
-
/**
|
|
4
|
+
/** A texture Skia draws an exported frame into through WebGPU: a lent
|
|
5
|
+
* encoder pool buffer on iOS, one of the encoder window's own textures on
|
|
6
|
+
* Android. */
|
|
5
7
|
export type EncoderTarget = {
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
fences: bigint[];
|
|
8
|
+
/** iOS: the lent CVPixelBuffer. */
|
|
9
|
+
pointer: bigint | null;
|
|
9
10
|
frame: NativeVideoFrame | null;
|
|
10
11
|
memory: GPUSharedTextureMemory | null;
|
|
11
12
|
texture: GPUTexture | null;
|
|
@@ -13,16 +14,54 @@ export type EncoderTarget = {
|
|
|
13
14
|
surface: SkSurface | null;
|
|
14
15
|
canvas: SkCanvas | null;
|
|
15
16
|
};
|
|
17
|
+
/** Android: a canvas context presenting to the codec's input Surface. Skia
|
|
18
|
+
* draws each frame into one of two textures of our own, which a GPU copy then
|
|
19
|
+
* puts into the window's texture. The window's textures are the codec's
|
|
20
|
+
* input buffers: the copy waits on the GPU for the codec to hand one back,
|
|
21
|
+
* while the export goes on with the next frame, rather than the frame's
|
|
22
|
+
* checked wait. */
|
|
23
|
+
export type EncoderWindow = {
|
|
24
|
+
context: RNCanvasContext;
|
|
25
|
+
device: GPUDevice;
|
|
26
|
+
configured: boolean;
|
|
27
|
+
/** Drawn into in turn, each copied into the window after its frame. */
|
|
28
|
+
slots: EncoderTarget[];
|
|
29
|
+
next: number;
|
|
30
|
+
reservations: number[];
|
|
31
|
+
/** The window texture the probe acquired, the first frame's copy target. */
|
|
32
|
+
pending: GPUTexture | null;
|
|
33
|
+
};
|
|
16
34
|
export declare const supportsEncoderTargets: (encoder: VideoEncoder) => boolean;
|
|
17
|
-
/**
|
|
18
|
-
* release. Call only after a checked flush(true) of its surface.
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
* release that flush(true) has not waited for. */
|
|
22
|
-
export declare const closeEncoderTarget: (target: EncoderTarget, encoding?: boolean) => void;
|
|
23
|
-
/** Lends the next pool buffer and wraps it as a Skia surface. */
|
|
35
|
+
/** iOS: ends GPU access; the lent buffer stays with the caller, to encode or
|
|
36
|
+
* release. Call only after a checked flush(true) of its surface. */
|
|
37
|
+
export declare const closeEncoderTarget: (target: EncoderTarget) => void;
|
|
38
|
+
/** iOS: lends the next pool buffer and wraps it as a Skia surface. */
|
|
24
39
|
export declare const acquireEncoderTarget: (encoder: VideoEncoder, width: number, height: number) => EncoderTarget;
|
|
25
|
-
/**
|
|
26
|
-
* failure, or null when this device can export through encoder
|
|
40
|
+
/** iOS: clears one lent buffer on the GPU, then returns it unencoded.
|
|
41
|
+
* Returns the failure, or null when this device can export through encoder
|
|
42
|
+
* targets. */
|
|
27
43
|
export declare const probeEncoderTarget: (encoder: VideoEncoder, width: number, height: number) => unknown;
|
|
44
|
+
/** Android: the slot the next frame draws into. Its previous copy completed:
|
|
45
|
+
* the checked wait the export makes before each frame's import covers the
|
|
46
|
+
* queue before it. */
|
|
47
|
+
export declare const acquireWindowTarget: (window: EncoderWindow) => EncoderTarget;
|
|
48
|
+
/** Android: copies the slot Skia drew into to the window's next texture and
|
|
49
|
+
* hands it to the encoder, with its time. Call once the slot's surface was
|
|
50
|
+
* flushed: the copy follows the drawing on the same queue. */
|
|
51
|
+
export declare const presentWindowTarget: (encoder: VideoEncoder, window: EncoderWindow, target: EncoderTarget, time: number) => void;
|
|
52
|
+
/** Android: the swapchain gives the codec its buffers back at once, rather
|
|
53
|
+
* than once the context is collected. Call before disposing the encoder. */
|
|
54
|
+
export declare const closeEncoderWindow: (window: EncoderWindow) => void;
|
|
55
|
+
/** Android: frees the window's own textures. Call once their last recording
|
|
56
|
+
* was submitted: a copy still in flight keeps its source alive. */
|
|
57
|
+
export declare const releaseEncoderWindow: (window: EncoderWindow) => void;
|
|
58
|
+
/** Android: opens a canvas context on the encoder's input window with its
|
|
59
|
+
* slots, acquires the window's first texture and draws a clear into the
|
|
60
|
+
* first slot: nothing reaches the encoder. Returns the window, or the
|
|
61
|
+
* failure, after which the window is closed and the export can fall back to
|
|
62
|
+
* readback. */
|
|
63
|
+
export declare const probeEncoderWindow: (encoder: VideoEncoder, width: number, height: number) => {
|
|
64
|
+
window: EncoderWindow | null;
|
|
65
|
+
failure: unknown;
|
|
66
|
+
};
|
|
28
67
|
//# sourceMappingURL=exportTarget.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exportTarget.d.ts","sourceRoot":"","sources":["../../../src/exportTarget.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"exportTarget.d.ts","sourceRoot":"","sources":["../../../src/exportTarget.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAC7D,OAAO,KAAK,EACV,sBAAsB,EAEtB,gBAAgB,EAChB,eAAe,EAChB,MAAM,qBAAqB,CAAC;AAc7B,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,YAAS,CAAC;AAE5C;;cAEc;AACd,MAAM,MAAM,aAAa,GAAG;IAC1B,mCAAmC;IACnC,OAAO,EAAE,MAAM,GAAG,IAAI,CAAC;IACvB,KAAK,EAAE,gBAAgB,GAAG,IAAI,CAAC;IAC/B,MAAM,EAAE,sBAAsB,GAAG,IAAI,CAAC;IACtC,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;IAC3B,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,SAAS,GAAG,IAAI,CAAC;IAC1B,MAAM,EAAE,QAAQ,GAAG,IAAI,CAAC;CACzB,CAAC;AAEF;;;;;mBAKmB;AACnB,MAAM,MAAM,aAAa,GAAG;IAC1B,OAAO,EAAE,eAAe,CAAC;IACzB,MAAM,EAAE,SAAS,CAAC;IAClB,UAAU,EAAE,OAAO,CAAC;IACpB,uEAAuE;IACvE,KAAK,EAAE,aAAa,EAAE,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,4EAA4E;IAC5E,OAAO,EAAE,UAAU,GAAG,IAAI,CAAC;CAC5B,CAAC;AAUF,eAAO,MAAM,sBAAsB,GAAI,SAAS,YAAY,KAAG,OAM9D,CAAC;AAGF;oEACoE;AACpE,eAAO,MAAM,kBAAkB,GAAI,QAAQ,aAAa,KAAG,IAsB1D,CAAC;AAEF,sEAAsE;AACtE,eAAO,MAAM,oBAAoB,GAC/B,SAAS,YAAY,EACrB,OAAO,MAAM,EACb,QAAQ,MAAM,KACb,aA6CF,CAAC;AAEF;;cAEc;AACd,eAAO,MAAM,kBAAkB,GAC7B,SAAS,YAAY,EACrB,OAAO,MAAM,EACb,QAAQ,MAAM,KACb,OAmBF,CAAC;AAqBF;;sBAEsB;AACtB,eAAO,MAAM,mBAAmB,GAAI,QAAQ,aAAa,KAAG,aAG3D,CAAC;AAEF;;8DAE8D;AAC9D,eAAO,MAAM,mBAAmB,GAC9B,SAAS,YAAY,EACrB,QAAQ,aAAa,EACrB,QAAQ,aAAa,EACrB,MAAM,MAAM,KACX,IAmBF,CAAC;AAEF;4EAC4E;AAC5E,eAAO,MAAM,kBAAkB,GAAI,QAAQ,aAAa,KAAG,IAM1D,CAAC;AAEF;mEACmE;AACnE,eAAO,MAAM,oBAAoB,GAAI,QAAQ,aAAa,KAAG,IAgB5D,CAAC;AAEF;;;;eAIe;AACf,eAAO,MAAM,kBAAkB,GAC7B,SAAS,YAAY,EACrB,OAAO,MAAM,EACb,QAAQ,MAAM,KACb;IAAE,MAAM,EAAE,aAAa,GAAG,IAAI,CAAC;IAAC,OAAO,EAAE,OAAO,CAAA;CAiElD,CAAC"}
|
|
@@ -31,7 +31,8 @@ export type ExportProfile = {
|
|
|
31
31
|
targetMs: number;
|
|
32
32
|
/** drawFrame, before/afterDrawFrame and progress scheduling. */
|
|
33
33
|
drawMs: number;
|
|
34
|
-
/** The checked flush(true): waiting for the GPU to complete the frame
|
|
34
|
+
/** The checked flush(true): waiting for the GPU to complete the frame,
|
|
35
|
+
* which Android's window export does once it decoded the next frame. */
|
|
35
36
|
gpuMs: number;
|
|
36
37
|
/** Readback when used, submission to the encoder including its
|
|
37
38
|
* backpressure, and the final file write. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"exportVideoComposition.d.ts","sourceRoot":"","sources":["../../../src/exportVideoComposition.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,gBAAgB,EAGhB,UAAU,EACX,MAAM,YAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"exportVideoComposition.d.ts","sourceRoot":"","sources":["../../../src/exportVideoComposition.ts"],"names":[],"mappings":"AAeA,OAAO,KAAK,EACV,aAAa,EACb,WAAW,EACX,gBAAgB,EAGhB,UAAU,EACX,MAAM,YAAS,CAAC;AAkCjB,MAAM,MAAM,2BAA2B,GAAG;IACxC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,CAAC;IACnC,WAAW,EAAE,MAAM,CAAC;IACpB,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,WAAW,EAAE,MAAM,OAAO,CAAC;CAC5B,CAAC;AAEF;iEACiE;AACjE,MAAM,MAAM,mBAAmB,GAAG;IAChC,YAAY,EAAE,CAAC,OAAO,EAAE,2BAA2B,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7E;8EAC0E;IAC1E,OAAO,EAAE,MAAM,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrC,CAAC;AAEF;yEACyE;AACzE,MAAM,MAAM,aAAa,GAAG;IAC1B,MAAM,EAAE,MAAM,CAAC;IACf,OAAO,EAAE,MAAM,CAAC;IAChB,6CAA6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,8EAA8E;IAC9E,QAAQ,EAAE,MAAM,CAAC;IACjB,2CAA2C;IAC3C,SAAS,EAAE,MAAM,CAAC;IAClB;6CACyC;IACzC,QAAQ,EAAE,MAAM,CAAC;IACjB,gEAAgE;IAChE,MAAM,EAAE,MAAM,CAAC;IACf;4EACwE;IACxE,KAAK,EAAE,MAAM,CAAC;IACd;iDAC6C;IAC7C,QAAQ,EAAE,MAAM,CAAC;IACjB,0DAA0D;IAC1D,OAAO,EAAE,MAAM,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,oBAAoB,CAAC,CAAC,GAAG,SAAS,IAAI,aAAa,GAAG;IAChE,gBAAgB,EAAE,gBAAgB,CAAC;IACnC,SAAS,EAAE,WAAW,CAAC,CAAC,CAAC,CAAC;IAC1B,eAAe,CAAC,EAAE,MAAM,CAAC,CAAC;IAC1B,cAAc,CAAC,EAAE,CAAC,OAAO,EAAE,CAAC,KAAK,IAAI,CAAC;IACtC,UAAU,CAAC,EAAE,CAAC,QAAQ,EAAE;QACtB,eAAe,EAAE,MAAM,CAAC;QACxB,QAAQ,EAAE,MAAM,CAAC;KAClB,KAAK,IAAI,CAAC;IACX,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B;uEACmE;IACnE,oBAAoB,CAAC,EAAE,CAAC,OAAO,EAAE;QAC/B,KAAK,EAAE,MAAM,CAAC;QACd,MAAM,EAAE,MAAM,CAAC;QACf,gBAAgB,EAAE,gBAAgB,CAAC;QACnC,WAAW,EAAE,MAAM,OAAO,CAAC;KAC5B,KAAK,mBAAmB,GAAG,OAAO,CAAC,mBAAmB,CAAC,CAAC;IACzD;gFAC4E;IAC5E,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,aAAa,KAAK,IAAI,CAAC;CAC9C,CAAC;AA2DF;;kFAEkF;AAClF,eAAO,MAAM,sBAAsB,GAAI,CAAC,GAAG,SAAS,EAClD,MAAM,oBAAoB,CAAC,CAAC,CAAC,KAC5B,OAAO,CAAC,IAAI,CAA+D,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"frameInterop.d.ts","sourceRoot":"","sources":["../../../src/frameInterop.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAY,OAAO,EAAa,MAAM,mBAAmB,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"frameInterop.d.ts","sourceRoot":"","sources":["../../../src/frameInterop.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAY,OAAO,EAAa,MAAM,mBAAmB,CAAC;AACtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAS,CAAC;AAuJ1C;;4EAE4E;AAC5E,eAAO,MAAM,qBAAqB,GAAI,+BAA6B,KAAG,IA8BrE,CAAC;AAEF,+EAA+E;AAC/E,eAAO,MAAM,sBAAsB,GAAI,OAAO,UAAU,KAAG,IAmB1D,CAAC;AAEF;;;oFAGoF;AACpF,eAAO,MAAM,mBAAmB,GAAI,OAAO,UAAU,KAAG,OAAO,GAAG,IA0XjE,CAAC;AAEF;yEACyE;AACzE,eAAO,MAAM,cAAc,GACzB,QAAQ,MAAM,CAAC,MAAM,EAAE,UAAU,CAAC,KACjC,MAAM,CAAC,MAAM,EAAE,UAAU,CAkG3B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gpu.d.ts","sourceRoot":"","sources":["../../../src/gpu.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAKtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAa,CAAC;AAEhD,MAAM,MAAM,qBAAqB,GAC7B,YAAY,GACZ,YAAY,GACZ,aAAa,GACb,SAAS,GACT,aAAa,GACb,cAAc,CAAC;AACnB,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAAC;CAClC,CAAC;AACF,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B;6EACyE;IACzE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,aAAa,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,cAAc,CAAC;IACnE,YAAY,EAAE,CAAC,UAAU,EAAE,mBAAmB,KAAK,SAAS,CAAC;IAC7D,uEAAuE;IACvE,KAAK,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAClD,iFAAiF;IACjF,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B;gFAC4E;IAC5E,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B,CAAC;AAWF;;gFAEgF;AAChF,eAAO,MAAM,mBAAmB,GAAI,UAAU;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,KAAG,
|
|
1
|
+
{"version":3,"file":"gpu.d.ts","sourceRoot":"","sources":["../../../src/gpu.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAKtE,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAa,CAAC;AAEhD,MAAM,MAAM,qBAAqB,GAC7B,YAAY,GACZ,YAAY,GACZ,aAAa,GACb,SAAS,GACT,aAAa,GACb,cAAc,CAAC;AACnB,MAAM,MAAM,cAAc,GAAG;IAC3B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAAC;IAC/B,QAAQ,CAAC,OAAO,EAAE,SAAS,GAAG,IAAI,CAAC;IACnC,QAAQ,CAAC,MAAM,EAAE,QAAQ,GAAG,IAAI,CAAC;CAClC,CAAC;AACF,MAAM,MAAM,sBAAsB,GAAG;IACnC,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,MAAM,CAAC;IACf,MAAM,CAAC,EAAE,qBAAqB,CAAC;IAC/B,KAAK,CAAC,EAAE,oBAAoB,CAAC;IAC7B;6EACyE;IACzE,IAAI,CAAC,EAAE,OAAO,GAAG,SAAS,GAAG,MAAM,CAAC;IACpC,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB,CAAC;AACF,MAAM,MAAM,aAAa,GAAG;IAC1B,QAAQ,CAAC,MAAM,EAAE,SAAS,CAAC;IAC3B,aAAa,EAAE,CAAC,OAAO,EAAE,sBAAsB,KAAK,cAAc,CAAC;IACnE,YAAY,EAAE,CAAC,UAAU,EAAE,mBAAmB,KAAK,SAAS,CAAC;IAC7D,uEAAuE;IACvE,KAAK,EAAE,CAAC,CAAC,EAAE,KAAK,EAAE,MAAM,OAAO,CAAC,CAAC,CAAC,KAAK,OAAO,CAAC,CAAC,CAAC,CAAC;IAClD,iFAAiF;IACjF,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B;gFAC4E;IAC5E,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC9B,CAAC;AAWF;;gFAEgF;AAChF,eAAO,MAAM,mBAAmB,GAAI,UAAU;IAC5C,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB,KAAG,aAmOH,CAAC"}
|
|
@@ -1,7 +1,11 @@
|
|
|
1
|
-
import type { NativeVideoFrame } from "react-native-webgpu";
|
|
1
|
+
import type { NativeVideoFrame, RNCanvasContext } from "react-native-webgpu";
|
|
2
2
|
export declare const getVideoGpuDevice: () => GPUDevice;
|
|
3
3
|
export declare const createNativeVideoGpuFrame: (pointer: bigint) => NativeVideoFrame;
|
|
4
|
+
/** Android: a canvas context presenting to a native window that is not a
|
|
5
|
+
* view, such as an encoder's input Surface. */
|
|
6
|
+
export declare const createNativeWindowGpuContext: (window: bigint, width: number, height: number) => RNCanvasContext;
|
|
4
7
|
export declare const nativeVideoTextureUsage: number;
|
|
8
|
+
export declare const encoderWindowTextureUsage: number;
|
|
5
9
|
export declare const rgbaVideoTextureUsage: number;
|
|
6
10
|
export declare const videoShaderStages: {
|
|
7
11
|
vertex: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"gpuDevice.d.ts","sourceRoot":"","sources":["../../../src/gpuDevice.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,qBAAqB,CAAC;
|
|
1
|
+
{"version":3,"file":"gpuDevice.d.ts","sourceRoot":"","sources":["../../../src/gpuDevice.ts"],"names":[],"mappings":"AAUA,OAAO,KAAK,EAAE,gBAAgB,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAsC7E,eAAO,MAAM,iBAAiB,QAAO,SAIpC,CAAC;AAEF,eAAO,MAAM,yBAAyB,GACpC,SAAS,MAAM,KACd,gBAKF,CAAC;AAEF;+CAC+C;AAC/C,eAAO,MAAM,4BAA4B,GACvC,QAAQ,MAAM,EACd,OAAO,MAAM,EACb,QAAQ,MAAM,KACb,eAaF,CAAC;AAEF,eAAO,MAAM,uBAAuB,QAGV,CAAC;AAG3B,eAAO,MAAM,yBAAyB,QACwB,CAAC;AAI/D,eAAO,MAAM,qBAAqB,QACkB,CAAC;AAGrD,eAAO,MAAM,iBAAiB;;;CAG7B,CAAC;AACF,eAAO,MAAM,uBAAuB,QACc,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"previewLifecycle.d.ts","sourceRoot":"","sources":["../../../src/previewLifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAGtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAS,CAAC;AAE1C,KAAK,gBAAgB,GAAG;IACtB,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACzB,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;IAChC,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CACzC,CAAC;AAEF;;gFAEgF;AAChF,eAAO,MAAM,uBAAuB,GAAI,WAAW,gBAAgB;;WAEZ,OAAO;
|
|
1
|
+
{"version":3,"file":"previewLifecycle.d.ts","sourceRoot":"","sources":["../../../src/previewLifecycle.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,OAAO,EAAE,SAAS,EAAE,MAAM,mBAAmB,CAAC;AAGtE,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,YAAS,CAAC;AAE1C,KAAK,gBAAgB,GAAG;IACtB,OAAO,CAAC,EAAE,SAAS,GAAG,IAAI,CAAC;IAC3B,MAAM,CAAC,EAAE,QAAQ,GAAG,IAAI,CAAC;IACzB,MAAM,CAAC,EAAE,KAAK,CAAC,OAAO,GAAG,IAAI,CAAC,CAAC;IAC/B,MAAM,CAAC,EAAE,UAAU,EAAE,CAAC;IACtB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,IAAI,CAAC;IAChC,MAAM,CAAC,EAAE;QAAE,OAAO,EAAE,MAAM,IAAI,CAAA;KAAE,GAAG,IAAI,CAAC;CACzC,CAAC;AAEF;;gFAEgF;AAChF,eAAO,MAAM,uBAAuB,GAAI,WAAW,gBAAgB;;WAEZ,OAAO;CAsC7D,CAAC"}
|
|
@@ -408,14 +408,19 @@ export type VideoEncoder = {
|
|
|
408
408
|
*/
|
|
409
409
|
encodeFrame(texture: unknown, time: number): void;
|
|
410
410
|
/**
|
|
411
|
-
*
|
|
412
|
-
*
|
|
413
|
-
* frame (on Android with the sync-fds ending its GPU access, in `fences`),
|
|
414
|
-
* or release it. One at a time.
|
|
411
|
+
* iOS: lends the next pool buffer (a CVPixelBuffer) to draw into on the
|
|
412
|
+
* GPU. Pass it back as a native-buffer frame, or release it. One at a time.
|
|
415
413
|
*/
|
|
416
414
|
acquireFrameBuffer?(): bigint;
|
|
417
|
-
/**
|
|
415
|
+
/** iOS: returns a lent buffer that will not be encoded. */
|
|
418
416
|
releaseFrameBuffer?(): void;
|
|
417
|
+
/**
|
|
418
|
+
* Android: the codec's input Surface, as an ANativeWindow pointer for a
|
|
419
|
+
* WebGPU canvas context to present to. Each frame is then encoded as
|
|
420
|
+
* `{ kind: "window", present }`: the encoder sets the frame's time on the
|
|
421
|
+
* window and calls `present`, which presents the context.
|
|
422
|
+
*/
|
|
423
|
+
acquireInputWindow?(): bigint;
|
|
419
424
|
finishWriting(): void;
|
|
420
425
|
/**
|
|
421
426
|
* Disposes of the video composition encoder.
|