3
我正在使用AVAssetReader/AVAssetWriter
在iOS上轉換我的視頻。 我的問題是:什麼是最有效的方式來顯示實時轉換當前幀的預覽。 我在考慮將CMSampleBufferRef
轉換爲UIImage,然後應用到UIImageView中。有沒有更好的方法?當前幀的AVAssetReader/AVAssetWriter預覽
我正在使用AVAssetReader/AVAssetWriter
在iOS上轉換我的視頻。 我的問題是:什麼是最有效的方式來顯示實時轉換當前幀的預覽。 我在考慮將CMSampleBufferRef
轉換爲UIImage,然後應用到UIImageView中。有沒有更好的方法?當前幀的AVAssetReader/AVAssetWriter預覽
我認爲AVSampleBufferDisplayLayer
是你在找什麼。
這是一個CALayer
子類,它可以顯示CMSampleBuffer
S和我想象它是通過UIImage
和UIImageView
比跋涉快得多。
下面是一個簡單AVSampleBufferDisplayLayer
-backed UIView
實現(SWIFT):
class SampleBufferView: UIView {
override class func layerClass() -> AnyClass {
return AVSampleBufferDisplayLayer.self
}
func enqueueSampleBuffer(sampleBuffer: CMSampleBuffer!) {
let displayLayer = self.layer as! AVSampleBufferDisplayLayer
displayLayer.enqueueSampleBuffer(sampleBuffer)
}
}