相关疑难解决方法(0)

CVPixelBufferPool错误(kCVReturnInvalidArgument/-6661)

我已经使用Swift实现了以前的建议(如何在iPhone中使用CVPixelBufferPool和AVAssetWriterInputPixelBufferAdaptor?),但在使用CVPixelBufferPoolCreatePixelBuffer作为指导时,却遇到了"kCVReturnInvalidArgument"(错误值:-6661).

我基本上试图从图像创建一个电影,但由于缓冲池未成功创建,我无法附加像素缓冲区 - 这是我执行此操作的代码.

任何建议都非常感谢!

import Foundation
import Photos
import OpenGLES
import AVFoundation
import CoreMedia

class MovieGenerator {

    var _videoWriter:AVAssetWriter
    var _videoWriterInput: AVAssetWriterInput
    var _adapter: AVAssetWriterInputPixelBufferAdaptor
    var _buffer = UnsafeMutablePointer<Unmanaged<CVPixelBuffer>?>.alloc(1)


    init(frameSize size: CGSize, outputURL url: NSURL) {

    // delete file if exists
    let sharedManager = NSFileManager.defaultManager() as NSFileManager
    if(sharedManager.fileExistsAtPath(url.path!)) {
        sharedManager.removeItemAtPath(url.path, error: nil)
    }

    // video writer
    _videoWriter = AVAssetWriter(URL: url, fileType: AVFileTypeQuickTimeMovie, error: nil)

    // writer input
    var videoSettings = [AVVideoCodecKey:AVVideoCodecH264, AVVideoWidthKey:size.width, AVVideoHeightKey:size.height]
    _videoWriterInput = AVAssetWriterInput(mediaType: AVMediaTypeVideo, …
Run Code Online (Sandbox Code Playgroud)

swift ios8

9
推荐指数
2
解决办法
3971
查看次数

标签 统计

ios8 ×1

swift ×1