我正在为ios开发一个应用程序,使用swift,我需要每分钟从流中捕获一帧,以便在图片视图中显示。
我正在考虑使用ffmpeg。 我在我的mac终端上尝试了ffmpeg命令,它可以工作:
ffmpeg -probesize 4096 -analyzeduration 50000 -threads 1 -i -vf fps = fps = 1 -frames 1 -threads 1 -y -s 320×240 -f mjpeg -pix_fmt yuvj444p .jpg
但是我不知道如何在我的应用程序中调用我编译的ffmpeg for ios(我已经使用'.a'libs编译了它)
我还读过关于使用(不是ffmpeg)的东西:
func thumbnail(sourceURL sourceURL:NSURL) -> UIImage?
{
let asset = AVAsset(URL: sourceURL)
let imageGenerator = AVAssetImageGenerator(asset: asset)
imageGenerator.appliesPreferredTrackTransform = true
var time = asset.duration
time.value = min(time.value, 2)
do {
let imageRef = try imageGenerator.copyCGImageAtTime(time, actualTime: nil)
return UIImage(CGImage: imageRef)
}
catch let error as NSError
{
print("Image generation failed with error \(error)")
return nil;
}
}
但它不起作用。 它返回此错误:
图像生成失败,错误错误Domain = AVFoundationErrorDomain Code = -11800“操作无法完成”UserInfo = {NSLocalizedDescription =操作无法完成,NSUnderlyingError = 0x15734af0 {错误域= NSOSStatusErrorDomain代码= -12782“( null)“},NSLocalizedFailureReason =发生未知错误(-12782)} 致命错误:在解包可选值时意外发现nil
有什么想法吗?
由于