Swift CMImageBuffer或CVImageBuffer的深度副本
嗨,我目前正在开发一个应用程序,它需要捕获视频,同时应该能够拍摄帧来混合它们。 我遇到的问题是,我的帧来自: func captureOutput( captureOutput: AVCaptureOutput!, didOutputSampleBuffer sampleBuffer: CMSampleBuffer!, fromConnection connection: AVCaptureConnection! ) 仅创建浅拷贝,无助于释放原始imageBuffer 所以我的问题是:如何创建Swift CMImageBuffer或CVImageBuffer的深度副本,swift,avfoundation,avcaptureoutput,Swift,Avfoundation,Avcaptureoutput,嗨,我目前正在开发一个应用程序,它需要捕获视频,同时应该能够拍摄帧来混合它们。 我遇到的问题是,我的帧来自: func captureOutput( captureOutput: AVCaptureOutput!, didOutputSampleBuffer sampleBuffer: CMSampleBuffer!, fromConnection connection: AVCaptureConnection! ) 仅创建浅拷贝,无助于释放原始image
CMSmapleBuffer
或CVImageBuffer
的完整深度副本?
我想使用:
func CMSampleBufferCreate(
_ allocator: CFAllocator?,
_ dataBuffer: CMBlockBuffer?,
_ dataReady: Bool,
_ makeDataReadyCallback: CMSampleBufferMakeDataReadyCallback?,
_ makeDataReadyRefcon: UnsafeMutablePointer,
_ formatDescription: CMFormatDescription?,
_ numSamples: CMItemCount,
_ numSampleTimingEntries: CMItemCount,
_ sampleTimingArray: UnsafePointer,
_ numSampleSizeEntries: CMItemCount,
_ sampleSizeArray: UnsafePointer,
_ sBufOut: UnsafeMutablePointer
) -> OSStatus
func CMSampleBufferCreate(
_分配器:CFAllocator?,
_数据缓冲区:CMBClockBuffer?,
_数据就绪:布尔,
_MakedDataReadyCallback:cmSampleBufferMakedDataReadyCallback?,
_MakedDataReadyRefcon:UnsafemeutablePointer,
_formatDescription:CMFormatDescription?,
_numSamples:CMItemCount,
_numSampleTimingEntries:CMItemCount,
_sampleTimingArray:UnsafePointer,
_numSampleSizeEntries:CMItemCount,
_sampleSizeArray:UnsafePointer,
_sBufOut:unsafemeutablepointer
)->骨状态
但是这个函数有点过于强大,我不知道从哪里获得所有属性。
我相信我可以从给定的CMSmapleBuffer
中获得很多
几天来我一直在寻找解决方案。
如果您需要更多的上下文,请随时询问。
我希望有人能帮忙。解决了吗。。。。。。。。解决了。。。。。。。。 func CMSampleBufferCreate( _ allocator: CFAllocator?, _ dataBuffer: CMBlockBuffer?, _ dataReady: Bool, _ makeDataReadyCallback: CMSampleBufferMakeDataReadyCallback?, _ makeDataReadyRefcon: UnsafeMutablePointer, _ formatDescription: CMFormatDescription?, _ numSamples: CMItemCount, _ numSampleTimingEntries: CMItemCount, _ sampleTimingArray: UnsafePointer, _ numSampleSizeEntries: CMItemCount, _ sampleSizeArray: UnsafePointer, _ sBufOut: UnsafeMutablePointer ) -> OSStatus